public ContentResult GetStock(Lib.GridPager pager, string queryStr, string WarehouseCode) { IQueryable <T_Stock> queryData = db.T_Stock.AsQueryable(); if (!string.IsNullOrEmpty(queryStr)) { queryData = queryData.Where(a => a.Code != null && a.Code.Contains(queryStr) || a.Name != null && a.Name.Contains(queryStr)); } if (!string.IsNullOrEmpty(WarehouseCode)) { queryData = queryData.Where(a => a.WarehouseName.Contains(WarehouseCode)); } pager.totalRows = queryData.Count(); //分页 queryData = queryData.OrderByDescending(c => c.ID).Skip((pager.page - 1) * pager.rows).Take(pager.rows); List <T_Stock> list = new List <T_Stock>(); foreach (var item in queryData) { T_Stock i = new T_Stock(); item.WarehouseName = WarehouseByName(item.WarehouseName); i = item; list.Add(i); } // List<T_ManualBilling> list = queryData.OrderByDescending(c => c.ID).Skip((pager.page - 1) * pager.rows).Take(pager.rows).ToList(); string json = "{\"total\":" + pager.totalRows + ",\"rows\":" + JsonConvert.SerializeObject(list, Lib.Comm.setTimeFormat()) + "}"; return(Content(json)); }
// ログデータ作成 // in regM_Division : ログ対象データ // out string : ログ文字列 private string T_StockLogData(T_Stock regT_Stock) { return(regT_Stock.StID.ToString() + ", " + regT_Stock.PrID.ToString() + ", " + regT_Stock.StQuantity.ToString() + ", " + regT_Stock.StFlag.ToString() + ", "); }
private void btUpdate_St_Click_1(object sender, EventArgs e) { bool check; T_Stock st = new T_Stock(); DialogResult dialog; dialog = MessageBox.Show("情報が変わりますが、続けますか?", "メッセージ", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dialog == DialogResult.Yes) { if (!string.IsNullOrEmpty(int.Parse(tbStockID.Text).ToString())) { st.StockID = int.Parse(tbStockID.Text); check = stockService.CheckStockID(int.Parse(tbStockID.Text)); if (check) { // st.PrID = tbStockPr.Text; st.Squantity = int.Parse(tbStockSquantity.Text); MessageBox.Show("更新出来た!"); stockService.UpdateSt(st); ShowStockList(); } else { MessageBox.Show("更新できません!!!"); } } else { MessageBox.Show("エーラ"); return; } } }
private void UpdateStock() { try { t_return_detail trans = new t_return_detail(); trans.returnNo = txt_no.Text.Trim(); List <t_return_detail> Transins = new List <t_return_detail>(); Transins = new T_return_detailDL().SelectT_return_detailMulti(trans); foreach (t_return_detail det in Transins) { T_Stock objt_Stock = new T_Stock(); objt_Stock.StockCode = det.stockCode; objt_Stock.Compcode = commonFunctions.GlobalCompany; objt_Stock.Locacode = commonFunctions.GlobalLocation; objt_Stock = new T_StockDL().Selectt_Stock_new(objt_Stock); decimal currentst = decimal.Zero; currentst = commonFunctions.ToDecimal(objt_Stock.Stock.ToString()) - commonFunctions.ToDecimal(det.quantity.ToString()); objt_Stock.Stock = currentst; new T_StockDL().SaveT_StockSP(objt_Stock, 3, 1); } } catch (Exception ex) { commonFunctions.SetMDIStatusMessage("Genaral Error on updating data", 1); throw ex; } }
public JsonResult StockDetailAdd(T_StockStorage Model, string jsonStr) { using (TransactionScope sc = new TransactionScope()) { try { string Nickname = Server.UrlDecode(Request.Cookies["Nickname"].Value); Model.Type = "退货"; Model.ApplyName = Nickname; Model.ApplyDate = DateTime.Now; db.T_StockStorage.Add(Model); db.SaveChanges(); List <T_StockDetail> details = App_Code.Com.Deserialize <T_StockDetail>(jsonStr); foreach (var item in details) { item.Oid = Model.ID; db.T_StockDetail.Add(item); db.SaveChanges(); string code = item.Code; string WarehouseCode = Model.WarehouseCode; T_Stock Smodel = db.T_Stock.SingleOrDefault(a => a.Code == code && a.WarehouseName == WarehouseCode); if (Smodel != null) { Smodel.Qty += item.Qty; db.Entry <T_Stock>(Smodel).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } else { T_Stock StModel = new T_Stock(); StModel.Qty = item.Qty; StModel.Name = item.Name; StModel.Code = item.Code; StModel.WarehouseName = WarehouseCode; db.T_Stock.Add(StModel); db.SaveChanges(); } T_StockOutstorage StorageModel = new T_StockOutstorage(); StorageModel.Code = item.Code; StorageModel.Name = item.Name; StorageModel.WarehouseCode = WarehouseCode; StorageModel.number = Model.ID.ToString(); StorageModel.Qty = item.Qty; StorageModel.Type = "入库"; db.T_StockOutstorage.Add(StorageModel); db.SaveChanges(); } sc.Complete(); return(Json(new { State = "Success" }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { State = "Faile", Message = ex.Message }, JsonRequestBehavior.AllowGet)); } } }
private void txt_code_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { if (T_StockDL.ExistingT_Stock(txt_code.Text.Trim(), commonFunctions.GlobalCompany, commonFunctions.GlobalLocation)) { if (!commonFunctions.IsExist(dataGridView1, txt_code.Text.Trim())) { T_Stock stk = new T_Stock(); stk.Locacode = commonFunctions.GlobalLocation; stk.Compcode = commonFunctions.GlobalCompany; stk.ProductId = txt_code.Text.Trim(); T_StockDL bal = new T_StockDL(); stk = bal.Selectt_Stock(stk); txt_cost.Text = stk.CostPrice.ToString(); txt_selling.Text = stk.SellingPrice.ToString(); lbl_name.Text = stk.Descr; txt_qty.Text = "0"; txt_qty.Focus(); errorProvider1.Clear(); already = false; } else { already = true; //errorProvider1.SetError(txt_code, "Already exists"); T_Stock stk = new T_Stock(); stk.Locacode = commonFunctions.GlobalLocation; stk.Compcode = commonFunctions.GlobalCompany; stk.ProductId = txt_code.Text.Trim(); T_StockDL bal = new T_StockDL(); stk = bal.Selectt_Stock(stk); txt_cost.Text = stk.CostPrice.ToString(); txt_selling.Text = stk.SellingPrice.ToString(); lbl_name.Text = stk.Descr; DataGridViewRow drowx = new DataGridViewRow(); drowx = commonFunctions.GetRow(dataGridView1, txt_code.Text.Trim()); txt_qty.Text = drowx.Cells["Quntity"].Value.ToString(); txt_qty.Focus(); } } else { errorProvider1.SetError(txt_code, "Product you have entered not exist in the bin card"); } } }
/// <summary> /// Saves a record to the T_Stock table. /// </summary> public Boolean SaveT_StockSP(T_Stock t_Stock, int formMode, int StockType) { SqlCommand scom; bool retvalue = false; try { scom = new SqlCommand(); scom.CommandType = CommandType.StoredProcedure; if (StockType == 1) { scom.CommandText = "T_StockSave"; } else { scom.CommandText = "T_StockDamageSave"; } scom.Parameters.Add("@StockCode", SqlDbType.VarChar, 20).Value = t_Stock.StockCode; scom.Parameters.Add("@Compcode", SqlDbType.VarChar, 20).Value = t_Stock.Compcode; scom.Parameters.Add("@Locacode", SqlDbType.VarChar, 20).Value = t_Stock.Locacode; scom.Parameters.Add("@Suppid", SqlDbType.VarChar, 20).Value = t_Stock.Suppid; scom.Parameters.Add("@ProductId", SqlDbType.VarChar, 20).Value = t_Stock.ProductId; scom.Parameters.Add("@Stock", SqlDbType.Decimal, 9).Value = t_Stock.Stock; scom.Parameters.Add("@OpnStock", SqlDbType.Decimal, 9).Value = t_Stock.OpnStock; scom.Parameters.Add("@InitialStock", SqlDbType.Decimal, 9).Value = t_Stock.InitialStock; scom.Parameters.Add("@ReservedStock", SqlDbType.Decimal, 9).Value = t_Stock.ReservedStock; scom.Parameters.Add("@CostPrice", SqlDbType.Decimal, 9).Value = t_Stock.CostPrice; scom.Parameters.Add("@SellingPrice", SqlDbType.Decimal, 9).Value = t_Stock.SellingPrice; scom.Parameters.Add("@WholeSalePrice", SqlDbType.Decimal, 9).Value = t_Stock.WholeSalePrice; scom.Parameters.Add("@MrpPrice", SqlDbType.Decimal, 9).Value = t_Stock.MrpPrice; scom.Parameters.Add("@CompanyPrice", SqlDbType.Decimal, 9).Value = t_Stock.CompanyPrice; scom.Parameters.Add("@AvgCost", SqlDbType.Decimal, 9).Value = t_Stock.AvgCost; scom.Parameters.Add("@InitialCost", SqlDbType.Decimal, 9).Value = t_Stock.InitialCost; scom.Parameters.Add("@Descr", SqlDbType.VarChar, 150).Value = t_Stock.Descr; scom.Parameters.Add("@FixedGP", SqlDbType.Decimal, 9).Value = t_Stock.FixedGP; scom.Parameters.Add("@SIH", SqlDbType.Decimal, 9).Value = t_Stock.SIH; scom.Parameters.Add("@EXPDate", SqlDbType.DateTime, 8).Value = t_Stock.EXPDate; scom.Parameters.Add("@Usercode", SqlDbType.VarChar, 20).Value = t_Stock.Usercode; scom.Parameters.Add("@DateCr", SqlDbType.DateTime, 8).Value = t_Stock.DateCr; scom.Parameters.Add("@InsMode", SqlDbType.Int).Value = formMode; // For insert scom.Parameters.Add("@RtnValue", SqlDbType.Int).Value = 0; u_DBConnection dbcon = new u_DBConnection(); retvalue = dbcon.RunQuery(scom); return(retvalue); } catch (Exception ex) { throw (ex); } }
public bool CheckStockID(int stID) { T_Stock st = db.T_Stock.SingleOrDefault(x => x.StockID == stID); if (st == null) { return(false); } else { return(true); } }
public static bool AddStock_Insert(T_Stock exstock, string comp, string loca, decimal qty) { try { exstock.Compcode = comp; exstock.Locacode = loca; exstock.Stock = qty; new T_StockDL().SaveT_StockSP(exstock, 1, 1); return(true); } catch (Exception ex) { throw ex; } }
public bool UpdateSt(T_Stock stock) { T_Stock st = db.T_Stock.SingleOrDefault(x => x.StockID == stock.StockID); if (st == null) { return(false); } else { st.Squantity = stock.Squantity; db.SaveChanges(); return(true); } }
public static T_Stock Get_StockObj(string stkcode, string company, string loca) { try { T_Stock stk = new T_Stock(); stk.StockCode = stkcode.Trim(); stk.Compcode = company; stk.Locacode = loca; stk = new T_StockDL().Selectt_Stock_ByStockCode(stk); return(stk); } catch (Exception ex) { throw ex; } }
private void GetStockdetails(string location) { try { T_Stock stk = StockEngine.GetStockdetails(txt_code.Text, location); txt_cost.Text = StockEngine.GetProductCostPrice(stk.ProductId).ToString(); txt_selling.Text = StockEngine.GetProductSellingPrice(stk.ProductId).ToString(); lbl_name.Text = stk.Descr; lbl_available.Text = stk.Stock.ToString(); } catch (Exception ex) { commonFunctions.SetMDIStatusMessage("Genaral Error on updating data", 1); throw ex; } }
public static T_Stock GetStockdetails(string stockcode) { T_Stock stk = new T_Stock(); try { stk.Locacode = commonFunctions.GlobalLocation; stk.Compcode = commonFunctions.GlobalCompany; stk.StockCode = stockcode; stk = new T_StockDL().Selectt_Stock_new(stk); } catch (Exception ex) { } return(stk); }
// データ更新(注文) // in : M_Chumonデータ // out : エラーメッセージ public string PutStockCh(T_Stock regStock) { using (var db = new SalesManagement_DevContext()) { T_Stock stock; try { stock = db.T_Stocks.Single(x => x.StID == regStock.StID); } catch { // throw new Exception(Messages.errorNotFoundItem, ex); // throw new Exception(_cm.GetMessage(110), ex); return(_msc.GetMessage(110)); } stock.StID = regStock.StID; stock.PrID = regStock.PrID; stock.StQuantity = regStock.StQuantity; stock.StFlag = regStock.StFlag; //Timestamp = item.Timestamp, //LogData = item.LogData, db.Entry(stock).State = EntityState.Modified; try { db.SaveChanges(); } catch { // throw new Exception(Messages.errorConflict, ex); // throw new Exception(_cm.GetMessage(100), ex); return(_msc.GetMessage(100)); } // ログ出力 var operationLog = new OperationLog() { EventRaisingTime = DateTime.Now, Operator = _logonUser, Table = "Stock", Command = "Sto", //Data = ProductLogData(regStock), }; //StaticCommon.PostOperationLog(operationLog); return(string.Empty); } }
public static decimal GetCurrentStock(string stockcode) { decimal stock = decimal.Zero; try { T_Stock stk = new T_Stock(); stk.Locacode = commonFunctions.GlobalLocation; stk.Compcode = commonFunctions.GlobalCompany; stk.StockCode = stockcode.Trim(); stk = new T_StockDL().Selectt_Stock_new(stk); stock = stk.Stock.Value; } catch (Exception ex) { } return(stock); }
public static string GetProductCode(string stockcode) { string stock = ""; try { T_Stock stk = new T_Stock(); stk.Locacode = commonFunctions.GlobalLocation; stk.Compcode = commonFunctions.GlobalCompany; stk.StockCode = stockcode.Trim(); stk = new T_StockDL().Selectt_Stock_new(stk); stock = stk.ProductId.Trim(); } catch (Exception ex) { } return(stock); }
public static string FindExisitingStock(string suppcode) { string str = ""; if (T_StockDL.ExistingT_Stock_new(suppcode.Trim(), commonFunctions.GlobalCompany, commonFunctions.GlobalLocation)) { T_Stock cat = new T_Stock(); cat.StockCode = suppcode.Trim(); cat.Compcode = commonFunctions.GlobalCompany; cat.Locacode = commonFunctions.GlobalLocation; str = new T_StockDL().Selectt_Stock_ByStockCode(cat).Descr; } else { str = "<Error!!!>"; } return(str); }
private void btSearch_St_Click_1(object sender, EventArgs e) { T_Stock stock = new T_Stock(); if (tbStockPr.Text == "" && tbStockID.Text == "") { MessageBox.Show("商品の情報を入力してください!", "メッセージ", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } bool check = stockService.SearchSt(tbStockPr.Text); if (check) { ShowStockList(tbStockPr.Text); } else { MessageBox.Show("見つけませんでした!!!"); } }
private void GetStockdetails() { try { T_Stock stk = new T_Stock(); stk.Locacode = commonFunctions.GlobalLocation; stk.Compcode = commonFunctions.GlobalCompany; stk.StockCode = txt_code.Text; stk = new T_StockDL().Selectt_Stock_new(stk); txt_cost.Text = stk.CostPrice.ToString(); txt_selling.Text = stk.SellingPrice.ToString(); lbl_name.Text = stk.Descr; lbl_available.Text = stk.Stock.ToString(); } catch (Exception ex) { commonFunctions.SetMDIStatusMessage("Genaral Error on updating data", 1); throw ex; } }
private void UpdateStock() { try { t_adjustment_details trans = new t_adjustment_details(); trans.adju_no = txt_no.Text.Trim(); List <t_adjustment_details> Transins = new List <t_adjustment_details>(); Transins = new T_adjustment_detailDL().SelectT_adjustment_detailMulti(trans); foreach (t_adjustment_details det in Transins) { T_Stock objt_Stock = new T_Stock(); objt_Stock.StockCode = det.item_code; objt_Stock.Compcode = commonFunctions.GlobalCompany; objt_Stock.Locacode = commonFunctions.GlobalLocation; objt_Stock = new T_StockDL().Selectt_Stock_new(objt_Stock); decimal currentst = decimal.Zero; //currentst = commonFunctions.ToDecimal(objt_Stock.Stock.ToString()) + commonFunctions.ToDecimal(det.stock.ToString()); currentst = objt_Stock.Stock.Value; if (det.triggerVal == 1) { currentst += det.stock.Value; } if (det.triggerVal == 2) { currentst -= det.stock.Value; } objt_Stock.Stock = currentst; new T_StockDL().SaveT_StockSP(objt_Stock, 3, 1); } } catch (Exception ex) { commonFunctions.SetMDIStatusMessage("Genaral Error on updating data", 1); throw ex; } }
public T_Stock Selectt_Stock_new(T_Stock objt_Stock) { try { string xstrquery = @"select * from T_Stock where StockCode = '" + objt_Stock.StockCode + "' and Compcode = '" + objt_Stock.Compcode.Trim() + "' and Locacode = '" + objt_Stock.Locacode.Trim() + "'"; DataRow drType = u_DBConnection.ReturnDataRow(xstrquery); if (drType != null) { objt_Stock.StockCode = drType["StockCode"].ToString(); objt_Stock.Compcode = drType["Compcode"].ToString(); objt_Stock.Locacode = drType["Locacode"].ToString(); objt_Stock.Suppid = drType["Suppid"].ToString(); objt_Stock.ProductId = drType["ProductId"].ToString(); objt_Stock.Stock = decimal.Parse(drType["Stock"].ToString()); objt_Stock.OpnStock = decimal.Parse(drType["OpnStock"].ToString()); objt_Stock.InitialStock = decimal.Parse(drType["InitialStock"].ToString()); objt_Stock.ReservedStock = decimal.Parse(drType["ReservedStock"].ToString()); objt_Stock.CostPrice = decimal.Parse(drType["CostPrice"].ToString()); objt_Stock.SellingPrice = decimal.Parse(drType["SellingPrice"].ToString()); objt_Stock.WholeSalePrice = decimal.Parse(drType["WholeSalePrice"].ToString()); objt_Stock.MrpPrice = decimal.Parse(drType["MrpPrice"].ToString()); objt_Stock.CompanyPrice = decimal.Parse(drType["CompanyPrice"].ToString()); objt_Stock.AvgCost = decimal.Parse(drType["AvgCost"].ToString()); objt_Stock.InitialCost = decimal.Parse(drType["InitialCost"].ToString()); objt_Stock.Descr = drType["Descr"].ToString(); objt_Stock.FixedGP = decimal.Parse(drType["FixedGP"].ToString()); objt_Stock.SIH = decimal.Parse(drType["SIH"].ToString()); objt_Stock.EXPDate = DateTime.Parse(drType["EXPDate"].ToString()); objt_Stock.Usercode = drType["Usercode"].ToString(); objt_Stock.DateCr = DateTime.Parse(drType["DateCr"].ToString()); return(objt_Stock); } return(null); } catch (Exception ex) { throw ex; } }
private void UpdateStock() { try { t_transferIn_detail trans = new t_transferIn_detail(); trans.transinrNo = txt_no.Text.Trim(); List <t_transferIn_detail> Transins = new List <t_transferIn_detail>(); Transins = new T_transferIn_detailDL().SelectT_transferIn_detailMulti(trans); foreach (t_transferIn_detail det in Transins) { //reduce stock from this location T_StockDL.AddStock_Update(det.stockCode, commonFunctions.GlobalCompany, commonFunctions.GlobalLocation, det.quantity.Value); //update stock on destination if (T_StockDL.ExistingT_Stock_new(det.stockCode.Trim(), commonFunctions.GlobalCompany, txt_destinationLocId.Text.Trim())) { //modify is already has record T_StockDL.ReduceStock_Update(det.stockCode, commonFunctions.GlobalCompany, txt_destinationLocId.Text.Trim(), det.quantity.Value); } else { //insert T_Stock objt_Stock = new T_Stock(); objt_Stock.StockCode = det.stockCode; objt_Stock.Compcode = commonFunctions.GlobalCompany; objt_Stock.Locacode = commonFunctions.GlobalLocation; objt_Stock = new T_StockDL().Selectt_Stock_new(objt_Stock); T_StockDL.AddStock_Insert(objt_Stock, commonFunctions.GlobalCompany, txt_destinationLocId.Text.Trim(), det.quantity.Value); } } } catch (Exception ex) { commonFunctions.SetMDIStatusMessage("Genaral Error on updating data", 1); throw ex; } }
//// データ追加 //// in : M_Productデータ //public string PostM_Product(M_Product regM_Product) //{ // using (var db1 = new SalesManagement_DevContext()) // { // db1.M_Products.Add(regM_Product); // db1.Entry(regM_Product).State = EntityState.Added; // try // { // db1.SaveChanges(); // } // catch // { // // throw new Exception(Messages.errorConflict, ex); // // throw new Exception(_cm.GetMessage(100), ex); // // MessageBox.Show(_msc.GetMessage(100)); // return _msc.GetMessage(100); // } // } //} // データ追加 // in : M_Itemデータ public string PostT_Stock(T_Stock regStock) { using (var db1 = new SalesManagement_DevContext()) { db1.T_Stocks.Add(regStock); db1.Entry(regStock).State = EntityState.Added; db1.SaveChanges(); } //// ログ出力 //var operationLog = new OperationLog() //{ // EventRaisingTime = DateTime.Now, // Operator = _logonUser, // Table = "Product", // Command = "Post", // Data = M_ProductLogData(regProduct), // Comments = string.Empty //}; //StaticCommon.PostOperationLog(operationLog); return(string.Empty); }
public JsonResult Save(T_Deliver model, string jsonStr, string CurUser, string TiaoMa, string type) { using (TransactionScope sc = new TransactionScope()) { try { // 查询发货表 订单是否发货 T_Deliver deliverFlag = db.T_Deliver.FirstOrDefault(a => a.MailNo == model.MailNo); if (deliverFlag != null) { return(Json(new { State = "Faile", Message = "该单据编号已经发货" }, JsonRequestBehavior.AllowGet)); } T_Warehouses warehouseMod = db.T_Warehouses.SingleOrDefault(a => a.name == model.WarehouseCode); //发货记录表增加发货记录 string curUser = ""; if (!string.IsNullOrWhiteSpace(CurUser)) { curUser = CurUser; } else { curUser = Server.UrlDecode(Request.Cookies["NickName"].Value); } string IP = Request.UserHostAddress; T_Deliver MOD = new T_Deliver(); MOD.PostTime = DateTime.Now; MOD.PostName = curUser; MOD.OrderNum = model.OrderNum; MOD.MailNo = model.MailNo; MOD.WarehouseCode = warehouseMod.code; MOD.IP = IP; MOD.Note = model.Note; db.T_Deliver.Add(MOD); db.SaveChanges(); /* * 解析jsonStr * 修改库存表发货详情记录表 * 库存表是否有该商品的库存信息?直接修改库存数量:新增一条库存信息qty为负数 */ List <AddMod> detail = Com.Deserialize <AddMod>(jsonStr); if (type == "1") { List <TiaoMaAddMod> TiaoMaAddModList = new List <TiaoMaAddMod>(); string[] tiaomaList = TiaoMa.Split('\n'); int Qty = 0; for (int i = 0; i < detail.Count; i++) { Qty += int.Parse(detail[i].qty.ToString()); int tiaomalistQty = 0; int detailcount = int.Parse(detail[i].qty.ToString()); for (int z = 0; z < tiaomaList.Length; z++) { if (tiaomaList[z] == "") { break; } string tiaomazz = ""; //if (z == tiaomaList.Length - 1) //{ // tiaomazz = tiaomaList[z].Substring(0, tiaomaList[z].Length); //} //else //{ // tiaomazz = tiaomaList[z].Substring(0, tiaomaList[z].Length - 1); //} tiaomazz = tiaomaList[z].Substring(0, tiaomaList[z].Length - 1); if (detail[i].tiaoma == tiaomazz) { tiaomalistQty++; } } if (detailcount != tiaomalistQty) { TiaoMaAddMod TiaoMaAddModModel = new TiaoMaAddMod(); TiaoMaAddModModel.tiaoma = detail[i].tiaoma; TiaoMaAddModList.Add(TiaoMaAddModModel); } } if (TiaoMaAddModList.Count > 0) { string nottiaoma = ""; for (int i = 0; i < TiaoMaAddModList.Count; i++) { if (i == TiaoMaAddModList.Count - 1) { nottiaoma += TiaoMaAddModList[i].tiaoma; } else { nottiaoma += TiaoMaAddModList[i].tiaoma + ","; } } return(Json(new { State = "Faile", Message = "该" + nottiaoma + "数量与详情不符合", stype = "0" }, JsonRequestBehavior.AllowGet)); } int tiaomaQty = 0; for (int i = 0; i < tiaomaList.Length; i++) { if (tiaomaList[i] != "") { tiaomaQty++; } } if (Qty != tiaomaQty) { return(Json(new { State = "Faile", Message = "存在多发货物", stype = "0" }, JsonRequestBehavior.AllowGet)); } } for (int i = 0; i < detail.Count; i++) { //操作库存表 string _code = detail[i].item_code; T_Stock StocMOD = db.T_Stock.SingleOrDefault(a => a.Code == _code); if (StocMOD != null) { int _qty = int.Parse(detail[i].qty.ToString()); StocMOD.Qty -= _qty; db.Entry <T_Stock>(StocMOD).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } else { T_Stock createMod = new T_Stock(); createMod.Name = detail[i].item_name; createMod.Code = detail[i].item_code; createMod.Qty = -int.Parse(detail[i].qty.ToString()); createMod.WarehouseName = warehouseMod.code; db.T_Stock.Add(createMod); db.SaveChanges(); } //操作发货详情记录表 T_DeliverDetail detailMOD = new T_DeliverDetail(); detailMOD.Code = detail[i].item_code; detailMOD.Name = detail[i].item_name; detailMOD.Qty = detail[i].qty; detailMOD.Oid = MOD.ID; db.T_DeliverDetail.Add(detailMOD); db.SaveChanges(); T_StockOutstorage StorageModel = new T_StockOutstorage(); StorageModel.Code = detail[i].item_code; StorageModel.Name = detail[i].item_name; StorageModel.WarehouseCode = model.WarehouseCode; StorageModel.number = model.MailNo; StorageModel.Qty = detail[i].qty; StorageModel.Type = "出库"; db.T_StockOutstorage.Add(StorageModel); db.SaveChanges(); } sc.Complete(); return(Json(new { State = "Success" }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { State = "Faile", Message = e.Message }, JsonRequestBehavior.AllowGet)); } } }
//[Description("新增保存")] public JsonResult StockDetailAdd(T_StockStorage Model, string jsonStr, string CurUser) { using (TransactionScope sc = new TransactionScope()) { try { string Nickname = ""; if (!string.IsNullOrWhiteSpace(CurUser)) { Nickname = CurUser; } else { Nickname = Server.UrlDecode(Request.Cookies["Nickname"].Value); } Model.Type = "入库"; Model.ApplyName = Nickname; Model.ApplyDate = DateTime.Now; db.T_StockStorage.Add(Model); db.SaveChanges(); List <T_StockDetail> details = App_Code.Com.Deserialize <T_StockDetail>(jsonStr); foreach (var item in details) { item.Oid = Model.ID; db.T_StockDetail.Add(item); db.SaveChanges(); string code = item.Code; string WarehouseCode = Model.WarehouseCode; T_Stock Smodel = db.T_Stock.SingleOrDefault(a => a.Code == code && a.WarehouseName == WarehouseCode); if (Smodel != null) { Smodel.Qty += item.Qty; db.Entry <T_Stock>(Smodel).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } else { T_Stock StModel = new T_Stock(); StModel.Qty = item.Qty; StModel.Name = item.Name; StModel.Code = item.Code; StModel.WarehouseName = WarehouseCode; db.T_Stock.Add(StModel); db.SaveChanges(); } T_StockOutstorage StorageModel = new T_StockOutstorage(); StorageModel.Code = item.Code; StorageModel.Name = item.Name; StorageModel.WarehouseCode = WarehouseCode; StorageModel.number = Model.ID.ToString(); StorageModel.Qty = item.Qty; StorageModel.Type = "入库"; db.T_StockOutstorage.Add(StorageModel); db.SaveChanges(); } string cpcode = ""; for (int z = 0; z < details.Count; z++) { if (z == details.Count - 1) { cpcode += "{\"barcode\":\"" + details[z].Code + "\",\"qty\":" + details[z].Qty + "}"; } else { cpcode += "{\"barcode\":\"" + details[z].Code + "\",\"qty\":" + details[z].Qty + "},"; } } EBMS.App_Code.GY gy = new App_Code.GY(); string cmd = ""; cmd = "{" + "\"appkey\":\"171736\"," + "\"method\":\"gy.erp.new.purchase.arrive.add\"," + "\"sessionkey\":\"f5885504d9c84d1d8146200a4841f4b7\"," + "\"warehouse_code\":\"" + Model.WarehouseCode + "\"," + "\"supplier_code\":\"" + Model.SupplierName + "\"," + "\"order_type\":\"001\"," + "\"detail_list\":[" + cpcode + "]" + "}"; string sign = gy.Sign(cmd); string comcode = ""; comcode = "{" + "\"appkey\":\"171736\"," + "\"method\":\"gy.erp.new.purchase.arrive.add\"," + "\"sessionkey\":\"f5885504d9c84d1d8146200a4841f4b7\"," + "\"sign\":\"" + sign + "\"," + "\"warehouse_code\":\"" + Model.WarehouseCode + "\"," + "\"supplier_code\":\"" + Model.SupplierName + "\"," + "\"order_type\":\"001\"," + "\"detail_list\":[" + cpcode + "]" + "}"; string ret = gy.DoPost("http://api.guanyierp.com/rest/erp_open", comcode); JsonData jsonData = null; jsonData = JsonMapper.ToObject(ret); if (jsonData.Count == 6) { return(Json(new { State = "Faile", Message = "写入管易失败,请联系管理员" }, JsonRequestBehavior.AllowGet)); } else { sc.Complete(); return(Json(new { State = "Success" }, JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { return(Json(new { State = "Faile", Message = ex.Message }, JsonRequestBehavior.AllowGet)); } } }