public void loadDataForEditEntranceStock(int entranceId) { isUpdating = true; this.Text = "Chỉnh sửa phiếu nhập kho"; this.btnSave.Text = "OK"; EntranceStockService entranceStockService = new EntranceStockService(); entranceStock = entranceStockService.GetEntranceStock(entranceId); old_details = new List <EntranceStockDetail>(); if (entranceStock != null) { if (entranceStockDetails == null) { EntranceStockDetailService entranceStockDetailService = new EntranceStockDetailService(); entranceStockDetails = new BindingList <EntranceStockDetail>(entranceStockDetailService.SelectEntranceStockDetailByWhere(o => o.EntranceStockId == entranceStock.Id)); foreach (EntranceStockDetail od in entranceStockDetails) { old_details.Add(new EntranceStockDetail { AttributeId = od.AttributeId, ProductId = od.ProductId, UnitId = od.UnitId, EntranceStockId = od.EntranceStockId, NumberUnit = od.NumberUnit }); } } } }
private void dgwStockEntranceList_CellClick(object sender, DataGridViewCellEventArgs e) { if (sender is DataGridView) { DataGridViewCell cell = ((DataGridView)sender).CurrentCell; if (cell.ColumnIndex == ((DataGridView)sender).ColumnCount - 1) { DialogResult result = MessageBox.Show("Bạn có muốn xóa phiếu nhập kho này?", "Xoá phiếu nhập kho", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { DateTime systime = BaoHienRepository.GetBaoHienDBDataContext().GetSystemDate(); DataGridViewRow currentRow = dgwStockEntranceList.Rows[e.RowIndex]; EntranceStockService entranceStockService = new EntranceStockService(); int id = ObjectHelper.GetValueFromAnonymousType<int>(currentRow.DataBoundItem, "Id"); EntranceStock es = entranceStockService.GetEntranceStock(id); ProductLogService productLogService = new ProductLogService(); EntranceStockDetailService entranceStockDetailService = new EntranceStockDetailService(); List<EntranceStockDetail> details = entranceStockDetailService.SelectEntranceStockDetailByWhere(x => x.EntranceStockId == es.Id).ToList(); string msg = ""; int error = 0; ProductLog pl, newpl; foreach (EntranceStockDetail item in details) { pl = productLogService.GetProductLog(item.ProductId, item.AttributeId, item.UnitId); if (pl.AfterNumber - item.NumberUnit < 0) { if (error == 0) { msg += "Những sản phẩm sau đã bị XÓA nhưng không đảm bảo dữ liệu trong kho:\n"; error = 1; } msg += "- " + productLogService.GetNameOfProductLog(pl) + " : " + item.NumberUnit + "\n"; } } if (error > 0) { MessageBox.Show(msg, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } try { foreach (EntranceStockDetail item in details) { pl = productLogService.GetProductLog(item.ProductId, item.AttributeId, item.UnitId); newpl = new ProductLog() { ProductId = item.ProductId, AttributeId = item.AttributeId, UnitId = item.UnitId, BeforeNumber = pl.AfterNumber, Amount = item.NumberUnit, AfterNumber = pl.AfterNumber - item.NumberUnit, RecordCode = es.EntranceCode, Status = BHConstant.DEACTIVE_STATUS, Direction = BHConstant.DIRECTION_OUT, UpdatedDate = systime }; productLogService.AddProductLog(newpl); } productLogService.DeactiveProductLog(es.EntranceCode); if (!entranceStockService.DeleteEntranceStock(id)) { MessageBox.Show("Hiện tại hệ thống đang có lỗi. Vui lòng thử lại sau!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch { } loadEntranceStockList(); } } } }
public void loadDataForEditEntranceStock(int entranceId) { isUpdating = true; this.Text = "Chỉnh sửa phiếu nhập kho"; this.btnSave.Text = "OK"; EntranceStockService entranceStockService = new EntranceStockService(); entranceStock = entranceStockService.GetEntranceStock(entranceId); old_details = new List<EntranceStockDetail>(); if (entranceStock != null) { if (entranceStockDetails == null) { EntranceStockDetailService entranceStockDetailService = new EntranceStockDetailService(); entranceStockDetails = new BindingList<EntranceStockDetail>(entranceStockDetailService.SelectEntranceStockDetailByWhere(o => o.EntranceStockId == entranceStock.Id)); foreach (EntranceStockDetail od in entranceStockDetails) { old_details.Add(new EntranceStockDetail { AttributeId = od.AttributeId, ProductId = od.ProductId, UnitId = od.UnitId, EntranceStockId = od.EntranceStockId, NumberUnit = od.NumberUnit }); } } } }
private void dgwStockEntranceList_CellClick(object sender, DataGridViewCellEventArgs e) { if (sender is DataGridView) { DataGridViewCell cell = ((DataGridView)sender).CurrentCell; if (cell.ColumnIndex == ((DataGridView)sender).ColumnCount - 1) { DialogResult result = MessageBox.Show("Bạn có muốn xóa phiếu nhập kho này?", "Xoá phiếu nhập kho", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { DateTime systime = BaoHienRepository.GetBaoHienDBDataContext().GetSystemDate(); DataGridViewRow currentRow = dgwStockEntranceList.Rows[e.RowIndex]; EntranceStockService entranceStockService = new EntranceStockService(); int id = ObjectHelper.GetValueFromAnonymousType <int>(currentRow.DataBoundItem, "Id"); EntranceStock es = entranceStockService.GetEntranceStock(id); ProductLogService productLogService = new ProductLogService(); EntranceStockDetailService entranceStockDetailService = new EntranceStockDetailService(); List <EntranceStockDetail> details = entranceStockDetailService.SelectEntranceStockDetailByWhere(x => x.EntranceStockId == es.Id).ToList(); string msg = ""; int error = 0; ProductLog pl, newpl; foreach (EntranceStockDetail item in details) { pl = productLogService.GetProductLog(item.ProductId, item.AttributeId, item.UnitId); if (pl.AfterNumber - item.NumberUnit < 0) { if (error == 0) { msg += "Những sản phẩm sau đã bị XÓA nhưng không đảm bảo dữ liệu trong kho:\n"; error = 1; } msg += "- " + productLogService.GetNameOfProductLog(pl) + " : " + item.NumberUnit + "\n"; } } if (error > 0) { MessageBox.Show(msg, "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } try { foreach (EntranceStockDetail item in details) { pl = productLogService.GetProductLog(item.ProductId, item.AttributeId, item.UnitId); newpl = new ProductLog() { ProductId = item.ProductId, AttributeId = item.AttributeId, UnitId = item.UnitId, BeforeNumber = pl.AfterNumber, Amount = item.NumberUnit, AfterNumber = pl.AfterNumber - item.NumberUnit, RecordCode = es.EntranceCode, Status = BHConstant.DEACTIVE_STATUS, Direction = BHConstant.DIRECTION_OUT, UpdatedDate = systime }; productLogService.AddProductLog(newpl); } productLogService.DeactiveProductLog(es.EntranceCode); if (!entranceStockService.DeleteEntranceStock(id)) { MessageBox.Show("Hiện tại hệ thống đang có lỗi. Vui lòng thử lại sau!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch { } loadEntranceStockList(); } } } }