public void PopulateDataGrid(StockCreateEventArgs e) { if (StockInDetailList != null) { dataTable.Rows.Clear(); for (int i = 0; i < StockInDetailList.Count; i++) { var stockInDetail = (StockInDetail)StockInDetailList[i]; dataTable.Rows.Add(AddBlockToDataGrid(stockInDetail, e.StockList, e.ReturnProductList, i)); } dgvStockInDetail.DataSource = dataTable; dgvStockInDetail.Refresh(); dgvStockInDetail.Columns[BLOCK_ID_POS].Width = 70; dgvStockInDetail.Columns[PRODUCT_MASTER_ID_POS].Width = 80; dgvStockInDetail.Columns[STOCK_IN_DATE_ID_POS].Width = 80; dgvStockInDetail.Columns[MAX_COLUMN - 1].Visible = false; for (int i = 0; i < dgvStockInDetail.Columns.Count; i++) { if (i != ACCEPT_QUANTITY_POS && i != RETURN_QUANTITY_POS) { dgvStockInDetail.Columns[i].ReadOnly = true; } } } }
public void stockCreateView_SearchStockInDetailEvent(object sender, StockCreateEventArgs e) { // Search StockInDetail var subCriteria = new SubObjectCriteria("StockIn"); subCriteria.AddGreaterOrEqualsCriteria("StockInDate", DateUtility.ZeroTime(e.ImportDateFrom)); subCriteria.AddLesserOrEqualsCriteria("StockInDate", DateUtility.MaxTime(e.ImportDateTo)); subCriteria.AddEqCriteria("DelFlg", (long)0); var criteria = new ObjectCriteria(); criteria.AddEqCriteria("DelFlg", (long)0); criteria.AddEqCriteria("StockInType", (Int64)e.StockInStatus); criteria.AddSubCriteria("StockIn", subCriteria); IList stockInDetailList = StockInDetailLogic.FindAll(criteria); e.StockInDetailList = stockInDetailList; // Search Stock if (stockInDetailList.Count > 0) { // build the Product id list IList productIdList = new ArrayList(); foreach (StockInDetail stockInDetail in stockInDetailList) { productIdList.Add(stockInDetail.Product.ProductId); } criteria = new ObjectCriteria(); criteria.AddSearchInCriteria("Product.ProductId", productIdList); e.StockList = StockLogic.FindAll(criteria); criteria = new ObjectCriteria(); criteria.AddSearchInCriteria("ProductId", productIdList); e.ReturnProductList = ReturnProductLogic.FindAll(criteria); } }
private void btnSearch_Click(object sender, EventArgs e) { var eventArgs = new StockCreateEventArgs { ImportDateFrom = chkImportDateFrom.Checked ? dtpImportDateFrom.Value : DateTime.MinValue, ImportDateTo = chkImportDateTo.Checked ? dtpImportDateTo.Value : DateTime.MaxValue, StockInStatus = cbbStatus.SelectedIndex == 0 ? StockInDetail.StockInStatus.IMPORTED : StockInDetail.StockInStatus.RETURNED_FROM_DEPT }; EventUtility.fireEvent(SearchStockInDetailEvent, this, eventArgs); StockInDetailList = eventArgs.StockInDetailList; PopulateDataGrid(eventArgs); _currentEventArgs = eventArgs; }
private void btnSave_Click(object sender, EventArgs e) { // validate data if (!ValidateData()) { return; } var createdStockList = new List<Stock>(); var createReturnProductList = new List<ReturnProduct>(); var stockInDetailList = new List<StockInDetail>(); for (int i = 0; i < dgvStockInDetail.RowCount; i++) { var index = NumberUtility.ParseInt(dgvStockInDetail[MAX_COLUMN - 1, i].Value); var acceptQty = NumberUtility.ParseLong(dgvStockInDetail[ACCEPT_QUANTITY_POS, i].Value); var returnQty = NumberUtility.ParseLong(dgvStockInDetail[RETURN_QUANTITY_POS, i].Value); var stockInDetail = (StockInDetail)StockInDetailList[index]; // approve for product if (acceptQty != 0) { Stock currentStock = null; if (_currentEventArgs != null && _currentEventArgs.StockList != null) { foreach (Stock stock in _currentEventArgs.StockList) { if (stock.Product.ProductId == stockInDetail.Product.ProductId) { currentStock = stock; currentStock.Quantity += acceptQty; break; } } if (currentStock == null) { currentStock = new Stock { Quantity = acceptQty, Product = ((StockInDetail)StockInDetailList[index]).Product }; } createdStockList.Add(currentStock); } } // return the product if (returnQty != 0) { var returnProduct = new ReturnProduct { ProductId = ((StockInDetail)StockInDetailList[index]).Product.ProductId, Quantity = returnQty }; createReturnProductList.Add(returnProduct); } if (stockInDetail.Quantity == acceptQty + returnQty) { stockInDetail.StockInType = (long)StockInDetail.StockInStatus.COMPLETELY_STOCKED; stockInDetailList.Add(stockInDetail); } } if (createdStockList.Count > 0 || createReturnProductList.Count > 0) { var eventArgs = new StockCreateEventArgs { CreateStockList = createdStockList, CreateReturnProductList = createReturnProductList, UpdateStockInDetailList = stockInDetailList }; EventUtility.fireEvent(CreateStockEvent, this, eventArgs); EventUtility.fireEvent(SearchStockInDetailEvent, this, _currentEventArgs); StockInDetailList = _currentEventArgs.StockInDetailList; PopulateDataGrid(_currentEventArgs); } }
public void stockCreateView_CreateStockEvent(object sender, StockCreateEventArgs e) { StockLogic.CreateOrUpdateStock(e.CreateStockList, e.CreateReturnProductList, e.UpdateStockInDetailList); }