Exemplo n.º 1
0
        public List <RespondGetAllEmployeeViewModel> GetAllEmployee(RequestWebViewData <RequestGetAllEnityDataViewModel> request)
        {
            return(MemcacheHelper.Get(new RequestMemcacheParameter <List <RespondGetAllEmployeeViewModel> >
            {
                CacheKey = string.Format(PRE_CACHE_KEY, "GetAllEmployee"),

                #region =====================
                CallBackFunc = () =>
                {
                    var parameter = new QueryEmployeeListParameter
                    {
                        SerialNumber = request.data.Keywords
                    };
                    var dataList = this.mEmployeeDataAccess.GetAllEmployee(parameter);
                    var respond = dataList.Select(item => new RespondGetAllEmployeeViewModel
                    {
                        EmpId = item.empid,
                        SerialNumber = item.serialnumber,
                        Name = item.name,
                        Comment = item.comment,
                        Spelling = item.pinyin
                    }).ToList();
                    return respond;
                },
                #endregion

                ManageCacheKeyForKey = ServiceMemcachedKeyManageConst.CommonAjax,
                ExpiresAt = DateTime.Now.AddMinutes(30),
                ParamsKeys = new object[]
                {
                    request.data.Keywords,
                    this.mSigninUser.UserID
                }
            }));
        }
Exemplo n.º 2
0
 public List <employeeDataModel> GetAllEmployee(QueryEmployeeListParameter parameter)
 {
     this.ExecuteSQL = string.Format("SELECT * FROM dbo.employee WHERE childnumber=0 AND (serialnumber LIKE '%{0}%' OR name LIKE '%{0}%' OR pinyin LIKE '%{0}%' OR comment LIKE '%{0}%') AND ISNULL(parentid,'')<>'' AND [status]={1} AND deleted={2}",
                                     parameter.SerialNumber,
                                     (short)CommonStatus.Used,
                                     (short)CommonDeleted.NotDeleted);
     return(this.ExecuteReadSqlToemployeeDataModelList());
 }
Exemplo n.º 3
0
 public int UpdateChildNumberByClassId(IDbTransaction tran, QueryEmployeeListParameter parameter)
 {
     this.ExecuteSQL    = "UPDATE dbo.employee SET childnumber=childnumber+1 WHERE classid=@classid";
     this.DataParameter = new IDbDataParameter[]
     {
         new SqlParameter("@classid", SqlDbType.VarChar)
         {
             Value = parameter.ParentId
         }
     };
     return(this.ExecuteNonQuery(tran));
 }
Exemplo n.º 4
0
 public employeeDataModel GetEmployeeByClassID(QueryEmployeeListParameter parameter)
 {
     this.ExecuteSQL    = "SELECT * FROM dbo.employee WHERE classid=@classid";
     this.DataParameter = new IDbDataParameter[]
     {
         new SqlParameter("@classid", SqlDbType.VarChar)
         {
             Value = parameter.ParentId
         }
     };
     return(this.ExecuteReadSqlToemployeeDataModel());
 }
Exemplo n.º 5
0
 public List <employeeDataModel> GetEmployeeListByParentID(QueryEmployeeListParameter parameter)
 {
     this.ExecuteSQL    = "SELECT * FROM dbo.employee WHERE parentid=@parentid ORDER BY classid DESC";
     this.DataParameter = new IDbDataParameter[]
     {
         new SqlParameter("@parentid", SqlDbType.VarChar)
         {
             Value = parameter.ParentId
         }
     };
     return(this.ExecuteReadSqlToemployeeDataModelList());
 }
Exemplo n.º 6
0
        public bool CheckEmployeeIsExist(QueryEmployeeListParameter parameter)
        {
            this.ExecuteSQL    = string.Format("SELECT * FROM dbo.employee WHERE name=@name AND serialnumber=@serialnumber AND depid=@depid{0}", parameter.EmpId == 0 ? string.Empty : string.Concat(" AND empid<>", parameter.EmpId));
            this.DataParameter = new IDbDataParameter[]
            {
                new SqlParameter("@name", parameter.Name),
                new SqlParameter("@serialnumber", parameter.SerialNumber),
                new SqlParameter("@depid", parameter.DepId)
            };
            var employee = this.ExecuteReadSqlToemployeeDataModel();

            return(employee != null);
        }
Exemplo n.º 7
0
        public PageData <employeeDataModel> GetQueryEmployeeList(QueryEmployeeListParameter parameter)
        {
            var isSearch = !(string.IsNullOrEmpty(parameter.Name) && string.IsNullOrEmpty(parameter.Mobile) && string.IsNullOrEmpty(parameter.SerialNumber) && string.IsNullOrEmpty(parameter.Spelling) &&
                             parameter.Status == 0 && parameter.Deleted == 0 && parameter.DepId > 0);

            this.ExecuteSQL = string.Format("SELECT e.* FROM dbo.employee e INNER JOIN dbo.department d ON e.depid=d.depid WHERE {0} e.name LIKE '%{1}%' AND e.pinyin LIKE '%{2}%' AND e.serialnumber LIKE '%{3}%' AND e.mobile LIKE '%{4}%' AND e.[status] IN({5}) AND e.deleted IN({6}) AND e.comment LIKE '%{7}%' {8}",
                                            isSearch ? string.Empty : string.Format("e.parentid='{0}' AND", parameter.ParentId),
                                            parameter.Name,
                                            parameter.Spelling,
                                            parameter.SerialNumber,
                                            parameter.Mobile,
                                            parameter.Status == (short)CommonStatus.Default ? string.Concat((short)CommonStatus.Used, ",", (short)CommonStatus.Stopped) : parameter.Status.ToString(),
                                            parameter.Deleted == (short)CommonDeleted.Default ? string.Concat((short)CommonDeleted.Deleted, ",", (short)CommonDeleted.NotDeleted) : parameter.Deleted.ToString(),
                                            parameter.Comment,
                                            parameter.DepId > 0 ? string.Format("AND d.depid={0}", parameter.DepId) : string.Empty
                                            );
            return(this.ExecuteReadSqlToemployeeDataModelPageData("empid", parameter.PageIndex, parameter.PageSize, "classid ASC, sort DESC"));
        }
Exemplo n.º 8
0
        public RespondWebViewData <List <RespondQueryEmployeeViewModel> > GetQueryEmployeeList(RequestWebViewData <RequestQueryEmployeeViewModel> request)
        {
            if (request.data == null)
            {
                request.data = new RequestQueryEmployeeViewModel();
            }
            return(MemcacheHelper.Get(new RequestMemcacheParameter <RespondWebViewData <List <RespondQueryEmployeeViewModel> > >
            {
                CacheKey = string.Format(PRE_CACHE_KEY, "GetQueryEmployeeList"),

                #region =================
                CallBackFunc = () =>
                {
                    var parameter = new QueryEmployeeListParameter()
                    {
                        Comment = request.data.Comment,
                        Deleted = request.data.Deleted,
                        DepId = request.data.DepId,
                        SerialNumber = request.data.SerialNumber,
                        Mobile = request.data.Mobile,
                        Name = request.data.Name,
                        PageIndex = request.page,
                        PageSize = request.rows,
                        Status = request.data.Status,
                        ParentId = request.data.ParentId,
                        Spelling = request.data.Spelling,
                    };
                    var pageDataList = this.mEmployeeDataAccess.GetQueryEmployeeList(parameter);
                    var totalScale = this.mSystemParameterConfigViewService.SystemParameterConfig()[SystemParameterConfigConst.TotalScale].ParameterConfigValue.ToInt16();
                    var respond = new RespondWebViewData <List <RespondQueryEmployeeViewModel> >
                    {
                        total = pageDataList.DataCount,
                        rows = pageDataList.Datas.Select(item => new RespondQueryEmployeeViewModel
                        {
                            Address = item.address,
                            ChildNumber = item.childnumber,
                            ClassId = item.classid,
                            Comment = item.comment,
                            Deleted = item.deleted,
                            DepName = item.depname,
                            EmpId = item.empid,
                            LowestDiscount = item.lowestdiscount,
                            Mobile = item.mobile,
                            Name = item.name,
                            ParentId = item.parentid,
                            PreInAdvanceTotal = item.preinadvancetotal.ToCurrencyString(totalScale),
                            PrePayFeeTotal = item.prepayfeetotal.ToCurrencyString(totalScale),
                            SerialNumber = item.serialnumber,
                            Sort = item.sort,
                            Spelling = item.pinyin,
                            Status = item.status
                        }).ToList()
                    };
                    return respond;
                },

                #endregion

                ExpiresAt = DateTime.Now.AddMinutes(30),
                ManageCacheKeyForKey = ServiceMemcachedKeyManageConst.BasicEmployee,
                ParamsKeys = new object[]
                {
                    request.data.Status,
                    request.data.Comment,
                    request.data.DepId,
                    request.data.Mobile,
                    request.data.Deleted,
                    request.data.Name,
                    request.data.ParentId,
                    request.data.SerialNumber,
                    request.data.Spelling,
                    request.page,
                    request.rows
                }
            }));
        }
Exemplo n.º 9
0
        public RespondWebViewData <RespondAddEmployeeViewModel> AddEmployee(RequestWebViewData <RequestAddEmployeeViewModel> request)
        {
            var rData = request.data;

            if (this.mEmployeeDataAccess.CheckEmployeeIsExist(new QueryEmployeeListParameter {
                Name = rData.Name, SerialNumber = rData.SerialNumber, DepId = rData.DepId
            }))
            {
                return(new RespondWebViewData <RespondAddEmployeeViewModel>(WebViewErrorCode.ExistsDataInfo.ErrorCode, string.Format("名称为[{0}]或编号为[{1}]的职员已经存在", rData.Name, rData.SerialNumber)));
            }

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

            try
            {
                var employee = this.mEmployeeDataAccess.GetEmployeeByClassID(new QueryEmployeeListParameter {
                    ParentId = rData.ParentId
                });
                if (employee == null)
                {
                    return(new RespondWebViewData <RespondAddEmployeeViewModel>(WebViewErrorCode.NotExistsDataInfo));
                }
                if (employee.deleted == (short)CommonDeleted.Deleted)
                {
                    return(new RespondWebViewData <RespondAddEmployeeViewModel>(WebViewErrorCode.NotExistsDataInfo));
                }
                this.mDbConnection.ExecuteTransaction(tran =>
                {
                    var parameter = new QueryEmployeeListParameter()
                    {
                        ParentId = rData.ParentId
                    };
                    var classId = string.Concat(rData.ParentId, "000001");
                    var depList = this.mEmployeeDataAccess.GetEmployeeListByParentID(parameter);
                    if (depList.Count > 0)
                    {
                        classId = BuildNewClassIdByLastClassId.GeneratedNewClassIdByLastClassId(depList[0].classid);
                    }

                    var data = new employeeDataModel
                    {
                        address           = rData.Address,
                        childnumber       = 0,
                        classid           = classId,
                        comment           = rData.Comment,
                        deleted           = (short)CommonDeleted.NotDeleted,
                        depid             = rData.DepId,
                        depname           = rData.DepName,
                        lowestdiscount    = rData.LowestDiscount,
                        mobile            = rData.Mobile,
                        name              = rData.Name,
                        parentid          = rData.ParentId,
                        pinyin            = rData.Spelling,
                        serialnumber      = rData.SerialNumber,
                        sort              = rData.Sort,
                        status            = (short)CommonStatus.Used,
                        preinadvancetotal = rData.PreInAdvanceTotal,
                        prepayfeetotal    = rData.PrepayFeeTotal
                    };
                    var addResult = this.mEmployeeDataAccess.Add(data, tran);
                    if (addResult > 0)
                    {
                        this.mEmployeeDataAccess.UpdateChildNumberByClassId(tran, parameter);
                    }
                    MemcacheHelper.RemoveBy(ServiceMemcachedKeyManageConst.BasicEmployee);

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