| | |
| | | using WMS.Entity.BllQualityEntity; |
| | | using WMS.Entity.Context; |
| | | using WMS.Entity.DataEntity; |
| | | using WMS.Entity.SysEntity; |
| | | using WMS.IBLL.IDataServer; |
| | | |
| | | namespace WMS.BLL.DataServer |
| | |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 二楼业务 |
| | | /// <summary> |
| | | /// 添加托盘库存明细 |
| | | /// </summary> |
| | | public void InsertStockDetail(string PalletNo,string WareHouseNo,string AreaNo,string LocatNo, string PalletStatus, string SkuNo, string SkuName, string LotNo, int userId) |
| | | { |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(PalletNo)) |
| | | { |
| | | throw new Exception("托盘号不能为空!"); |
| | | } |
| | | if (string.IsNullOrEmpty(WareHouseNo)) |
| | | { |
| | | throw new Exception("所属仓库不能为空!"); |
| | | } |
| | | if (string.IsNullOrEmpty(AreaNo)) |
| | | { |
| | | throw new Exception("所属区域不能为空!"); |
| | | } |
| | | if (string.IsNullOrEmpty(LocatNo)) |
| | | { |
| | | throw new Exception("储位地址不能为空!"); |
| | | } |
| | | if (string.IsNullOrEmpty(PalletStatus)) |
| | | { |
| | | throw new Exception("托盘状态不能为空!"); |
| | | } |
| | | var palletInfo = Db.Queryable<DataStockDetail>().First(w => w.PalletNo == PalletNo); |
| | | if (palletInfo != null) |
| | | { |
| | | throw new Exception($"库存中已有编号为:{PalletNo}的明细,请勿重复添加!"); |
| | | } |
| | | //目标储位信息 |
| | | var locatInfo = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == LocatNo && w.Status == "0" && w.IsDel == "0"); |
| | | if (locatInfo == null) |
| | | { |
| | | throw new Exception("储位地址不存在!"); |
| | | } |
| | | |
| | | Db.BeginTran(); |
| | | |
| | | var comTime = DateTime.Now; |
| | | var model = new DataStockDetail() |
| | | { |
| | | Qty = 0, |
| | | LockQty = 0, |
| | | FrozenQty = 0, |
| | | InspectQty = 0, |
| | | WareHouseNo = WareHouseNo,//所属仓库 |
| | | RoadwayNo = "",//所属巷道 |
| | | AreaNo = AreaNo,//所属区域 |
| | | LocatNo = LocatNo,//储位地址 |
| | | PalletNo = PalletNo, |
| | | PalletNo2 = "", |
| | | PalletNo3 = "", |
| | | PalletTags = "0", |
| | | CompleteTime = comTime, |
| | | ProductionTime = null, |
| | | ExpirationTime = null, |
| | | Status = "0", |
| | | InspectMark = "0", |
| | | InspectStatus = "0",//待检验 |
| | | BitPalletMark = "0", |
| | | PackagNo = "", |
| | | IsBale = "0", |
| | | IsBelt = "0", |
| | | |
| | | SkuNo = SkuNo, |
| | | SkuName = SkuName, |
| | | LotNo = LotNo, |
| | | |
| | | PalletStatus = PalletStatus, |
| | | |
| | | IsDel = "0", |
| | | CreateUser = userId, |
| | | CreateTime = comTime |
| | | }; |
| | | //插入库存明细 |
| | | Db.Insertable(model).ExecuteCommand(); |
| | | |
| | | locatInfo.Status = "1";//有物品 |
| | | //修改目标储位状态 |
| | | Db.Updateable(locatInfo).ExecuteCommand(); |
| | | |
| | | Db.CommitTran(); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | //回滚事务 |
| | | Db.RollbackTran(); |
| | | throw new Exception(e.Message); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | } |
| | | } |