/// <summary> /// hàm thực hiện thêm chi tiết công thức vào database /// </summary> /// <param name="maCongThuc"></param> private void themChiTietVaoDatabase(int maCongThuc, qlCaPheEntities db) { try { //------lấy danh sách các chi tiết trong session cartCongThuc cart = (cartCongThuc)Session["congThuc"]; //------Lặp qua từng phần tử có trong list và thêm vào database foreach (ctCongThuc ct in cart.getList()) { ctCongThuc ctThem = new ctCongThuc(); //----Vì mã ct và ctThem khác nhau nên cần gán lại giá trị ctThem.buocSo = ct.buocSo; ctThem.ghiChu = ct.ghiChu; ctThem.hanhDong = ct.hanhDong; ctThem.maCongThuc = maCongThuc; if (ct.maNguyenLieu != 0) //---Kiểm tra, nếu có nguyên liệu thì thêm các thuộc tính của nguyên liệu { ctThem.maNguyenLieu = ct.maNguyenLieu; ctThem.soLuongNguyenLieu = ct.soLuongNguyenLieu; ctThem.donViSuDung = ct.donViSuDung; } //----Thêm vào database db.ctCongThucs.Add(ctThem); db.SaveChanges(); } } catch (Exception ex) { xulyFile.ghiLoi("Class CongThucController - Function: themChiTietVaoDatabase", ex.Message); } }
void Session_Start(object sender, EventArgs e) { //--Tạo session object chứa chi tiết công thức pha chế Session["congThuc"] = new cartCongThuc(); //--Tạo session object chứa thông tin chi tiết phiếu nhập kho Session["ctNhapKho"] = new cartNhapKho(); //--Tạo session object chứa thông tin chi tiết của hóa đơn tạm Session["hoaDonTam"] = new cartHoaDonTam(); //--Tạo session lưu đường dẫn và request Session["urlAction"] = ""; //--Tạo session object chứa thông tin chi tiết phiếu xuất kho Session["ctXuatKho"] = new cartXuatKho(); //--Tạo session object chứa thông tin nguyên liệu cần kiểm kho Session["truocKiemKho"] = new cartKiemKho(); //--Tạo session object chứa thông tin nguyên liệu đã kiểm Session["sauKiemKho"] = new cartKiemKho(); //--Tạo session chứa danh sách các trang được phép truy cập Session["quyenHan"] = new cartQuyenHan(); //--Tạo session chứa thông tin chi tiết điều phối Session["dieuPhoi"] = new cartDieuPhoi(); //--Tạo session chứa object các mục tiêu chưa đánh giá Session["chuaDanhGia"] = new cartMucTieu(); //--Tạo session chứa object các mục tiêu đã đánh giá Session["daDanhGia"] = new cartDanhGia(); //--Tạo session object chứa thông tin người dùng đăng nhập hệ thống Session["login"] = new taiKhoan(); //--Tạo session object chứa các bàn đã đặt Session["datBan"] = new cartDatBan(); }
/// <summary> /// Hàm thiết kế bảng DANH SÁCH CHI TIẾT, NGUYÊN LIỆU SỬ DỤNG, TỔNG TIỀN NGUYÊN LIỆU được lấy từ Session /// </summary> /// <returns>htmlBangChiTiet|htmlBangNguyenLieuSuDung</returns> public string taoBangChiTietVaNguyenLieuSuDungTuSession() { cartCongThuc cart = (cartCongThuc)Session["congThuc"]; string kq = ""; kq += "<table class=\"table table-hover\">"; kq += " <thead>"; kq += " <tr>";//------Tạo tiêu đề bảng kq += " <th>Bước</th><th>Hành động</th><th>Tên nguyên liệu</th><th>Số lượng</th><th>Đơn vị</th><td>Chức năng</td>"; kq += " </tr>"; kq += " </thead>"; kq += " <tbody>"; try { foreach (ctCongThuc ct in cart.getList().OrderBy(c => c.buocSo)) { kq += " <tr>"; kq += " <th scope=\"row\">" + ct.buocSo.ToString() + "</th>"; kq += " <td>" + xulyDuLieu.traVeKyTuGoc(ct.hanhDong) + "</td>"; //---------Lấy tên nguyên liệu đã chọn nguyenLieu nl = ct.nguyenLieu; if (nl != null) { kq += " <td>" + xulyDuLieu.traVeKyTuGoc(nl.tenNguyenLieu) + "</td>"; } else { kq += " <td></td>"; } kq += " <td>" + ct.soLuongNguyenLieu + "</td>"; kq += " <td>" + xulyDuLieu.traVeKyTuGoc(ct.donViSuDung) + "</td>"; kq += " <td>"; kq += " <div class=\"btn-group open\">"; kq += " <button type=\"button\" class=\"btn btn-primary dropdown-toggle\" data-toggle=\"dropdown\" aria-expanded=\"true\">Chức năng <span class=\"caret\"></span></button>"; kq += " <ul class=\"dropdown-menu\" role=\"menu\">"; kq += " <li><a class=\"col-blue waves-effect waves-block suaBuoc\" maCt=\"" + ct.maChiTiet.ToString() + "\">"; kq += " <i class=\"material-icons\">mode_edit</i>Sửa bước"; kq += " </a></li>"; kq += " <li><a class=\"col-red waves-effect waves-block xoaBuoc\" maCt=\"" + ct.maChiTiet.ToString() + "\">"; kq += " <i class=\"material-icons\">delete</i>Xoá bước"; kq += " </a></li>"; kq += " </ul>"; kq += " </div>"; kq += " </td>"; kq += " </tr>"; } } catch (Exception ex) { xulyFile.ghiLoi("Class CongThucController - Function: taoBangChiTietTuSession", ex.Message); } kq += " </tbody>"; kq += "</table>"; //Trả vê chuỗi htmlBangDanhSachCacBuoc|bảng danh sách nguyên liệu|tongGiaNguyenLieu return(kq + "|" + this.taoBangNguyenLieuSuDung() + "|" + xulyDuLieu.doiVND(cart.getTotalPriceNguyenLieu())); }
/// <summary> /// Hàm thực hiện xóa 1 bước trong Session /// </summary> /// <param name="maCt">Mã chi tiết công thức cần xóa</param> /// <returns>Bảng danh sách các bước còn lại trong session</returns> public string xoaMotBuoc(int maCt) { cartCongThuc cart = (cartCongThuc)Session["congThuc"]; if (maCt > 0) { //-------Lấy công thức cần xóa có trong cart ctCongThuc ctXoa = cart.getList().SingleOrDefault(c => c.maChiTiet == maCt); if (ctXoa != null) { cart.removeItem(ctXoa.maChiTiet); Session["congThuc"] = cart; } } //-----Trả về chuỗi bao gồm htmlTablBangDanhSachBuoc|BangDanhSachNguyenLieu|TongTienNguyenLieu return(this.taoBangChiTietVaNguyenLieuSuDungTuSession()); }
/// <summary> /// Hàm thực hiện lấy thông tin chi tiết rồi đổ dữ liệu lên giao diện khi người dùng click vào chỉnh sửa chi tiết /// </summary> /// <param name="maCt"></param> /// <returns>Trả về chuỗi dữ liệu trong chi tiết theo dạng /// buocSo|hanhDong|ghiChu|soLuongSuDung|donViSuDung|maChiTiet|maNguyenLieuVaHinhAnh</returns> public string doDuLieuChiTietLenView(int maCt) { string kq = ""; cartCongThuc cart = (cartCongThuc)Session["congThuc"]; ctCongThuc ctSua = cart.getItem(maCt);; if (ctSua != null) { string imgAndID = ""; if (ctSua.nguyenLieu != null) //-----Kiểm tra xem có nguyên liệu để gán hình và mã nguyên liệu cập nhật { //------Tạo chuỗi hiện hình nguyên liệu nếu bước có nguyên liệu. imgAndID += "<img id=\"hinhNguyenLieu\" class='img img-responsive img-thumbnail'"; imgAndID += "src=\"" + xulyDuLieu.chuyenByteHinhThanhSrcImage(ctSua.nguyenLieu.hinhAnh) + "\" width=\"250px\" height=\"auto\" />"; imgAndID += "<input id=\"maNguyenLieuDaChon\" type=\"hidden\" value=\"" + ctSua.maNguyenLieu.ToString() + "\" />"; } kq += ctSua.buocSo.ToString() + "|" + xulyDuLieu.traVeKyTuGoc(ctSua.hanhDong) + "|" + xulyDuLieu.traVeKyTuGoc(ctSua.ghiChu) + "|" + ctSua.soLuongNguyenLieu.ToString() + "|" + xulyDuLieu.traVeKyTuGoc(ctSua.donViSuDung) + "|" + ctSua.maChiTiet.ToString() + "|" + imgAndID; } return(kq); }
/// <summary> /// hàm tạo bảng danh sách nguyên liệu đã dùng và gán vào tag có id... /// </summary> /// <returns>Các dòng trong bảng</returns> public string taoBangNguyenLieuSuDung() { cartCongThuc cart = (cartCongThuc)Session["congThuc"]; string kq = ""; int stt = 1; foreach (ctCongThuc ct in cart.getListNguyenLieu()) { if (ct.maNguyenLieu > 0) //Nếu bước đang duyệt có nguyên liệu thì hiện bảng { kq += "<tr>"; kq += " <th scope=\"row\">" + stt.ToString() + "</th>"; kq += " <td>" + xulyDuLieu.traVeKyTuGoc(ct.nguyenLieu.tenNguyenLieu) + "</td>"; kq += " <td>" + ct.soLuongNguyenLieu.ToString() + "</td>"; kq += "</tr>"; } stt++; } return(kq); }
/// <summary> /// Hàm thực hiện ajax thêm các bước vào bảng và thực hiện lấy danh sách các bước có trong cart đổ lên giao diện /// </summary> /// <returns>Trả vê chuỗi htmlBangDanhSachCacBuoc|bảng danh sách nguyên liệu|tongGiaNguyenLieu</returns> public string themChiTietVaTraVeBang(string duLieu) { cartCongThuc cart = (cartCongThuc)Session["congThuc"]; try { ctCongThuc chiTietAdd = new ctCongThuc(); this.layDuLieuTuViewChiTiet(chiTietAdd, duLieu); //------Thêm chi tiết vào session cart.addCart(chiTietAdd); //-----Cập nhật lại session Session["congThuc"] = cart; } catch (Exception ex) { xulyFile.ghiLoi("Class CongThucController - Function: themChiTietVaTraVeBang", ex.Message); } //Trả vê chuỗi htmlBangDanhSachCacBuoc|bảng danh sách nguyên liệu|tongGiaNguyenLieu return(taoBangChiTietVaNguyenLieuSuDungTuSession()); }
/// <summary> /// Hàm thực hiện chỉnh sửa lại bước trong session /// </summary> /// <param name="maCt">Mã chi tiết để xác định chi tiết cần sửa</param> /// <param name="duLieu">Chuỗi chứa dữ liệu chỉnh sửa có dang: maNguyenLieu|buocSo|soLuong|donVi|hanhDong|ghiChu</param> /// <returns>Trả vê chuỗi htmlBangDanhSachCacBuoc|bảng danh sách nguyên liệu|tongGiaNguyenLieu</returns> public string chinhSuaBuoc(string duLieu, int maCt) { cartCongThuc cart = (cartCongThuc)Session["congThuc"]; try { //-----Lấy ra 1 phần tử trong session với điều kiện..... ctCongThuc chiTietSua = cart.getItem(maCt); this.layDuLieuTuViewChiTiet(chiTietSua, duLieu); //----Xóa bước cũ trong session và tạo lại cart.removeItem(maCt); chiTietSua.maChiTiet = maCt; cart.addCart(chiTietSua); //------Cập nhật lại session Session["congThuc"] = cart; } catch (Exception ex) { xulyFile.ghiLoi("Class CongThucController - Function: chinhSuaBuoc", ex.Message); } return(taoBangChiTietVaNguyenLieuSuDungTuSession()); }
/// <summary> /// Hàm tạo giao diện chỉnh sửa công thức /// </summary> /// <param name="maCongThuc"></param> /// <returns></returns> public ActionResult ct_ChinhSuaCongThuc() { this.resetData(); try { string param = xulyChung.nhanThamSoTrongSession(); if (param.Length > 0) { int maCongThuc = xulyDuLieu.doiChuoiSangInteger(param); qlCaPheEntities db = new qlCaPheEntities(); congThucPhaChe ctSua = db.congThucPhaChes.SingleOrDefault(c => c.maCongThuc == maCongThuc); if (ctSua != null) { this.doDuLieuCongThucLenView(ctSua, db); //------Gán dữ liệu trong bảng chi tiết vào session cartCongThuc cart = (cartCongThuc)Session["congThuc"]; foreach (ctCongThuc ct in db.ctCongThucs.ToList().Where(c => c.maCongThuc == ctSua.maCongThuc)) { cart.addCart(ct); Session["congThuc"] = cart; } xulyChung.ghiNhatKyDtb(1, "Chỉnh sửa công thức pha chế của \" " + xulyDuLieu.traVeKyTuGoc(ctSua.sanPham.tenSanPham) + " \""); } } else { throw new Exception("không nhận được tham số"); } } catch (Exception ex) { xulyFile.ghiLoi("Class CongThucController - Function: ct_ChinhSuaCongThuc_Get", ex.Message); return(RedirectToAction("PageNotFound", "Home")); } return(View()); }