public ActionResult Create(Ht_Role_PhanHe_ChucNang ht_Role_PhanHe_ChucNang, string strListChucNang)
        {
            if (S4T_HaTinhBase.GetUserSession() == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            if (ModelState.IsValid)
            {
                if (String.IsNullOrEmpty(strListChucNang))
                    ViewBag.Mess = "Chưa chọn chức năng";
                else
                {
                    string[] list = strListChucNang.Split(';');

                    if (list.Any())
                    {
                        try
                        {
                            using (TransactionScope scope = new TransactionScope())
                            {
                                int chucNang_ID = 0;
                                foreach (var item in list)
                                {
                                    if (!Int32.TryParse(item, out chucNang_ID))
                                    {
                                        ViewBag.Mess = "Dữ liệu lỗi. Mời kiểm tra lại";
                                    }
                                    else
                                    {
                                        var obj = new Ht_Role_PhanHe_ChucNang {
                                            IsEdit = ht_Role_PhanHe_ChucNang.IsEdit,
                                            IsView = ht_Role_PhanHe_ChucNang.IsView,
                                            PhanHeChucNang_ID = chucNang_ID,
                                            RoleId = ht_Role_PhanHe_ChucNang.RoleId
                                        };
                                        //ht_Role_PhanHe_ChucNang.PhanHeChucNang_ID = chucNang_ID;
                                        db.Ht_Role_PhanHe_ChucNang.Add(obj);
                                        db.SaveChanges();
                                    }
                                }

                                scope.Complete();

                                return RedirectToAction("Index");
                            }
                        }
                        catch (DbEntityValidationException ex)
                        {
                            var exc = new ExceptionViewer();
                            exc.GetError(ex);
                        }
                    }
                }
            }

            return View(ht_Role_PhanHe_ChucNang);
        }
Пример #2
0
        // GET: ThongKe/Details/5
        public ActionResult ReportView(ReportModel model)
        {
            if (model.PhanHeChucNang == 0)
                return Content("Chưa chọn báo cáo"); // PartialView();

            try
            {
                switch (model.PhanHeChucNang)
                {
                    case 10: // Hạ tầng kỹ thuật
                        var listHaTangKyThuat = db.sp_GetHaTangKyThuat(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listHaTangKyThuat.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listHaTangKyThuat.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listHaTangKyThuat.Sum(m => m.SoCB_DVTT);
                        ViewBag.MayBan = listHaTangKyThuat.Sum(m => m.MayBan);
                        ViewBag.LapTop = listHaTangKyThuat.Sum(m => m.LapTop);
                        ViewBag.MayChu = listHaTangKyThuat.Sum(m => m.MayChu);
                        ViewBag.MayNoiMangInternet = listHaTangKyThuat.Sum(m => m.MayNoiMangInternet);
                        ViewBag.VirusCoBanQuyen = listHaTangKyThuat.Sum(m => m.VirusCoBanQuyen);
                        ViewBag.MayChieu = listHaTangKyThuat.Sum(m => m.MayChieu);
                        ViewBag.MayScan = listHaTangKyThuat.Sum(m => m.MayScan);
                        ViewBag.MayIn = listHaTangKyThuat.Sum(m => m.MayIn);
                        ViewBag.MayAnh = listHaTangKyThuat.Sum(m => m.MayAnh);
                        ViewBag.MayQuayPhim = listHaTangKyThuat.Sum(m => m.MayQuayPhim);
                        ViewBag.MayTinhBang = listHaTangKyThuat.Sum(m => m.MayTinhBang);
                        ViewBag.MayBan_DVTT = listHaTangKyThuat.Sum(m => m.MayBan_DVTT);
                        ViewBag.LapTop_DVTT = listHaTangKyThuat.Sum(m => m.LapTop_DVTT);
                        ViewBag.MayChu_DVTT = listHaTangKyThuat.Sum(m => m.MayChu_DVTT);
                        ViewBag.MayNoiMangInternet_DVTT = listHaTangKyThuat.Sum(m => m.MayNoiMangInternet_DVTT);
                        ViewBag.VirusCoBanQuyen_DVTT = listHaTangKyThuat.Sum(m => m.VirusCoBanQuyen_DVTT);
                        ViewBag.MayChieu_DVTT = listHaTangKyThuat.Sum(m => m.MayChieu_DVTT);
                        ViewBag.MayScan_DVTT = listHaTangKyThuat.Sum(m => m.MayScan_DVTT);
                        ViewBag.MayIn_DVTT = listHaTangKyThuat.Sum(m => m.MayIn_DVTT);
                        ViewBag.MayAnh_DVTT = listHaTangKyThuat.Sum(m => m.MayAnh_DVTT);
                        ViewBag.MayQuayPhim_DVTT = listHaTangKyThuat.Sum(m => m.MayQuayPhim_DVTT);
                        ViewBag.MayTinhBang_DVTT = listHaTangKyThuat.Sum(m => m.MayTinhBang_DVTT);
                        ViewBag.ADSL = listHaTangKyThuat.Sum(m => m.ADSL);
                        ViewBag.LeasedLine = listHaTangKyThuat.Sum(m => m.LeasedLine);
                        ViewBag.CapQuang = listHaTangKyThuat.Sum(m => m.CapQuang);
                        ViewBag.MangChuyenDung = listHaTangKyThuat.Sum(m => m.MangChuyenDung);
                        ViewBag.DungLuong_ADSL = listHaTangKyThuat.Sum(m => m.DungLuong_ADSL);
                        ViewBag.DungLuong_CapQuang = listHaTangKyThuat.Sum(m => m.DungLuong_CapQuang);
                        ViewBag.DungLuong_Leased = listHaTangKyThuat.Sum(m => m.DungLuong_Leased);
                        ViewBag.DungLuong_MangChuyenDung = listHaTangKyThuat.Sum(m => m.DungLuong_MangChuyenDung);
                        ViewBag.ManHinh_LichCongTac = listHaTangKyThuat.Sum(m => m.ManHinh_LichCongTac);
                        ViewBag.ManHinh_TraCuuTTHC = listHaTangKyThuat.Sum(m => m.ManHinh_TraCuuTTHC);
                        ViewBag.TongMucDauTu = listHaTangKyThuat.Sum(m => m.TongMucDauTu);
                        return PartialView("HaTangKyThuat", listHaTangKyThuat);
                        break;

                    case 11: // Hạ tầng nhân lực CNTT
                        var listHaTangNhanLuc = db.sp_GetHaTangNhanLuc(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listHaTangNhanLuc.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listHaTangNhanLuc.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listHaTangNhanLuc.Sum(m => m.SoCB_DVTT);
                        ViewBag.TienSy_DV = listHaTangNhanLuc.Sum(m => m.TienSy_DV);
                        ViewBag.ThacSy_DV = listHaTangNhanLuc.Sum(m => m.ThacSy_DV);
                        ViewBag.DaiHocChinhQuy_DV = listHaTangNhanLuc.Sum(m => m.DaiHocChinhQuy_DV);
                        ViewBag.DaiHocKhongChinhQuy_DV = listHaTangNhanLuc.Sum(m => m.DaiHocKhongChinhQuy_DV);
                        ViewBag.LuotTapHuan_DV = listHaTangNhanLuc.Sum(m => m.LuotTapHuan_DV);
                        ViewBag.SoLuongCanBo_DV = listHaTangNhanLuc.Sum(m => m.SoLuongCanBo_DV);
                        ViewBag.TienSy_DVTT = listHaTangNhanLuc.Sum(m => m.TienSy_DVTT);
                        ViewBag.ThacSy_DVTT = listHaTangNhanLuc.Sum(m => m.ThacSy_DVTT);
                        ViewBag.DaiHocChinhQuy_DVTT = listHaTangNhanLuc.Sum(m => m.DaiHocChinhQuy_DVTT);
                        ViewBag.DaiHocKhongChinhQuy_DVTT = listHaTangNhanLuc.Sum(m => m.DaiHocKhongChinhQuy_DVTT);
                        ViewBag.LuotTapHuan_DVTT = listHaTangNhanLuc.Sum(m => m.LuotTapHuan_DVTT);
                        ViewBag.SoLuongCanBo_DVTT = listHaTangNhanLuc.Sum(m => m.SoLuongCanBo_DVTT);
                        ViewBag.ThanhThaoMayTinh_DV = listHaTangNhanLuc.Sum(m => m.ThanhThaoMayTinh_DV);
                        ViewBag.LuotTapHuanThanhThaoMayTinh_DV = listHaTangNhanLuc.Sum(m => m.LuotTapHuanThanhThaoMayTinh_DV);
                        ViewBag.ThanhThaoMayTinh_DVTT = listHaTangNhanLuc.Sum(m => m.ThanhThaoMayTinh_DVTT);
                        ViewBag.LuotTapHuanThanhThaoMayTinh_DVTT = listHaTangNhanLuc.Sum(m => m.LuotTapHuanThanhThaoMayTinh_DVTT);
                        ViewBag.TongMucDauTu = listHaTangNhanLuc.Sum(m => m.TongMucDauTu);
                        return PartialView("HaTangNhanLuc", listHaTangNhanLuc);
                        break;

                    case 12: // Ứng dụng CNTT
                        var listUngDungCNTT = db.sp_GetUngDungCNTT(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listUngDungCNTT.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listUngDungCNTT.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listUngDungCNTT.Sum(m => m.SoCB_DVTT);
                        ViewBag.SoTTHC = listUngDungCNTT.Sum(m => m.SoTTHC);
                        ViewBag.DV_LienThong = listUngDungCNTT.Sum(m => m.DV_LienThong);
                        ViewBag.VBDi = listUngDungCNTT.Sum(m => m.VBDi);
                        ViewBag.VBDen = listUngDungCNTT.Sum(m => m.VBDen);
                        ViewBag.TongSo_VBDi = listUngDungCNTT.Sum(m => m.TongSo_VBDi);
                        ViewBag.TongSo_VBDen = listUngDungCNTT.Sum(m => m.TongSo_VBDen);
                        ViewBag.SoEmail = listUngDungCNTT.Sum(m => m.SoEmail);
                        ViewBag.OpenOffice = listUngDungCNTT.Sum(m => m.OpenOffice);
                        ViewBag.MozillaThunderBird = listUngDungCNTT.Sum(m => m.MozillaThunderBird);
                        ViewBag.MozillaFireFox = listUngDungCNTT.Sum(m => m.MozillaFireFox);
                        ViewBag.Unikey = listUngDungCNTT.Sum(m => m.Unikey);
                        ViewBag.PMNM = listUngDungCNTT.Sum(m => m.PMNM);
                        ViewBag.PMNM_MayChu = listUngDungCNTT.Sum(m => m.PMNM_MayChu);
                        ViewBag.TongMucDauTu = listUngDungCNTT.Sum(m => m.TongMucDauTu);
                        return PartialView("UngDungCNTT", listUngDungCNTT);
                        break;

                    case 14: // Cổng thông tin điện tử
                        var listCongTTDT = db.sp_GetCongThongTinDienTu(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listCongTTDT.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listCongTTDT.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listCongTTDT.Sum(m => m.SoCB_DVTT);
                        ViewData["VanBanChiDao"] = listCongTTDT.Sum(m => m.VanBanChiDao);
                        ViewData["VanBanChiDao_DangTai"] = listCongTTDT.Sum(m => m.VanBanChiDao_DangTai);
                        ViewData["TTHC_DonVi"] = listCongTTDT.Sum(m => m.TTHC_DonVi);
                        ViewData["DVC1"] = listCongTTDT.Sum(m => m.DVC1);
                        ViewData["DVC2"] = listCongTTDT.Sum(m => m.DVC2);
                        ViewData["DVC3"] = listCongTTDT.Sum(m => m.DVC3);
                        ViewData["TongMucDauTu"] = listCongTTDT.Sum(m => m.TongMucDauTu);
                        return PartialView("CongThongTinDienTu", listCongTTDT);
                        break;

                    case 15: // Hạ tầng kỹ thuật CNTT cấp Huyện
                        var listHaTangKyThuatCapHuyen = db.sp_GetHaTangKyThuatCapHuyen(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listHaTangKyThuatCapHuyen.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listHaTangKyThuatCapHuyen.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listHaTangKyThuatCapHuyen.Sum(m => m.SoCB_DVTT);
                        ViewBag.ADSL = listHaTangKyThuatCapHuyen.Sum(m => m.ADSL);
                        ViewBag.LeadedLine = listHaTangKyThuatCapHuyen.Sum(m => m.LeadedLine);
                        ViewBag.CapQuang = listHaTangKyThuatCapHuyen.Sum(m => m.CapQuang);
                        ViewBag.Khac = listHaTangKyThuatCapHuyen.Sum(m => m.Khac);
                        ViewBag.UBND_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.UBND_MayBan);
                        ViewBag.UBND_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.UBND_LapTop);
                        ViewBag.UBND_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.UBND_MayChu);
                        ViewBag.UBND_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.UBND_VirusBanQuyen);
                        ViewBag.UBND_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.UBND_Internet);
                        ViewBag.UBND_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.UBND_MangCD);
                        ViewBag.HuyenUy_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.HuyenUy_MayBan);
                        ViewBag.HuyenUy_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.HuyenUy_LapTop);
                        ViewBag.HuyenUy_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.HuyenUy_MayChu);
                        ViewBag.HuyenUy_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.HuyenUy_VirusBanQuyen);
                        ViewBag.HuyenUy_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.HuyenUy_Internet);
                        ViewBag.HuyenUy_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.HuyenUy_MangCD);
                        ViewBag.Xa_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.Xa_MayBan);
                        ViewBag.Xa_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.Xa_LapTop);
                        ViewBag.Xa_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.Xa_MayChu);
                        ViewBag.Xa_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.Xa_VirusBanQuyen);
                        ViewBag.Xa_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.Xa_Internet);
                        ViewBag.Xa_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.Xa_MangCD);
                        ViewBag.GiaoDuc_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.GiaoDuc_MayBan);
                        ViewBag.GiaoDuc_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.GiaoDuc_LapTop);
                        ViewBag.GiaoDuc_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.GiaoDuc_MayChu);
                        ViewBag.GiaoDuc_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.GiaoDuc_VirusBanQuyen);
                        ViewBag.GiaoDuc_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.GiaoDuc_Internet);
                        ViewBag.GiaoDuc_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.GiaoDuc_MangCD);
                        ViewBag.YTe_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.YTe_MayBan);
                        ViewBag.YTe_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.YTe_LapTop);
                        ViewBag.YTe_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.YTe_MayChu);
                        ViewBag.YTe_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.YTe_VirusBanQuyen);
                        ViewBag.YTe_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.YTe_Internet);
                        ViewBag.YTe_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.YTe_MangCD);
                        ViewBag.Khac_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.Khac_MayBan);
                        ViewBag.Khac_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.Khac_LapTop);
                        ViewBag.Khac_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.Khac_MayChu);
                        ViewBag.Khac_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.Khac_VirusBanQuyen);
                        ViewBag.Khac_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.Khac_Internet);
                        ViewBag.Khac_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.Khac_MangCD);
                        ViewBag.VHX_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.VHX_MayBan);
                        ViewBag.VHX_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.VHX_LapTop);
                        ViewBag.VHX_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.VHX_MayChu);
                        ViewBag.VHX_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.VHX_VirusBanQuyen);
                        ViewBag.VHX_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.VHX_Internet);
                        ViewBag.VHX_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.VHX_MangCD);
                        ViewBag.DoanhNghiep_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.DoanhNghiep_MayBan);
                        ViewBag.DoanhNghiep_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.DoanhNghiep_LapTop);
                        ViewBag.DoanhNghiep_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.DoanhNghiep_MayChu);
                        ViewBag.DoanhNghiep_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.DoanhNghiep_VirusBanQuyen);
                        ViewBag.DoanhNghiep_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.DoanhNghiep_Internet);
                        ViewBag.DoanhNghiep_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.DoanhNghiep_MangCD);
                        ViewBag.HoGiaDinh_MayBan = listHaTangKyThuatCapHuyen.Sum(m => m.HoGiaDinh_MayBan);
                        ViewBag.HoGiaDinh_LapTop = listHaTangKyThuatCapHuyen.Sum(m => m.HoGiaDinh_LapTop);
                        ViewBag.HoGiaDinh_MayChu = listHaTangKyThuatCapHuyen.Sum(m => m.HoGiaDinh_MayChu);
                        ViewBag.HoGiaDinh_VirusBanQuyen = listHaTangKyThuatCapHuyen.Sum(m => m.HoGiaDinh_VirusBanQuyen);
                        ViewBag.HoGiaDinh_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.HoGiaDinh_Internet);
                        ViewBag.HoGiaDinh_MangCD = listHaTangKyThuatCapHuyen.Sum(m => m.HoGiaDinh_MangCD);
                        ViewBag.KhongKetNoiInternet = listHaTangKyThuatCapHuyen.Sum(m => m.KhongKetNoiInternet);
                        ViewBag.BuuDienXa = listHaTangKyThuatCapHuyen.Sum(m => m.BuuDienXa);
                        ViewBag.BuuDienXa_Internet = listHaTangKyThuatCapHuyen.Sum(m => m.BuuDienXa_Internet);
                        ViewBag.BuuDienXa_DaiLyInternet = listHaTangKyThuatCapHuyen.Sum(m => m.BuuDienXa_DaiLyInternet);
                        ViewBag.SoCuocHopCapHuyen = listHaTangKyThuatCapHuyen.Sum(m => m.SoCuocHopCapHuyen);
                        ViewBag.SoCuocHopCapXa = listHaTangKyThuatCapHuyen.Sum(m => m.SoCuocHopCapXa);
                        ViewBag.TongChiNganSach = listHaTangKyThuatCapHuyen.Sum(m => m.TongChiNganSach);
                        ViewBag.TongMucDauTu = listHaTangKyThuatCapHuyen.Sum(m => m.TongMucDauTu);
                        return PartialView("HaTangKyThuatCapHuyen", listHaTangKyThuatCapHuyen);
                        break;

                    case 16: // Hạ tầng nhân lực CNTT cấp Huyện
                        var listHaTangNhanLucCapHuyen = db.sp_GetHaTangNhanLucCapHuyen(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.TieuHoc_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_SoTruong);
                        ViewBag.TieuHoc_TinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_TinHoc);
                        ViewBag.TieuHoc_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_NganhCNTT);
                        ViewBag.TieuHoc_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_KhoaCNTT);
                        ViewBag.TieuHoc_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_GVCNTT);
                        ViewBag.TieuHoc_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_TSCNTT);
                        ViewBag.TieuHoc_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_ThSCNTT);
                        ViewBag.TieuHoc_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TieuHoc_SVCNTT);
                        ViewBag.THCS_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_SoTruong);
                        ViewBag.THCS_TinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_TinHoc);
                        ViewBag.THCS_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_NganhCNTT);
                        ViewBag.THCS_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_KhoaCNTT);
                        ViewBag.THCS_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_GVCNTT);
                        ViewBag.THCS_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_TSCNTT);
                        ViewBag.THCS_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_ThSCNTT);
                        ViewBag.THCS_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THCS_SVCNTT);
                        ViewBag.THPT_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_SoTruong);
                        ViewBag.THPT_TinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_TinHoc);
                        ViewBag.THPT_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_NganhCNTT);
                        ViewBag.THPT_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_KhoaCNTT);
                        ViewBag.THPT_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_GVCNTT);
                        ViewBag.THPT_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_TSCNTT);
                        ViewBag.THPT_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_ThSCNTT);
                        ViewBag.THPT_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.THPT_SVCNTT);
                        ViewBag.TrungCap_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_SoTruong);
                        ViewBag.TrungCap_TinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_TinHoc);
                        ViewBag.TrungCap_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_NganhCNTT);
                        ViewBag.TrungCap_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_KhoaCNTT);
                        ViewBag.TrungCap_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_GVCNTT);
                        ViewBag.TrungCap_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_TSCNTT);
                        ViewBag.TrungCap_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_ThSCNTT);
                        ViewBag.TrungCap_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.TrungCap_SVCNTT);
                        ViewBag.CaoDang_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_SoTruong);
                        ViewBag.CaoDang_MonTinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_MonTinHoc);
                        ViewBag.CaoDang_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_NganhCNTT);
                        ViewBag.CaoDang_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_KhoaCNTT);
                        ViewBag.CaoDang_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_GVCNTT);
                        ViewBag.CaoDang_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_TSCNTT);
                        ViewBag.CaoDang_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_ThSCNTT);
                        ViewBag.CaoDang_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CaoDang_SVCNTT);
                        ViewBag.DaiHoc_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_SoTruong);
                        ViewBag.DaiHoc_MonTinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_MonTinHoc);
                        ViewBag.DaiHoc_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_NganhCNTT);
                        ViewBag.DaiHoc_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_KhoaCNTT);
                        ViewBag.DaiHoc_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_GVCNTT);
                        ViewBag.DaiHoc_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_TSCNTT);
                        ViewBag.DaiHoc_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_ThSCNTT);
                        ViewBag.DaiHoc_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DaiHoc_SVCNTT);
                        ViewBag.Khac_SoTruong = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_SoTruong);
                        ViewBag.Khac_MonTinHoc = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_MonTinHoc);
                        ViewBag.Khac_NganhCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_NganhCNTT);
                        ViewBag.Khac_KhoaCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_KhoaCNTT);
                        ViewBag.Khac_GVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_GVCNTT);
                        ViewBag.Khac_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_TSCNTT);
                        ViewBag.Khac_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_ThSCNTT);
                        ViewBag.Khac_SVCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Khac_SVCNTT);
                        ViewBag.CBCT_Huyen_SoLuong = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_SoLuong);
                        ViewBag.CBCT_Huyen_TienSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_TienSy);
                        ViewBag.CBCT_Huyen_ThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_ThacSy);
                        ViewBag.CBCT_Huyen_DHCQ = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_DHCQ);
                        ViewBag.CBCT_Huyen_DHKhongCQ = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_DHKhongCQ);
                        ViewBag.CBCT_Huyen_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_HocThacSy);
                        ViewBag.CBCT_Huyen_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_NghienCuuSinh);
                        ViewBag.CBCT_Huyen_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Huyen_LuotTapHuan);
                        ViewBag.CBCT_Xa_SoLuong = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_SoLuong);
                        ViewBag.CBCT_Xa_TienSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_TienSy);
                        ViewBag.CBCT_Xa_ThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_ThacSy);
                        ViewBag.CBCT_Xa_DHCQ = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_DHCQ);
                        ViewBag.CBCT_Xa_DHKhongCQ = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_DHKhongCQ);
                        ViewBag.CBCT_Xa_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_HocThacSy);
                        ViewBag.CBCT_Xa_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_NghienCuuSinh);
                        ViewBag.CBCT_Xa_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.CBCT_Xa_LuotTapHuan);
                        ViewBag.UBND_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.UBND_ThanhThao);
                        ViewBag.UBND_ThamGiaTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.UBND_ThamGiaTapHuan);
                        ViewBag.UBND_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.UBND_TSCNTT);
                        ViewBag.UBND_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.UBND_ThSCNTT);
                        ViewBag.UBND_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.UBND_HocThacSy);
                        ViewBag.UBND_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.UBND_NghienCuuSinh);
                        ViewBag.HuyenUy_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.HuyenUy_ThanhThao);
                        ViewBag.HuyenUy_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.HuyenUy_LuotTapHuan);
                        ViewBag.HuyenUy_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.HuyenUy_TSCNTT);
                        ViewBag.HuyenUy_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.HuyenUy_ThSCNTT);
                        ViewBag.HuyenUy_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.HuyenUy_HocThacSy);
                        ViewBag.HuyenUy_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.HuyenUy_NghienCuuSinh);
                        ViewBag.Xa_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.Xa_ThanhThao);
                        ViewBag.Xa_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.Xa_LuotTapHuan);
                        ViewBag.Xa_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Xa_TSCNTT);
                        ViewBag.Xa_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.Xa_ThSCNTT);
                        ViewBag.Xa_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.Xa_HocThacSy);
                        ViewBag.Xa_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.Xa_NghienCuuSinh);
                        ViewBag.GiaoDuc_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.GiaoDuc_ThanhThao);
                        ViewBag.GiaoDuc_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.GiaoDuc_LuotTapHuan);
                        ViewBag.GiaoDuc_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.GiaoDuc_TSCNTT);
                        ViewBag.GiaoDuc_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.GiaoDuc_ThSCNTT);
                        ViewBag.GiaoDuc_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.GiaoDuc_HocThacSy);
                        ViewBag.GiaoDuc_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.GiaoDuc_NghienCuuSinh);
                        ViewBag.YTe_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.YTe_ThanhThao);
                        ViewBag.YTe_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.YTe_LuotTapHuan);
                        ViewBag.YTe_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.YTe_TSCNTT);
                        ViewBag.YTe_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.YTe_ThSCNTT);
                        ViewBag.YTe_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.YTe_HocThacSy);
                        ViewBag.YTe_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.YTe_NghienCuuSinh);
                        ViewBag.DVSN_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.DVSN_ThanhThao);
                        ViewBag.DVSN_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.DVSN_LuotTapHuan);
                        ViewBag.DVSN_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DVSN_TSCNTT);
                        ViewBag.DVSN_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DVSN_ThSCNTT);
                        ViewBag.DVSN_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.DVSN_HocThacSy);
                        ViewBag.DVSN_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.DVSN_NghienCuuSinh);
                        ViewBag.DN_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.DN_ThanhThao);
                        ViewBag.DN_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.DN_LuotTapHuan);
                        ViewBag.DN_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DN_TSCNTT);
                        ViewBag.DN_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.DN_ThSCNTT);
                        ViewBag.DN_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.DN_HocThacSy);
                        ViewBag.DN_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.DN_NghienCuuSinh);
                        ViewBag.CBCCVC_Khac_ThanhThao = listHaTangNhanLucCapHuyen.Sum(m => m.CBCCVC_Khac_ThanhThao);
                        ViewBag.CBCCVC_Khac_LuotTapHuan = listHaTangNhanLucCapHuyen.Sum(m => m.CBCCVC_Khac_LuotTapHuan);
                        ViewBag.CBCCVC_Khac_TSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CBCCVC_Khac_TSCNTT);
                        ViewBag.CBCCVC_Khac_ThSCNTT = listHaTangNhanLucCapHuyen.Sum(m => m.CBCCVC_Khac_ThSCNTT);
                        ViewBag.CBCCVC_Khac_HocThacSy = listHaTangNhanLucCapHuyen.Sum(m => m.CBCCVC_Khac_HocThacSy);
                        ViewBag.CBCCVC_Khac_NghienCuuSinh = listHaTangNhanLucCapHuyen.Sum(m => m.CBCCVC_Khac_NghienCuuSinh);
                        ViewBag.TongChiNganSach = listHaTangNhanLucCapHuyen.Sum(m => m.TongChiNganSach);
                        ViewBag.TongMucDauTu = listHaTangNhanLucCapHuyen.Sum(m => m.TongMucDauTu);
                        return PartialView("HaTangNhanLucCapHuyen", listHaTangNhanLucCapHuyen);
                        break;

                    case 20: // Cổng Thông Tin Điện Tử Cấp Huyện
                        var listCongTTDTCapHuyen = db.sp_GetCongThongTinDienTuCapHuyen(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listCongTTDTCapHuyen.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listCongTTDTCapHuyen.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listCongTTDTCapHuyen.Sum(m => m.SoCB_DVTT);

                        var listsum = db.sp_GetCongThongTinDienTuCapHuyen(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        sp_GetCongThongTinDienTuCapHuyen_Result objSum = new sp_GetCongThongTinDienTuCapHuyen_Result
                        {
                            SoSubsiteCapXa = listCongTTDTCapHuyen.Sum(o => o.SoSubsiteCapXa),
                            TTCD_TongSoVBChiDao_DonVi = listCongTTDTCapHuyen.Sum(o => o.TTCD_TongSoVBChiDao_DonVi),
                            TTCD_TongSoVBChiDao_DieuHanh = listCongTTDTCapHuyen.Sum(o => o.TTCD_TongSoVBChiDao_DieuHanh),
                            TongSoTTHC_DV = listCongTTDTCapHuyen.Sum(o => o.TongSoTTHC_DV),
                            TongSoDVC_Muc1 = listCongTTDTCapHuyen.Sum(o => o.TongSoDVC_Muc1),
                            TongSoDVC_Muc2 = listCongTTDTCapHuyen.Sum(o => o.TongSoDVC_Muc2),
                            TongSoDVC_Muc3 = listCongTTDTCapHuyen.Sum(o => o.TongSoDVC_Muc3),
                            TongSoDVTT_CoCongTTDT = listCongTTDTCapHuyen.Sum(o => o.TongSoDVTT_CoCongTTDT),
                            SoDNSXKD_PhanCung = listCongTTDTCapHuyen.Sum(o => o.SoDNSXKD_PhanCung),
                            SoDNSXKD_PhanMem = listCongTTDTCapHuyen.Sum(o => o.SoDNSXKD_PhanMem),
                            SoDNCungCapDVNDSo = listCongTTDTCapHuyen.Sum(o => o.SoDNCungCapDVNDSo),
                            TongDoanhThu = listCongTTDTCapHuyen.Sum(o => o.TongDoanhThu),
                            TongMucDauTu = listCongTTDTCapHuyen.Sum(o => o.TongMucDauTu)
                        };
                        ViewBag.ObjectSum = objSum;
                        return PartialView("CongThongTinDienTuCapHuyen", listCongTTDTCapHuyen);
                        break;

                    case 21: // Ứng Dụng CNTT Cấp Huyện
                        var listUngDungCNTTCapHuyen = db.sp_GetUngDungCNTTCapHuyen(model.NhomDonVi, model.DotBaoCao, model.Nam, model.TrangThai);
                        ViewBag.SoCBCC = listUngDungCNTTCapHuyen.Sum(m => m.SoCBCC);
                        ViewBag.SoDonViTrucThuoc = listUngDungCNTTCapHuyen.Sum(m => m.SoDonViTrucThuoc);
                        ViewBag.SoCB_DVTT = listUngDungCNTTCapHuyen.Sum(m => m.SoCB_DVTT);
                        ViewBag.SoTTHC_MotCuaDienTu = listUngDungCNTTCapHuyen.Sum(m => m.SoTTHC_MotCuaDienTu);
                        ViewBag.SoVBDi = listUngDungCNTTCapHuyen.Sum(m => m.SoVBDi);
                        ViewBag.SoVBDen = listUngDungCNTTCapHuyen.Sum(m => m.SoVBDen);
                        ViewBag.TongSoVBDi = listUngDungCNTTCapHuyen.Sum(m => m.TongSoVBDi);
                        ViewBag.TongSoVBDen = listUngDungCNTTCapHuyen.Sum(m => m.TongSoVBDen);
                        ViewBag.TongSoCBCCCapHuyenDungMail = listUngDungCNTTCapHuyen.Sum(m => m.TongSoCBCCCapHuyenDungMail);
                        ViewBag.TongSoCBCCCapXaDungMail = listUngDungCNTTCapHuyen.Sum(m => m.TongSoCBCCCapXaDungMail);
                        ViewBag.MamNon_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_CongTTDT);
                        ViewBag.MamNon_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_QLTaiChinh);
                        ViewBag.MamNon_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_QLCongSan);
                        ViewBag.MamNon_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_QLGiangDay);
                        ViewBag.MamNon_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_QLHSSV);
                        ViewBag.MamNon_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_QLThuVien);
                        ViewBag.MamNon_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_DeTaiKH);
                        ViewBag.MamNon_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.MamNon_QLThi);
                        ViewBag.TieuHoc_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_CongTTDT);
                        ViewBag.TieuHoc_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_QLTaiChinh);
                        ViewBag.TieuHoc_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_QLCongSan);
                        ViewBag.TieuHoc_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_QLGiangDay);
                        ViewBag.TieuHoc_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_QLHSSV);
                        ViewBag.TieuHoc_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_QLThuVien);
                        ViewBag.TieuHoc_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_DeTaiKH);
                        ViewBag.TieuHoc_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.TieuHoc_QLThi);
                        ViewBag.THCS_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.THCS_CongTTDT);
                        ViewBag.THCS_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.THCS_QLTaiChinh);
                        ViewBag.THCS_CongSan = listUngDungCNTTCapHuyen.Sum(m => m.THCS_CongSan);
                        ViewBag.THCS_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.THCS_QLGiangDay);
                        ViewBag.THCS_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.THCS_QLHSSV);
                        ViewBag.THCS_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.THCS_QLThuVien);
                        ViewBag.THCS_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.THCS_DeTaiKH);
                        ViewBag.THCS_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.THCS_QLThi);
                        ViewBag.THPT_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.THPT_CongTTDT);
                        ViewBag.THPT_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.THPT_QLTaiChinh);
                        ViewBag.THPT_CongSan = listUngDungCNTTCapHuyen.Sum(m => m.THPT_CongSan);
                        ViewBag.THPT_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.THPT_QLGiangDay);
                        ViewBag.THPT_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.THPT_QLHSSV);
                        ViewBag.THPT_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.THPT_QLThuVien);
                        ViewBag.THPT_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.THPT_DeTaiKH);
                        ViewBag.THPT_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.THPT_QLThi);
                        ViewBag.TrungCap_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_CongTTDT);
                        ViewBag.TrungCap_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_QLTaiChinh);
                        ViewBag.TrungCap_CongSan = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_CongSan);
                        ViewBag.TrungCap_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_QLGiangDay);
                        ViewBag.TrungCap_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_QLHSSV);
                        ViewBag.TrungCap_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_QLThuVien);
                        ViewBag.TrungCap_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_DeTaiKH);
                        ViewBag.TrungCap_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.TrungCap_QLThi);
                        ViewBag.CaoDang_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_CongTTDT);
                        ViewBag.CaoDang_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_QLTaiChinh);
                        ViewBag.CaoDang_CongSan = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_CongSan);
                        ViewBag.CaoDang_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_QLGiangDay);
                        ViewBag.CaoDang_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_QLHSSV);
                        ViewBag.CaoDang_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_QLThuVien);
                        ViewBag.CaoDang_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_DeTaiKH);
                        ViewBag.CaoDang_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.CaoDang_QLThi);
                        ViewBag.DaiHoc_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_CongTTDT);
                        ViewBag.DaiHoc_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_QLTaiChinh);
                        ViewBag.DaiHoc_CongSan = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_CongSan);
                        ViewBag.DaiHoc_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_QLGiangDay);
                        ViewBag.DaiHoc_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_QLHSSV);
                        ViewBag.DaiHoc_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_QLThuVien);
                        ViewBag.DaiHoc_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_DeTaiKH);
                        ViewBag.DaiHoc_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.DaiHoc_QLThi);
                        ViewBag.Khac_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.Khac_CongTTDT);
                        ViewBag.Khac_QLTaiChinh = listUngDungCNTTCapHuyen.Sum(m => m.Khac_QLTaiChinh);
                        ViewBag.Khac_CongSan = listUngDungCNTTCapHuyen.Sum(m => m.Khac_CongSan);
                        ViewBag.Khac_QLGiangDay = listUngDungCNTTCapHuyen.Sum(m => m.Khac_QLGiangDay);
                        ViewBag.Khac_QLHSSV = listUngDungCNTTCapHuyen.Sum(m => m.Khac_QLHSSV);
                        ViewBag.Khac_QLThuVien = listUngDungCNTTCapHuyen.Sum(m => m.Khac_QLThuVien);
                        ViewBag.Khac_DeTaiKH = listUngDungCNTTCapHuyen.Sum(m => m.Khac_DeTaiKH);
                        ViewBag.Khac_QLThi = listUngDungCNTTCapHuyen.Sum(m => m.Khac_QLThi);
                        ViewBag.TramXa_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_CongTTDT);
                        ViewBag.TramXa_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLTC);
                        ViewBag.TramXa_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLNhanSu);
                        ViewBag.TramXa_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLBenhAn);
                        ViewBag.TramXa_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLTacNghiep);
                        ViewBag.TramXa_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLThuoc);
                        ViewBag.TramXa_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLGiuongBenh);
                        ViewBag.TramXa_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_QLCongSan);
                        ViewBag.TramXa_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.TramXa_KhamTuXa);
                        ViewBag.BenhVien_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_CongTTDT);
                        ViewBag.BenhVien_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLTC);
                        ViewBag.BenhVien_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLNhanSu);
                        ViewBag.BenhVien_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLBenhAn);
                        ViewBag.BenhVien_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLTacNghiep);
                        ViewBag.BenhVien_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLThuoc);
                        ViewBag.BenhVien_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLGiuongBenh);
                        ViewBag.BenhVien_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_QLCongSan);
                        ViewBag.BenhVien_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.BenhVien_KhamTuXa);
                        ViewBag.DuPhong_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_CongTTDT);
                        ViewBag.DuPhong_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLTC);
                        ViewBag.DuPhong_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLNhanSu);
                        ViewBag.DuPhong_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLBenhAn);
                        ViewBag.DuPhong_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLTacNghiep);
                        ViewBag.DuPhong_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLThuoc);
                        ViewBag.DuPhong_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLGiuongBenh);
                        ViewBag.DuPhong_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_QLCongSan);
                        ViewBag.DuPhong_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.DuPhong_KhamTuXa);
                        ViewBag.SotRet_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_CongTTDT);
                        ViewBag.SotRet_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLTC);
                        ViewBag.SotRet_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLNhanSu);
                        ViewBag.SotRet_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLBenhAn);
                        ViewBag.SotRet_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLTacNghiep);
                        ViewBag.SotRet_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLThuoc);
                        ViewBag.SotRet_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLGiuongBenh);
                        ViewBag.SotRet_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_QLCongSan);
                        ViewBag.SotRet_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.SotRet_KhamTuXa);
                        ViewBag.HIVAIDS_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_CongTTDT);
                        ViewBag.HIVAIDS_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLTC);
                        ViewBag.HIVAIDS_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLNhanSu);
                        ViewBag.HIVAIDS_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLBenhAn);
                        ViewBag.HIVAIDS_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLTacNghiep);
                        ViewBag.HIVAIDS_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLThuoc);
                        ViewBag.HIVAIDS_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLGiuongBenh);
                        ViewBag.HIVAIDS_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_QLCongSan);
                        ViewBag.HIVAIDS_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.HIVAIDS_KhamTuXa);
                        ViewBag.SinhSan_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_CongTTDT);
                        ViewBag.SinhSan_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLTC);
                        ViewBag.SinhSan_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLNhanSu);
                        ViewBag.SinhSan_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLBenhAn);
                        ViewBag.SinhSan_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLTacNghiep);
                        ViewBag.SinhSan_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLThuoc);
                        ViewBag.SinhSan_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLGiuongBenh);
                        ViewBag.SinhSan_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_QLCongSan);
                        ViewBag.SinhSan_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.SinhSan_KhamTuXa);
                        ViewBag.DaLieu_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_CongTTDT);
                        ViewBag.DaLieu_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLTC);
                        ViewBag.DaLieu_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLNhanSu);
                        ViewBag.DaLieu_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLBenhAn);
                        ViewBag.DaLieu_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLTacNghiep);
                        ViewBag.DaLieu_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLThuoc);
                        ViewBag.DaLieu_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLGiuongBenh);
                        ViewBag.DaLieu_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_QLCongSan);
                        ViewBag.DaLieu_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.DaLieu_KhamTuXa);
                        ViewBag.Mat_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.Mat_CongTTDT);
                        ViewBag.Mat_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLTC);
                        ViewBag.Mat_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLNhanSu);
                        ViewBag.Mat_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLBenhAn);
                        ViewBag.Mat_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLTacNghiep);
                        ViewBag.Mat_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLThuoc);
                        ViewBag.Mat_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLGiuongBenh);
                        ViewBag.Mat_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.Mat_QLCongSan);
                        ViewBag.Mat_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.Mat_KhamTuXa);
                        ViewBag.DKTinh_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_CongTTDT);
                        ViewBag.DKTinh_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLTC);
                        ViewBag.DKTinh_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLNhanSu);
                        ViewBag.DKTinh_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLBenhAn);
                        ViewBag.DKTinh_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLTacNghiep);
                        ViewBag.DKTinh_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLThuoc);
                        ViewBag.DKTinh_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLGiuongBenh);
                        ViewBag.DKTinh_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_QLCongSan);
                        ViewBag.DKTinh_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.DKTinh_KhamTuXa);
                        ViewBag.DieuDuong_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_CongTTDT);
                        ViewBag.DieuDuong_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLTC);
                        ViewBag.DieuDuong_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLNhanSu);
                        ViewBag.DieuDuong_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLBenhAn);
                        ViewBag.DieuDuong_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLTacNghiep);
                        ViewBag.DieuDuong_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLThuoc);
                        ViewBag.DieuDuong_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLGiuongBenh);
                        ViewBag.DieuDuong_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_QLCongSan);
                        ViewBag.DieuDuong_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.DieuDuong_KhamTuXa);
                        ViewBag.LaoPhoi_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_CongTTDT);
                        ViewBag.LaoPhoi_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLTC);
                        ViewBag.LaoPhoi_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLNhanSu);
                        ViewBag.LaoPhoi_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLBenhAn);
                        ViewBag.LaoPhoi_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLTacNghiep);
                        ViewBag.LaoPhoi_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLThuoc);
                        ViewBag.LaoPhoi_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLGiuongBenh);
                        ViewBag.LaoPhoi_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_QLCongSan);
                        ViewBag.LaoPhoi_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.LaoPhoi_KhamTuXa);
                        ViewBag.YHoc_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_CongTTDT);
                        ViewBag.YHoc_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_QLTC);
                        ViewBag.YHoc_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_QLNhanSu);
                        ViewBag.YHoc_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_QLBenhAn);
                        ViewBag.YHoc_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_QLTacNghiep);
                        ViewBag.YHoc_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_QLThuoc);
                        ViewBag.YHoc_GiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_GiuongBenh);
                        ViewBag.YHoc_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_QLCongSan);
                        ViewBag.YHoc_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.YHoc_KhamTuXa);
                        ViewBag.TamThan_CongTTDT = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_CongTTDT);
                        ViewBag.TamThan_QLTC = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLTC);
                        ViewBag.TamThan_QLNhanSu = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLNhanSu);
                        ViewBag.TamThan_QLBenhAn = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLBenhAn);
                        ViewBag.TamThan_QLTacNghiep = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLTacNghiep);
                        ViewBag.TamThan_QLThuoc = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLThuoc);
                        ViewBag.TamThan_QLGiuongBenh = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLGiuongBenh);
                        ViewBag.TamThan_QLCongSan = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_QLCongSan);
                        ViewBag.TamThan_KhamTuXa = listUngDungCNTTCapHuyen.Sum(m => m.TamThan_KhamTuXa);
                        ViewBag.SuNghiep_KeToan = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_KeToan);
                        ViewBag.SuNghiep_ERP = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_ERP);
                        ViewBag.SuNghiep_QLVatTu = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_QLVatTu);
                        ViewBag.SuNghiep_Luong = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_Luong);
                        ViewBag.SuNghiep_BanHang = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_BanHang);
                        ViewBag.SuNghiep_GDDTTinh = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_GDDTTinh);
                        ViewBag.SuNghiep_Khac = listUngDungCNTTCapHuyen.Sum(m => m.SuNghiep_Khac);
                        ViewBag.CNTT_KeToan = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_KeToan);
                        ViewBag.CNTT_ERP = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_ERP);
                        ViewBag.CNTT_QLVatTu = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_QLVatTu);
                        ViewBag.CNTT_Luong = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_Luong);
                        ViewBag.CNTT_BanHang = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_BanHang);
                        ViewBag.CNTT_GDDTTinh = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_GDDTTinh);
                        ViewBag.CNTT_Khac = listUngDungCNTTCapHuyen.Sum(m => m.CNTT_Khac);
                        ViewBag.Khac_KeToan = listUngDungCNTTCapHuyen.Sum(m => m.Khac_KeToan);
                        ViewBag.Khac_ERP = listUngDungCNTTCapHuyen.Sum(m => m.Khac_ERP);
                        ViewBag.Khac_QLVatTu = listUngDungCNTTCapHuyen.Sum(m => m.Khac_QLVatTu);
                        ViewBag.Khac_Luong = listUngDungCNTTCapHuyen.Sum(m => m.Khac_Luong);
                        ViewBag.Khac_BanHang = listUngDungCNTTCapHuyen.Sum(m => m.Khac_BanHang);
                        ViewBag.Khac_GDDTTinh = listUngDungCNTTCapHuyen.Sum(m => m.Khac_GDDTTinh);
                        ViewBag.Khac_Khac = listUngDungCNTTCapHuyen.Sum(m => m.Khac_Khac);
                        ViewBag.TongMucDauTu = listUngDungCNTTCapHuyen.Sum(m => m.TongMucDauTu);
                        ViewBag.SoXaLienThongPhanMem = listUngDungCNTTCapHuyen.Sum(m => m.SoXaLienThongPhanMem);
                        return PartialView("UngDungCNTTCapHuyen", listUngDungCNTTCapHuyen);
                        break;
                    default:
                        return PartialView("ToChucChinhSachCNTT");
                        break;
                }
            }
            catch (DbEntityValidationException ex)
            {
                var exc = new ExceptionViewer();
                exc.GetError(ex);
            }

            return PartialView();
        }
Пример #3
0
        /// <summary>
        /// Phê duyệt hồ sơ , chỉ có quyền giám đốc là có
        /// </summary>
        /// <param name="maHoSo"></param>
        /// <returns></returns>
        public ActionResult PheDuyet(string maHoSo)
        {
            if (String.IsNullOrEmpty(maHoSo)) return Json(new { msg = "Không tìm thấy mã hồ sơ" });
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null)
            {
                return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            }
            else
            {
                // Kiểm tra quyền phê duyệt hồ sơ
                var per = CheckPermission(user);
                if (!per.isSuccess) return Content("Bạn không có quyền thực hiện chức năng này");

                var objHoSo = db.TD_HoSoDuAn.FirstOrDefault(o => o.MaHoSo == maHoSo);
                if (objHoSo == null) return Json(new { msg = "Không tìm thấy mã hồ sơ" });
                else
                {
                    try
                    {
                        var objLuongCVCuoi = db.sp_GetMaxLuongCongViecByMaHoSo(maHoSo).FirstOrDefault();
                        var luongCha_ID = objLuongCVCuoi.LuongCha_ID;
                        var sttMax = objLuongCVCuoi.STT;
                        var objLuongCV = new TD_LuongCongViec
                        {
                            Cap_ID = STTCapXuLy.DaPheDuyet,
                            LuongCha_ID = luongCha_ID,
                            MaHoSo = maHoSo,
                            NgayGui = DateTime.Now,
                            NgayHenTra = DateTime.Now,
                            NguoiGui = user.UserName,
                            NguoiNhan = user.UserName,
                            NoiDung = "Đã phê duyệt",
                            STT = sttMax + 1,
                            TrangThai = TrangThai.HoatDong
                        };
                        db.TD_LuongCongViec.Add(objLuongCV);
                        db.SaveChanges();
                        return Json(new { ok = "ok" });
                    }
                    catch (DbEntityValidationException ex)
                    {
                        var exc = new ExceptionViewer();
                        exc.GetError(ex);
                        return Json(new { msg = "Có lỗi trong quá trình xử lý" });
                    }
                }
            }
        }
Пример #4
0
        //[ValidateAntiForgeryToken]
        //public ActionResult UpdateThongTinChung(TD_HoSoDuAn tD_HoSoDuAn, List<TD_FileHoSoDinhKem> listFile, HttpPostedFileBase upload_0, HttpPostedFileBase upload_1, HttpPostedFileBase upload_2)
        public ActionResult UpdateThongTinChung(TD_HoSoDuAn tD_HoSoDuAn, List<TD_FileHoSoDinhKem> listFile, List<HttpPostedFileBase> listFileUp)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null)
                return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });

            // Kiểm tra quyền truy cập và cập nhật
            var per = CheckPermission(user);
            if (!per.isEdit)
                return Content("Bạn không có quyền thực hiện chức năng này");

            var obj = db.TD_HoSoDuAn.FirstOrDefault(o => o.HoSoDuAn_ID == tD_HoSoDuAn.HoSoDuAn_ID);
            ModelState.Remove("TenDuAn");
            if (ModelState.IsValid)
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    try
                    {
                        // Mapping obj in db
                        obj.str1 = tD_HoSoDuAn.str1;
                        obj.NhaThau = tD_HoSoDuAn.NhaThau;
                        obj.MucTieu = obj.MucTieu;
                        obj.QuyMo = tD_HoSoDuAn.QuyMo;
                        obj.DiaDiem = tD_HoSoDuAn.DiaDiem;
                        obj.NguonVon = tD_HoSoDuAn.NguonVon;
                        obj.HinhThucQuanLy_ID = tD_HoSoDuAn.HinhThucQuanLy_ID;
                        obj.HinhThucQuanLyKhac = tD_HoSoDuAn.HinhThucQuanLyKhac;
                        obj.int1 = tD_HoSoDuAn.int1;
                        obj.int2 = tD_HoSoDuAn.int2;
                        obj.QuyTrinhQuanLy = tD_HoSoDuAn.QuyTrinhQuanLy;
                        obj.NhomDuAn_ID = tD_HoSoDuAn.NhomDuAn_ID;
                        obj.LoaiDuAn_ID = tD_HoSoDuAn.LoaiDuAn_ID;
                        obj.TinhChatDuAn_ID = tD_HoSoDuAn.TinhChatDuAn_ID;
                        obj.TinhTrangThucHien = tD_HoSoDuAn.TinhTrangThucHien;
                        obj.TongMucDauTu = tD_HoSoDuAn.TongMucDauTu;
                        obj.ChiPhiXayLap = tD_HoSoDuAn.ChiPhiXayLap;
                        obj.ChiPhiThietBi = tD_HoSoDuAn.ChiPhiThietBi;
                        obj.ChiPhiQuanLy = tD_HoSoDuAn.ChiPhiQuanLy;
                        obj.ChiPhiTuVan = tD_HoSoDuAn.ChiPhiTuVan;
                        obj.ChiPhiKhac = tD_HoSoDuAn.ChiPhiKhac;
                        obj.ChiPhiDuPhong = tD_HoSoDuAn.ChiPhiDuPhong;
                        obj.NganSachTrungUong = tD_HoSoDuAn.NganSachTrungUong;
                        obj.NganSachTinh = tD_HoSoDuAn.NganSachTinh;
                        obj.NganSachDonVi = tD_HoSoDuAn.NganSachDonVi;
                        obj.NguonKhac = tD_HoSoDuAn.NguonKhac;
                        obj.HangMucTrienKhai = tD_HoSoDuAn.HangMucTrienKhai;
                        obj.ThoiGianHoanThanh = tD_HoSoDuAn.ThoiGianHoanThanh;
                        obj.SanPhamHangMuc = tD_HoSoDuAn.SanPhamHangMuc;
                        obj.KinhPhiThucHienHangMuc = tD_HoSoDuAn.KinhPhiThucHienHangMuc;
                        obj.KetQuaDauTu = tD_HoSoDuAn.KetQuaDauTu;

                        db.Entry(obj).State = EntityState.Modified;
                        db.SaveChanges();

                        // Lưu file vào hệ thống
                        List<TD_FileHoSoDinhKem> list = (List<TD_FileHoSoDinhKem>)TempData["TD_FileHoSoDinhKem_" + user.Id];
                        if (list.Any())
                        {
                            TempData["TD_FileHoSoDinhKem_" + user.Id] = list;
                            string duongDanVatLy = pathSource + "/TD_HoSoDuAn";
                            string phuLucHoSoKhac = ConfigurationManager.AppSettings["PhuLucHoSoKhac"];
                            int intPhuLucHoSoKhac = string.IsNullOrEmpty(phuLucHoSoKhac) ? 0 : Convert.ToInt32(phuLucHoSoKhac);
                            if (!Directory.Exists(duongDanVatLy))
                                Directory.CreateDirectory(duongDanVatLy);

                            var listFileInDb = db.TD_FileHoSoDinhKem.Where(o => o.TrangThai == TrangThai.HoatDong && o.MaHoSo == obj.MaHoSo && o.VanBan_ID == intPhuLucHoSoKhac);

                            for (var i = 0; i < list.Count; i++)
                            {
                                // Insert
                                if (list[i].FileHoSoDinhKem_ID == 0)
                                {
                                    string path = Path.Combine(duongDanVatLy, list[i].TenFile);

                                    // To copy a file to another location and 
                                    // overwrite the destination file if it already exists.
                                    System.IO.File.Copy(list[i].DuongDan, path, true);

                                    // đổi đường dẫn file
                                    list[i].DuongDan = path;

                                    // Lưu obj file vào db
                                    db.TD_FileHoSoDinhKem.Add(list[i]);
                                    db.SaveChanges();
                                }
                                //Update
                                else
                                {

                                }
                            }
                        }

                        // Lưu các file quyết định phê duyệt (nếu có đính kèm)
                        if(Request.Files.Count > 0)
                        {
                            if (string.IsNullOrEmpty(pathSource)) return Content("Không tìm thấy đường dẫn file");

                            //var duongDan = pathSource + "/TD_HoSoDuAn/NewUpload/" + User.Identity.GetUserId();
                            //if (!Directory.Exists(duongDan))
                            //    Directory.CreateDirectory(duongDan);

                            var duongDanVatLy = pathSource + "/TD_HoSoDuAn";
                            if (!Directory.Exists(duongDanVatLy))
                                Directory.CreateDirectory(duongDanVatLy);
                            
                            var indexFile = 0;
                            var stt = db.TD_FileHoSoDinhKem.Where(o => o.TrangThai == TrangThai.HoatDong && o.MaHoSo == tD_HoSoDuAn.MaHoSo).Max(o => o.STT);
                            if (stt == null || stt == 0)
                                stt = 1;

                            for (int i = 0; i < Request.Files.Count; i++)
                            {
                                var file = Request.Files[i];
                                if (file.ContentLength > 0)
                                {
                                    // Tạo tên file lưu trên hệ thống
                                    var fileName = tD_HoSoDuAn.HoSoDuAn_ID + "_" + tD_HoSoDuAn.LoaiDuAn_ID + "_" + Guid.NewGuid().ToString() + "_" + Path.GetFileName(file.FileName);

                                    // Lưu file lên hệ thống
                                    var path = Path.Combine(duongDanVatLy, fileName);
                                    file.SaveAs(path);

                                    // Tạo object TD_FileHoSoDinhKem                                    
                                    var objFileDinhKem = new TD_FileHoSoDinhKem
                                    {
                                        DuongDan = path,
                                        SoKyHieu = listFile[indexFile].SoKyHieu,
                                        MaHoSo = tD_HoSoDuAn.MaHoSo,
                                        STT = stt,
                                        TenFile = fileName,
                                        TenHienThi = Path.GetFileName(file.FileName),
                                        TrichYeu = listFile[indexFile].TrichYeu,
                                        VanBan_ID = listFile[indexFile].VanBan_ID,
                                        TrangThai = TrangThai.HoatDong
                                    };

                                    // Lưu thông tin file vào db
                                    db.TD_FileHoSoDinhKem.Add(objFileDinhKem);
                                    stt++; // Cộng số thứ tự file thêm 1 nếu đã lưu 1 file thành công
                                }
                                indexFile++;
                            }
                        }

                        db.SaveChanges();
                        scope.Complete();

                        // Xóa file đã đính kèm trước đó đi trong thư mục
                        if (Directory.Exists(pathSource + "/TD_HoSoDuAn/Upload/" + User.Identity.GetUserId()))
                        {
                            string[] filesPath = Directory.GetFiles(pathSource + "/TD_HoSoDuAn/Upload/" + User.Identity.GetUserId());
                            if (filesPath.Length > 0)
                            {
                                foreach (string item in filesPath)
                                {
                                    if (!string.IsNullOrEmpty(item))
                                        System.IO.File.Delete(item);
                                }
                            }
                        }

                        return RedirectToAction("ThongTinChung");
                    }
                    catch (DbEntityValidationException ex)
                    {
                        scope.Dispose();
                        var exc = new ExceptionViewer();
                        exc.GetError(ex);
                    }
                }
            }
            GetModelStateError(ViewData);
            ViewBag.TenDuAn = obj.TenDuAn;
            ViewBag.ChuDauTu = obj.ChuDauTu;
            var listVBQuyetDinh = db.View_Loai_Nhom_VanBan.Where(o => o.TrangThai == TrangThai.HoatDong && o.MaNhomVanBan == "QuyetDinhPheDuyet");
            ViewBag.ListVBQuyetDinh = listVBQuyetDinh.Any() ? listVBQuyetDinh.ToList() : new List<View_Loai_Nhom_VanBan>();
            var _listFile = db.TD_FileHoSoDinhKem.Where(o => o.TrangThai == TrangThai.HoatDong && o.MaHoSo == tD_HoSoDuAn.MaHoSo);
            if (_listFile.Any())
                tD_HoSoDuAn.ListFile = _listFile.ToList();
            else
                tD_HoSoDuAn.ListFile = new List<TD_FileHoSoDinhKem>();
            GetViewBag(ViewReport.Edit);
            return View(tD_HoSoDuAn);
        }
Пример #5
0
        public ActionResult Import(ImportModel obj)
        {
            try
            {
                // Kiểm tra đã submit file lên
                if (Request.Files.Count == 0)
                {
                    ViewBag.Mess = "Không tìm thấy file";
                }
                else
                {
                    var file = Request.Files[0];
                    if (file.ContentType != excelContentType && file.ContentType != excel2010ContentType)
                    {
                        ViewBag.Mess = "Vui lòng chọn file excel";
                    }
                    else
                    {
                        var pathSource = ConfigurationManager.AppSettings["FolderUploadPath"];
                        if (string.IsNullOrEmpty(pathSource)) return Content("Không tìm thấy đường dẫn file");

                        // Lưu đường dẫn file theo mã hồ sơ
                        var duongDan = pathSource + "/ImportReport/";
                        if (!Directory.Exists(duongDan)) Directory.CreateDirectory(duongDan);

                        //Post file lên thư mục tạm (Temp)
                        string path = Path.Combine(duongDan, file.FileName);
                        file.SaveAs(path);

                        //Sau khi upload xong= > đọc dữ liệu trong file này
                        //Code này là lấy đường dẫn của file excel bỏ vào connection string (có thể tham khảo trên trang ConnectionStrings.com)
                        string excelConnectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=Excel 12.0;", path);
                        //"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";
                        OleDbConnection connection = new OleDbConnection();
                        connection.ConnectionString = excelConnectionString;
                        OleDbCommand command = new OleDbCommand("Select * from [Sheet1$]", connection);
                        connection.Open();
                        DbDataReader dr = command.ExecuteReader();

                        //Sau khi lấy dữ liệu vào dr => Insert vào trong SQL Server
                        //Lấy chuỗi kết nối tới SQL server, database là DBImportDataFromExcel
                        // Integrated Security=True
                        //string sqlConnectionString = String.Format(@"Data Source={0};Initial Catalog={1};{2}", "(local)\\SQLSERVER", "Test", "user id=sa;          password=123456");
                        var sqlConnectionString = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;

                        // Lấy tên bảng dữ liệu
                        //var objPhanHeChucNang = db.Ht_PhanHeChucNang.FirstOrDefault(o => o.PhanHeChucNang_ID == obj.PhanHeChucNang);
                        //var lastIndex = objPhanHeChucNang.ControllerName.Substring(objPhanHeChucNang.ControllerName.Length - 1, 1);
                        //if (lastIndex == "s")
                        //    objPhanHeChucNang.ControllerName = objPhanHeChucNang.ControllerName.Substring(0, objPhanHeChucNang.ControllerName.Length - 1);

                        // Ép kiểu sang object
                        var dt = new DataTable();
                        dt.Load(dr);

                        connection.Dispose();

                        ImportToDB(dt, obj);
                        ViewBag.Mess = "Nhập dữ liệu thành công";

                        // import dữ liệu vào table trong database
                        //SqlBulkCopy bulkInsert = new SqlBulkCopy(sqlConnectionString);
                        //bulkInsert.DestinationTableName = objPhanHeChucNang.ControllerName;//Tên bảng muốn chèn dữ liệu vào
                        //bulkInsert.WriteToServer(dr);
                    }
                }
                GetViewBag();
                return View();
            }
            catch (DbEntityValidationException ex)
            {
                var exc = new ExceptionViewer();
                ViewBag.Mess = exc.GetError(ex);
                GetViewBag();
                return View();
            }
        }
Пример #6
0
        //[ValidateAntiForgeryToken]
        public ActionResult Edit(TD_HoSoDuAn tD_HoSoDuAn, List<TD_FileHoSoDinhKem> listFile)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null)
                return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });

            // Kiểm tra quyền truy cập và cập nhật
            var per = CheckPermission(user);
            if (!per.isEdit)
                return Content("Bạn không có quyền thực hiện chức năng này");

            if (ModelState.IsValid)
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        db.Entry(tD_HoSoDuAn).State = EntityState.Modified;
                        tD_HoSoDuAn.TuNgay = DateTime.Now;
                        tD_HoSoDuAn.DenNgay = DateTime.Now;
                        //db.SaveChanges();

                        // Lưu file vào hệ thống
                        //if (Request.Files.Count > 0)
                        if (listFile.Any())
                        {
                            var pathSource = ConfigurationManager.AppSettings["FolderUploadPath"];
                            if (string.IsNullOrEmpty(pathSource)) return Content("Không tìm thấy đường dẫn file");
                            var maxSTT = db.TD_FileHoSoDinhKem.Where(o => o.TrangThai == TrangThai.HoatDong && o.MaHoSo == tD_HoSoDuAn.MaHoSo).Max(o => o.STT);
                            var duongDanVatLy = pathSource + "/TD_HoSoDuAn";
                            if (!Directory.Exists(duongDanVatLy))
                                Directory.CreateDirectory(duongDanVatLy);

                            var listFileInDb = db.TD_FileHoSoDinhKem.Where(o => o.TrangThai == TrangThai.HoatDong && o.MaHoSo == tD_HoSoDuAn.MaHoSo);
                            var count = Request.Files.Count;
                            for (var i = 0; i < listFile.Count; i++)
                            {
                                var id = listFile[i].FileHoSoDinhKem_ID;

                                // File chưa được lưu trong database
                                if (id <= 0 || id == null)
                                {
                                    // Nếu có file thì sẽ tạo mới
                                    if (count > 0)
                                    {
                                        var file = Request.Files["file_" + i];
                                        if (file != null)
                                        {
                                            // Tạo tên file lưu trên hệ thống
                                            var fileName = tD_HoSoDuAn.HoSoDuAn_ID + "_" + tD_HoSoDuAn.LoaiDuAn_ID + "_" + Guid.NewGuid().ToString() + "_" + Path.GetFileName(file.FileName);

                                            // Tạo đường dẫn vật lý cho file
                                            var path = Path.Combine(duongDanVatLy, fileName);

                                            // Tạo object TD_FileHoSoDinhKem
                                            var objFileDinhKem = new TD_FileHoSoDinhKem
                                            {
                                                DuongDan = path,
                                                GhiChu = listFile[i].GhiChu,
                                                MaHoSo = tD_HoSoDuAn.MaHoSo,
                                                VanBan_ID = listFile[i].VanBan_ID,
                                                TenFile = fileName,
                                                TenHienThi = Path.GetFileName(file.FileName),
                                                TenVanBan = listFile[i].TenVanBan,
                                                TrangThai = TrangThai.HoatDong
                                            };

                                            // Lưu thông tin file vào db
                                            db.TD_FileHoSoDinhKem.Add(objFileDinhKem);
                                            //db.SaveChanges();

                                            // Lưu file lên hệ thống
                                            file.SaveAs(path);
                                        }
                                    }
                                    else
                                    {
                                        // Không có file thì ko làm gì
                                    }
                                }
                                // Có file đã được lưu trong database
                                else
                                {
                                    var objFileOld = listFileInDb.FirstOrDefault(o => o.FileHoSoDinhKem_ID == id);

                                    if (objFileOld != null)
                                    {
                                        // Không up file khác lên thay thì cập nhật lại thông tin Tên văn bản, Ghi chú
                                        if (count == 0)
                                        {
                                            objFileOld.TenVanBan = !string.IsNullOrEmpty(listFile[i].TenVanBan) ? listFile[i].TenVanBan.Trim() : "";
                                            objFileOld.GhiChu = !string.IsNullOrEmpty(listFile[i].GhiChu) ? listFile[i].GhiChu.Trim() : "";
                                            db.Entry(objFileOld).State = EntityState.Modified;
                                        }
                                        else
                                        {
                                            var file = Request.Files["file_" + i];

                                            // Up file khác lên thay thế file cũ
                                            if (file != null)
                                            {
                                                // Tạo tên file lưu trên hệ thống
                                                var fileName = tD_HoSoDuAn.HoSoDuAn_ID + "_" + tD_HoSoDuAn.LoaiDuAn_ID + "_" + Guid.NewGuid().ToString() + "_" + Path.GetFileName(file.FileName);

                                                // Tạo đường dẫn vật lý cho file
                                                var path = Path.Combine(duongDanVatLy, fileName);

                                                // Tạo object TD_FileHoSoDinhKem
                                                var objFileDinhKem = new TD_FileHoSoDinhKem
                                                {
                                                    DuongDan = path,
                                                    GhiChu = listFile[i].GhiChu,
                                                    MaHoSo = tD_HoSoDuAn.MaHoSo,
                                                    //STT = stt,
                                                    TenFile = fileName,
                                                    TenHienThi = Path.GetFileName(file.FileName),
                                                    TenVanBan = listFile[i].TenVanBan,
                                                    TrangThai = TrangThai.HoatDong
                                                };

                                                // Nếu đổi file khác thì đổi trạng thái của file cũ, và tạo 1 object mới
                                                if (listFile[i].FileHoSoDinhKem_ID != -1)
                                                {
                                                    //var id = listFile[i].FileHoSoDinhKem_ID;
                                                    //var objFileOld = db.TD_FileHoSoDinhKem.FirstOrDefault(o => o.FileHoSoDinhKem_ID == id);
                                                    objFileOld.TrangThai = TrangThai.KhongHoatDong;
                                                    db.Entry(objFileOld).State = EntityState.Modified;
                                                    //db.SaveChanges();

                                                    objFileDinhKem.STT = objFileOld.STT;
                                                }
                                                // Nếu lưu thêm file lên hệ thống
                                                else
                                                {
                                                    maxSTT++;
                                                    objFileDinhKem.STT = maxSTT;
                                                }

                                                // Lưu thông tin file vào db
                                                db.TD_FileHoSoDinhKem.Add(objFileDinhKem);
                                                //db.SaveChanges();

                                                // Lưu file lên hệ thống
                                                file.SaveAs(path);
                                            }
                                            // Không up file khác lên thay thì cập nhật lại thông tin Tên văn bản, Ghi chú
                                            else
                                            {
                                                objFileOld.TenVanBan = !string.IsNullOrEmpty(listFile[i].TenVanBan) ? listFile[i].TenVanBan.Trim() : "";
                                                objFileOld.GhiChu = !string.IsNullOrEmpty(listFile[i].GhiChu) ? listFile[i].GhiChu.Trim() : "";
                                                db.Entry(objFileOld).State = EntityState.Modified;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        // Không tìm thấy file trong database
                                    }
                                }
                            }
                        }
                        db.SaveChanges();
                        dbContextTransaction.Commit();
                        return RedirectToAction("Index");
                        //return Json(new { ok = "ok" });
                        //return View();
                    }
                    catch (DbEntityValidationException ex)
                    {
                        dbContextTransaction.Rollback();
                        var exc = new ExceptionViewer();
                        exc.GetError(ex);
                    }
                }
            }
            GetViewBag(ViewReport.Edit);
            GetModelStateError(ViewData);
            return View(tD_HoSoDuAn);
        }
Пример #7
0
        /// <summary>
        /// Lấy danh sách đơn vị cấp 2 theo Nhóm đơn vị và đơn vị cấp trên
        /// </summary>
        /// <param name="ddlNhomDonVi">ID của nhóm đơn vị</param>
        /// <param name="ddlDonViCap1">ID của đơn vị cấp trên - nếu ko chọn thì sẽ hiển thị cả DV cấp 1 và 2</param>
        public ActionResult NhomDonVi_OnChange(Nullable<int> ddlDonViCap1)
        {
            try
            {
                var list = (IEnumerable<Dm_DonVi>) db.Dm_DonVi;
                //if(ddlNhomDonVi != null)
                //    list = list.Where(o =>o.TrangThai == TrangThai.HoatDong &&  o.NhomDonVi_ID == ddlNhomDonVi);
                if (ddlDonViCap1 != null)
                    list = list.Where(o => o.TrangThai == TrangThai.HoatDong && o.DonViCap1_ID == ddlDonViCap1);

                var objDonViCap1 = db.Dm_DonVi.FirstOrDefault(o => o.DonVi_ID == ddlDonViCap1);
                var str = new StringBuilder().AppendFormat("<option value='{0}'>{1}</option>",objDonViCap1.DonVi_ID, objDonViCap1.TenDonVi);
                if (list.Any())
                {
                    foreach (var item in list)
                    {
                        str.AppendFormat("<option value='{0}'>{1}</option>", item.DonVi_ID, item.TenDonVi);
                    }
                }
                return Json(new { danhSach = str.ToString() });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
        /// <summary>
        /// Yêu cầu đơn vị nhập lại số liệu với các trường bị đánh dấu sai
        /// </summary>
        /// <param name="id">ID của báo cáo</param>
        /// <param name="lichNhap_ID">ID của lịch nhập liệu</param>
        /// <param name="truongNhapLai">mã của các trường dữ liệu cần nhập lại</param>
        /// <param name="tuNgay">ngày bắt đầu nhập</param>
        /// <param name="denNgay">ngày kết thúc nhập</param>
        public ActionResult NhapLaiRequest(int id, int lichNhap_ID, string truongNhapLai, string tuNgay, string denNgay)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermissionAdmin(LoaiBaoCao.UngDungCNTT);
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            try
            {
                CongThongTinDienTu congThongTinDienTu = db.CongThongTinDienTu.Find(id);
                if (congThongTinDienTu == null)
                {
                    return HttpNotFound();
                }

                #region Kiểm tra thời gian nhập liệu
                DateTime _tuNgay;
                DateTime _denNgay;
                var msg = string.Empty;
                if (!DateTime.TryParseExact(tuNgay, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out _tuNgay))
                    msg = "'Từ ngày' nhập sai định dạng";
                if (!DateTime.TryParseExact(denNgay, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out _denNgay))
                    msg = "'Đến ngày' nhập sai định dạng";

                if (_tuNgay.Date < DateTime.Now.Date)
                    msg = "Thời gian 'Từ ngày' không được nhỏ hơn thời gian hiện tại";
                if (_denNgay.Date < _tuNgay.Date)
                    msg = "Thời gian 'Đến ngày' không được nhỏ hơn thời gian 'Từ ngày'";

                if (!string.IsNullOrEmpty(msg))
                {
                    GetViewBag(congThongTinDienTu.DonVi_ID); // Get ViewBag
                    ViewBag.LichNhap_ID = lichNhap_ID;
                    return Json(new { msg = msg });
                }
                #endregion Kiểm tra thời gian nhập liệu

                #region Update congThongTinDienTu
                congThongTinDienTu.TruongNhapLai = truongNhapLai;
                congThongTinDienTu.Success = (byte)TrangThaiNhapLieu.Sua;
                db.Entry(congThongTinDienTu).State = EntityState.Modified;
                #endregion

                #region Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                Ht_LichNhapLieu objLichNhapLieu = db.Ht_LichNhapLieu.Find(lichNhap_ID);
                objLichNhapLieu.ChucNang_ID = (byte)TrangThaiNhapLieu.Sua;
                if (!string.IsNullOrEmpty(tuNgay))
                    objLichNhapLieu.TuNgay = DateTime.ParseExact(tuNgay, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                if (!string.IsNullOrEmpty(denNgay))
                    objLichNhapLieu.DenNgay = DateTime.ParseExact(denNgay, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                db.Entry(objLichNhapLieu).State = EntityState.Modified;
                db.SaveChanges();
                #endregion

                return Json(new { ok = "ok" });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
 /// <summary>
 /// Lấy danh sách đơn vị cấp trên theo Nhóm đơn vị
 /// </summary>
 /// <param name="nhomDonVi_ID">ID của nhóm đơn vị</param>
 public ActionResult NhomDonVi_OnChange(int nhomDonVi_ID)
 {
     try
     {
         var list = db.Dm_DonVi.Where(o => o.NhomDonVi_ID == nhomDonVi_ID);
         var str = new StringBuilder();
         if (list.Any())
         {
             foreach (var item in list)
             {
                 str.AppendFormat("<option value='{0}' >{1}</option>", item.DonVi_ID, item.TenDonVi);
             }
         }
         return Json(new { danhSach = str.ToString() });
     }
     catch (Exception ex)
     {
         var exv = new ExceptionViewer(ex);
         return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
     }
 }
Пример #10
0
 public ActionResult LoaiVanBan_OnChange(int loaiVanBan, string view)
 {
     try
     {
         StringBuilder str = new StringBuilder();
         if(view == "Index")
         {
             str.AppendFormat("<option value=''>Tất cả</option>");
         }
         var list = db.NhomVanBan.Where(o => o.LoaiVanBan_ID == loaiVanBan);
         if (list.Any())
         {
             foreach (var item in list)
             {
                 str.AppendFormat("<option value='{0}'>{1}</option>", item.NhomVanBan_ID, item.TenNhomVanBan);
             }
         }
         return Json(new { danhSach = str.ToString() });
     }
     catch (Exception ex)
     {
         var exv = new ExceptionViewer(ex);
         return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
     }
 }
        /// <summary>
        /// Xóa thư mục lưu trữ file tạm
        /// </summary>
        private bool DeleteTempUploadFile()
        {
            try
            {
                var pathSource = ConfigurationManager.AppSettings["FolderUploadPath"];
                if (string.IsNullOrEmpty(pathSource)) return false;
                var duongDan = pathSource + "/ToChucChinhSachCNTT/NewUpload/" + User.Identity.GetUserId();
                if (!Directory.Exists(duongDan))
                    return true;
                
                // Xóa thư mục trong folder
                string[] folderPath = System.IO.Directory.GetDirectories(duongDan);
                if (folderPath.Length > 0)
                {
                    foreach (string file in folderPath)
                    {
                        if (!string.IsNullOrEmpty(file))
                            Directory.Delete(file, true);
                    }
                }

                // Xóa file đã đính kèm trước đó đi trong thư mục
                string[] filesPath = System.IO.Directory.GetFiles(duongDan);
                if (filesPath.Length > 0)
                {
                    foreach (string file in filesPath)
                    {
                        if (!string.IsNullOrEmpty(file))
                            System.IO.File.Delete(file);
                    }
                }
                return true;
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return false;
            }
        }
        /// <summary>
        /// Load danh sách file đính kèm trong báo cáo
        /// </summary>
        /// <param name="id">mã của báo cáo</param>
        public ActionResult LoadListFile(int? id)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) if (user == null) return RedirectToAction("Login", "Account");
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per == PermissionType.Deny)
            {
                // Kiểm tra thêm quyền là Thẩm định báo cáo ?
                per = S4T_HaTinhBase.CheckPermissionAdmin(LoaiBaoCao.ChinhSach);
                if (per == PermissionType.Deny) return Content(ExceptionViewer.GetMessage("VIEW_NOT_PERMISSION"));
            }

            var listReport = MvcApplication.ListReportMTCS();
            var str = new StringBuilder();
            var showInfoFile = string.Empty;
            try
            {
                if (listReport.Any())
                {
                    var list = new List<Ht_FileDinhKem>();

                    // Load lại list file đã đính kèm lên thư mục tạm của hệ thống
                    if (TempData[objChucNang.ControllerName + "_" + User.Identity.GetUserId()] != null)
                        list = (List<Ht_FileDinhKem>)TempData[objChucNang.ControllerName + "_" + User.Identity.GetUserId()];
                    else
                        // Load list file đã đc lưu vào hệ thống (View: Edit, Details)
                        list = db.Ht_FileDinhKem.Where(o => o.BaoCao_ID == id && o.PhanHeChucNang_ID == objChucNang.PhanHeChucNang_ID).ToList();

                    TempData[objChucNang.ControllerName + "_" + User.Identity.GetUserId()] = list;

                    // Hiển thị 2 cột ẩn
                    showInfoFile = list.Any() ? "Show" : ""; 

                    foreach (var item in listReport)
                    {
                        str.Append("<tr>");
                        str.AppendFormat("<td> {0} </td>", item.TenDanhMuc);
                        var objFile = list.FirstOrDefault(o => o.LoaiVanBan_ID == item.DanhMuc_ID);
                        if (objFile != null)
                        {
                            str.AppendFormat("<td>{0}</td>",objFile.SoVanBan);
                            str.AppendFormat("<td><a href='/HT_FileDinhKem/Download?tenFile={0}&chucNang_ID={1}'>{2}</a></td>", objFile.TenFile, objFile.PhanHeChucNang_ID, objFile.TenHienThi);

                            /* Lưu nhiều file
                            str.Append("<td><ul style='list-style:none;display: table-cell'");
                            foreach (var file in list.Where(o => o.LoaiVanBan_ID == item.DanhMuc_ID))
                            {
                                str.AppendFormat("<li><a href='/HT_FileDinhKem/Download?tenFile={0}&chucNang_ID={1}'>{2}</a></li>", file.TenFile, file.PhanHeChucNang_ID, file.TenHienThi);
                            }
                            str.Append("</ul></td>");
                            */
                        }
                        else
                        {
                            if (!string.IsNullOrEmpty(showInfoFile))
                            {
                                str.Append("<td></td>");
                                str.Append("<td></td>");
                            }
                        }
                        str.AppendFormat("<td><a href='javascript:void(0);' class='opendialog' onclick='OpenDialog({0});' loaivanban='{0}'>Chọn file</a></td>", @item.DanhMuc_ID);
                        str.Append("</tr>");
                    }
                }

                return Json(new { danhSachFile = str.ToString(), ShowInfoFile = showInfoFile });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(ex.Message) });
            }             
        }
        //[MultipleButton(Name = "action", Argument = "Create")]
        public async Task<ActionResult> Create(ToChucChinhSachCNTT toChucChinhSachCNTT)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            if (ModelState.IsValid)
            {
                var mess = CheckReportStatus(user, TrangThaiNhapLieu.ThemMoi);
                if (String.IsNullOrEmpty(mess))
                {
                    try
                    {
                        var objLichNhap = db.Ht_LichNhapLieu.FirstOrDefault(o => o.DonVi_ID == toChucChinhSachCNTT.DonVi_ID
                                                                          && o.PhanHe_ID == objChucNang.PhanHeChucNang_ID
                                                                          && o.ChucNang_ID != TrangThaiNhapLieu.PheDuyet);

                        // Đổi trạng thái nhập liệu
                        toChucChinhSachCNTT.Success = (byte)TrangThaiNhapLieu.DaGui;
                        toChucChinhSachCNTT.LichNhap_ID = objLichNhap.LichNhap_ID; // Add LichNhap_ID vào báo cáo
                        db.ToChucChinhSachCNTT.Add(toChucChinhSachCNTT);
                        await db.SaveChangesAsync();

                        // Lưu file vào thư mục dữ liệu chính
                        if (TempData[objChucNang.ControllerName + "_" + User.Identity.GetUserId()] != null)
                        {
                            var listObjFile = (List<Ht_FileDinhKem>)TempData[objChucNang.ControllerName + "_" + User.Identity.GetUserId()];

                            var pathSource = ConfigurationManager.AppSettings["FolderUploadPath"];
                            if (string.IsNullOrEmpty(pathSource)) return JavaScript("Không tìm thấy đường dẫn file");

                            var duongDan = pathSource + "/ToChucChinhSachCNTT/NewUpload/" + User.Identity.GetUserId();
                            var duongDanVatLy = pathSource + "/ToChucChinhSachCNTT";
                            string[] filesPath = System.IO.Directory.GetFiles(duongDan);

                            if (filesPath.Any())
                            {
                                foreach (var item in listObjFile)
                                {
                                    item.BaoCao_ID = toChucChinhSachCNTT.ToChucChinhSachCNTT_ID;
                                    item.PhanHeChucNang_ID = objChucNang.PhanHeChucNang_ID;
                                    item.DonVi_ID = toChucChinhSachCNTT.DonVi_ID;
                                    item.HieuLuc = TrangThai.HoatDong;

                                    var fileName = toChucChinhSachCNTT.ToChucChinhSachCNTT_ID + "_" + item.LoaiVanBan_ID + "_" + User.Identity.GetUserId() + "_" +  item.TenHienThi;
                                    var pathFile = duongDanVatLy + "/" + fileName;

                                    //copy file vào thư mục chính
                                    System.IO.File.Copy(item.DuongDan, pathFile, true);

                                    item.DuongDan = pathFile;
                                    item.TenFile = fileName;
                                    item.TrangThai = TrangThai.HoatDong;
                                    db.Ht_FileDinhKem.Add(item);
                                }
                            }
                            //await db.SaveChangesAsync();
                        }
                        else
                        {
                            //return JavaScript("Không tìm thấy file");
                        }

                        // Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                        objLichNhap.ChucNang_ID = TrangThaiNhapLieu.DaGui;
                        db.Entry(objLichNhap).State = EntityState.Modified;
                        await db.SaveChangesAsync();

                        // Xóa dữ liệu trong thư mục tạm
                        DeleteTempUploadFile();
                        return RedirectToAction("Index");
                    }
                    catch (Exception ex)
                    {
                        var exv = new ExceptionViewer(ex);
                        return Json(new { msg = exv.GetErrorMessage(ex.Message) });
                    }                 
                }

                return Content(mess);
            }

            return View(toChucChinhSachCNTT);
        }
        /// <summary>
        /// Lọc danh sách các báo cáo theo đơn vị
        /// </summary>
        /// <param name="donVi_ID">Mã đơn vị</param>
        public ActionResult GetReportByDonVi(int donVi_ID, int? phanHe_ID, int? trangThaiNhapLieu)
        {
            if (S4T_HaTinhBase.GetUserSession() == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per == PermissionType.Deny) return Content(ExceptionViewer.GetMessage("VIEW_NOT_PERMISSION"));

            try
            {
                var listLichNhap = db.Ht_LichNhapLieu.Where(o => o.TrangThai == TrangThai.HoatDong && o.DonVi_ID == donVi_ID);
                var listPhanHeChucNang = db.Ht_PhanHeChucNang.Where(o => o.TrangThai == TrangThai.HoatDong && o.PhanHe_ID == PhanHe.QuanLyThongTin).ToList();
                var objPhanHe = new Ht_PhanHeChucNang();

                if (trangThaiNhapLieu != null)
                    listLichNhap = listLichNhap.Where(o => o.ChucNang_ID == trangThaiNhapLieu);
                if (phanHe_ID != null)
                {
                    objPhanHe = listPhanHeChucNang.FirstOrDefault(o => o.PhanHeChucNang_ID == phanHe_ID);
                    listLichNhap = listLichNhap.Where(o => o.PhanHe_ID == phanHe_ID);
                }

                if (listLichNhap.Any())
                {
                    var sb = new StringBuilder();
                    foreach (var item in listLichNhap)
                    {
                        if(phanHe_ID == null)
                            objPhanHe = listPhanHeChucNang.FirstOrDefault(o => o.PhanHeChucNang_ID == item.PhanHe_ID);

                        var objDanhMuc = MvcApplication.ListTrangThaiNhapLieu().FirstOrDefault(o => o.DanhMuc_ID == item.ChucNang_ID);
                        sb.Append("<tr>");
                        sb.AppendFormat("<td>{0}</td>", objPhanHe == null ? "" : objPhanHe.TenChucNang);
                        sb.AppendFormat("<td>{0}</td>", item.TuNgay.ToShortDateString());
                        sb.AppendFormat("<td>{0}</td>", item.DenNgay.ToShortDateString());
                        sb.AppendFormat("<td>{0}</td>", objDanhMuc == null ? "" : objDanhMuc.TenDanhMuc);

                        // Trạng thái: Chờ duyệt
                        if (item.ChucNang_ID == TrangThaiNhapLieu.DaGui)
                        {
                            // Duyệt báo cáo
                            sb.AppendFormat("<td><a href='/{0}/Check?donVi_ID={1}&lichNhap_ID={2}'>Kiểm tra</a></td>", objPhanHe.ControllerName, item.DonVi_ID, item.LichNhap_ID);
                        }
                        else if (item.ChucNang_ID == TrangThaiNhapLieu.PheDuyet || item.ChucNang_ID == TrangThaiNhapLieu.Sua)
                        {
                            // Xem báo cáo
                            sb.AppendFormat("<td><a href='/{0}/Details?donVi_ID={1}&lichNhap_ID={2}'>Xem</a></td>", objPhanHe.ControllerName, item.DonVi_ID, item.LichNhap_ID);
                        }
                        else
                            sb.Append("<td></td>");
                        sb.Append("</tr>");
                    }
                    return Json(new { danhSach = sb.ToString() });
                }
                else
                {
                    return Json(new { danhSach = "Không có dữ liệu" });
                }
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
Пример #15
0
        /// <summary>
        /// Lấy danh sách đơn vị cấp 2 theo Nhóm đơn vị và đơn vị cấp trên
        /// </summary>
        /// <param name="ddlNhomDonVi">ID của nhóm đơn vị</param>
        /// <param name="ddlDonViCap1">ID của đơn vị cấp trên - nếu ko chọn thì sẽ hiển thị cả DV cấp 1 và 2</param>
        public ActionResult DonVi_OnChange(Nullable<int> donVi_ID)
        {
            try
            {
                var objDonVi = MvcApplication.ListDonVi.FirstOrDefault(o => o.DonVi_ID == donVi_ID);
                if (objDonVi != null)
                {
                    if (objDonVi.NhomDonVi_ID == DonVi.NhomDonViCapHuyen)
                    {
                        var configRoleUser = ConfigurationManager.AppSettings["RoleUserCapHuyen"];
                        if (String.IsNullOrEmpty(configRoleUser))
                            return Json(new { msg = "Không tìm thấy mã người dùng cấp Huyện" });

                        var objRole = db.AspNetRoles.FirstOrDefault(o => o.Id == configRoleUser);

                        if (objRole != null)
                            return Json(new { RoleName = objRole.TenHienThi, Role_ID = configRoleUser });
                    }
                    else
                    {
                        var configRoleUser = ConfigurationManager.AppSettings["RoleUserCapSo"];
                        if (String.IsNullOrEmpty(configRoleUser))
                            return Json(new { msg = "Không tìm thấy mã người dùng cấp Tỉnh" });

                        var objRole = db.AspNetRoles.FirstOrDefault(o => o.Id == configRoleUser);

                        if (objRole != null)
                            return Json(new { RoleName = objRole.TenHienThi, Role_ID = configRoleUser });
                    }

                    return Json(new { msg = "Không tìm thấy mã vai trò người dùng" });
                }

                return Json(new { msg = "Không tìm thấy mã đơn vị" });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
        public async Task<ActionResult> Edit(CongThongTinDienTu congThongTinDienTu)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            if (ModelState.IsValid)
            {
                var mess = CheckReportStatus(user, TrangThaiNhapLieu.Sua);
                if (String.IsNullOrEmpty(mess))
                {
                    try
                    {
                        using (var context = new S4T_HaTinhEntities())
                        {
                            congThongTinDienTu.Success = (byte)TrangThaiNhapLieu.DaGui;
                            //haTangNhanLucCNTT.TruongNhapLai = string.Empty; // Xóa hết các yêu cầu nhập lại dữ liệu
                            context.Entry(congThongTinDienTu).State = EntityState.Modified;
                            await context.SaveChangesAsync();
                        }

                        // Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                        var objLichNhap = db.Ht_LichNhapLieu.FirstOrDefault(o => o.TrangThai == TrangThai.HoatDong
                                                                          && o.DonVi_ID == congThongTinDienTu.DonVi_ID
                                                                              && o.PhanHe_ID == objChucNang.PhanHeChucNang_ID
                                                                              && o.ChucNang_ID != TrangThaiNhapLieu.PheDuyet);
                        objLichNhap.ChucNang_ID = TrangThaiNhapLieu.DaGui;
                        db.Entry(objLichNhap).State = EntityState.Modified;
                        await db.SaveChangesAsync();

                        return RedirectToAction("Index");
                    }
                    catch (Exception ex)
                    {
                        var exv = new ExceptionViewer(ex);
                        return Json(new { 
                            //msg = exv.GetErrorMessage(ex.Message) 
                            msg = exv.GetErrorMessage("Có lỗi dữ liệu xảy ra") 
                        });
                    }
                }

                return Content(mess);
            }

            GetViewBag(user.DonVi_ID);
            return View(congThongTinDienTu);
        }
Пример #17
0
        public ActionResult NhapLaiRequest(int id, int lichNhap_ID, string truongNhapLai, string tuNgay, string denNgay)
        {
            try
            {
                TinhHinhSXDN tinhHinhSXDN = db.TinhHinhSXDN.Find(id);
                if (tinhHinhSXDN == null)
                {
                    return HttpNotFound();
                }

                #region Update tinhHinhSXDN
                tinhHinhSXDN.TruongNhapLai = truongNhapLai;
                tinhHinhSXDN.Success = (byte)TrangThaiNhapLieu.Sua;
                db.Entry(tinhHinhSXDN).State = EntityState.Modified;
                db.SaveChanges();
                #endregion

                #region Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                Ht_LichNhapLieu objLichNhapLieu = db.Ht_LichNhapLieu.Find(lichNhap_ID);
                objLichNhapLieu.ChucNang_ID = (byte)TrangThaiNhapLieu.Sua;
                if (!string.IsNullOrEmpty(tuNgay))
                    objLichNhapLieu.TuNgay = DateTime.ParseExact(tuNgay, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                if (!string.IsNullOrEmpty(denNgay))
                    objLichNhapLieu.DenNgay = DateTime.ParseExact(denNgay, "dd/MM/yyyy", CultureInfo.InvariantCulture);
                db.Entry(objLichNhapLieu).State = EntityState.Modified;
                db.SaveChanges();
                #endregion

                return Json(new { ok = "ok" });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
        /// <summary>
        /// Duyệt báo cáo thành công
        /// </summary>
        /// <param name="id">ID của báo cáo</param>
        /// <param name="lichNhap_ID">ID của lịch nhập liệu</param>
        public ActionResult ConfirmReport(int id, int lichNhap_ID)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermissionAdmin(LoaiBaoCao.UngDungCNTT);
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            try
            {
                CongThongTinDienTu congThongTinDienTu = db.CongThongTinDienTu.Find(id);
                if (congThongTinDienTu == null)
                {
                    return HttpNotFound();
                }

                #region Update congThongTinDienTu
                congThongTinDienTu.Success = (byte)TrangThaiNhapLieu.PheDuyet;
                congThongTinDienTu.TruongNhapLai = string.Empty;
                db.Entry(congThongTinDienTu).State = EntityState.Modified;
                #endregion

                #region Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                Ht_LichNhapLieu objLichNhapLieu = db.Ht_LichNhapLieu.Find(lichNhap_ID);
                objLichNhapLieu.ChucNang_ID = (byte)TrangThaiNhapLieu.PheDuyet;
                db.Entry(objLichNhapLieu).State = EntityState.Modified;
                db.SaveChanges();
                #endregion

                return Json(new { ok = "ok" });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
Пример #19
0
        public ActionResult ConfirmReport(int id, int lichNhap_ID)
        {
            try
            {
                TinhHinhSXDN tinhHinhSXDN = db.TinhHinhSXDN.Find(id);
                if (tinhHinhSXDN == null)
                {
                    return HttpNotFound();
                }

                #region Update tinhHinhSXDN
                tinhHinhSXDN.Success = (byte)TrangThaiNhapLieu.PheDuyet;
                tinhHinhSXDN.TruongNhapLai = string.Empty;
                db.Entry(tinhHinhSXDN).State = EntityState.Modified;
                db.SaveChanges();
                #endregion

                #region Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                Ht_LichNhapLieu objLichNhapLieu = db.Ht_LichNhapLieu.Find(lichNhap_ID);
                objLichNhapLieu.ChucNang_ID = (byte)TrangThaiNhapLieu.PheDuyet;
                db.Entry(objLichNhapLieu).State = EntityState.Modified;
                db.SaveChanges();
                #endregion

                return Json(new { ok = "ok" });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
Пример #20
0
        //[ValidateAntiForgeryToken]
        public ActionResult Create(TD_HoSoDuAn tD_HoSoDuAn, List<TD_FileHoSoDinhKem> listFile)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null)
                return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });

            // Kiểm tra quyền truy cập và cập nhật
            var per = CheckPermission(user);
            if (!per.isEdit)
                return Content("Bạn không có quyền thực hiện chức năng này");

            ModelState.Remove("MaHoSo");
            ModelState.Remove("TuNgay");
            ModelState.Remove("DenNgay");
            tD_HoSoDuAn.TuNgay = DateTime.Now;
            tD_HoSoDuAn.DenNgay = DateTime.Now;
            if (ModelState.IsValid)
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        // Lưu tạm để tạo số biên nhận
                        db.TD_HoSoDuAn.Add(tD_HoSoDuAn);
                        db.SaveChanges();

                        // update lại số biên nhận
                        var maHoSo = DateTime.Now.ToString("yyyy") + DateTime.Now.ToString("MM") + tD_HoSoDuAn.LoaiDuAn_ID + tD_HoSoDuAn.HoSoDuAn_ID;
                        tD_HoSoDuAn.MaHoSo = maHoSo;
                        db.Entry(tD_HoSoDuAn).State = EntityState.Modified;

                        // Tạo luồng công việc đầu tiên là tạo mới
                        var objLuongCV = new TD_LuongCongViec
                        {
                            Cap_ID = STTCapXuLy.CapNhatHoSo,
                            MaHoSo = maHoSo,
                            NgayGui = DateTime.Now,
                            NgayHenTra = DateTime.Now,
                            NguoiGui = user.UserName,
                            NguoiNhan = user.UserName,
                            NoiDung = "Tạo mới",
                            STT = 1,
                            TrangThai = TrangThai.HoatDong
                        };
                        db.TD_LuongCongViec.Add(objLuongCV);

                        // lưu file từ thư mục tạm vào thư mục chính
                        if (Request.Files.Count == 0)
                        {
                            //return Content("Không có file"); 
                        }
                        else
                        {
                            var pathSource = ConfigurationManager.AppSettings["FolderUploadPath"];
                            if (string.IsNullOrEmpty(pathSource)) return Content("Không tìm thấy đường dẫn file");

                            //var duongDan = pathSource + "/TD_HoSoDuAn/NewUpload/" + User.Identity.GetUserId();
                            //if (!Directory.Exists(duongDan))
                            //    Directory.CreateDirectory(duongDan);

                            var duongDanVatLy = pathSource + "/TD_HoSoDuAn";
                            if (!Directory.Exists(duongDanVatLy))
                                Directory.CreateDirectory(duongDanVatLy);

                            var indexFile = 0;
                            var stt = 1;
                            for (int i = 0; i < Request.Files.Count; i++)
                            {
                                var file = Request.Files[i];
                                if (file.ContentLength > 0)
                                {
                                    // Tạo tên file lưu trên hệ thống
                                    var fileName = tD_HoSoDuAn.HoSoDuAn_ID + "_" + tD_HoSoDuAn.LoaiDuAn_ID + "_" + Guid.NewGuid().ToString() + "_" + Path.GetFileName(file.FileName);

                                    // Lưu file lên hệ thống
                                    var path = Path.Combine(duongDanVatLy, fileName);
                                    file.SaveAs(path);

                                    // Tạo object TD_FileHoSoDinhKem                                    
                                    var objFileDinhKem = new TD_FileHoSoDinhKem
                                    {
                                        DuongDan = path,
                                        SoKyHieu = listFile[indexFile].SoKyHieu,
                                        MaHoSo = maHoSo,
                                        STT = stt,
                                        TenFile = fileName,
                                        TenHienThi = Path.GetFileName(file.FileName),
                                        TrichYeu = listFile[indexFile].TrichYeu,
                                        VanBan_ID = listFile[indexFile].VanBan_ID,
                                        TrangThai = TrangThai.HoatDong
                                    };

                                    // Lưu thông tin file vào db
                                    db.TD_FileHoSoDinhKem.Add(objFileDinhKem);
                                    stt++; // Cộng số thứ tự file thêm 1 nếu đã lưu 1 file thành công
                                }
                                indexFile++;
                            }
                        }

                        db.SaveChanges();
                        dbContextTransaction.Commit();
                        return RedirectToAction("Index");
                    }
                    catch (DbEntityValidationException ex)
                    {
                        dbContextTransaction.Rollback();
                        var exc = new ExceptionViewer();
                        exc.GetError(ex);
                    }
                }
            }
            tD_HoSoDuAn.ListFile = listFile;
            GetViewBag(ViewReport.Create);
            GetModelStateError(ViewData);
            return View(tD_HoSoDuAn);
        }
        public async Task<ActionResult> Create(HaTangKyThuatCNTT_Huyen haTangKyThuatCNTT_Huyen)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            try
            {
                if (ModelState.IsValid)
                {
                    var mess = CheckReportStatus(user, TrangThaiNhapLieu.ThemMoi);
                    if (String.IsNullOrEmpty(mess))
                    {
                        var objLichNhap = db.Ht_LichNhapLieu.FirstOrDefault(o => o.TrangThai == TrangThai.HoatDong
                                                                          && o.DonVi_ID == haTangKyThuatCNTT_Huyen.DonVi_ID
                                                                              && o.PhanHe_ID == objChucNang.PhanHeChucNang_ID
                                                                              && o.ChucNang_ID != TrangThaiNhapLieu.PheDuyet);

                        // Đổi trạng thái nhập liệu
                        haTangKyThuatCNTT_Huyen.Success = (byte)TrangThaiNhapLieu.DaGui;
                        haTangKyThuatCNTT_Huyen.LichNhap_ID = objLichNhap.LichNhap_ID; // Add LichNhap_ID vào báo cáo
                        db.HaTangKyThuatCNTT_Huyen.Add(haTangKyThuatCNTT_Huyen);

                        // Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                        //objLichNhap.BaoCao_ID = haTangKyThuatCNTT.HaTangKyThuatCNTT_ID;
                        objLichNhap.ChucNang_ID = TrangThaiNhapLieu.DaGui;
                        db.Entry(objLichNhap).State = EntityState.Modified;
                        await db.SaveChangesAsync();

                        return RedirectToAction("Index");
                    }

                    return Content(mess);
                }

                GetViewBag(user.DonVi_ID);
                return View(haTangKyThuatCNTT_Huyen);
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }
Пример #22
0
        public ActionResult Forward(TD_LuongCongViec obj)
        {
            if (String.IsNullOrEmpty(obj.MaHoSo)) return Content("Không tìm thấy mã hồ sơ");
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });

            obj.NguoiGui = user.UserName;
            obj.NgayGui = DateTime.Now;
            obj.NgayHenTra = DateTime.Now;

            if (ModelState.IsValid)
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        // Kiểm tra có tồn tại người nhận
                        var isNguoiNhan = db.AspNetUsers.Any(o => o.UserName.ToUpper() == obj.NguoiNhan.Trim().ToUpper());
                        if (!isNguoiNhan)
                        {
                            ModelState.AddModelError("NguoiNhan", "Không tồn tại người nhận " + obj.NguoiNhan + " trong hệ thống");
                            GetViewBag_Forward(obj.Prefix, user);
                            ViewBag.HideMenu = true;
                            return View(obj);
                        }

                        #region Cập nhật trạng thái hồ sơ cho luồng công việc
                        var objCap = GetCapXuLy(obj.NguoiNhan);
                        obj.Cap_ID = objCap == null ? STTCapXuLy.XinYKien : objCap.ThuTu.Value; // Trạng thái "Xin ý kiến" nếu không tìm thấy người trong phòng ban xử lý
                        #endregion Cập nhật trạng thái hồ sơ cho luồng công việc

                        #region Tạo luồng công việc
                        obj.TrangThai = TrangThai.HoatDong;
                        db.TD_LuongCongViec.Add(obj);
                        db.SaveChanges();
                        #endregion Tạo luồng công việc

                        #region Lưu file đính kèm theo luồng chuyển vào db
                        if (Request.Files.Count > 0)
                        {
                            var file = Request.Files[0];
                            if (file.ContentLength > 0)
                            {
                                var maxSize = 16384 * 1024; // in Byte

                                // Kiểm tra giới hạn dung lượng file upload cho phép
                                if (file.ContentLength > maxSize)
                                {
                                    ModelState.AddModelError("", "Dung lượng file vượt quá dung lượng cho phép tải lên");
                                    ViewBag.HideMenu = true;
                                    return View(obj);
                                }

                                var pathSource = ConfigurationManager.AppSettings["FolderUploadPath"];
                                if (string.IsNullOrEmpty(pathSource)) return Content("Không tìm thấy đường dẫn file");

                                // Lưu đường dẫn file theo mã hồ sơ
                                var duongDan = pathSource + "/TD_LuongCongViec_FileDinhKem/" + obj.MaHoSo;
                                if (!Directory.Exists(duongDan)) Directory.CreateDirectory(duongDan);
                                var fileName = obj.MaHoSo + "_" + obj.LuongCongViec_ID + "_" + obj.STT + "_" + User.Identity.GetUserId() + "_" + Path.GetFileName(file.FileName);

                                // Lưu file vào thư mục tạm của hệ thống
                                var path = Path.Combine(duongDan, fileName);
                                file.SaveAs(path);

                                #region Lưu đường dẫn, thông tin file vào db
                                var objFile = new TD_LuongCongViec_FileDinhKem();
                                objFile.LuongCongViec_ID = obj.LuongCongViec_ID;
                                objFile.MaHoSo = obj.MaHoSo;
                                objFile.TenFile = fileName;
                                objFile.TenHienThi = Path.GetFileName(file.FileName);
                                objFile.DuongDan = path;
                                objFile.TrangThai = TrangThai.HoatDong;
                                objFile.STT = 1;
                                db.TD_LuongCongViec_FileDinhKem.Add(objFile);
                                db.SaveChanges();

                                #endregion Lưu đường dẫn, thông tin file vào db
                            }
                        }
                        #endregion Lưu file đính kèm theo luồng chuyển vào db

                        // redirect back to the index action to show the form once again
                        ViewBag.Status = "status=\"OK\";";

                        dbContextTransaction.Commit();
                    }
                    catch (DbEntityValidationException ex)
                    {
                        ViewBag.Status = "status=\"ERROR\";";
                        dbContextTransaction.Rollback();
                        var exc = new ExceptionViewer();
                        exc.GetError(ex);
                    }
                }
            }

            GetViewBag_Forward(obj.Prefix, user);
            ViewBag.HideMenu = true;
            return View(obj);
        }
Пример #23
0
        public async Task<ActionResult> Create(UngDungCNTT ungDungCNTT)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            if (ModelState.IsValid)
            {
                var mess = CheckReportStatus(user, TrangThaiNhapLieu.ThemMoi);
                if (String.IsNullOrEmpty(mess))
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        try
                        {
                            var objLichNhap = db.Ht_LichNhapLieu.FirstOrDefault(o => o.TrangThai == TrangThai.HoatDong
                                                                                && o.DonVi_ID == ungDungCNTT.DonVi_ID
                                                                                && o.PhanHe_ID == objChucNang.PhanHeChucNang_ID
                                                                                && o.ChucNang_ID != TrangThaiNhapLieu.PheDuyet);

                            // Đổi trạng thái nhập liệu
                            ungDungCNTT.Success = (byte)TrangThaiNhapLieu.DaGui;
                            ungDungCNTT.LichNhap_ID = objLichNhap.LichNhap_ID; // Add LichNhap_ID vào báo cáo

                            db.UngDungCNTT.Add(ungDungCNTT);

                            // Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                            //objLichNhap.BaoCao_ID = haTangKyThuatCNTT.HaTangKyThuatCNTT_ID;
                            objLichNhap.ChucNang_ID = TrangThaiNhapLieu.DaGui;
                            db.Entry(objLichNhap).State = EntityState.Modified;
                            await db.SaveChangesAsync();

                            // Lưu phần mềm quản lý chuyên ngành
                            List<UngDungCNTT_PMQLCN> listPMCN = (List<UngDungCNTT_PMQLCN>)TempData["UngDungCNTT_PMQLCN_" + user.Id];
                            if (listPMCN.Any())
                            {
                                foreach (var item in listPMCN)
                                {
                                    //var obj = new UngDungCNTT_PMQLCN
                                    //{
                                    //    UngDungCNTT_ID = ungDungCNTT.UngDungCNTT_ID,
                                    //    Guid = item.Guid,
                                    //    TenPhanMem = item.TenPhanMem,
                                    //    LienThongSBN = item.LienThongSBN,
                                    //    LienThongUBNDCapHuyen = item.LienThongUBNDCapHuyen,
                                    //    LienThongUBNDCapXa = item.LienThongUBNDCapXa,
                                    //    LienThongDVTT = item.LienThongDVTT
                                    //};
                                    item.UngDungCNTT_ID = ungDungCNTT.UngDungCNTT_ID;
                                    db.UngDungCNTT_PMQLCN.Add(item);
                                    await db.SaveChangesAsync();
                                }
                            }

                            scope.Complete();
                        }
                        catch (DbEntityValidationException ex)
                        {
                            var exc = new ExceptionViewer();
                            ViewBag.Mess = exc.GetError(ex);
                            scope.Dispose();
                            GetViewBag(user.DonVi_ID);
                            return View();
                        }
                    }
                    return RedirectToAction("Index");
                }
                return Content(mess);
            }

            GetViewBag(user.DonVi_ID);
            return View(ungDungCNTT);
        }
Пример #24
0
        public ActionResult _CreateOrUpdateFile(TD_FileHoSoDinhKem obj)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            List<TD_FileHoSoDinhKem> list = (List<TD_FileHoSoDinhKem>)TempData["TD_FileHoSoDinhKem_" + user.Id];
            if (list == null) list = new List<TD_FileHoSoDinhKem>();
            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    if (Request.Files.Count > 0)
                    {
                        var file = Request.Files[0];
                        if (file.ContentLength > 0)
                        {
                            var maxSize = 16384 * 1024; // in Byte

                            // Kiểm tra giới hạn dung lượng file upload cho phép
                            if (file.ContentLength > maxSize)
                            {
                                ModelState.AddModelError("", "Dung lượng file vượt quá dung lượng cho phép tải lên");
                                return View(obj);
                            }

                            if (string.IsNullOrEmpty(pathSource)) return Content("Không tìm thấy đường dẫn file");

                            // Xóa file tạm trong db
                            if (!string.IsNullOrEmpty(obj.TenFile))
                            {
                                TD_FileHoSoDinhKem objRemove = list.FirstOrDefault(o => o.TenFile == obj.TenFile);
                                list.Remove(objRemove);
                                System.IO.File.Delete(objRemove.DuongDan);
                            }

                            // Lưu đường dẫn file theo mã hồ sơ
                            string duongDan = pathSource + "/TD_HoSoDuAn/Upload/" + User.Identity.GetUserId();
                            if (!Directory.Exists(duongDan)) Directory.CreateDirectory(duongDan);
                            string fileName = obj.MaHoSo + "_" + Guid.NewGuid().ToString() + "_" + User.Identity.GetUserId() + "_" + Path.GetFileName(file.FileName);

                            // Lưu file vào thư mục tạm của hệ thống
                            string path = Path.Combine(duongDan, fileName);
                            file.SaveAs(path);

                            #region Lưu đường dẫn, thông tin file vào db
                            obj.DuongDan = path;
                            obj.TenFile = fileName;
                            obj.TenHienThi = Path.GetFileName(file.FileName);
                            obj.TrangThai = TrangThai.HoatDong;
                            
                            if (obj.VanBan_ID == 0)
                            {
                                ViewBag.btnId = "btnRefreshListFile";
                                string phuLucHoSoKhac = ConfigurationManager.AppSettings["PhuLucHoSoKhac"];
                                obj.VanBan_ID = string.IsNullOrEmpty(phuLucHoSoKhac) ? 0 : Convert.ToInt32(phuLucHoSoKhac);
                            }
                            else
                            {
                                ViewBag.btnId = "btnRefreshListFileQuyetDinh";
                            }

                            list.Add(obj);

                            TempData["TD_FileHoSoDinhKem_" + user.Id] = list;

                            scope.Complete();
                            #endregion Lưu đường dẫn, thông tin file vào db
                        }
                        else
                        {
                            ViewBag.Mess = "<span style=\"color:red;\">Chưa chọn file</span>";
                            return View(obj);
                        }
                    }
                    else
                    {
                        ViewBag.Mess = "<span style=\"color:red;\">Chưa chọn file</span>";
                        return View(obj);
                    }

                    // Close popup và refresh form main
                    ViewBag.RefreshPage = true;
                }
                catch (DbEntityValidationException ex)
                {
                    var exc = new ExceptionViewer();
                    ViewBag.Mess = exc.GetError(ex);
                    scope.Dispose();
                }
            }

            return View(obj);
        }
Пример #25
0
        public ActionResult Edit(UngDungCNTT ungDungCNTT)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null) return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });
            var per = S4T_HaTinhBase.CheckPermission(Request.RequestContext.RouteData.GetRequiredString("controller"));
            if (per != PermissionType.Write) return Content(ExceptionViewer.GetMessage("UPDATE_NOT_PERMISSION"));

            if (ModelState.IsValid)
            {
                var mess = CheckReportStatus(user, TrangThaiNhapLieu.Sua);
                if (String.IsNullOrEmpty(mess))
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        try
                        {
                            using (var context = new S4T_HaTinhEntities())
                            {
                                ungDungCNTT.Success = (byte)TrangThaiNhapLieu.DaGui;
                                //ungDungCNTT.TruongNhapLai = string.Empty; // Xóa hết các yêu cầu nhập lại dữ liệu
                                context.Entry(ungDungCNTT).State = EntityState.Modified;
                                context.SaveChanges();
                            }

                            // Đổi trạng thái nhập liệu trong bảng lịch nhập liệu
                            var objLichNhap = db.Ht_LichNhapLieu.FirstOrDefault(o => o.TrangThai == TrangThai.HoatDong
                                                                                  && o.DonVi_ID == ungDungCNTT.DonVi_ID
                                                                                  && o.PhanHe_ID == objChucNang.PhanHeChucNang_ID
                                                                                  && o.ChucNang_ID != TrangThaiNhapLieu.PheDuyet);
                            objLichNhap.ChucNang_ID = TrangThaiNhapLieu.DaGui;
                            db.Entry(objLichNhap).State = EntityState.Modified;
                            db.SaveChanges();

                            // Cập nhật List PMCN
                            List<UngDungCNTT_PMQLCN> listPMCN = (List<UngDungCNTT_PMQLCN>)TempData["UngDungCNTT_PMQLCN_" + user.Id];
                            if (listPMCN.Any())
                            {
                                bool isAdd = false;
                                var listInDb = db.UngDungCNTT_PMQLCN.Where(o => o.UngDungCNTT_ID == ungDungCNTT.UngDungCNTT_ID);
                                if (listPMCN.Count() > listInDb.Count()) isAdd = true;
                                foreach (UngDungCNTT_PMQLCN item in listPMCN)
                                {
                                    UngDungCNTT_PMQLCN objInDb = listInDb.FirstOrDefault(o => o.Id == item.Id && o.Guid == item.Guid);

                                    // Thêm mới nếu ko tìm thấy trong db
                                    if (objInDb == null && isAdd)
                                    {
                                        item.UngDungCNTT_ID = ungDungCNTT.UngDungCNTT_ID;
                                        db.UngDungCNTT_PMQLCN.Add(item);
                                        db.SaveChanges();
                                    }
                                    else
                                    {
                                        //This is the comparison class
                                        CompareLogic compareLogic = new CompareLogic();
                                        ComparisonResult result = compareLogic.Compare(objInDb, item);

                                        //These will be different, write out the differences
                                        if (!result.AreEqual)
                                        {
                                            objInDb.LienThongDVTT = item.LienThongDVTT;
                                            objInDb.LienThongSBN = item.LienThongSBN;
                                            objInDb.LienThongUBNDCapHuyen = item.LienThongUBNDCapHuyen;
                                            objInDb.LienThongUBNDCapXa = item.LienThongUBNDCapXa;
                                            objInDb.TenPhanMem = item.TenPhanMem;
                                            db.Entry(objInDb).State = EntityState.Modified;
                                            db.SaveChanges();
                                        }
                                    }
                                }
                            }

                            scope.Complete();
                        }
                        catch (DbEntityValidationException ex)
                        {
                            var exc = new ExceptionViewer();
                            ViewBag.Mess = exc.GetError(ex);
                            scope.Dispose();
                            GetViewBag(user.DonVi_ID);
                            return View();
                        }                        
                    }
                    return RedirectToAction("Index");
                }

                return Content(mess);
            }

            GetViewBag(user.DonVi_ID);
            return View(ungDungCNTT);
        }
Пример #26
0
        public ActionResult UpdateTinhTrangDuAn(TD_HoSoDuAn tD_HoSoDuAn)
        {
            var user = S4T_HaTinhBase.GetUserSession();
            if (user == null)
                return RedirectToAction("Login", "Account", new { returnUrl = Request.Url.PathAndQuery });

            // Kiểm tra quyền truy cập và cập nhật
            var per = CheckPermission(user);
            if (!per.isEdit)
                return Content("Bạn không có quyền thực hiện chức năng này");

            var obj = db.TD_HoSoDuAn.FirstOrDefault(o => o.HoSoDuAn_ID == tD_HoSoDuAn.HoSoDuAn_ID);
            if (ModelState.IsValid)
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        // Mapping obj in db
                        obj.TinhTrangThucHien = tD_HoSoDuAn.TinhTrangThucHien;
                        obj.str2 = tD_HoSoDuAn.str2;
                        obj.str3 = tD_HoSoDuAn.str3;

                        db.Entry(obj).State = EntityState.Modified;
                        db.SaveChanges();

                        dbContextTransaction.Commit();
                        return RedirectToAction("TinhTrangDuAn");
                    }
                    catch (DbEntityValidationException ex)
                    {
                        dbContextTransaction.Rollback();
                        var exc = new ExceptionViewer();
                        exc.GetError(ex);
                    }
                }
            }
            GetViewBag(ViewReport.Edit);
            GetModelStateError(ViewData);
            return View(tD_HoSoDuAn);
        }
        /// <summary>
        /// Lấy danh sách Trực thuộc - View Create, Edit (hoặc ds đơn vị - View Index) theo Nhóm đơn vị
        /// </summary>
        /// <param name="nhomDonVi_ID">ID của nhóm đơn vị</param>
        /// <param name="view">Tên view cần hiển thị</param>
        public ActionResult ChangeListChucNang(string roleId)
        {
            try
            {
                var str = new StringBuilder();
                var listChucNangExists = db.Ht_Role_PhanHe_ChucNang.Where(o => o.RoleId == roleId).Select(o => o.PhanHeChucNang_ID);
                var listChucNangNotExits = db.Ht_PhanHeChucNang.Where(o => o.TrangThai == TrangThai.HoatDong && !listChucNangExists.Contains(o.PhanHeChucNang_ID)).OrderBy(o => o.TenChucNang);

                if (listChucNangNotExits.Any())
                {
                    str.Append("<select id='ListChucNang' name='ListChucNang' style='width: 300px;' multiple=''>");

                    foreach (var item in listChucNangNotExits)
                    {
                        str.AppendFormat("<option value='{0}'>{1}</option>", item.PhanHeChucNang_ID, item.TenChucNang);
                    }

                    str.Append("</select>");
                }

                return Json(new { danhSach = str.ToString() });
            }
            catch (Exception ex)
            {
                var exv = new ExceptionViewer(ex);
                return Json(new { msg = exv.GetErrorMessage(exv.sMessege) });
            }
        }