using HH.WCS.QingXigongchang.process;
using HH.WCS.QingXigongchang.util;
using HH.WCS.QingXigongchang.wms;
using Newtonsoft.Json;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.Web.UI.WebControls.WebParts;
namespace HH.WCS.QingXigongchang.core
{
///
/// 定时轮询任务
///
internal class Monitor
{
static List RunOrder = new List();
static bool debugClear = false;
public static void BottleCapAuto2()
{
if (debugClear)
{
try
{
var cntrs = ContainerHelper.GetCntrItemRel();
foreach (var item in cntrs.GroupBy(x => x.S_CNTR_CODE))
{
var list = item.ToList();
if (list.Count > 1)
{
list.Remove(list.First());
LocationHelper.DoAction(db =>
{
db.Deleteable(list).ExecuteCommand();
return true;
});
}
}
}
catch (Exception ex)
{
LogHelper.Info("debugClear" + ex.Message);
}
}
///"成品转运" -- 手动移库工单
var workOrders = WCSHelper.GetWorkOrder2();
if (workOrders.Any())
{
foreach (var item in workOrders)
{
var srow = Convert.ToInt32(item.start_row);
var erow = Convert.ToInt32(item.end_row);
LogHelper.Info($"{item.Turn_Type}工单," + JsonConvert.SerializeObject(item));
if (item.start_area == item.end_area)
{
if (srow == erow)
{
WCSHelper.Do(db =>
{
LogHelper.Info("手动移库工单,完成" + item.SQL_WorkNo + "同库区同排 无法移库");
item.SQL_State = "完成";
item.Note = "同库区同排 无法移库";
db.Updateable(item).UpdateColumns(it => new
{
it.SQL_State,
it.Note
}).ExecuteCommand();
});
continue;
}
}
if (item.TrayCount > 0)
{
var b = LocationHelper.DoAction(db =>
{
var task = new SqlHelper