/// <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); }
/// <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); }
/// <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); }
/// <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)); }
/// <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); }
/// <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); } }