煤科院现场调试提交
This commit is contained in:
@ -50,17 +50,14 @@ namespace WCS.BLL.DbModels
|
||||
/// <summary>
|
||||
/// 入库的库位表ID
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "store_id", IsNullable = false, ColumnDescription = "库位ID")]
|
||||
[SugarColumn(ColumnName = "store_id", IsNullable = true, ColumnDescription = "库位ID")]
|
||||
public int StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 入库的库位编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "store_code", Length = 50, IsNullable = false, ColumnDescription = "库位编码")]
|
||||
[SugarColumn(ColumnName = "store_code", Length = 50, IsNullable = true, ColumnDescription = "库位编码")]
|
||||
public string StoreCode { get; set; }
|
||||
|
||||
[Navigate(NavigateType.OneToOne, nameof(StoreId))]
|
||||
public StoreInfo StoreInfo { get; set; }
|
||||
#endregion
|
||||
|
||||
#region 任务属性
|
||||
@ -70,6 +67,10 @@ namespace WCS.BLL.DbModels
|
||||
[SugarColumn(ColumnName = "task_id", IsNullable = false, ColumnDescription = "任务Id,同一个库位只支持1-7")]
|
||||
public int TaskID { get; set; } = 0;
|
||||
|
||||
///真主键
|
||||
[SugarColumn(ColumnName = "item_no", Length = 128, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
public string ItemNo { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Guid
|
||||
/// </summary>
|
||||
@ -85,7 +86,7 @@ namespace WCS.BLL.DbModels
|
||||
/// <summary>
|
||||
/// 出库单据号
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "order_number", Length = 50, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
[SugarColumn(ColumnName = "order_number", Length = 128, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
@ -48,17 +48,14 @@ namespace WCS.BLL.DbModels
|
||||
/// <summary>
|
||||
/// 入库的库位表ID
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "store_id", IsNullable = false, ColumnDescription = "库位ID")]
|
||||
[SugarColumn(ColumnName = "store_id", IsNullable = true, ColumnDescription = "库位ID")]
|
||||
public int StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 入库的库位编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "store_code", Length = 50, IsNullable = false, ColumnDescription = "库位编码")]
|
||||
[SugarColumn(ColumnName = "store_code", Length = 50, IsNullable = true, ColumnDescription = "库位编码")]
|
||||
public string StoreCode { get; set; }
|
||||
|
||||
[Navigate(NavigateType.OneToOne, nameof(StoreId))]
|
||||
public StoreInfo StoreInfo { get; set; }
|
||||
#endregion
|
||||
|
||||
#region 任务属性
|
||||
@ -68,6 +65,10 @@ namespace WCS.BLL.DbModels
|
||||
[SugarColumn(ColumnName = "task_id", IsNullable = false, ColumnDescription = "任务Id,同一个库位只支持1-7")]
|
||||
public int TaskID { get; set; }
|
||||
|
||||
///真主键
|
||||
[SugarColumn(ColumnName = "item_no", Length = 128, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
public string ItemNo { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Guid
|
||||
/// </summary>
|
||||
@ -83,7 +84,7 @@ namespace WCS.BLL.DbModels
|
||||
/// <summary>
|
||||
/// 出库单据号
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "order_number", Length = 50, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
[SugarColumn(ColumnName = "order_number", Length = 128, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
@ -49,17 +49,14 @@ namespace WCS.BLL.DbModels
|
||||
/// <summary>
|
||||
/// 入库的库位表ID
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "store_id", IsNullable = false, ColumnDescription = "库位ID")]
|
||||
[SugarColumn(ColumnName = "store_id", IsNullable = true, ColumnDescription = "库位ID")]
|
||||
public int StoreId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 入库的库位编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "store_code", Length = 50, IsNullable = false, ColumnDescription = "库位编码")]
|
||||
[SugarColumn(ColumnName = "store_code", Length = 50, IsNullable = true, ColumnDescription = "库位编码")]
|
||||
public string StoreCode { get; set; }
|
||||
|
||||
[Navigate(NavigateType.OneToOne, nameof(StoreId))]
|
||||
public StoreInfo StoreInfo { get; set; }
|
||||
#endregion
|
||||
|
||||
#region 任务属性
|
||||
@ -69,6 +66,10 @@ namespace WCS.BLL.DbModels
|
||||
[SugarColumn(ColumnName = "task_id", IsNullable = false, ColumnDescription = "任务Id,同一个库位只支持1-7")]
|
||||
public int TaskID { get; set; }
|
||||
|
||||
///真主键
|
||||
[SugarColumn(ColumnName = "item_no", Length = 128, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
public string ItemNo { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Guid
|
||||
/// </summary>
|
||||
@ -84,7 +85,7 @@ namespace WCS.BLL.DbModels
|
||||
/// <summary>
|
||||
/// 出库单据号
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "order_number", Length = 50, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
[SugarColumn(ColumnName = "order_number", Length = 128, IsNullable = false, ColumnDescription = "出库单据号")]
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
@ -45,7 +45,7 @@ namespace WCS.BLL.HardWare
|
||||
ModuleCode = module.ModuleCode,
|
||||
BoardId = module.BoardId,
|
||||
IsEnable = module.IsEnable,
|
||||
CurrentMode = module.CurrentMode
|
||||
CurrentMode = TaskModeEnum.待机模式
|
||||
});
|
||||
}
|
||||
ModulesStr = string.Join(";", MXL4Modules.Select(t => t.ModuleCode));
|
||||
@ -70,15 +70,30 @@ namespace WCS.BLL.HardWare
|
||||
await Task.Delay(2000);
|
||||
continue;
|
||||
}
|
||||
|
||||
//查询属于本货架的任务
|
||||
var currentShelfTasks = DbHelp.db.Queryable<CurrentTask>()
|
||||
.Where(t => t.ShelfId == this.ShelfId)
|
||||
.Where(t => t.IsSended == false)
|
||||
.OrderBy(t => t.CreateTime)
|
||||
.ToList();
|
||||
//获取因为任务需要刷新的module
|
||||
var haveTaskModules = currentShelfTasks.Select(t => t.ModuleId).Distinct().ToList();
|
||||
MXL4Modules.ForEach(t =>
|
||||
{
|
||||
if (haveTaskModules.Contains(t.ModuleId))
|
||||
{ t.IsNeedRefresh = true; }
|
||||
});
|
||||
|
||||
//查询是否有需要刷新的
|
||||
var needRefreshModules = MXL4Modules.Where(t => t.IsNeedRefresh)
|
||||
.ToList();
|
||||
foreach (var module in needRefreshModules)
|
||||
{
|
||||
try
|
||||
{
|
||||
//查询当前是否有任务
|
||||
var currentTasks = DbHelp.db.Queryable<CurrentTask>()
|
||||
.Where(t => t.ModuleId == module.ModuleId)
|
||||
.Where(t => t.IsSended == false)
|
||||
var currentTasks = currentShelfTasks.Where(t => t.ModuleId == module.ModuleId)
|
||||
.OrderBy(t => t.CreateTime)
|
||||
.ToList();
|
||||
//入库、出库、盘点等任务
|
||||
@ -204,6 +219,13 @@ namespace WCS.BLL.HardWare
|
||||
//获取失败 跳过此次循环后继续获取
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
Logs.Write($"【后台发送线程】遇到异常{ex.Message},{ex.StackTrace}");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@ -429,13 +451,14 @@ namespace WCS.BLL.HardWare
|
||||
.FirstOrDefault();
|
||||
if (module != null)
|
||||
{
|
||||
module.SetCurrentMode(TaskModeEnum.待机模式);
|
||||
module.IsNeedRefresh = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
Logs.Write($"【回到待机模式】货架【{ShelfCode}】通过板子ID【{boardId}】未找到对应模组!");
|
||||
}
|
||||
|
||||
//TO DO 所有退出后货架才待机
|
||||
SetCurrentMode(TaskModeEnum.待机模式);
|
||||
}
|
||||
/// <summary>
|
||||
@ -526,6 +549,7 @@ namespace WCS.BLL.HardWare
|
||||
StoreCode = task.StoreCode,
|
||||
TaskID = task.TaskID,
|
||||
Guid = task.Guid,
|
||||
ItemNo = task.ItemNo,
|
||||
TaskMode = task.TaskMode,
|
||||
OrderNumber = task.OrderNumber,
|
||||
ButtonColor = task.ButtonColor,
|
||||
@ -583,6 +607,7 @@ namespace WCS.BLL.HardWare
|
||||
StoreCode = task.StoreCode,
|
||||
TaskID = task.TaskID,
|
||||
Guid = task.Guid,
|
||||
ItemNo = task.ItemNo,
|
||||
TaskMode = task.TaskMode,
|
||||
OrderNumber = task.OrderNumber,
|
||||
ButtonColor = task.ButtonColor,
|
||||
@ -640,6 +665,7 @@ namespace WCS.BLL.HardWare
|
||||
StoreCode = task.StoreCode,
|
||||
TaskID = task.TaskID,
|
||||
Guid = task.Guid,
|
||||
ItemNo = task.ItemNo,
|
||||
TaskMode = task.TaskMode,
|
||||
OrderNumber = task.OrderNumber,
|
||||
ButtonColor = task.ButtonColor,
|
||||
|
@ -87,7 +87,7 @@ namespace WCS.BLL.HardWare
|
||||
public string ModuleCode { get; set; }
|
||||
public int BoardId { get; set; }
|
||||
public bool IsEnable { get; set; }
|
||||
public TaskModeEnum CurrentMode { get; set; }
|
||||
public TaskModeEnum CurrentMode { get; set; } = TaskModeEnum.待机模式;
|
||||
|
||||
public bool IsNeedRefresh { get; set; } = true;
|
||||
|
||||
|
@ -62,7 +62,7 @@ namespace WCS.BLL.Manager
|
||||
}
|
||||
//手动修改后台配置后再进行CodeFirst 数据库的生成、表的生成
|
||||
//如果不配置此参数 每次启动都会持续几十秒才能成功启动后端
|
||||
if (LocalFile.Config.IsResetDBOrTable)
|
||||
if (true)
|
||||
{
|
||||
#region 建库建表 只在表有变动时运行
|
||||
DbHelp.db.DbMaintenance.CreateDatabase();
|
||||
|
234
WCS.BLL/Manager/MKYBackgroundThread.cs
Normal file
234
WCS.BLL/Manager/MKYBackgroundThread.cs
Normal file
@ -0,0 +1,234 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using WCS.BLL.DbModels.Task;
|
||||
using WCS.BLL.DbModels;
|
||||
using WCS.BLL.HardWare;
|
||||
using WCS.DAL.Db.AuthDb;
|
||||
using WCS.DAL.Db;
|
||||
using WCS.DAL;
|
||||
using WCS.Model.ApiModel.InOutRecord;
|
||||
using WCS.Model.ApiModel.MXBackgroundThread;
|
||||
using WCS.Model;
|
||||
using WCS.BLL.Tool;
|
||||
using SqlSugar;
|
||||
using WCS.BLL.Config;
|
||||
using WCS.Model.ApiModel.MKYBackgroundThread;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Reflection;
|
||||
|
||||
namespace WCS.BLL.Manager
|
||||
{
|
||||
public static class MKYBackgroundThread
|
||||
{
|
||||
public static void InitBackgroundThread()
|
||||
{
|
||||
#region 调用WMS接口获取具体的库存列表并展示在液晶标签上
|
||||
Task.Run(() =>
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
//每5秒同步一次
|
||||
Thread.Sleep(5000);
|
||||
try
|
||||
{
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logs.Write("【定时任务】刷新库存显示时发生异常!" + ex.Message);
|
||||
}
|
||||
}
|
||||
});
|
||||
#endregion
|
||||
|
||||
#region 定时任务:回传数据至WMS系统
|
||||
Task.Run(() =>
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
//回传数据的时间间隔
|
||||
Thread.Sleep(2000);
|
||||
try
|
||||
{
|
||||
//获取已完成未提交的任务
|
||||
var finsishedTaks = DbHelp.db.Queryable<FinishedTask>()
|
||||
.Where(t => t.FinishTime > DateTime.Now.AddDays(-1))//只上传1天内的 后续调整
|
||||
.OrderBy(t => t.FinishTime)
|
||||
.ToList();
|
||||
//循环进行上传
|
||||
for (int i = 0; i < finsishedTaks.Count; i++)
|
||||
{
|
||||
var finishedTask = finsishedTaks[i];
|
||||
try
|
||||
{
|
||||
//////上传单据
|
||||
////#region 上传单据
|
||||
////var request = new SysOrderRequest()
|
||||
////{
|
||||
//// guid = finishedTask.Guid.ToString(),
|
||||
//// itemNo = finishedTask.ItemNo,
|
||||
//// matCode = finishedTask.MatCode,
|
||||
//// matBatch = finishedTask.MatBatch,
|
||||
//// matSN = finishedTask.MatSN,
|
||||
//// orderNumber = finishedTask.OrderNumber,
|
||||
//// orderType = (int)finishedTask.TaskMode,
|
||||
//// storeCode = finishedTask.StoreCode,
|
||||
//// qty = finishedTask.Qty,
|
||||
////};
|
||||
////var result = ApiHelp.GetDataFromHttp<SysOrderResponse>(@"http://172.16.129.8:8989/ztwcs/stockBillBack", request, "POST", true);
|
||||
////if (result != null && (result.code == 200))
|
||||
////{
|
||||
//// //上传成功
|
||||
//// var uploadedTask = new UploadededTask()
|
||||
//// {
|
||||
//// ShelfId = finishedTask.ShelfId,
|
||||
//// ShelfCode = finishedTask.ShelfCode,
|
||||
//// ModuleId = finishedTask.ModuleId,
|
||||
//// ModuleCode = finishedTask.ModuleCode,
|
||||
//// StoreId = finishedTask.StoreId,
|
||||
//// StoreCode = finishedTask.StoreCode,
|
||||
//// TaskID = finishedTask.TaskID,
|
||||
//// ItemNo = finishedTask.ItemNo,
|
||||
//// Guid = finishedTask.Guid,
|
||||
//// TaskMode = finishedTask.TaskMode,
|
||||
//// OrderNumber = finishedTask.OrderNumber,
|
||||
//// ButtonColor = finishedTask.ButtonColor,
|
||||
//// MatCode = finishedTask.MatCode,
|
||||
//// MatName = finishedTask.MatName,
|
||||
//// MatSpec = finishedTask.MatSpec,
|
||||
//// MatBatch = finishedTask.MatBatch,
|
||||
//// MatSN = finishedTask.MatSN,
|
||||
//// Qty = finishedTask.Qty,
|
||||
//// CreateTime = finishedTask.CreateTime,
|
||||
//// FinishQty = finishedTask.FinishQty,
|
||||
//// FinishTime = finishedTask.FinishTime,
|
||||
//// UploadTime = DateTime.Now,
|
||||
//// };
|
||||
//// DbHelp.db.Insertable(uploadedTask).ExecuteCommand();
|
||||
//// DbHelp.db.Deleteable(finishedTask).ExecuteCommand();
|
||||
////}
|
||||
////#endregion
|
||||
|
||||
//为了调试
|
||||
Random random = new Random();
|
||||
int number = random.Next(1 , 100);
|
||||
if (number <= 30)
|
||||
{
|
||||
//上传成功
|
||||
var uploadedTask = new UploadededTask()
|
||||
{
|
||||
ShelfId = finishedTask.ShelfId,
|
||||
ShelfCode = finishedTask.ShelfCode,
|
||||
ModuleId = finishedTask.ModuleId,
|
||||
ModuleCode = finishedTask.ModuleCode,
|
||||
StoreId = finishedTask.StoreId,
|
||||
StoreCode = finishedTask.StoreCode,
|
||||
TaskID = finishedTask.TaskID,
|
||||
ItemNo = finishedTask.ItemNo,
|
||||
Guid = finishedTask.Guid,
|
||||
TaskMode = finishedTask.TaskMode,
|
||||
OrderNumber = finishedTask.OrderNumber,
|
||||
ButtonColor = finishedTask.ButtonColor,
|
||||
MatCode = finishedTask.MatCode,
|
||||
MatName = finishedTask.MatName,
|
||||
MatSpec = finishedTask.MatSpec,
|
||||
MatBatch = finishedTask.MatBatch,
|
||||
MatSN = finishedTask.MatSN,
|
||||
Qty = finishedTask.Qty,
|
||||
CreateTime = finishedTask.CreateTime,
|
||||
FinishQty = finishedTask.FinishQty,
|
||||
FinishTime = finishedTask.FinishTime,
|
||||
UploadTime = DateTime.Now,
|
||||
};
|
||||
DbHelp.db.Insertable(uploadedTask).ExecuteCommand();
|
||||
DbHelp.db.Deleteable(finishedTask).ExecuteCommand();
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】{finishedTask.ItemNo}发生异常," + ex.Message, LogsType.Info);
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】{finishedTask.ItemNo}发生异常" + ex.StackTrace, LogsType.Info);
|
||||
}
|
||||
Thread.Sleep(500);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Logs.Write("【定时任务:回传数据至WMS系统】发生异常" + e.Message, LogsType.Info);
|
||||
Logs.Write("【定时任务:回传数据至WMS系统】发生异常" + e.StackTrace, LogsType.Info);
|
||||
}
|
||||
}
|
||||
});
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
//#region 定时任务:监测警示灯关灯机制
|
||||
////判断灯颜色和模式是否对应
|
||||
//Task.Run(() =>
|
||||
//{
|
||||
// while (true)
|
||||
// {
|
||||
// //间隔5秒查询一次
|
||||
// Thread.Sleep(5000);
|
||||
// try
|
||||
// {
|
||||
// //待机模式未关灯
|
||||
// var shelves = ShelfManager.Shelves.Where(t => t.CurrentMode == TaskModeEnum.待机模式 && t.LightColor != WarningLight.LightColorEnum.关闭)
|
||||
// .Where(t => t.SetCurrentModeTime < DateTime.Now.AddSeconds(-5))
|
||||
// .ToList();
|
||||
// foreach (var shelf in shelves)
|
||||
// {
|
||||
// try
|
||||
// {
|
||||
// if (shelf is SmartShelf)
|
||||
// {
|
||||
// var smartShelf = (SmartShelf)shelf;
|
||||
// if (smartShelf.IsWarning == false)
|
||||
// {
|
||||
// smartShelf?.WarningLight.CloseLight(smartShelf.TcpCleint);
|
||||
// Logs.Write($"【定时任务】:监测警示灯关灯机制,关【{shelf.ShelfCode}】灯发送指令成功!");
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// Logs.Write($"【定时任务】:监测警示灯关灯机制,关【{shelf.ShelfCode}】灯发生异常" + ex.Message);
|
||||
// }
|
||||
// }
|
||||
|
||||
// //出库模式未亮灯
|
||||
// var outShelves = ShelfManager.Shelves.Where(t => t.CurrentMode == TaskModeEnum.出库模式 && t.LightColor == WarningLight.LightColorEnum.关闭)
|
||||
// .Where(t => t.SetCurrentModeTime < DateTime.Now.AddSeconds(-5))
|
||||
// .ToList();
|
||||
// foreach (var shelf in outShelves)
|
||||
// {
|
||||
// try
|
||||
// {
|
||||
// if (shelf is SmartShelf)
|
||||
// {
|
||||
// var smartShelf = (SmartShelf)shelf;
|
||||
// smartShelf?.WarningLight.GreenLight(smartShelf.TcpCleint);
|
||||
// Logs.Write($"【定时任务】:监测警示灯关灯机制,出库开灯【{shelf.ShelfCode}】发送指令成功!");
|
||||
// }
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// Logs.Write($"【定时任务】:监测警示灯关灯机制,出库开灯【{shelf.ShelfCode}】发生异常" + ex.Message);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// Logs.Write("【定时任务】:监测警示灯关灯机制发生异常" + ex.Message);
|
||||
// }
|
||||
// }
|
||||
//});
|
||||
//#endregion
|
||||
}
|
||||
}
|
||||
}
|
@ -39,15 +39,15 @@ namespace WCS.BLL.Services.Service
|
||||
var storeCodeList = request.List.Select(t => t.StoreCode)
|
||||
.Distinct()
|
||||
.ToList();
|
||||
var stores = DbHelp.db.Queryable<StoreInfo>()
|
||||
var moduleInfo = DbHelp.db.Queryable<ModuleInfo>()
|
||||
.LeftJoin<ShelfTypeInfo>((si, sti) => si.ShelfTypeId == sti.Id)
|
||||
.Where((si, sti) => sti.ShelfTypeName == "液晶货架")
|
||||
.Where((si, sti) => storeCodeList.Contains(si.StoreCode))
|
||||
.Select((st, sti) => st)
|
||||
.Where((si, sti) => sti.ShelfTypeName == "液晶标签货架")
|
||||
.Where((si, sti) => storeCodeList.Contains(si.ModuleCode))
|
||||
.Select((si, sti) => si)
|
||||
.ToList();
|
||||
if (stores.Count < storeCodeList.Count)
|
||||
if (moduleInfo.Count < storeCodeList.Count)
|
||||
{
|
||||
var storeCodesInDB = stores.Select(t => t.StoreCode).ToList();
|
||||
var storeCodesInDB = moduleInfo.Select(t => t.ModuleCode).ToList();
|
||||
storeCodeList.RemoveAll(t => storeCodesInDB.Contains(t));
|
||||
return new ResponseCommon<object>
|
||||
{
|
||||
@ -72,20 +72,36 @@ namespace WCS.BLL.Services.Service
|
||||
};
|
||||
}
|
||||
|
||||
//获取taskId
|
||||
var list = new List<int>() { 1, 2, 3, 4, 5, 6, 7 };
|
||||
//已存在的taskID
|
||||
var exsitIds = currenTasks.Select(t => t.TaskID)
|
||||
.ToList();
|
||||
exsitIds.ForEach(t =>
|
||||
{
|
||||
list.RemoveAll(l => l == t);
|
||||
});
|
||||
|
||||
var tasks = new List<CurrentTask>();
|
||||
//生成任务数据
|
||||
foreach (var orderDetail in request.List)
|
||||
{
|
||||
var store = stores.Where(t => t.StoreCode == orderDetail.StoreCode).First();
|
||||
var taskId = list.First();
|
||||
list.RemoveAll(l => l == taskId);
|
||||
|
||||
var module = moduleInfo.Where(t => t.ModuleCode == orderDetail.StoreCode).First();
|
||||
var task = new CurrentTask()
|
||||
{
|
||||
StoreId = store.Id,
|
||||
StoreCode = store.StoreCode,
|
||||
|
||||
ModuleId = module.Id,
|
||||
ModuleCode = module.ModuleCode,
|
||||
ShelfId = module.ShelfId,
|
||||
ShelfCode = module.ShelfCode,
|
||||
Guid = orderDetail.Guid,
|
||||
ItemNo = orderDetail.ItemNo,
|
||||
TaskMode = request.OrderType,
|
||||
OrderNumber = request.OrderNumber,
|
||||
ButtonColor = request.Corlor,
|
||||
TaskID = taskId,
|
||||
ButtonColor = DbModels.Task.ButtonColorEnum.绿色,
|
||||
MatCode = orderDetail.MatCode,
|
||||
MatName = orderDetail.MatName,
|
||||
MatSpec = orderDetail.MatSpec,
|
||||
|
35
WCS.Model/ApiModel/MKYBackgroundThread/SysOrderRequest.cs
Normal file
35
WCS.Model/ApiModel/MKYBackgroundThread/SysOrderRequest.cs
Normal file
@ -0,0 +1,35 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace WCS.Model.ApiModel.MKYBackgroundThread
|
||||
{
|
||||
public class SysOrderRequest
|
||||
{
|
||||
public string itemNo { get; set; }
|
||||
|
||||
|
||||
public string guid { get; set; }
|
||||
|
||||
|
||||
public string matCode { get; set; }
|
||||
|
||||
|
||||
public string matBatch { get; set; }
|
||||
|
||||
|
||||
public string matSN { get; set; }
|
||||
|
||||
|
||||
public string orderNumber { get; set; }
|
||||
|
||||
|
||||
public int orderType { get; set; }
|
||||
|
||||
|
||||
public string storeCode { get; set; }
|
||||
|
||||
|
||||
public int qty { get; set; }
|
||||
}
|
||||
}
|
13
WCS.Model/ApiModel/MKYBackgroundThread/SysOrderResponse.cs
Normal file
13
WCS.Model/ApiModel/MKYBackgroundThread/SysOrderResponse.cs
Normal file
@ -0,0 +1,13 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace WCS.Model.ApiModel.MKYBackgroundThread
|
||||
{
|
||||
public class SysOrderResponse
|
||||
{
|
||||
public int code { get; set; }
|
||||
public string message { get; set; }
|
||||
public object data { get; set; }
|
||||
}
|
||||
}
|
@ -11,7 +11,7 @@ namespace WCS.Model.ApiModel.MXL4
|
||||
/// <summary>
|
||||
/// 按钮颜色
|
||||
/// </summary>
|
||||
public ButtonColorEnum Corlor { get; set; }
|
||||
public string Corlor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务单号
|
||||
@ -36,6 +36,11 @@ namespace WCS.Model.ApiModel.MXL4
|
||||
/// </summary>
|
||||
public Guid Guid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
///系统那边的主键
|
||||
/// </summary>
|
||||
public string ItemNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 库位编码
|
||||
/// </summary>
|
||||
|
@ -37,7 +37,8 @@ namespace WebApi
|
||||
ShelfManager.InitShelves();
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ط<EFBFBD><D8B7>߳<EFBFBD>
|
||||
WarningManager.StartWarningMessageThread();
|
||||
//WarningManager.StartWarningMessageThread();
|
||||
MKYBackgroundThread.InitBackgroundThread();
|
||||
|
||||
//<2F><>Ѷ<EFBFBD><D1B6>˾<EFBFBD><CBBE>̨<EFBFBD>߳<EFBFBD>
|
||||
if (LocalFile.Config.IsMx)
|
||||
@ -73,7 +74,6 @@ namespace WebApi
|
||||
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
||||
builder.Services.AddEndpointsApiExplorer();
|
||||
builder.Services.AddSwaggerGen();
|
||||
|
||||
builder.Services.AddScoped<IInstoreService, InstoreService>();
|
||||
builder.Services.AddScoped<IOutstoreService, OutstoreService>();
|
||||
builder.Services.AddScoped<IHomerService, HomerService>();
|
||||
|
Reference in New Issue
Block a user