using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using wcftest.EnumDefine; using wcftest.orm; namespace wcftest.BussinessExtension.Handle { /// /// 出入库记录处理类 /// public class OutInStockTaskHandler { /// /// 新增出入库记录 /// /// 托盘号 /// /// 任务名称 /// 来源单号 /// 跟踪号 /// 物料编号 /// 物料名称 /// 单位 /// 变化数量,注意:出库任务记录的数量是负数![EditBy shaocx,2022-03-07] /// 库位号 /// 说明 public static void AddOutInStockTask(string plateCode, dbModel mod, OutInStockTaskName _taskName, string _orderCode, string _trackNumber , string _materialNumber, string _materialName, string _unit, decimal? _quantity, string _PositionName, string _remark, string _Creator) { OutInStockTask addOutTask = new OutInStockTask(); addOutTask.taskName = _taskName.ToString(); addOutTask.orderCode = _orderCode; addOutTask.trackNumber = _trackNumber; addOutTask.materialNumber = _materialNumber; addOutTask.materialName = _materialName; addOutTask.unit = _unit; addOutTask.quantity = _quantity;//注意:出库任务记录的数量是负数![EditBy shaocx,2022-03-07] //增加字段 【EditBy shaocx,2022-03-06】 addOutTask.PositionName = _PositionName; decimal cghw_ProductStorage = 0; decimal zcq__ProductStorage = 0; decimal dqkw_ProductStorage = 0; decimal dqkw_trackNumber_ProductStorage = 0; BussinessExtension.GetCurrentProductStorage(mod, addOutTask.materialNumber, addOutTask.PositionName, out cghw_ProductStorage, out zcq__ProductStorage, out dqkw_ProductStorage, addOutTask.trackNumber, out dqkw_trackNumber_ProductStorage); addOutTask.CGHW_ProductStorage = cghw_ProductStorage; addOutTask.ZCG_ProductStorage = zcq__ProductStorage; addOutTask.ext2 = dqkw_ProductStorage.ToString(); addOutTask.ext3 = dqkw_trackNumber_ProductStorage.ToString(); addOutTask.Remark = _remark; addOutTask.creatDate = DateTime.Now; addOutTask.Creator = _Creator; addOutTask.ext1 = plateCode;//托盘号 mod.OutInStockTask.Add(addOutTask);//增加出库记录 } /// /// 新增出入库记录 /// /// /// 任务名称 /// 变化数量 /// 库存对象 /// 说明 public static void AddOutInStockTask22(string _Creator,dbModel mod, OutInStockTaskName _taskName, decimal? changeQty, Base_ProductPosition productPosition, string _remark, string _orderCode, string myPositionName = "") { OutInStockTask addOutTask = new OutInStockTask(); addOutTask.taskName = _taskName.ToString(); addOutTask.orderCode = _orderCode;//来源单号不知道?? addOutTask.trackNumber = productPosition.ExtendField04;//跟踪号 addOutTask.materialNumber = productPosition.ProductCode; addOutTask.materialName = productPosition.ProductName; addOutTask.unit = productPosition.SmallUnit; if (_taskName == OutInStockTaskName.清库任务 || _taskName == OutInStockTaskName.出库任务 || _taskName == OutInStockTaskName.退货任务) { changeQty = -changeQty; } addOutTask.quantity = changeQty;//注意:出库任务记录的数量是负数![EditBy shaocx,2022-03-07] //增加字段 【EditBy shaocx,2022-03-06】 addOutTask.PositionName = productPosition.PositionName; if (!string.IsNullOrEmpty(myPositionName)) {//增加适用 移库场景的情况 【Editby shaocx,2022-10-20】 addOutTask.PositionName = myPositionName; } decimal cghw_ProductStorage = 0; decimal zcq__ProductStorage = 0; decimal dqkw_ProductStorage = 0; decimal dqkw_trackNumber_ProductStorage = 0; BussinessExtension.GetCurrentProductStorage(mod, addOutTask.materialNumber, addOutTask.PositionName, out cghw_ProductStorage, out zcq__ProductStorage, out dqkw_ProductStorage, addOutTask.trackNumber, out dqkw_trackNumber_ProductStorage); addOutTask.CGHW_ProductStorage = cghw_ProductStorage; addOutTask.ZCG_ProductStorage = zcq__ProductStorage; addOutTask.ext2 = dqkw_ProductStorage.ToString(); addOutTask.ext3 = dqkw_trackNumber_ProductStorage.ToString(); addOutTask.Remark = _remark; addOutTask.creatDate = DateTime.Now; addOutTask.Creator = _Creator; addOutTask.ext1 = productPosition.PlateCode;//托盘号 mod.OutInStockTask.Add(addOutTask);//增加出库记录 } } }