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 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 SaveImportData(int idNhomDanhMuc, List <List <string> > Data) { var result = new JsonResultBO(true); AssignUserInfo(); DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); var lstObjSave = new List <DM_DANHMUC_DATA>(); try { foreach (var item in Data) { var newObj = new DM_DANHMUC_DATA(); newObj.TEXT = item[0]; newObj.DATA = item[1].ToIntOrNULL(); if (item[2] != null && item[2] != "null") { newObj.DEPTID = item[2].ToIntOrNULL(); } newObj.CODE = item[3]; //newObj.GHICHU = item[3]; newObj.DM_NHOM_ID = idNhomDanhMuc; lstObjSave.Add(newObj); } if (lstObjSave.Count > 0) { result = DM_DANHMUC_DATABusiness.saveImport(lstObjSave); } else { result.Status = false; result.Message = "Không có dữ liệu để lưu"; } } catch { result.Status = false; result.Message = "Lỗi dữ liệu, không thể import"; } return(Json(result)); }
public JsonResult SaveItem(LOAITAILIEU_THUOCTINH ThuocTinh) { if (ThuocTinh.DANHMUC_ID == 0) { return(Json(new { Type = "ERROR", Message = "Bạn chưa chọn loại tài liệu cho thuộc tính" }, JsonRequestBehavior.AllowGet)); } DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); DM_DANHMUC_DATA DanhMuc = DM_DANHMUC_DATABusiness.Find(ThuocTinh.DANHMUC_ID); if (DanhMuc == null) { return(Json(new { Type = "ERROR", Message = "Không tìm thấy loại tài liệu được chọn" }, JsonRequestBehavior.AllowGet)); } LOAITAILIEU_THUOCTINHBusiness = Get <LOAITAILIEU_THUOCTINHBusiness>(); if (ThuocTinh.ID > 0) { #region Cập nhật thuộc tính var result = LOAITAILIEU_THUOCTINHBusiness.Find(ThuocTinh.ID); if (result == null) { return(Json(new { Type = "ERROR", Message = "Không tìm thấy thuộc tính cần cập nhật" }, JsonRequestBehavior.AllowGet)); } result.DANHMUC_ID = ThuocTinh.DANHMUC_ID; result.MOTA = ThuocTinh.MOTA; result.TEN_THUOCTINH = ThuocTinh.TEN_THUOCTINH; result.TRANGTHAI = ThuocTinh.TRANGTHAI; LOAITAILIEU_THUOCTINHBusiness.Save(result); return(Json(new { Type = "SUCCESS", Message = "Cập nhật thuộc tính thành công" }, JsonRequestBehavior.AllowGet)); #endregion } else { #region Thêm mới thuộc tính LOAITAILIEU_THUOCTINHBusiness.Save(ThuocTinh); #endregion } return(Json(new { Type = "SUCCESS", Message = "Thêm mới thuộc tính thành công" }, JsonRequestBehavior.AllowGet)); }
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: chuyển văn bản đi ==> văn bản đến /// </summary> /// <param name="entityVanBanDi"></param> /// <param name="signer"></param> /// <param name="dataSoVanBanDen"></param> /// <returns></returns> public HSCV_VANBANDEN ConvertToVanBanDen(HSCV_VANBANDI entityVanBanDi, DM_NGUOIDUNG signer, DM_DANHMUC_DATA dataSoVanBanDen) { HSCV_VANBANDEN result = new HSCV_VANBANDEN(); result.SOHIEU = entityVanBanDi.SOHIEU; result.DOKHAN_ID = entityVanBanDi.DOKHAN_ID; result.DOMAT_ID = entityVanBanDi.DOUUTIEN_ID; result.LINHVUCVANBAN_ID = entityVanBanDi.LINHVUCVANBAN_ID; result.LOAIVANBAN_ID = entityVanBanDi.LOAIVANBAN_ID; result.NGAYHET_HIEULUC = entityVanBanDi.NGAYHETHIEULUC; result.NGAYTAO = entityVanBanDi.CREATED_AT; result.NGAY_HIEULUC = entityVanBanDi.NGAYCOHIEULUC; result.NGUOITAO = entityVanBanDi.CREATED_BY; result.NOIDUNG = entityVanBanDi.NOIDUNG; result.SOHIEU = entityVanBanDi.SOHIEU; result.TRICHYEU = entityVanBanDi.TRICHYEU; result.VANBANDI_ID = entityVanBanDi.ID; result.NGUOIKY = signer != null ? signer.HOTEN : null; result.CHUCVU = entityVanBanDi.CHUCVU; result.NGAY_BANHANH = DateTime.Now; result.SOTRANG = entityVanBanDi.SOTO; result.SOVANBANDEN_ID = dataSoVanBanDen.ID; result.SODITHEOSO = dataSoVanBanDen.GHICHU.ToIntOrZero().ToString(); result.SODITHEOSO_NUMBER = dataSoVanBanDen.GHICHU.ToIntOrZero(); return(result); }
/// <summary> /// @author:duynn /// @description: gửi cá nhân nhận bên ngoài /// @since: 10/06/2019 /// </summary> /// <param name="entityVanBanDi"></param> /// <param name="sms"></param> /// <returns></returns> public bool SaveVanBanPhatHanhToCaNhan(HSCV_VANBANDI entityVanBanDi, SMSDAL.SendSMSDAL sms) { List <TAILIEUDINHKEM> groupForwardFiles = new List <TAILIEUDINHKEM>(); List <LOGSMS> groupLogSMSs = new List <LOGSMS>(); var idsNguoiNhanDichDanh = entityVanBanDi.USER_RECEIVE_DIRECTLY.ToListLong(','); bool result = true; try { /** * nhóm sổ văn bản */ var dataNhomSoVanBanDen = DM_NHOMDANHMUCBusiness.repository.All() .FirstOrDefault(x => x.GROUP_CODE == DMLOAI_CONSTANT.SOVANBANDEN); /** * gửi từng người nhận đích danh */ foreach (var userId in idsNguoiNhanDichDanh) { var entityNguoiNhan = DM_NGUOIDUNGBusiness.GetNewUserInfo(userId); var dataSoVanBanDen = DM_DANHMUC_DATABusiness.GetSoVanBan(DMLOAI_CONSTANT.SOVANBANDEN, DateTime.Now.Year, entityNguoiNhan.DeptParentID.Value); if (dataSoVanBanDen == null) { dataSoVanBanDen = new DM_DANHMUC_DATA() { DEPTID = entityNguoiNhan.DM_PHONGBAN_ID.GetValueOrDefault(), TEXT = "Sổ văn bản đến " + DateTime.Now.Year, DATA = DateTime.Now.Year, DM_NHOM_ID = dataNhomSoVanBanDen.ID }; DM_DANHMUC_DATABusiness.Save(dataSoVanBanDen); } DM_NGUOIDUNG entityNguoiKy = DM_NGUOIDUNGBusiness.Find(entityVanBanDi.NGUOIKY_ID); HSCV_VANBANDEN entityVanBanDen = this.ConvertToVanBanDen(entityVanBanDi, entityNguoiKy, dataSoVanBanDen); HSCV_VANBANDENBusiness.Save(entityVanBanDen); JsonResultBO workflowResult = WF_PROCESSBusiness.AddFlow(entityVanBanDen.ID, MODULE_CONSTANT.VANBANDEN, entityNguoiNhan); if (!workflowResult.Status) { continue; } /** * Cập nhật số theo sổ */ dataSoVanBanDen.GHICHU = (dataSoVanBanDen.GHICHU.ToIntOrZero() + 1).ToString(); DM_DANHMUC_DATABusiness.Save(dataSoVanBanDen); /** * cập nhật tài liệu đính kèm */ List <TAILIEUDINHKEM> groupFiles = TAILIEUDINHKEMBusiness.GetNewestData(entityVanBanDi.ID, LOAITAILIEU.VANBAN); groupForwardFiles.AddRange(this.GenerateFiles(groupFiles, entityVanBanDen)); /** * cập nhật elastic search */ ElasticSearch.updateListUser(entityVanBanDen.ID.ToString(), new List <long> { entityNguoiNhan.ID }, ElasticType.VanBanDen); /** * gửi email */ if (entityNguoiNhan.EMAIL != null && !string.IsNullOrEmpty(entityNguoiNhan.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> { entityNguoiNhan.EMAIL }); } //gửi sms if (currentUser.CanSendSMS && entityVanBanDi.CAN_SEND_SMS == true) { if (!string.IsNullOrEmpty(entityNguoiNhan.DIENTHOAI)) { 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(entityNguoiNhan.DIENTHOAI, "177403", noiDung); LOGSMS SmsObject = new LOGSMS(); SmsObject.SODIENTHOAINHAN = entityNguoiNhan.DIENTHOAI; SmsObject.NOIDUNG = ContentSMS; SmsObject.SOKYTU = DoDaiSMS; SmsObject.KETQUA = resultsend; SmsObject.DONVI_GUI = currentUser.DM_PHONGBAN_ID.GetValueOrDefault(); SmsObject.CREATED_AT = DateTime.Now; SmsObject.CREATED_BY = currentUser.ID; SmsObject.HOTENNGUOIGUI = currentUser.HOTEN; SmsObject.ITEMTYPE = "VANBANDEN"; SmsObject.ITEMID = entityVanBanDen.ID; SmsObject.HOTENNGUOINHAN = entityNguoiNhan.HOTEN; SmsObject.DONVI_NHAN = entityNguoiNhan.DM_PHONGBAN_ID.GetValueOrDefault(); groupLogSMSs.Add(SmsObject); } } //gửi tin nhắn 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 = entityNguoiNhan.ID; SYS_TINNHANBusiness.Save(noti, "", false, entityVanBanDen.ID, TargetDocType.COORDINATED); } /** * lưu file và log SMS */ TAILIEUDINHKEMBusiness.repository.InsertRange(groupForwardFiles); LogSMSBusiness.repository.InsertRange(groupLogSMSs); TAILIEUDINHKEMBusiness.Save(); } catch (Exception) { result = false; } return(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 ActionResult DetailVanBanDen(long id, int type = VANBANDEN_CONSTANT.CHUA_XULY) { AssignUserInfo(); wfItemUserProcess = Get <WF_ITEM_USER_PROCESSBusiness>(); wfReviewUserBusiness = Get <WF_REVIEW_USERBusiness>(); dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>(); hscvVanBanDenBusiness = Get <HSCV_VANBANDENBusiness>(); attachmentBusiness = Get <TAILIEUDINHKEMBusiness>(); var HSCVREADVANBANBusiness = Get <HSCVREADVANBANBusiness>(); HSCV_VANBANDEN entityVanBanDen = hscvVanBanDenBusiness.Find(id); bool canAccess = wfItemUserProcess.CheckPermissionProcess(id, true == entityVanBanDen.IS_NOIBO ? MODULE_CONSTANT.VANBANDENNOIBO : MODULE_CONSTANT.VANBANDEN, currentUser.ID); bool canReview = wfReviewUserBusiness.CheckPermissionReview(id, true == entityVanBanDen.IS_NOIBO ? MODULE_CONSTANT.VANBANDENNOIBO : MODULE_CONSTANT.VANBANDEN, currentUser.ID); if ((!canAccess && !canReview) || entityVanBanDen == null) { return(Redirect("/Home/UnAuthor")); } var checkread = HSCVREADVANBANBusiness.repository.All() .Where(x => x.USER_ID == currentUser.ID && x.TYPE == 1 && x.VANBAN_ID == id).FirstOrDefault(); if (checkread == null) { HSCV_READVANBAN readObj = new HSCV_READVANBAN(); readObj.TYPE = 1; readObj.USER_ID = currentUser.ID; readObj.VANBAN_ID = id; HSCVREADVANBANBusiness.Save(readObj); } DetailVanBanDenViewModel model = new DetailVanBanDenViewModel(); DM_DANHMUC_DATA entityDonViGui = dmDanhMucDataBusiness.Find(entityVanBanDen.DONVI_ID); DM_DANHMUC_DATA entityDoKhan = dmDanhMucDataBusiness.Find(entityVanBanDen.DOKHAN_ID); DM_DANHMUC_DATA entityDoUuTien = dmDanhMucDataBusiness.Find(entityVanBanDen.DOMAT_ID); DM_DANHMUC_DATA entityLinhVucVanBan = dmDanhMucDataBusiness.Find(entityVanBanDen.LINHVUCVANBAN_ID); DM_DANHMUC_DATA entityLoaiVanBan = dmDanhMucDataBusiness.Find(entityVanBanDen.LOAIVANBAN_ID); DM_DANHMUC_DATA entityLoaiCoQuan = dmDanhMucDataBusiness.Find(entityVanBanDen.LOAI_COQUAN_ID); DM_DANHMUC_DATA entityThongTinLoaiVanBan = dmDanhMucDataBusiness.Find(entityVanBanDen.THONGTIN_LOAI_ID); DM_DANHMUC_DATA entityCongVanDen = dmDanhMucDataBusiness.Find(entityVanBanDen.CONGVAN_DEN_ID); model.currentUserId = currentUser.ID; model.entityVanBanDen = entityVanBanDen; model.nameOfDonViGui = entityDonViGui != null ? entityDonViGui.TEXT : string.Empty; model.nameOfDoKhan = entityDoKhan != null ? entityDoKhan.TEXT : string.Empty; model.nameOfDoUuTien = entityDoUuTien != null ? entityDoUuTien.TEXT : string.Empty; model.nameOfLinhVucVanBan = entityLinhVucVanBan != null ? entityLinhVucVanBan.TEXT : string.Empty; model.nameOfLoaiVanBan = entityLoaiVanBan != null ? entityLoaiVanBan.TEXT : string.Empty; model.nameOfLoaiCoQuan = entityLoaiCoQuan != null ? entityLoaiCoQuan.TEXT : string.Empty; model.nameOfThongTinLoaiBan = entityThongTinLoaiVanBan != null ? entityThongTinLoaiVanBan.TEXT : string.Empty; model.nameOfCongVanDen = entityCongVanDen != null ? entityCongVanDen.TEXT : string.Empty; model.groupOfTaiLieuDinhKems = attachmentBusiness.GetDataByItemID(entityVanBanDen.ID, LOAITAILIEU.VANBANDEN); model.typeOfVanBanDen = type; bool isFinish = hscvVanBanDenBusiness.CheckIsFinish(id); model.canCreateCalendar = (entityVanBanDen.NGUOITAO == currentUser.ID && isFinish); if (isFinish == false && entityVanBanDen.NGAYCONGTAC != null) { //kiểm tra người dùng có bước xử lý hay không? bool hasSteps = false; wfProcessBusiness = Get <WF_PROCESSBusiness>(); wfReviewUserBusiness = Get <WF_REVIEW_USERBusiness>(); wfReviewBusiness = Get <WF_REVIEWBusiness>(); wfStateBusiness = Get <WF_STATEBusiness>(); wfStepBusiness = Get <WF_STEPBusiness>(); wfStateFunctionBusiness = Get <WF_STATE_FUNCTIONBusiness>(); WF_PROCESS process = wfProcessBusiness.repository.All() .Where(x => x.ITEM_ID == id && x.ITEM_TYPE == MODULE_CONSTANT.VANBANDEN && x.USER_ID == currentUser.ID).FirstOrDefault(); WF_REVIEW reviewReject = wfReviewBusiness.repository.All() .Where(x => x.ITEMID == id && x.ITEMTYPE == MODULE_CONSTANT.VANBANDEN && x.IS_REJECT == true) .OrderByDescending(x => x.ID).FirstOrDefault(); WF_FUNCTION function = null; bool requireReview = false; List <WF_STEP> nextSteps = new List <WF_STEP>(); List <StepBackBO> stepsBack = new List <StepBackBO>(); if (process != null) { if (process != null || reviewReject != null) { WF_STATE startState = wfStateBusiness.Find(process.CURRENT_STATE); if (startState != null) { if (startState.IS_KETTHUC != true) { nextSteps = wfStepBusiness.GetListNextStep(process.WF_ID.GetValueOrDefault(), startState.ID); stepsBack = wfStepBusiness.GetListNextStepBack(process); } function = wfStateFunctionBusiness.CheckGetFunction(startState.ID, entityVanBanDen.ID, MODULE_CONSTANT.VANBANDEN); } } else if (process.IS_PENDING == true) { WF_REVIEW reviewFinish = wfReviewBusiness.repository.All() .Where(x => x.ITEMID == id && x.ITEMTYPE == MODULE_CONSTANT.VANBANDEN && x.IS_FINISH != true) .OrderByDescending(x => x.ID).FirstOrDefault(); if (reviewFinish != null) { requireReview = wfReviewUserBusiness.CheckReviewing(reviewFinish.ID, currentUser.ID); } } hasSteps = (nextSteps.Any() || stepsBack.Any() || function != null || requireReview == true); } model.hasSteps = hasSteps; if (hasSteps) { entityVanBanDen.NGAYCONGTAC = new DateTime(entityVanBanDen.NGAYCONGTAC.Value.Year, entityVanBanDen.NGAYCONGTAC.Value.Month, entityVanBanDen.NGAYCONGTAC.Value.Day); lichCongTacBusiness = Get <LICHCONGTACBusiness>(); model.isDuplicateCalendar = lichCongTacBusiness.repository.All() .Where(x => x.LANHDAO_ID == currentUser.ID && x.NGAY_CONGTAC.Equals(entityVanBanDen.NGAYCONGTAC.Value)).Count() > 0; } } return(View(model)); }
public PartialViewResult GetReportResult(FormCollection form) { string categoryCode = string.Empty; string reportTitle = string.Empty; int reportType = form["reportType"].ToIntOrZero(); int timeFilterType = form["timeFilterType"].ToIntOrZero(); int queryItemCategoryType = form["queryItemCategoryType"].ToIntOrZero(); int queryDepartment = form["queryDepartment"].ToIntOrZero(); string categoryName = string.Empty; string departmentTitleExtenstion = string.Empty; DateTime?queryDateStart; DateTime?queryDateEnd; hscvVanBanDiBusiness = Get <HSCV_VANBANDIBusiness>(); dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>(); cctcThanhPhanBusiness = Get <CCTC_THANHPHANBusiness>(); CCTC_THANHPHAN department = cctcThanhPhanBusiness.Find(queryDepartment); departmentTitleExtenstion = department != null && string.IsNullOrEmpty(department.NAME) == false ? (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_DONVINHAN_VANBANDI ? string.Format("TỪ ĐƠN VỊ {0}", department.NAME.ToUpper()) : string.Format("CỦA ĐƠN VỊ {0}", department.NAME.ToUpper())) : string.Empty; ReportVanBanDiResultViewModel viewModel = new ReportVanBanDiResultViewModel(); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_HINHTHUC_VANBANDI) { categoryCode = DMLOAI_CONSTANT.LOAI_VANBAN; if (queryItemCategoryType > 0) { DM_DANHMUC_DATA category = dmDanhMucDataBusiness.Find(queryItemCategoryType) ?? new DM_DANHMUC_DATA(); categoryName = string.IsNullOrEmpty(category.TEXT) ? string.Empty : category.TEXT.ToUpper(); } } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDI) { categoryCode = DMLOAI_CONSTANT.LINHVUCVANBAN; if (queryItemCategoryType > 0) { DM_DANHMUC_DATA category = dmDanhMucDataBusiness.Find(queryItemCategoryType) ?? new DM_DANHMUC_DATA(); categoryName = string.IsNullOrEmpty(category.TEXT) ? string.Empty : category.TEXT.ToUpper(); } } else { categoryCode = DMLOAI_CONSTANT.LINHVUCVANBAN; if (queryItemCategoryType > 0) { CCTC_THANHPHAN receiveDepartment = cctcThanhPhanBusiness.Find(queryItemCategoryType) ?? new CCTC_THANHPHAN(); categoryName = string.IsNullOrEmpty(receiveDepartment.NAME) ? string.Empty : receiveDepartment.NAME.ToUpper(); } } if (timeFilterType == LOAI_BAOCAO_THOIGIAN_CONSTANT.NGAY) { queryDateStart = form["queryDateStart"].ToDateTime(); queryDateEnd = form["queryDateEnd"].ToDateTime(); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_HINHTHUC_VANBANDI) { reportTitle = string.Format("THỐNG KÊ VĂN BẢN ĐI THEO HÌNH THỨC {0} TỪ NGÀY {1} ĐẾN NGÀY {2} {3}", categoryName, queryDateStart.Value.ToVietnameseDateFormat(), queryDateEnd.Value.ToVietnameseDateFormat(), departmentTitleExtenstion); } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDI) { reportTitle = string.Format("THỐNG KÊ VĂN BẢN ĐI THEO LĨNH VỰC {0} TỪ NGÀY {1} ĐẾN NGÀY {2} {3}", categoryName, queryDateStart.Value.ToVietnameseDateFormat(), queryDateEnd.Value.ToVietnameseDateFormat(), departmentTitleExtenstion); } else { reportTitle = string.Format("THỐNG KÊ VĂN BẢN ĐI ĐÃ GỬI CHO ĐƠN VỊ {0} TỪ NGÀY {1} ĐẾN NGÀY {2} {3}", categoryName, queryDateStart.Value.ToVietnameseDateFormat(), queryDateEnd.Value.ToVietnameseDateFormat(), departmentTitleExtenstion); } } else if (timeFilterType == LOAI_BAOCAO_THOIGIAN_CONSTANT.THANG) { int month = form["queryMonth"].ToIntOrZero(); int year = form["queryYear"].ToIntOrZero(); queryDateStart = new DateTime(year, month, 1); queryDateEnd = new DateTime(year, month, DateTime.DaysInMonth(year, month)); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_HINHTHUC_VANBANDI) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐI THEO HÌNH THỨC {0} TRONG THÁNG {1} NĂM {2} {3}", categoryName, month, year, departmentTitleExtenstion); } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDI) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐI THEO LĨNH VỰC {0} TRONG THÁNG {1} NĂM {2} {3}", categoryName, month, year, departmentTitleExtenstion); } else { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐI ĐÃ GỬI CHO ĐƠN VỊ {0} TRONG THÁNG {1} NĂM {2} {3}", categoryName, month, year, departmentTitleExtenstion); } } else { int year = form["queryYearOnly"].ToIntOrZero(); queryDateStart = new DateTime(year, 1, 1); queryDateEnd = new DateTime(year, 12, 31); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_HINHTHUC_VANBANDI) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐI THEO HÌNH THỨC {0} TRONG NĂM {1} {2}", categoryName, year, departmentTitleExtenstion); } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDI) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐI THEO LĨNH VỰC {0} TRONG NĂM {1} {2}", categoryName, year, departmentTitleExtenstion); } else { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐI ĐÃ GỬI CHO ĐƠN VỊ {0} TRONG NĂM {1} {2}", categoryName, year, departmentTitleExtenstion); } } viewModel.title = reportTitle; viewModel.reportType = reportType; if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_DONVINHAN_VANBANDI) { viewModel.groupOfReportResultItems = hscvVanBanDiBusiness.GetStatisticResultByInteralDepartment(queryDepartment, queryDateStart, queryDateEnd, queryItemCategoryType); } else { viewModel.groupOfReportResultItems = hscvVanBanDiBusiness.GetStatisticResultByCategory(queryDepartment, categoryCode, queryDateStart, queryDateEnd, queryItemCategoryType); } SessionManager.SetValue("ReportVanBanDi" + reportType, viewModel); return(PartialView("_ReportVanBanDiResult", viewModel)); }
public PartialViewResult GetReportResult(FormCollection form) { AssignUserInfo(); string categoryCode = string.Empty; string reportTitle = string.Empty; string departmentExtensionTitle = string.Empty; int reportType = form["reportType"].ToIntOrZero(); int timeFilterType = form["timeFilterType"].ToIntOrZero(); int queryItemCategoryType = form["queryItemCategoryType"].ToIntOrZero(); int queryDepartment = form["queryDepartment"].ToIntOrZero(); DateTime?queryDateStart; DateTime?queryDateEnd; hscvVanBanDenBusiness = Get <HSCV_VANBANDENBusiness>(); dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>(); cctcThanhPhanBusiness = Get <CCTC_THANHPHANBusiness>(); CCTC_THANHPHAN department = cctcThanhPhanBusiness.Find(queryDepartment); departmentExtensionTitle = department != null?string.Format("CỦA ĐƠN VỊ {0}", department.NAME.ToUpper()) : string.Empty; DM_DANHMUC_DATA category = dmDanhMucDataBusiness.Find(queryItemCategoryType) ?? new DM_DANHMUC_DATA(); category.TEXT = string.IsNullOrEmpty(category.TEXT) ? string.Empty : category.TEXT.ToUpper(); ReportVanBanDenResultViewModel viewModel = new ReportVanBanDenResultViewModel(); viewModel.reportType = reportType; if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LOAI_VANBANDEN) { categoryCode = DMLOAI_CONSTANT.LOAI_VANBAN; } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDEN) { categoryCode = DMLOAI_CONSTANT.LINHVUCVANBAN; } else { categoryCode = DMLOAI_CONSTANT.DONVIGUI_VANBAN; } if (timeFilterType == LOAI_BAOCAO_THOIGIAN_CONSTANT.NGAY) { queryDateStart = form["queryDateStart"].ToDateTime(); queryDateEnd = form["queryDateEnd"].ToDateTime(); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LOAI_VANBANDEN) { reportTitle = string.Format("THỐNG KÊ VĂN BẢN ĐẾN THEO LOẠI {0} TỪ NGÀY {1} ĐẾN NGÀY {2} {3}", category.TEXT, queryDateStart.Value.ToVietnameseDateFormat(), queryDateEnd.Value.ToVietnameseDateFormat(), departmentExtensionTitle); } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDEN) { reportTitle = string.Format("THỐNG KÊ VĂN BẢN ĐẾN THEO LĨNH VỰC {0} TỪ NGÀY {1} ĐẾN NGÀY {2} {3}", category.TEXT, queryDateStart.Value.ToVietnameseDateFormat(), queryDateEnd.Value.ToVietnameseDateFormat(), departmentExtensionTitle); } else { reportTitle = string.Format("THỐNG KÊ VĂN BẢN ĐẾN THEO ĐƠN VỊ {0} GỬI TỪ NGÀY {1} ĐẾN NGÀY {2} {3}", category.TEXT, queryDateStart.Value.ToVietnameseDateFormat(), queryDateEnd.Value.ToVietnameseDateFormat(), departmentExtensionTitle); } } else if (timeFilterType == LOAI_BAOCAO_THOIGIAN_CONSTANT.THANG) { int month = form["queryMonth"].ToIntOrZero(); int year = form["queryYear"].ToIntOrZero(); queryDateStart = new DateTime(year, month, 1); queryDateEnd = new DateTime(year, month, DateTime.DaysInMonth(year, month)); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LOAI_VANBANDEN) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐẾN THEO LOẠI {0} TRONG THÁNG {1} NĂM {2} {3}", category.TEXT, month, year, departmentExtensionTitle); } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDEN) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐẾN THEO LĨNH VỰC {0} TRONG THÁNG {1} NĂM {2} {3}", category.TEXT, month, year, departmentExtensionTitle); } else { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐẾN THEO ĐƠN VỊ {0} GỬI TRONG THÁNG {1} NĂM {2} {3}", category.TEXT, month, year, departmentExtensionTitle); } } else { int year = form["queryYearOnly"].ToIntOrZero(); queryDateStart = new DateTime(year, 1, 1); queryDateEnd = new DateTime(year, 12, 31); if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LOAI_VANBANDEN) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐẾN THEO LOẠI {0} TRONG NĂM {1} {2}", category.TEXT, year, departmentExtensionTitle); } else if (reportType == LOAI_BAOCAO_VANBAN_CONSTANT.BAOCAO_LINHVUC_VANBANDEN) { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐẾN THEO LĨNH VỰC {0} TRONG NĂM {1} {2}", category.TEXT, year, departmentExtensionTitle); } else { reportTitle = string.Format("BÁO CÁO VĂN BẢN ĐẾN THEO ĐƠN VỊ {0} GỬI TRONG NĂM {1} {2}", category.TEXT, year, departmentExtensionTitle); } } viewModel.title = reportTitle; viewModel.groupOfReportResultItems = hscvVanBanDenBusiness.GetStatisticResultByCategory(queryDepartment, MODULE_CONSTANT.VANBANDEN, categoryCode, queryDateStart, queryDateEnd, queryItemCategoryType); SessionManager.SetValue("ReportVanBanDen" + reportType, viewModel); return(PartialView("_ReportVanBanDenResult", viewModel)); }
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)); }