Exemplo n.º 1
0
        public ActionResult bct_TaoMoiDieuPhoi(FormCollection f)
        {
            if (xulyChung.duocCapNhat(idOfPage, "7"))
            {
                string          ndThongBao = ""; int kqLuu = 0;
                qlCaPheEntities db  = null;
                BangGiaoViec    bgv = new BangGiaoViec();
                try
                {
                    db = new qlCaPheEntities();

                    this.layDuLieuTrenView(bgv, f, db);
                    db.BangGiaoViecs.Add(bgv);
                    kqLuu = db.SaveChanges();

                    if (kqLuu > 0)
                    {
                        this.themCtBangGiaoViecVaoDatabase(bgv, db);
                        ndThongBao = createHTML.taoNoiDungThongBao("Phân công cho thành viên", xulyDuLieu.traVeKyTuGoc(bgv.tenDangNhap), "bct_TableDieuPhoi");
                        this.resetData();
                        this.taoDuLieuChoCbb(db, 0);
                        xulyChung.ghiNhatKyDtb(2, "Điều phối công tác của \" " + xulyDuLieu.traVeKyTuGoc(bgv.tenDangNhap) + " \"");
                    }
                }
                catch (Exception ex)
                {
                    this.doDuLieuLenView(bgv, db);
                    ndThongBao = ex.Message;
                    xulyFile.ghiLoi("Class: BangCongTacController - Function: bct_TaoMoiDieuPhoi_Post", ex.Message);
                }
                ViewBag.ScriptAjax = createScriptAjax.scriptGetInfoComboboxClick("cbbThanhVien", "ThanhVien/AjaxGetInforThanhVienByTaiKhoan?param=", "vungThanhVien");
                ViewBag.ThongBao   = createHTML.taoThongBaoLuu(ndThongBao);
            }
            return(View());
        }
Exemplo n.º 2
0
        public ActionResult bct_ChinhSuaDieuPhoi(FormCollection f)
        {
            string          ndThongBao = "";
            qlCaPheEntities db         = null;
            BangGiaoViec    bgv        = new BangGiaoViec();

            try
            {
                if (xulyChung.duocCapNhat(idOfPage, "7"))
                {
                    string param = xulyChung.nhanThamSoTrongSession(); //param = maBang;
                    if (param.Length > 0)
                    {
                        int maBang = xulyDuLieu.doiChuoiSangInteger(param), kqLuu = 0;
                        db  = new qlCaPheEntities();
                        bgv = db.BangGiaoViecs.SingleOrDefault(s => s.maBang == maBang);
                        if (bgv != null)
                        {
                            List <ctBangGiaoViec> listChiTiet = bgv.ctBangGiaoViecs.ToList();
                            this.layDuLieuTrenView(bgv, f, db);
                            //---------Cập nhật dự liệu trong bảng BangGiaoViec
                            db.Entry(bgv).State = System.Data.Entity.EntityState.Modified;
                            kqLuu = db.SaveChanges();
                            if (kqLuu > 0)
                            {
                                //-------Cập nhật bảng chi tiết. THỰC HIỆN XÓA DỮ LIỆU TRONG BẢNG CHI TIẾT VÀ TẠO MỚI LẠI
                                this.xoaChiTietDieuPhoi(db, listChiTiet);
                                this.themCtBangGiaoViecVaoDatabase(bgv, db);
                                xulyChung.ghiNhatKyDtb(4, "Điều phối công tác của \" " + xulyDuLieu.traVeKyTuGoc(bgv.tenDangNhap) + " \"");
                                this.resetData();
                                return(RedirectToAction("bct_TableDieuPhoi"));
                            }
                        }
                        else
                        {
                            throw new Exception("Bảng giao việc không tồn tại để cập nhật");
                        }
                    }
                    else
                    {
                        throw new Exception("Chưa nhận được tham số");
                    }
                }
            }
            catch (Exception ex)
            {
                xulyFile.ghiLoi("Class: BangCongTacController - Function: capNhatTrangThai", ex.Message);
                ndThongBao = ex.Message;
                this.doDuLieuLenView(bgv, db);
            }
            ViewBag.ThongBao = createHTML.taoThongBaoLuu(ndThongBao);
            return(View());
        }
Exemplo n.º 3
0
 /// <summary>
 /// Hàm thực hiện xóa 1 điều phối khỏi CSDL
 /// Sau khi xóa sẽ thực hiện load lại danh sách bằng javascript
 /// </summary>
 /// <param name="maBang">Mã bảng điều phối cần xóa</param>
 public void xoaDieuPhoi(string maBang)
 {
     try
     {
         if (xulyChung.duocCapNhat(idOfPage, "7"))
         {
             int maXoa = xulyDuLieu.doiChuoiSangInteger(maBang); int kqLuu = 0;
             if (maXoa > 0)
             {
                 qlCaPheEntities db  = new qlCaPheEntities();
                 BangGiaoViec    bgv = db.BangGiaoViecs.SingleOrDefault(b => b.maBang == maXoa);
                 if (bgv != null)
                 {
                     //-------Xóa tất cả chi tiết của điều phối trước.
                     List <ctBangGiaoViec> listChiTiet = bgv.ctBangGiaoViecs.ToList();
                     int soLuongChiTiet = listChiTiet.Count, chiTietDaXoa = 0;
                     if (listChiTiet.Count > 0)
                     {
                         chiTietDaXoa = xoaChiTietDieuPhoi(db, listChiTiet);
                     }
                     if (soLuongChiTiet == chiTietDaXoa)
                     {   //----Nếu đã xóa hết chi tiết thì xóa bảng DieuPhoi
                         db.BangGiaoViecs.Remove(bgv);
                         kqLuu = db.SaveChanges();
                         if (kqLuu > 0)
                         {
                             xulyChung.ghiNhatKyDtb(3, "Điều phối của  \"" + xulyDuLieu.traVeKyTuGoc(bgv.tenDangNhap) + " \"");
                         }
                     }
                 }
                 else
                 {
                     throw new Exception("Bảng giao việc cần xóa không tồn tại");
                 }
             }
             else
             {
                 throw new Exception("Mã bảng giao việc cần xóa không chính xác");
             }
         }
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: BangCongTacController - Function: capNhatTrangThai", ex.Message);
         Response.Redirect(xulyChung.layTenMien() + "/Home/PageNotFound");
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// Hàm thực hiện thêm chi tiết bảng giao việc trong giỏ vào database
 /// </summary>
 /// <param name="bgv"></param>
 /// <param name="db"></param>
 private void themCtBangGiaoViecVaoDatabase(BangGiaoViec bgv, qlCaPheEntities db)
 {
     try
     {
         cartDieuPhoi cart = (cartDieuPhoi)Session["dieuPhoi"];
         foreach (ctBangGiaoViec item in cart.Info.Values)
         {
             ctBangGiaoViec ctAdd = new ctBangGiaoViec();
             ctAdd.ghiChu = item.ghiChu;
             ctAdd.maBang = bgv.maBang;
             ctAdd.maCa   = item.maCa;
             db.ctBangGiaoViecs.Add(ctAdd);
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Exemplo n.º 5
0
        /// <summary>
        /// Hàm thực hiện lấy dữ liệu có trên giao diện gán cho các thuộc tính của object BangGiaoViec
        /// </summary>
        /// <param name="bgv"></param>
        /// <param name="f"></param>
        private void layDuLieuTrenView(BangGiaoViec bgv, FormCollection f, qlCaPheEntities db)
        {
            bgv.ngayLap   = DateTime.Now;
            bgv.ghiChu    = xulyDuLieu.xulyKyTuHTML(f["txtGhiChu"]);
            bgv.trangThai = true;

            bgv.tenDangNhap = xulyDuLieu.xulyKyTuHTML(f["cbbThanhVien"]);
            if (bgv.tenDangNhap.Equals("-1"))
            {
                throw new Exception("Vui lòng chọn tài khoản thành viên cần điều phối");
            }
            bgv.taiKhoan = db.taiKhoans.SingleOrDefault(t => t.tenDangNhap.Equals(bgv.tenDangNhap));

            cartDieuPhoi cart = (cartDieuPhoi)Session["dieuPhoi"];

            if (cart.Info.Values.Count <= 0)
            {
                throw new Exception("Vui lòng chọn ca cần điều phối cho nhân viên");
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// Hàm tạo giao diện form chỉnh sửa điều phối của nhân viên
 /// </summary>
 /// <returns></returns>
 public ActionResult bct_ChinhSuaDieuPhoi()
 {
     try
     {
         if (xulyChung.duocTruyCap(idOfPage))
         {
             string param = xulyChung.nhanThamSoTrongSession(); //param = maBang;
             if (param.Length > 0)
             {
                 int             maBang = xulyDuLieu.doiChuoiSangInteger(param);
                 qlCaPheEntities db     = new qlCaPheEntities();
                 BangGiaoViec    bgv    = db.BangGiaoViecs.SingleOrDefault(s => s.maBang == maBang);
                 if (bgv != null)
                 {
                     //-----Đổ dữ liệu chi tiết lên giao diện
                     this.docChiTietVaThemVaoGio(bgv);
                     //-----Đổ thông tin điều phối lên giao diện
                     this.doDuLieuLenView(bgv, db);
                     //----Chèn script ajax hiện thông tin thành viên khi người dùng click chọn trên combobox
                     ViewBag.ScriptAjax = createScriptAjax.scriptGetInfoComboboxClick("cbbThanhVien", "ThanhVien/AjaxGetInforThanhVienByTaiKhoan?param=", "vungThanhVien");
                     xulyChung.ghiNhatKyDtb(1, "Chỉnh sửa điều phối của \" " + xulyDuLieu.traVeKyTuGoc(bgv.tenDangNhap) + " \"");
                 }
                 else
                 {
                     throw new Exception("Bảng giao việc không tồn tại để cập nhật");
                 }
             }
             else
             {
                 throw new Exception("Chưa nhận được tham số");
             }
         }
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: BangCongTacController - Function: capNhatTrangThai", ex.Message);
         return(RedirectToAction("/Home/PageNotFound"));
     }
     return(View());
 }
Exemplo n.º 7
0
 /// <summary>
 /// Hàm thực hiện cập nhật trạng thái của 1 công tác.
 /// Tham số là mã bảng được lưu trữ trong Session
 /// </summary>
 /// <returns>Trả về giao diện danh mục Bảng công tác</returns>
 public ActionResult capNhatTrangThai()
 {
     try
     {
         if (xulyChung.duocCapNhat(idOfPage, "7"))
         {
             int    kqLuu = 0;
             string param = xulyChung.nhanThamSoTrongSession(); //param = maBang
             if (param.Length > 0)
             {
                 int             maBang = xulyDuLieu.doiChuoiSangInteger(param);
                 qlCaPheEntities db     = new qlCaPheEntities();
                 BangGiaoViec    bgv    = db.BangGiaoViecs.SingleOrDefault(s => s.maBang == maBang);
                 if (bgv != null)
                 {
                     bgv.trangThai       = !bgv.trangThai;
                     db.Entry(bgv).State = System.Data.Entity.EntityState.Modified;
                     kqLuu = db.SaveChanges();
                     if (kqLuu > 0)
                     {
                         xulyChung.ghiNhatKyDtb(4, "Cập nhật trạng thái điều phối của\" " + xulyDuLieu.traVeKyTuGoc(bgv.tenDangNhap) + " \"");
                     }
                 }
                 else
                 {
                     throw new Exception("Bảng công tác có mã " + maBang.ToString() + " không tồn tại để cập nhật");
                 }
             }
             else
             {
                 throw new Exception("không nhận được tham số");
             }
         }
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: BangCongTacController - Function: capNhatTrangThai", ex.Message);
     }
     return(RedirectToAction("bct_TableDieuPhoi"));
 }
Exemplo n.º 8
0
 /// <summary>
 /// Hàm thực hiện đổ dữ liệu của bảng giao việc đã có sẵn lên view
 /// </summary>
 /// <param name="bgv">Object chứa các thông tin bảng giao việc</param>
 /// <param name="db"></param>
 private void doDuLieuLenView(BangGiaoViec bgv, qlCaPheEntities db)
 {
     try
     {
         ViewBag.txtGhiChu   = xulyDuLieu.traVeKyTuGoc(bgv.ghiChu);
         ViewBag.VungChiTiet = this.taoGiaoDienChiTiet();
         if (bgv.taiKhoan != null)
         {
             //-----------Hiển thị thông tin thành viên
             ViewBag.hinhDD = xulyChung.DrawInforThanhVienWithTaiKhoan(bgv.taiKhoan);
             this.taoDuLieuChoCbb(db, bgv.taiKhoan.maTV);
         }
         else
         {
             this.taoDuLieuChoCbb(db, 0);
         }
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: BangCongTacController - Function: doDuLieuLenView", ex.Message);
     }
 }
Exemplo n.º 9
0
 /// <summary>
 /// Hàm thực hiện đọc các thông tin chi tiết có trong database và thêm vào giỏ
 /// </summary>
 /// <param name="bgv"></param>
 private void docChiTietVaThemVaoGio(BangGiaoViec bgv)
 {
     try
     {
         this.resetData();
         cartDieuPhoi cart = (cartDieuPhoi)Session["dieuPhoi"];
         foreach (ctBangGiaoViec ct in bgv.ctBangGiaoViecs.ToList())
         {
             ctBangGiaoViec ctTam = new ctBangGiaoViec();
             ctTam.maCa         = ct.maCa;
             ctTam.BangGiaoViec = bgv;
             ctTam.caLamViec    = ct.caLamViec;
             ctTam.ghiChu       = ct.ghiChu;
             ctTam.maBang       = ct.maBang;
             cart.addCart(ctTam);
             Session["dieuPhoi"] = cart;
         }
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: BangCongTacController - Function: docChiTietVaThemVaoGio", ex.Message);
     }
 }
Exemplo n.º 10
0
        /// <summary>
        /// Hàm tạo bảng chi tiết có trong modal chi tiết phân công tại danh mục
        /// </summary>
        /// <param name="bgv">Object chứa Điều phối cần xem</param>
        /// <returns>Chuỗi html tạo bảng nội dung</returns>
        private string taoBangChiTietDieuPhoi(BangGiaoViec bgv)
        {
            string htmlDetail = "";

            try
            {
                htmlDetail += " <div class=\"body table-responsive\">";
                htmlDetail += "    <table class=\"table table-bordered table-striped table-hover js-basic-example dataTable\" id=\"DataTables_Table_0\" role=\"grid\" aria-describedby=\"DataTables_Table_0_info\">";
                htmlDetail += "        <thead>";
                htmlDetail += "            <tr>";
                htmlDetail += "                <th>Tên ca</th>";
                htmlDetail += "                <th>Buổi</th>";
                htmlDetail += "                <th>Thời gian làm việc</th>";
                htmlDetail += "                <th>Ghi chú</th>";
                htmlDetail += "            </tr>";
                htmlDetail += "        </thead>";
                htmlDetail += "        <tbody>";
                //----Lặp qua bảng chi tiết để xem chi tiết đã phân công
                foreach (ctBangGiaoViec ct in bgv.ctBangGiaoViecs.ToList().OrderBy(c => c.caLamViec.buoi))
                {
                    htmlDetail += "            <tr role=\"row\" class=\"odd\">";
                    htmlDetail += "                <td>" + xulyDuLieu.traVeKyTuGoc(ct.caLamViec.tenCa) + "</td>";
                    htmlDetail += "                <td>" + this.layBuoiLamViec(ct.caLamViec.buoi) + "</td>";
                    htmlDetail += "                <td>" + ct.caLamViec.batDau.ToString() + " - " + ct.caLamViec.ketThuc.ToString() + "</td>";
                    htmlDetail += "                <td>" + xulyDuLieu.traVeKyTuGoc(ct.ghiChu) + "</td>";
                    htmlDetail += "            </tr>";
                }
                htmlDetail += "        </tbody>";
                htmlDetail += "    </table>";
                htmlDetail += "</div>";
            }
            catch (Exception ex)
            {
                xulyFile.ghiLoi("Class: BangCongTacController - Function: AjaxXemChiTietCaCuaTaiKhoan", ex.Message);
            }
            return(htmlDetail);
        }