public JsonResult DoAudit(int Id) { try { StockInType obj = GetById(Id); obj.IsAudit = 1; NSession.SaveOrUpdate(obj); NSession.Flush(); IList <WarehouseStockType> list = NSession.CreateQuery(" from WarehouseStockType where WId=:p1 and SKU=:p2").SetInt32("p1", obj.WId).SetString("p2", obj.SKU).List <WarehouseStockType>(); if (list.Count > 0) { WarehouseStockType ws = list[0]; ws.Qty = ws.Qty + obj.Qty; NSession.SaveOrUpdate(ws); NSession.Flush(); Utilities.SetComposeStock(obj.SKU, NSession); Utilities.CreateSKUCode(obj.SKU, obj.Qty, obj.Id.ToString(), NSession); IList <OrderType> orders = NSession.CreateQuery(" from OrderType where Id in(select OId from OrderProductType where SKU ='" + obj.SKU + "' and IsQue=1) and IsOutOfStock=1").List <OrderType>(); foreach (OrderType item in orders) { OrderHelper.SetQueOrder(item, NSession); } } } catch (Exception ee) { return(Json(new { IsSuccess = false, ErrorMsg = "出错了" })); } return(Json(new { IsSuccess = true })); }
public static bool StockOut(int wid, string sku, int num, string outType, string user, string memo, string orderNo, ISession NSession) { IList <WarehouseStockType> list = NSession.CreateQuery(" from WarehouseStockType where WId=:p1 and SKU=:p2").SetInt32("p1", wid).SetString("p2", sku).List <WarehouseStockType>(); if (list.Count > 0) { WarehouseStockType ws = list[0]; ws.Qty = ws.Qty - num; ws.UpdateOn = DateTime.Now; NSession.SaveOrUpdate(ws); NSession.Flush(); SetComposeStock(sku, NSession); StockOutType stockOutType = new StockOutType(); stockOutType.CreateBy = user; stockOutType.CreateOn = DateTime.Now; stockOutType.OrderNo = orderNo; stockOutType.Qty = num; stockOutType.SKU = sku; stockOutType.OutType = outType; stockOutType.SourceQty = ws.Qty + num; stockOutType.WId = wid; stockOutType.Memo = memo; NSession.Save(stockOutType); NSession.Flush(); return(true); } return(false); }
/// <summary> /// 根据Id获取 /// </summary> /// <param name="Id"></param> /// <returns></returns> public WarehouseStockType GetById(int Id) { WarehouseStockType obj = NSession.Get <WarehouseStockType>(Id); if (obj == null) { throw new Exception("返回实体为空"); } else { return(obj); } }
public JsonResult Create(WarehouseStockType obj) { try { NSession.SaveOrUpdate(obj); NSession.Flush(); } catch (Exception ee) { return(Json(new { IsSuccess = false, ErrorMsg = "出错了" })); } return(Json(new { IsSuccess = true })); }
public JsonResult DeleteConfirmed(int id) { try { WarehouseStockType obj = GetById(id); NSession.Delete(obj); NSession.Flush(); } catch (Exception ee) { return(Json(new { IsSuccess = false, ErrorMsg = "出错了" })); } return(Json(new { IsSuccess = true })); }
public static bool StockIn(int wid, string sku, int num, double price, string InType, string user, string memo, ISession NSession, bool isAudit = false) { IList <WarehouseStockType> list = NSession.CreateQuery(" from WarehouseStockType where WId=:p1 and SKU=:p2").SetInt32("p1", wid).SetString("p2", sku).List <WarehouseStockType>(); if (list.Count > 0) { WarehouseStockType ws = list[0]; ws.Qty = ws.Qty + num; ws.UpdateOn = DateTime.Now; NSession.SaveOrUpdate(ws); NSession.Flush(); SetComposeStock(sku, NSession); StockInType stockInType = new StockInType(); stockInType.IsAudit = 0; if (isAudit) { stockInType.IsAudit = 1; } stockInType.Price = price; stockInType.Qty = num; stockInType.SKU = sku; stockInType.WId = wid; stockInType.InType = InType; stockInType.Memo = memo; stockInType.WName = ws.Warehouse; stockInType.SourceQty = ws.Qty - num; stockInType.CreateBy = user; stockInType.CreateOn = DateTime.Now; NSession.SaveOrUpdate(stockInType); NSession.Flush(); if (price > 0) { NSession.CreateSQLQuery(" update Products set Price=" + price + " where SKU='" + sku + "'") .UniqueResult(); NSession.Flush(); } IList <OrderType> orders = NSession.CreateQuery(" from OrderType where Id in(select OId from OrderProductType where SKU ='" + sku + "' and IsQue=1) and IsOutOfStock=1").List <OrderType>(); foreach (OrderType item in orders) { OrderHelper.SetQueOrder(item, NSession); } return(true); } return(false); }
public JsonResult List(int page, int rows, string sort, string order, string search) { string orderby = Utilities.OrdeerBy(sort, order); string where = Utilities.SqlWhere(search); List <WarehouseStockType> objList = NSession.CreateSQLQuery("select *,(select COUNT(Id) from SKUCode S where S.SKU = WS.sku and IsOut=0 group by SKU) as UnPeiQty from WarehouseStock WS" + where + orderby).AddEntity(typeof(WarehouseStockType)) .SetFirstResult(rows * (page - 1)) .SetMaxResults(rows) .List <WarehouseStockType>().ToList(); string ids = ""; foreach (var warehouseStockType in objList) { ids += warehouseStockType.SKU + ","; } if (ids.Length > 0) { ids = ids.Trim(','); } IList <object[]> objs = NSession.CreateQuery("select SKU,COUNT(Id) from SKUCodeType where SKU in('" + ids.Replace(",", "','") + "') and IsOut=0 group by SKU ").List <object[]>(); foreach (var objectse in objs) { WarehouseStockType warehouse = objList.Find(x => x.SKU.Trim().ToUpper() == objectse[0].ToString().Trim().ToUpper()); if (warehouse != null) { warehouse.UnPeiQty = Convert.ToInt32(objectse[1]); if (warehouse.UnPeiQty == 0) { warehouse.UnPeiQty = warehouse.Qty; } } } object count = NSession.CreateQuery("select count(Id) from WarehouseStockType " + where).UniqueResult(); return(Json(new { total = count, rows = objList })); }
private static void AddToWarehouse(ProductType obj, ISession NSession, int Qty = 0) { IList <WarehouseType> list = NSession.CreateQuery(" from WarehouseType").List <WarehouseType>(); // //在仓库中添加产品库存 // foreach (var item in list) { WarehouseStockType stock = new WarehouseStockType(); stock.Pic = obj.SPicUrl; stock.WId = item.Id; stock.Warehouse = item.WName; stock.PId = obj.Id; stock.SKU = obj.SKU; stock.Title = obj.ProductName; stock.Qty = Qty; stock.UpdateOn = DateTime.Now; NSession.SaveOrUpdate(stock); NSession.Flush(); } }
public ActionResult ImportProduct(string fileName) { try { List <ResultInfo> results = new List <ResultInfo>(); DataTable dt = OrderHelper.GetDataTable(fileName); IList <WarehouseType> list = NSession.CreateQuery(" from WarehouseType").List <WarehouseType>(); for (int i = 0; i < dt.Rows.Count; i++) { ProductType p = new ProductType { CreateOn = DateTime.Now }; p.SKU = dt.Rows[i]["子SKU"].ToString().Trim(); if (IsExist(p.SKU)) { continue; } p.Status = dt.Rows[i]["销售状态"].ToString(); p.ProductName = dt.Rows[i]["名称"].ToString(); p.Category = dt.Rows[i]["分类"].ToString(); p.Standard = dt.Rows[i]["规格"].ToString(); p.Price = Convert.ToDouble(dt.Rows[i]["价格"]); p.Weight = Convert.ToInt16(dt.Rows[i]["重量"]); p.Long = Convert.ToInt16(dt.Rows[i]["长"]); p.Wide = Convert.ToInt16(dt.Rows[i]["宽"]); p.High = Convert.ToInt16(dt.Rows[i]["高"]); p.Location = dt.Rows[i]["库位号"].ToString(); p.OldSKU = dt.Rows[i]["SKU"].ToString(); p.HasBattery = Convert.ToInt32(dt.Rows[i]["电池"].ToString()); p.IsElectronic = Convert.ToInt32(dt.Rows[i]["电子"].ToString()); p.IsScan = Convert.ToInt32(dt.Rows[i]["配货扫描"].ToString()); p.DayByStock = Convert.ToInt32(dt.Rows[i]["备货天数"].ToString()); p.ProductAttribute = dt.Rows[i]["产品属性"].ToString(); p.Enabled = 1; if (!HasExsit(p.SKU)) { NSession.SaveOrUpdate(p); NSession.Flush(); results.Add(OrderHelper.GetResult(p.SKU, "", "导入成功")); //在仓库中添加产品库存 foreach (var item in list) { WarehouseStockType stock = new WarehouseStockType(); stock.Pic = p.SPicUrl; stock.WId = item.Id; stock.Warehouse = item.WName; stock.PId = p.Id; stock.SKU = p.SKU; stock.Title = p.ProductName; stock.Qty = 0; stock.UpdateOn = DateTime.Now; NSession.SaveOrUpdate(stock); NSession.Flush(); } } else { results.Add(OrderHelper.GetResult(p.SKU, "该产品已存在", "导入失败")); } } Session["Results"] = results; return(Json(new { IsSuccess = true, Info = true })); } catch (Exception ex) { return(Json(new { IsSuccess = false, ErrorMsg = ex.Message, Info = true })); } }
public ActionResult Edit(int id) { WarehouseStockType obj = GetById(id); return(View(obj)); }