From 743c2748dd4e3c2c2a84c7ae930a9cf287453a84 Mon Sep 17 00:00:00 2001 From: zs <zhousong@weben-smart.com> Date: 周一, 12 5月 2025 17:10:40 +0800 Subject: [PATCH] 出入库 --- HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskCreateOrUpdateDtoBase.cs | 209 ++-- HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs | 6 HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs | 2 HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs | 1 HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.cs | 27 HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsOutStockAppService.cs | 29 HIAWms/hiawms_web/src/widgets/WmsTask/Views/Pages/WmsTask/Config.ts | 4 HIAWms/server/src/CMS.Plugin.HIAWms/Controller/LMesOperateController.cs | 40 HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs | 4 HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.Designer.cs | 1792 +++++++++++++++++++++++++++++++++++++++++ HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/LMesCallMaterialInput.cs | 29 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs | 5 HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockOrderAppService.cs | 2 HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/WmsTask.cs | 5 HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsInsStockController.cs | 28 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/CallMaterialOutput.cs | 73 + HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/GetWmsTaskInput.cs | 13 HIAWms/hiawms_web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts | 24 HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Scripts/UpdateMigrations.bat | 2 HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/IWmsTaskRepository.cs | 10 HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/LMesOperateAppService.cs | 114 ++ HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs | 6 HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Views/Pages/WmsInOutStockOrder/WmsInOutStockOrder.tsx | 4 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/OutStockDto/CallMaterialInput.cs | 5 HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsBindInStockAppService.cs | 4 HIAWms/project/Wms.cmsproj | 0 HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsOutStockController.cs | 5 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/ILMesOperateAppService.cs | 19 HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs | 17 HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs | 7 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskDto.cs | 6 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskExportModel.cs | 14 HIAWms/hiawms_web/src/widgets/WmsInOutStockOrderDetail/Views/Pages/WmsInOutStockOrderDetail/Config.ts | 8 HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs | 6 HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsOutStockAppService.cs | 5 35 files changed, 2,376 insertions(+), 149 deletions(-) diff --git a/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Views/Pages/WmsInOutStockOrder/WmsInOutStockOrder.tsx b/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Views/Pages/WmsInOutStockOrder/WmsInOutStockOrder.tsx index 7fec7c0..f651ce0 100644 --- a/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Views/Pages/WmsInOutStockOrder/WmsInOutStockOrder.tsx +++ b/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Views/Pages/WmsInOutStockOrder/WmsInOutStockOrder.tsx @@ -352,7 +352,7 @@ 娣诲姞 </IconButton> <el-divider direction="vertical" /> - <IconButton + {/* <IconButton v-permission="wmsInOutStockOrder-add" icon="add-p" onClick={openCallMaterialDialog} @@ -360,7 +360,7 @@ > 鍙枡 </IconButton> - <el-divider direction="vertical" /> + <el-divider direction="vertical" /> */} {/* <el-upload v-permission="wmsInOutStockOrder-import" name="file" diff --git a/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrderDetail/Views/Pages/WmsInOutStockOrderDetail/Config.ts b/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrderDetail/Views/Pages/WmsInOutStockOrderDetail/Config.ts index 86f43fa..57a5110 100644 --- a/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrderDetail/Views/Pages/WmsInOutStockOrderDetail/Config.ts +++ b/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrderDetail/Views/Pages/WmsInOutStockOrderDetail/Config.ts @@ -24,10 +24,10 @@ field: 'materialName', title: '鐗╂枡鍚嶇О', }, - { - field: 'containerNo', - title: '瀹瑰櫒缂栧彿', - }, + // { + // field: 'containerNo', + // title: '瀹瑰櫒缂栧彿', + // }, { field: 'materialModel', title: '鍨嬪彿', diff --git a/HIAWms/hiawms_web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts b/HIAWms/hiawms_web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts index b48cc5a..546381a 100644 --- a/HIAWms/hiawms_web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts +++ b/HIAWms/hiawms_web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts @@ -5,6 +5,10 @@ title: '搴忓彿', }, { + field: 'taskNo', + title: '浠诲姟鍙�', + }, + { field: 'orderNo', title: '鍗曟嵁缂栧彿', }, @@ -16,14 +20,10 @@ field: 'materialNo', title: '鐗╂枡浠跺彿', }, - { - field: 'materialId', - title: '鐗╂枡ID', - }, - { - field: 'taskNo', - title: '浠诲姟鍙�', - }, + // { + // field: 'materialId', + // title: '鐗╂枡ID', + // }, { field: 'sourcePlace', title: '璧峰搴撲綅', @@ -36,10 +36,10 @@ field: 'stockTypeDesc', title: '鎿嶄綔绫诲瀷', }, - { - field: 'containerNo', - title: '瀹瑰櫒缂栧彿', - }, + // { + // field: 'containerNo', + // title: '瀹瑰櫒缂栧彿', + // }, { field: 'materialModel', title: '鍨嬪彿', diff --git a/HIAWms/hiawms_web/src/widgets/WmsTask/Views/Pages/WmsTask/Config.ts b/HIAWms/hiawms_web/src/widgets/WmsTask/Views/Pages/WmsTask/Config.ts index 68da84f..f6febed 100644 --- a/HIAWms/hiawms_web/src/widgets/WmsTask/Views/Pages/WmsTask/Config.ts +++ b/HIAWms/hiawms_web/src/widgets/WmsTask/Views/Pages/WmsTask/Config.ts @@ -33,6 +33,10 @@ title: '鐩爣搴撲綅', }, { + field: 'plcTaskId', + title: 'Plc浠诲姟鍙�', + }, + { field: 'aisle', title: '宸烽亾', }, diff --git a/HIAWms/project/Wms.cmsproj b/HIAWms/project/Wms.cmsproj index 8309144..6a194c5 100644 --- a/HIAWms/project/Wms.cmsproj +++ b/HIAWms/project/Wms.cmsproj Binary files differ diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/CallMaterialOutput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/CallMaterialOutput.cs new file mode 100644 index 0000000..f3c3b6a --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/CallMaterialOutput.cs @@ -0,0 +1,73 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Domain.Entities; + +namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto +{ + /// <summary> + /// 鍙枡杩斿洖 + /// </summary> + public class CallMaterialOutput : ExtensibleEntityDto<Guid>, IHasConcurrencyStamp + { + public string MaterialNo { get; set; } + /// <summary> + /// 缂栧彿 + /// </summary> + public virtual string MaterialId { get; set; } + + /// <summary> + /// 鍚嶇О + /// </summary> + public virtual string MaterialName { get; set; } + + /// <summary> + /// 瀹瑰櫒缂栧彿 + /// </summary> + public string ContainerNo { get; set; } + + /// <summary> + /// 鐗╂枡鎵规 + /// </summary> + public string MaterialBatch { get; set; } + + /// <summary> + /// 鍨嬪彿 + /// </summary> + public string MaterialModel { get; set; } + + /// <summary> + /// 搴撲綅缂栧彿 + /// </summary> + public string PlaceNo { get; set; } + + /// <summary> + /// 鍏ュ簱鏃堕棿 + /// </summary> + public DateTime? InStockTime { get; set; } + + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public string TaskNo { get; set; } + + /// <summary> + /// 鏉ユ簮鍗曟嵁鍙� + /// </summary> + public string? SourceOrderNo { get; set; } + + /// <summary> + /// PLC浠诲姟鍙� + /// </summary> + public int PlcTaskId { get; set; } + public string ConcurrencyStamp + { + get + ; + set; + } + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/LMesCallMaterialInput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/LMesCallMaterialInput.cs new file mode 100644 index 0000000..f826836 --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/CommonDto/LMesCallMaterialInput.cs @@ -0,0 +1,29 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto +{ + /// <summary> + /// LMES鍙枡鍙傛暟 + /// </summary> + public class LMesCallMaterialInput + { + /// <summary> + /// 鍙枡鏁伴噺 + /// </summary> + public int Quantity { get; set; } + + /// <summary> + /// 鍘熸枡鏍囪瘑 + /// </summary> + public string DataIdentifier { get; set; } + + /// <summary> + /// 鍘熸枡鍨嬪彿 + /// </summary> + public string? MaterialMode { get; set; } + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/OutStockDto/CallMaterialInput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/OutStockDto/CallMaterialInput.cs index 9d51416..81e92fe 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/OutStockDto/CallMaterialInput.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/OutStockDto/CallMaterialInput.cs @@ -46,5 +46,10 @@ /// 鍙枡鏁伴噺 /// </summary> public int MaterialNumber { get; set; } + + /// <summary> + /// 鍘熸枡鏍囪瘑 + /// </summary> + public string DataIdentifier { get; set; } } } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs index afbb825..3c86c3a 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs @@ -28,6 +28,11 @@ public string MaterialNo { get; set; } /// <summary> + /// 鐗╂枡鎵规 + /// </summary> + public string? MaterialBatch { get; set; } + + /// <summary> /// 鎿嶄綔绫诲瀷 /// </summary> public StockTypeEnum StockType { get; set; } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/GetWmsTaskInput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/GetWmsTaskInput.cs index 9e0ba7b..973d40a 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/GetWmsTaskInput.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/GetWmsTaskInput.cs @@ -48,10 +48,15 @@ /// </summary> public string TaskNo { get; set; } - /// <summary> - /// 浠诲姟鍙�-鏌ヨ鍏崇郴杩愮畻绗� - /// </summary> - public SearchFilterModeEnum TaskNo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; + /// <summary> + /// PLC浠诲姟鍙� + /// </summary> + public int PlcTaskId { get; set; } + + /// <summary> + /// 浠诲姟鍙�-鏌ヨ鍏崇郴杩愮畻绗� + /// </summary> + public SearchFilterModeEnum TaskNo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ; /// <summary> /// 浠诲姟绫诲瀷 diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskCreateOrUpdateDtoBase.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskCreateOrUpdateDtoBase.cs index 1a70a22..e32c54b 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskCreateOrUpdateDtoBase.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskCreateOrUpdateDtoBase.cs @@ -1,130 +1,135 @@ -using CMS.Plugin.HIAWms.Domain.Shared.Enums; -using System; -using Volo.Abp.Application.Dtos; - -namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsTask; - +using CMS.Plugin.HIAWms.Domain.Shared.Enums; +using System; +using Volo.Abp.Application.Dtos; + +namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsTask; + /// <summary> /// Wms浠诲姟绠$悊鍒涘缓鎴栨洿鏂板熀绫� /// </summary> -public abstract class WmsTaskCreateOrUpdateDtoBase : ExtensibleEntityDto -{ - /// <summary> - /// 浠诲姟鍙� - /// </summary> - public string TaskNo { get; set; } +public abstract class WmsTaskCreateOrUpdateDtoBase : ExtensibleEntityDto +{ + /// <summary> + /// 浠诲姟鍙� + /// </summary> + public string TaskNo { get; set; } - /// <summary> - /// 浠诲姟绫诲瀷 - /// </summary> - public TaskTypeEnum TaskType { get; set; } + /// <summary> + /// 浠诲姟绫诲瀷 + /// </summary> + public TaskTypeEnum TaskType { get; set; } - /// <summary> - /// 浠诲姟绛夌骇 - /// </summary> - public int TaskLevel { get; set; } + /// <summary> + /// 浠诲姟绛夌骇 + /// </summary> + public int TaskLevel { get; set; } - /// <summary> - /// 浠诲姟鐘舵�� - /// </summary> - public WmsTaskStatus TaskStatus { get; set; } + /// <summary> + /// 浠诲姟鐘舵�� + /// </summary> + public WmsTaskStatus TaskStatus { get; set; } - /// <summary> - /// 鎵樼洏缂栧彿 - /// </summary> - public string? ContainerNo { get; set; } + /// <summary> + /// 鎵樼洏缂栧彿 + /// </summary> + public string? ContainerNo { get; set; } - /// <summary> - /// 璧峰搴撲綅 - /// </summary> - public string? SourcePlace { get; set; } + /// <summary> + /// PLC浠诲姟鍙� + /// </summary> + public int PlcTaskId { get; set; } - /// <summary> - /// 鐩爣搴撲綅 - /// </summary> - public string? ToPlace { get; set; } + /// <summary> + /// 璧峰搴撲綅 + /// </summary> + public string? SourcePlace { get; set; } - /// <summary> - /// 宸烽亾 - /// </summary> - public int? Aisle { get; set; } + /// <summary> + /// 鐩爣搴撲綅 + /// </summary> + public string? ToPlace { get; set; } - /// <summary> - /// 鍫嗗灈鏈篒D - /// </summary> - public int? DodeviceId { get; set; } + /// <summary> + /// 宸烽亾 + /// </summary> + public int? Aisle { get; set; } - /// <summary> - /// 璁惧绫诲瀷 - /// </summary> - public DodevicetypeEnum Dodevicetype { get; set; } + /// <summary> + /// 鍫嗗灈鏈篒D + /// </summary> + public int? DodeviceId { get; set; } - /// <summary> - /// 璁惧浠诲姟鐘舵�� - /// </summary> - public TaskDodeviceStatus TaskDodeviceStatus { get; set; } + /// <summary> + /// 璁惧绫诲瀷 + /// </summary> + public DodevicetypeEnum Dodevicetype { get; set; } - /// <summary> - /// WCS鏄惁鍙互璇诲彇 - /// </summary> - public bool IsRead { get; set; } + /// <summary> + /// 璁惧浠诲姟鐘舵�� + /// </summary> + public TaskDodeviceStatus TaskDodeviceStatus { get; set; } - /// <summary> - /// 瀛愪换鍔$被鍨� - /// </summary> - public SonTaskTypeEnum? SonTaskType { get; set; } + /// <summary> + /// WCS鏄惁鍙互璇诲彇 + /// </summary> + public bool IsRead { get; set; } - /// <summary> - /// 鏉ユ簮鍗曟嵁鍙� - /// </summary> - public string? SourceOrderNo { get; set; } + /// <summary> + /// 瀛愪换鍔$被鍨� + /// </summary> + public SonTaskTypeEnum? SonTaskType { get; set; } - /// <summary> - /// 涓嬩釜浠诲姟鏄惁鐢熸垚鎴愬姛 - /// </summary> - public int? IsNextTask { get; set; } + /// <summary> + /// 鏉ユ簮鍗曟嵁鍙� + /// </summary> + public string? SourceOrderNo { get; set; } - /// <summary> - /// 鍙彉鍙橀噺1 - /// </summary> - public string? MutableParam1 { get; set; } + /// <summary> + /// 涓嬩釜浠诲姟鏄惁鐢熸垚鎴愬姛 + /// </summary> + public int? IsNextTask { get; set; } - /// <summary> - /// 鍙彉鍙橀噺2 - /// </summary> - public string? MutableParam2 { get; set; } + /// <summary> + /// 鍙彉鍙橀噺1 + /// </summary> + public string? MutableParam1 { get; set; } - /// <summary> - /// 鍙彉鍙橀噺3 - /// </summary> - public string? MutableParam3 { get; set; } + /// <summary> + /// 鍙彉鍙橀噺2 + /// </summary> + public string? MutableParam2 { get; set; } - /// <summary> - /// 鎺掑簭 - /// </summary> - public int Sort { get; set; } + /// <summary> + /// 鍙彉鍙橀噺3 + /// </summary> + public string? MutableParam3 { get; set; } - /// <summary> - /// 鏄惁绂佺敤 - /// </summary> - public bool? IsDisabled { get; set; } + /// <summary> + /// 鎺掑簭 + /// </summary> + public int Sort { get; set; } - /// <summary> - /// - /// </summary> - public string? CreatorId { get; set; } + /// <summary> + /// 鏄惁绂佺敤 + /// </summary> + public bool? IsDisabled { get; set; } - /// <summary> - /// - /// </summary> - public string? LastModifierId { get; set; } + /// <summary> + /// + /// </summary> + public string? CreatorId { get; set; } - - + /// <summary> + /// + /// </summary> + public string? LastModifierId { get; set; } + + + /// <summary> /// Initializes a new instance of the <see cref="WmsTaskCreateOrUpdateDtoBase"/> class. /// </summary> - public WmsTaskCreateOrUpdateDtoBase() : base(false) - { - } -} + public WmsTaskCreateOrUpdateDtoBase() : base(false) + { + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskDto.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskDto.cs index 4e0f858..36eb5c1 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskDto.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskDto.cs @@ -67,6 +67,12 @@ /// </summary> public string? ToPlace { get; set; } + + /// <summary> + /// PLC浠诲姟鍙� + /// </summary> + public int PlcTaskId { get; set; } + /// <summary> /// 宸烽亾 /// </summary> diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskExportModel.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskExportModel.cs index c083ba3..cbfc3e1 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskExportModel.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsTask/WmsTaskExportModel.cs @@ -52,10 +52,16 @@ [ExcelColumn(Name = "鐩爣搴撲綅", Width = 25)] public string ToPlace { get; set; } - /// <summary> - /// 宸烽亾 - /// </summary> - [ExcelColumn(Name = "宸烽亾", Width = 25)] + /// <summary> + /// PLC浠诲姟鍙� + /// </summary> + [ExcelColumn(Name = "PLC浠诲姟鍙�", Width = 25)] + public int PlcTaskId { get; set; } + + /// <summary> + /// 宸烽亾 + /// </summary> + [ExcelColumn(Name = "宸烽亾", Width = 25)] public int? Aisle { get; set; } /// <summary> diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/ILMesOperateAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/ILMesOperateAppService.cs new file mode 100644 index 0000000..6da6935 --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/ILMesOperateAppService.cs @@ -0,0 +1,19 @@ +锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CMS.Plugin.HIAWms.Application.Contracts.Services +{ + public interface ILMesOperateAppService + { + /// <summary> + /// LMES鍙枡鍙傛暟 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + Task<List<CallMaterialOutput>> LMesCallMaterialAsync(List<LMesCallMaterialInput> input); + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsOutStockAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsOutStockAppService.cs index 66a94bc..aa79944 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsOutStockAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsOutStockAppService.cs @@ -1,4 +1,5 @@ -锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.OutStockDto; +锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.OutStockDto; using System; using System.Collections.Generic; using System.Linq; @@ -14,6 +15,6 @@ /// </summary> /// <param name="input"></param> /// <returns></returns> - Task CallMaterialAsync(List<CallMaterialInput> input); + Task<List<CallMaterialOutput>> CallMaterialAsync(List<CallMaterialInput> input); } } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/LMesOperateAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/LMesOperateAppService.cs new file mode 100644 index 0000000..f2586a5 --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/LMesOperateAppService.cs @@ -0,0 +1,114 @@ +锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.OutStockDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockOrder; +using CMS.Plugin.HIAWms.Application.Contracts.Services; +using CMS.Plugin.HIAWms.Domain.WmsMaterials; +using CMS.Plugin.HIAWms.Domain.WmsTask; +using Microsoft.Extensions.DependencyInjection; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp; +using Volo.Abp.Uow; + +namespace CMS.Plugin.HIAWms.Application.Implements +{ + /// <summary> + /// LMES鎿嶄綔鏈嶅姟 + /// </summary> + public class LMesOperateAppService : CMSPluginAppService, ILMesOperateAppService + { + private readonly IWmsTaskRepository _wmsTaskRepository; + private readonly IWmsMaterialRepository _wmsMaterialRepository; + private readonly IWmsInOutStockOrderAppService _wmsInOutStockOrderAppService; + private readonly IWmsOutStockAppService _wmsOutStockOrderAppService; + private readonly IServiceProvider _serviceProvider; + + public LMesOperateAppService(IWmsTaskRepository wmsTaskRepository, + IWmsMaterialRepository wmsMaterialRepository, + IWmsInOutStockOrderAppService wmsInOutStockOrderAppService, + IWmsOutStockAppService wmsOutStockOrderAppService +, + IServiceProvider serviceProvider) + { + _wmsTaskRepository = wmsTaskRepository; + _wmsMaterialRepository = wmsMaterialRepository; + _wmsInOutStockOrderAppService = wmsInOutStockOrderAppService; + _wmsOutStockOrderAppService = wmsOutStockOrderAppService; + _serviceProvider = serviceProvider; + } + + /// <summary> + /// lmes鍙枡. + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + /// <exception cref="UserFriendlyException"></exception> + public async Task<List<CallMaterialOutput>> LMesCallMaterialAsync(List<LMesCallMaterialInput> input) + { + if (input == null || input.Count == 0) + { + throw new UserFriendlyException("鍙枡鍙傛暟閿欒"); + } + + //using var scope = _serviceProvider.CreateScope(); + //var unitOfWorkManager = scope.ServiceProvider.GetRequiredService<IUnitOfWorkManager>(); + //using var uow = unitOfWorkManager.Begin(requiresNew: true); + + var result = new List<CallMaterialOutput>(); + foreach (var item in input) + { + if (string.IsNullOrEmpty(item.MaterialMode)) + { + throw new UserFriendlyException("鍙枡鍨嬪彿涓嶈兘涓虹┖"); + } + + var task = await _wmsTaskRepository.QueryWmsTaskByDataIdentifierAasync(item.DataIdentifier); + if (task != null) + { + throw new UserFriendlyException($"鍘熸枡鏍囪瘑{item.DataIdentifier}宸茬敓鎴愪换鍔�,浠诲姟鍙穥task.TaskNo}锛屾棤闇�閲嶅鎿嶄綔"); + } + + // 鐢熸垚鍑哄簱鍗� + var materiaL = await _wmsMaterialRepository.FindByModelAsync(item.MaterialMode); + if (materiaL == null) + { + throw new UserFriendlyException("璇ュ瀷鍙风墿鏂欎俊鎭笉瀛樺湪"); + } + + var createOrderInput = new WmsInOutStockOrderCreateDto + { + OrderType = Domain.Shared.Enums.OrderTypeEnum.PRODUCTCALL, + MaterialNo = materiaL.MaterialNo, + MaterialName = materiaL.MaterialName, + MaterialModel = item.MaterialMode, + MaterialNumber = 1, + MaterialBatch = item.MaterialMode + }; + var createResult = await _wmsInOutStockOrderAppService.CreateAsync(createOrderInput); + + // 鍙枡 + var callInput = new List<CallMaterialInput> + { + new CallMaterialInput + { + OrderNo = createResult.OrderNo, + MaterialModel = item.MaterialMode, + MaterialNumber = 1, + MaterialNo = materiaL.MaterialNo, + MaterialName = materiaL.MaterialName, + DataIdentifier = item.DataIdentifier, + }, + }; + var callresult = await _wmsOutStockOrderAppService.CallMaterialAsync(callInput); + result.AddRange(callresult); + } + + //await uow.SaveChangesAsync(); + + return result; + } + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsBindInStockAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsBindInStockAppService.cs index 7389cab..c975a78 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsBindInStockAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsBindInStockAppService.cs @@ -165,7 +165,7 @@ await BindMaterialContaienrAsync(input); // 鐢熸垚浠诲姟 - var plactDict = await _wmsCommonAppService.FindAvailablePlacesAsync(input.MaterialNo, input.StockNumber); + var plactDict = await _wmsCommonAppService.FindAvailablePlacesAsync(input.MaterialModel, input.StockNumber); var taskList = new List<WmsTask>(); foreach (var kvp in plactDict) { @@ -186,9 +186,11 @@ TaskLevel = 999, Aisle = 1, DodeviceId = 0, + Dodevicetype = DodevicetypeEnum.Srm, TaskDodeviceStatus = TaskDodeviceStatus.SrmNoStart, IsNextTask = (int)YesNoEnum.Y, IsRead = true, + PlcTaskId = new Random(Guid.NewGuid().GetHashCode()).Next(101, 99999), MutableParam1 = input.MaterialModel, }; taskList.Add(task); diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs index 5c8a5e6..890f1c6 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs @@ -45,9 +45,10 @@ public async Task<Dictionary<WmsPlaceDto, int>> FindAvailablePlacesAsync(string materialModel,int requiredNum, string materialNo="" ) { // 1. 鑾峰彇鎵�鏈夊簱瀛樺拰搴撲綅淇℃伅 - var stockList = await _wmsMaterialStockRepository.GetListAsync(new WmsMaterialStock()); + var stockList = await _wmsMaterialStockRepository.GetListAsync(new WmsMaterialStock { StorageTypeNo = Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI}); - var allPlaceList = ObjectMapper.Map<List<WmsPlace>, List<WmsPlaceDto>>(await _wmsPlaceRepository.GetListAsync(new WmsPlace())); + var placeList = await _wmsPlaceRepository.GetListAsync(new WmsPlace { StorageTypeNo = Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI}); + var allPlaceList = ObjectMapper.Map<List<WmsPlace>, List<WmsPlaceDto>>(placeList); // 2. 鏌ユ壘鐩稿悓鐗╂枡鍨嬪彿鍜岀紪鍙风殑搴撳瓨锛堟寜搴撳瓨閲忛檷搴忥級 var sameModelStocks = stockList @@ -114,6 +115,7 @@ // 1. 鑾峰彇鎵�鏈夊簱瀛橈紙鎺掗櫎閿佸畾搴撳瓨锛� var stockList = (await _wmsMaterialStockRepository.GetListAsync(new WmsMaterialStock())) .Where(x => x.IsLock == Domain.Shared.Enums.YesNoEnum.N) + .Where(x=>x.StorageTypeNo == Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI) .ToList(); // 2. 绛涢�夊尮閰嶇墿鏂� diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockOrderAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockOrderAppService.cs index 5f71424..c12800f 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockOrderAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockOrderAppService.cs @@ -132,7 +132,7 @@ type = "CK-"; insertObj.StockType = Domain.Shared.Enums.StockTypeEnum.OutBound; } - insertObj.OrderNo = type + DateTime.Now.ToString("yyyyMMddHHmmssfff"); + insertObj.OrderNo = string.IsNullOrEmpty(input.OrderNo) ? type + DateTime.Now.ToString("yyyyMMddHHmmssfff") : input.OrderNo; insertObj.Sort = sort; insertObj.Priority = priority; input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsOutStockAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsOutStockAppService.cs index 0bb41f5..acc587b 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsOutStockAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsOutStockAppService.cs @@ -1,4 +1,6 @@ -锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.OutStockDto; +锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.OutStockDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks; using CMS.Plugin.HIAWms.Application.Contracts.Services; using CMS.Plugin.HIAWms.Domain.Shared.Enums; using CMS.Plugin.HIAWms.Domain.WmsInOutStockOrder; @@ -37,7 +39,7 @@ _serviceProvider = serviceProvider; } - public async Task CallMaterialAsync(List<CallMaterialInput> input) + public async Task<List<CallMaterialOutput>>CallMaterialAsync(List<CallMaterialInput> input) { using var scope = _serviceProvider.CreateScope(); var unitOfWorkManager = scope.ServiceProvider.GetRequiredService<IUnitOfWorkManager>(); @@ -48,6 +50,7 @@ { throw new UserFriendlyException("涓�娆″彨鏂欏彧鑳介拡瀵瑰悓涓�鍨嬪彿鐨勭墿鏂欙紒"); } + var callOutput = new List<CallMaterialOutput>(); foreach (var inputItem in input) { var order = await _wmsInOutStockOrderRepository.FindByNameAsync(inputItem.OrderNo); @@ -55,16 +58,25 @@ { throw new UserFriendlyException("鍑哄簱鍗曟嵁涓嶅瓨鍦�"); } + if(order.OrderType == OrderTypeEnum.SelfMadeParts || order.OrderType == OrderTypeEnum.PERSONIN) + { + throw new UserFriendlyException("鍏ュ簱鍗曚笉鍏佽鍙枡"); + } if (inputItem.MaterialNumber <= 0) { throw new UserFriendlyException("鍙枡鏁伴噺蹇呴』澶т簬0"); } - if (order.MaterialNumber < inputItem.MaterialNumber) + if(order.OrderStatus == OrderStatusEnum.Finish) + { + throw new UserFriendlyException("宸插畬鎴愬崟鎹笉鍏佽鍙枡"); + } + if (order.MaterialNumber < inputItem.MaterialNumber+order.DistributeNumber) { throw new UserFriendlyException("鍙枡鏁伴噺涓嶈兘澶т簬鍗曟嵁鏁伴噺"); } order.OrderStatus = OrderStatusEnum.Executing; order.DistributeNumber = inputItem.MaterialNumber; + order.OperateTime = DateTime.Now; await _wmsInOutStockOrderRepository.UpdateAsync(order); @@ -93,13 +105,22 @@ TaskLevel = order.Priority, Aisle = 1, DodeviceId = 0, + Dodevicetype = DodevicetypeEnum.Srm, TaskDodeviceStatus = TaskDodeviceStatus.SrmNoStart, IsNextTask = (int)YesNoEnum.Y, IsRead = true, + PlcTaskId = new Random(Guid.NewGuid().GetHashCode()).Next(101, 99999), SourceOrderNo = inputItem.OrderNo, MutableParam1 = inputItem.MaterialModel, + MutableParam2 = inputItem.DataIdentifier }; taskList.Add(task); + + var output = ObjectMapper.Map<WmsMaterialStockDto, CallMaterialOutput>(stock); + output.TaskNo = task.TaskNo; + output.PlcTaskId = task.PlcTaskId; + output.SourceOrderNo = task.SourceOrderNo; + callOutput.Add(output); } } await _wmsTaskRepository.InsertManyAsync(taskList); @@ -107,6 +128,8 @@ await uow.SaveChangesAsync(); await uow.CompleteAsync(); + + return callOutput; } } } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs index 2fbdaac..d3d4886 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsTaskAppService.cs @@ -167,6 +167,7 @@ var insertObj = ObjectMapper.Map<WmsTaskCreateDto, WmsTask>(input); insertObj.Sort = sort; input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); + insertObj.PlcTaskId = new Random(Guid.NewGuid().GetHashCode()).Next(101, 99999); await wmsTaskRepository.InsertAsync(insertObj); diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs index cbc8b3b..875eb6d 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs @@ -1,5 +1,7 @@ -using AutoMapper; -using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord; +using AutoMapper; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks; using CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord; using Volo.Abp.ObjectExtending; @@ -22,5 +24,6 @@ CreateMap<WmsInOutStockRecord, WmsInOutStockRecordDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); CreateMap<WmsInOutStockRecordCreateDto, WmsInOutStockRecord>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); CreateMap<GetWmsInOutStockRecordInput, WmsInOutStockRecord>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); + CreateMap<WmsMaterialStockDto, CallMaterialOutput>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); } } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/IWmsTaskRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/IWmsTaskRepository.cs index a96271d..f9e79e7 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/IWmsTaskRepository.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/IWmsTaskRepository.cs @@ -49,5 +49,13 @@ /// <param name="whereConditions"></param> /// <param name="cancellationToken"></param> /// <returns></returns> - Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsTask, bool>>> whereConditions, CancellationToken cancellationToken = default); + Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsTask, bool>>> whereConditions, CancellationToken cancellationToken = default); + + /// <summary> + /// 鏍规嵁鍘熸枡鏍囪瘑鏌ヨ浠诲姟 + /// </summary> + /// <param name="dataIdentifier"></param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + Task<WmsTask> QueryWmsTaskByDataIdentifierAasync(string dataIdentifier, CancellationToken cancellationToken = default); } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/WmsTask.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/WmsTask.cs index fad2a32..f852dc1 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/WmsTask.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsTask/WmsTask.cs @@ -90,6 +90,11 @@ public int? IsNextTask { get; set; } /// <summary> + /// PLC浠诲姟鍙� + /// </summary> + public int PlcTaskId { get; set; } + + /// <summary> /// 鍙彉鍙橀噺1 /// </summary> public string? MutableParam1 { get; set; } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs index 7eae430..3579565 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs @@ -83,6 +83,10 @@ .IsRequired(false) .HasComment("鐩爣搴撲綅"); + b.Property(x => x.PlcTaskId) + .HasDefaultValue(0) + .HasComment("浠诲姟鐘舵��"); + b.Property(x => x.Aisle) .IsRequired(false) .HasComment("宸烽亾"); diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs index ee93546..a9034aa 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs @@ -84,7 +84,7 @@ .IncludeDetails(includeDetails) .WhereIf(whereConditions != null, whereConditions.data) .Where(x => !x.IsDeleted) - .OrderBy(sorting.IsNullOrEmpty() ? nameof(WmsInOutStockRecord.Sort) : sorting) + .OrderByDescending(x => x.CreationTime) .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs index 8c6d4dd..117a125 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs @@ -88,7 +88,7 @@ .WhereIf(stock?.ContainerType > 0, u => u.ContainerType == stock.ContainerType) .WhereIf(!string.IsNullOrEmpty(stock?.MaterialBatch), u => u.MaterialBatch == stock.MaterialBatch) .WhereIf(!string.IsNullOrEmpty(stock?.SupplierCode), u => u.SupplierCode == stock.SupplierCode) - .WhereIf(!string.IsNullOrEmpty(stock?.MaterialModel), u => u.MaterialModel.Contains(stock.MaterialModel)) + .WhereIf(!string.IsNullOrEmpty(stock?.MaterialModel), u => u.MaterialModel==stock.MaterialModel) .WhereIf(!string.IsNullOrEmpty(stock?.PlaceNo), u => u.PlaceNo == stock.PlaceNo) .WhereIf(stock.PlaceStatus > 0, u => u.PlaceStatus == stock.PlaceStatus) .WhereIf(stock?.StorageTypeNo > 0, u => u.StorageTypeNo == stock.StorageTypeNo) @@ -123,7 +123,7 @@ .ToListAsync(GetCancellationToken(cancellationToken)); var groupedData = materialList - .GroupBy(x => new { x.MaterialNo, x.PlaceNo, x.ContainerNo}) + .GroupBy(x => new { x.MaterialNo, x.PlaceNo, x.ContainerNo,x.MaterialModel}) .Select(g => new WmsMaterialStock { MaterialNo = g.Key.MaterialNo, @@ -134,7 +134,7 @@ PlaceStatus = g.First().PlaceStatus, StorageTypeNo = g.First().StorageTypeNo, MaterialBatch = g.First().MaterialBatch, - MaterialModel = g.First().MaterialModel, + MaterialModel = g.Key.MaterialModel, AreaCode = g.First().AreaCode, AreaName = g.First().AreaName, CheckStatus = g.First().CheckStatus, diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs index d4dee6d..5635ff8 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs @@ -84,7 +84,7 @@ .IncludeDetails(includeDetails) .WhereIf(whereConditions != null, whereConditions.data) .Where(x => !x.IsDeleted) - .OrderBy(sorting.IsNullOrEmpty() ? nameof(WmsTask.Sort) : sorting) + .OrderByDescending(x=>x.CreationTime) .PageBy(skipCount, maxResultCount) .ToListAsync(GetCancellationToken(cancellationToken)); } @@ -110,4 +110,19 @@ return (await GetQueryableAsync()) .Where(x => !x.IsDeleted).IncludeDetails(); } + + /// <summary> + /// 鏍规嵁鍘熸枡鏍囪瘑鏌ヨ浠诲姟 + /// </summary> + /// <param name="dataIdentifier"></param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + public async Task<WmsTask> QueryWmsTaskByDataIdentifierAasync(string dataIdentifier, CancellationToken cancellationToken = default) + { + return await (await GetDbSetAsync()) + .IncludeDetails() + .Where(x => !x.IsDeleted) + .OrderByDescending(x=>x.CreationTime) + .FirstOrDefaultAsync(t => t.MutableParam2 == dataIdentifier, GetCancellationToken(cancellationToken)); + } } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.Designer.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.Designer.cs new file mode 100644 index 0000000..a568ea6 --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.Designer.cs @@ -0,0 +1,1792 @@ +锘�// <auto-generated /> +using System; +using CMS.Plugin.HIAWms.MySQL; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Volo.Abp.EntityFrameworkCore; + +#nullable disable + +namespace CMS.Plugin.HIAWms.MySQL.Migrations +{ + [DbContext(typeof(CMSPluginDbContext))] + [Migration("20250512042203_InitialCreate15")] + partial class InitialCreate15 + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) + .HasAnnotation("ProductVersion", "6.0.16") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsAreas.WmsArea", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("AreaDesc") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鎻忚堪"); + + b.Property<string>("AreaName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("搴撳尯鍚嶇О"); + + b.Property<string>("AreaNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("搴撳尯缂栧彿"); + + b.Property<int>("AreaStatus") + .HasColumnType("int") + .HasComment("搴撳尯鐘舵��"); + + b.Property<int>("AreaType") + .HasColumnType("int") + .HasComment("搴撳尯绫诲瀷"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("RedundantField1") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField2") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField3") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.Property<string>("StoreCode") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("浠撳簱浠g爜"); + + b.Property<string>("StoreName") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("浠撳簱鍚嶇О"); + + b.HasKey("Id"); + + b.HasIndex("AreaName"); + + b.ToTable("scms_wmsareas", (string)null); + + b.HasComment("搴撳尯琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsContainerPlace.WmsContainerPlace", b => + { + b.Property<string>("PlaceNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("搴撲綅缂栫爜"); + + b.Property<string>("ContainerNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鎵樼洏缂栧彿"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp") + .HasComment("骞跺彂鎴�"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime") + .HasComment("鍒涘缓鏃堕棿"); + + b.Property<Guid?>("CreatorId") + .HasMaxLength(36) + .HasColumnType("char(36)") + .HasColumnName("CreatorId") + .HasComment("鍒涘缓浜篒D"); + + b.Property<string>("CreatorName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鍒涘缓浜�"); + + b.Property<string>("DeleteRemark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍒犻櫎澶囨敞"); + + b.Property<Guid?>("DeleterId") + .HasMaxLength(36) + .HasColumnType("char(36)") + .HasColumnName("DeleterId") + .HasComment("鍒犻櫎浜篒D"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime") + .HasComment("鍒犻櫎鏃堕棿"); + + b.Property<string>("ExtraField1") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁1"); + + b.Property<string>("ExtraField2") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁2"); + + b.Property<string>("ExtraField3") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎵╁睍瀛楁3"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties") + .HasComment("鎵╁睍灞炴��"); + + b.Property<Guid>("Id") + .HasColumnType("char(36)"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted") + .HasComment("鏄惁鍒犻櫎"); + + b.Property<bool?>("IsDisabled") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime") + .HasComment("淇敼鏃堕棿"); + + b.Property<Guid?>("LastModifierId") + .HasMaxLength(36) + .HasColumnType("char(36)") + .HasColumnName("LastModifierId") + .HasComment("淇敼浜篒D"); + + b.Property<string>("LastModifierName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("淇敼浜�"); + + b.Property<string>("OperationRemark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鎿嶄綔澶囨敞"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.HasKey("PlaceNo", "ContainerNo"); + + b.HasIndex("ContainerNo"); + + b.HasIndex("PlaceNo"); + + b.ToTable("scms_wmscontainerplaces", (string)null); + + b.HasComment("瀹瑰櫒搴撲綅鍏崇郴琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsContainers.WmsContainer", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<string>("ContainerNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鎵樼洏缂栧彿"); + + b.Property<int>("ContainerStatus") + .HasColumnType("int") + .HasComment("鎵樼洏鐘舵��"); + + b.Property<int>("ContainerType") + .HasColumnType("int") + .HasComment("鎵樼洏绫诲瀷"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<int?>("ExceptionNumber") + .HasColumnType("int") + .HasComment("寮傚父鏁伴噺"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<decimal?>("LimitHeight") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("闄愰珮"); + + b.Property<decimal?>("LimitLength") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("闄愰暱"); + + b.Property<decimal?>("LimitWidth") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("闄愬"); + + b.Property<int?>("MaterialNumber") + .HasColumnType("int") + .HasComment("鐗╂枡鏁伴噺"); + + b.Property<decimal?>("MaxWeight") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("杞介噸涓婇檺"); + + b.Property<string>("RedundantField1") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField2") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField3") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.Property<decimal?>("SpecHeight") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("楂樺害"); + + b.Property<decimal?>("SpecLength") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("闀垮害"); + + b.Property<decimal?>("SpecWidth") + .HasPrecision(18, 2) + .HasColumnType("decimal(18,2)") + .HasComment("瀹藉害"); + + b.HasKey("Id"); + + b.HasIndex("ContainerNo") + .IsUnique(); + + b.HasIndex("ContainerStatus"); + + b.HasIndex("ContainerType"); + + b.ToTable("scms_wmscontainers", (string)null); + + b.HasComment("鎵樼洏淇℃伅琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsInOutStockOrder.WmsInOutStockOrder", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<int>("CompleteNumber") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("瀹屾垚鏁伴噺"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<int>("DistributeNumber") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("涓嬪彂鏁伴噺"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("MaterialBatch") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鎵规鍙�"); + + b.Property<string>("MaterialModel") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鍨嬪彿"); + + b.Property<string>("MaterialName") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鐗╂枡鍚嶇О"); + + b.Property<string>("MaterialNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡浠跺彿"); + + b.Property<int>("MaterialNumber") + .HasColumnType("int") + .HasComment("鍗曟嵁鏁伴噺"); + + b.Property<DateTime?>("OperateTime") + .HasColumnType("datetime(6)") + .HasComment("鎿嶄綔鏃堕棿"); + + b.Property<string>("OrderNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鍗曟嵁缂栧彿"); + + b.Property<int>("OrderStatus") + .HasColumnType("int") + .HasComment("鍗曟嵁鐘舵��"); + + b.Property<int>("OrderType") + .HasColumnType("int") + .HasComment("鍗曟嵁绫诲瀷"); + + b.Property<string>("PlanNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鍏宠仈璁″垝缂栧彿"); + + b.Property<int>("Priority") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(1) + .HasComment("浼樺厛绾�"); + + b.Property<string>("Remark") + .HasMaxLength(500) + .HasColumnType("varchar(500)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property<int>("StockType") + .HasColumnType("int") + .HasComment("鎿嶄綔绫诲瀷锛堟灇涓惧�硷級"); + + b.HasKey("Id"); + + b.HasIndex("MaterialBatch"); + + b.HasIndex("MaterialNo"); + + b.HasIndex("OperateTime"); + + b.HasIndex("OrderNo") + .IsUnique(); + + b.HasIndex("PlanNo"); + + b.ToTable("scms_wmsinoutstockorder", (string)null); + + b.HasComment("鍑哄叆搴撳崟鎹〃"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsInOutStockOrderDetail.WmsInOutStockOrderDetail", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<string>("ContainerNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("瀹瑰櫒缂栧彿"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("MaterialBatch") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡鎵规"); + + b.Property<string>("MaterialId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡鍞竴鐮�"); + + b.Property<string>("MaterialModel") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鏈哄瀷"); + + b.Property<string>("MaterialName") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鐗╂枡鍚嶇О"); + + b.Property<string>("MaterialNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡浠跺彿"); + + b.Property<string>("OrderNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鍗曟嵁缂栧彿"); + + b.Property<int>("OrderType") + .HasColumnType("int") + .HasComment("鍗曟嵁绫诲瀷锛堟灇涓惧�硷級"); + + b.Property<string>("Remark") + .HasMaxLength(500) + .HasColumnType("varchar(500)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.HasKey("Id"); + + b.HasIndex("ContainerNo"); + + b.HasIndex("MaterialId"); + + b.HasIndex("MaterialNo"); + + b.HasIndex("OrderNo"); + + b.HasIndex("OrderNo", "OrderType"); + + b.ToTable("scms_wmsinoutstockorderdetail", (string)null); + + b.HasComment("鍑哄叆搴撳崟鎹槑缁嗚〃"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord.WmsInOutStockRecord", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<string>("ContainerNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("瀹瑰櫒缂栧彿"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("MaterialBatch") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡鎵规"); + + b.Property<string>("MaterialId") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡ID"); + + b.Property<string>("MaterialModel") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鏈哄瀷"); + + b.Property<string>("MaterialName") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鐗╂枡鍚嶇О"); + + b.Property<string>("MaterialNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡浠跺彿"); + + b.Property<DateTime?>("OperateTime") + .HasColumnType("datetime(6)") + .HasComment("鎿嶄綔鏃堕棿"); + + b.Property<string>("OrderNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鍗曟嵁缂栧彿"); + + b.Property<string>("Remark") + .HasMaxLength(500) + .HasColumnType("varchar(500)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.Property<string>("SourcePlace") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("璧峰搴撲綅"); + + b.Property<int>("StockType") + .HasColumnType("int") + .HasComment("鎿嶄綔绫诲瀷"); + + b.Property<string>("TaskNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("浠诲姟鍙�"); + + b.Property<string>("ToPlace") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐩爣搴撲綅"); + + b.HasKey("Id"); + + b.HasIndex("ContainerNo"); + + b.HasIndex("MaterialId"); + + b.HasIndex("MaterialNo"); + + b.HasIndex("OperateTime"); + + b.HasIndex("OrderNo"); + + b.HasIndex("StockType"); + + b.HasIndex("TaskNo"); + + b.ToTable("scms_wmsinoutstockrecords", (string)null); + + b.HasComment("鍑哄叆搴撹褰曡〃"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialContainer.WmsMaterialContainer", b => + { + b.Property<string>("MaterialId") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡ID"); + + b.Property<string>("ContainerNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鎵樼洏缂栧彿"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<Guid>("Id") + .HasColumnType("char(36)"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.HasKey("MaterialId", "ContainerNo"); + + b.HasIndex("ContainerNo"); + + b.HasIndex("MaterialId"); + + b.ToTable("scms_wmsmaterialcontainer", (string)null); + + b.HasComment("鐗╂枡瀹瑰櫒鍏崇郴琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialInfos.WmsMaterialInfo", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<int?>("CheckStatus") + .HasColumnType("int") + .HasComment("妫�楠岀姸鎬�(0:鏈楠�,1:妫�楠岄�氳繃,2:妫�楠屼笉閫氳繃)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("MaterialBatch") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡鎵瑰彿"); + + b.Property<string>("MaterialId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡鍞竴鐮�"); + + b.Property<string>("MaterialModel") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鏈哄瀷/瑙勬牸"); + + b.Property<string>("MaterialName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鐗╂枡鍚嶇О"); + + b.Property<string>("MaterialNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐗╂枡浠e彿"); + + b.Property<string>("RedundantField1") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("鍐椾綑瀛楁1"); + + b.Property<string>("RedundantField2") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("鍐椾綑瀛楁2"); + + b.Property<string>("RedundantField3") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("鍐椾綑瀛楁3"); + + b.Property<string>("Remark") + .HasMaxLength(500) + .HasColumnType("varchar(500)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property<int?>("StockNumber") + .HasColumnType("int") + .HasComment("搴撳瓨鏁伴噺"); + + b.Property<string>("SupplierCode") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("渚涘簲鍟嗙紪鍙�"); + + b.HasKey("Id"); + + b.HasIndex("CheckStatus"); + + b.HasIndex("MaterialBatch"); + + b.HasIndex("MaterialId") + .IsUnique(); + + b.HasIndex("MaterialName"); + + b.HasIndex("MaterialNo") + .IsUnique(); + + b.HasIndex("SupplierCode"); + + b.ToTable("scms_wmsmaterialinfos", (string)null); + + b.HasComment("WMS鐗╂枡淇℃伅琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterials.WmsMaterial", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("Certification") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("璇佷功缂栧彿"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<string>("Factory") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐢熶骇宸ュ巶"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasComment("鏄惁绂佺敤"); + + b.Property<int>("IsMainBranch") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鏄惁涓轰富鏀"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<decimal>("Length") + .HasColumnType("decimal(18,2)") + .HasComment("闀垮害锛堝崟浣嶏細m锛�"); + + b.Property<string>("MaterialModel") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("鍨嬪彿"); + + b.Property<string>("MaterialName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("鐗╂枡鍚嶇О"); + + b.Property<string>("MaterialNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡缂栫爜锛堝敮涓�鏍囪瘑锛�"); + + b.Property<string>("MaterialQuality") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鏉愯川锛堝锛�304涓嶉攬閽級"); + + b.Property<int>("MaterialType") + .HasColumnType("int") + .HasComment("鐗╂枡绫诲瀷锛堟灇涓惧�硷級"); + + b.Property<decimal>("OuterDiameter") + .HasColumnType("decimal(18,2)") + .HasComment("澶栧緞锛堝崟浣嶏細mm锛�"); + + b.Property<string>("PrimaryUnit") + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("涓诲崟浣嶏紙濡傦細kg銆乵銆佷釜锛�"); + + b.Property<int>("PurchaseType") + .HasColumnType("int") + .HasComment("閲囪喘绫诲瀷锛堟灇涓惧�硷級"); + + b.Property<string>("RedundantField1") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField2") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField3") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("Remark") + .HasMaxLength(500) + .HasColumnType("varchar(500)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property<string>("Standard") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("瑙勬牸/鏍囧噯锛堝锛欸B/T 8163-2018锛�"); + + b.Property<decimal>("WallThickness") + .HasColumnType("decimal(18,2)") + .HasComment("澹佸帤锛堝崟浣嶏細mm锛�"); + + b.HasKey("Id"); + + b.HasIndex("MaterialName"); + + b.HasIndex("MaterialNo") + .IsUnique(); + + b.HasIndex("MaterialType"); + + b.HasIndex("PurchaseType"); + + b.ToTable("scms_wmsmaterials", (string)null); + + b.HasComment("鐗╂枡鍩虹淇℃伅琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialStocks.WmsMaterialStock", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("AreaCode") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鍖哄煙缂栧彿"); + + b.Property<string>("AreaName") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("搴撳尯鍚嶇О"); + + b.Property<int?>("CheckStatus") + .HasColumnType("int") + .HasComment("妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<string>("ContainerNo") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("瀹瑰櫒缂栧彿"); + + b.Property<int>("ContainerStatus") + .HasColumnType("int") + .HasComment("瀹瑰櫒鐘舵��"); + + b.Property<int>("ContainerType") + .HasColumnType("int") + .HasComment("瀹瑰櫒绫诲瀷"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<int>("EmptyContainer") + .HasColumnType("int") + .HasComment("鏄惁绌烘墭(2:鍚�,1:鏄�)"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<DateTime?>("InStockTime") + .HasColumnType("datetime(6)") + .HasComment("鍏ュ簱鏃堕棿"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<int>("IsLock") + .HasColumnType("int") + .HasComment("鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("MaterialBatch") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡鎵规"); + + b.Property<string>("MaterialId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡ID"); + + b.Property<string>("MaterialModel") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("鏈哄瀷/瑙勬牸"); + + b.Property<string>("MaterialName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasComment("鐗╂枡鍚嶇О"); + + b.Property<string>("MaterialNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("鐗╂枡缂栧彿"); + + b.Property<string>("PlaceNo") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("搴撲綅缂栧彿"); + + b.Property<int>("PlaceStatus") + .HasColumnType("int") + .HasComment("搴撲綅鐘舵��;"); + + b.Property<string>("RedundantField1") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField2") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField3") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("Remark") + .HasMaxLength(500) + .HasColumnType("varchar(500)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("鎺掑簭"); + + b.Property<int>("StockNumber") + .HasColumnType("int") + .HasComment("搴撳瓨鏁伴噺"); + + b.Property<int>("StorageTypeNo") + .HasColumnType("int") + .HasComment("搴撲綅绫诲瀷"); + + b.Property<string>("SupplierCode") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasComment("渚涘簲鍟嗙紪鍙�"); + + b.HasKey("Id"); + + b.HasIndex("AreaCode"); + + b.HasIndex("ContainerNo"); + + b.HasIndex("MaterialName"); + + b.HasIndex("MaterialNo"); + + b.HasIndex("PlaceNo"); + + b.HasIndex("MaterialBatch", "SupplierCode"); + + b.ToTable("scms_wmsmaterialstocks", (string)null); + + b.HasComment("WMS鐗╂枡搴撳瓨琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsPlaces.WmsPlace", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<int>("Aisle") + .HasColumnType("int") + .HasComment("宸烽亾"); + + b.Property<string>("AreaCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鎵�鍦ㄥ簱鍖�"); + + b.Property<int>("ColumnNo") + .HasColumnType("int") + .HasComment("鍒�"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<int>("EmptyContainer") + .HasColumnType("int") + .HasComment("鏄惁绌烘墭"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<int>("Islock") + .HasColumnType("int") + .HasComment("鏄惁閿佸畾"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<int>("LayerNo") + .HasColumnType("int") + .HasComment("灞�"); + + b.Property<int>("MaxStockNumber") + .HasColumnType("int") + .HasComment("鏈�澶у簱瀛橀噺"); + + b.Property<string>("PlaceNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("缂栧彿"); + + b.Property<int>("PlaceStatus") + .HasColumnType("int") + .HasComment("璐т綅鐘舵��"); + + b.Property<string>("RedundantField1") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField2") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField3") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("RowNo") + .HasColumnType("int") + .HasComment("鎺�"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.Property<int>("StorageTypeNo") + .HasColumnType("int") + .HasComment("璐т綅绫诲瀷"); + + b.HasKey("Id"); + + b.HasIndex("AreaCode"); + + b.HasIndex("PlaceNo") + .IsUnique(); + + b.HasIndex("PlaceStatus"); + + b.HasIndex("StorageTypeNo"); + + b.ToTable("scms_wmsplaces", (string)null); + + b.HasComment("搴撲綅琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsStores.WmsStore", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("RedundantField1") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField2") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("RedundantField3") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��"); + + b.Property<string>("Remark") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasComment("澶囨敞"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.Property<string>("StoreCode") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("浠撳簱浠g爜"); + + b.Property<string>("StoreName") + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasComment("浠撳簱鍚嶇О"); + + b.HasKey("Id"); + + b.HasIndex("StoreName"); + + b.ToTable("scms_wmsstores", (string)null); + + b.HasComment("浠撳簱淇℃伅琛�"); + }); + + modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsTask.WmsTask", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("char(36)"); + + b.Property<int?>("Aisle") + .HasColumnType("int") + .HasComment("宸烽亾"); + + b.Property<string>("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property<string>("ContainerNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鎵樼洏缂栧彿"); + + b.Property<DateTime>("CreationTime") + .HasColumnType("datetime(6)") + .HasColumnName("CreationTime"); + + b.Property<Guid?>("CreatorId") + .HasColumnType("char(36)") + .HasColumnName("CreatorId"); + + b.Property<Guid?>("DeleterId") + .HasColumnType("char(36)") + .HasColumnName("DeleterId"); + + b.Property<DateTime?>("DeletionTime") + .HasColumnType("datetime(6)") + .HasColumnName("DeletionTime"); + + b.Property<int?>("DodeviceId") + .HasColumnType("int") + .HasComment("鍫嗗灈鏈篒D"); + + b.Property<int>("Dodevicetype") + .HasColumnType("int") + .HasComment("璁惧绫诲瀷"); + + b.Property<string>("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property<bool>("IsDeleted") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(1)") + .HasDefaultValue(false) + .HasColumnName("IsDeleted"); + + b.Property<bool?>("IsDisabled") + .HasColumnType("tinyint(1)") + .HasComment("鏄惁绂佺敤"); + + b.Property<int?>("IsNextTask") + .HasColumnType("int") + .HasComment("涓嬩釜浠诲姟鏄惁鐢熸垚鎴愬姛"); + + b.Property<bool>("IsRead") + .HasColumnType("tinyint(1)") + .HasComment("WCS鏄惁鍙互璇诲彇"); + + b.Property<DateTime?>("LastModificationTime") + .HasColumnType("datetime(6)") + .HasColumnName("LastModificationTime"); + + b.Property<Guid?>("LastModifierId") + .HasColumnType("char(36)") + .HasColumnName("LastModifierId"); + + b.Property<string>("MutableParam1") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鍙彉鍙橀噺1"); + + b.Property<string>("MutableParam2") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鍙彉鍙橀噺2"); + + b.Property<string>("MutableParam3") + .HasMaxLength(200) + .HasColumnType("varchar(200)") + .HasComment("鍙彉鍙橀噺3"); + + b.Property<int>("PlcTaskId") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("浠诲姟鐘舵��"); + + b.Property<int?>("SonTaskType") + .HasColumnType("int") + .HasComment("瀛愪换鍔$被鍨�"); + + b.Property<int>("Sort") + .HasColumnType("int") + .HasComment("鎺掑簭"); + + b.Property<string>("SourceOrderNo") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鏉ユ簮鍗曟嵁鍙�"); + + b.Property<string>("SourcePlace") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("璧峰搴撲綅"); + + b.Property<int>("TaskDodeviceStatus") + .HasColumnType("int") + .HasComment("璁惧浠诲姟鐘舵��"); + + b.Property<int>("TaskLevel") + .HasColumnType("int") + .HasComment("浠诲姟绛夌骇"); + + b.Property<string>("TaskNo") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("浠诲姟鍙�"); + + b.Property<int>("TaskStatus") + .HasColumnType("int") + .HasComment("浠诲姟鐘舵��"); + + b.Property<int>("TaskType") + .HasColumnType("int") + .HasComment("浠诲姟绫诲瀷"); + + b.Property<string>("ToPlace") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("鐩爣搴撲綅"); + + b.HasKey("Id"); + + b.HasIndex("ContainerNo"); + + b.HasIndex("DodeviceId"); + + b.HasIndex("IsRead"); + + b.HasIndex("Sort"); + + b.HasIndex("SourceOrderNo"); + + b.HasIndex("SourcePlace"); + + b.HasIndex("TaskNo") + .IsUnique(); + + b.HasIndex("TaskStatus"); + + b.HasIndex("TaskType"); + + b.HasIndex("ToPlace"); + + b.ToTable("scms_wmstasks", (string)null); + + b.HasComment("浠诲姟琛�"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.cs new file mode 100644 index 0000000..9314c1b --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/20250512042203_InitialCreate15.cs @@ -0,0 +1,27 @@ +锘縰sing Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace CMS.Plugin.HIAWms.MySQL.Migrations +{ + public partial class InitialCreate15 : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn<int>( + name: "PlcTaskId", + table: "scms_wmstasks", + type: "int", + nullable: false, + defaultValue: 0, + comment: "浠诲姟鐘舵��"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "PlcTaskId", + table: "scms_wmstasks"); + } + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs index e0122d6..14a2a3f 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Migrations/CMSPluginDbContextModelSnapshot.cs @@ -1706,6 +1706,12 @@ .HasColumnType("varchar(200)") .HasComment("鍙彉鍙橀噺3"); + b.Property<int>("PlcTaskId") + .ValueGeneratedOnAdd() + .HasColumnType("int") + .HasDefaultValue(0) + .HasComment("浠诲姟鐘舵��"); + b.Property<int?>("SonTaskType") .HasColumnType("int") .HasComment("瀛愪换鍔$被鍨�"); diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Scripts/UpdateMigrations.bat b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Scripts/UpdateMigrations.bat index ec382d1..48f4f7d 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Scripts/UpdateMigrations.bat +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.MySQL/Scripts/UpdateMigrations.bat @@ -1,5 +1,5 @@ cd ../ -dotnet ef migrations add InitialCreate14 -c CMSPluginDbContext -o Migrations +dotnet ef migrations add InitialCreate15 -c CMSPluginDbContext -o Migrations ::dotnet ef migrations add Update1 -c CMSPluginDbContext -o Migrations ::dotnet ef migrations add Update2 -c CMSPluginDbContext -o Migrations ::dotnet ef migrations add Update3 -c CMSPluginDbContext -o Migrations diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/LMesOperateController.cs b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/LMesOperateController.cs new file mode 100644 index 0000000..ad56343 --- /dev/null +++ b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/LMesOperateController.cs @@ -0,0 +1,40 @@ +锘縰sing CMS.Extensions.Abp.AspNetCore.Mvc.Filters; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; +using CMS.Plugin.HIAWms.Application.Contracts.Services; +using Microsoft.AspNetCore.Mvc; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CMS.Plugin.HIAWms.Controller +{ + [ApiController] + [TypeFilter(typeof(CMSLanguageFilter))] + [TypeFilter(typeof(CMSUowActionFilter))] + [TypeFilter(typeof(CMSAuditActionFilter))] + [TypeFilter(typeof(CMSExceptionFilter))] + [Route("api/v{version:apiVersion}/HIAWms/[controller]")] + public class LMesOperateController : ControllerBase + { + private readonly ILMesOperateAppService _mesOperateAppService; + + public LMesOperateController(ILMesOperateAppService mesOperateAppService) + { + _mesOperateAppService = mesOperateAppService; + } + + /// <summary> + /// LMes鍙枡 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost] + [Route("LMesCallMaterial")] + public async Task<List<CallMaterialOutput>> LMesCallMaterialAsync(List<LMesCallMaterialInput> input) + { + return await _mesOperateAppService.LMesCallMaterialAsync(input); + } + } +} diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsInsStockController.cs b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsInsStockController.cs index 1622011..0be5e48 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsInsStockController.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsInsStockController.cs @@ -1,6 +1,8 @@ 锘縰sing CMS.Extensions.Abp.AspNetCore.Mvc.Filters; using CMS.Plugin.HIAWms.Application.Contracts.Dtos.BindInstockDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsPlaces; using CMS.Plugin.HIAWms.Application.Contracts.Services; +using CMS.Plugin.MaterialManagement.Abstractions.Models; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; @@ -22,10 +24,12 @@ public class WmsInsStockController { private readonly IWmsBindInStockAppService _wmsBindInStockAppService; + private readonly IWmsCommonAppService _wmsCommonAppService; - public WmsInsStockController(IWmsBindInStockAppService wmsBindInStockAppService) + public WmsInsStockController(IWmsBindInStockAppService wmsBindInStockAppService, IWmsCommonAppService wmsCommonAppService) { _wmsBindInStockAppService = wmsBindInStockAppService; + _wmsCommonAppService = wmsCommonAppService; } /// <summary> @@ -51,5 +55,27 @@ { await _wmsBindInStockAppService.BindInStockAsync(input); } + + /// <summary> + /// 鏌ユ壘绌哄簱浣� + /// </summary> + /// <param name="materialModel"></param> + /// <param name="requiredNum"></param> + /// <param name="materialNo"></param> + /// <returns></returns> + [HttpGet] + [Route("FindEmptyPlace")] + public async Task<List<string>> FindEmptyPlaceAsync(string materialModel, int requiredNum, string materialNo = "") + { + var result = await _wmsCommonAppService.FindAvailablePlacesAsync(materialModel, requiredNum, materialNo = ""); + List<string> placeList = new List<string>(); + foreach (var place in result) + { + string v = $"Key={place.Key},Value={place.Value}"; + var str = v; + placeList.Add(str); + } + return placeList; + } } } diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsOutStockController.cs b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsOutStockController.cs index cf1ed60..f2ae2ff 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsOutStockController.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsOutStockController.cs @@ -1,4 +1,5 @@ 锘縰sing CMS.Extensions.Abp.AspNetCore.Mvc.Filters; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; using CMS.Plugin.HIAWms.Application.Contracts.Dtos.OutStockDto; using CMS.Plugin.HIAWms.Application.Contracts.Services; using Microsoft.AspNetCore.Mvc; @@ -35,9 +36,9 @@ /// <returns></returns> [HttpPost] [Route("CallMaterial")] - public async Task CallMaterialAsync(List<CallMaterialInput> input) + public async Task<List<CallMaterialOutput>> CallMaterialAsync(List<CallMaterialInput> input) { - await _wmsOutStockAppService.CallMaterialAsync(input); + return await _wmsOutStockAppService.CallMaterialAsync(input); } } } -- Gitblit v1.9.3