public ActionResult Create(StaffSocialInsuranceViewModel model) { bool checkcode_medical = StaffSocialInsuranceRepository.GetAllStaffSocialInsurance().Any(n => !string.IsNullOrEmpty(n.MedicalCode) && n.MedicalCode.Equals(model.MedicalCode.Trim())); bool checkcode_social = StaffSocialInsuranceRepository.GetAllStaffSocialInsurance().Any(n => !string.IsNullOrEmpty(n.SocietyCode) && n.SocietyCode.Equals(model.SocietyCode.Trim())); string fail = ""; if (checkcode_medical) { fail = "Mã bảo hiểm y tế đã được cấp"; } if (checkcode_social) { if (!string.IsNullOrEmpty(fail)) { fail = fail + " và Mã bảo hiểm xã hội đã được cấp"; } else { fail = "Mã bảo hiểm xã hội đã được cấp"; } } if (!string.IsNullOrEmpty(fail)) { ViewBag.FailedMessage = fail; return(View(model)); } if (ModelState.IsValid) { var province = locationRepository.GetProvinceList(); var StaffSocialInsurance = new StaffSocialInsurance(); StaffSocialInsurance.IsDeleted = false; StaffSocialInsurance.CreatedUserId = WebSecurity.CurrentUserId; StaffSocialInsurance.ModifiedUserId = WebSecurity.CurrentUserId; StaffSocialInsurance.AssignedUserId = WebSecurity.CurrentUserId; StaffSocialInsurance.CreatedDate = DateTime.Now; StaffSocialInsurance.ModifiedDate = DateTime.Now; if (!string.IsNullOrEmpty(model.MedicalCode)) { StaffSocialInsurance.MedicalCode = model.MedicalCode.Trim(); StaffSocialInsurance.MedicalDefaultValue = Decimal.Parse(model.MedicalDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.MedicalStartDate = model.MedicalStartDate; StaffSocialInsurance.MedicalEndDate = model.MedicalEndDate; StaffSocialInsurance.MedicalIssue = model.ProvinceMedical != null?province.SingleOrDefault(n => n.Id == model.ProvinceMedical.Value.ToString()).Name : ""; } else { StaffSocialInsurance.MedicalDefaultValue = 0; } if (!string.IsNullOrEmpty(model.SocietyCode)) { StaffSocialInsurance.SocietyCode = model.SocietyCode.Trim(); StaffSocialInsurance.SocietyDefaultValue = Decimal.Parse(model.SocietyDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.SocietyIssue = model.ProvinceSociety != null?province.SingleOrDefault(n => n.Id == model.ProvinceSociety.Value.ToString()).Name : ""; StaffSocialInsurance.SocietyStartDate = model.SocietyStartDate; StaffSocialInsurance.SocietyEndDate = model.SocietyEndDate; } else { StaffSocialInsurance.MedicalDefaultValue = 0; } //Thông tin lương StaffSocialInsurance.TienLuong = string.IsNullOrEmpty(model.TienLuong) ? 0 : Decimal.Parse(model.TienLuong.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_CV = string.IsNullOrEmpty(model.PC_CV) ? 0 : Decimal.Parse(model.PC_CV.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_TNN = string.IsNullOrEmpty(model.PC_TNN) ? 0 : Decimal.Parse(model.PC_TNN.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_TNVK = string.IsNullOrEmpty(model.PC_TNVK) ? 0 : Decimal.Parse(model.PC_TNVK.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_Khac = string.IsNullOrEmpty(model.PC_Khac) ? 0 : Decimal.Parse(model.PC_Khac.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.StaffId = model.StaffId; StaffSocialInsurance.Note = model.Note; StaffSocialInsurance.Status = StatusSocialInsurance.DangHoatDong.GetName(); StaffSocialInsuranceRepository.InsertStaffSocialInsurance(StaffSocialInsurance); TempData[Globals.SuccessMessageKey] = App_GlobalResources.Wording.InsertSuccess; return(RedirectToAction("Index")); } return(View(model)); }
public ViewResult Index(string Code, string Name, string bhyt, string bhxh) { //bool _bhxh = string.IsNullOrEmpty(bhxh) ? false : true; //bool _bhyt = string.IsNullOrEmpty(bhyt) ? false : true; IEnumerable <StaffSocialInsuranceViewModel> q = StaffSocialInsuranceRepository.GetAllViewStaffSocialInsurance() .Select(item => new StaffSocialInsuranceViewModel { Id = item.Id, CreatedUserId = item.CreatedUserId, CreatedDate = item.CreatedDate, ModifiedUserId = item.ModifiedUserId, ModifiedDate = item.ModifiedDate, AssignedUserId = item.AssignedUserId, Birthday = item.Birthday, BranchName = item.BranchName, CodeName = item.CodeName, Email = item.Email, Ethnic = item.Ethnic, IdCardDate = item.IdCardDate, IdCardIssued = item.IdCardIssued, IdCardNumber = item.IdCardNumber, IsDeleted = item.IsDeleted, Literacy = item.Literacy, MedicalCode = item.MedicalCode, MedicalDefaultValue = item.MedicalDefaultValue.ToString(), MedicalEndDate = item.MedicalEndDate, MedicalIssue = item.MedicalIssue, MedicalStartDate = item.MedicalStartDate, PositionName = item.PositionName, ProvinceName = item.ProvinceName, Note = item.Note, SocietyCode = item.SocietyCode, SocietyDefaultValue = item.SocietyDefaultValue.ToString(), SocietyEndDate = item.SocietyEndDate, SocietyIssue = item.SocietyIssue, SocietyStartDate = item.SocietyStartDate, StaffId = item.StaffId, StaffName = item.StaffName, StaffCode = item.StaffCode, Status = item.Status }).OrderByDescending(m => m.ModifiedDate).ToList(); //Cập nhật trạng thái khi bảo hiểm y tế hoặc bh xã hội hết hạn //TH1: Hết hạn BHXH //TH2: Hết hạn BHYT và bảo hiểm XH luôn DateTime datenow = DateTime.Now; var hhsd = q.Where(n => n.MedicalEndDate < datenow && n.SocietyEndDate < datenow).ToList(); if (hhsd != null && hhsd.Count > 0) { for (int i = 0; i < hhsd.Count; i++) { if (string.IsNullOrEmpty(hhsd[i].Status) || hhsd[i].Status == StatusSocialInsurance.DangHoatDong.GetName()) { //Update status StaffSocialInsurance _staffSocial = new StaffSocialInsurance(); _staffSocial = StaffSocialInsuranceRepository.GetStaffSocialInsuranceById(hhsd[i].Id); _staffSocial.Status = StatusSocialInsurance.HetHangSuDung.GetName(); //Update StaffSocialInsuranceRepository.UpdateStaffSocialInsurance(_staffSocial); } } } var consd = q.Where(n => n.MedicalEndDate >= datenow || n.SocietyEndDate >= datenow).ToList(); if (consd != null && consd.Count > 0) { for (int i = 0; i < consd.Count; i++) { if (string.IsNullOrEmpty(consd[i].Status) || consd[i].Status == StatusSocialInsurance.HetHangSuDung.GetName()) { //Update status StaffSocialInsurance _staffSocial = new StaffSocialInsurance(); _staffSocial = StaffSocialInsuranceRepository.GetStaffSocialInsuranceById(consd[i].Id); _staffSocial.Status = StatusSocialInsurance.DangHoatDong.GetName(); //Update StaffSocialInsuranceRepository.UpdateStaffSocialInsurance(_staffSocial); } } } if (!string.IsNullOrEmpty(Code)) { q = q.Where(n => n.StaffCode.Contains(Code)); } if (!string.IsNullOrEmpty(Name)) { q = q.Where(n => n.StaffCode.Contains(Name)); } if (!string.IsNullOrEmpty(bhxh)) { q = q.Where(n => !string.IsNullOrEmpty(n.SocietyCode)); } if (!string.IsNullOrEmpty(bhyt)) { q = q.Where(n => !string.IsNullOrEmpty(n.MedicalCode)); } ViewBag.SuccessMessage = TempData["SuccessMessage"]; ViewBag.FailedMessage = TempData["FailedMessage"]; ViewBag.AlertMessage = TempData["AlertMessage"]; return(View(q)); }
public ActionResult Edit(DotBCBHXHDetailViewModel model, bool IsPopup) { if (ModelState.IsValid) { if (Request["Submit"] == "Save") { var province = locationRepository.GetProvinceList(); var DotBCBHXHDetail = DotBCBHXHDetailRepository.GetDotBCBHXHDetailById(model.Id); DotBCBHXHDetail.ModifiedUserId = WebSecurity.CurrentUserId; DotBCBHXHDetail.ModifiedDate = DateTime.Now; DotBCBHXHDetail.MedicalIssue = model.ProvinceMedical != null?province.SingleOrDefault(n => n.Id == model.ProvinceMedical.Value.ToString()).Name : ""; DotBCBHXHDetail.SocietyIssue = model.ProvinceSociety != null?province.SingleOrDefault(n => n.Id == model.ProvinceSociety.Value.ToString()).Name : ""; DotBCBHXHDetail.MedicalCode = model.MedicalCode; DotBCBHXHDetail.MedicalStartDate = model.MedicalStartDate; DotBCBHXHDetail.MedicalEndDate = model.MedicalEndDate; DotBCBHXHDetail.MedicalDefaultValue = Decimal.Parse(model.MedicalDefaultValue == null ? "0" : model.MedicalDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); DotBCBHXHDetail.SocietyCode = model.SocietyCode; DotBCBHXHDetail.SocietyStartDate = model.SocietyStartDate; DotBCBHXHDetail.SocietyEndDate = model.SocietyEndDate; DotBCBHXHDetail.SocietyDefaultValue = Decimal.Parse(model.SocietyDefaultValue == null ? "0" : model.SocietyDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); DotBCBHXHDetail.PC_CV = string.IsNullOrEmpty(model.PC_CV) ? 0 : Decimal.Parse(model.PC_CV.Replace(",", "."), new CultureInfo("en-GB")); DotBCBHXHDetail.PC_TNN = string.IsNullOrEmpty(model.PC_TNN) ? 0 : Decimal.Parse(model.PC_TNN.Replace(",", "."), new CultureInfo("en-GB")); DotBCBHXHDetail.PC_TNVK = string.IsNullOrEmpty(model.PC_TNVK) ? 0 : Decimal.Parse(model.PC_TNVK.Replace(",", "."), new CultureInfo("en-GB")); DotBCBHXHDetail.PC_Khac = string.IsNullOrEmpty(model.PC_Khac) ? 0 : Decimal.Parse(model.PC_Khac.Replace(",", "."), new CultureInfo("en-GB")); DotBCBHXHDetail.TienLuong = model.TienLuong; DotBCBHXHDetail.Note = model.Note; DotBCBHXHDetail.Status = model.Status; DotBCBHXHDetailRepository.UpdateDotBCBHXHDetail(DotBCBHXHDetail); if (model.SocialInsuranceId != null) // nếu có hồ sơ BHXH thì cập nhật lại { var StaffSocialInsurance = StaffSocialInsuranceRepository.GetStaffSocialInsuranceByStaffId(DotBCBHXHDetail.StaffId.Value); StaffSocialInsurance.MedicalCode = model.MedicalCode; StaffSocialInsurance.MedicalStartDate = model.MedicalStartDate; StaffSocialInsurance.MedicalEndDate = model.MedicalEndDate; StaffSocialInsurance.MedicalIssue = model.ProvinceMedical != null?province.SingleOrDefault(n => n.Id == model.ProvinceMedical.Value.ToString()).Name : ""; StaffSocialInsurance.MedicalDefaultValue = Decimal.Parse(model.MedicalDefaultValue == null ? "0" : model.MedicalDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.SocietyCode = model.SocietyCode; StaffSocialInsurance.SocietyStartDate = model.SocietyStartDate; StaffSocialInsurance.SocietyEndDate = model.SocietyEndDate; StaffSocialInsurance.SocietyIssue = model.ProvinceSociety != null?province.SingleOrDefault(n => n.Id == model.ProvinceSociety.Value.ToString()).Name : ""; StaffSocialInsurance.SocietyDefaultValue = Decimal.Parse(model.SocietyDefaultValue == null ? "0" : model.SocietyDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_CV = string.IsNullOrEmpty(model.PC_CV) ? 0 : Decimal.Parse(model.PC_CV.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_TNN = string.IsNullOrEmpty(model.PC_TNN) ? 0 : Decimal.Parse(model.PC_TNN.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_TNVK = string.IsNullOrEmpty(model.PC_TNVK) ? 0 : Decimal.Parse(model.PC_TNVK.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_Khac = string.IsNullOrEmpty(model.PC_Khac) ? 0 : Decimal.Parse(model.PC_Khac.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.TienLuong = model.TienLuong; StaffSocialInsurance.Note = model.Note; StaffSocialInsuranceRepository.UpdateStaffSocialInsurance(StaffSocialInsurance); DotBCBHXHDetail.SocialInsuranceId = StaffSocialInsurance.Id; DotBCBHXHDetailRepository.UpdateDotBCBHXHDetail(DotBCBHXHDetail); } else // ngược lại nếu không có thì thêm mới hồ sơ BHXH { var StaffSocialInsurance = new StaffSocialInsurance(); StaffSocialInsurance.IsDeleted = false; StaffSocialInsurance.CreatedUserId = WebSecurity.CurrentUserId; StaffSocialInsurance.ModifiedUserId = WebSecurity.CurrentUserId; StaffSocialInsurance.AssignedUserId = WebSecurity.CurrentUserId; StaffSocialInsurance.CreatedDate = DateTime.Now; StaffSocialInsurance.ModifiedDate = DateTime.Now; if (!string.IsNullOrEmpty(model.MedicalCode)) { StaffSocialInsurance.MedicalCode = model.MedicalCode.Trim(); StaffSocialInsurance.MedicalDefaultValue = Decimal.Parse(model.MedicalDefaultValue == null ? "0" : model.MedicalDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.MedicalStartDate = model.MedicalStartDate; StaffSocialInsurance.MedicalEndDate = model.MedicalEndDate; StaffSocialInsurance.MedicalIssue = model.ProvinceMedical != null?province.SingleOrDefault(n => n.Id == model.ProvinceMedical.Value.ToString()).Name : ""; } else { StaffSocialInsurance.MedicalDefaultValue = 0; } if (!string.IsNullOrEmpty(model.SocietyCode)) { StaffSocialInsurance.SocietyCode = model.SocietyCode.Trim(); StaffSocialInsurance.SocietyDefaultValue = Decimal.Parse(model.SocietyDefaultValue == null ? "0" : model.SocietyDefaultValue.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.SocietyIssue = model.ProvinceSociety != null?province.SingleOrDefault(n => n.Id == model.ProvinceSociety.Value.ToString()).Name : ""; StaffSocialInsurance.SocietyStartDate = model.SocietyStartDate; StaffSocialInsurance.SocietyEndDate = model.SocietyEndDate; } else { StaffSocialInsurance.MedicalDefaultValue = 0; } //Thông tin lương StaffSocialInsurance.TienLuong = model.TienLuong; StaffSocialInsurance.PC_CV = string.IsNullOrEmpty(model.PC_CV) ? 0 : Decimal.Parse(model.PC_CV.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_TNN = string.IsNullOrEmpty(model.PC_TNN) ? 0 : Decimal.Parse(model.PC_TNN.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_TNVK = string.IsNullOrEmpty(model.PC_TNVK) ? 0 : Decimal.Parse(model.PC_TNVK.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.PC_Khac = string.IsNullOrEmpty(model.PC_Khac) ? 0 : Decimal.Parse(model.PC_Khac.Replace(",", "."), new CultureInfo("en-GB")); StaffSocialInsurance.StaffId = model.StaffId; StaffSocialInsurance.Note = model.Note; StaffSocialInsurance.Status = Erp.BackOffice.Staff.Controllers.StaffSocialInsuranceController.StatusSocialInsurance.DangHoatDong.GetName(); StaffSocialInsuranceRepository.InsertStaffSocialInsurance(StaffSocialInsurance); DotBCBHXHDetail.SocialInsuranceId = StaffSocialInsurance.Id; DotBCBHXHDetailRepository.UpdateDotBCBHXHDetail(DotBCBHXHDetail); } if (IsPopup) { return(RedirectToAction("_ClosePopup", "Home", new { area = "", FunctionCallback = "ClosePopupAndReloadPage" })); } else { TempData[Globals.SuccessMessageKey] = App_GlobalResources.Wording.UpdateSuccess; return(RedirectToAction("Index")); } } return(View(model)); } return(View(model)); //if (Request.UrlReferrer != null) // return Redirect(Request.UrlReferrer.AbsoluteUri); //return RedirectToAction("Index"); }