Beispiel #1
0
        /// <summary>
        /// 创建
        /// </summary>
        /// <param name="entity">实体对象</param>
        /// <returns></returns>
        public Common.ClientResult.Result Post([FromBody] CompanyInsurance entity)
        {
            Common.ClientResult.Result result = new Common.ClientResult.Result();
            if (entity != null && ModelState.IsValid)
            {
                if (entity.Account1 == null && entity.Account2 == null && entity.PoliceID1 == null && entity.PoliceID2 == null)
                {
                    result.Code    = Common.ClientCode.Fail;
                    result.Message = "请至少填写一项信息";
                    return(result); //提示插入失败
                }

                int chk = m_BLL.CheckCompanyCity(entity.CRM_Company_ID ?? 0, entity.CityId);
                if (chk == 1)
                {
                    result.Code    = Common.ClientCode.Fail;
                    result.Message = "已经存在当前缴纳地的信息";
                    return(result); //提示插入失败
                }
                if (chk == 2)
                {
                    result.Code    = Common.ClientCode.Fail;
                    result.Message = "当前缴纳地的信息正在审核中,请不要重复提交";
                    return(result); //提示插入失败
                }

                string returnValue = string.Empty;
                if (m_BLL.CreateCRM_Company_Insurance(entity, LoginInfo.UserID, LoginInfo.RealName, LoginInfo.BranchID))
                {
                    LogClassModels.WriteServiceLog(Suggestion.InsertSucceed + ",客户_企业社保信息_待审核", "客户_企业社保信息_待审核"
                                                   );//写入日志
                    result.Code    = Common.ClientCode.Succeed;
                    result.Message = Suggestion.InsertSucceed;
                    return(result); //提示创建成功
                }
                else
                {
                    if (validationErrors != null && validationErrors.Count > 0)
                    {
                        validationErrors.All(a =>
                        {
                            returnValue += a.ErrorMessage;
                            return(true);
                        });
                    }
                    LogClassModels.WriteServiceLog(Suggestion.InsertFail + ",客户_企业社保信息_待审核," + returnValue, "客户_企业社保信息_待审核"
                                                   );//写入日志
                    result.Code    = Common.ClientCode.Fail;
                    result.Message = Suggestion.InsertFail + returnValue;
                    return(result); //提示插入失败
                }
            }

            result.Code    = Common.ClientCode.FindNull;
            result.Message = Suggestion.InsertFail + ",请核对输入的数据的格式"; //提示输入的数据的格式不对
            return(result);
        }
Beispiel #2
0
        /// <summary>
        /// 获取待审核的修改社保信息
        /// </summary>
        /// <param name="companyID">企业ID</param>
        /// <param name="cityID">缴纳地</param>
        /// <returns></returns>
        public CompanyInsurance GetEditData(SysEntities db, int companyID, string cityID)
        {
            int opType                  = (int)Common.OperateType.修改;
            int state                   = (int)Common.AuditStatus.待处理;
            var Company_Insurance       = db.CRM_Company_Insurance_Audit.Where(c => c.CRM_Company_ID == companyID && c.City == cityID && c.OperateType == opType && c.OperateStatus == state);
            var Company_PoliceInsurance = db.CRM_Company_PoliceInsurance_Audit.Where(c => c.CRM_Company_ID == companyID && c.City == cityID && c.OperateType == opType && c.OperateStatus == state);

            CompanyInsurance model = GetInsurance_Audit(db, Company_Insurance, Company_PoliceInsurance, companyID, cityID);

            model.CityName = db.City.Where(c => c.Id == cityID).ToList().FirstOrDefault().Name;
            return(model);
        }
Beispiel #3
0
        /// <summary>
        /// 获取待审核的新建社保信息
        /// </summary>
        /// <param name="getParam"></param>
        /// <returns></returns>
        public Common.ClientResult.DataResult PostAddData(int id, string city)
        {
            //int total = 0;
            List <CompanyInsurance> List  = new List <CompanyInsurance>();
            CompanyInsurance        model = new CompanyInsurance();

            model = m_BLL.GetAddData(id, city);

            List.Add(model);

            var data = new Common.ClientResult.DataResult
            {
                total = List.Count,
                rows  = List
            };

            return(data);
        }
Beispiel #4
0
        /// <summary>
        /// 获取待审核的修改社保信息和原信息
        /// </summary>
        /// <param name="getParam"></param>
        /// <returns></returns>
        public Common.ClientResult.DataResult GetEditData(int id, string city)
        {
            //int total = 0;
            List <CompanyInsurance> List  = new List <CompanyInsurance>();
            CompanyInsurance        model = new CompanyInsurance();

            model = m_BLL.GetEditData(id, city);

            List = m_BLL.GetCRM_Company_Insurance(id, city);

            List.Insert(0, model);

            var data = new Common.ClientResult.DataResult
            {
                total = List.Count,
                rows  = List
            };

            return(data);
        }
 /// <summary>
 /// 修改企业社保信息
 /// </summary>
 /// <param name="db"></param>
 /// <param name="model">社保信息实体</param>
 /// <param name="userID">操作人ID</param>
 /// <param name="userName">操作人姓名</param>
 /// <param name="branchID">所属分支机构</param>
 /// <returns></returns>
 public bool UpdateCRM_Company_Insurance(CompanyInsurance model, int userID, string userName, int branchID)
 {
     return(repository.UpdateCRM_Company_Insurance(db, model, userID, userName, branchID));
 }
Beispiel #6
0
        /// <summary>
        /// 拼接企业社保信息待审核数据
        /// </summary>
        /// <param name="db"></param>
        /// <param name="Company_Insurance"></param>
        /// <param name="Company_PoliceInsurance"></param>
        /// <param name="companyID"></param>
        /// <param name="cityID"></param>
        /// <returns></returns>
        private CompanyInsurance GetInsurance_Audit(SysEntities db, IQueryable <CRM_Company_Insurance_Audit> Company_Insurance, IQueryable <CRM_Company_PoliceInsurance_Audit> Company_PoliceInsurance, int companyID, string cityID)
        {
            CompanyInsurance Company_City = new CompanyInsurance();

            string CityID = cityID;
            //查询各社保种类的账户信息,公积金信息单独提出
            var Insurance = (from ci in Company_Insurance
                             join b in db.InsuranceKind on ci.InsuranceKind equals b.InsuranceKindId
                             where ci.City == CityID && b.City == CityID
                             select new CRM_Company_Insurance_View()
            {
                CRM_Company_ID = ci.CRM_Company_ID,
                CityId = ci.City,
                InsuranceKindId = ci.InsuranceKind,
                InsuranceKindName = b.Name,
                Account = ci.Account
            }
                             ).OrderBy(c => c.InsuranceKindId).ToList();

            string Account1 = "";
            string Account2 = "";

            foreach (var CI in Insurance)
            {
                if (CI.InsuranceKindId == (int)Common.EmployeeAdd_InsuranceKindId.公积金)
                {
                    Account2 = CI.Account;
                }
                else
                {
                    Account1 += CI.InsuranceKindName + ":" + CI.Account + ";";
                }
            }
            Company_City.Account1 = Account1;
            Company_City.Account2 = Account2;

            //查询各社保政策 目前只查工伤和公积金
            var PoliceInsurance = (from cp in Company_PoliceInsurance
                                   join b in db.InsuranceKind on cp.InsuranceKind equals b.InsuranceKindId
                                   join c in db.PoliceInsurance on cp.PoliceInsurance equals c.Id
                                   where cp.City == CityID && b.City == CityID
                                   select new CRM_Company_PoliceInsurance_View()
            {
                CRM_Company_ID = cp.CRM_Company_ID,
                CityId = cp.City,
                InsuranceKind = cp.InsuranceKind,
                InsuranceKindName = b.Name,
                PoliceInsuranceId = cp.PoliceInsurance,
                PoliceInsuranceName = c.Name
            }).OrderBy(c => c.PoliceInsuranceId).ToList();

            foreach (var CP in PoliceInsurance)
            {
                if (CP.InsuranceKind == (int)Common.EmployeeAdd_InsuranceKindId.公积金)
                {
                    Company_City.PoliceID2 += CP.PoliceInsuranceId + ";";
                    Company_City.Police2   += CP.PoliceInsuranceName + ";";
                }
                else if (CP.InsuranceKind == (int)Common.EmployeeAdd_InsuranceKindId.工伤)
                {
                    Company_City.PoliceID1 += CP.PoliceInsuranceId + ";";
                    Company_City.Police1   += CP.PoliceInsuranceName + ";";
                }
            }
            return(Company_City);
        }
Beispiel #7
0
        /// <summary>
        /// 修改企业社保信息
        /// </summary>
        /// <param name="db"></param>
        /// <param name="model">社保信息实体</param>
        /// <param name="userID">操作人ID</param>
        /// <param name="userName">操作人姓名</param>
        /// <param name="branchID">所属分支机构</param>
        /// <returns></returns>
        public bool UpdateCRM_Company_Insurance(SysEntities db, CompanyInsurance model, int userID, string userName, int branchID)
        {
            try
            {
                DateTime dtnow = DateTime.Now;
                List <CRM_Company_Insurance_Audit> ListI  = new List <CRM_Company_Insurance_Audit>();
                CRM_Company_Insurance_Audit        ModelI = new CRM_Company_Insurance_Audit();

                List <CRM_Company_PoliceInsurance_Audit> ListPI  = new List <CRM_Company_PoliceInsurance_Audit>();
                CRM_Company_PoliceInsurance_Audit        ModelPI = new CRM_Company_PoliceInsurance_Audit();

                string[] Accounts = model.Account1 == null ? null : model.Account1.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                string[] Polices1 = model.PoliceID1 == null ? null : model.PoliceID1.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
                string[] Polices2 = model.PoliceID2 == null ? null : model.PoliceID2.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);


                List <CRM_Company_Insurance>       ListI_Old  = db.CRM_Company_Insurance.Where(c => c.City == model.CityId && c.CRM_Company_ID == model.CRM_Company_ID).OrderBy(c => c.InsuranceKind).ToList();
                List <CRM_Company_PoliceInsurance> ListPI_Old = db.CRM_Company_PoliceInsurance.Where(c => c.City == model.CityId && c.CRM_Company_ID == model.CRM_Company_ID).OrderBy(c => c.InsuranceKind).ToList();


                //公积金账户
                if (!string.IsNullOrEmpty(model.Account2))
                {
                    ModelI                = new CRM_Company_Insurance_Audit();
                    ModelI.Account        = model.Account2;
                    ModelI.InsuranceKind  = (int)Common.EmployeeAdd_InsuranceKindId.公积金;
                    ModelI.CRM_Company_ID = model.CRM_Company_ID;
                    ModelI.City           = model.CityId;

                    CRM_Company_Insurance oldGGJ = ListI_Old.Where(c => c.InsuranceKind == ModelI.InsuranceKind).ToList().FirstOrDefault();
                    if (oldGGJ != null)
                    {
                        ModelI.CRM_Company_Insurance_ID = oldGGJ.ID;
                    }

                    ModelI.State         = Common.Status.启用.ToString();
                    ModelI.CreateTime    = dtnow;
                    ModelI.CreateUserID  = userID;
                    ModelI.CreatePerson  = userName;
                    ModelI.OperateStatus = (int)Common.AuditStatus.待处理; //待处理
                    ModelI.OperateNode   = 2;                           //质控
                    ModelI.BranchID      = branchID;
                    ModelI.OperateType   = (int)Common.OperateType.修改;

                    ListI.Add(ModelI);
                }

                //社保账户
                if (!string.IsNullOrEmpty(model.Account1))
                {
                    foreach (string acc in Accounts)
                    {
                        string[] account = acc.Split(new char[] { ':' }, StringSplitOptions.RemoveEmptyEntries);

                        if (account.Length == 2 && !string.IsNullOrEmpty(account[1]))
                        {
                            Common.EmployeeAdd_InsuranceKindId getType = (Common.EmployeeAdd_InsuranceKindId)Enum.Parse(typeof(Common.EmployeeAdd_InsuranceKindId), account[0]);

                            ModelI               = new CRM_Company_Insurance_Audit();
                            ModelI.Account       = account[1];
                            ModelI.InsuranceKind = (int)getType;

                            ModelI.CRM_Company_ID = model.CRM_Company_ID;
                            ModelI.City           = model.CityId;

                            CRM_Company_Insurance oldInsurance = ListI_Old.Where(c => c.InsuranceKind == ModelI.InsuranceKind).ToList().FirstOrDefault();
                            if (oldInsurance != null)
                            {
                                ModelI.CRM_Company_Insurance_ID = oldInsurance.ID;
                            }
                            //ModelI.CRM_Company_Insurance_ID = ListI_Old.Where(c => c.InsuranceKind == ModelI.InsuranceKind).ToList().FirstOrDefault().ID;

                            ModelI.State         = Common.Status.启用.ToString();
                            ModelI.CreateTime    = dtnow;
                            ModelI.CreateUserID  = userID;
                            ModelI.CreatePerson  = userName;
                            ModelI.OperateStatus = (int)Common.AuditStatus.待处理; //待处理
                            ModelI.OperateNode   = 2;                           //质控
                            ModelI.BranchID      = branchID;
                            ModelI.OperateType   = (int)Common.OperateType.修改;

                            ListI.Add(ModelI);
                        }
                    }
                }
                //公积金政策
                if (!string.IsNullOrEmpty(model.PoliceID2))
                {
                    foreach (string po in Polices2)
                    {
                        ModelPI = new CRM_Company_PoliceInsurance_Audit();


                        ModelPI.PoliceInsurance = Convert.ToInt32(po);
                        ModelPI.InsuranceKind   = (int)Common.EmployeeAdd_InsuranceKindId.公积金;

                        ModelPI.CRM_Company_ID = model.CRM_Company_ID;
                        ModelPI.City           = model.CityId;

                        CRM_Company_PoliceInsurance oldPiGGJ = ListPI_Old.Where(c => c.InsuranceKind == ModelPI.InsuranceKind).ToList().FirstOrDefault();
                        if (oldPiGGJ != null)
                        {
                            ModelPI.CRM_Company_PoliceInsurance_ID = oldPiGGJ.ID;
                        }
                        //ModelPI.CRM_Company_PoliceInsurance_ID = ListPI_Old.Where(c => c.InsuranceKind == ModelPI.InsuranceKind).ToList().FirstOrDefault().ID;

                        ModelPI.State         = Common.Status.启用.ToString();
                        ModelPI.CreateTime    = dtnow;
                        ModelPI.CreateUserID  = userID;
                        ModelPI.CreatePerson  = userName;
                        ModelPI.OperateStatus = (int)Common.AuditStatus.待处理; //待处理
                        ModelPI.OperateNode   = 2;                           //质控
                        ModelPI.BranchID      = branchID;
                        ModelPI.OperateType   = (int)Common.OperateType.修改;

                        ListPI.Add(ModelPI);
                    }
                }


                //工伤政策
                if (!string.IsNullOrEmpty(model.PoliceID1))
                {
                    foreach (string po in Polices1)
                    {
                        ModelPI = new CRM_Company_PoliceInsurance_Audit();

                        ModelPI.PoliceInsurance = Convert.ToInt32(po);
                        ModelPI.InsuranceKind   = (int)Common.EmployeeAdd_InsuranceKindId.工伤;

                        ModelPI.CRM_Company_ID = model.CRM_Company_ID;
                        ModelPI.City           = model.CityId;

                        CRM_Company_PoliceInsurance oldPiGS = ListPI_Old.Where(c => c.InsuranceKind == ModelPI.InsuranceKind).ToList().FirstOrDefault();
                        if (oldPiGS != null)
                        {
                            ModelPI.CRM_Company_PoliceInsurance_ID = oldPiGS.ID;
                        }

                        ModelPI.State         = Common.Status.启用.ToString();
                        ModelPI.CreateTime    = dtnow;
                        ModelPI.CreateUserID  = userID;
                        ModelPI.CreatePerson  = userName;
                        ModelPI.OperateStatus = (int)Common.AuditStatus.待处理; //待处理
                        ModelPI.OperateNode   = 2;                           //质控
                        ModelPI.BranchID      = branchID;
                        ModelPI.OperateType   = (int)Common.OperateType.修改;

                        ListPI.Add(ModelPI);
                    }
                }

                db.CRM_Company_Insurance_Audit.AddRange(ListI);
                db.CRM_Company_PoliceInsurance_Audit.AddRange(ListPI);

                foreach (var Iold in ListI_Old)
                {
                    Iold.State = Common.Status.修改中.ToString();
                }

                foreach (var PIold in ListPI_Old)
                {
                    PIold.State = Common.Status.修改中.ToString();
                }

                db.SaveChanges();
                return(true);
            }
            catch
            {
                return(false);
            }
        }