Exemplo n.º 1
0
        public RespondWebViewData <RespondEditDepartmentViewModel> EditDepartment(RequestWebViewData <RequestEditDepartmentViewModel> request)
        {
            var rData = request.data;

            if (this.mDepartmentDataAccess.CheckDepartmentIsExist(new QueryDepartmentListParameter {
                Name = rData.Name, SerialNumber = rData.SerialNumber, DepId = rData.DepId
            }))
            {
                return(new RespondWebViewData <RespondEditDepartmentViewModel>(WebViewErrorCode.ExistsDataInfo.ErrorCode, string.Format("名称为[{0}]或编号为[{1}]的部门已经存在", rData.Name, rData.SerialNumber)));
            }

            var respond = new RespondWebViewData <RespondEditDepartmentViewModel>(WebViewErrorCode.Success);

            this.mDbConnection.ExecuteTransaction(tran =>
            {
                var department = this.mDepartmentDataAccess.GetdepartmentDataModelById(rData.DepId);
                if (department == null)
                {
                    respond = new RespondWebViewData <RespondEditDepartmentViewModel>(WebViewErrorCode.NotExistsDataInfo);
                    return;
                }
                if (department.deleted == (short)CommonDeleted.Deleted)
                {
                    respond = new RespondWebViewData <RespondEditDepartmentViewModel>(WebViewErrorCode.NotExistsDataInfo);
                    return;
                }

                var data = new departmentDataModel()
                {
                    depid        = rData.DepId,
                    comment      = rData.Comment,
                    name         = rData.Name,
                    pinyin       = rData.Spelling,
                    serialnumber = rData.SerialNumber,
                    sort         = rData.Sort,
                    status       = department.status,
                    deleted      = department.deleted,
                    childnumber  = department.childnumber,
                    classid      = department.classid,
                    parentid     = department.parentid
                };
                this.mDepartmentDataAccess.Update(data, tran);
                MemcacheHelper.RemoveBy(ServiceMemcachedKeyManageConst.BasicDepartment);

                //由于电脑配置不上mongodb固暂时先屏蔽掉此段mongodb的数据操作
                //this.SaveMongoDbData("编辑分公司资料", request, respond, this.GetType());
            });
            return(respond);
        }
Exemplo n.º 2
0
        public RespondWebViewData <RespondAddDepartmentViewModel> AddDepartment(RequestWebViewData <RequestAddDepartmentViewModel> request)
        {
            var rData = request.data;

            if (this.mDepartmentDataAccess.CheckDepartmentIsExist(new QueryDepartmentListParameter {
                Name = rData.Name, SerialNumber = rData.SerialNumber
            }))
            {
                return(new RespondWebViewData <RespondAddDepartmentViewModel>(WebViewErrorCode.ExistsDataInfo.ErrorCode, string.Format("名称为[{0}]或编号为[{1}]的部门已经存在", rData.Name, rData.SerialNumber)));
            }

            var respond = new RespondWebViewData <RespondAddDepartmentViewModel>(WebViewErrorCode.Success);

            try
            {
                var deparment = this.mDepartmentDataAccess.GetDepartmentByClassID(new QueryDepartmentListParameter {
                    ParentId = rData.ParentId
                });
                if (deparment == null)
                {
                    return(new RespondWebViewData <RespondAddDepartmentViewModel>(WebViewErrorCode.NotExistsDataInfo));
                }
                if (deparment.deleted == (short)CommonDeleted.Deleted)
                {
                    return(new RespondWebViewData <RespondAddDepartmentViewModel>(WebViewErrorCode.NotExistsDataInfo));
                }

                this.mDbConnection.ExecuteTransaction(tran =>
                {
                    var parameter = new QueryDepartmentListParameter()
                    {
                        ParentId = rData.ParentId
                    };
                    var classId = string.Concat(rData.ParentId, "000001");
                    var depList = this.mDepartmentDataAccess.GetDepartmentListByParentID(parameter);
                    if (depList.Count > 0)
                    {
                        classId = BuildNewClassIdByLastClassId.GeneratedNewClassIdByLastClassId(depList[0].classid);
                    }

                    var data = new departmentDataModel
                    {
                        childnumber  = 0,
                        classid      = classId,
                        comment      = rData.Comment,
                        name         = rData.Name,
                        parentid     = rData.ParentId,
                        pinyin       = rData.Spelling,
                        serialnumber = rData.SerialNumber,
                        sort         = rData.Sort,
                        status       = (short)CommonStatus.Used,
                        deleted      = (short)CommonDeleted.NotDeleted
                    };
                    var addResult = this.mDepartmentDataAccess.Add(data, tran);
                    if (addResult > 0)
                    {
                        this.mDepartmentDataAccess.UpdateChildNumberByClassId(tran, parameter);
                    }
                    MemcacheHelper.RemoveBy(ServiceMemcachedKeyManageConst.BasicDepartment);

                    //由于电脑配置不上mongodb固暂时先屏蔽掉此段mongodb的数据操作
                    //this.SaveMongoDbData("新增部门资料", request, respond, this.GetType());
                });
            }
            catch (Exception ex)
            {
                respond = new RespondWebViewData <RespondAddDepartmentViewModel>(new ErrorCodeItem(WebViewErrorCode.Exception.ErrorCode, ex.Message));
            }
            return(respond);
        }