This commit is contained in:
帅凯 贾
2023-07-18 11:18:52 +08:00
parent 53c4b66485
commit ccbca85c55
13 changed files with 504 additions and 151 deletions

View File

@ -334,11 +334,7 @@ namespace Epost.BLL
}
DataTable queueDT = queueBLL.getQueueOrderState(qmodel);
if (queueDT != null && queueDT.Rows.Count > 0)
{
skulist = queueDT.Rows[0]["sku"].ToString();
LogHelper.WriteLogInfo("=======" + qmodel.UserCode + "=====" + area + "区===sku=" + skulist);
}
#region
//if (data.Loc == "check")//任意回显标签拍下 熄灭回显设备
//{
@ -422,62 +418,50 @@ namespace Epost.BLL
List<JobModel> downlist = new List<JobModel>();
JobModel model = job.FirstOrDefault();
downlist.Add(model);
int endcount = 1;
List<JobModel> manyList = job.FindAll(m => m.ManyState == 1 && m.Tolocation == model.Tolocation && m.Sku == model.Sku);
if (manyList.Any())//合并显示数
{
endcount = manyList.Count;
downlist.AddRange(manyList);
LogHelper.WriteLogInfo("合并显示数据" + endcount + "============================");
}
else
{
downlist.Add(model);
}
#region
//int endcount = 1;
//if (manyList.Any())//合并显示数据
//{
// endcount = manyList.Count;
// downlist.AddRange(manyList);
// LogHelper.WriteLogInfo("合并显示数据" + endcount + "============================");
//}
//else
//{
// downlist.Add(model);
//}
#endregion
orderbll.UpdateOrderState_Car(downlist, model, truequantity, checkquantity);
LogHelper.WriteLogInfo("6------" + data.Address + "------" + model.Sku + "----" + model.State + "");
bool skuInish = dal.IsFinishWork(1, block, "", area, model.Sku, "", model.Matchid);
LogHelper.WriteLogInfo("标记------" + data.Address + "------" + model.Sku + "----" + model.State + "");
bool skuInish = dal.IsFinishWork(1, block, "", area, model.Sku, "", model.OrderID);
if (skuInish)
{
LogHelper.WriteLogInfo(data.Address + "=========------------------" + data.Parameter);
#region
OrdersQueueModel qumodel = new OrdersQueueModel();
qumodel.State = 3;
qumodel.Taskblock = block;
qumodel.Taskarea = area;
qumodel.Sku = model.Sku;
qumodel.Matchid = model.Matchid;
queueBLL.UpdateQueueTaskArea_Car(qumodel);
#endregion
Thread.Sleep(30);
LogHelper.WriteLogInfo("区SKU拣选完成--------------");
//删除sku缓存信息
List<ResultMessageModel> scanlist = downCacheDAL.GetPlanJobDownList().FindAll(p => p.Parameter == model.Sku && p.Command == "QUERY_SCAN_STATUS" && p.Area == area);
downCacheDAL.UpdateJobDownModelList(scanlist, EdownCommend.Execute);
List<JobModel> rjob = jobList.FindAll(m => m.Block == data.Block && m.Sku == model.Sku);
List<JobModel> rjob = jobList.FindAll(m => m.Block == data.Block && m.Area == data.Area && m.Sku == model.Sku);
JobCache.UpdateJobModelList(rjob, EcommendType.Execute);
bool allfinish = dal.IsFinishWork_box("", 0, model.Matchid);
bool allfinish = dal.IsFinishWork_box("", 0, model.OrderID);
if (allfinish)
{
//修改订单状
orderbll.UpdateOrderState_Car(downlist, model, 1, checkquantity);
bool lbo = dal.UpdateLocation(block, area);
dal.UpdateStateByCar(model.Matchid);
content = "此运单号作业已完成\r\r";
#region
OrdersQueueModel qumodel = new OrdersQueueModel();
qumodel.State = 3;
qumodel.Taskblock = block;
qumodel.Taskarea = area;
qumodel.Orderid = model.OrderID;
queueBLL.UpdateQueueTaskArea_Car(qumodel);
#endregion
ShowMessageModel_M showmodel = new ShowMessageModel_M();
showmodel.Area = area;
showmodel.Block = block;
showmodel.Color = color;
showmodel.Islock = true;
showmodel.Title = model.Matchid;
showmodel.No = "01";
showmodel.IsTwinkle = 0;
showmodel.Contents = content;
showmodel.Type = 2;
comBLL.ShowBoxMessage_M(showmodel);//点亮显示标签
//修改订单状态
dal.UpdateStateByCar(model.OrderID);
comBLL.DISPLAY_LIGHT_BLOCK(model.Block, data.Area, "0");
}
}
}
@ -517,6 +501,21 @@ namespace Epost.BLL
{
displayOrder(queueDT, nblock, narea, list, model);
}
}
else
{
DataTable orderdt = orderbll.GetOrderList(narea, nblock);
if (orderdt != null && orderdt.Rows.Count > 0)
{
OrdersQueueModel qmodel = new OrdersQueueModel();
qmodel.Taskblock = nblock;
qmodel.Taskarea = narea;
qmodel.UserCode = "";
qmodel.Orderid = orderdt.Rows[0]["orderid"].ToString();
queueBLL.insertQueueOrders(qmodel);
}
}
#endregion
@ -545,57 +544,123 @@ namespace Epost.BLL
if (!isJobList.Any())
{
model.State = 1;
orderbll.GetOrderList(queueDT.Rows[0]["matchid"].ToString(), nblock, queueDT.Rows[0]["sku"].ToString(), narea, queueDT.Rows[0]["usercode"].ToString());
orderbll.GetOrderList(queueDT.Rows[0]["Orderid"].ToString(), nblock, "", narea, queueDT.Rows[0]["usercode"].ToString());
List<JobModel> nowJoblist = jobList.FindAll(p => p.State == 0 && p.Block == model.Taskblock && p.Area == model.Taskarea);
if (nowJoblist.Any())
{
var nowmodel = nowJoblist.FirstOrDefault();
LogHelper.WriteLogInfo("进入任务点亮=====matchid=" + nowmodel.Matchid + "===orderid===" + nowmodel.OrderID + "=====sku==" + nowmodel.Sku + "========");
#region
LogHelper.WriteLogInfo("进入任务点亮=====matchid=" + nowmodel.Matchid + "===orderid===" + nowmodel.OrderID + "=====");
#region s
foreach (JobModel item in nowJoblist.ToArray())
{
if (item.State == 0)
{
List<JobModel> manyJoblist = nowJoblist.FindAll(m => m.Tolocation == item.Tolocation);
int quantity = item.Quantity;
#region
if (manyJoblist.Count > 1)//同一个货位的数据合并显示
{
quantity = 0;
if (manyJoblist.FindAll(m => m.State == 0).Any())
{
foreach (JobModel mitem in manyJoblist)
{
quantity += mitem.Quantity;
mitem.State = 1;
mitem.ManyState = 1;
}
}
}
//List<JobModel> manyJoblist = nowJoblist.FindAll(m => m.Tolocation == item.Tolocation);
int quantity = item.Quantity;
//if (manyJoblist.Count > 1)//同一个货位的数据合并显示
//{
// quantity = 0;
// if (manyJoblist.FindAll(m => m.State == 0).Any())
// {
// foreach (JobModel mitem in manyJoblist)
// {
// quantity += mitem.Quantity;
// mitem.State = 1;
// mitem.ManyState = 1;
// }
// }
//}
#endregion
//if (item.Tolocation.Contains("-"))
//{
// var aryloc = item.Tolocation.Split('-');
//}
LabelParamModel lamodel = new LabelParamModel();
string address = item.Address.ToString();
lamodel.Address = address;
lamodel.ControlIP = item.ControlIP.ToString();
lamodel.Command = "DISPLAY_JOB";
lamodel.Uid = item.ID;
lamodel.Type = "N";
lamodel.Title = item.genericname;
lamodel.Content = "" + item.Sku.Substring(item.Sku.Length - 4, 4) + "\t" + item.Spec + "\r" + item.GoodsName + "\r批号 " + item.batchno + "\t" + item.manufactname.Substring(0, 4) + "";
var aryloc = item.Tolocation.Split('-');
lamodel.Loc = "" + aryloc[1].ToString() + "-" + aryloc[2].ToString() + "";
lamodel.W_quantity = aryloc[3].ToString();
lamodel.Quantity = quantity.ToString();
lamodel.Unit = "盒";
lamodel.PicChoose = "";
#region
if (item.looklisten == "18")
{
lamodel.PicChoose = "02";//听似
}
else if (item.looklisten == "17")
{
lamodel.PicChoose = "03";//看似
}
else if (item.looklisten == "16")
{
lamodel.PicChoose = "04";//多规
}
else if (item.looklisten == "无")
{
lamodel.PicChoose = "05";//易混淆
}
#endregion
lamodel.Uid = item.ID;
lamodel.Mode = queueDT.Rows[0]["lightcolor"].ToString() + "0";
lamodel.Type = "C";
string color = EnumHelper.EMToDescriptionString(LightColor.Color.Red);
#region
if (item.ColorCode == "1")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.Red);
}
else if (item.ColorCode == "2")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.Blue);
}
else if (item.ColorCode == "3")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.Green);
}
else if (item.ColorCode == "4")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.Cyan);
}
else if (item.ColorCode == "5")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.Yellow);
}
else if (item.ColorCode == "6")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.White);
}
else if (item.ColorCode == "7")
{
color = EnumHelper.EMToDescriptionString(LightColor.Color.Pink);
}
#endregion
lamodel.Mode = color + "0";
list.Add(lamodel);
item.State = 1;
item.ColorCode = queueDT.Rows[0]["lightcolor"].ToString();
item.DisplayTime = DateTime.Now;
}
#endregion
#region
//comBLL.DISPLAY_LIGHT_BLOCK(model.Taskblock, model.Taskarea, "1");
comBLL.DISPLAY_LIGHT_BLOCK(model.Taskblock, model.Taskarea, "1");
#endregion
}