Пример #1
0
        public PartialViewResult ResultDanhGiaCongViec(string FROM_QUERY_DATE, string TO_QUERY_DATE, string DONVI_ID, string NHANVIEN_ID)
        {
            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            DM_NGUOIDUNGBusiness  = Get <DM_NGUOIDUNGBusiness>();
            AssignUserInfo();
            DateTime date1     = FROM_QUERY_DATE.ToDateTime().Value;
            DateTime date2     = TO_QUERY_DATE.ToDateTime().Value;
            var      LstDeptId = new List <int>();

            if (!string.IsNullOrEmpty(DONVI_ID))
            {
                LstDeptId = DONVI_ID.ToListInt(',');
            }

            if (!string.IsNullOrEmpty(NHANVIEN_ID) && NHANVIEN_ID != "null")
            {
                var LstCongViec = HSCV_CONGVIECBusiness.GetDanhGiaCongViec(LstDeptId, NHANVIEN_ID.ToListLong(','), date1, date2);
                return(PartialView("_SearchResult", LstCongViec));
            }
            else
            {
                if (currentUser.DM_PHONGBAN_ID.HasValue)
                {
                    LstDeptId.Add(currentUser.DM_PHONGBAN_ID.Value);
                }

                List <DM_NGUOIDUNG> ListNguoiDung = DM_NGUOIDUNGBusiness.GetDataByUnitId(LstDeptId);
                var LstCongViec = HSCV_CONGVIECBusiness.GetDanhGiaCongViec(LstDeptId, ListNguoiDung.Select(x => x.ID).ToList(), date1, date2);
                return(PartialView("_SearchResult", LstCongViec));
            }
        }
Пример #2
0
        public string RecusiveCongViec(long congviecid, List <CongViecBO> LstCongViec, string rootIdx,
                                       List <DM_NGUOIDUNG> ListNguoiDung, List <HSCV_CONGVIEC_NGUOITHAMGIAXULY> ListThamGia,
                                       List <HSCV_CONGVIEC_LAPKEHOACH> ListPlan)
        {
            HSCV_CONGVIECBusiness           = Get <HSCV_CONGVIECBusiness>();
            HSCV_TRINHDUYETCONGVIECBusiness = Get <HSCV_TRINHDUYETCONGVIECBusiness>();
            HSCV_CONGVIEC_XINLUIHANBusiness = Get <HSCV_CONGVIEC_XINLUIHANBusiness>();
            PHIEUDANHGIACONGVIECBusiness    = Get <PHIEUDANHGIACONGVIECBusiness>();

            var    LstCongViecRoot = LstCongViec.Where(x => x.CONGVIECGOC_ID == congviecid).ToList();
            var    html            = "";
            string thamgia         = "";
            var    idx             = 1;
            int    size            = 0;
            int    sizePlan        = 0;

            if (LstCongViecRoot.Count > 0)
            {
                foreach (var item in LstCongViecRoot)
                {
                    InitRow(LstCongViec, ListThamGia, ListPlan, ListNguoiDung, ref html, ref idx,
                            out sizePlan, out size, ref thamgia, item, rootIdx + "." + idx.ToString(), false);
                }
            }
            return(html);
        }
Пример #3
0
        public PartialViewResult ResultTheoDoiCongViec(string FROM_QUERY_DATE, string TO_QUERY_DATE, string DONVI_ID, string NHANVIEN_ID)
        {
            HSCV_CONGVIECBusiness                  = Get <HSCV_CONGVIECBusiness>();
            HSCV_CONGVIEC_LAPKEHOACHBusiness       = Get <HSCV_CONGVIEC_LAPKEHOACHBusiness>();
            HSCV_TRINHDUYETCONGVIECBusiness        = Get <HSCV_TRINHDUYETCONGVIECBusiness>();
            HSCV_CONGVIEC_XINLUIHANBusiness        = Get <HSCV_CONGVIEC_XINLUIHANBusiness>();
            PHIEUDANHGIACONGVIECBusiness           = Get <PHIEUDANHGIACONGVIECBusiness>();
            HSCV_CONGVIEC_NGUOITHAMGIAXULYBusiness = Get <HSCV_CONGVIEC_NGUOITHAMGIAXULYBusiness>();
            DM_NGUOIDUNGBusiness = Get <DM_NGUOIDUNGBusiness>();
            DateTime            date1         = FROM_QUERY_DATE.ToDateTime().Value;
            DateTime            date2         = TO_QUERY_DATE.ToDateTime().Value;
            var                 LstDeptId     = DONVI_ID.ToListInt(',');
            List <DM_NGUOIDUNG> ListNguoiDung = DM_NGUOIDUNGBusiness.GetDataByUnitId(LstDeptId);

            var LstCongViec = HSCV_CONGVIECBusiness.GetDsCongViec(LstDeptId, ListNguoiDung.Select(x => x.ID).ToList(), date1, date2);
            // Công việc gốc
            var LstCongViecRoot = LstCongViec.Where(x => x.IS_SUBTASK == null).ToList();

            List <long> ListJobId = LstCongViec.Select(x => x.ID).ToList();

            // Add thêm các công việc con được giao xuống nhưng có công việc cha ko nằm trong danh sách công việc hiện tại của phòng ban, danh sách người dùng
            foreach (var job in LstCongViec)
            {
                if (!ListJobId.Contains(job.ParentId) && !LstCongViecRoot.Contains(job))
                {
                    LstCongViecRoot.Add(job);
                }
            }
            var ListThamGia = HSCV_CONGVIEC_NGUOITHAMGIAXULYBusiness.GetData(ListJobId);
            var ListPlan    = HSCV_CONGVIEC_LAPKEHOACHBusiness.GetData(ListJobId);

            ListNguoiDung = DM_NGUOIDUNGBusiness.GetData(ListThamGia.Select(x => x.USER_ID).ToList());
            var    html     = "";
            var    idx      = 1;
            int    sizePlan = 0;
            int    size     = 0;
            string thamgia  = "";

            ListReportModel = new List <ReportExcelModel>();
            foreach (var item in LstCongViecRoot)
            {
                currentJobStt = idx;
                InitRow(LstCongViec, ListThamGia, ListPlan, ListNguoiDung, ref html, ref idx,
                        out sizePlan, out size, ref thamgia, item, "", true);
            }
            SessionManager.SetValue("ListReportModel", ListReportModel);
            return(PartialView("ResultTheoDoiCongViec", html));
        }
Пример #4
0
        public JsonResult Approval(string id)
        {
            List <long>       Ids          = id.ToListLong(',');
            List <CongViecBO> ListCongViec = SessionManager.GetValue("ProcessedJobSearch") as List <CongViecBO>;

            Ids = Ids.Where(x => ListCongViec.Select(y => y.ID).Contains(x)).ToList();
            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            foreach (var item in Ids)
            {
                HSCV_CONGVIEC CongViec = HSCV_CONGVIECBusiness.Find(item);
                if (CongViec != null)
                {
                    CongViec.NGAYDUYET    = DateTime.Now;
                    CongViec.TRANGTHAI_ID = TrangThaiCongViecConstant.APPROVED;
                    HSCV_CONGVIECBusiness.Save(CongViec);
                }
            }
            return(Json(new { Type = "SUCCESS", Message = "Phê duyệt công việc đã giao thành công" }));
        }
Пример #5
0
        public ActionResult ExportData(long id)
        {
            DanhGiaCongViecModel model = new DanhGiaCongViecModel();

            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            CongViecBO CongViec = HSCV_CONGVIECBusiness.FindById(id);

            if (CongViec != null)
            {
                model.CongViec = CongViec;
                PHIEUDANHGIACONGVIECBusiness = Get <PHIEUDANHGIACONGVIECBusiness>();
                model.PhieuDanhGia           = PHIEUDANHGIACONGVIECBusiness.GetData(id);
            }
            else
            {
                model.CongViec     = new CongViecBO();
                model.PhieuDanhGia = new PHIEUDANHGIACONGVIEC();
            }
            return(View("Export", model));
        }
Пример #6
0
        public PartialViewResult DetailDanhGia(long id)
        {
            DanhGiaCongViecModel model = new DanhGiaCongViecModel();

            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            CongViecBO CongViec = HSCV_CONGVIECBusiness.FindById(id);

            if (CongViec != null)
            {
                model.CongViec = CongViec;
                PHIEUDANHGIACONGVIECBusiness = Get <PHIEUDANHGIACONGVIECBusiness>();
                model.PhieuDanhGia           = PHIEUDANHGIACONGVIECBusiness.GetData(id);
            }
            else
            {
                model.CongViec     = new CongViecBO();
                model.PhieuDanhGia = new PHIEUDANHGIACONGVIEC();
            }
            return(PartialView("_Detail", model));
        }
Пример #7
0
        public JsonResult searchData(FormCollection form)
        {
            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            var searchModel = SessionManager.GetValue("ProcessedJobSearchModel") as HSCV_CONGVIEC_SEARCH;

            if (searchModel == null)
            {
                searchModel          = new HSCV_CONGVIEC_SEARCH();
                searchModel.pageSize = MaxPerpage;
            }
            string TENCONGVIEC      = form["TENCONGVIEC"];
            string NGAYBATDAU_FROM  = form["NGAYBATDAU_FROM"];
            string NGAYBATDAU_TO    = form["NGAYBATDAU_TO"];
            string NGAYKETTHUC_FROM = form["NGAYKETTHUC_FROM"];
            string NGAYKETTHUC_TO   = form["NGAYKETTHUC_TO"];
            string DOKHAN_ID        = form["DOKHAN_ID"];
            string DOMAT_ID         = form["DOMAT_ID"];

            #region Gán giá trị
            if (!string.IsNullOrEmpty(TENCONGVIEC))
            {
                searchModel.TENCONGVIEC = TENCONGVIEC.Trim();
            }
            searchModel.NGAYBATDAU_FROM  = NGAYBATDAU_FROM.ToDateTime();
            searchModel.NGAYBATDAU_TO    = NGAYBATDAU_TO.ToDateTime();
            searchModel.NGAYKETTHUC_FROM = NGAYKETTHUC_FROM.ToDateTime();
            searchModel.NGAYKETTHUC_TO   = NGAYKETTHUC_TO.ToDateTime();
            if (!string.IsNullOrEmpty(DOKHAN_ID))
            {
                searchModel.DOKHAN = DOKHAN_ID.ToLongOrNULL();
            }
            if (!string.IsNullOrEmpty(DOMAT_ID))
            {
                searchModel.DO_UUTIEN = DOMAT_ID.ToLongOrNULL();
            }
            #endregion
            SessionManager.SetValue("ProcessedJobSearchModel", searchModel);
            var data = HSCV_CONGVIECBusiness.GetListProcessedJob(searchModel, searchModel.pageSize, 1);
            SessionManager.SetValue("ProcessedJobSearch", data.ListItem);
            return(Json(data));
        }
Пример #8
0
        //private CCTC_THANHPHANBusiness CCTC_THANHPHANBusiness;
        public ActionResult Index()
        {
            CongViecIndexViewModel model = new CongViecIndexViewModel();

            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            HSCV_CONGVIEC_SEARCH searchModel = new HSCV_CONGVIEC_SEARCH();

            AssignUserInfo();
            searchModel.USER_ID  = currentUser.ID;
            searchModel.pageSize = MaxPerpage;
            SessionManager.SetValue("ProcessedJobSearchModel", searchModel);
            var ListCongViec = HSCV_CONGVIECBusiness.GetListProcessedJob(searchModel, MaxPerpage);

            model.ListResult        = ListCongViec;
            DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>();
            model.ListDoKhan        = DM_DANHMUC_DATABusiness.DsByMaNhom(DMLOAI_CONSTANT.DOQUANTRONG, 0);
            model.ListDoUuTien      = DM_DANHMUC_DATABusiness.DsByMaNhom(DMLOAI_CONSTANT.DOUUTIEN, 0);
            model.UserInfo          = currentUser;
            SessionManager.SetValue("ProcessedJobSearch", ListCongViec.ListItem);
            return(View(model));
        }
        public ActionResult Index()
        {
            CongViecIndexViewModel model = new CongViecIndexViewModel();

            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            HSCV_CONGVIEC_SEARCH searchModel = new HSCV_CONGVIEC_SEARCH();

            AssignUserInfo();
            searchModel.LOAI_CONGVIEC = LOAI_CONGVIEC.PHOIHOP_XULY;
            searchModel.USER_ID       = currentUser.ID;
            searchModel.pageSize      = MaxPerpage;
            SessionManager.SetValue("CongViecXLSearchModel", searchModel);
            var ListCongViec = HSCV_CONGVIECBusiness.GetDaTaByPage(searchModel, MaxPerpage);

            model.ListResult        = ListCongViec;
            DM_DANHMUC_DATABusiness = Get <DM_DANHMUC_DATABusiness>();
            model.ListDoKhan        = DM_DANHMUC_DATABusiness.DsByMaNhom(DMLOAI_CONSTANT.DOKHAN, 0);
            model.ListDoUuTien      = DM_DANHMUC_DATABusiness.DsByMaNhom(DMLOAI_CONSTANT.DOUUTIEN, 0);
            model.UserInfo          = currentUser;
            return(View(model));
        }
Пример #10
0
        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 getData(int indexPage, string sortQuery, int pageSize)
        {
            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            var searchModel = SessionManager.GetValue("CongViecXLSearchModel") as HSCV_CONGVIEC_SEARCH;

            if (!string.IsNullOrEmpty(sortQuery))
            {
                if (searchModel == null)
                {
                    searchModel = new HSCV_CONGVIEC_SEARCH();
                }
                searchModel.sortQuery = sortQuery;
                if (pageSize > 0)
                {
                    searchModel.pageSize = pageSize;
                }
                SessionManager.SetValue("CongViecXLSearchModel", searchModel);
            }
            var data = HSCV_CONGVIECBusiness.GetDaTaByPage(searchModel, pageSize, indexPage);

            return(Json(data));
        }
Пример #12
0
        public JsonResult SaveCongViec(HSCV_CONGVIEC CongViec, FormCollection col, IEnumerable <HttpPostedFileBase> filebase, string[] filename, string[] FOLDER_ID)
        {
            AssignUserInfo();
            #region gán dữ liệu
            string NGAYBATDAU       = col["NGAYBATDAU"];
            string NGAYKETTHUC      = col["NGAYKETTHUC"];
            string MUCTIEU_CONGVIEC = col["MUCTIEU_CONGVIEC"];
            string CACBUOC_THUCHIEN = col["CACBUOC_THUCHIEN"];
            if (!string.IsNullOrEmpty(NGAYBATDAU))
            {
                NGAYBATDAU = NGAYBATDAU.Trim();
            }
            if (!string.IsNullOrEmpty(NGAYKETTHUC))
            {
                NGAYKETTHUC = NGAYKETTHUC.Trim();
            }
            if (!string.IsNullOrEmpty(col["NOIDUNGCONGVIEC"]))
            {
                CongViec.NOIDUNGCONGVIEC = col["NOIDUNGCONGVIEC"].Trim();
            }
            if (!string.IsNullOrEmpty(col["TENCONGVIEC"]))
            {
                CongViec.TENCONGVIEC = col["TENCONGVIEC"].Trim();
            }
            if (!string.IsNullOrEmpty(MUCTIEU_CONGVIEC))
            {
                CongViec.MUCTIEU_CONGVIEC = MUCTIEU_CONGVIEC.Trim();
            }
            if (!string.IsNullOrEmpty(CACBUOC_THUCHIEN))
            {
                CongViec.CACBUOC_THUCHIEN = CACBUOC_THUCHIEN.Trim();
            }
            CongViec.NGAY_NHANVIEC = NGAYBATDAU.ToDateTime();
            CongViec.NGAYHOANTHANH_THEOMONGMUON = NGAYKETTHUC.ToDateTime();
            CongViec.IS_BATDAU = false;
            #endregion
            List <CommonError> ListError = IsValid(CongViec, NGAYBATDAU, NGAYKETTHUC);
            if (ListError.Any())
            {
                return(Json(new { Type = "INVALID", Message = ListError }, JsonRequestBehavior.AllowGet));
            }
            HSCV_CONGVIECBusiness = Get <HSCV_CONGVIECBusiness>();
            UploadFileTool tool = new UploadFileTool();
            if (CongViec.ID > 0)
            {
                #region Cập nhật công việc cá nhân
                var result = HSCV_CONGVIECBusiness.Find(CongViec.ID);
                if (result == null || currentUser.ID != result.NGUOIGIAOVIEC_ID)
                {
                    return(Json(new { Type = "ERROR", Message = "Không tìm thấy công việc cần cập nhật" }, JsonRequestBehavior.AllowGet));
                }
                result.DOKHAN                     = CongViec.DOKHAN;
                result.DOUU_TIEN                  = CongViec.DOUU_TIEN;
                result.HAS_FILE                   = filebase.Any() ? 1 : 0;
                result.HAS_NHACVIECDENHAN         = CongViec.HAS_NHACVIECDENHAN;
                result.IS_EMAIL                   = CongViec.IS_EMAIL;
                result.IS_HASPLAN                 = CongViec.IS_HASPLAN;
                result.IS_MESG                    = CongViec.IS_MESG;
                result.IS_POPUP                   = CongViec.IS_POPUP;
                result.IS_SMS                     = CongViec.IS_SMS;
                result.IS_SUBTASK                 = CongViec.IS_SUBTASK;
                result.ITEMTYPE                   = CongViec.ITEMTYPE;
                result.ITEM_ID                    = CongViec.ITEM_ID;
                result.NGAY_NHANVIEC              = CongViec.NGAY_NHANVIEC;
                result.NGAYHOANTHANH_THEOMONGMUON = CongViec.NGAYHOANTHANH_THEOMONGMUON;
                result.NGAYSUA                    = DateTime.Now;
                result.NGUOIGIAOVIECDANHGIA       = CongViec.NGUOIGIAOVIECDANHGIA;
                result.NGUOIGIAOVIECDAPHANHOI     = CongViec.NGUOIGIAOVIECDAPHANHOI;
                result.NOIDUNGCONGVIEC            = CongViec.NOIDUNGCONGVIEC;
                result.PHANTRAMHOANTHANH          = CongViec.PHANTRAMHOANTHANH;
                result.SONGAYNHACTRUOCHAN         = CongViec.SONGAYNHACTRUOCHAN;
                result.SUBTASK_ID                 = CongViec.SUBTASK_ID;
                result.TENCONGVIEC                = CongViec.TENCONGVIEC;
                result.TRANGTHAI_ID               = CongViec.TRANGTHAI_ID;
                result.IS_BATDAU                  = CongViec.IS_BATDAU;
                result.CACBUOC_THUCHIEN           = CongViec.CACBUOC_THUCHIEN;
                result.MUCTIEU_CONGVIEC           = CongViec.MUCTIEU_CONGVIEC;
                HSCV_CONGVIECBusiness.Save(result);
                tool.UploadCustomFileVer3(filebase, true, CongViecExtension, URL_FOLDER, CongViecSize, FOLDER_ID, filename, result.ID, LOAITAILIEU.CONGVIEC, "Công việc", currentUser);
                #endregion
                #region Elastic search
                List <long> ListUser = new List <long>();
                ListUser.Add(currentUser.ID);
                ListUser.Add(result.NGUOITAO.HasValue ? result.NGUOITAO.Value : 0);
                ElasticModel model = ElasticModel.ConvertJob(result, ListUser, currentUser.HOTEN);
                ElasticSearch.updateDocument(model, model.Id.ToString(), ElasticType.CongViec);
                #endregion

                return(Json(new { Type = "SUCCESS", Message = "Cập nhật công việc đã giao thành công" }, JsonRequestBehavior.AllowGet));
            }
            return(Json(new { Type = "ERROR", Message = "Không thể thực hiện thao tác này" }, JsonRequestBehavior.AllowGet));
        }