using HH.Redis.ReisModel;
|
using HH.WMS.Common;
|
using HH.WMS.Common.Algorithm;
|
using HH.WMS.DAL;
|
using HH.WMS.DAL.Basic;
|
using HH.WMS.Entitys;
|
using HH.WMS.Entitys.Basic;
|
using HH.WMS.Entitys.Common;
|
using HH.WMS.Entitys.Entitys;
|
using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace HH.WMS.BLL.SysMgr
|
{
|
public class StockInitBLL : DapperBaseBLL
|
{
|
public OperateResult SaveStockInit(List<ImportTemplateEntity> importTempList, RedisUserEntity redisUserEntity)
|
{
|
#region 拼接入库单主子表实体
|
TN_WM_INCREASE_INVENTORY_MSTEntity MstEntity = new TN_WM_INCREASE_INVENTORY_MSTEntity();
|
|
string postData = "{\"appCode\":\"AutoWMS\",\"ruleName\":\"" + Constants.Rule_In + "\",\"orgId\":\"" + redisUserEntity.CN_S_ORGCODE + "\",\"orgFlag\":\"" + redisUserEntity.CN_S_ORGFLAG + "\"}";
|
string OPNo = WebApiManager.HttpAutoBom_Post("Api/BillRule/GenBillNo", postData);
|
|
string postDataLot = "{\"appCode\":\"AutoWMS\",\"ruleName\":\"" + Constants.BatchNo + "\",\"orgId\":\"" + redisUserEntity.CN_S_ORGCODE + "\",\"orgFlag\":\"" + redisUserEntity.CN_S_ORGFLAG + "\"}";
|
string lotNo = WebApiManager.HttpAutoBom_Post("Api/BillRule/GenBillNo", postDataLot);
|
|
|
string inMstGuid = System.Guid.NewGuid().ToString().ToUpper();
|
MstEntity.CN_GUID = inMstGuid;
|
MstEntity.CN_S_OP_NO = OPNo;
|
MstEntity.CN_S_OP_TYPE = Constants.OpSystemInit;
|
MstEntity.CN_S_STOCK_CODE = importTempList[0].CN_S_STOCK_CODE;
|
MstEntity.CN_T_OPERATE = DateTime.Now;
|
MstEntity.CN_S_STATE = Constants.State_Audit;
|
MstEntity.CN_S_CREATOR = redisUserEntity.CN_S_LOGIN;
|
MstEntity.CN_S_OPERATOR = redisUserEntity.CN_S_NAME;
|
MstEntity.CN_S_CREATOR_BY = redisUserEntity.CN_S_NAME;
|
MstEntity.CN_T_CREATE = DateTime.Now;
|
MstEntity.CN_S_MODIFY = redisUserEntity.CN_S_LOGIN;
|
MstEntity.CN_S_MODIFY_BY = redisUserEntity.CN_S_NAME;
|
MstEntity.CN_T_MODIFY = DateTime.Now;
|
MstEntity.CN_S_AUDITOR = redisUserEntity.CN_S_NAME;
|
MstEntity.CN_S_AUDIT_REMARK = "初始化入库";
|
MstEntity.CN_T_AUDIT_TIME = DateTime.Now;
|
MstEntity.CN_S_OWNER = Constants.DefaultOwner;
|
MstEntity.CN_S_LOT_NO = lotNo;
|
|
var Group_List1 = importTempList.GroupBy(x => new
|
{
|
x.CN_S_ITEM_CODE,
|
x.CN_S_ITEM_NAME,
|
x.CN_S_PRODUCTION_BATCH,
|
x.CN_S_FIGURE_NO,
|
x.CN_S_MODEL,
|
x.CN_S_MEASURE_UNIT,
|
x.CN_S_ITEM_STATE
|
}).Select(g => new ImportTemplateEntity
|
{
|
CN_S_ITEM_CODE = g.FirstOrDefault().CN_S_ITEM_CODE.Trim(),
|
CN_S_ITEM_NAME = g.FirstOrDefault().CN_S_ITEM_NAME.Trim(),
|
CN_S_PRODUCTION_BATCH = g.FirstOrDefault().CN_S_PRODUCTION_BATCH.Trim(),
|
CN_S_FIGURE_NO = g.FirstOrDefault().CN_S_FIGURE_NO.Trim(),
|
CN_S_MODEL = g.FirstOrDefault().CN_S_MODEL.Trim(),
|
CN_S_MEASURE_UNIT = g.FirstOrDefault().CN_S_MEASURE_UNIT.Trim(),
|
CN_S_ITEM_STATE = g.FirstOrDefault().CN_S_ITEM_STATE.Trim(),
|
CN_F_QUANTITY = g.Sum(p => p.CN_F_QUANTITY)
|
}).ToList();
|
|
List<TN_WM_INCREASE_INVENTORY_DTLEntity> dtlEntityList = new List<TN_WM_INCREASE_INVENTORY_DTLEntity>();
|
|
int rowIndex = 1;
|
foreach (var item in Group_List1)
|
{
|
TN_WM_INCREASE_INVENTORY_DTLEntity dtlEntity = new TN_WM_INCREASE_INVENTORY_DTLEntity();
|
dtlEntity.CN_GUID = System.Guid.NewGuid().ToString().ToUpper();
|
dtlEntity.CN_S_OP_NO = OPNo;
|
dtlEntity.CN_N_ROW_NO = rowIndex;
|
dtlEntity.CN_S_MSTGUID = inMstGuid;
|
dtlEntity.CN_S_ITEM_CODE = item.CN_S_ITEM_CODE;
|
dtlEntity.CN_S_ITEM_NAME = item.CN_S_ITEM_NAME;
|
dtlEntity.CN_S_ITEM_STATE = item.CN_S_ITEM_STATE;
|
dtlEntity.CN_S_MEASURE_UNIT = item.CN_S_MEASURE_UNIT;
|
dtlEntity.CN_S_PRODUCTION_BATCH = item.CN_S_PRODUCTION_BATCH;
|
dtlEntity.CN_F_QUANTITY = Convert.ToDecimal(item.CN_F_QUANTITY);
|
dtlEntity.CN_S_FIGURE_NO = item.CN_S_FIGURE_NO;
|
dtlEntity.CN_S_MODEL = item.CN_S_MODEL;
|
dtlEntity.CN_S_STATE = Constants.State_Audit;
|
dtlEntity.CN_C_IS_BALANCE = "N";
|
dtlEntity.CN_C_IS_SCRAP = "N";
|
dtlEntity.CN_F_UPSHELF_QTY = dtlEntity.CN_F_QUANTITY;
|
dtlEntity.CN_F_ALLOT_QTY = 0;
|
dtlEntity.CN_F_PRINTING_QTY = 0;
|
dtlEntity.CN_F_ADD_ONTRAY_QTY = dtlEntity.CN_F_QUANTITY;
|
dtlEntity.CN_S_CREATOR = redisUserEntity.CN_S_LOGIN;
|
dtlEntity.CN_S_CREATOR_BY = redisUserEntity.CN_S_NAME;
|
dtlEntity.CN_T_CREATE = DateTime.Now;
|
dtlEntity.CN_S_MODIFY = redisUserEntity.CN_S_LOGIN;
|
dtlEntity.CN_S_MODIFY_BY = redisUserEntity.CN_S_NAME;
|
dtlEntity.CN_T_MODIFY = DateTime.Now;
|
|
dtlEntityList.Add(dtlEntity);
|
rowIndex++;
|
}
|
MstEntity.DTLEntity = dtlEntityList;
|
|
#endregion
|
|
#region 拼接仓库和库区量表实体
|
List<TN_WM_B_STOCK_QTYEntity> stockQtyList = new List<TN_WM_B_STOCK_QTYEntity>();//影响仓库量表
|
List<TN_WM_B_AREA_QTYEntity> stockAreaQtyList = new List<TN_WM_B_AREA_QTYEntity>();//影响库区量表
|
|
var Group_List2 = importTempList.GroupBy(x => new
|
{
|
x.CN_S_ITEM_CODE,
|
x.CN_S_ITEM_NAME,
|
x.CN_S_STOCK_CODE,
|
x.CN_S_ITEM_STATE,
|
x.CN_S_PRODUCTION_BATCH
|
}).Select(g => new ImportTemplateEntity
|
{
|
CN_S_ITEM_CODE = g.FirstOrDefault().CN_S_ITEM_CODE.Trim(),
|
CN_S_ITEM_NAME = g.FirstOrDefault().CN_S_ITEM_NAME.Trim(),
|
CN_S_STOCK_CODE = g.FirstOrDefault().CN_S_STOCK_CODE.Trim(),
|
CN_S_PRODUCTION_BATCH = g.FirstOrDefault().CN_S_PRODUCTION_BATCH.Trim(),
|
CN_S_ITEM_STATE = g.FirstOrDefault().CN_S_ITEM_STATE.Trim(),
|
CN_F_QUANTITY = g.Sum(p => p.CN_F_QUANTITY)
|
}).ToList();
|
|
DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); // 当地时区
|
long timeStamp = (long)(DateTime.Now - startTime).TotalMilliseconds; // 相差毫秒数
|
|
foreach (var item in Group_List2)
|
{
|
#region 拼接仓库量表实体
|
stockQtyList.Add(new TN_WM_B_STOCK_QTYEntity()
|
{
|
CN_GUID = System.Guid.NewGuid().ToString().ToUpper(),
|
CN_S_OWNER = Constants.DefaultOwner,
|
CN_S_ITEM_CODE = item.CN_S_ITEM_CODE,
|
CN_S_ITEM_NAME = item.CN_S_ITEM_NAME,
|
CN_S_ITEM_STATE = item.CN_S_ITEM_STATE,
|
CN_S_LOT_NO = lotNo,
|
CN_S_PRODUCTION_BATCH = item.CN_S_PRODUCTION_BATCH,
|
CN_S_STOCK_CODE = item.CN_S_STOCK_CODE,
|
CN_F_QUANTITY = Convert.ToDecimal(item.CN_F_QUANTITY),
|
CN_F_PLANNED_QTY = 0,
|
CN_F_ALLOC_QTY = 0,
|
CN_F_PRELOCK_QTY = 0,
|
CN_S_TIMESTAMP = timeStamp.ToString()
|
});
|
#endregion
|
}
|
|
var Group_List3 = importTempList.GroupBy(x => new
|
{
|
x.CN_S_ITEM_CODE,
|
x.CN_S_ITEM_NAME,
|
x.CN_S_STOCK_CODE,
|
x.CN_S_AREA_CODE,
|
x.CN_S_ITEM_STATE,
|
x.CN_S_PRODUCTION_BATCH
|
}).Select(g => new ImportTemplateEntity
|
{
|
CN_S_ITEM_CODE = g.FirstOrDefault().CN_S_ITEM_CODE.Trim(),
|
CN_S_ITEM_NAME = g.FirstOrDefault().CN_S_ITEM_NAME.Trim(),
|
CN_S_STOCK_CODE = g.FirstOrDefault().CN_S_STOCK_CODE.Trim(),
|
CN_S_AREA_CODE = g.FirstOrDefault().CN_S_AREA_CODE.Trim(),
|
CN_S_PRODUCTION_BATCH = g.FirstOrDefault().CN_S_PRODUCTION_BATCH.Trim(),
|
CN_S_ITEM_STATE = g.FirstOrDefault().CN_S_ITEM_STATE.Trim(),
|
CN_F_QUANTITY = g.Sum(p => p.CN_F_QUANTITY)
|
}).ToList();
|
|
foreach (var item in Group_List3)
|
{
|
#region 拼接库区量表实体
|
stockAreaQtyList.Add(new TN_WM_B_AREA_QTYEntity()
|
{
|
CN_GUID = System.Guid.NewGuid().ToString().ToUpper(),
|
CN_S_OWNER = Constants.DefaultOwner,
|
CN_S_ITEM_CODE = item.CN_S_ITEM_CODE,
|
CN_S_ITEM_NAME = item.CN_S_ITEM_NAME,
|
CN_S_ITEM_STATE = item.CN_S_ITEM_STATE,
|
CN_S_LOT_NO = lotNo,
|
CN_S_PRODUCTION_BATCH = item.CN_S_PRODUCTION_BATCH,
|
CN_S_STOCK_CODE = item.CN_S_STOCK_CODE,
|
CN_S_STOCK_AREA = item.CN_S_AREA_CODE,
|
CN_F_QUANTITY = Convert.ToDecimal(item.CN_F_QUANTITY),
|
CN_F_PLANNED_QTY = 0,
|
CN_F_ALLOC_QTY = 0,
|
CN_S_TIMESTAMP = timeStamp.ToString()
|
});
|
#endregion
|
}
|
|
#endregion
|
|
#region 拼接到货批次实体
|
|
TN_WM_LOT_INFOEntity lotInfo = new TN_WM_LOT_INFOEntity();
|
lotInfo.CN_GUID = System.Guid.NewGuid().ToString().ToUpper();
|
lotInfo.CN_S_LOT_CODE = lotNo;
|
lotInfo.CN_S_VENDOR_NO = "";
|
lotInfo.CN_S_CREATOR = redisUserEntity.CN_S_LOGIN;
|
lotInfo.CN_S_CREATOR_BY = redisUserEntity.CN_S_NAME;
|
lotInfo.CN_T_CREATE = DateTime.Now;
|
|
#endregion
|
|
#region 拼接托盘物料关联主子表、拼接托盘货位关联表
|
List<TN_WM_B_TRAY_LOCATIONEntity> TrayLocationEntityList = new List<TN_WM_B_TRAY_LOCATIONEntity>();
|
|
List<TN_WM_B_TRAY_ITEM_MSTEntity> TrayItemMstEntityList = new List<TN_WM_B_TRAY_ITEM_MSTEntity>();
|
List<TN_WM_B_TRAY_ITEM_DTLEntity> TrayItemDtlEntityList = new List<TN_WM_B_TRAY_ITEM_DTLEntity>();
|
|
List<TN_WM_B_TRAY_INFOEntity> trayInfoList = new List<TN_WM_B_TRAY_INFOEntity>();
|
|
var Group_List4 = importTempList.GroupBy(x => new
|
{
|
x.CN_S_STOCK_CODE,
|
x.CN_S_AREA_CODE,
|
x.CN_S_LOCATION_CODE,
|
x.CN_S_TRAY_CODE
|
}).Select(g => new ImportTemplateEntity
|
{
|
CN_S_STOCK_CODE = g.FirstOrDefault().CN_S_STOCK_CODE.Trim(),
|
CN_S_AREA_CODE = g.FirstOrDefault().CN_S_AREA_CODE.Trim(),
|
CN_S_LOCATION_CODE = g.FirstOrDefault().CN_S_LOCATION_CODE.Trim(),
|
CN_S_TRAY_CODE = g.FirstOrDefault().CN_S_TRAY_CODE.Trim(),
|
CN_F_QUANTITY = g.Sum(p => p.CN_F_QUANTITY)
|
}).ToList();
|
|
foreach (var item in Group_List4)
|
{
|
var trayCode = "";
|
if (!string.IsNullOrEmpty(item.CN_S_TRAY_CODE))
|
{
|
trayCode = item.CN_S_TRAY_CODE;
|
}
|
else
|
{
|
TN_WM_B_TRAY_INFOEntity trayInfo = DocreateTrayInfo(redisUserEntity);
|
trayCode = trayInfo.CN_S_TRAY_CODE;
|
if (trayInfo != null)
|
{
|
trayInfoList.Add(trayInfo);
|
}
|
}
|
|
#region 拼接托盘货位实体
|
TN_WM_B_TRAY_LOCATIONEntity trayLocation = new TN_WM_B_TRAY_LOCATIONEntity();
|
trayLocation.CN_N_INDEX = 1;
|
trayLocation.CN_S_STOCK_CODE = item.CN_S_STOCK_CODE;
|
trayLocation.CN_S_STOCK_AREA = item.CN_S_AREA_CODE;
|
trayLocation.CN_S_LOCATION_CODE = item.CN_S_LOCATION_CODE;
|
trayLocation.CN_S_CREATOR = redisUserEntity.CN_S_LOGIN;
|
trayLocation.CN_S_CREATOR_BY = redisUserEntity.CN_S_NAME;
|
trayLocation.CN_T_CREATE = DateTime.Now;
|
trayLocation.CN_S_TRAY_CODE = trayCode;
|
TrayLocationEntityList.Add(trayLocation);
|
#endregion
|
|
var mstResult_1 = importTempList.Where(t => t.CN_S_TRAY_CODE == item.CN_S_TRAY_CODE && t.CN_S_LOCATION_CODE == item.CN_S_LOCATION_CODE).ToList();
|
|
var Group_List5 = mstResult_1.GroupBy(x => new
|
{
|
x.CN_S_ITEM_CODE,
|
x.CN_S_ITEM_NAME,
|
x.CN_S_ITEM_STATE,
|
x.CN_S_MEASURE_UNIT,
|
x.CN_S_PRODUCTION_BATCH,
|
x.CN_S_FIGURE_NO,
|
x.CN_S_MODEL
|
}).Select(g => new ImportTemplateEntity
|
{
|
CN_S_ITEM_CODE = g.FirstOrDefault().CN_S_ITEM_CODE.Trim(),
|
CN_S_ITEM_NAME = g.FirstOrDefault().CN_S_ITEM_NAME.Trim(),
|
CN_S_ITEM_STATE = g.FirstOrDefault().CN_S_ITEM_STATE.Trim(),
|
CN_S_FIGURE_NO = g.FirstOrDefault().CN_S_FIGURE_NO.Trim(),
|
CN_S_MODEL = g.FirstOrDefault().CN_S_MODEL.Trim(),
|
CN_S_MEASURE_UNIT = g.FirstOrDefault().CN_S_MEASURE_UNIT.Trim(),
|
CN_F_QUANTITY = g.Sum(p => p.CN_F_QUANTITY)
|
}).ToList();
|
|
foreach (var itemtray in Group_List5)
|
{
|
#region 拼接托盘物料关联实体-主子表
|
var parentGuid = System.Guid.NewGuid().ToString().ToUpper();
|
|
TN_WM_B_TRAY_ITEM_MSTEntity relMst = new TN_WM_B_TRAY_ITEM_MSTEntity();
|
relMst.CN_GUID = parentGuid;
|
relMst.CN_S_TRAY_CODE = trayCode;
|
relMst.CN_S_TRAY_GRID = "1";
|
relMst.CN_S_OWNER = Constants.DefaultOwner;
|
relMst.CN_S_ITEM_CODE = itemtray.CN_S_ITEM_CODE;
|
relMst.CN_S_ITEM_NAME = itemtray.CN_S_ITEM_NAME;
|
relMst.CN_S_FIGURE_NO = itemtray.CN_S_FIGURE_NO;
|
relMst.CN_S_MODEL = itemtray.CN_S_MODEL;
|
relMst.CN_S_ITEM_STATE = itemtray.CN_S_ITEM_STATE;
|
relMst.CN_F_QUANTITY = Convert.ToDecimal(itemtray.CN_F_QUANTITY);
|
relMst.CN_S_MEASURE_UNIT = itemtray.CN_S_MEASURE_UNIT;
|
relMst.CN_F_INQTY = Convert.ToDecimal(itemtray.CN_F_QUANTITY);
|
relMst.CN_F_ALLOC_QTY = 0;
|
relMst.CN_S_TIMESTAMP = timeStamp.ToString();
|
TrayItemMstEntityList.Add(relMst);
|
|
TN_WM_B_TRAY_ITEM_DTLEntity relDtl = new TN_WM_B_TRAY_ITEM_DTLEntity();
|
relDtl.CN_GUID = System.Guid.NewGuid().ToString().ToUpper();
|
relDtl.CN_PARENT_GUID = parentGuid;
|
relDtl.CN_S_LOT_NO = lotNo;
|
relDtl.CN_F_QUANTITY = Convert.ToDecimal(itemtray.CN_F_QUANTITY);
|
relDtl.CN_S_PRODUCTION_BATCH = itemtray.CN_S_PRODUCTION_BATCH;
|
relDtl.CN_S_CREATOR = redisUserEntity.CN_S_LOGIN;
|
relDtl.CN_S_CREATOR_BY = redisUserEntity.CN_S_NAME;
|
relDtl.CN_T_CREATE = DateTime.Now;
|
TrayItemDtlEntityList.Add(relDtl);
|
|
#endregion
|
}
|
}
|
|
#endregion
|
|
#region 获取货位汇总
|
|
var Group_List6 = importTempList.GroupBy(x => new
|
{
|
x.CN_S_LOCATION_CODE
|
}).Select(g => new ImportTemplateEntity
|
{
|
CN_S_LOCATION_CODE = g.FirstOrDefault().CN_S_LOCATION_CODE.Trim()
|
}).ToList();
|
|
|
#endregion
|
|
OperateResult operateResult = UseTransaction(trans =>
|
{
|
if (MstEntity != null)
|
{
|
//新增入库单主表
|
CreateDAL<DapperDAL<TN_WM_INCREASE_INVENTORY_MSTEntity>>().Add(MstEntity, trans);
|
//新增入库单子表
|
CreateDAL<DapperDAL<TN_WM_INCREASE_INVENTORY_DTLEntity>>().AddRange(MstEntity.DTLEntity, trans);
|
}
|
if (stockQtyList.Any())
|
{
|
//影响仓库量表
|
CreateDAL<TN_WM_B_STOCK_QTYDAL>().AddStockQty(stockQtyList, trans);
|
}
|
if (stockAreaQtyList.Any())
|
{
|
//影响库区量表
|
CreateDAL<TN_WM_B_AREA_QTYDAL>().AddAreaQty(stockAreaQtyList, trans);
|
}
|
if (lotInfo != null)
|
{
|
//影响到货批次表
|
CreateDAL<DapperDAL<TN_WM_LOT_INFOEntity>>().Add(lotInfo, trans);
|
}
|
if (TrayLocationEntityList.Any())
|
{
|
//影响托盘货位关联表
|
CreateDAL<DapperDAL<TN_WM_B_TRAY_LOCATIONEntity>>().AddRange(TrayLocationEntityList, trans);
|
}
|
if (TrayItemMstEntityList.Any())
|
{
|
//影响托盘物料主表
|
CreateDAL<DapperDAL<TN_WM_B_TRAY_ITEM_MSTEntity>>().AddRange(TrayItemMstEntityList, trans);
|
}
|
if (TrayItemDtlEntityList.Any())
|
{
|
//影响托盘物料子表
|
CreateDAL<DapperDAL<TN_WM_B_TRAY_ITEM_DTLEntity>>().AddRange(TrayItemDtlEntityList, trans);
|
}
|
if (trayInfoList.Any())
|
{
|
//影响托盘表
|
CreateDAL<DapperDAL<TN_WM_B_TRAY_INFOEntity>>().AddRange(trayInfoList, trans);
|
}
|
if (Group_List6.Any())
|
{
|
//影响货位状态表
|
CreateDAL<TN_WM_LOCATION_EXTDAL>().UpdateLocationUseState(Group_List6, Constants.Use_State_NoFull, trans);
|
}
|
//调用AutoBom接口更新初始化
|
var param = new
|
{
|
stocks = stockQtyList[0].CN_S_STOCK_CODE,
|
locations = ""
|
};
|
string res = WebApiManager.HttpAutoBom_Post("api/Stock/UpdateInit", JsonConvert.SerializeObject(param));
|
if (!string.IsNullOrEmpty(res))
|
{
|
MsgEntity msgEntity = JsonConvert.DeserializeObject<MsgEntity>(res);
|
if (!msgEntity.Success)
|
{
|
throw new Exception(msgEntity.Msg);
|
}
|
}
|
else
|
{
|
throw new Exception("仓库初始化接口未调通!");
|
}
|
|
});
|
return operateResult;
|
}
|
|
/// <summary>
|
/// 生成虚拟托盘实体
|
/// </summary>
|
/// <param name="userEntity"></param>
|
/// <returns></returns>
|
private TN_WM_B_TRAY_INFOEntity DocreateTrayInfo(RedisUserEntity userEntity)
|
{
|
#region 生成虚拟托盘实体
|
TN_WM_B_TRAY_INFOEntity trayInfo = new TN_WM_B_TRAY_INFOEntity();
|
|
string postData = "{\"appCode\":\"AutoWMS\",\"ruleName\":\"" + Constants.VirtualTray + "\",\"orgId\":\"" + userEntity.CN_S_ORG_GUID + "\",\"orgFlag\":\"" + userEntity.CN_S_ORGFLAG + "\"}";
|
string trayNo = WebApiManager.HttpAutoBom_Post("api/BillRule/GenBillNo", postData);
|
if (string.IsNullOrEmpty(trayNo))
|
{
|
return null;
|
}
|
trayInfo.CN_S_TRAY_CODE = trayNo;
|
trayInfo.CN_S_TRAY_TYPE = Constants.VirtualTray;
|
trayInfo.CN_S_TRAY_CODE_EXT = "";
|
trayInfo.CN_S_SPEC = "";
|
trayInfo.CN_S_SORTING_CODE = "";
|
trayInfo.CN_S_STATE = "使用中";
|
trayInfo.CN_S_USE_STATE = "满";
|
trayInfo.CN_N_COLUMN_NUM = 1;
|
trayInfo.CN_F_GROSSWEIGHT = 0;
|
trayInfo.CN_F_LOADBEARING = 0;
|
trayInfo.CN_F_WEIGHT = 0;
|
trayInfo.CN_N_LATTICE_NUM = 1;
|
trayInfo.CN_N_ROW_NUM = 1;
|
trayInfo.CN_S_COLLECT_CODE = "";
|
trayInfo.CN_S_COLLECT_LOCATION = "";
|
trayInfo.CN_S_CREATOR = userEntity.CN_S_LOGIN;
|
trayInfo.CN_S_CREATOR_BY = userEntity.CN_S_NAME;
|
trayInfo.CN_T_CREATE = DateTime.Now;
|
trayInfo.CN_S_MODIFY = userEntity.CN_S_LOGIN;
|
trayInfo.CN_S_MODIFY_BY = userEntity.CN_S_NAME;
|
trayInfo.CN_T_MODIFY = DateTime.Now;
|
trayInfo.CN_S_DESC = "初始化生成虚拟托盘";
|
|
return trayInfo;
|
#endregion
|
}
|
}
|
}
|