public ActionResult TaoSoVanBanTheoNam(int year, string code) { AssignUserInfo(); DM_DANHMUC_DATABusiness = Get<DM_DANHMUC_DATABusiness>(); CCTC_THANHPHANBusiness = Get<CCTC_THANHPHANBusiness>(); DM_NHOMDANHMUCBusiness = Get<DM_NHOMDANHMUCBusiness>(); var Nhom = DM_NHOMDANHMUCBusiness.repository.All().Where(x => x.GROUP_CODE == code).FirstOrDefault(); if (Nhom != null) { string TenSo = Nhom.GROUP_NAME + " " + year.ToString(); var LstTypeLabel = CCTC_THANHPHANBusiness.repository.All().Where(x => x.TYPE == 10).ToList(); foreach (var item in LstTypeLabel) { var checkExist = DM_DANHMUC_DATABusiness.repository.All().Where(x => x.DEPTID == item.ID && x.DATA == year && x.TEXT == TenSo).FirstOrDefault(); if (checkExist == null) { DM_DANHMUC_DATA model = new DM_DANHMUC_DATA(); model.DM_NHOM_ID = Nhom.ID; model.TEXT = TenSo; model.DATA = year; model.DEPTID = item.ID; DM_DANHMUC_DATABusiness.Save(model); } } } return Redirect("/"); }
public JsonResult Delete(long id) { var result = new JsonResultBO(true); DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); DM_DANHMUC_DATABusiness.repository.Delete(id); DM_DANHMUC_DATABusiness.Save(); return(Json(result)); }
public JsonResult Create(FormCollection collection, string[] FOLDER_ID, string[] filename, IEnumerable <HttpPostedFileBase> filebase) { DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); var result = new JsonResultBO(true); try { var myobj = new DM_DANHMUC_DATA(); myobj.DM_NHOM_ID = collection["DM_NHOM_ID"].ToIntOrZero(); myobj.DATA = collection["DATA"].ToIntOrZero(); myobj.TEXT = collection["TEXT"].ToString(); myobj.CODE = collection["CODE"]; myobj.COLOR = collection["COLOR"].ToString(); myobj.GHICHU = collection["GHICHU"].ToString(); myobj.DEPTID = collection["DEPTID"].ToIntOrNULL(); DM_DANHMUC_DATABusiness.Save(myobj); if (filebase != null) { if (filename == null) { filename = new string[filebase.Count()]; } UploadFileTool tool = new UploadFileTool(); List <string> FileName = new List <string>(); List <string> FilePath = new List <string>(); List <long> FileId = new List <long>(); tool.UploadCustomFileAndOutPath(filebase, false, MstDivisionExtension, UPLOADFOLDER, int.Parse(MstDivisionSize), FOLDER_ID, filename, myobj.ID, out FilePath, out FileName, out FileName, out FileId, LOAITAILIEU.MST_DIVISION, "Danh mục dùng chung"); if (FilePath.Any()) { myobj.ICON = FilePath[0]; DM_DANHMUC_DATABusiness.Save(myobj); } } } catch (Exception ex) { result.Status = false; result.Message = "Không thêm mới được"; } return(Json(result)); }
public JsonResult Edit(FormCollection collection, string[] FOLDER_ID, string[] filename, IEnumerable <HttpPostedFileBase> filebase) { DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); var result = new JsonResultBO(true); AssignUserInfo(); try { var id = collection["ID"].ToIntOrZero(); var myobj = DM_DANHMUC_DATABusiness.Find(id); myobj.DATA = collection["DATA"].ToIntOrZero(); myobj.TEXT = collection["TEXT"].ToString(); myobj.CODE = collection["CODE"]; myobj.GHICHU = collection["GHICHU"].ToString(); myobj.COLOR = collection["COLOR"].ToString(); myobj.DEPTID = collection["DEPTID"].ToIntOrNULL(); if (filebase != null && filebase.FirstOrDefault() != null) { FileUltilities file = new FileUltilities(); TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); List <TAILIEUDINHKEM> ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(myobj.ID, LOAITAILIEU.MST_DIVISION); foreach (var item in ListTaiLieu) { file.RemoveFile(UPLOADFOLDER + "/" + item.DUONGDAN_FILE); TAILIEUDINHKEMBusiness.repository.Delete(item.TAILIEU_ID); } TAILIEUDINHKEMBusiness.Save(); if (filename == null) { filename = new string[filebase.Count()]; } UploadFileTool tool = new UploadFileTool(); List <string> FileName = new List <string>(); List <string> FilePath = new List <string>(); List <long> FileId = new List <long>(); tool.UploadCustomFileAndOutPath(filebase, false, MstDivisionExtension, UPLOADFOLDER, int.Parse(MstDivisionSize), FOLDER_ID, filename, myobj.ID, out FilePath, out FileName, out FileName, out FileId, LOAITAILIEU.MST_DIVISION, "Danh mục dùng chung"); if (FilePath.Any()) { myobj.ICON = FilePath[0]; } } DM_DANHMUC_DATABusiness.Save(myobj); } catch (Exception ex) { result.Status = false; result.Message = "Không cập nhật được"; } return(Json(result)); }
public JsonResult deleteIcon(int id) { TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); var tailieu = TAILIEUDINHKEMBusiness.repository.All() .Where(x => x.ITEM_ID == id && x.LOAI_TAILIEU == LOAITAILIEU.MST_DIVISION).FirstOrDefault(); if (tailieu != null) { TAILIEUDINHKEMBusiness.repository.Delete(tailieu.TAILIEU_ID); } DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); var dataObj = DM_DANHMUC_DATABusiness.Find(id); if (dataObj != null) { dataObj.ICON = null; DM_DANHMUC_DATABusiness.Save(dataObj); } var result = new JsonResultBO(true); return(Json(result)); }
public JsonResult SaveDangKyXe(FormCollection collection) { qlDangKyXeBusiness = Get <QL_DANGKY_XEBusiness>(); dmNhomDanhMucBusiness = Get <DM_NHOMDANHMUCBusiness>(); dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>(); JsonResultBO result = new JsonResultBO(true); try { AssignUserInfo(); long id = collection["ID"].ToLongOrZero(); QL_DANGKY_XE entity = new QL_DANGKY_XE(); entity.NGAY_XUATPHAT = collection["NGAY_XUATPHAT"].ToDateTime(); //kiểm tra ngày xuất phát <= ngày hiện tại if (entity.ID == 0 && entity.NGAY_XUATPHAT.HasValue && entity.NGAY_XUATPHAT.Value < DateTime.Now.ToVietnameseDateFormat().ToStartDay()) { result.Status = false; result.Message = "Thời gian xuất phát không thể nhỏ hơn ngày hiện tại"; return(Json(result)); } entity.PHONGBAN_ID = currentUser.DM_PHONGBAN_ID; entity.SONGUOI = collection["SONGUOI"].ToIntOrZero(); entity.MUCDICH = collection["MUCDICH"].Trim(); entity.NOIDUNG = collection["NOIDUNG"].Trim(); entity.GIO_XUATPHAT = collection["GIO_XUATPHAT"].ToIntOrZero(); entity.PHUT_XUATPHAT = collection["PHUT_XUATPHAT"].ToIntOrZero(); entity.DIEM_XUATPHAT = collection["DIEM_XUATPHAT"].Trim(); entity.DIEM_KETTHUC = collection["DIEM_KETTHUC"].Trim(); entity.GHICHU = collection["GHICHU"].Trim(); entity.TRANGTHAI = TRANGTHAI_DANGKY_XE_CONSTANT.MOITAO_ID; entity.LICHCONGTAC_ID = collection["LICHCONGTAC_ID"].ToIntOrNULL(); entity.CCTC_THANHPHAN_ID = currentUser.DeptParentID.GetValueOrDefault(); //if (!string.IsNullOrEmpty(collection["TEN_BENHNHAN"])) //{ // entity.TEN_BENHNHAN = collection["TEN_BENHNHAN"].Trim(); //} if (!string.IsNullOrEmpty(collection["CANBO_ID"])) { entity.CANBO_ID = collection["CANBO_ID"].ToIntOrNULL(); } //if (!string.IsNullOrEmpty(collection["IS_BHYT"])) //{ // entity.IS_BHYT = collection["IS_BHYT"].ToIntOrNULL() > 0; //} //if (!string.IsNullOrEmpty(collection["LOAI_CHUYEN_ID"])) //{ // entity.LOAI_CHUYEN_ID = collection["LOAI_CHUYEN_ID"].ToIntOrZero(); //} entity.DIEM_XUATPHAT = collection["DIEM_XUATPHAT"].Trim(); entity.DIEM_KETTHUC = collection["DIEM_KETTHUC"].Trim(); DM_DANHMUC_DATA dataStartPointItem = dmDanhMucDataBusiness.GetItemByCodeAndText(DMLOAI_CONSTANT.DIEM_XUATPHAT, entity.DIEM_XUATPHAT); if (dataStartPointItem == null) { DM_NHOMDANHMUC groupCategory = dmNhomDanhMucBusiness.GetByCode(DMLOAI_CONSTANT.DIEM_XUATPHAT) ?? new DM_NHOMDANHMUC(); DM_DANHMUC_DATA startPointEntity = new DM_DANHMUC_DATA(); startPointEntity.DM_NHOM_ID = groupCategory.ID; startPointEntity.TEXT = entity.DIEM_XUATPHAT; dmDanhMucDataBusiness.Save(startPointEntity); } DM_DANHMUC_DATA dataDestinationItem = dmDanhMucDataBusiness.GetItemByCodeAndText(DMLOAI_CONSTANT.DIEM_DEN, entity.DIEM_KETTHUC); if (dataDestinationItem == null) { DM_NHOMDANHMUC groupCategory = dmNhomDanhMucBusiness.GetByCode(DMLOAI_CONSTANT.DIEM_DEN) ?? new DM_NHOMDANHMUC(); DM_DANHMUC_DATA destinationEntity = new DM_DANHMUC_DATA(); destinationEntity.DM_NHOM_ID = groupCategory.ID; destinationEntity.TEXT = entity.DIEM_KETTHUC; dmDanhMucDataBusiness.Save(destinationEntity); } entity.NGAYSUA = DateTime.Now; entity.NGAYTAO = DateTime.Now; entity.NGUOITAO = currentUser.ID; entity.NGUOISUA = currentUser.ID; if (id > 0) { QL_DANGKY_XE dbEntity = qlDangKyXeBusiness.Find(id); if (dbEntity != null) { dbEntity.PHONGBAN_ID = entity.PHONGBAN_ID; dbEntity.SONGUOI = entity.SONGUOI; dbEntity.MUCDICH = entity.MUCDICH; dbEntity.NOIDUNG = entity.NOIDUNG; dbEntity.NGAY_XUATPHAT = entity.NGAY_XUATPHAT; dbEntity.GIO_XUATPHAT = entity.GIO_XUATPHAT; dbEntity.PHUT_XUATPHAT = entity.PHUT_XUATPHAT; dbEntity.DIEM_XUATPHAT = entity.DIEM_XUATPHAT; dbEntity.DIEM_KETTHUC = entity.DIEM_KETTHUC; dbEntity.CCTC_THANHPHAN_ID = entity.CCTC_THANHPHAN_ID; dbEntity.GHICHU = entity.GHICHU; dbEntity.NGAYSUA = DateTime.Now; dbEntity.NGUOISUA = currentUser.ID; qlDangKyXeBusiness.Save(dbEntity); result.Message = "Cập nhật đăng ký xe thành công"; } } else { qlDangKyXeBusiness.Save(entity); result.Message = "Thêm mới đăng ký xe thành công"; } } catch (Exception ex) { result.Status = false; result.Message = ex.ToString(); } return(Json(result)); }
/// <summary> /// @author:duynn /// @description: gửi đơn vị nhận bên ngoài /// @since: 10/06/2019 /// </summary> /// <param name="entityVanBanDi"></param> /// <param name="sms"></param> /// <returns></returns> public bool SaveVanBanPhatHanhToDonVi(HSCV_VANBANDI entityVanBanDi, SMSDAL.SendSMSDAL sms) { bool result = true; try { DM_NHOMDANHMUC entityNhomDanhMuc = DM_NHOMDANHMUCBusiness.repository.All() .FirstOrDefault(x => x.GROUP_CODE == DMLOAI_CONSTANT.SOVANBANDEN); DM_NGUOIDUNG entityNguoiKy = DM_NGUOIDUNGBusiness.Find(entityVanBanDi.NGUOIKY_ID); List <TAILIEUDINHKEM> groupFiles = TAILIEUDINHKEMBusiness.GetNewestData(entityVanBanDi.ID, LOAITAILIEU.VANBAN); List <int> idsDonViNhan = new List <int>(); if (!string.IsNullOrEmpty(entityVanBanDi.DONVINHAN_INTERNAL_ID)) { var idsDonViDaNhan = entityVanBanDi.DONVINHAN_INTERNAL_ID.ToListInt(','); idsDonViNhan.AddRange(idsDonViDaNhan); entityVanBanDi.DONVINHAN_INTERNAL_ID = string.Join(",", idsDonViNhan.ToArray()); } List <CCTC_THANHPHAN> groupDonViNhan = CCTC_THANHPHANBusiness.repository.AllNoTracking .Where(x => idsDonViNhan.Contains(x.ID)).ToList(); List <LOGSMS> groupLogSMS = new List <LOGSMS>(); List <TAILIEUDINHKEM> groupForwardFiles = new List <TAILIEUDINHKEM>(); List <WF_ITEM_USER_PROCESS> groupItemUserProcess = new List <WF_ITEM_USER_PROCESS>(); foreach (var dept in groupDonViNhan) { WF_STATE firstState = null; //kiểm tra có phải là gửi nội bộ hay không? bool isSendInternal = false; //- trường hợp gửi cho các ban ngành cấp tỉnh và các huyện xa -> thành văn bản đến của các đơnvị nhận được if (dept.TYPE == DEPTTYLELABEL.ToIntOrZero()) { //- trường hợp này là văn bản đến bình thường var workflowModule = WF_MODULEBusiness.repository .All().FirstOrDefault(x => x.MODULE_CODE == MODULE_CONSTANT.VANBANDEN); var workflowStreamIds = workflowModule.WF_STREAM_ID.ToListInt(','); //- lấy luồng xử lý của từng đơn vị var workflowStream = WF_STREAMBusiness.repository.All() .FirstOrDefault(x => x.LEVEL_ID == dept.CATEGORY && workflowStreamIds.Contains(x.ID)); //lấy trạng thái xử lý ban đầu cảu đơn vị firstState = WF_STATEBusiness.repository.All() .FirstOrDefault(x => x.IS_START == true && x.WF_ID == workflowStream.ID); } else if (dept.PARENT_ID == currentUser.DeptParentID) { isSendInternal = true; //- trường hợp gửi các phòng ban thuộc tỉnh ủy => thành văn bản đến nội bộ của tỉnh var workflowModule = WF_MODULEBusiness.repository.All() .FirstOrDefault(x => x.MODULE_CODE == MODULE_CONSTANT.VANBANDENNOIBO); var workflowStreamIds = workflowModule.WF_STREAM_ID.ToListInt(','); //- lấy luồng xử lý của từng đơn vị var workflowStream = WF_STREAMBusiness.repository.All() .FirstOrDefault(x => x.LEVEL_ID == dept.CATEGORY && workflowStreamIds.Contains(x.ID)); firstState = WF_STATEBusiness.repository.All() .FirstOrDefault(x => x.IS_START == true && x.WF_ID == workflowStream.ID); } UserInfoBO processor = null; /** * kiểm tra vai trò nhận của trạng thái đầu tiên */ if (firstState != null) { /** * lấy người thuộc phòng ban có vai trò xử lý */ var receiver = DM_NGUOIDUNGBusiness.GetUserByRoleAndDeptId(firstState.VAITRO_ID.GetValueOrDefault(), dept.ID).FirstOrDefault(); if (receiver != null) { processor = DM_NGUOIDUNGBusiness.GetNewUserInfo(receiver.Value.ToLongOrZero()); } } var dataSoVanBanDen = DM_DANHMUC_DATABusiness.GetSoVanBan(DMLOAI_CONSTANT.SOVANBANDEN, DateTime.Now.Year, dept.ID); if (dataSoVanBanDen == null) { //tạo sổ văn bản đến dataSoVanBanDen = new DM_DANHMUC_DATA() { DEPTID = dept.ID, TEXT = "Sổ văn bản đến " + DateTime.Now.Year, DATA = DateTime.Now.Year, DM_NHOM_ID = entityNhomDanhMuc.ID }; DM_DANHMUC_DATABusiness.Save(dataSoVanBanDen); } HSCV_VANBANDEN entityVanBanDen = this.ConvertToVanBanDen(entityVanBanDi, entityNguoiKy, dataSoVanBanDen); entityVanBanDen.IS_NOIBO = isSendInternal ? true : false; HSCV_VANBANDENBusiness.Save(entityVanBanDen); /** * cập nhật số văn bản đến */ dataSoVanBanDen.GHICHU = (dataSoVanBanDen.GHICHU.ToIntOrZero() + 1).ToString(); DM_DANHMUC_DATABusiness.Save(dataSoVanBanDen); /** * cập nhật tài liệu đính kèm */ var files = this.GenerateFiles(groupFiles, entityVanBanDen); groupForwardFiles.AddRange(files); /** * cập nhật thông tin văn bản đến trong luồng xử lý */ if (processor != null) { WF_PROCESSBusiness.AddFlow(entityVanBanDen.ID, isSendInternal ? MODULE_CONSTANT.VANBANDENNOIBO : MODULE_CONSTANT.VANBANDEN, processor); } /** * nếu không có người phù hợp trong luồng xử lý ==> lấy người có vai trò cao nhất tại phòng */ if (processor == null) { /** * lấy ra người có vai trò cao nhất tại phòng ban */ processor = DM_NGUOIDUNGBusiness.GetUserHighestPriority(dept.ID); /** * lưu thông in người nhận vào bảng WF_ITEM_USER_PROCESS */ var itemUserProcess = new WF_ITEM_USER_PROCESS(); itemUserProcess.ITEM_ID = entityVanBanDen.ID; itemUserProcess.ITEM_TYPE = isSendInternal ? MODULE_CONSTANT.VANBANDENNOIBO : MODULE_CONSTANT.VANBANDEN; itemUserProcess.IS_XULYCHINH = false; itemUserProcess.USER_ID = processor.ID; itemUserProcess.create_at = DateTime.Now; itemUserProcess.create_by = currentUser.ID; groupItemUserProcess.Add(itemUserProcess); } if (processor != null) { ElasticSearch.updateListUser(entityVanBanDen.ID.ToString(), new List <long> { processor.ID }, ElasticType.VanBanDen); //gửi email if (!string.IsNullOrEmpty(processor.EMAIL)) { var ContentEmail = currentUser.TenPhongBan + " đã gửi bạn một văn bản đến <a href='" + SERVERADDRESS + "/HSCV_VANBANDENArea/HSCV_VANBANDEN/DetailVanBanDen?id=" + entityVanBanDen.ID.ToString() + "'>" + entityVanBanDen.SOHIEU + "</a>"; EmailProvider.SendMailTemplate(currentUser, ContentEmail, ContentEmail, new List <string> { processor.EMAIL }); } //gửi tin nhắn if (currentUser.CanSendSMS && entityVanBanDi.CAN_SEND_SMS == true && processor.DIENTHOAI != null) { var ContentSMS = currentUser.TenPhongBan + " đã gửi bạn một văn bản đến " + entityVanBanDen.SOHIEU; ContentSMS = sms.locDau(ContentSMS); var DoDaiSMS = ContentSMS.Length; string[] noiDung = new string[1]; noiDung[0] = ContentSMS; string resultsend = sms.guiTinNhan(processor.DIENTHOAI, "177403", noiDung); LOGSMS SmsObject = new LOGSMS(); SmsObject.SODIENTHOAINHAN = processor.DIENTHOAI; SmsObject.NOIDUNG = ContentSMS; SmsObject.SOKYTU = DoDaiSMS; SmsObject.KETQUA = resultsend; SmsObject.CREATED_AT = DateTime.Now; SmsObject.CREATED_BY = currentUser.ID; SmsObject.HOTENNGUOIGUI = currentUser.HOTEN; SmsObject.DONVI_GUI = currentUser.DM_PHONGBAN_ID.GetValueOrDefault(); SmsObject.ITEMTYPE = "VANBANDEN"; SmsObject.ITEMID = entityVanBanDen.ID; SmsObject.DONVI_NHAN = processor.DM_PHONGBAN_ID.GetValueOrDefault(); SmsObject.HOTENNGUOINHAN = processor.HOTEN; groupLogSMS.Add(SmsObject); } //lưu thông báo SYS_TINNHAN noti = new SYS_TINNHAN(); noti.FROM_USERNAME = currentUser.HOTEN; noti.FROM_USER_ID = currentUser.ID; noti.NGAYTAO = DateTime.Now; noti.NOIDUNG = currentUser.TenPhongBan + " đã gửi đến bạn một văn bản đến"; noti.URL = "/HSCV_VANBANDENArea/HSCV_VANBANDEN/DetailVanBanDen/" + entityVanBanDen.ID.ToString(); noti.TIEUDE = "Xử lý văn bản đến"; noti.TO_USER_ID = processor.ID; SYS_TINNHANBusiness.Save(noti, "", false, entityVanBanDen.ID, TargetDocType.COORDINATED); } } //lưu thông tin tài liệu, sms, luồng xử lý TAILIEUDINHKEMBusiness.repository.InsertRange(groupForwardFiles); LogSMSBusiness.repository.InsertRange(groupLogSMS); WF_ITEM_USER_PROCESSBusiness.repository.InsertRange(groupItemUserProcess); TAILIEUDINHKEMBusiness.repository.Save(); } catch (Exception) { result = false; } return(result); }
public JsonResult SaveLichCongTac(LICHCONGTAC entity, FormCollection fc) { AssignUserInfo(); qlDangKyXeBusiness = Get <QL_DANGKY_XEBusiness>(); lichCongTacBusiness = Get <LICHCONGTACBusiness>(); dmNhomDanhMucBusiness = Get <DM_NHOMDANHMUCBusiness>(); dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>(); JsonResultBO editResult = new JsonResultBO(true); entity.NGAY_CONGTAC = fc["NGAY_CONGTAC"].ToDateTimeNotNull(); bool isObsolete = entity.NGAY_CONGTAC.IsOldWeek(); if (isObsolete) { editResult.Status = false; editResult.Message = "Thời gian công tác đã quá hạn để thêm mới"; return(Json(editResult)); } entity.TIEUDE = fc["TIEUDE"].Trim(); entity.GIO_CONGTAC = fc["GIO_CONGTAC"].ToIntOrZero(); entity.PHUT_CONGTAC = fc["PHUT_CONGTAC"].ToIntOrZero(); //entity.NGUOICHUTRI_ID = fc["NGUOICHUTRI_ID"].ToIntOrNULL(); entity.LANHDAO_ID = fc["LANHDAO_ID"].ToIntOrNULL(); entity.DIADIEM = fc["DIADIEM"].Trim(); entity.GHICHU = fc["GHICHU"].Trim(); entity.NGUOITAO = currentUser.ID; entity.NGUOISUA = currentUser.ID; entity.NGAYTAO = DateTime.Now; entity.NGAYSUA = DateTime.Now; entity.IS_LATTEST = true; entity.IS_DELETE = false; string destination = fc["DIADIEM"].Trim(); //kiểm tra trùng lịch của cán bộ trong ngày bool existed = lichCongTacBusiness.CheckIsDuplicate(entity.ID, entity.LANHDAO_ID.GetValueOrDefault(), entity.NGAY_CONGTAC, entity.GIO_CONGTAC, entity.PHUT_CONGTAC); if (existed == true) { editResult.Status = false; editResult.Message = "Lịch công tác của cán bộ đã tồn tại"; return(Json(editResult)); } DM_DANHMUC_DATA dataItem = dmDanhMucDataBusiness.GetItemByCodeAndText(DMLOAI_CONSTANT.DIEM_DEN, destination); if (dataItem == null) { DM_NHOMDANHMUC groupCategory = dmNhomDanhMucBusiness.GetByCode(DMLOAI_CONSTANT.DIEM_DEN) ?? new DM_NHOMDANHMUC(); DM_DANHMUC_DATA destinationEntity = new DM_DANHMUC_DATA(); destinationEntity.DM_NHOM_ID = groupCategory.ID; destinationEntity.TEXT = destination; dmDanhMucDataBusiness.Save(destinationEntity); } if (entity.ID <= 0) { lichCongTacBusiness.Save(entity); editResult.Message = "Thêm mới lịch công tác thành công"; } else { LICHCONGTAC dbEntity = lichCongTacBusiness.Find(entity.ID); if (dbEntity != null && dbEntity.IS_DELETE != true) { if (dbEntity.NGAY_CONGTAC.IsOldWeek()) { editResult.Status = false; editResult.Message = "Thời gian công tác đã quá hạn cập nhật"; return(Json(editResult)); } //so sánh 2 phiên bản nếu khác => tạo phiên bản mới có ROOT_LICH = 0; bool hasChanged = CheckHasChanged(arrProperties, dbEntity, entity); if (hasChanged) { entity.ID = 0; entity.LICH_GOC_ID = dbEntity.ID; dbEntity.IS_LATTEST = false; //cập nhật phiên bản trước đã cũ lichCongTacBusiness.Save(entity); //kiểm tra xem lịch công tác này đã được đăng ký xe hay chưa //nếu có thì cập nhật đăng ký xe QL_DANGKY_XE register = qlDangKyXeBusiness.GetAvailableRegistrationByCalendarId(dbEntity.ID); if (register != null) { register.LICHCONGTAC_ID = entity.ID; qlDangKyXeBusiness.Save(register); } } lichCongTacBusiness.Save(dbEntity); editResult.Message = "Cập nhật lịch công tác thành công"; } else { editResult.Status = false; editResult.Message = "Lịch công tác không tồn tại"; return(Json(editResult)); } } return(Json(editResult)); }