public PartialViewResult FormVanBan(long?id = 0, long?HoSoID = 0) { DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); QuanLyVanBanBusiness = Get <QuanLyVanBanBusiness>(); QuanLyHoSoBusiness = Get <QuanLyHoSoBusiness>(); TaiLieuDinhKemBusiness = Get <TAILIEUDINHKEMBusiness>(); FormVanBanModel model = new FormVanBanModel(); var VanBan = new QUANLY_VANBAN(); if (id > 0) { VanBan = QuanLyVanBanBusiness.Find(id); } model.VanBan = VanBan; model.HOSO_ID = HoSoID; model.ListCoQuanBanHanh = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.QLHS_CO_QUAN_BAN_HANH, VanBan.COQUAN_BANHANH_ID); model.ListDoMat = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.DOMAT, VanBan.DOMAT_ID); model.ListHoSo = QuanLyHoSoBusiness.GetDropDow(HoSoID); model.ListLinhVuc = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.LINHVUCVANBAN, VanBan.LINHVUC_ID); model.ListLoaiVanBan = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.LOAI_VANBAN, VanBan.LOAI_VANBAN_ID); model.ListMucDoTruyCap = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.QLHS_MUC_DO_TRUY_CAP, VanBan.MUCDO_TRUYCAP); model.ListNgonNgu = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.QLHS_NGON_NGU, VanBan.NGONNGU_ID); model.ListTaiLieu = TaiLieuDinhKemBusiness.GetDataByItemID(VanBan.ID, LOAITAILIEU.VANBAN); model.ListTinhTrangVatLy = DM_DANHMUC_DATABusiness.GetDropDow(DMLOAI_CONSTANT.QLHS_TINH_TRANG_VAT_LY, VanBan.TINHTRANG_VATLY); return(PartialView("_FormVanBan", model)); }
public ActionResult Edit(long id) { HSCV_VANBANDENBusiness = Get <HSCV_VANBANDENBusiness>(); var VanBan = HSCV_VANBANDENBusiness.Find(id); AssignUserInfo(); if (VanBan == null || currentUser.ID != VanBan.NGUOITAO) { return(RedirectToAction("NotFound", "Home", new { area = "" })); } HscvVanBanPhatHanhModel model = new HscvVanBanPhatHanhModel(); DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); //model.ListDoMat = DM_DANHMUC_DATABusiness.GetDataByCode(DMLOAI_CONSTANT.DOMAT); model.ListDoKhan = DM_DANHMUC_DATABusiness.GetDataByCode(DMLOAI_CONSTANT.DOKHAN); model.ListDoUuTien = DM_DANHMUC_DATABusiness.GetDataByCode(DMLOAI_CONSTANT.DOUUTIEN); model.ListLoaiVanBan = DM_DANHMUC_DATABusiness.GetDataByCode(DMLOAI_CONSTANT.LOAI_VANBAN); model.ListLinhVucVanBan = DM_DANHMUC_DATABusiness.GetDataByCode(DMLOAI_CONSTANT.LINHVUCVANBAN); model.Extension = VbDenExtension; model.MaxSize = VbDenSize; model.ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(id, LOAITAILIEU.VANBANDEN); model.VanBan = VanBan; CCTC_THANHPHANBusiness = Get <CCTC_THANHPHANBusiness>(); model.TreeDonVi = CCTC_THANHPHANBusiness.GetTree(0); HSCV_VANBANDEN_DONVINHANBusiness = Get <HSCV_VANBANDEN_DONVINHANBusiness>(); var ListDonViId = HSCV_VANBANDEN_DONVINHANBusiness.GetData(id); model.ListDonVi = model.ListDonVi = CCTC_THANHPHANBusiness.GetDataByIds(ListDonViId.Where(o => o.DONVI_ID.HasValue).Select(x => x.DONVI_ID.Value).ToList()); return(View("Create", model)); }
public ActionResult EditVanBanDen(long id, int type = VANBANDEN_CONSTANT.CHUA_XULY) { AssignUserInfo(); hscvVanBanDenBusiness = Get <HSCV_VANBANDENBusiness>(); dmDanhMucDataBusiness = Get <DM_DANHMUC_DATABusiness>(); attachmentBusiness = Get <TAILIEUDINHKEMBusiness>(); HSCV_VANBANDEN entityVanBanDen = hscvVanBanDenBusiness.Find(id); if (entityVanBanDen != null) { EditVanBanDenModel model = new EditVanBanDenModel(entityVanBanDen); model.typeOfVanBanDen = type; model.groupDonViGuis = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.DONVIGUI_VANBAN, currentUser.ID, entityVanBanDen.DONVI_ID.GetValueOrDefault()); model.groupDoKhans = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.DOKHAN, currentUser.ID, entityVanBanDen.DOKHAN_ID.GetValueOrDefault()); model.groupDoUuTiens = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.DOUUTIEN, currentUser.ID, entityVanBanDen.DOMAT_ID.GetValueOrDefault()); model.groupLoaiVanBans = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.LOAI_VANBAN, currentUser.ID, entityVanBanDen.LOAIVANBAN_ID.GetValueOrDefault()); model.groupLinhVucVanBans = dmDanhMucDataBusiness.DsByMaNhom(DMLOAI_CONSTANT.LINHVUCVANBAN, currentUser.ID, entityVanBanDen.LINHVUCVANBAN_ID.GetValueOrDefault()); model.groupSoVanBanDens = dmDanhMucDataBusiness.DsByMaNhomByDept(DMLOAI_CONSTANT.SOVANBANDEN, currentUser.ID, currentUser.DeptParentID.Value, entityVanBanDen.SOVANBANDEN_ID.GetValueOrDefault()); model.groupTaiLieuDinhKems = attachmentBusiness.GetDataByItemID(entityVanBanDen.ID, LOAITAILIEU.VANBANDEN); model.entityVanBanDen = entityVanBanDen; model.fileExtension = extensionOfVanBanDen; model.fileMaxSize = maxSizeOfVanBanDen; model.UsersReceived = entityVanBanDen.NGUOINHAN_TRUCTIEP_IDS != null?entityVanBanDen.NGUOINHAN_TRUCTIEP_IDS.ToListLong(',') : new List <long>(); //model.Recipients = recipientBusiness.GetRecipientGroups(currentUser.DM_PHONGBAN_ID.GetValueOrDefault()); model.GroupDeptTypes = dmDanhMucDataBusiness.DsByMaNhom(VanBanConstant.LOAI_COQUAN, currentUser.ID, entityVanBanDen.LOAI_COQUAN_ID.GetValueOrDefault()); model.GroupDocTypes = dmDanhMucDataBusiness.DsByMaNhom(VanBanConstant.PHANLOAI_VANBAN, currentUser.ID, entityVanBanDen.THONGTIN_LOAI_ID.GetValueOrDefault()); model.GroupDispatchTypes = dmDanhMucDataBusiness.DsByMaNhom(VanBanConstant.CONGVANDEN, currentUser.ID, entityVanBanDen.CONGVAN_DEN_ID.GetValueOrDefault()); return(View("CreateVanBanDen", model)); } return(Redirect("/Home/UnAuthor")); }
public PartialViewResult Detail(long?id = 0) { QuanLyVanBanBusiness = Get <QuanLyVanBanBusiness>(); TaiLieuDinhKemBusiness = Get <TAILIEUDINHKEMBusiness>(); VanBanDetailViewModel model = new VanBanDetailViewModel(); model.VanBan = QuanLyVanBanBusiness.GetDetail(id); model.ListTaiLieu = TaiLieuDinhKemBusiness.GetDataByItemID(id.Value, LOAITAILIEU.VANBAN); return(PartialView("_Detail", model)); }
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 SaveVanBan(FormCollection form, List <HttpPostedFileBase> filebase, string[] FOLDER_ID, string[] filename) { QuanLyVanBanBusiness = Get <QuanLyVanBanBusiness>(); TaiLieuDinhKemBusiness = Get <TAILIEUDINHKEMBusiness>(); var SaveVanBan = new QUANLY_VANBAN(); string title = "Thêm mới văn bản thành công"; if (!string.IsNullOrEmpty(form["ID"]) && Convert.ToInt32(form["ID"]) > 0) { SaveVanBan = QuanLyVanBanBusiness.Find(Convert.ToInt32(form["ID"])); title = "Cập nhật văn bản thành công"; } SaveVanBan.COQUAN_BANHANH_ID = form["COQUAN_BANHANH_ID"].ToIntOrNULL(); SaveVanBan.DOMAT_ID = form["DOMAT_ID"].ToIntOrNULL(); SaveVanBan.GHICHU = form["GHICHU"]; SaveVanBan.HOSO_ID = form["HOSO_ID"].ToIntOrNULL(); SaveVanBan.LINHVUC_ID = form["LINHVUC_ID"].ToIntOrNULL(); SaveVanBan.LOAI_VANBAN_ID = form["LOAI_VANBAN_ID"].ToIntOrNULL(); SaveVanBan.MUCDO_TRUYCAP = form["MUCDO_TRUYCAP"].ToIntOrNULL(); SaveVanBan.NGAYBANHANH = form["NGAYBANHANH"].ToDateTime(); SaveVanBan.NGONNGU_ID = form["NGONNGU_ID"].ToIntOrNULL(); SaveVanBan.SO_KYHIEU = form["SO_KYHIEU"]; SaveVanBan.TIEUDE = form["TIEUDE"]; SaveVanBan.TINHTRANG_VATLY = form["TINHTRANG_VATLY"].ToIntOrNULL(); SaveVanBan.TOSO = form["TOSO"].ToIntOrNULL(); SaveVanBan.TRICHYEU_VANBAN = form["TRICHYEU_VANBAN"]; QuanLyVanBanBusiness.Save(SaveVanBan); //Lưu file đính kèm if (filebase != null && filebase.Count() > 0) { if (!string.IsNullOrEmpty(form["ID"]) && Convert.ToInt32(form["ID"]) > 0 && filebase[0] != null) { #region Xóa tài liệu đi kèm List <TAILIEUDINHKEM> ListTaiLieu = TaiLieuDinhKemBusiness.GetDataByItemID(SaveVanBan.ID, LOAITAILIEU.VANBAN); FileUltilities file = new FileUltilities(); foreach (var item in ListTaiLieu) { file.RemoveFile(URLPath + "\\" + item.DUONGDAN_FILE); TaiLieuDinhKemBusiness.Delete(item.TAILIEU_ID); } TaiLieuDinhKemBusiness.Save(); #endregion Xóa tài liệu đi kèm } UploadFileTool tool = new UploadFileTool(); var exited = tool.UploadCustomFile(filebase, true, FileAllowUpload, URLPath, MaxFileSizeUpload.ToIntOrZero(), FOLDER_ID, filename, SaveVanBan.ID, LOAITAILIEU.VANBAN, "Văn Bản"); } return(Json(new { VanBan = QuanLyVanBanBusiness.GetByHoSo(SaveVanBan.HOSO_ID), message = title }, JsonRequestBehavior.AllowGet)); }
public JsonResult DeleteHoSo(long id) { QuanLyHoSoBusiness = Get <QuanLyHoSoBusiness>(); QuanLyVanBanBusiness = Get <QuanLyVanBanBusiness>(); TaiLieuDinhKemBusiness = Get <TAILIEUDINHKEMBusiness>(); QUANLY_HOSO HoSo = QuanLyHoSoBusiness.Find(id); if (HoSo == null) { return(Json(new { Type = "ERROR", Message = "Không tìm thấy hồ sơ cần xóa" })); } #region Xóa các văn bản đi kèm List <QUANLY_VANBAN> ListVanBan = QuanLyVanBanBusiness.GetData(id); foreach (var item in ListVanBan) { QuanLyVanBanBusiness.Delete(item.ID); } QuanLyVanBanBusiness.Save(); #endregion Xóa các văn bản đi kèm #region Xóa tài liệu đi kèm List <TAILIEUDINHKEM> ListTaiLieu = TaiLieuDinhKemBusiness.GetDataByItemID(id, LOAITAILIEU.QUANLY_HOSO); ListTaiLieu.AddRange(TaiLieuDinhKemBusiness.GetDataByItemID(ListVanBan.Select(x => x.ID).ToList(), LOAITAILIEU.QUANLY_VANBAN)); FileUltilities file = new FileUltilities(); foreach (var item in ListTaiLieu) { file.RemoveFile(UrlPath + "\\" + item.DUONGDAN_FILE); TaiLieuDinhKemBusiness.Delete(item.TAILIEU_ID); } TaiLieuDinhKemBusiness.Save(); #endregion Xóa tài liệu đi kèm #region Xóa người nhận QuanLyHoSoNguoiNhapBusiness = Get <QuanLyHoSoNguoiNhapBusiness>(); QuanLyHoSoNguoiNhapBusiness.DeleteByHoSo(id); QuanLyHoSoNguoiNhapBusiness.Save(); #endregion Xóa người nhận QuanLyHoSoBusiness.Delete(id); QuanLyHoSoBusiness.Save(); return(Json(new { Status = true, Message = "Xóa hồ sơ thành công" })); }
public JsonResult Delete(long id) { HSCV_VANBANDENBusiness = Get <HSCV_VANBANDENBusiness>(); HSCV_VANBANDEN VanBan = HSCV_VANBANDENBusiness.Find(id); AssignUserInfo(); if (VanBan == null || currentUser.ID != VanBan.NGUOITAO) { return(Json(new { Type = "ERROR", Message = "Không tìm thấy văn bản phát hành cần xóa" })); } TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); FileUltilities file = new FileUltilities(); List <TAILIEUDINHKEM> ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(id, LOAITAILIEU.VANBANDEN); foreach (var item in ListTaiLieu) { TAILIEUDINHKEMBusiness.repository.Delete(item.TAILIEU_ID); file.RemoveFile(URL_FOLDER + item.DUONGDAN_FILE); if (!string.IsNullOrEmpty(item.PDF_VERSION)) { file.RemoveFile(URL_FOLDER + item.PDF_VERSION); } } THUMUC_LUUTRUBusiness = Get <THUMUC_LUUTRUBusiness>(); THUMUC_LUUTRU ThuMuc = THUMUC_LUUTRUBusiness.GetDataByNam(id.ToString(), ThuMucLuuTruConstant.DefaultVbDen); if (ThuMuc != null) { ThuMuc.IS_DELETE = true; THUMUC_LUUTRUBusiness.Save(ThuMuc); } TAILIEUDINHKEMBusiness.Save(); HSCV_VANBANDENBusiness.repository.Delete(id); HSCV_VANBANDENBusiness.Save(); #region Xóa đơn vị nhận văn bản HSCV_VANBANDEN_DONVINHANBusiness = Get <HSCV_VANBANDEN_DONVINHANBusiness>(); var ListDonVi = HSCV_VANBANDEN_DONVINHANBusiness.GetData(id); if (ListDonVi.Any()) { foreach (var item in ListDonVi) { HSCV_VANBANDEN_DONVINHANBusiness.repository.Delete(item.ID); } HSCV_VANBANDEN_DONVINHANBusiness.Save(); } #endregion return(Json(new { Type = "SUCCESS", Message = "Xóa văn bản phát hành thành công" })); }
public JsonResult DeleteVanBan(long?id = 0) { QuanLyVanBanBusiness = Get <QuanLyVanBanBusiness>(); TaiLieuDinhKemBusiness = Get <TAILIEUDINHKEMBusiness>(); QuanLyVanBanBusiness.Delete(id); QuanLyVanBanBusiness.Save(); #region Xóa tài liệu đi kèm List <TAILIEUDINHKEM> ListTaiLieu = TaiLieuDinhKemBusiness.GetDataByItemID(id.Value, LOAITAILIEU.VANBAN); FileUltilities file = new FileUltilities(); foreach (var item in ListTaiLieu) { file.RemoveFile(URLPath + "\\" + item.DUONGDAN_FILE); TaiLieuDinhKemBusiness.Delete(item.TAILIEU_ID); } TaiLieuDinhKemBusiness.Save(); #endregion return(Json(new { message = "Xóa văn bản thành công" }, JsonRequestBehavior.AllowGet)); }
public string GetChild(string pid, string sort) { UserInfoBO user = GetUserInfo(); List <THUMUC_LUUTRU_BO> subMenu = new List <THUMUC_LUUTRU_BO>(); List <TAILIEUDINHKEM_BO> lstTaiLieu = new List <TAILIEUDINHKEM_BO>(); TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); CCTC_THANHPHANBusiness = Get <CCTC_THANHPHANBusiness>(); int pID = pid.ToIntOrZero(); THUMUC_LUUTRUBusiness = Get <THUMUC_LUUTRUBusiness>(); EFILE_CHIASEBusiness = Get <EFILE_CHIASEBusiness>(); THUMUC_LUUTRU THUMUC = THUMUC_LUUTRUBusiness.Find(pID); if (THUMUC != null) { if (THUMUC.PERMISSION.HasValue && THUMUC.PERMISSION.Value == FolderPermission.CAN_WRITE) { subMenu = new List <THUMUC_LUUTRU_BO>(); } else { CCTC_THANHPHAN DONVI = new CCTC_THANHPHAN(); if (THUMUC != null) { DONVI = CCTC_THANHPHANBusiness.Find(THUMUC.DONVI_ID); } else { DONVI = CCTC_THANHPHANBusiness.Find(user.DM_PHONGBAN_ID); } List <int> Ids = new List <int>(); #region Lấy tài liệu + thư mục con subMenu = TAILIEUDINHKEMBusiness.getListFileByFolder(pID, LOAITAILIEU.TM_UPLOAD, 0, DONVI.NAME, THUMUC); CCTC_THANHPHANBusiness = Get <CCTC_THANHPHANBusiness>(); subMenu.AddRange(THUMUC_LUUTRUBusiness.GetThuMucByParent(pID, 0, Ids)); #endregion } } return(JsonConvert.SerializeObject(subMenu)); }
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 Delete(long id) { hscvVanBanDenBusiness = Get <HSCV_VANBANDENBusiness>(); HSCV_VANBANDEN entityVanBanDen = hscvVanBanDenBusiness.Find(id); AssignUserInfo(); if (entityVanBanDen == null || currentUser.ID != entityVanBanDen.NGUOITAO) { return(Json(new { Type = "ERROR", Message = "Bạn không có quyền xóa văn bản trình ký này" })); } attachmentBusiness = Get <TAILIEUDINHKEMBusiness>(); FileUltilities file = new FileUltilities(); List <TAILIEUDINHKEM> ListTaiLieu = attachmentBusiness.GetDataByItemID(id, LOAITAILIEU.VANBANDEN); foreach (var item in ListTaiLieu) { attachmentBusiness.repository.Delete(item.TAILIEU_ID); file.RemoveFile(uploadFolder + item.DUONGDAN_FILE); if (!string.IsNullOrEmpty(item.PDF_VERSION)) { file.RemoveFile(uploadFolder + item.PDF_VERSION); } } storeFolderBusiness = Get <THUMUC_LUUTRUBusiness>(); THUMUC_LUUTRU ThuMuc = storeFolderBusiness.GetDataByNam(id.ToString(), ThuMucLuuTruConstant.DefaultVanban); if (ThuMuc != null) { ThuMuc.IS_DELETE = true; storeFolderBusiness.Save(ThuMuc); } attachmentBusiness.Save(); hscvVanBanDenBusiness.repository.Delete(id); #region xóa văn bản đến trong elastic ElasticSearch.deleteDocument(id.ToString(), ElasticType.VanBanDen); #endregion return(Json(new { Type = "SUCCESS", Message = "Xóa văn bản đến thành công" })); }
public ActionResult Update(long id) { AssignUserInfo(); DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>(); CongViecViewModel model = new CongViecViewModel(); model.UserInfo = currentUser; var CongViec = HSCV_CONGVIECBusiness.Find(id); if (CongViec == null || currentUser.ID != CongViec.NGUOIGIAOVIEC_ID) { CongViec = new HSCV_CONGVIEC(); } model.ListDoKhan = DM_DANHMUC_DATABusiness.DsByMaNhom(DMLOAI_CONSTANT.DOKHAN, currentUser.ID, CongViec.DOKHAN.HasValue ? CongViec.DOKHAN.Value : 0); model.ListDoUuTien = DM_DANHMUC_DATABusiness.DsByMaNhom(DMLOAI_CONSTANT.DOUUTIEN, currentUser.ID, CongViec.DOUU_TIEN.HasValue ? CongViec.DOUU_TIEN.Value : 0); TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); model.ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(id, LOAITAILIEU.CONGVIEC); model.CongViec = CongViec; model.userInfo = currentUser; return(View(model)); }
public JsonResult SavePhatHanhVanBan(FormCollection col) { AssignUserInfo(); SMSDAL.SendSMSDAL sms = new SMSDAL.SendSMSDAL(); SYS_TINNHANBusiness = Get <SYS_TINNHANBusiness>(); LogSMSBusiness = Get <LogSMSBusiness>(); HSCV_VANBANDIBusiness = Get <HSCV_VANBANDIBusiness>(); HSCV_VANBANDENBusiness = Get <HSCV_VANBANDENBusiness>(); DM_NHOMDANHMUCBusiness = Get <DM_NHOMDANHMUCBusiness>(); DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); DM_NGUOIDUNGBusiness = Get <DM_NGUOIDUNGBusiness>(); WF_MODULEBusiness = Get <WF_MODULEBusiness>(); WF_PROCESSBusiness = Get <WF_PROCESSBusiness>(); WF_STATE_FUNCTIONBusiness = Get <WF_STATE_FUNCTIONBusiness>(); WF_STATEBusiness = Get <WF_STATEBusiness>(); WF_STREAMBusiness = Get <WF_STREAMBusiness>(); WF_FUNCTION_DONEBusiness = Get <WF_FUNCTION_DONEBusiness>(); WF_LOGBusiness = Get <WF_LOGBusiness>(); WF_ITEM_USER_PROCESSBusiness = Get <WF_ITEM_USER_PROCESSBusiness>(); CCTC_THANHPHANBusiness = Get <CCTC_THANHPHANBusiness>(); string selectedDept = col["department-choose"]; long? ID = col["ID"].ToLongOrNULL(); if (0 >= ID) { return(Json(new { Type = "ERROR", Message = "Không tìm thấy văn bản cần lưu sổ và phát hành" })); } #region cập nhật thông tin văn bản đi HSCV_VANBANDI VanBanDi = HSCV_VANBANDIBusiness.Find(ID); if (VanBanDi == null) { return(Json(new { Type = "ERROR", Message = "Không tìm thấy văn bản cần lưu sổ và phát hành" })); } if (!string.IsNullOrEmpty(col["SOHIEU"])) { VanBanDi.SOHIEU = col["SOHIEU"]; } VanBanDi.USER_RECEIVE_DIRECTLY = col["USERS_RECEIVE_SPECIAL"]; VanBanDi.DONVINHAN_INTERNAL_ID = selectedDept; VanBanDi.SOTHEOSO = col["SOTHEOSO"]; VanBanDi.SOVANBAN_ID = col["SOVANBAN_ID"].ToIntOrNULL(); if (!string.IsNullOrEmpty(col["TRICHYEU"])) { VanBanDi.TRICHYEU = col["TRICHYEU"].Trim(); } if (!string.IsNullOrEmpty(col["NGAY_HIEULUC"])) { try { VanBanDi.NGAYCOHIEULUC = col["NGAY_HIEULUC"].ToDateTime(); } catch (Exception e) { } } if (!string.IsNullOrEmpty(col["NGAYHET_HIEULUC"])) { try { VanBanDi.NGAYHETHIEULUC = col["NGAYHET_HIEULUC"].ToDateTime(); } catch (Exception e) { } } if (!string.IsNullOrEmpty(col["NGAYBANHANH"])) { try { VanBanDi.NGAYBANHANH = col["NGAYBANHANH"].ToDateTime(); } catch (Exception e) { } } HSCV_VANBANDIBusiness.Save(VanBanDi); #endregion //cập nhật số đi theo văn bản vào số văn bản hiện tại int numbSoDiTheoSo = VanBanDi.SOTHEOSO.GetPrefixNumber(); DM_DANHMUC_DATABusiness.UpdateSoVanBan(VanBanDi.SOVANBAN_ID.GetValueOrDefault(), numbSoDiTheoSo); #region Convert Văn bản List <int> ListDonVi = selectedDept.ToListInt(','); DateTime? NGAY_HIEULUC = col["NGAY_HIEULUC"].ToDateTime(); DateTime? NGAYHET_HIEULUC = col["NGAYHET_HIEULUC"].ToDateTime(); string TRICHYEU = col["TRICHYEU"]; string SOHIEU = col["SOHIEU"]; if (!string.IsNullOrEmpty(SOHIEU)) { SOHIEU = SOHIEU.Trim(); } if (!string.IsNullOrEmpty(TRICHYEU)) { TRICHYEU = TRICHYEU.Trim(); } List <TAILIEUDINHKEM> ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(ID.HasValue ? ID.Value : 0, LOAITAILIEU.VANBAN); DM_NGUOIDUNG NguoiDung = DM_NGUOIDUNGBusiness.Find(VanBanDi.NGUOIKY_ID); #endregion #region cập nhật wf function done var process = WF_PROCESSBusiness.GetProcess(VanBanDi.ID, MODULE_CONSTANT.VANBANTRINHKY); var function = WF_STATE_FUNCTIONBusiness.GetStateFunction((int)process.CURRENT_STATE); var functionDone = new WF_FUNCTION_DONE(); functionDone.ITEM_TYPE = MODULE_CONSTANT.VANBANTRINHKY; functionDone.ITEM_ID = VanBanDi.ID; functionDone.STATE = process.CURRENT_STATE; functionDone.FUNCTION_STATE = function.ID; functionDone.create_at = DateTime.Now; functionDone.create_by = currentUser.ID; WF_FUNCTION_DONEBusiness.Save(functionDone); var log = new WF_LOG(); log.ITEM_ID = VanBanDi.ID; log.ITEM_TYPE = MODULE_CONSTANT.VANBANTRINHKY; log.MESSAGE = "<div class='label label-info'>Đã phát hành</div>"; log.WF_ID = process.WF_ID; log.create_at = DateTime.Now; log.create_by = currentUser.ID; log.NGUOIXULY_ID = currentUser.ID; WF_LOGBusiness.Save(log); //Ghi nhận luồng đã xử lý xong var state = WF_STATEBusiness.Find(process.CURRENT_STATE); if (state != null && state.IS_KETTHUC == true) { process.IS_END = true; WF_PROCESSBusiness.Save(process); } var itemprocess = WF_ITEM_USER_PROCESSBusiness.repository.All().Where(x => x.ITEM_ID == process.ITEM_ID && x.ITEM_TYPE == process.ITEM_TYPE && x.STEP_ID == process.CURRENT_STATE) .FirstOrDefault(); if (itemprocess != null) { itemprocess.DAXULY = true; WF_ITEM_USER_PROCESSBusiness.Save(itemprocess); } #endregion //gửi văn bản đi cho đơn vị SaveVanBanPhatHanhToDonVi(VanBanDi, sms); //gửi văn bản đi cho cá nhân SaveVanBanPhatHanhToCaNhan(VanBanDi, sms); return(Json(new { Type = "SUCCESS", Message = "Lưu sổ và phát hành văn bản thành công" })); }
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 ActionResult DetailVanBan(long ID) { AssignUserInfo(); #region check quyền truy cập của người dùng đến văn bản hiện tại WF_ITEM_USER_PROCESSBusiness = Get <WF_ITEM_USER_PROCESSBusiness>(); WF_PROCESSBusiness = Get <WF_PROCESSBusiness>(); HSCV_VANBANDIBusiness = Get <HSCV_VANBANDIBusiness>(); DM_NGUOIDUNGBusiness = Get <DM_NGUOIDUNGBusiness>(); var WF_REVIEW_USERBusiness = Get <WF_REVIEW_USERBusiness>(); DM_DANHMUC_DATABusiness DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); // check quyền truy cập theo workflow bool HasPermissionAccess = WF_ITEM_USER_PROCESSBusiness.CheckPermissionProcess(ID, MODULE_CONSTANT.VANBANTRINHKY, currentUser.ID); // check quyền truy cập với quyền review bool HasPermissionReview = WF_REVIEW_USERBusiness.CheckPermissionReview(ID, MODULE_CONSTANT.VANBANTRINHKY, currentUser.ID); bool HasPermissionMainProcess = WF_PROCESSBusiness.CheckPermissionProcess(ID, MODULE_CONSTANT.VANBANTRINHKY, currentUser.ID); if (!HasPermissionAccess && !HasPermissionReview) { return(Redirect("/Home/UnAuthor")); } ThongTinVanBanDiVM myModel = new ThongTinVanBanDiVM(); myModel.VanBanTrinhKy = HSCV_VANBANDIBusiness.Find(ID); myModel.HasPermissionMainProcess = HasPermissionMainProcess; if (myModel.VanBanTrinhKy == null) { return(Redirect("/Home/UnAuthor")); } #region lấy tên danh mục - do dữ liệu văn bản rất lớn cho nên không join với bảng danh mục mà thực hiện 3,4 câu sub-query, tốc độ nhanh hơn // chỉ áp dụng kiểu truy vấn này với màn hình chi tiết 1 văn bản // ở màn hình danh sách tuyệt đối không áp dụng query ntn var DanhMucDoKhan = DM_DANHMUC_DATABusiness.Find(myModel.VanBanTrinhKy.DOKHAN_ID); if (DanhMucDoKhan != null) { myModel.STR_DOKHAN = DanhMucDoKhan.TEXT; } var DanhMucDoUuTien = DM_DANHMUC_DATABusiness.Find(myModel.VanBanTrinhKy.DOUUTIEN_ID); if (DanhMucDoUuTien != null) { myModel.STR_DOUUTIEN = DanhMucDoUuTien.TEXT; } var DanhMucLinhVuc = DM_DANHMUC_DATABusiness.Find(myModel.VanBanTrinhKy.LINHVUCVANBAN_ID); if (DanhMucLinhVuc != null) { myModel.STR_LINHVUCVANBAN = DanhMucLinhVuc.TEXT; } var DanhMucLoaiVanBan = DM_DANHMUC_DATABusiness.Find(myModel.VanBanTrinhKy.LOAIVANBAN_ID); if (DanhMucLoaiVanBan != null) { myModel.STR_LOAIVANBAN = DanhMucLoaiVanBan.TEXT; } var NguoiKyVanBan = DM_NGUOIDUNGBusiness.Find(myModel.VanBanTrinhKy.NGUOIKY_ID); if (NguoiKyVanBan != null) { myModel.STR_NGUOIKY = NguoiKyVanBan.HOTEN; } //Danh sách tài liệu đính kèm của văn bản TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); myModel.ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(ID, LOAITAILIEU.VANBAN); if (!string.IsNullOrEmpty(myModel.VanBanTrinhKy.DONVINHAN_INTERNAL_ID)) { CCTC_THANHPHANBusiness = Get <CCTC_THANHPHANBusiness>(); myModel.ListDonVi = CCTC_THANHPHANBusiness.GetDataByIds(myModel.VanBanTrinhKy.DONVINHAN_INTERNAL_ID.ToListInt(',')); } else { myModel.ListDonVi = new List <CCTC_THANHPHAN>(); } #endregion #endregion #region danh sách comment var HscvVanBanDiTraoDoiBusiness = Get <HSCV_VANBANDI_TRAODOIBusiness>(); myModel.LstNoiDungTraoDoi = HscvVanBanDiTraoDoiBusiness.GetListCommentByVanBanDiId(ID); myModel.LstRootComment = myModel.LstNoiDungTraoDoi.Where(x => x.REPLY_ID == null).OrderByDescending(x => x.NGAYTAO).ToList(); List <long> LstRootCommentIds = myModel.LstRootComment.Select(x => x.ID).ToList(); var LstTaiLieuComment = TAILIEUDINHKEMBusiness.GetDataForTaskByListItemId(LstRootCommentIds, LOAITAILIEU.NOIDUNGTRAODOIVANBANDI); myModel.LstTaiLieuComment = LstTaiLieuComment; #endregion return(View(myModel)); }
public ActionResult Detail(long id) { HSCV_VANBANDENBusiness = Get <HSCV_VANBANDENBusiness>(); var VanBanBO = HSCV_VANBANDENBusiness.FindById(id); if (VanBanBO == null) { return(RedirectToAction("NotFound", "Home", new { area = "" })); } AssignUserInfo(); HSCV_VANBANDEN_DONVINHANBusiness = Get <HSCV_VANBANDEN_DONVINHANBusiness>(); var ListDonViId = HSCV_VANBANDEN_DONVINHANBusiness.GetData(id); //Nếu là quản lý đơn vị CCTC_THANHPHANBusiness = Get <CCTC_THANHPHANBusiness>(); if (IsInActivities(currentUser.ListThaoTac, PermissionVanbanModel.DONVI)) { CCTC_THANHPHAN DonVi = CCTC_THANHPHANBusiness.Find(currentUser.DM_PHONGBAN_ID); List <int> Ids = new List <int>(); if (DonVi != null && DonVi.PARENT_ID.HasValue && DonVi.PARENT_ID.Value > 0) { Ids = CCTC_THANHPHANBusiness.GetDSChild(DonVi.PARENT_ID.Value).Select(x => x.ID).ToList(); Ids.Add(DonVi.PARENT_ID.Value); } else { Ids = CCTC_THANHPHANBusiness.GetDSChild(currentUser.DM_PHONGBAN_ID.HasValue ? currentUser.DM_PHONGBAN_ID.Value : 0).Select(x => x.ID).ToList(); Ids.Add(currentUser.DM_PHONGBAN_ID.HasValue ? currentUser.DM_PHONGBAN_ID.Value : 0); } if (ListDonViId.Where(x => Ids.Contains(x.DONVI_ID.Value)).Count() == 0) { return(RedirectToAction("NotFound", "Home", new { area = "" })); } //if (!VanBanBO.DONVI_ID.HasValue || !Ids.Contains(VanBanBO.DONVI_ID.Value)) //{ // return RedirectToAction("NotFound", "Home", new { area = "" }); //} } //Nếu là quản lý phòng ban else if (IsInActivities(currentUser.ListThaoTac, PermissionVanbanModel.PHONGBAN)) { List <int> Ids = CCTC_THANHPHANBusiness.GetDSChild(currentUser.DM_PHONGBAN_ID.HasValue ? currentUser.DM_PHONGBAN_ID.Value : 0).Select(x => x.ID).ToList(); Ids.Add(currentUser.DM_PHONGBAN_ID.HasValue ? currentUser.DM_PHONGBAN_ID.Value : 0); if (ListDonViId.Where(x => Ids.Contains(x.DONVI_ID.Value)).Count() == 0) { return(RedirectToAction("NotFound", "Home", new { area = "" })); } //if (!VanBanBO.DONVI_ID.HasValue || !Ids.Contains(VanBanBO.DONVI_ID.Value)) //{ // return RedirectToAction("NotFound", "Home", new { area = "" }); //} } else if (currentUser.ID != VanBanBO.NGUOITAO && !ListDonViId.Select(x => x.DONVI_ID).Contains(currentUser.DM_PHONGBAN_ID)) { return(RedirectToAction("NotFound", "Home", new { area = "" })); } //List<long> Ids = initIds(currentUser.DM_PHONGBAN_ID.HasValue ? currentUser.DM_PHONGBAN_ID.Value : 0); //if (VanBanBO.VANBANDI_ID.HasValue && !Ids.Contains(VanBanBO.VANBANDI_ID.Value)) //{ // return RedirectToAction("NotFound", "Home"); //} HscvVanBanPhatHanhModel model = new HscvVanBanPhatHanhModel(); DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>(); TAILIEUDINHKEMBusiness = Get <TAILIEUDINHKEMBusiness>(); model.ListTaiLieu = TAILIEUDINHKEMBusiness.GetDataByItemID(id, LOAITAILIEU.VANBANDEN); model.VanBanBO = VanBanBO; model.ListDonVi = model.ListDonVi = CCTC_THANHPHANBusiness.GetDataByIds(ListDonViId.Where(o => o.DONVI_ID.HasValue).Select(x => x.DONVI_ID.Value).ToList()); return(View(model)); }