public int UpdateReceiveVoucher(ReceiveVoucher vUpdate) { int rowAffected = 0; string idVoucher = vUpdate.ID; ReceiveVoucher voucher = db.ReceiveVouchers.Find(idVoucher); if (voucher != null) { //voucher.Supplier = null; voucher.IDSupplier = vUpdate.IDSupplier; voucher.Date = vUpdate.Date; //remove old info foreach (var oInfo in voucher.ReceiveVoucherInfoes.ToList()) { voucher.ReceiveVoucherInfoes.Remove(oInfo); } //add new info foreach (var nInfo in vUpdate.ReceiveVoucherInfoes) { voucher.ReceiveVoucherInfoes.Add(nInfo); } rowAffected = db.SaveChanges(); db.Entry(voucher).Reference(v => v.Supplier).Load(); } return(rowAffected); }
public FormUpdateReceiveVoucher(ReceiveVoucher voucher) { InitializeComponent(); reVoucherSelected = voucher; reVoucherInfos = ReceiveVoucherInfoDAO.Instance.GetListDTO(reVoucherSelected.ID); supplierInVoucher = reVoucherSelected.Supplier; listProductOutOfReceiveVoucher = ProductDAO.Instance.GetListProductOutOfReceiveVoucher(reVoucherSelected.ID); }
private void buttonOK_Click(object sender, EventArgs e) { var result = MessageBox.Show("Xác nhận thay đổi?", "Xác nhận", MessageBoxButtons.OKCancel); if (result == DialogResult.OK) { int rowAffected = 0; //step1: update receive voucher ReceiveVoucher voucherUpdate = new ReceiveVoucher(); voucherUpdate.ID = reVoucherSelected.ID; voucherUpdate.IDSupplier = (comboBoxIDSupplier.SelectedItem as Supplier).ID; voucherUpdate.Date = dateTimePickerInputDate.Value; //ReceiveVoucherDAO.Instance.UpdateReceiveVoucher(voucherUpdate); //step2: update receive voucher infomation //step2.1: remove all product have quantityOutput = 0( not been sold) //step2.2: if product in dtgview has been sold, the only thing we can do is update it //step2.3: add product in dtgrview never be sold, add it to receive voucher //add new product info have quantity output = 0 //or update if it's quantity output > 0 for (int i = 0; i < dtgvProduct.RowCount; i++) { ReceiveVoucherInfoDTO infoDTO = dtgvProduct.Rows[i].DataBoundItem as ReceiveVoucherInfoDTO; ReceiveVoucherInfo voucherInfo = new ReceiveVoucherInfo(); voucherInfo.IDProduct = infoDTO.IDProduct; voucherInfo.IDReceiveVoucher = infoDTO.IDReceiveVoucher; voucherInfo.QuantityInput = infoDTO.QuantityInput; voucherInfo.PriceInput = infoDTO.PriceInput; voucherInfo.QuantityOutput = infoDTO.QuantityOutput; voucherInfo.Note = infoDTO.Note; voucherUpdate.ReceiveVoucherInfoes.Add(voucherInfo); } rowAffected = ReceiveVoucherDAO.Instance.UpdateReceiveVoucher(voucherUpdate); if (rowAffected > 0) { MessageBox.Show("Cập nhật thành công"); } else { MessageBox.Show("Không thành công"); } this.Close(); } }
public ActionResult ImportProductSingle(ReceiveVoucher receiveVoucher, ReceiveVoucherDetail receiveVoucherDetail) { ViewBag.ProductID = new SelectList(db.Suppliers.OrderBy(n => n.Name), "ID", "Name"); receiveVoucher.IsDeleted = false; receiveVoucher.UpdateDate = DateTime.Now; db.ReceiveVouchers.Add(receiveVoucher); db.SaveChanges(); receiveVoucherDetail.IDDetail = receiveVoucher.ID; Product product = db.Products.FirstOrDefault(n => n.ID == receiveVoucherDetail.ProductID); product.Amount += receiveVoucherDetail.Amount; db.ReceiveVoucherDetails.Add(receiveVoucherDetail); db.SaveChanges(); return(RedirectToAction("ProductOutOfStock")); }
public int InserReceivetVoucher(string id, DateTime date, string IDSupplier) { int rowAffected = 0; ReceiveVoucher v = new ReceiveVoucher(); v.ID = id; v.Date = date; v.IDSupplier = IDSupplier; db.ReceiveVouchers.Add(v); rowAffected = db.SaveChanges(); return(rowAffected); }
public bool HaveTheProductBeenSold(string idVoucher) { bool check = false; ReceiveVoucher voucher = GetByID(idVoucher); foreach (var info in voucher.ReceiveVoucherInfoes) { if (info.QuantityOutput > 0) { check = true; } break; } return(check); }
public int InserReceivetVoucher(string idVoucher, DateTime date, string IDSupplier, List <ReceiveVoucherInfo> voucherInfos) { int rowAffected = 0; ReceiveVoucher voucher = new ReceiveVoucher(); voucher.ID = idVoucher; voucher.Date = date; voucher.IDSupplier = IDSupplier; foreach (var info in voucherInfos) { voucher.ReceiveVoucherInfoes.Add(info); } db.ReceiveVouchers.Add(voucher); rowAffected = db.SaveChanges(); db.Entry(voucher).Reference(v => v.Supplier).Load(); return(rowAffected); }
public ActionResult ImportGoods(ReceiveVoucher receiveVoucher, IEnumerable <ReceiveVoucherDetail> lstReceiveVoucherDetails) { ViewBag.SupplierID = db.Suppliers; ViewBag.ListProduct = db.Products; receiveVoucher.IsDeleted = false; db.ReceiveVouchers.Add(receiveVoucher); db.SaveChanges(); Product product; foreach (var item in lstReceiveVoucherDetails) { //update quantity product product = db.Products.Single(n => n.ID == item.ProductID); product.Amount += item.Amount; item.ReceiveVoucherID = receiveVoucher.ID; } db.ReceiveVoucherDetails.AddRange(lstReceiveVoucherDetails); db.SaveChanges(); return(View()); }
public int RemoveReceiveVoucher(string idVoucher) { int rowAffected = 0; //we check HaveTheProductBeenSold before remove if (!HaveTheProductBeenSold(idVoucher)) { ReceiveVoucher voucher = GetByID(idVoucher); if (voucher != null) { foreach (var info in voucher.ReceiveVoucherInfoes.ToList()) { voucher.ReceiveVoucherInfoes.Remove(info); } db.ReceiveVouchers.Remove(voucher); rowAffected = db.SaveChanges(); } } return(rowAffected); }
private void buttonDelete_Click(object sender, EventArgs e) { Button categoryButtonTagged = buttonDelete.Tag as Button; if (categoryButtonTagged == buttonCategoryProduct) { ProductDTO productSelected = rowSelectedObj as ProductDTO; if (productSelected != null) { FormDeleteProduct formDelete = new FormDeleteProduct(); formDelete.productSelected = productSelected; formDelete.ShowDialog(); LoadDtgvProduct(); } else { MessageBox.Show("Bạn chưa chọn sản phẩm"); } } if (categoryButtonTagged == buttonCategorySupplier) { Supplier supplierSelected = rowSelectedObj as Supplier; if (supplierSelected != null) { FormDeleteSupplier fDel = new FormDeleteSupplier(); fDel.supplierSelectedFromDtgv = supplierSelected; fDel.ShowDialog(); LoadDtgvSupplier(); } else { MessageBox.Show("Bạn chưa chọn nhà cung cấp"); } } if (categoryButtonTagged == buttonCategoryCustomer) { Customer customerSelected = rowSelectedObj as Customer; if (customerSelected != null) { FormDeleteCustomer fDel = new FormDeleteCustomer(); fDel.customerSelectedFromListView = customerSelected; fDel.ShowDialog(); LoadDtgvCustomer(); } else { MessageBox.Show("Bạn chưa chọn khách hàng"); } } if (categoryButtonTagged == buttonCategoryReceiveVoucher) { ReceiveVoucherDTO voucherInfoSelected = rowSelectedObj as ReceiveVoucherDTO; if (voucherInfoSelected != null) { if (ReceiveVoucherDAO.Instance.HaveTheProductBeenSold(voucherInfoSelected.ReceiveVoucherID)) { MessageBox.Show("Phiếu nhập hàng này đã có sản phẩm được xuất kho. Bạn không thể xóa"); } else { ReceiveVoucher voucher = ReceiveVoucherDAO.Instance.GetByID(voucherInfoSelected.ReceiveVoucherID); FormDeleteReceiveVoucher f = new FormDeleteReceiveVoucher(); f.voucherSelected = voucher; this.Hide(); f.ShowDialog(); LoadDtgvReceiveVoucher(); this.Show(); } } else { MessageBox.Show("Hãy chọn dòng thông tin bạn muốn xóa"); } } if (categoryButtonTagged == buttonCategoryDeliveryVoucher) { var voucher = rowSelectedObj as DeliveryVoucherView; if (voucher != null) { string deliveryVoucherID = voucher.VoucherID.ToString(); FormDeleteDeliveryVoucher f = new FormDeleteDeliveryVoucher(); f.DeliveryVoucherID = deliveryVoucherID; f.ShowDialog(); LoadDtgvDeliveryVoucher(); } else { MessageBox.Show("Hãy chọn phiếu xuất bạn muốn xóa"); } } }
private void buttonUpdate_Click(object sender, EventArgs e) { Button categoryButtonClicked = buttonUpdate.Tag as Button; if (categoryButtonClicked == buttonCategoryProduct) { FormUpdateProduct formUpdate = new FormUpdateProduct(); ProductDTO selectedProduct = rowSelectedObj as ProductDTO; if (selectedProduct != null) { formUpdate.selectedProductFromDtgv = selectedProduct; formUpdate.ShowDialog(); //reload dtgv LoadDtgvProduct(); } else { MessageBox.Show("Bạn chưa chọn sản phẩm"); } } if (categoryButtonClicked == buttonCategorySupplier) { Supplier supplierSelected = rowSelectedObj as Supplier; if (supplierSelected != null) { FormUpdateSupplier fUpSupp = new FormUpdateSupplier(); fUpSupp.supplierSelectedFromDtgv = supplierSelected; fUpSupp.ShowDialog(); LoadDtgvSupplier(); } else { MessageBox.Show("Hãy click vào nhà cung cấp bạn muốn"); } } if (categoryButtonClicked == buttonCategoryCustomer) { Customer customerSelected = rowSelectedObj as Customer; if (customerSelected != null) { FormUpdateCustomer f = new FormUpdateCustomer(); f.customerSelectedFromListView = customerSelected; f.ShowDialog(); LoadDtgvCustomer(); } else { MessageBox.Show("Hãy click vào khách hàng bạn muốn"); } } if (categoryButtonClicked == buttonCategoryReceiveVoucher) { ReceiveVoucherDTO voucherInfoSelected = rowSelectedObj as ReceiveVoucherDTO; if (voucherInfoSelected != null) { string idVoucher = voucherInfoSelected.ReceiveVoucherID; ReceiveVoucher voucher = ReceiveVoucherDAO.Instance.GetByID(idVoucher); FormUpdateReceiveVoucher fUpdate = new FormUpdateReceiveVoucher(voucher); this.Hide(); fUpdate.ShowDialog(); this.Show(); LoadDtgvReceiveVoucher(); } else { MessageBox.Show("Hãy click vào hóa đơn bạn muốn sửa."); } } if (categoryButtonClicked == buttonCategoryDeliveryVoucher) { } }