using HH.WMS.Common;
using HH.WMS.DAL;
using HH.WMS.Entitys;
using HH.WMS.Entitys.Entitys;
using HH.WMS.Entitys.Tzlj;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HH.WMS.BLL.Project.Tzlj
{
///
/// MES物料信息 (泰州隆基)
///
public class MesStackTrayBLL : DapperBaseBLL
{
#region GET
///
/// 获取叠拖数据
///
public void GetStackTrayByMes(string trayCode)
{
var result = WebApiManager.HttpMes_Get("/api/values/?lotsn=" + trayCode, "");
var mesStackTray = JsonConvert.DeserializeObject(result);
mesStackTray.TrayCode = trayCode;
//往数据库添加一条
BLLCreator.Create>().Add(mesStackTray, null);
//客户、功率、电流档位、等级、分布式订单需要加同色号
}
///
/// 判断物料规格是否已经存在
///
public TN_WM_B_TRAY_LOCATIONEntity JudgeItemSpecs(MesStackTrayEntity mesStackTray)
{
var zanCunAreaCode = "";
//查找暂存区托盘的规格物料
var trayLocations = CreateDAL>().GetList(new { CN_S_STOCK_AREA = zanCunAreaCode });
foreach (var trayLocation in trayLocations)
{
var trayMst = CreateDAL>().GetSingleEntity(new { CN_S_TRAY_CODE = trayLocation.CN_S_TRAY_CODE });
if (trayMst != null)
{
var mesStackTrayTemp = CreateDAL>().GetSingleEntity(new { CN_GUID = trayMst.CN_S_OWNER });
if (mesStackTrayTemp != null)
{
if (mesStackTrayTemp.CustomerName.Equals(mesStackTray.CustomerName)
&& mesStackTrayTemp.Power.Equals(mesStackTray.Power)
&& mesStackTrayTemp.CurrentLevel.Equals(mesStackTray.CurrentLevel)
&& mesStackTrayTemp.Level.Equals(mesStackTray.Level))
{
if (mesStackTray.POType.Equals("D") || mesStackTray.POType.Equals("A"))
{
if (mesStackTrayTemp.Color.Equals(mesStackTray.Color))
{
return trayLocation;
}
}
else
{
return trayLocation;
}
}
}
}
}
return null;
}
#endregion
}
}