using System; using System.Collections; using System.Collections.Generic; using System.Configuration; using System.Data; using System.Data.Entity.Infrastructure; using System.Drawing; using System.Globalization; using System.IO; using System.Linq; using System.Web.Mvc; using System.Web.Services.Description; using CYQ.Data.Table; using CYQ.Data; using dccdc.BLL; using dccdc.DAL; using dccdc.Models; using dccdc.Models.DTO; using Newtonsoft.Json; using Transformer.NET; using ZWL.Common; using System.Security.Cryptography; using dccdc.Common; using Ext.Net; using Microsoft.Owin; namespace dccdc.Controllers { /// /// 登记业务 /// public class RegistrationController : Controller { // GET: Registration #region 快速办证 public ActionResult ksbz(string tm, string tjzt) { List listBuMen = new ERPBuMenBll().GetListdir(); ViewData["jgs"] = new SelectList(listBuMen, "id", "BuMenName"); //ViewData["users"] = new SelectList(new ERPUserBll().GetAllList("德城区疾病预防控制中心"), "truename", "truename"); //修改前提:listBuMen只有一条记录/listBuMen的第一条记录是当前体检中心 ViewData["users"] = new SelectList(new ERPUserBll().GetAllList(listBuMen[0].BuMenName), "truename", "truename"); if (tm != null && (tjzt == "1" || tjzt == "2")) { ViewBag.disabled = "disabled"; ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); var dtomodel = tjzt == "1" ? bll.GetfjModel(tm) : bll.getModel(tm); AutoMapper.Mapper.Initialize(x => x.CreateMap()); var vm = AutoMapper.Mapper.Map(dtomodel); ViewBag.src = "data:image/jpeg;base64," + vm.phone_path; ViewBag.tjzt = tjzt; ViewData["zgzt"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["tjfn"] = new SelectList(new MedicalSchemeMaintainBll().GetAllList(), "id", "medical_scheme", vm.medical_scheme_maintain_id); ViewData["hylb"] = new SelectList(new TradeTypeMaintainBll().GetAllTreeList(), "id", "trade_name", vm.trade_type_maintain_id); //ViewData["dq"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "area_name", "area_name", vm.area); ViewData["hj"] = new SelectList(new NativeInfoMaintainBll().GetAllList(), "id", "natives", vm.native_info_maintain_id); //ViewData["gz"] = new SelectList(new WorkTypeMaintainBll().GetAllTreeList(), "work_type_name", "work_type_name", vm.work_category); ViewData["rylx"] = new SelectList(new PersonTypeMaintainBll().GetAllList("", "是"), "id", "type_name", vm.person_type_maintain_id); vm.tjzt = tjzt; vm.tjxm = dtomodel.check_item_ids; vm.special_health_certificate1 = dtomodel.special_health_certificate == "快速办证"; vm.ys1 = dtomodel.main_user_name; List listDoctors = new ProfessionalExamRegisterBll().getDoctors(dtomodel.id); //project_name是根据ksbz2方法中更新的体检结果抄过来的,但是在此人的体检项目中不一定存在以下的项目 var pro2 = listDoctors.Where(i => i.project_name.Equals("皮肤病")); if (pro2.Count() != 0) { vm.ys2 = pro2.First().presenter; } var pro3 = listDoctors.Where(i => i.project_name.Equals("皮肤")); if (pro3.Count() != 0) { vm.ys3 = pro3.First().presenter; } var pro4 = listDoctors.Where(i => i.project_name.Equals("x光透视")); if (pro4.Count() != 0) { vm.ys4 = pro4.First().presenter; } var pro5 = listDoctors.Where(i => i.project_name.Equals("肺")); if (pro5.Count() != 0) { vm.ys5 = pro5.First().presenter; } var pro6 = listDoctors.Where(i => i.project_name.Equals("痢疾杆菌(志贺氏)")); if (pro6.Count() != 0) { vm.ys6 = pro6.First().presenter; } var pro7 = listDoctors.Where(i => i.project_name.Equals("谷丙转氨酶(ALT)")); if (pro7.Count() != 0) { vm.ys7 = pro7.First().presenter; } var pro8 = listDoctors.Where(i => i.project_name.Equals("伤寒或副伤寒(沙门氏)")); if (pro8.Count() != 0) { vm.ys8 = pro8.First().presenter; } var pro9 = listDoctors.Where(i => i.project_name.Equals("霍乱")); if (pro9.Count() != 0) { vm.ys9 = pro9.First().presenter; } var pro10 = listDoctors.Where(i => i.project_name.Equals("抗HAV-IgM")); if (pro10.Count() != 0) { vm.ys10 = pro10.First().presenter; } var pro11 = listDoctors.Where(i => i.project_name.Equals("抗HEV-IgM")); if (pro11.Count() != 0) { vm.ys11 = pro11.First().presenter; } var pro12 = listDoctors.Where(i => i.project_name.Equals("辨色力")); if (pro12.Count() != 0) { vm.ys12 = pro12.First().presenter; } var pro13 = listDoctors.Where(i => i.project_name.Equals("心电图")); if (pro13.Count() != 0) { vm.ys13 = pro13.First().presenter; } var pro14 = listDoctors.Where(i => i.project_name.Equals("乙型肝炎表面抗原")); if (pro14.Count() != 0) { vm.ys14 = pro14.First().presenter; } var pro15 = listDoctors.Where(i => i.project_name.Equals("乙型肝炎E抗原")); if (pro15.Count() != 0) { vm.ys15 = pro15.First().presenter; } return View(vm); } else { ViewBag.disabled = "Enabled"; ViewBag.tjzt = 0; ViewData["zgzt"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["tjfn"] = new SelectList(new MedicalSchemeMaintainBll().GetAllList(), "id", "medical_scheme"); ViewData["hylb"] = new SelectList(new TradeTypeMaintainBll().GetAllTreeList(), "id", "trade_name"); ViewData["dq"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "id", "area_name"); ViewData["hj"] = new SelectList(new NativeInfoMaintainBll().GetAllList(), "id", "natives"); ViewData["gz"] = new SelectList(new WorkTypeMaintainBll().GetAllTreeList(), "id", "work_type_name"); ViewData["rylx"] = new SelectList(new PersonTypeMaintainBll().GetAllList("", "是"), "id", "type_name"); return View(); } } public string getBumenUser(string name) { var list = new SelectList(new ERPUserBll().GetAllList(name), "truename", "truename"); return JsonConvert.SerializeObject(list); } /// /// 快速办证 /// /// /// /// [HttpPost] public ActionResult RegisteResult2(RegisterCydjViewModel2 vm, string mid) { //return Json(new { State = 0, Message = "测试!"}); ViewData["zgzt"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["tjfn"] = new SelectList(new MedicalSchemeMaintainBll().GetAllList(), "id", "medical_scheme"); ViewData["hylb"] = new SelectList(new TradeTypeMaintainBll().GetAllTreeList(), "id", "trade_name"); ViewData["dq"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "id", "area_name"); ViewData["hj"] = new SelectList(new NativeInfoMaintainBll().GetAllList(), "id", "natives"); ViewData["gz"] = new SelectList(new WorkTypeMaintainBll().GetAllTreeList(), "id", "work_type_name"); ViewData["rylx"] = new SelectList(new PersonTypeMaintainBll().GetAllList("", "是"), "id", "type_name"); ModelState.Remove("id"); ModelState.Remove("native_info_maintain_id"); if (!ModelState.IsValid) { return View(vm); } //vm.phone_path = vm.phone_path.Replace("data:image/jpeg;base64,", ""); vm.phone_path = ZWL.Common.ImgUtil.ConvertImg(vm.phone_path); var erpUser = Session["loginUser"] as Models.ERPUser; if (erpUser != null) vm.register_person = erpUser.TrueName; AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj = AutoMapper.Mapper.Map(vm); ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); List tjxmal = new List(); dtocydj.special_health_certificate = "快速办证"; //dtocydj.jgid = Common.Global.jgid; if (!string.IsNullOrEmpty(vm.tjxm)) { tjxmal = new ExamProjectMaintainBll().GetAllListByprojectids(vm.tjxm.TrimEnd(',')); // tjxmal = new MedicalSchemeChargeMaintainBll().GetAllListByprojectids(vm.tjxm.TrimEnd(','),vm.); } string f = ""; switch (vm.tjzt) { case "1": List fjsfxmal = new List(); ChargeProjectMaintainModel fjsfxmmodel = new ChargeProjectMaintainModel(); fjsfxmmodel.charge_project_name = "复查费"; fjsfxmmodel.fee = "50"; fjsfxmal.Add(fjsfxmmodel); f = bll.Fjdj(dtocydj, fjsfxmal); break; case "2": AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj1 = AutoMapper.Mapper.Map(vm); dtocydj1.special_health_certificate = vm.special_health_certificate1 ? "快速办证" : ""; //dtocydj1.jgid = Common.Global.jgid; bll.Update(dtocydj1); f = dtocydj1.physical_num; break; case "0": int imid = 0; int.TryParse(mid, out imid); List sfxmal = new MedicalSchemeChargeMaintainBll().GetAllListBysfxmId(vm.sfxm.TrimEnd(','), vm.medical_scheme_maintain_id); f = bll.Cydj(dtocydj, sfxmal, tjxmal, imid); break; } //2:登记后修改 1:复检 0:正常 var txm = vm.txm ? "1" : "0"; var zyd = vm.zyd ? "1" : "0"; var or = new ProfessionalExamRegisterBll().ksbz2(f, vm.ys1, vm.ys2, vm.ys3, vm.ys4, vm.ys5, vm.ys6, vm.ys7, vm.jgid, vm.ys8, vm.ys9, vm.ys10 , vm.ys11, vm.ys12, vm.ys13, vm.ys14, vm.ys15); return Json(new { State = 1, Message = "操作成功!", dy = "0", txm = txm, zyd = zyd, tm = f }); } #endregion #region 从业登记 /// /// /// /// /// 2:登记后修改 1:复检 0:正常 /// [HttpGet] public ActionResult RegisteResult(string tm, string tjzt) { if (tm != null && (tjzt == "1" || tjzt == "2")) { ViewBag.disabled = "disabled"; ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); var dtomodel = tjzt == "1" ? bll.GetfjModel(tm) : bll.getModel(tm); AutoMapper.Mapper.Initialize(x => x.CreateMap()); var vm = AutoMapper.Mapper.Map(dtomodel); //ViewBag.src = "data:image/jpeg;base64," + vm.phone_path; ViewBag.src = "data:image/jpeg;base64," + vm.phone_path; vm.phone_path = vm.phone_path; ViewBag.tjzt = tjzt; ViewData["zgzt"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["tjfn"] = new SelectList(new MedicalSchemeMaintainBll().GetAllList(), "id", "medical_scheme", vm.medical_scheme_maintain_id); ViewData["hylb"] = new SelectList(new TradeTypeMaintainBll().GetAllTreeList(), "id", "trade_name", vm.trade_type_maintain_id); //ViewData["dq"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "area_name", "area_name", vm.area); ViewData["hj"] = new SelectList(new NativeInfoMaintainBll().GetAllList(), "id", "natives", vm.native_info_maintain_id); //ViewData["gz"] = new SelectList(new WorkTypeMaintainBll().GetAllTreeList(), "work_type_name", "work_type_name", vm.work_category); ViewData["rylx"] = new SelectList(new PersonTypeMaintainBll().GetAllList("", "是"), "id", "type_name", vm.person_type_maintain_id); vm.tjzt = tjzt; vm.tjxm = dtomodel.check_item_ids; vm.special_health_certificate1 = dtomodel.special_health_certificate == "快速办证"; return View(vm); } else { ViewBag.disabled = "Enabled"; ViewBag.tjzt = 0; ViewData["zgzt"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["tjfn"] = new SelectList(new MedicalSchemeMaintainBll().GetAllList(), "id", "medical_scheme"); ViewData["hylb"] = new SelectList(new TradeTypeMaintainBll().GetAllTreeList(), "id", "trade_name"); ViewData["dq"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "id", "area_name"); ViewData["hj"] = new SelectList(new NativeInfoMaintainBll().GetAllList(), "id", "natives"); ViewData["gz"] = new SelectList(new WorkTypeMaintainBll().GetAllTreeList(), "id", "work_type_name"); ViewData["rylx"] = new SelectList(new PersonTypeMaintainBll().GetAllList("", "是"), "id", "type_name"); return View(); } } public string GettrandeModel(string name) { TradeTypeMaintainBll bll = new TradeTypeMaintainBll(); TradeTypeMaintainModel model = bll.GetModelBytradename(name); return JsonConvert.SerializeObject(model); } public string MedicalModel(string name) { MedicalSchemeMaintainBll bll = new MedicalSchemeMaintainBll(); MedicalSchemeMaintainModel model = bll.GetmodelByName(name); return JsonConvert.SerializeObject(model); } /// /// 判断当天有没有登记 /// /// 身份证号 /// 体检类型ID /// 体检类型名称 /// 返回false表示已登记 public string CheckDay(string cardnumber, string tradeTypeMaintainId = "", string examType = "从业人员体检") { ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); string f = bll.CheckDay(cardnumber, tradeTypeMaintainId, examType); return (f == "true") ? "true" : "false"; } /// /// 根据体检方案ID查询收费项目 /// /// /// public string GetsfxmBytjfnid(string tjfnid) { MedicalSchemeChargeMaintainBll bll = new MedicalSchemeChargeMaintainBll(); List al = bll.GetListBymedicalschememaintainid(tjfnid); string modelslistjson = JsonConvert.SerializeObject(al); ; return "{\"Rows\":" + modelslistjson + "}"; } /// /// 根据体检方案ID查询体检项目 /// /// /// public string GettjxmByfnid(string tjfnid) { medical_scheme_project_maintainBll bll = new medical_scheme_project_maintainBll(); List al = bll.GetListBymedicalschememaintainid(tjfnid); List f = new List(); foreach (var medicalSchemeProjectMaintainModel in al) { f ff = new f { exam_group = medicalSchemeProjectMaintainModel.team_name, project_id = medicalSchemeProjectMaintainModel.exam_project_maintain_project_id, project_name = medicalSchemeProjectMaintainModel.project_name }; f.Add(ff); } string modelslistjson = JsonConvert.SerializeObject(f); return "{\"Rows\":" + modelslistjson + "}"; } public class f { public string project_id { get; set; } public string project_name { get; set; } public string exam_group { get; set; } } /// /// 从业登记提交 /// /// /// /// [HttpPost] public ActionResult RegisteResult(RegisterCydjViewModel vm, string mid) { #region 验证 ViewData["zgzt"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["tjfn"] = new SelectList(new MedicalSchemeMaintainBll().GetAllList(), "id", "medical_scheme"); ViewData["hylb"] = new SelectList(new TradeTypeMaintainBll().GetAllTreeList(), "id", "trade_name"); ViewData["dq"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "id", "area_name"); ViewData["hj"] = new SelectList(new NativeInfoMaintainBll().GetAllList(), "id", "natives"); ViewData["gz"] = new SelectList(new WorkTypeMaintainBll().GetAllTreeList(), "id", "work_type_name"); ViewData["rylx"] = new SelectList(new PersonTypeMaintainBll().GetAllList("", "是"), "id", "type_name"); ModelState.Remove("id"); ModelState.Remove("native_info_maintain_id"); if (!ModelState.IsValid) { return View(vm); } #endregion //照片 //vm.phone_path = vm.phone_path.Replace("data:image/jpeg;base64,", ""); vm.phone_path = ZWL.Common.ImgUtil.ConvertImg(vm.phone_path); //vm.phone_path = @"C:\Users\admin\Desktop\测试.jpg"; //登录姓名 var erpUser = Session["loginUser"] as Models.ERPUser; if (erpUser != null) { vm.register_person = erpUser.TrueName; } AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj = AutoMapper.Mapper.Map(vm); ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); List tjxmal = new List(); dtocydj.special_health_certificate = vm.special_health_certificate1 ? "快速办证" : ""; //vm.phone_path = vm.phone_path.Replace("data:image/jpeg;base64,", ""); //最上级的部门ID dtocydj.jgid = Common.Global.jgid; //dtocydj.phone_path = dtocydj.phone_path.Replace("data:image/jpeg;base64,", ""); if (!string.IsNullOrEmpty(vm.tjxm)) { tjxmal = new ExamProjectMaintainBll().GetAllListByprojectids(vm.tjxm.TrimEnd(',')); // tjxmal = new MedicalSchemeChargeMaintainBll().GetAllListByprojectids(vm.tjxm.TrimEnd(','),vm.); } string f = ""; switch (vm.tjzt) { //复检 case "1": ZWL.Common.SaveLog.Logs("C:\\AppExe\\从业\\复检", "复检登记", " 姓名:" + vm.person_name + " 身份证号:" + vm.card_number); List fjsfxmal = new List(); ChargeProjectMaintainModel fjsfxmmodel = new ChargeProjectMaintainModel(); fjsfxmmodel.charge_project_name = "复查费"; fjsfxmmodel.fee = "50"; fjsfxmal.Add(fjsfxmmodel); f = bll.Fjdj(dtocydj, fjsfxmal); break; //登记后修改 case "2": ZWL.Common.SaveLog.Logs("C:\\AppExe\\从业\\修改", "修改登记", " 姓名:" + vm.person_name + " 身份证号:" + vm.card_number); AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj1 = AutoMapper.Mapper.Map(vm); dtocydj1.special_health_certificate = vm.special_health_certificate1 ? "快速办证" : ""; dtocydj1.jgid = Common.Global.jgid; bll.Update(dtocydj1); f = dtocydj1.physical_num; break; //正常登记 case "0": ZWL.Common.SaveLog.Logs("C:\\AppExe\\从业\\正常", "正常登记", " 姓名:" + vm.person_name + " 身份证号:" + vm.card_number); int imid = 0; int.TryParse(mid, out imid); List sfxmal = new MedicalSchemeChargeMaintainBll().GetAllListBysfxmId(vm.sfxm.TrimEnd(','), vm.medical_scheme_maintain_id); f = bll.Cydj(dtocydj, sfxmal, tjxmal, imid); break; } //2:登记后修改 1:复检 0:正常 var txm = vm.txm ? "1" : "0"; var zyd = vm.zyd ? "1" : "0"; return Json(new { State = 1, Message = "操作成功!", dy = "0", txm = txm, zyd = zyd, tm = f }); } [AllowAnonymous] public string GetRegisteModel(string tm) { ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); ProfessionalExamRegisterModel model = bll.getModel(tm); List mls = new List { model }; return JsonConvert.SerializeObject(mls); } #region 登记人员信息列表 public ActionResult RegisteList(string lx, string ksbz) { ViewBag.lx = lx; ViewBag.ksbz = (ksbz == null ? 0 : 1); return View(); } public JsonResult GetRegisteList(int page, int pagesize, string name, string sitename, string startdate, string endtime, string lx) { var bll = new ProfessionalExamRegisterBll(); int count = bll.getCount(name, sitename, startdate, endtime, lx); List ctList = bll.getList(page, pagesize, name, sitename, startdate, endtime, lx); return Json(new { Total = count, Rows = ctList }); } /// /// 根据姓名/身份证/体检号/登记日期/企业体检方案/通用体检方案/体检状态查询人员信息 /// 2023-10-27 xulu 修改 /// /// /// /// /// /// /// /// public JsonResult GetRegistersList(int page, int pagesize, string name, string idcard, string startdate, string enddate, string physicalnum, string tjfn, string tytjfn, string tjState, string utilName, string tjxz, string tjzt) { //2023-11-23 xulu 增加enddate //2023-11-16 xulu 增加体检方案为-1判断 tjfn = tjfn == "-1" ? "" : tjfn; tytjfn = tytjfn == "-1" ? "" : tytjfn; if (tjState != "已导入") { var bll = new ProfessionalExamRegisterBll(); //2023-12-06 xulu 添加体检小组、完成状态查询 List ctList = bll.getRegistersList(page, pagesize, name, idcard, startdate, enddate, physicalnum, tjfn, tytjfn, tjState, utilName, tjxz, tjzt); int count = bll.getRegistersListCount(name, idcard, startdate, enddate, physicalnum, tjfn, tytjfn, tjState, utilName, tjxz, tjzt); return Json(new { Total = count, Rows = ctList }); } else { OccupationDataImportObjectBll bll = new OccupationDataImportObjectBll(); List importList = bll.getList(page, pagesize, name, idcard, tjfn, tytjfn, utilName, startdate, enddate); List ctList = new List(); for (int i = 0; i < importList.Count; i++) { ProfessionalExamRegisterModel reg = new ProfessionalExamRegisterModel(); reg.person_name = importList[i].name; reg.card_number = importList[i].identity_card; reg.check_item_ids = importList[i].check_item_ids; reg.physical_type = "职业体检"; reg.procedure_status = "已导入"; reg.id = importList[i].id.ToString(); //2023-11-16 xulu 增加单位展示 reg.util_name = importList[i].enterprise; ctList.Add(reg); } int count = bll.getListCount(name, idcard, tjfn, tytjfn, utilName,startdate,enddate); return Json(new { Total = count, Rows = ctList }); } } /// /// 根据姓名/身份证/体检号/登记日期/企业体检方案/通用体检方案/体检状态查询人员信息,导出功能 /// 2023-11-07 xulu /// /// /// /// /// /// /// /// /// /// public JsonResult GetRegistersListToExcel(string name, string idcard, string startdate, string enddate, string physicalnum, string tjfn, string tytjfn, string tjState, string utilName, string tjxz, string tjzt) { //2023-11-23 xulu 增加enddate //2023-11-16 xulu 增加体检方案为-1判断 tjfn = tjfn == "-1" ? "" : tjfn; tytjfn = tytjfn == "-1" ? "" : tytjfn; //2023-11-16 xulu 服务器端生成导出名单文件 string filename = DateTime.Now.ToString("yyyyMMdd")+"导出名单.xls"; string FilePath = System.Web.HttpContext.Current.Server.MapPath("../") + "ReportFile\\"; Hashtable MyTable = new Hashtable(); MyTable.Add("physical_num", "体检编号"); MyTable.Add("person_name", "姓名"); MyTable.Add("sex", "性别"); MyTable.Add("person_age", "年龄"); MyTable.Add("card_number", "身份证号"); MyTable.Add("phone", "手机号"); MyTable.Add("util_name", "单位"); MyTable.Add("procedure_status", "体检状态"); DataTable dt = new DataTable(); if (tjState != "已导入") { var bll = new ProfessionalExamRegisterBll(); //2023-12-06 xulu 添加体检小组、完成状态查询 dt = bll.getRegistersList(name, idcard, startdate, enddate, physicalnum, tjfn, tytjfn, tjState, utilName, tjxz, tjzt); } else { OccupationDataImportObjectBll bll = new OccupationDataImportObjectBll(); dt = bll.getList(name, idcard, tjfn, tytjfn, utilName,startdate,enddate); } //2023-11-23 xulu 修改导出excel方法 //DataToExcel dte = new DataToExcel(); //filename = dte.DataExcel(dt, "导出名单", FilePath, MyTable); DataToExcel.DataTableToExcel(dt, FilePath + filename, MyTable); return Json(new { filename = filename }); } #endregion #region 复检登记人员信息列表 public ActionResult FjResult() { ViewData["ssqy"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "id", "area_name"); return View(); } public string GetFjList(string sitename, string tm, string name, string starttime, string endtime, string ssqy) { ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); string modelslistjson = JsonConvert.SerializeObject(bll.GetfjList(sitename, tm, name, starttime, endtime, ssqy)); return "{\"Rows\":" + modelslistjson + "}"; } #endregion #endregion #region 职业登记 /// /// 职业登记界面 /// /// zt=0,null正常 zt=1复检 zt=2导入数据 zt=3修改职业数据 /// [HttpGet] public ActionResult OccupationRegisteResult(string tjzt, string importId, string tm, string fjid) { ViewBag.tjzt = tjzt ?? "0"; var al = new List { new Marry("已婚", "是"), new Marry("未婚", "否"), new Marry("离异", "离异") }; var tzzylb = new List { "电工作业", "金属焊接,切割作业", "起重机械", "企业内机动车驾驶", "锅炉作业", "锅炉作业", "登高架设作业", "制冷作业", "电梯", "天车", "航吊", "其他" }; ViewData["tzzylb"] = new SelectList(tzzylb); ViewData["hf"] = new SelectList(al, "value", "title"); ViewData["tjfn"] = GetSelectListtjfn(null); ViewData["tjlx"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); ViewData["zgzt"] = new SelectList(new JobsStateMaintainBll().GetAllList("", "是"), "id", "jobs_state"); ViewData["tytjfn"] = new SelectList(new OccupationExamSchemeMaintainBll().GetListByType("通用"), "id", "scheme_name"); //导入数据填充 if (tjzt == "2") { ViewBag.tjzt = "2"; OccupationDataImportObjectBll bll1 = new OccupationDataImportObjectBll(); OccupationDataImportObjectModel model = bll1.GetModel(importId); RegisterZydjViewModel vm = new RegisterZydjViewModel { card_number = model.identity_card, person_name = model.name, sex = model.sex, nation = model.nation, marry_status = model.is_merry, department = model.dept, work_category = model.work_type, util_name = model.enterprise, enterprise_info_maintain_id = model.enterprise_id.ToString(), exam_type = model.exam_type, exam_type_id = model.exam_type_maintain_id, job_status_id = "2", status = "在岗期间", hazards = model.hazard_names, hazard_ids = model.hazard_ids, hazard_type_ids = model.hazards_type_codes, hazard_type_names = model.hazards_type, physical_way = model.physical_way, work_years = model.work_age_year, work_months = model.work_age_month, touch_years = model.factor_age_year, touch_months = Convert.ToDouble(model.factor_age_month).ToString(CultureInfo.InvariantCulture), tjxm = model.check_item_ids, importid = model.id.ToString(), job_num = model.job_num, phone = model.phone }; if (vm.card_number.Length == 18) { vm.birth = vm.card_number.Substring(6, 4) + "-" + vm.card_number.Substring(10, 2) + "-" + vm.card_number.Substring(12, 2); vm.person_age = Convert.ToInt32(DateTime.Now.Subtract(Convert.ToDateTime(vm.birth)).TotalDays / 365).ToString(CultureInfo.InvariantCulture); } if (vm.card_number.Length == 15) { vm.birth = "19" + vm.card_number.Substring(6, 2) + "-" + vm.card_number.Substring(8, 2) + "-" + vm.card_number.Substring(10, 2); vm.person_age = Convert.ToInt32(DateTime.Now.Subtract(Convert.ToDateTime(vm.birth)).TotalDays / 365).ToString(CultureInfo.InvariantCulture); } vm.txm = false; vm.zyd = false; return View(vm); } //职业数据修改 if (tjzt == "3") { ProfessionalExamRegisterBll bll1 = new ProfessionalExamRegisterBll(); //zyk 20230607 修改为下一行,应该为修改 //var dtomodel = bll1.GetfjModel(tm); var dtomodel = bll1.GetModel(tm); AutoMapper.Mapper.Initialize(x => x.CreateMap()); var vm = AutoMapper.Mapper.Map(dtomodel); ViewBag.src = "data:image/jpeg;base64," + vm.phone_path; ViewBag.tjzt = tjzt; vm.tjxm = dtomodel.check_item_ids; vm.txm = false; vm.zyd = false; ViewData["tzzylb"] = new SelectList(tzzylb, vm.unnomel_type); ViewData["hf"] = new SelectList(al, "value", "title", vm.marry_status); ViewData["tjfn"] = GetSelectListtjfn(null); ViewData["tjlx"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type", vm.exam_type_id); ViewData["zgzt"] = new SelectList(new JobsStateMaintainBll().GetAllList("", "是"), "id", "jobs_state", vm.job_status_id); ViewData["tytjfn"] = new SelectList(new OccupationExamSchemeMaintainBll().GetListByType("通用"), "id", "scheme_name", vm.common_scheme_id); vm.tjzt = tjzt; //2023-10-27 xulu 防止修改时企业方案id清空 vm.physical_category = vm.medical_scheme_maintain_id.ToString(); return View(vm); } //复检数据填充 if (tjzt == "1") { ProfessionalExamRegisterBll bll1 = new ProfessionalExamRegisterBll(); var fjm = bll1.getModelByid(fjid); var dtomodel = fjm; AutoMapper.Mapper.Initialize(x => x.CreateMap()); var vm = AutoMapper.Mapper.Map(dtomodel); vm.txm = false; vm.zyd = false; vm.tjxm = fjm.check_item_ids; ViewBag.src = "data:image/jpeg;base64," + vm.phone_path; ViewBag.tjzt = tjzt; vm.tjxm = dtomodel.check_item_ids; ViewData["tzzylb"] = new SelectList(tzzylb, vm.unnomel_type); ViewData["hf"] = new SelectList(al, "value", "title", vm.marry_status); ViewData["tjfn"] = GetSelectListtjfn(null); ViewData["tjlx"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type", vm.exam_type_id); ViewData["zgzt"] = new SelectList(new JobsStateMaintainBll().GetAllList("", "是"), "id", "jobs_state", vm.job_status_id); ViewData["tytjfn"] = new SelectList(new OccupationExamSchemeMaintainBll().GetListByType("通用"), "id", "scheme_name", vm.common_scheme_id); vm.tjzt = tjzt; return View(vm); } return View(); } /// /// 婚否Class /// public class Marry { public Marry(string a, string b) { Title = a; Value = b; } public string Title { get; set; } public string Value { get; set; } } /// /// 职业体检登记提交 /// /// /// [HttpPost] public ActionResult OccupationRegisteResult(RegisterZydjViewModel vm) { try { //暂时注释 //ModelState.Remove("Id"); //if (!ModelState.IsValid) //{ // //2:登记后修改 1:复检 0:正常 // //ViewBag.tjzt = "0"; // var al = new List { "已婚", "未婚", "离异" }; // ViewData["hf"] = new SelectList(al); // ViewData["tjfn"] = GetSelectListtjfn(null); // ViewData["tjlx"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type"); // ViewData["zgzt"] = new SelectList(new JobsStateMaintainBll().GetAllList("", "是"), "jobs_state", "jobs_state"); // ViewData["tytjfn"] = new SelectList(new OccupationExamSchemeMaintainBll().GetListByType("通用"), "id", "scheme_name"); // var tzzylb = new List { "电工作业", "金属焊接,切割作业", "起重机械", "企业内机动车驾驶", "锅炉作业", "锅炉作业", "登高架设作业", "制冷作业", "电梯", "天车", "航吊", "其他" }; // ViewData["tzzylb"] = new SelectList(tzzylb); // return View(); //} //vm.phone_path = vm.phone_path.Replace("data:image/jpeg;base64,", ""); vm.phone_path = ZWL.Common.ImgUtil.ConvertImg(vm.phone_path); //vm.phone_path = @"C:\Users\admin\Desktop\测试.jpg"; //判断是否存在已经未完成的职业登记 如果存在的话给出提示 if (!new ProfessionalExamRegisterBll().IsHaveIncompleteCheck(vm.card_number)) { return Json(new { State = 0, Message = "存在进行中的体检记录,不可重复登记!" }); } var erpUser = Session["loginUser"] as Models.ERPUser; if (erpUser != null) vm.register_person = erpUser.TrueName; AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj = AutoMapper.Mapper.Map(vm); //2023-11-22 xulu 根据方案id获取打印项目ids并赋值 string iSchemeId=""; if(vm.medical_scheme_maintain_id !=-1) { iSchemeId = vm.medical_scheme_maintain_id.ToString(); } else if(!string.IsNullOrEmpty(vm.common_scheme_id)) { iSchemeId = vm.common_scheme_id; } if(iSchemeId!="" && iSchemeId!="0") { dtocydj.print_item_ids = new OccupationExamSchemeMaintainDal().GetModel(iSchemeId).print_item_ids; } //dtocydj.phone_path = img64.Replace("data:image/jpeg;base64,", ""); ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); List tjxmal = new List(); if (!string.IsNullOrEmpty(vm.tjxm)) { tjxmal = new ExamProjectMaintainBll().GetAllListByprojectids(vm.tjxm.TrimEnd(',')); } ProfessionalChargeProjectDal dal = new ProfessionalChargeProjectDal(); string f = ""; switch (vm.tjzt) { case "1"://复检登记 ZWL.Common.SaveLog.Logs("C:\\AppExe\\职业\\复检", "复检登记", " 姓名:" + vm.person_name + " 身份证号:" + vm.card_number); List fjsfxmal = new List(); ChargeProjectMaintainModel fjsfxmmodel = new ChargeProjectMaintainModel();//复检收费项目model fjsfxmmodel.charge_project_name = "复查费"; fjsfxmmodel.fee = "50"; fjsfxmal.Add(fjsfxmmodel); //遍历体检项目ID存入登记表 string tjxmids = ""; foreach (var examProjectMaintainModel in tjxmal) { tjxmids += examProjectMaintainModel.id + ","; } dtocydj.check_item_ids = tjxmids; f = bll.Fjdj(dtocydj, fjsfxmal, "职业"); break; case "2"://导入数据 List sfxmal1 = new ChargeProjectMaintainBll().GetAllListBysfxmId(vm.sfxm.TrimEnd(',')); dtocydj.hazard_ids = new HarmfulFactorsMaintainBll().GetIdByNames(dtocydj.hazards); dtocydj.hazards_alias = dtocydj.hazards; dtocydj.hazards_text = dtocydj.hazards_text; f = bll.Zydj(dtocydj, sfxmal1, tjxmal); //如果是导入数据填充则修改状态 OccupationDataImportObjectBll bll1 = new OccupationDataImportObjectBll(); bll1.Updateprocess(vm.importid); break; case "3"://登记后修改 AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj1 = AutoMapper.Mapper.Map(vm); //2023-10-27 xulu 防止企业方案id清空 dtocydj1.medical_scheme_maintain_id = Convert.ToInt32(dtocydj1.physical_category); bll.Update(dtocydj1); f = dtocydj1.physical_num; break; case "0"://职业登记 ZWL.Common.SaveLog.Logs("C:\\AppExe\\职业\\正常", "正常登记", " 姓名:" + vm.person_name + " 身份证号:" + vm.card_number); List sfxmal = new List(); if (vm.sfxm != null) { sfxmal = new ChargeProjectMaintainBll().GetAllListBysfxmId(vm.sfxm.TrimEnd(',')); } f = bll.Zydj(dtocydj, sfxmal, tjxmal); break; } //3:登记后修改 2:导入数据 1:复检 0:正常 var txm = vm.txm ? "1" : "0"; var zyd = vm.zyd ? "1" : "0"; return Json(new { State = 1, Message = "操作成功!", dy = "0", txm = "0", zyd = "0", tm = f }); } catch (Exception e) { ZWL.Common.SaveLog.Logs("C:\\AppExe", "职业登记", "catch:" + e); throw e; } } [HttpPost] public ActionResult OccupationRegisteResult111(RegisterZydjViewModel vm, string img64) { var erpUser = Session["loginUser"] as Models.ERPUser; if (erpUser != null) vm.register_person = erpUser.TrueName; AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj = AutoMapper.Mapper.Map(vm); //dtocydj.phone_path = img64.Replace("data:image/jpeg;base64,", ""); dtocydj.phone_path = ZWL.Common.ImgUtil.ConvertImg(img64); ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); List tjxmal = new List(); if (!string.IsNullOrEmpty(vm.tjxm)) { tjxmal = new ExamProjectMaintainBll().GetAllListByprojectids(vm.tjxm.TrimEnd(',')); } ProfessionalChargeProjectDal dal = new ProfessionalChargeProjectDal(); string f = ""; switch (vm.tjzt) { case "1": List fjsfxmal = new List(); ChargeProjectMaintainModel fjsfxmmodel = new ChargeProjectMaintainModel(); fjsfxmmodel.charge_project_name = "复查费"; fjsfxmmodel.fee = "50"; fjsfxmal.Add(fjsfxmmodel); //遍历体检项目ID存入登记表 string tjxmids = ""; foreach (var examProjectMaintainModel in tjxmal) { tjxmids += examProjectMaintainModel.id + ","; } dtocydj.check_item_ids = tjxmids; f = bll.Fjdj(dtocydj, fjsfxmal, "职业"); break; case "2": List sfxmal1 = new ChargeProjectMaintainBll().GetAllListBysfxmId(vm.sfxm.TrimEnd(',')); dtocydj.hazard_ids = new HarmfulFactorsMaintainBll().GetIdByNames(dtocydj.hazards); dtocydj.hazards_alias = dtocydj.hazards; f = bll.Zydj(dtocydj, sfxmal1, tjxmal); //如果是导入数据填充则修改状态 OccupationDataImportObjectBll bll1 = new OccupationDataImportObjectBll(); bll1.Updateprocess(vm.importid); break; case "3": AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj1 = AutoMapper.Mapper.Map(vm); bll.Update(dtocydj1); f = dtocydj1.physical_num; break; case "0": ZWL.Common.SaveLog.Logs("C:\\AppExe\\职业\\正常", "正常登记", "姓名:" + vm.person_name + " 身份证号:" + vm.card_number); List sfxmal = new ChargeProjectMaintainBll().GetAllListBysfxmId(vm.sfxm.TrimEnd(',')); f = bll.Zydj(dtocydj, sfxmal, tjxmal); break; } //3:登记后修改 2:导入数据 1:复检 0:正常 var txm = vm.txm ? "1" : "0"; var zyd = vm.zyd ? "1" : "0"; return Json(new { State = 1, Message = "操作成功!", dy = "0", txm = "0", zyd = "0", tm = f }); } /// /// 企业体检方案根据体检方案ID查询该方案下的所有体检项目 /// /// /// public string GetTjxmBytjfn(string tjfnid) { if (tjfnid == "") { return ""; } OccupationExamSchemeMaintainBll bll = new OccupationExamSchemeMaintainBll(); string tjxmids = bll.GetModel(tjfnid).check_item_ids; ExamProjectMaintainBll tjxmbll = new ExamProjectMaintainBll(); string modelslistjson = JsonConvert.SerializeObject(tjxmbll.GetTjfnmxByIDs(tjxmids.TrimStart(',').TrimEnd(','))); return "{\"Rows\":" + modelslistjson + "}"; } /// /// 企业体检方案根据体检方案ID查询体检项目下的收费项目 /// /// /// public string GetSfxmBytjfn(string tjfnid) { if (tjfnid == "") { return ""; } OccupationExamSchemeMaintainBll bll = new OccupationExamSchemeMaintainBll(); string tjxmids = bll.GetModel(tjfnid).check_item_ids; ChargeProjectMaintainBll bll1 = new ChargeProjectMaintainBll(); string modelslistjson = JsonConvert.SerializeObject(bll1.GetAllListBytjxm(tjxmids)); return "{\"Rows\":" + modelslistjson + "}"; } /// /// 根据企业ID查询企业体检方案 /// /// /// public string GetTjfnBySiteId(string siteid) { OccupationExamSchemeMaintainBll bll = new OccupationExamSchemeMaintainBll(); return JsonConvert.SerializeObject(bll.GetSiteList(siteid)); } /// /// 查询体检方案根据ID /// /// /// public string GetTjfnModel(string tjfnId) { if (tjfnId == "") { return "{}"; } OccupationExamSchemeMaintainBll bll = new OccupationExamSchemeMaintainBll(); return JsonConvert.SerializeObject(bll.GetModel(tjfnId)); } /// /// 根据体检项目查询该体检项目的检查科室 /// /// /// [AllowAnonymous] public string GetTjxmRoom(string ids) { ExamProjectMaintainBll bll = new ExamProjectMaintainBll(); List al = bll.GetRooms(ids); return JsonConvert.SerializeObject(al); } /// /// 临时库页面 /// /// public ActionResult LskryResult() { return View(); } public string GetLskryList(string name, string sitename, string idno) { OccupationDataImportObjectBll bll = new OccupationDataImportObjectBll(); string modelslistjson = JsonConvert.SerializeObject(bll.GetList(name, sitename, idno)); return "{\"Rows\":" + modelslistjson + "}"; } public string getLsrkry(string idno) { OccupationDataImportObjectBll bll = new OccupationDataImportObjectBll(); return Newtonsoft.Json.JsonConvert.SerializeObject(bll.getLsrkry(idno)); } /// /// 根据体检项目ID查询体检项目列表 /// /// /// public string GettjxmByIDs(string ids) { ExamProjectMaintainBll bll = new ExamProjectMaintainBll(); string modelslistjson = JsonConvert.SerializeObject(bll.GetTjfnmxByIDs(ids)); return "{\"Rows\":" + modelslistjson + "}"; } /// /// 根据体检项目ID查询体检项目列表 /// /// /// [AllowAnonymous] public string GettjxmByIDsReport(string ids) { ExamProjectMaintainBll bll = new ExamProjectMaintainBll(); string modelslistjson = JsonConvert.SerializeObject(bll.GetTjfnmxByIDs(ids)); return modelslistjson; } /// /// 根据体检项目查询收费项目列表 /// /// public string Getsfxm(string ids) { ChargeProjectMaintainBll bll = new ChargeProjectMaintainBll(); string modelslistjson = JsonConvert.SerializeObject(bll.GetAllListBytjxm(ids)); return "{\"Rows\":" + modelslistjson + "}"; } #region 职业复检登记人员信息列表 public ActionResult ZyFjResult() { ViewData["ssqy"] = new SelectList(new AreaInfoMaintainBll().GetAllList(), "id", "area_name"); return View(); } public string GetZyFjList(string sitename, string tm, string name, string starttime, string endtime, string ssqy) { ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); string modelslistjson = JsonConvert.SerializeObject(bll.GetZyfjList(sitename, tm, name, starttime, endtime, ssqy)); return "{\"Rows\":" + modelslistjson + "}"; } #endregion #endregion #region 初始化 SelectList /// /// 初始化 SelectList(体检方案) /// /// /// 默认选中 /// public SelectList GetSelectListtjfn(IEnumerable list, string selected = "请选择") { var items = new List { new SelectListItem { Text = "----请选择----", Value = "-1" } }; if (list == null) { return new SelectList(items, "Value", "Text"); } items.AddRange(list.Select(item => new SelectListItem { Text = item.scheme_name, Value = item.id.ToString() })); var selectList = new SelectList(items, "Value", "Text", selected); return selectList; } #endregion /// /// 重复打印指引单 /// /// /// public ActionResult repeatPrint(string physical_num) { bool flag = new ProfessionalExamRegisterBll().repeatPrint(physical_num); return Json(new { State = flag }); } /// /// 体检进度页面数据绑定 /// 2023-10-27 xulu /// /// public ActionResult ProjectProcess() { ViewData["tytjfn"] = new SelectList(new OccupationExamSchemeMaintainBll().GetListByType("通用"), "id", "scheme_name"); ViewData["tjxz"] = new SelectList(new ExamGroupMaintainBll().GetAllListTrueOrderByCount(), "id", "team_name"); return View(); } /// /// 体检项目进度页面数据绑定 /// 2023-10-27 xulu /// /// /// /// public ActionResult ExamProcess(string physical_num, string name) { ViewBag.physical_num = physical_num; ViewBag.name = name; return View(); } /// /// 登记基本信息展示 /// 2023-11-2 xulu /// /// /// public ActionResult RegisteInfo(string tm) { var al = new List { new Marry("已婚", "是"), new Marry("未婚", "否"), new Marry("离异", "离异") }; ProfessionalExamRegisterBll bll1 = new ProfessionalExamRegisterBll(); var dtomodel = bll1.GetModel(tm); AutoMapper.Mapper.Initialize(x => x.CreateMap()); var vm = AutoMapper.Mapper.Map(dtomodel); ViewBag.src = "data:image/jpeg;base64," + vm.phone_path; //ViewBag.tjzt = tjzt; /* vm.tjxm = dtomodel.check_item_ids; vm.txm = false; vm.zyd = false;*/ //ViewData["tzzylb"] = new SelectList(tzzylb, vm.unnomel_type); ViewData["hf"] = new SelectList(al, "value", "title", vm.marry_status); ViewData["tjfn"] = GetSelectListtjfn(null); ViewData["tjlx"] = new SelectList(new checktypemaintainBll().GetListBybelong("职业"), "id", "check_type", vm.exam_type_id); ViewData["zgzt"] = new SelectList(new JobsStateMaintainBll().GetAllList("", "是"), "id", "jobs_state", vm.job_status_id); ViewData["tytjfn"] = new SelectList(new OccupationExamSchemeMaintainBll().GetListByType("通用"), "id", "scheme_name", vm.common_scheme_id); //vm.tjzt = tjzt; //2023-10-27 xulu 防止修改时企业方案id清空 vm.physical_category = vm.medical_scheme_maintain_id.ToString(); return View(vm); } /// /// 修改登记信息 /// 2023-11-3 xulu /// /// /// [HttpPost] public ActionResult RegisteInfo(RegisterZydjViewModel vm) { vm.phone_path = ZWL.Common.ImgUtil.ConvertImg(vm.phone_path); ProfessionalExamRegisterBll bll = new ProfessionalExamRegisterBll(); AutoMapper.Mapper.Initialize(x => x.CreateMap()); var dtocydj1 = AutoMapper.Mapper.Map(vm); //2023-10-27 xulu 防止企业方案id清空 dtocydj1.medical_scheme_maintain_id = Convert.ToInt32(dtocydj1.physical_category); //2023-12-09 xulu 添加在岗状态改变 JobsStateMaintainModel job = new JobsStateMaintainBll().GetAllList(dtocydj1.job_status_id.ToString(), "").FirstOrDefault(); if(job!=null) { dtocydj1.status = job.jobs_state; } bll.Update3(dtocydj1); return Json(new { State = 1, Message = "操作成功!" }); } /// /// 体检项目页面数据绑定 /// 2023-10-27 xulu /// /// /// /// /// /// public ActionResult ExamItems(string ids, string person_id, string name, string physical_num, string sex) { ViewBag.ids = ids; ViewBag.person_id = person_id; ViewBag.physical_num = physical_num; ViewBag.name = name; //2023-11-15 xulu 增加性别参数 ViewBag.sex = sex; return View(); } /// /// 根据physical_num获取体检小组检查进度 /// /// /// public JsonResult getProcessList(string physical_num) { List ctList = new examination_processDal().getProcessList(physical_num); foreach (ExaminationProcessModel model in ctList) { if (model.group_name == "采血") { model.commit_doctor = model.collect_doctor; } } return Json(new { Rows = ctList }); } /// /// 更新导入的体检项目 /// 2023-10-30 xulu /// /// /// /// public JsonResult updateImportItems(string ids, string id) { bool flag = new OccupationDataImportObjectDal().updateItems(id, ids); return Json(new { code = flag }); } /// /// 更新登记后的体检项目 /// 2023-10-30 xulu /// /// /// /// /// /// /// public JsonResult updateRegItems(string ids, string id, List del, List add, string physical_num) { try { bool flag = new ProfessionalExamRegisterDal().UpdateRegItems(ids, id, del, add, physical_num); return Json(new { code = flag }); } catch { return Json(new { code = false }); } } /// /// 批量更新项目 /// 2023-11-28 xulu /// /// /// /// /// public JsonResult batchUpdateItems(List persons, List items, string type) { try { bool flag=true; string physical_nums = ""; for (int i = 0; i < persons.Count; i++) { List del=new List(); List add=new List(); //判断此人是否包含items string check_item_ids = persons[i].check_item_ids; string[] arr = check_item_ids.Split(','); string add_ids = ""; physical_nums += persons[i].physical_num + ","; //增加项目 if (type=="add") { for (int j = 0; j < items.Count; j++) { bool hasTarget = arr.Any((id) => { return items[j].id.Equals(id, StringComparison.OrdinalIgnoreCase); }); if (!hasTarget) { add_ids += items[j].id + ","; add.Add(items[j]); } } persons[i].check_item_ids += add_ids; flag = new ProfessionalExamRegisterDal().UpdateRegItems(persons[i].check_item_ids, persons[i].id, null, add, persons[i].physical_num); } //删除项目 else if(type=="delete") { for (int j = 0; j < items.Count; j++) { bool hasTarget = arr.Any((id) => { return items[j].id.Equals(id, StringComparison.OrdinalIgnoreCase); }); if (hasTarget) { arr = arr.Where(val => val != items[j].id).ToArray(); del.Add(items[j]); } } arr = arr.Where(val => val != "").ToArray(); persons[i].check_item_ids = String.Join(",", arr)+","; flag=new ProfessionalExamRegisterDal().UpdateRegItems(persons[i].check_item_ids, persons[i].id, del, null, persons[i].physical_num); } } //撤回项目结果 if (type == "withdraw") { physical_nums= physical_nums.Substring(0, physical_nums.Length-1); string group_ids = ""; for(int i=0;i< items.Count;i++) { group_ids += items[i].exam_group_maintain_id+","; } group_ids = group_ids.Substring(0, group_ids.Length-1); string[] arr_physical_nums = physical_nums.Split(','); string[] arr_group_ids = group_ids.Split(','); flag = new ProfessionalExamRegisterDal().WithdrawResult(arr_physical_nums, arr_group_ids); } return Json(new { code = flag }); } catch { return Json(new { code = false }); } } //已经登记未体检 添加删除功能 [HttpPost] public JsonResult DeleteItem(string physical_num, string card_number, string Adate, string physical_type) { ProfessionalExamRegisterBll professionalExamRegisterBll = new ProfessionalExamRegisterBll(); bool flag = professionalExamRegisterBll.DeleteItem(physical_num, card_number, Adate, physical_type); return Json(new { code = flag }); } } }