public ActionResult xk_TaoMoiPhieuXuat(FormCollection f, phieuXuatKho phieu)
 {
     if (xulyChung.duocCapNhat(idOfPage, "7"))
     {
         string          ndThongBao = ""; int kqLuu = 0;
         qlCaPheEntities db = new qlCaPheEntities();
         try
         {
             this.layDuLieuTrenView(phieu, f);
             db.phieuXuatKhoes.Add(phieu);
             kqLuu = db.SaveChanges();
             if (kqLuu > 0)
             {
                 //----------Thêm chi tiết phiếu xuất kho
                 this.insertCtXuatKhoAndUpdateTonKho(phieu.maPhieu, db);
                 ndThongBao = createHTML.taoNoiDungThongBao("Phiếu xuất kho", phieu.maPhieu.ToString(), "xk_TableXuatKho");
                 this.taoDuLieuChoCbbKhoHang(db);
                 this.resetSession();
                 xulyChung.ghiNhatKyDtb(2, "Phiếu xuất kho \" " + phieu.maPhieu.ToString() + " \"");
             }
         }
         catch (Exception ex)
         {
             ndThongBao = ex.Message;
             xulyFile.ghiLoi("Class: XuatKhoController - Function: xk_TaoMoiPhieuXuat_Post", ex.Message);
             this.doDuLieuLenView(phieu, db);
         }
         ViewBag.ThongBao = createHTML.taoThongBaoLuu(ndThongBao);
     }
     return(View());
 }
        /// <summary>
        /// Hàm thực hiện lấy dữ liệu từ giao  diện thêm vào các thuộc tính của phieuXuatKho
        /// </summary>
        /// <param name="phieu"></param>
        private void layDuLieuTrenView(phieuXuatKho phieu, FormCollection f)
        {
            string loi = "";

            phieu.maKho = xulyDuLieu.doiChuoiSangInteger(f["cbbKhoHang"]);
            if (phieu.maKho <= 0)
            {
                loi += "Vui lòng chọn kho hàng nhận hàng <br/>";
            }
            phieu.ngayXuat      = DateTime.Now;
            phieu.tongTien      = xulyDuLieu.doiChuoiSangInteger(f["txtTongTien"]);
            phieu.nguoiLapPhieu = ((taiKhoan)Session["login"]).tenDangNhap;
            phieu.ghiChu        = xulyDuLieu.xulyKyTuHTML(f["txtGhiChu"]);
            if (loi.Length > 0)
            {
                throw new Exception(loi);
            }
        }
示例#3
0
 /// <summary>
 /// Hàm thêm mới 1 phiếu xuất kho trong CSDL
 /// </summary>
 /// <param name="maBan">Mã bàn để ghi chú cho phiếu xuất kho.</param>
 /// <param name="db"></param>
 private void insertNewPhieuXuatKho(int maBan, qlCaPheEntities db)
 {
     try
     {
         phieuXuatKho phieuXuatAdd = new phieuXuatKho();
         phieuXuatAdd.maKho         = db.khoHangs.First().maKhoHang; //-------Lấy thông tin kho hàng
         phieuXuatAdd.ngayXuat      = DateTime.Now;
         phieuXuatAdd.nguoiLapPhieu = xulyChung.layTenDangNhap();
         phieuXuatAdd.ghiChu        = "XUẤT NGUYÊN LIỆU PHA CHẾ CHO BÀN CÓ MÃ: " + maBan.ToString();
         db.phieuXuatKhoes.Add(phieuXuatAdd);
         db.SaveChanges();
         //--------Gán lại mã phiếu vào session để xác định phiếu cần thêm nguyên liệu xuất
         Session["urlAction"] = "page=pc_ThucHienPhaCheTheoBan|request?maBan=" + maBan.ToString() + "&maPhieu=" + phieuXuatAdd.maPhieu.ToString();;
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: PhaCheController - Function: insertNewPhieuXuatKho", ex.Message);
     }
 }
        /// <summary>
        /// Hàm đổ dữ liệu của phiếu xuất kho lên giao diện
        /// </summary>
        /// <param name="phieu"></param>
        /// <param name="db"></param>
        private void doDuLieuLenView(phieuXuatKho phieu, qlCaPheEntities db)
        {
            string htmlCbb = "";

            foreach (khoHang kh in db.khoHangs.ToList().OrderBy(s => s.tenKhoHang))
            {
                if (kh.maKhoHang == phieu.maKho)
                {
                    htmlCbb += "<option selected ";// value=\""  + kh.maKhoHang.ToString() + "\">" + xulyDuLieu.traVeKyTuGoc(kh.tenKhoHang) + "</option>";
                }
                else
                {
                    htmlCbb += "<option ";
                }
                htmlCbb += "value=\"" + kh.maKhoHang.ToString() + "\">" + "<b>" + xulyDuLieu.traVeKyTuGoc(kh.tenKhoHang) + "</b>" + " - " + xulyDuLieu.traVeKyTuGoc(kh.diaChi) + "</option>";
            }
            ViewBag.cbbKhoHang = htmlCbb;

            ViewBag.txtMaPhieu       = phieu.maPhieu.ToString();
            ViewBag.txtNgayNhap      = string.Format("{0:yyyy-MM-dd}", phieu.ngayXuat);
            ViewBag.txtTongTien      = phieu.tongTien.ToString();
            ViewBag.txtNguoiLapPhieu = xulyDuLieu.traVeKyTuGoc(phieu.nguoiLapPhieu);
            ViewBag.txtGhiChu        = xulyDuLieu.traVeKyTuGoc(phieu.ghiChu);
        }
 /// <summary>
 /// hàm xóa 1 phiếu xuất kho hàng khỏi CSDL
 /// </summary>
 /// <param name="maPhieu"></param>
 public void AjaxXoaPhieuXuat(int maPhieu)
 {
     try
     {
         int             kqLuu    = 0;
         qlCaPheEntities db       = new qlCaPheEntities();
         phieuXuatKho    phieuXoa = db.phieuXuatKhoes.SingleOrDefault(p => p.maPhieu == maPhieu);
         if (phieuXoa != null)
         {
             this.xoaChiTietTrongDatabase(phieuXoa.maKho, db);
             //--Xóa tất cả dữ liệu trong chi tiết trước.
             db.phieuXuatKhoes.Remove(phieuXoa);
             kqLuu = db.SaveChanges();
             if (kqLuu > 0)
             {
                 xulyChung.ghiNhatKyDtb(3, "Phiếu xuất kho có mã \"" + phieuXoa.maPhieu.ToString() + " \"");
             }
         }
     }
     catch (Exception ex)
     {
         xulyFile.ghiLoi("Class: NhapKhoController - Function: AjaxXoaPhieuNhap", ex.Message);
     }
 }
        /// <summary>
        /// Hàm tạo html bảng danh sách chi tiết phiếu và nhúng vào Modal khi người dùng click vào mã phiếu để xem
        /// </summary>
        /// <param name="maPhieu"></param>
        /// <returns>html modal chi tiết</returns>
        public string AjaxLayChiTietPhieu(int maPhieu)
        {
            string kq = "";

            if (xulyChung.duocTruyCap(idOfPage))
            {
                qlCaPheEntities db    = new qlCaPheEntities();
                phieuXuatKho    phieu = db.phieuXuatKhoes.SingleOrDefault(p => p.maPhieu == maPhieu);
                if (phieu != null)
                {
                    kq += "<div class=\"modal-header\">";
                    kq += "      <button type=\"button\" class=\"close\" data-dismiss=\"modal\">×</button>";
                    kq += "    <h3 class=\"modal-title\" id=\"largeModalLabel\">CHI TIẾT PHIẾU XUẤT " + phieu.maPhieu.ToString() + "</h3>";
                    kq += "</div>";
                    kq += "<div class=\"modal-body\">";
                    kq += "    <div class=\"row\">";
                    kq += "        <div class=\"col-md-12 col-lg-12\">";
                    kq += "            <div class=\"card\">";
                    kq += "                <div class=\"header bg-cyan\">";
                    kq += "                    <h2> Danh mục nguyên liệu trong phiếu nhập</h2>";
                    kq += "                </div>";
                    kq += "                <div class=\"body table-responsive\">";
                    kq += "                <!--Nội dung-->";
                    kq += "                     <table class=\"table table-hover\">";
                    kq += "                         <thead>";
                    kq += "                             <tr>";
                    kq += "                                 <th>Tên nguyên liệu</th>";
                    kq += "                                 <th>Số lượng xuất</th>";
                    kq += "                                 <th>Đơn giá xuất</th>";
                    kq += "                                 <th>Ghi chú</th>";
                    kq += "                             </tr>";
                    kq += "                         </thead>";
                    kq += "                         <tbody>";
                    foreach (ctPhieuXuatKho ct in phieu.ctPhieuXuatKhoes.ToList())
                    {
                        kq += "                             <tr>";
                        kq += "                                 <td>";
                        kq += "                                     <img width=\"50px;\" height=\"50px;\" src=\"" + xulyDuLieu.chuyenByteHinhThanhSrcImage(ct.nguyenLieu.hinhAnh) + "\" />";
                        kq += "                                     <b>" + xulyDuLieu.traVeKyTuGoc(ct.nguyenLieu.tenNguyenLieu) + "</b>";
                        kq += "                                 </td>";
                        kq += "                                 <td>" + ct.soLuongXuat.ToString() + " " + ct.nguyenLieu.donViPhaChe + "</td>";
                        kq += "                                 <td>" + xulyDuLieu.doiVND(ct.donGiaXuat) + "</td>";
                        kq += "                                 <td>" + xulyDuLieu.traVeKyTuGoc(ct.ghiChu) + "</td>";
                        kq += "                             </tr>";
                    }
                    kq += "                         </tbody>";
                    kq += "                     </table>";
                    kq += "                </div>";
                    kq += "            </div>";
                    kq += "        </div>";
                    kq += "</div>";
                    kq += "<div class=\"modal-footer\">";
                    kq += "     <div class=\"col-md-9\">";
                    kq += "         <div class=\"pull-left\">";
                    kq += "             <label class=\"font-18 pull-left col-red bold\">Tổng tiền: " + xulyDuLieu.doiVND(phieu.tongTien) + "</label><br />";
                    kq += "             <label class=\"pull-left col-blue-grey\"><i>* Ghi chú: </i>" + xulyDuLieu.traVeKyTuGoc(phieu.ghiChu) + "</label>";
                    kq += "         </div>";
                    kq += "     </div>";
                    kq += "     <div class=\"col-md-3\">";
                    kq += "         <button type=\"button\" class=\"btn btn-default waves-effect\" data-dismiss=\"modal\"><i class=\"material-icons\">exit_to_app</i>Đóng lại</button>";
                    kq += "     </div>";
                    kq += "</div>";
                    xulyChung.ghiNhatKyDtb(5, "Chi tiết phiếu xuất kho có mã \"" + phieu.maPhieu.ToString() + " \"");
                }
            }
            return(kq);
        }