/// <summary> /// 工程领料 /// </summary> /// <param name="theData"></param> /// <returns></returns> public ActionResult ProMaterial(ProMRModel theData) { StockOutModel stockOut = new StockOutModel(); stockOut.Id = Guid.NewGuid().ToSequentialGuid(); stockOut.ApplyNo = theData.MaterialRequisitionModel.PMR_No; //物料单编号 stockOut.StoreId = theData.StoreId; //默认仓库 stockOut.Context = theData.Picker; //领料人 stockOut.State = 0; stockOut.OutNo = $"P-{DateTime.Now.ToString("yyMMddHHmmss.fff")}"; stockOut.OutDate = DateTime.Now; stockOut.OutOperID = Base_UserBusiness.GetCurrentUser().UserId; stockOut.OutType = 0;//0 工程领料单 foreach (Pro_MaterialRequisitionItem item in theData.MaterialRequisitionModel.MReqItemList) { Sto_StockOutItem stockOutItem = new Sto_StockOutItem(); stockOutItem.Id = Guid.NewGuid().ToSequentialGuid(); stockOutItem.OutNo = stockOut.OutNo; stockOutItem.MatNo = item.MatNo; stockOutItem.MatName = item.MatName; //stockOutItem.Price = 0; stockOutItem.GuiGe = item.GuiGe; stockOutItem.UnitNo = item.UnitNo; stockOutItem.Quantity = item.Quantity; stockOut.StockOutItems.Add(stockOutItem); } this._sto_StockOutBusiness.ProMaterial(stockOut, theData.Picker, theData.MaterialRequisitionModel.ProCode, theData.MaterialRequisitionModel.ProName); return(Success()); }
public int StockOut(StockOutModel stockout) { string query = "INSERT INTO StockOut(ItemId, Type, Quantity, Date) VALUES('" + stockout.ItemId + "','" + stockout.Type + "','" + stockout.Quantity + "','" + stockout.Date + "')"; command = new SqlCommand(query, connection); connection.Open(); int rowAffect = command.ExecuteNonQuery(); connection.Close(); return(rowAffect); }
public string Damage(StockOutModel aStock) { int rowAffect = aStockOut.Sell(aStock); if (rowAffect == 1) { return("Damage Successfull"); } else { return("Damage Failed"); } }
public string Lost(StockOutModel aStock) { int rowAffect = aStockOut.Sell(aStock); if (rowAffect == 1) { return("Lost Successfull"); } else { return("Lost Failed"); } }
public string SaveAllLossRowFromGrid(StockOutModel stockOutModel) { int rowAffect = stockOutGateway.SaveAllDamageRowFromGrid(stockOutModel); if (rowAffect > 0) { return("Save Lost Succefully"); } else { return("Save Failed"); } }
public int UpdateQuantityFromStockOut(StockOutModel aStockOut) { string query = "UPDATE Item SET Quantity=@RemainningQuanity WHERE Id=@itemId"; command = new SqlCommand(query, connection); command.Parameters.AddWithValue("@RemainningQuanity", aStockOut.RemainningQuanity); command.Parameters.AddWithValue("@itemId", aStockOut.ItemId); connection.Open(); int rowAffect = command.ExecuteNonQuery(); connection.Close(); return(rowAffect); }
/// <summary> /// 保存 /// </summary> /// <param name="theData">保存的数据</param> public ActionResult SaveOutData(StockOutModel theData) { if (theData.Id.IsNullOrEmpty()) { theData.OutOperID = Base_UserBusiness.GetCurrentUser().UserId; _sto_StockOutBusiness.NormalMaterial(theData); } else { _sto_StockOutBusiness.NormalMaterial(theData); } return(Success()); }
public string StockOut(StockOutModel stockout) { int rowAffect = stockOutGateway.StockOut(stockout); if (rowAffect > 0) { return("Save Successful"); } else { return("Save Failed"); } }
public int Lost(StockOutModel aStockOut) { string query = "INSERT INTO StockOut(ItemId,Quantity,Type,Date) VALUES(@itemId,@quantity,@type,@datee)"; command = new SqlCommand(query, connection); command.Parameters.AddWithValue("@itemId", aStockOut.ItemId); command.Parameters.AddWithValue("@quantity", aStockOut.Quantity); command.Parameters.AddWithValue("@type", aStockOut.Type); command.Parameters.AddWithValue("@datee", aStockOut.Date); connection.Open(); int rowAffect = command.ExecuteNonQuery(); connection.Close(); return(rowAffect); }
public int SaveAllLossRowFromGrid(StockOutModel stockOutModel) { string query = "INSERTALLROWFORSALEDAMAGELOSS"; command = new SqlCommand(query, connection); command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@item", stockOutModel.ItemSl); command.Parameters.AddWithValue("@quantity", stockOutModel.Quantity); command.Parameters.AddWithValue("@type", stockOutModel.Type); command.Parameters.AddWithValue("@inTime", stockOutModel.InTime); connection.Open(); int rowAffect = command.ExecuteNonQuery(); connection.Close(); return(rowAffect); }
// Action code goes here public string StockOutByType(string Type) { ItemGateway stockOutGateway = new ItemGateway(); foreach (StockOutModel stockOut in listofStockOut) { StockOutModel stockOutModel = new StockOutModel(); stockOutModel.Quantity = stockOut.Quantity; stockOutModel.ItemId = stockOut.ItemId; stockOutModel.Type = Type; stockOutModel.Price = stockOut.Price; stockOutModel.Date = stockOut.Date; stockOutGateway.StockOut(stockOutModel); stockOutGateway.UpdateAfterStockOut(stockOut); } return("Stock Out Successfully by : " + Type); }
public int UpdateAfterStockOut(StockOutModel stockout) { try { string query = "Update Items SET StockAQ -=@availQ WHERE Id= @id"; Command = new SqlCommand(query, Connection); Command.Parameters.AddWithValue("@availQ", stockout.Quantity); Command.Parameters.AddWithValue("@id", stockout.ItemId); Connection.Open(); int rowAffect = Command.ExecuteNonQuery(); Connection.Close(); return(rowAffect); } catch (Exception) { return(0); } }
public async Task <ActionResult> Edit(string id) { try { Guid stock_id = Guid.Parse(id); Guid business_working = Guid.Parse(Session["BusinessWorking"].ToString()); ViewBag.Categories = await applicationDbContext.Categories.Where(x => x.Business_Id == business_working).OrderBy(x => x.Name).ToListAsync(); StockOut stockout = await applicationDbContext.StockOuts.Include("Product").FirstOrDefaultAsync(x => x.Id == stock_id); if (stockout.Receiver_Id != null) { ViewBag.Msg = "La salida ha sido recibida y no puede ser editada"; return(RedirectToAction("Index")); } StockOutModel model = new StockOutModel() { DT_RowId = stockout.Id.ToString(), ProductName = stockout.Product_Id.ToString(), Quantity = stockout.Quantity, SalePrice = stockout.SalePrice.ToString("#,##0.00"), Category = stockout.Product.Category_Id.ToString(), Receivered = stockout.Receiver != null, Description = stockout.Description, Accesories = new List <AccesoryModel>() }; return(View(model)); } catch (Exception e) { ViewBag.Msg = "La salida no existe"; return(RedirectToAction("Index")); } }
public int StockOut(StockOutModel stockout) { try { string query = "INSERT INTO StockOut(ItemId, Type, Quantity, Price, Date) VALUES(@itemid, @type, @quantity, @price, @date)"; Command = new SqlCommand(query, Connection); Command.Parameters.AddWithValue("@itemid", stockout.ItemId); Command.Parameters.AddWithValue("@type", stockout.Type); Command.Parameters.AddWithValue("@quantity", stockout.Quantity); Command.Parameters.AddWithValue("@price", stockout.Price); Command.Parameters.AddWithValue("@date", stockout.Date); Connection.Open(); int rowAffect = Command.ExecuteNonQuery(); Connection.Close(); return(rowAffect); } catch (Exception) { return(0); } }
private void addCardButton_Click(object sender, EventArgs e) { if (outQuantityTextBox.Text.Trim() != String.Empty && netBillTexBox.Text.Trim() != String.Empty) { if (inte.IsMatch(outQuantityTextBox.Text.Trim())) { int outQ = Convert.ToInt32(outQuantityTextBox.Text.Trim()); int avQ = Convert.ToInt32(availAbleQuatityTextBox.Text.Trim()); if (outQ > avQ || outQ == 0) { cMessageBox.Warning("You Cann't Stock Out This Quantity"); } else { if (discountPriceTexBox.Text.Trim() != String.Empty || discountPercentTextBox.Text.Trim() != String.Empty) { if (!dnum.IsMatch(discountPriceTexBox.Text.Trim()) || !fnum.IsMatch(discountPercentTextBox.Text.Trim())) { cMessageBox.Information("Discount Amount or Percent is Not In Correct Format"); } } if (vatPercentTextBox.Text.Trim() != String.Empty) { if (!fnum.IsMatch(vatPercentTextBox.Text.Trim())) { cMessageBox.Information("Vat is not in Correct Format"); } } StockOutModel stockOutModel = new StockOutModel(); stockOutModel.CatagoryName = catagoryListBox.Text; stockOutModel.CompanyName = companyListBox.Text; stockOutModel.ItemName = ItemListBox.Text; if (!CN.IsMatch(modelBox.Text.Trim())) { stockOutModel.Model = modelBox.Text = "N/A"; } else { stockOutModel.Model = modelBox.Text; } stockOutModel.ItemId = Convert.ToInt32(ItemListBox.SelectedValue); stockOutModel.AvailableQuantity = Convert.ToInt32(availAbleQuatityTextBox.Text.Trim()); stockOutModel.Quantity = Convert.ToInt32(outQuantityTextBox.Text); if (dnum.IsMatch(discountPriceTexBox.Text.Trim()) || fnum.IsMatch(discountPercentTextBox.Text.Trim())) { stockOutModel.DiscountPercent = Convert.ToDecimal(discountPercentTextBox.Text.Trim()); stockOutModel.DiscountAmount = Convert.ToDecimal(discountPriceTexBox.Text.Trim()); } if (fnum.IsMatch(vatPercentTextBox.Text.Trim())) { stockOutModel.Vatpercent = Convert.ToDecimal(vatPercentTextBox.Text.Trim()); } stockOutModel.VatAmount = Convert.ToDecimal(vatPriceTextBox.Text); stockOutModel.Price = Convert.ToDecimal(netBillTexBox.Text.Trim()); stockOutModel.Date = DateTime.Today; var existItem = listofStockOut.Find(x => x.ItemId == stockOutModel.ItemId); if (existItem != null) { // Avobe code are corretly working int quantity = Convert.ToInt32(existItem.Quantity + stockOutModel.Quantity); if (quantity <= Convert.ToInt32(stockOutModel.AvailableQuantity)) { existItem.Quantity += stockOutModel.Quantity; existItem.Price += stockOutModel.Price; stockOutCard.Refresh(); } else { cMessageBox.Warning("You cann't Stock Out This Quantity"); } } else { listofStockOut.Add(stockOutModel); } ShowCard(); } } } }
public void AddButton() { if (ViewState["aStockListVS"] == null) { StockOutModel aStockOut = new StockOutModel(); aStockOut.ItemId = Convert.ToInt32(itemNameDropDownList.SelectedValue); aStockOut.ItemName = itemNameDropDownList.SelectedItem.Text; aStockOut.CompanyId = Convert.ToInt32(companyDropDownList.SelectedValue); aStockOut.CompanyName = companyDropDownList.SelectedItem.Text; aStockOut.Quantity = Convert.ToInt32(stockOutQuantityTextBox.Text); aStockOut.RemainningQuanity = Convert.ToInt32(availableQuantityTextBox.Text) - Convert.ToInt32(stockOutQuantityTextBox.Text); DateTime date = DateTime.Now; aStockOut.Date = date.ToString("dd-MM-yyyy"); List <StockOutModel> aStockList = new List <StockOutModel>(); aStockList.Add(aStockOut); ViewState["aStockListVS"] = aStockList; allItemGridView.DataSource = aStockList; rowCount = allItemGridView.Rows.Count; allItemGridView.DataBind(); ClearBox(); } else { List <StockOutModel> aStockList = (List <StockOutModel>)ViewState["aStockListVS"]; int itemIdExists = 0; foreach (StockOutModel stockOut in aStockList) { int itemId = stockOut.ItemId; if (itemId == Convert.ToInt32(itemNameDropDownList.SelectedValue)) { stockOut.Quantity = stockOut.Quantity + Convert.ToInt32(stockOutQuantityTextBox.Text); stockOut.RemainningQuanity = Convert.ToInt32(availableQuantityTextBox.Text) - stockOut.Quantity; itemIdExists = 1; } } if (itemIdExists != 1) { StockOutModel aStockOut = new StockOutModel(); aStockOut.ItemId = Convert.ToInt32(itemNameDropDownList.SelectedValue); aStockOut.ItemName = itemNameDropDownList.SelectedItem.Text; aStockOut.CompanyId = Convert.ToInt32(companyDropDownList.SelectedValue); aStockOut.CompanyName = companyDropDownList.SelectedItem.Text; aStockOut.Quantity = Convert.ToInt32(stockOutQuantityTextBox.Text); aStockOut.RemainningQuanity = Convert.ToInt32(availableQuantityTextBox.Text) - aStockOut.Quantity; DateTime date = DateTime.Now; aStockOut.Date = date.ToString("dd-MM-yyyy"); aStockList.Add(aStockOut); } ViewState["aStockListVS"] = aStockList; allItemGridView.DataSource = aStockList; rowCount = allItemGridView.Rows.Count; allItemGridView.DataBind(); ClearBox(); } }
public int UpdateQuantityFromStockOut(StockOutModel aStock) { return(aStockOut.UpdateQuantityFromStockOut(aStock)); }
// POST api/stockout public void Post(StockOutModel m) { int i = StockOutProvider.insertStockOutDetails(m); }
public async Task <ActionResult> Create(StockOutModel model) { Guid business_working = Guid.Parse(Session["BusinessWorking"].ToString()); if (ModelState.IsValid) { Guid productId = Guid.Parse(model.ProductName); Product product = await applicationDbContext.Products.Include("Category").FirstOrDefaultAsync(x => x.Id == productId); StockOut stockOut = new StockOut() { Id = Guid.NewGuid(), Product_Id = productId, Date = DateTime.Now, Quantity = model.Quantity, SalePrice = decimal.Parse(model.SalePrice.Replace(".", ",")), User_Id = User.Identity.GetUserId(), Gain = decimal.Parse(model.SalePrice.Replace(".", ",")) - product.CurrentPrice, Description = model.Description }; if (RoleManager.IsInRole(RoleManager.Editor) || RoleManager.IsInRole(RoleManager.Administrator)) { stockOut.Receiver_Id = User.Identity.GetUserId(); BusinessUser businessUser = await applicationDbContext.BusinessUsers.FirstOrDefaultAsync(x => x.User_Id == stockOut.Receiver_Id && x.Business_Id == business_working); if (product.Category.ActionOut == ActionConstants.Sum) { businessUser.Cash += stockOut.SalePrice * stockOut.Quantity; } else if (product.Category.ActionOut == ActionConstants.Rest) { businessUser.Cash -= stockOut.SalePrice * stockOut.Quantity; } applicationDbContext.Entry(businessUser).State = System.Data.Entity.EntityState.Modified; } applicationDbContext.StockOuts.Add(stockOut); if (!product.NoCountOut) { product.Stock -= stockOut.Quantity; product.LastUpdated = DateTime.Now; applicationDbContext.Entry(product).State = System.Data.Entity.EntityState.Modified; } if (model.AccesoriesIds != null) { foreach (var acc in model.AccesoriesIds) { Guid accesory = Guid.Parse(acc); Product acc_product = await applicationDbContext.Products.Include("Category").FirstOrDefaultAsync(x => x.Id == accesory); StockOut acc_stockOut = new StockOut() { Id = Guid.NewGuid(), Product_Id = accesory, Date = DateTime.Now, Quantity = 1, SalePrice = 0, User_Id = User.Identity.GetUserId(), Gain = 0 - acc_product.CurrentPrice, Description = $"Con producto {product.Name}" }; applicationDbContext.StockOuts.Add(acc_stockOut); if (!acc_product.NoCountOut) { acc_product.Stock -= acc_stockOut.Quantity; acc_product.LastUpdated = DateTime.Now; applicationDbContext.Entry(acc_product).State = System.Data.Entity.EntityState.Modified; } } } await applicationDbContext.SaveChangesAsync(); await ActivityPublisher.Publish(User.Identity.GetUserId(), ActivityTypeConstants.Stock_Out_Create, product.Id, product.Name, business_working); return(RedirectToAction("Index")); } ViewBag.Categories = await applicationDbContext.Categories.Where(x => x.Business_Id == business_working).OrderBy(x => x.Name).ToListAsync(); return(View(model)); }
protected void addButton_Click(object sender, EventArgs e) { int a = itemManager.CheckNumerical(stockOutQuantityTextBox.Text); if (a == 1) { int stockOutQuantity = Convert.ToInt32(stockOutQuantityTextBox.Text); int availableQuantity = Convert.ToInt32(availableQuantityTextBox.Text); if (stockOutQuantity > availableQuantity) { messageLabel.Visible = true; messageLabel.Text = "Sorry StockOut Quantity Cannot Greater Then Available Quantity"; } else if (stockOutQuantity == 0) { messageLabel.Visible = true; messageLabel.Text = "Sorry StockOut Quantity Cannot be 0"; } else { StockOutModel stockOutModel = new StockOutModel(); stockOutModel.Item_Id = Convert.ToInt32(itemDropDownList.SelectedValue); stockOutModel.Company_Id = Convert.ToInt32(companyDropDownList.SelectedValue); stockOutModel.Item_Name = itemDropDownList.SelectedItem.ToString(); stockOutModel.Company_Name = companyDropDownList.SelectedItem.ToString(); stockOutModel.AvailableQuantity = availableQuantity - stockOutQuantity; stockOutModel.StockOutQuantity = stockOutQuantity; if (ViewState["StockOut"] != null) { int flag = 0; List <StockOutModel> stockOutList = (List <StockOutModel>)ViewState["StockOut"]; foreach (StockOutModel stock in stockOutList) { if (stock.Item_Id == stockOutModel.Item_Id) { stock.AvailableQuantity = stockOutModel.AvailableQuantity; stock.StockOutQuantity += stockOutModel.StockOutQuantity; flag = 1; break; } } if (flag == 0) { stockOutList.Add(stockOutModel); ViewState["StockOut"] = stockOutList; } GridViewData(); } else { List <StockOutModel> stockOutList = new List <StockOutModel>(); stockOutList.Add(stockOutModel); ViewState["StockOut"] = stockOutList; GridViewData(); } availableQuantityTextBox.Text = stockOutModel.AvailableQuantity.ToString(); } } else { messageLabel.Visible = true; messageLabel.Text = "Stockout Quantity Not Valid"; } stockOutQuantityTextBox.Text = ""; }