From 5e38906b578004f5a7441329cd25e85e50a29020 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 06 5月 2025 17:37:58 +0800
Subject: [PATCH] 111
---
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordDrawer.ts | 44
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.tsx | 61
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialDrawer.ts | 88
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/enum.ts | 15
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialController.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/index.ts | 28
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs | 113
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.module.scss | 3
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialAppService.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialRepository.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordDrawer.ts | 34
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/StockTypeEnum.cs | 28
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/GetWmsMaterialInput.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/type/Type.d.ts | 90
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/WmsTaskStatus.cs | 42
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.module.scss | 3
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/IWmsInOutStockRecordRepository.cs | 53
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.MySQL/CMSPluginDbContext.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterial.ts | 82
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialUpdateDto.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/index.ts | 14
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.module.scss | 6
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/enum.ts | 30
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/config/WmsInOutStockRecord.json | 3
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/type/type.d.ts | 45
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordsImportModel.cs | 33
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordUpdateDto.cs | 13
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialQueryDrawer.ts | 93
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateOrUpdateDtoBase.cs | 100
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialExportModel.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/新文件夹/WmsTask.cs | 126
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.module.scss | 14
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs | 153 +
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsInOutStockRecordController.cs | 188 +
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.tsx | 122
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.tsx | 142
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecord.ts | 41
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialDrawer.ts | 92
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts | 67
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/config/HIAWms.module.scss | 3
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateDto.cs | 17
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateDto.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialQueryDrawer.ts | 88
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterial.ts | 548 ++--
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecord.ts | 275 ++
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs | 155 +
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecord.ts | 30
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs | 26
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.tsx | 643 ++--
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterial.ts | 60
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.module.scss | 7
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsInOutStockRecord.cs | 121
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/GetWmsInOutStockRecordInput.cs | 249 +
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockRecordAppService.cs | 436 +++
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/SonTaskTypeEnum.cs | 51
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialsImportModel.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/Config.ts | 154
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialAppService.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordQueryDrawer.tsx | 267 +
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateOrUpdateDtoBase.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordQueryDrawer.ts | 44
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.tsx | 71
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/File.ts | 62
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.module.scss | 6
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordQueryDrawer.ts | 35
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialDto.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/WmsInOutStockRecord.cs | 95
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.module.scss | 226
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx | 680 ++--
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.module.scss | 113
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/config/menu.ts | 18
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/File.ts | 31
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/TaskTypeEnum.cs | 28
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterial/IWmsMaterialRepository.cs | 2
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialQueryDrawer.tsx | 662 ++--
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordDrawer.tsx | 275 ++
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.tsx | 308 ++
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordExportModel.cs | 109
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsInOutStockRecordAppService.cs | 46
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.tsx | 161
Weben_CMS专用代码生成器/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.tsx | 80
81 files changed, 6,169 insertions(+), 2,003 deletions(-)
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/GetWmsInOutStockRecordInput.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/GetWmsInOutStockRecordInput.cs"
new file mode 100644
index 0000000..7a6f32f
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/GetWmsInOutStockRecordInput.cs"
@@ -0,0 +1,249 @@
+using CmsQueryExtensions.Extension;
+using Volo.Abp.Application.Dtos;
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃鏌ヨ鍙傛暟
+/// </summary>
+public class GetWmsInOutStockRecordInput : ExtensiblePagedAndSortedResultRequestDto
+{
+
+ #region 鍏抽敭瀛楁煡璇�
+
+ /// <summary>
+ /// 鍏抽敭瀛楁ā绯婃煡璇紙娉ㄦ剰鏄皬鍐欙紒锛�
+ /// </summary>
+ public string searchVal { get; set; }
+
+ /// <summary>
+ /// 閫氱敤鏌ヨ閰嶇疆 (1:妯$硦鏌ヨ , 2:绮惧噯鏌ヨ)锛堟敞鎰忔槸灏忓啓锛侊級
+ /// </summary>
+ public SearchFilterModeEnum searchVal_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 瀛愭悳绱㈢粍浠朵紶閫掔殑閫氱敤鏌ヨ閰嶇疆鐨勫睘鎬у悕锛堟敞鎰忔槸灏忓啓锛侊級
+ /// </summary>
+ [NoAutoQuery]
+ public string str_searchFormInputAttrs { get; set; }
+ /// <summary>
+ /// 瀛愭悳绱㈢粍浠朵紶閫掔殑閫氱敤鏌ヨ閰嶇疆鐨勫睘鎬у悕锛堟敞鎰忔槸灏忓啓锛侊級
+ /// </summary>
+ public List<string> searchFormInputAttrs
+ {
+ get
+ {
+ if (!string.IsNullOrEmpty(str_searchFormInputAttrs))
+ {
+ return str_searchFormInputAttrs.Split(',').ToList();
+ }
+ return new List<string>();
+ }
+ }
+
+ #endregion
+
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鍗曟嵁缂栧彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum OrderNo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ public string MaterialName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialName_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鐗╂枡浠跺彿
+ /// </summary>
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡浠跺彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialNo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷
+ /// </summary>
+ public int? StockType { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum StockType_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿
+ /// </summary>
+ public string ContainerNo { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum ContainerNo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鏈哄瀷
+ /// </summary>
+ public string MaterialModel { get; set; }
+
+ /// <summary>
+ /// 鏈哄瀷-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialModel_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规��
+ [HighSearchRangeAttribute]
+ public List<string> OperateTime { get; set; }
+
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string Remark { get; set; }
+
+ /// <summary>
+ /// 澶囨敞-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum Remark_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public string TaskNo { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍙�-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum TaskNo_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 璧峰搴撲綅
+ /// </summary>
+ public string SourcePlace { get; set; }
+
+ /// <summary>
+ /// 璧峰搴撲綅-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum SourcePlace_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鐩爣搴撲綅
+ /// </summary>
+ public string ToPlace { get; set; }
+
+ /// <summary>
+ /// 鐩爣搴撲綅-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum ToPlace_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ ///
+ /// </summary>
+ //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规��
+ [HighSearchRangeAttribute]
+ public List<string> CreationTime { get; set; }
+
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string CreatorId { get; set; }
+
+ /// <summary>
+ /// -鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum CreatorId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ ///
+ /// </summary>
+ //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规��
+ [HighSearchRangeAttribute]
+ public List<string> LastModificationTime { get; set; }
+
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string LastModifierId { get; set; }
+
+ /// <summary>
+ /// -鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum LastModifierId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ ///
+ /// </summary>
+ public bool? IsDeleted { get; set; }
+
+ /// <summary>
+ /// -鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum IsDeleted_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string DeleterId { get; set; }
+
+ /// <summary>
+ /// -鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum DeleterId_FilterMode { get; set; }= SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ ///
+ /// </summary>
+ //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规��
+ [HighSearchRangeAttribute]
+ public List<string> DeletionTime { get; set; }
+
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum IsDisabled_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public int? Sort { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum Sort_FilterMode { get; set; }= SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateDto.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateDto.cs"
new file mode 100644
index 0000000..3df2845
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateDto.cs"
@@ -0,0 +1,17 @@
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃鍒涘缓鍙傛暟瀵硅薄
+/// </summary>
+public class WmsInOutStockRecordCreateDto : WmsInOutStockRecordCreateOrUpdateDtoBase
+{
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public virtual int? Sort { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; } = false;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateOrUpdateDtoBase.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateOrUpdateDtoBase.cs"
new file mode 100644
index 0000000..a110416
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordCreateOrUpdateDtoBase.cs"
@@ -0,0 +1,100 @@
+using CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using System;
+using Volo.Abp.Application.Dtos;
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃鍒涘缓鎴栨洿鏂板熀绫�
+/// </summary>
+public abstract class WmsInOutStockRecordCreateOrUpdateDtoBase : ExtensibleEntityDto
+{
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ public string? MaterialName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡浠跺彿
+ /// </summary>
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷
+ /// </summary>
+ public StockTypeEnum StockType { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿
+ /// </summary>
+ public string? ContainerNo { get; set; }
+
+ /// <summary>
+ /// 鏈哄瀷
+ /// </summary>
+ public string? MaterialModel { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ public DateTime? OperateTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string? Remark { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public string TaskNo { get; set; }
+
+ /// <summary>
+ /// 璧峰搴撲綅
+ /// </summary>
+ public string? SourcePlace { get; set; }
+
+ /// <summary>
+ /// 鐩爣搴撲綅
+ /// </summary>
+ public string? ToPlace { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? CreatorId { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? LastModifierId { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public int Sort { get; set; }
+
+
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="WmsInOutStockRecordCreateOrUpdateDtoBase"/> class.
+ /// </summary>
+ public WmsInOutStockRecordCreateOrUpdateDtoBase() : base(false)
+ {
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs"
new file mode 100644
index 0000000..5612122
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordDto.cs"
@@ -0,0 +1,155 @@
+using CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Data;
+using Volo.Abp.Domain.Entities;
+
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃鏁版嵁鍙傛暟瀵硅薄
+/// </summary>
+public class WmsInOutStockRecordDto: ExtensibleEntityDto<Guid>, IHasConcurrencyStamp
+{
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ public string? MaterialName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡浠跺彿
+ /// </summary>
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷
+ /// </summary>
+ public StockTypeEnum StockType { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷
+ /// </summary>
+ public string StockTypeDesc
+ {
+ get
+ {
+ return GetEnumDescriptionUtil.GetEnumDescription(StockType);
+ }
+ }
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿
+ /// </summary>
+ public string? ContainerNo { get; set; }
+
+ /// <summary>
+ /// 鏈哄瀷
+ /// </summary>
+ public string? MaterialModel { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ public DateTime? OperateTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string? Remark { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public string TaskNo { get; set; }
+
+ /// <summary>
+ /// 璧峰搴撲綅
+ /// </summary>
+ public string? SourcePlace { get; set; }
+
+ /// <summary>
+ /// 鐩爣搴撲綅
+ /// </summary>
+ public string? ToPlace { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public ExtraPropertyDictionary? ExtraProperties { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? ConcurrencyStamp { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public DateTime CreationTime { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? CreatorId { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public DateTime? LastModificationTime { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? LastModifierId { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public bool IsDeleted { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? DeleterId { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public DateTime? DeletionTime { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public int Sort { get; set; }
+
+
+
+ /// <summary>
+ /// Gets the export data.
+ /// </summary>
+ /// <returns></returns>
+ public Dictionary<string, object> GetExportData()
+ {
+ var exportData = new Dictionary<string, object>();
+ foreach (var property in this.GetType().GetProperties())
+ {
+ exportData.Add(property.Name, property.GetValue(this));
+ }
+
+ return exportData;
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordExportModel.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordExportModel.cs"
new file mode 100644
index 0000000..8f86f61
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordExportModel.cs"
@@ -0,0 +1,109 @@
+using MiniExcelLibs.Attributes;
+using System.ComponentModel.DataAnnotations;
+using System;
+using System.ComponentModel;
+using CMS.Plugin.HIAWms.Domain.Shared.Enums;
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃瀵煎嚭妯″瀷
+/// </summary>
+public class WmsInOutStockRecordExportModel
+{
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ [ExcelColumn(Name = "鍗曟嵁缂栧彿", Width = 25)]
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡鍚嶇О", Width = 25)]
+ public string MaterialName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡浠跺彿
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡浠跺彿", Width = 25)]
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷
+ /// </summary>
+ [ExcelColumn(Name = "鎿嶄綔绫诲瀷", Width = 25)]
+ public StockTypeEnum StockType { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿
+ /// </summary>
+ [ExcelColumn(Name = "瀹瑰櫒缂栧彿", Width = 25)]
+ public string ContainerNo { get; set; }
+
+ /// <summary>
+ /// 鏈哄瀷
+ /// </summary>
+ [ExcelColumn(Name = "鏈哄瀷", Width = 25)]
+ public string MaterialModel { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ [ExcelColumn(Name = "鎿嶄綔鏃堕棿", Width = 25)]
+ public DateTime OperateTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ [ExcelColumn(Name = "澶囨敞", Width = 25)]
+ public string Remark { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡ID", Width = 25)]
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ [ExcelColumn(Name = "浠诲姟鍙�", Width = 25)]
+ public string TaskNo { get; set; }
+
+ /// <summary>
+ /// 璧峰搴撲綅
+ /// </summary>
+ [ExcelColumn(Name = "璧峰搴撲綅", Width = 25)]
+ public string SourcePlace { get; set; }
+
+ /// <summary>
+ /// 鐩爣搴撲綅
+ /// </summary>
+ [ExcelColumn(Name = "鐩爣搴撲綅", Width = 25)]
+ public string ToPlace { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ [ExcelColumn(Name = "鏄惁绂佺敤", Width = 25)]
+ public bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ [ExcelColumn(Name = "鎺掑簭", Width = 25)]
+ public int Sort { get; set; }
+
+
+
+ public Dictionary<string, object> GetExportData()
+ {
+ var exportData = new Dictionary<string, object>();
+ foreach (var property in this.GetType().GetProperties())
+ {
+ exportData.Add(property.Name, property.GetValue(this));
+ }
+
+ return exportData;
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordUpdateDto.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordUpdateDto.cs"
new file mode 100644
index 0000000..7a04030
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordUpdateDto.cs"
@@ -0,0 +1,13 @@
+using Volo.Abp.Domain.Entities;
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃鏇存柊鍙傛暟瀵硅薄
+/// </summary>
+public class WmsInOutStockRecordUpdateDto : WmsInOutStockRecordCreateOrUpdateDtoBase, IHasConcurrencyStamp
+{
+ /// <summary>
+ /// 骞跺彂鎴�
+ /// </summary>
+ public string ConcurrencyStamp { get; set; }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordsImportModel.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordsImportModel.cs"
new file mode 100644
index 0000000..7e3e4ce
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsInOutStockRecord/WmsInOutStockRecordsImportModel.cs"
@@ -0,0 +1,33 @@
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord
+{
+ /// <summary>
+ /// 鍑哄叆搴撹褰曡〃瀵煎叆妯″瀷
+ /// </summary>
+ public class WmsInOutStockRecordsImportModel
+ {
+ private List<WmsInOutStockRecordImportModel> _WmsInOutStockRecords = new();
+
+ public List<WmsInOutStockRecordImportModel> WmsInOutStockRecords
+ {
+ get => _WmsInOutStockRecords;
+ set
+ {
+ _WmsInOutStockRecords = value;
+ var rowIndex = 2;
+ _WmsInOutStockRecords?.ForEach(x => x.RowIndex = rowIndex++);
+ }
+ }
+
+ /// <summary>
+ /// 鍑哄叆搴撹褰曡〃瀵煎叆妯″瀷
+ /// </summary>
+ public class WmsInOutStockRecordImportModel : WmsInOutStockRecordExportModel
+ {
+ /// <summary>
+ /// 琛屽彿
+ /// </summary>
+ public int RowIndex { get; set; }
+ }
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/GetWmsMaterialInput.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/GetWmsMaterialInput.cs"
index 9581382..b097042 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/GetWmsMaterialInput.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/GetWmsMaterialInput.cs"
@@ -1,4 +1,4 @@
-锘縰sing CmsQueryExtensions.Extension;
+using CmsQueryExtensions.Extension;
using Volo.Abp.Application.Dtos;
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateDto.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateDto.cs"
index edf0cb4..4d06a47 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateDto.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateDto.cs"
@@ -1,4 +1,4 @@
-锘縩amespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
/// <summary>
/// 鐗╂枡鍩虹淇℃伅琛ㄥ垱寤哄弬鏁板璞�
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateOrUpdateDtoBase.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateOrUpdateDtoBase.cs"
index 9638fbd..136291a 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateOrUpdateDtoBase.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialCreateOrUpdateDtoBase.cs"
@@ -1,4 +1,4 @@
-锘縰sing CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using CMS.Plugin.HIAWms.Domain.Shared.Enums;
using Volo.Abp.Application.Dtos;
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialDto.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialDto.cs"
index 82b2e91..f67f983 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialDto.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialDto.cs"
@@ -1,4 +1,4 @@
-锘縰sing CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using CMS.Plugin.HIAWms.Domain.Shared.Enums;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Data;
using Volo.Abp.Domain.Entities;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialExportModel.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialExportModel.cs"
index c806e96..c75b208 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialExportModel.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialExportModel.cs"
@@ -1,4 +1,4 @@
-锘縰sing MiniExcelLibs.Attributes;
+using MiniExcelLibs.Attributes;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using CMS.Plugin.HIAWms.Domain.Shared.Enums;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialUpdateDto.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialUpdateDto.cs"
index 4c778ba..51d9818 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialUpdateDto.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialUpdateDto.cs"
@@ -1,4 +1,4 @@
-锘縰sing Volo.Abp.Domain.Entities;
+using Volo.Abp.Domain.Entities;
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
/// <summary>
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialsImportModel.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialsImportModel.cs"
index 71b157f..798a29b 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialsImportModel.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialsImportModel.cs"
@@ -1,4 +1,4 @@
-锘�
+
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial
{
/// <summary>
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsInOutStockRecordAppService.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsInOutStockRecordAppService.cs"
new file mode 100644
index 0000000..6bc1c06
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsInOutStockRecordAppService.cs"
@@ -0,0 +1,46 @@
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+using Volo.Abp.Application.Services;
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Services;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃搴旂敤鏈嶅姟鎺ュ彛
+/// </summary>
+public interface IWmsInOutStockRecordAppService : ICrudAppService<WmsInOutStockRecordDto, Guid, GetWmsInOutStockRecordInput, WmsInOutStockRecordCreateDto, WmsInOutStockRecordUpdateDto>
+{
+ /// <summary>
+ /// 鍏嬮殕鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="ids"></param>
+ /// <returns></returns>
+ Task<List<WmsInOutStockRecordDto>> CloneAsync(IEnumerable<Guid> ids);
+
+ /// <summary>
+ /// 鍒犻櫎鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="ids"></param>
+ /// <returns></returns>
+ Task DeleteManyAsync(IEnumerable<Guid> ids);
+
+ /// <summary>
+ /// 璋冩暣鎺掑簭鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id"></param>
+ /// <param name="sort"></param>
+ /// <returns></returns>
+ Task AdjustSortAsync(Guid id, int sort);
+
+ /// <summary>
+ /// 瀵煎叆鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ Task ImportAsync(WmsInOutStockRecordsImportModel input);
+
+ /// <summary>
+ /// 瀵煎嚭鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsInOutStockRecordInput input);
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialAppService.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialAppService.cs"
index 6589194..d678bc4 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialAppService.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialAppService.cs"
@@ -1,4 +1,4 @@
-锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
using Volo.Abp.Application.Services;
namespace CMS.Plugin.HIAWms.Application.Contracts.Services;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockRecordAppService.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockRecordAppService.cs"
new file mode 100644
index 0000000..34c8675
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsInOutStockRecordAppService.cs"
@@ -0,0 +1,436 @@
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+using CMS.Plugin.HIAWms.Application.Contracts.Services;
+using CMS.Plugin.HIAWms.Domain.Shared;
+using CMS.Plugin.HIAWms.Domain.Shared.Util;
+using CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord;
+using CmsQueryExtensions.Extension;
+using System.Linq.Expressions;
+using Volo.Abp;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Data;
+using Volo.Abp.ObjectExtending;
+using Volo.Abp.ObjectMapping;
+
+namespace CMS.Plugin.HIAWms.Application.Implements;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃搴旂敤鏈嶅姟
+/// </summary>
+public class WmsInOutStockRecordAppService : CMSPluginAppService, IWmsInOutStockRecordAppService
+{
+ private readonly IWmsInOutStockRecordRepository wmsInOutStockRecordRepository;
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="WmsInOutStockRecordAppService"/> class.
+ /// </summary>
+ /// <param name="WmsInOutStockRecordRepository">The task job repository.</param>
+ public WmsInOutStockRecordAppService(IWmsInOutStockRecordRepository _WmsInOutStockRecordRepository)
+ {
+ wmsInOutStockRecordRepository = _WmsInOutStockRecordRepository;
+ }
+
+ /// <summary>
+ /// 鑾峰彇鎸囧畾鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id"></param>
+ /// <returns></returns>
+ public virtual async Task<WmsInOutStockRecordDto> GetAsync(Guid id)
+ {
+ return ObjectMapper.Map<WmsInOutStockRecord, WmsInOutStockRecordDto>(await wmsInOutStockRecordRepository.GetAsync(id));
+ }
+
+ /// <summary>
+ /// 鍒嗛〉鑾峰彇鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ public virtual async Task<PagedResultDto<WmsInOutStockRecordDto>> GetListAsync(GetWmsInOutStockRecordInput input)
+ {
+ Check.NotNull(input, nameof(input));
+
+ if (input.Sorting.IsNullOrWhiteSpace())
+ {
+ input.Sorting = nameof(WmsInOutStockRecord.Sort);
+ }
+
+ #region 鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+
+ //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+ var whereConditions = DynamicGetQueryParams(input);
+
+ #endregion
+
+ var count = await wmsInOutStockRecordRepository.GetCountAsync(whereConditions);
+ var list = await wmsInOutStockRecordRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount);
+
+ return new PagedResultDto<WmsInOutStockRecordDto>(count, ObjectMapper.Map<List<WmsInOutStockRecord>, List<WmsInOutStockRecordDto>>(list));
+ }
+
+ /// <summary>
+ /// 鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+ /// </summary>
+ /// <param name="input">杈撳叆鍙傛暟</param>
+ /// <returns></returns>
+ private FunReturnResultModel<Expression<Func<WmsInOutStockRecord, bool>>> DynamicGetQueryParams(GetWmsInOutStockRecordInput input)
+ {
+ //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+ var whereConditions = WhereConditionsExtensions.GetWhereConditions<WmsInOutStockRecord, GetWmsInOutStockRecordInput>(input);
+ if (!whereConditions.IsSuccess)
+ {
+ throw new Exception("鍔ㄦ�佹瀯閫犳煡璇㈡潯浠跺け璐�:" + whereConditions.ErrMsg);
+ }
+
+ //涔熷彲鍐嶆鑷畾涔夋瀯寤烘煡璇㈡潯浠�
+ Expression<Func<WmsInOutStockRecord, bool>> extendExpression = a => a.IsDeleted == false;
+ // 浣跨敤 System.Linq.PredicateBuilder 鐨� And
+ var pres = (System.Linq.Expressions.Expression<Func<WmsInOutStockRecord, bool>>)(whereConditions.data);
+ whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression);
+
+ return whereConditions;
+ }
+
+ /// <summary>
+ /// 鏂板缓鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ /// <exception cref="UserFriendlyException"></exception>
+ public virtual async Task<WmsInOutStockRecordDto> CreateAsync(WmsInOutStockRecordCreateDto input)
+ {
+ await CheckCreateOrUpdateDtoAsync(input);
+
+ var exist = await wmsInOutStockRecordRepository.NameExistAsync(input.MaterialNo);
+ if (exist)
+ {
+ throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]);
+ }
+
+ var maxSort = await wmsInOutStockRecordRepository.GetMaxSortAsync();
+ var sort = input.Sort ?? maxSort;
+
+ var insertObj = ObjectMapper.Map<WmsInOutStockRecordCreateDto, WmsInOutStockRecord>(input);
+ insertObj.Sort = sort;
+ input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None);
+
+ await wmsInOutStockRecordRepository.InsertAsync(insertObj);
+
+ if (input.Sort.HasValue && insertObj.Sort != maxSort)
+ {
+ await AdjustSortAsync(insertObj.Id, insertObj.Sort);
+ }
+
+ return ObjectMapper.Map<WmsInOutStockRecord, WmsInOutStockRecordDto>(insertObj);
+ }
+
+ /// <summary>
+ /// 鏇存柊鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id"></param>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ /// <exception cref="UserFriendlyException"></exception>
+ public virtual async Task<WmsInOutStockRecordDto> UpdateAsync(Guid id, WmsInOutStockRecordUpdateDto input)
+ {
+ await CheckCreateOrUpdateDtoAsync(input);
+
+ var updateObj = await wmsInOutStockRecordRepository.GetAsync(id);
+ var exist = await wmsInOutStockRecordRepository.NameExistAsync(input.MaterialNo, updateObj.Id);
+ if (exist)
+ {
+ throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]);
+ }
+
+ updateObj.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp);
+ input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None);
+
+ updateObj.OrderNo = input.OrderNo;
+ updateObj.MaterialName = input.MaterialName;
+ updateObj.MaterialNo = input.MaterialNo;
+ updateObj.StockType = input.StockType;
+ updateObj.ContainerNo = input.ContainerNo;
+ updateObj.MaterialModel = input.MaterialModel;
+ updateObj.OperateTime = input.OperateTime;
+ updateObj.Remark = input.Remark;
+ updateObj.MaterialId = input.MaterialId;
+ updateObj.TaskNo = input.TaskNo;
+ updateObj.SourcePlace = input.SourcePlace;
+ updateObj.ToPlace = input.ToPlace;
+ updateObj.IsDisabled = input.IsDisabled;
+
+
+ await wmsInOutStockRecordRepository.UpdateAsync(updateObj);
+
+ return ObjectMapper.Map<WmsInOutStockRecord, WmsInOutStockRecordDto>(updateObj);
+ }
+
+ /// <summary>
+ /// 鍏嬮殕鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="ids"></param>
+ /// <returns></returns>
+ public async Task<List<WmsInOutStockRecordDto>> CloneAsync(IEnumerable<Guid> ids)
+ {
+ //var wmsInOutStockRecords = new List<WmsInOutStockRecord>();
+ //if (ids != null)
+ //{
+ // var sort = await wmsInOutStockRecordRepository.GetMaxSortAsync();
+ // foreach (var id in ids)
+ // {
+ // var WmsInOutStockRecord = await wmsInOutStockRecordRepository.FindAsync(id);
+ // if (WmsInOutStockRecord != null)
+ // {
+ // var name = WmsInOutStockRecord.Name + WmsInOutStockRecordConsts.CloneTag;
+ // var notExist = false;
+ // while (!notExist)
+ // {
+ // var exist = await wmsInOutStockRecordRepository.NameExistAsync(name);
+ // if (exist || wmsInOutStockRecords.Any(x => x.Name == name))
+ // {
+ // name += WmsInOutStockRecordConsts.CloneTag;
+ // continue;
+ // }
+
+ // notExist = true;
+ // }
+
+ // //WmsInOutStockRecord = await wmsInOutStockRecordRepository.InsertAsync(WmsInOutStockRecord.Clone(GuidGenerator.Create(), name, sort++));
+ // wmsInOutStockRecords.Add(WmsInOutStockRecord);
+ // }
+ // }
+ //}
+
+ //return ObjectMapper.Map<List<WmsInOutStockRecord>, List<WmsInOutStockRecordDto>>(wmsInOutStockRecords);
+ return new List<WmsInOutStockRecordDto>();
+ }
+
+ /// <summary>
+ /// 鍒犻櫎鍗曚釜鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id"></param>
+ /// <returns></returns>
+ public virtual Task DeleteAsync(Guid id)
+ {
+ return wmsInOutStockRecordRepository.DeleteAsync(id);
+ }
+
+ /// <summary>
+ /// 鍒犻櫎澶氫釜鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="ids"></param>
+ /// <returns></returns>
+ public async Task DeleteManyAsync(IEnumerable<Guid> ids)
+ {
+ foreach (var id in ids)
+ {
+ await DeleteAsync(id);
+ }
+ }
+
+ /// <summary>
+ /// 璋冩暣鎺掑簭鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id"></param>
+ /// <param name="sort"></param>
+ /// <returns></returns>
+ public virtual async Task AdjustSortAsync(Guid id, int sort)
+ {
+ var list = await wmsInOutStockRecordRepository.GetListAsync(null, nameof(WmsInOutStockRecord.Sort));
+ if (list != null && list.Any())
+ {
+ var initSort = 1;
+ list.ForEach(x => x.AdjustSort(initSort++));
+ var entity = list.FirstOrDefault(x => x.Id == id);
+ if (entity != null)
+ {
+ if (sort == 1)
+ {
+ list.Where(x => x.Id != id).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1));
+ }
+ else if (entity.Sort > sort)
+ {
+ list.Where(x => x.Id != id && x.Sort >= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1));
+ list.Where(x => x.Id != id && x.Sort < sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1));
+ }
+ else if (entity.Sort < sort)
+ {
+ list.Where(x => x.Id != id && x.Sort > sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1));
+ list.Where(x => x.Id != id && x.Sort <= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1));
+ }
+
+ entity.AdjustSort(sort);
+ }
+ }
+
+ await wmsInOutStockRecordRepository.UpdateManyAsync(list);
+ }
+
+ /// <summary>
+ /// 瀵煎叆鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ /// <exception cref="UserFriendlyException"></exception>
+ public async Task ImportAsync(WmsInOutStockRecordsImportModel input)
+ {
+ Check.NotNull(input, nameof(input));
+
+ var wmsInOutStockRecordCreateDtos = new List<(int RowIndex, WmsInOutStockRecordCreateDto Item)>();
+ var wmsInOutStockRecordUpdateDtos = new List<(int RowIndex, Guid Id, WmsInOutStockRecordUpdateDto Item)>();
+ var importItems = input.WmsInOutStockRecords;
+
+ if (importItems != null && importItems.Any())
+ {
+ #region 瀵煎叆鏍¢獙
+
+ // 鍒ゆ柇鍚嶇О鏄惁閲嶅锛屽苟杈撳嚭绗嚑琛岄噸澶�
+ var duplicateWmsInOutStockRecords = importItems.GroupBy(x => x.MaterialNo).Where(x => x.Count() > 1).ToList();
+ if (duplicateWmsInOutStockRecords?.Any() == true)
+ {
+ var duplicateWmsInOutStockRecordMsgs = duplicateWmsInOutStockRecords.Select(x => $"绗� {string.Join(",", x.Select(x => x.RowIndex))} 琛岋細{x.Key} 鍚嶇О閲嶅");
+ var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝 {string.Join(",", duplicateWmsInOutStockRecordMsgs)}锛岀粓姝㈠鍏�";
+ throw new UserFriendlyException(errorMsg);
+ }
+
+ #endregion
+
+ foreach (var impItem in importItems)
+ {
+ if (impItem.MaterialNo.IsNullOrWhiteSpace() && impItem.MaterialName.IsNullOrWhiteSpace())
+ {
+ continue;
+ }
+
+ if (impItem.MaterialNo.IsNullOrWhiteSpace())
+ {
+ var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊impItem.RowIndex}琛岋細WmsInOutStockRecord鍚嶇О涓嶈兘涓虹┖";
+ throw new UserFriendlyException(errorMsg);
+ }
+
+ var oldWmsInOutStockRecord = await wmsInOutStockRecordRepository.FindByNameAsync(impItem.MaterialNo);
+ if (oldWmsInOutStockRecord != null)
+ {
+ var wmsInOutStockRecordUpdateDto = new WmsInOutStockRecordUpdateDto
+ {
+ OrderNo = impItem.OrderNo,
+MaterialName = impItem.MaterialName,
+MaterialNo = impItem.MaterialNo,
+StockType = impItem.StockType,
+ContainerNo = impItem.ContainerNo,
+MaterialModel = impItem.MaterialModel,
+OperateTime = impItem.OperateTime,
+Remark = impItem.Remark,
+MaterialId = impItem.MaterialId,
+TaskNo = impItem.TaskNo,
+SourcePlace = impItem.SourcePlace,
+ToPlace = impItem.ToPlace,
+IsDisabled = impItem.IsDisabled,
+
+ };
+
+ wmsInOutStockRecordUpdateDtos.Add((impItem.RowIndex, oldWmsInOutStockRecord.Id, wmsInOutStockRecordUpdateDto));
+ }
+ else
+ {
+ var wmsInOutStockRecordCreateDto = new WmsInOutStockRecordCreateDto
+ {
+ OrderNo = impItem.OrderNo,
+MaterialName = impItem.MaterialName,
+MaterialNo = impItem.MaterialNo,
+StockType = impItem.StockType,
+ContainerNo = impItem.ContainerNo,
+MaterialModel = impItem.MaterialModel,
+OperateTime = impItem.OperateTime,
+Remark = impItem.Remark,
+MaterialId = impItem.MaterialId,
+TaskNo = impItem.TaskNo,
+SourcePlace = impItem.SourcePlace,
+ToPlace = impItem.ToPlace,
+IsDisabled = impItem.IsDisabled,
+
+ };
+
+ wmsInOutStockRecordCreateDtos.Add((impItem.RowIndex, wmsInOutStockRecordCreateDto));
+ }
+ }
+ }
+
+ // 鏂板
+ foreach (var wmsInOutStockRecordDto in wmsInOutStockRecordCreateDtos)
+ {
+ try
+ {
+ await CreateAsync(wmsInOutStockRecordDto.Item);
+ }
+ catch (Exception e)
+ {
+ var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊wmsInOutStockRecordDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�";
+ throw new UserFriendlyException(errorMsg);
+ }
+ }
+
+ // 鏇存柊
+ foreach (var wmsInOutStockRecordDto in wmsInOutStockRecordUpdateDtos)
+ {
+ try
+ {
+ await UpdateAsync(wmsInOutStockRecordDto.Id, wmsInOutStockRecordDto.Item);
+ }
+ catch (Exception e)
+ {
+ var errorMsg = $"瀵煎叆澶辫触锛侀厤缃紝绗瑊wmsInOutStockRecordDto.RowIndex}琛岋細{e.Message}锛岀粓姝㈠鍏�";
+ throw new UserFriendlyException(errorMsg);
+ }
+ }
+ }
+
+ /// <summary>
+ /// 瀵煎嚭鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsInOutStockRecordInput input)
+ {
+ Check.NotNull(input, nameof(input));
+
+ if (input.Sorting.IsNullOrWhiteSpace())
+ {
+ input.Sorting = nameof(WmsInOutStockRecord.Sort);
+ }
+
+ #region 鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+
+ //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+ var whereConditions = DynamicGetQueryParams(input);
+
+ #endregion
+
+
+ var list = await wmsInOutStockRecordRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true);
+ var result = ObjectMapper.Map<List<WmsInOutStockRecord>, List<WmsInOutStockRecordDto>>(list);
+
+ var sheets = new Dictionary<string, object>
+ {
+ ["閰嶇疆"] = ExportHelper.ConvertListToExportData(result),
+ };
+
+ var fileName = result.Count > 1 ? "鍑哄叆搴撹褰曡〃鍒楄〃" : result.Count == 1 ? result[0]?.MaterialNo : "WmsInOutStockRecord妯$増";
+ return (sheets, fileName);
+ }
+
+ /// <summary>
+ /// 鏍¢獙鍑哄叆搴撹褰曡〃锛屽綋鏂板缓鎴栨洿鏂版椂
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ protected Task CheckCreateOrUpdateDtoAsync(WmsInOutStockRecordCreateOrUpdateDtoBase input)
+ {
+ Check.NotNull(input, nameof(input));
+ Check.NotNullOrWhiteSpace(input.OrderNo, "鍗曟嵁缂栧彿", 50);
+ Check.NotNullOrWhiteSpace(input.MaterialNo, "鐗╂枡浠跺彿", 50);
+ Check.NotNull(input.StockType, "鎿嶄綔绫诲瀷");
+ Check.NotNullOrWhiteSpace(input.MaterialId, "鐗╂枡ID", 50);
+ Check.NotNullOrWhiteSpace(input.TaskNo, "浠诲姟鍙�", 50);
+
+ return Task.CompletedTask;
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialAppService.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialAppService.cs"
index b0c23eb..8304853 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialAppService.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialAppService.cs"
@@ -1,4 +1,4 @@
-锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
using CMS.Plugin.HIAWms.Application.Contracts.Services;
using CMS.Plugin.HIAWms.Domain.Shared;
using CMS.Plugin.HIAWms.Domain.Shared.Util;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs"
new file mode 100644
index 0000000..c4d9c53
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsInOutStockRecordAutoMapperProfile.cs"
@@ -0,0 +1,26 @@
+using AutoMapper;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+using CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord;
+using Volo.Abp.ObjectExtending;
+
+namespace CMS.Plugin.HIAWms.Application.MapperProfiles;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃AutoMapper閰嶇疆
+/// </summary>
+/// <seealso cref="AutoMapper.Profile" />
+public class WmsInOutStockRecordAutoMapperProfile : Profile
+{
+ /// <summary>
+ /// Initializes a new instance of the <see cref="WmsInOutStockRecordAutoMapperProfile"/> class.
+ /// </summary>
+ public WmsInOutStockRecordAutoMapperProfile()
+ {
+ /* You can configure your AutoMapper mapping configuration here.
+ * Alternatively, you can split your mapping configurations
+ * into multiple profile classes for a better organization. */
+ CreateMap<WmsInOutStockRecord, WmsInOutStockRecordDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
+ CreateMap<WmsInOutStockRecordCreateDto, WmsInOutStockRecord>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
+ CreateMap<GetWmsInOutStockRecordInput, WmsInOutStockRecord>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/SonTaskTypeEnum.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/SonTaskTypeEnum.cs"
new file mode 100644
index 0000000..2bebd34
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/SonTaskTypeEnum.cs"
@@ -0,0 +1,51 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace CMS.Plugin.HIAWms.Domain.Shared.Enums
+{
+ /// <summary>
+ /// 瀛愪换鍔$被鍨�
+ /// </summary>
+ [Description("瀛愪换鍔$被鍨�")]
+ public enum SonTaskTypeEnum
+ {
+ /// <summary>
+ /// 鑷姩鍏ュ簱
+ /// </summary>
+ [Description("鑷姩鍏ュ簱")]
+ ZDRUKU = 1,
+
+ /// <summary>
+ /// 浜哄伐鍏ュ簱
+ /// </summary>
+ [Description("浜哄伐鍏ュ簱")]
+ RGRUKU = 2,
+
+ /// <summary>
+ /// 浜哄伐鍑哄簱
+ /// </summary>
+ [Description("浜哄伐鍑哄簱")]
+ RGCHUKU = 3,
+ /// <summary>
+ /// 鑷姩鍑哄簱
+ /// </summary>
+ [Description("鑷姩鍑哄簱")]
+ ZDCHUKU = 4,
+
+ /// <summary>
+ /// 绌烘墭鍛煎彨
+ /// </summary>
+ [Description("绌烘墭鍛煎彨")]
+ KTHUJIOA = 5,
+
+ /// <summary>
+ /// 鍥炲簱
+ /// </summary>
+ [Description("鍥炲簱")]
+ HUIKU = 6,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/StockTypeEnum.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/StockTypeEnum.cs"
new file mode 100644
index 0000000..a7d0926
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/StockTypeEnum.cs"
@@ -0,0 +1,28 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace CMS.Plugin.HIAWms.Domain.Shared.Enums
+{
+ /// <summary>
+ /// 搴撳瓨绫诲瀷
+ /// </summary>
+ [Description("搴撳瓨绫诲瀷")]
+ public enum StockTypeEnum
+ {
+ /// <summary>
+ /// 鍏ュ簱
+ /// </summary>
+ [Description("鍏ュ簱")]
+ InBound = 1,
+
+ /// <summary>
+ /// 鍑哄簱
+ /// </summary>
+ [Description("鍑哄簱")]
+ OutBound = 2,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/TaskTypeEnum.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/TaskTypeEnum.cs"
new file mode 100644
index 0000000..b22ffaf
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/TaskTypeEnum.cs"
@@ -0,0 +1,28 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace CMS.Plugin.HIAWms.Domain.Shared.Enums
+{
+ /// <summary>
+ /// 浠诲姟绫诲瀷
+ /// </summary>
+ [Description("浠诲姟绫诲瀷")]
+ public enum TaskTypeEnum
+ {
+ /// <summary>
+ /// 鍑哄簱
+ /// </summary>
+ [Description("鍑哄簱")]
+ CHUKU = 1,
+
+ /// <summary>
+ /// 鍏ュ簱
+ /// </summary>
+ [Description("鍏ュ簱")]
+ RUKU = 2,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/WmsTaskStatus.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/WmsTaskStatus.cs"
new file mode 100644
index 0000000..211dff5
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/Enums/WmsTaskStatus.cs"
@@ -0,0 +1,42 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace CMS.Plugin.HIAWms.Domain.Shared.Enums
+{
+ /// <summary>
+ /// 浠诲姟鐘舵��
+ /// </summary>
+ [Description("浠诲姟鐘舵��")]
+ public enum WmsTaskStatus
+ {
+ /// <summary>
+ /// 鏈墽琛�
+ /// </summary>
+ [Description("鏈墽琛�")]
+ WEIZHIXING = 1,
+ /// <summary>
+ /// 寰呮墽琛�
+ /// </summary>
+ [Description("寰呮墽琛�")]
+ DAIZHIXINGZHONG = 2,
+ /// <summary>
+ /// 鎵ц涓�
+ /// </summary>
+ [Description("鎵ц涓�")]
+ ZHIXINGZHONG = 3,
+ /// <summary>
+ /// 瀹屾垚
+ /// </summary>
+ [Description("瀹屾垚")]
+ WANCHENG = 4,
+ /// <summary>
+ /// 鍙栨秷
+ /// </summary>
+ [Description("鍙栨秷")]
+ QUXIAO = 5
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/IWmsInOutStockRecordRepository.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/IWmsInOutStockRecordRepository.cs"
new file mode 100644
index 0000000..d1d3f69
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/IWmsInOutStockRecordRepository.cs"
@@ -0,0 +1,53 @@
+using CmsQueryExtensions.Extension;
+using System.Linq.Expressions;
+using Volo.Abp.Domain.Repositories;
+
+namespace CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃浠撳偍
+/// </summary>
+public interface IWmsInOutStockRecordRepository : IBasicRepository<WmsInOutStockRecord, Guid>
+{
+ /// <summary>
+ /// 鎸夌収鍚嶇О鏌ユ壘鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="name"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ Task<WmsInOutStockRecord> FindByNameAsync(string name, CancellationToken cancellationToken = default);
+
+ /// <summary>
+ /// 楠岃瘉鍚嶇О鏄惁瀛樺湪鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="name"></param>
+ /// <param name="id"></param>
+ /// <returns></returns>
+ Task<bool> NameExistAsync(string name, Guid? id = null);
+
+ /// <summary>
+ /// 鑾峰彇鏈�澶ф帓搴忓嚭鍏ュ簱璁板綍琛�
+ /// </summary>
+ /// <returns></returns>
+ Task<int> GetMaxSortAsync();
+
+ /// <summary>
+ /// 鑾峰彇鍒嗛〉鍒楄〃鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="whereConditions"></param>
+ /// <param name="sorting"></param>
+ /// <param name="maxResultCount"></param>
+ /// <param name="skipCount"></param>
+ /// <param name="includeDetails"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ Task<List<WmsInOutStockRecord>> GetListAsync(FunReturnResultModel<Expression<Func<WmsInOutStockRecord, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default);
+
+ /// <summary>
+ /// 鑾峰彇鎬绘暟鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="whereConditions"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsInOutStockRecord, bool>>> whereConditions, CancellationToken cancellationToken = default);
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/WmsInOutStockRecord.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/WmsInOutStockRecord.cs"
new file mode 100644
index 0000000..ac5a066
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsInOutStockRecord/WmsInOutStockRecord.cs"
@@ -0,0 +1,95 @@
+锘縰sing CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp.Domain.Entities.Auditing;
+
+namespace CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord
+{
+ /// <summary>
+ /// 鍑哄叆搴撹褰�.
+ /// </summary>
+ public class WmsInOutStockRecord : FullAuditedAggregateRoot<Guid>
+ {
+ /// <summary>
+ /// 鍗曟嵁缂栧彿
+ /// </summary>
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ public string? MaterialName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡浠跺彿
+ /// </summary>
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔绫诲瀷
+ /// </summary>
+ public StockTypeEnum StockType { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿.
+ /// </summary>
+ public string? ContainerNo { get; set; }
+
+ /// <summary>
+ /// 鍨嬪彿
+ /// </summary>
+ public string? MaterialModel { get; set; }
+
+ /// <summary>
+ /// 鎿嶄綔鏃堕棿
+ /// </summary>
+ public DateTime? OperateTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string? Remark { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public string TaskNo { get; set; }
+
+ /// <summary>
+ /// 璧峰搴撲綅
+ /// </summary>
+ public string? SourcePlace { get; set; }
+
+ /// <summary>
+ /// 鐩爣搴撲綅
+ /// </summary>
+ public string? ToPlace { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public virtual int Sort { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public virtual bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// Adjusts the sort.
+ /// </summary>
+ /// <param name="sort">The sort.</param>
+ public void AdjustSort(int sort)
+ {
+ Sort = sort;
+ }
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterial/IWmsMaterialRepository.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterial/IWmsMaterialRepository.cs"
index 7d1b279..b6ce9c7 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterial/IWmsMaterialRepository.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterial/IWmsMaterialRepository.cs"
@@ -1,4 +1,4 @@
-锘縰sing CmsQueryExtensions.Extension;
+using CmsQueryExtensions.Extension;
using System.Linq.Expressions;
using Volo.Abp.Domain.Repositories;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/\346\226\260\346\226\207\344\273\266\345\244\271/WmsTask.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/\346\226\260\346\226\207\344\273\266\345\244\271/WmsTask.cs"
new file mode 100644
index 0000000..4330c5d
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/\346\226\260\346\226\207\344\273\266\345\244\271/WmsTask.cs"
@@ -0,0 +1,126 @@
+锘縰sing CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using NPOI.SS.Formula.Functions;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp.Domain.Entities.Auditing;
+
+namespace CMS.Plugin.HIAWms.Domain.WmsTask
+{
+ /// <summary>
+ /// 浠诲姟
+ /// </summary>W
+ public class WmsTask : FullAuditedAggregateRoot<Guid>
+ {
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public string TaskNo { get; set; }
+
+ /// <summary>
+ /// 浠诲姟绫诲瀷
+ /// </summary>
+ public TaskTypeEnum TaskType { get; set; }
+
+ /// <summary>
+ /// 浠诲姟绛夌骇
+ /// </summary>
+ public int TaskLevel { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鐘舵��
+ /// </summary>
+ public WmsTaskStatus TaskStatus { get; set; }
+
+ /// <summary>
+ /// 鎵樼洏缂栧彿
+ /// </summary>
+ public string? ContainerNo { get; set; }
+
+ /// <summary>
+ /// 璧峰搴撲綅
+ /// </summary>
+ public string? SourcePlace { get; set; }
+
+ /// <summary>
+ /// 鐩爣搴撲綅
+ /// </summary>
+ public string? ToPlace { get; set; }
+
+ /// <summary>
+ /// 宸烽亾
+ /// </summary>
+ public int? Aisle { get; set; }
+ /// <summary>
+ /// 鍫嗗灈鏈篒D
+ /// </summary>
+ public int? DodeviceId { get; set; }
+
+ /// <summary>
+ /// 璁惧绫诲瀷
+ /// </summary>
+ public int Dodevicetype { get; set; }
+
+
+ /// <summary>
+ /// 璁惧浠诲姟鐘舵��
+ /// </summary>
+ public int TaskDodeviceStatus { get; set; }
+
+ /// <summary>
+ /// WCS鏄惁鍙互璇诲彇
+ /// </summary>
+ public bool IsRead { get; set; }
+
+ /// <summary>
+ /// 瀛愪换鍔$被鍨�
+ /// </summary>
+ public SonTaskTypeEnum? SonTaskType { get; set; }
+
+ /// <summary>
+ /// 鏉ユ簮鍗曟嵁鍙�
+ /// </summary>
+ public string? SourceOrderNo { get; set; }
+
+ /// <summary>
+ /// 浠诲姟鍏宠仈鐨勪笅涓换鍔℃槸鍚︾敓鎴愭垚鍔燂紝澶辫触涓�1锛屽叾浠栨棤鎿嶄綔
+ /// </summary>
+ public int? IsNextTask { get; set; }
+
+ /// <summary>
+ /// 鍙彉鍙橀噺1
+ /// </summary>
+ public string? MutableParam1 { get; set; }
+
+ /// <summary>
+ /// 鍙彉鍙橀噺2
+ /// </summary>
+ public string? MutableParam2 { get; set; }
+
+ /// <summary>
+ /// 鍙彉鍙橀噺3
+ /// </summary>
+ public string? MutableParam3 { get; set; }
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public virtual int Sort { get; set; }
+
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public virtual bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// Adjusts the sort.
+ /// </summary>
+ /// <param name="sort">The sort.</param>
+ public void AdjustSort(int sort)
+ {
+ Sort = sort;
+ }
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsInOutStockRecord.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsInOutStockRecord.cs"
new file mode 100644
index 0000000..ebcb94d
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsInOutStockRecord.cs"
@@ -0,0 +1,121 @@
+锘縰sing CMS.Plugin.HIAWms.Domain;
+using CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord;
+using Microsoft.EntityFrameworkCore;
+using Volo.Abp;
+using Volo.Abp.EntityFrameworkCore.Modeling;
+
+namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions
+{
+ /// <summary>
+ /// EfCore鎵╁睍
+ /// </summary>
+ public static partial class CMSPluginEfCoreExtensions
+ {
+ /// <summary>
+ /// Includes the details.
+ /// </summary>
+ /// <param name="queryable">The queryable.</param>
+ /// <param name="include">if set to <c>true</c> [include].</param>
+ /// <returns></returns>
+ public static IQueryable<WmsInOutStockRecord> IncludeDetails(this IQueryable<WmsInOutStockRecord> queryable, bool include = true)
+ {
+ if (!include)
+ {
+ return queryable;
+ }
+
+ return queryable;
+ }
+
+ /// <summary>
+ /// Configures the wmsmaterial.
+ /// </summary>
+ /// <param name="builder"></param>
+ public static void ConfigureWmsInOutStockRecord(this ModelBuilder builder)
+ {
+ Check.NotNull(builder, nameof(builder));
+
+ builder.Entity<WmsInOutStockRecord>(b =>
+ {
+ b.ToTable((CMSPluginDbProperties.DbTablePrefix + "_WmsInOutStockRecords").ToLower(), CMSPluginDbProperties.DbSchema)
+ .HasComment("鍑哄叆搴撹褰曡〃");
+
+ b.ConfigureByConvention();
+ // 涓婚敭閰嶇疆
+ b.HasKey(x => x.Id);
+ // Properties
+ b.Property(x => x.OrderNo)
+ .HasMaxLength(50)
+ .IsRequired()
+ .HasComment("鍗曟嵁缂栧彿");
+
+ b.Property(x => x.MaterialName)
+ .HasMaxLength(100)
+ .IsRequired(false)
+ .HasComment("鐗╂枡鍚嶇О");
+
+ b.Property(x => x.MaterialNo)
+ .HasMaxLength(50)
+ .IsRequired()
+ .HasComment("鐗╂枡浠跺彿");
+
+ b.Property(x => x.StockType)
+ .IsRequired()
+ .HasComment("鎿嶄綔绫诲瀷");
+
+ b.Property(x => x.ContainerNo)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("瀹瑰櫒缂栧彿");
+
+ b.Property(x => x.MaterialModel)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("鏈哄瀷");
+
+ b.Property(x => x.OperateTime)
+ .IsRequired(false)
+ .HasComment("鎿嶄綔鏃堕棿");
+
+ b.Property(x => x.Remark)
+ .HasMaxLength(500)
+ .IsRequired(false)
+ .HasComment("澶囨敞");
+
+ b.Property(x => x.MaterialId)
+ .HasMaxLength(50)
+ .IsRequired()
+ .HasComment("鐗╂枡ID");
+
+ b.Property(x => x.TaskNo)
+ .HasMaxLength(50)
+ .IsRequired()
+ .HasComment("浠诲姟鍙�");
+
+ b.Property(x => x.SourcePlace)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("璧峰搴撲綅");
+
+ b.Property(x => x.ToPlace)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("鐩爣搴撲綅");
+
+ b.Property(x => x.Sort).HasComment("鎺掑簭");
+ b.Property(x => x.IsDisabled).IsRequired(false).HasComment("鏄惁绂佺敤");
+
+ // Indexes
+ b.HasIndex(x => x.OrderNo);
+ b.HasIndex(x => x.MaterialNo);
+ b.HasIndex(x => x.MaterialId);
+ b.HasIndex(x => x.TaskNo);
+ b.HasIndex(x => x.StockType);
+ b.HasIndex(x => x.ContainerNo);
+ b.HasIndex(x => x.OperateTime);
+
+ b.ApplyObjectExtensionMappings();
+ });
+ }
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs"
new file mode 100644
index 0000000..b72a67b
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Extensions/CMSPluginEfCoreExtensions.WmsTask.cs"
@@ -0,0 +1,153 @@
+锘縰sing CMS.Plugin.HIAWms.Domain;
+using CMS.Plugin.HIAWms.Domain.WmsTask;
+using Microsoft.EntityFrameworkCore;
+using Volo.Abp;
+using Volo.Abp.EntityFrameworkCore.Modeling;
+
+namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions
+{
+ /// <summary>
+ /// EfCore鎵╁睍
+ /// </summary>
+ public static partial class CMSPluginEfCoreExtensions
+ {
+ /// <summary>
+ /// Includes the details.
+ /// </summary>
+ /// <param name="queryable">The queryable.</param>
+ /// <param name="include">if set to <c>true</c> [include].</param>
+ /// <returns></returns>
+ public static IQueryable<WmsTask> IncludeDetails(this IQueryable<WmsTask> queryable, bool include = true)
+ {
+ if (!include)
+ {
+ return queryable;
+ }
+
+ return queryable;
+ }
+ /// <summary>
+ /// Configures the WMS task entity.
+ /// </summary>
+ /// <param name="builder">The builder.</param>
+ public static void ConfigureWmsTask(this ModelBuilder builder)
+ {
+ Check.NotNull(builder, nameof(builder));
+
+ builder.Entity<WmsTask>(b =>
+ {
+ b.ToTable((CMSPluginDbProperties.DbTablePrefix + "_WmsTasks").ToLower(), CMSPluginDbProperties.DbSchema)
+ .HasComment("浠诲姟琛�");
+
+ b.ConfigureByConvention();
+
+ // Primary key configuration (inherited from FullAuditedAggregateRoot<Guid>)
+ b.HasKey(x => x.Id);
+
+ // Properties configuration
+ b.Property(x => x.TaskNo)
+ .HasMaxLength(50)
+ .IsRequired()
+ .HasComment("浠诲姟鍙�");
+
+ b.Property(x => x.TaskType)
+ .IsRequired()
+ .HasComment("浠诲姟绫诲瀷");
+
+ b.Property(x => x.TaskLevel)
+ .IsRequired()
+ .HasComment("浠诲姟绛夌骇");
+
+ b.Property(x => x.TaskStatus)
+ .IsRequired()
+ .HasComment("浠诲姟鐘舵��");
+
+ b.Property(x => x.ContainerNo)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("鎵樼洏缂栧彿");
+
+ b.Property(x => x.SourcePlace)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("璧峰搴撲綅");
+
+ b.Property(x => x.ToPlace)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("鐩爣搴撲綅");
+
+ b.Property(x => x.Aisle)
+ .IsRequired(false)
+ .HasComment("宸烽亾");
+
+ b.Property(x => x.DodeviceId)
+ .IsRequired(false)
+ .HasComment("鍫嗗灈鏈篒D");
+
+ b.Property(x => x.Dodevicetype)
+ .IsRequired()
+ .HasComment("璁惧绫诲瀷");
+
+ b.Property(x => x.TaskDodeviceStatus)
+ .IsRequired()
+ .HasComment("璁惧浠诲姟鐘舵��");
+
+ b.Property(x => x.IsRead)
+ .IsRequired()
+ .HasComment("WCS鏄惁鍙互璇诲彇");
+
+ b.Property(x => x.SonTaskType)
+ .IsRequired(false)
+ .HasComment("瀛愪换鍔$被鍨�");
+
+ b.Property(x => x.SourceOrderNo)
+ .HasMaxLength(50)
+ .IsRequired(false)
+ .HasComment("鏉ユ簮鍗曟嵁鍙�");
+
+ b.Property(x => x.IsNextTask)
+ .IsRequired(false)
+ .HasComment("涓嬩釜浠诲姟鏄惁鐢熸垚鎴愬姛");
+
+ b.Property(x => x.MutableParam1)
+ .HasMaxLength(200)
+ .IsRequired(false)
+ .HasComment("鍙彉鍙橀噺1");
+
+ b.Property(x => x.MutableParam2)
+ .HasMaxLength(200)
+ .IsRequired(false)
+ .HasComment("鍙彉鍙橀噺2");
+
+ b.Property(x => x.MutableParam3)
+ .HasMaxLength(200)
+ .IsRequired(false)
+ .HasComment("鍙彉鍙橀噺3");
+
+ b.Property(x => x.Sort)
+ .IsRequired()
+ .HasComment("鎺掑簭");
+
+ b.Property(x => x.IsDisabled)
+ .IsRequired(false)
+ .HasComment("鏄惁绂佺敤");
+
+ // Indexes configuration
+ b.HasIndex(x => x.TaskNo).IsUnique();
+ b.HasIndex(x => x.TaskType);
+ b.HasIndex(x => x.TaskStatus);
+ b.HasIndex(x => x.ContainerNo);
+ b.HasIndex(x => x.SourcePlace);
+ b.HasIndex(x => x.ToPlace);
+ b.HasIndex(x => x.DodeviceId);
+ b.HasIndex(x => x.IsRead);
+ b.HasIndex(x => x.SourceOrderNo);
+ b.HasIndex(x => x.Sort);
+
+ b.ApplyObjectExtensionMappings();
+ });
+ }
+ }
+
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs"
new file mode 100644
index 0000000..fb76acf
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsInOutStockRecordRepository.cs"
@@ -0,0 +1,113 @@
+using CMS.Plugin.HIAWms.Domain.WmsInOutStockRecord;
+using CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions;
+using CmsQueryExtensions.Extension;
+using Microsoft.EntityFrameworkCore;
+using System.Linq.Dynamic.Core;
+using System.Linq.Expressions;
+using Volo.Abp.Domain.Repositories.EntityFrameworkCore;
+using Volo.Abp.EntityFrameworkCore;
+
+
+namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Repositories;
+
+/// <summary>
+/// 鍑哄叆搴撹褰曡〃浠撳偍瀹炵幇
+/// </summary>
+public class EfCoreWmsInOutStockRecordRepository : EfCoreRepository<ICMSPluginDbContext, WmsInOutStockRecord, Guid>, IWmsInOutStockRecordRepository
+{
+ /// <summary>
+ /// Initializes a new instance of the <see cref="EfCoreWmsInOutStockRecordRepository"/> class.
+ /// </summary>
+ /// <param name="dbContextProvider">The database context provider.</param>
+ public EfCoreWmsInOutStockRecordRepository(IDbContextProvider<ICMSPluginDbContext> dbContextProvider)
+ : base(dbContextProvider)
+ {
+ }
+
+ /// <summary>
+ /// 鎸夌収鍚嶇О鏌ユ壘鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="name"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ public virtual async Task<WmsInOutStockRecord> FindByNameAsync(string name, CancellationToken cancellationToken = default)
+ {
+ return await (await GetDbSetAsync())
+ .IncludeDetails()
+ .Where(x => !x.IsDeleted)
+ .OrderBy(t => t.Sort)
+ .FirstOrDefaultAsync(t => t.MaterialNo == name, GetCancellationToken(cancellationToken));
+ }
+
+ /// <summary>
+ /// 楠岃瘉鍚嶇О鏄惁瀛樺湪鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="name">鏍¢獙鍊�</param>
+ /// <param name="id"></param>
+ /// <returns></returns>
+ public async Task<bool> NameExistAsync(string name, Guid? id = null)
+ {
+ return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).Where(x => !x.IsDeleted).AnyAsync(x => x.MaterialNo == name);
+ }
+
+ /// <summary>
+ /// 鑾峰彇鏈�澶ф帓搴忓嚭鍏ュ簱璁板綍琛�
+ /// </summary>
+ /// <returns></returns>
+ public async Task<int> GetMaxSortAsync()
+ {
+ var hasAny = await (await GetQueryableAsync())
+ .Where(x => !x.IsDeleted).AnyAsync();
+ if (!hasAny)
+ {
+ return 1;
+ }
+
+ var sort = await (await GetQueryableAsync())
+ .Where(x => !x.IsDeleted).MaxAsync(x => x.Sort);
+ return sort + 1;
+ }
+
+ /// <summary>
+ /// 鑾峰彇鍒嗛〉鍒楄〃鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="whereConditions"></param>
+ /// <param name="sorting"></param>
+ /// <param name="maxResultCount"></param>
+ /// <param name="skipCount"></param>
+ /// <param name="includeDetails"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ public async Task<List<WmsInOutStockRecord>> GetListAsync(FunReturnResultModel<Expression<Func<WmsInOutStockRecord, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default)
+ {
+ return await (await GetDbSetAsync())
+ .IncludeDetails(includeDetails)
+ .WhereIf(whereConditions != null, whereConditions.data)
+ .Where(x => !x.IsDeleted)
+ .OrderBy(sorting.IsNullOrEmpty() ? nameof(WmsInOutStockRecord.Sort) : sorting)
+ .PageBy(skipCount, maxResultCount)
+ .ToListAsync(GetCancellationToken(cancellationToken));
+ }
+
+ /// <summary>
+ /// 鑾峰彇鎬绘暟鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="whereConditions"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ public async Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsInOutStockRecord, bool>>> whereConditions, CancellationToken cancellationToken = default)
+ {
+ return await (await GetQueryableAsync())
+ .WhereIf(whereConditions != null, whereConditions.data)
+ .Where(x => !x.IsDeleted)
+ .CountAsync(cancellationToken: GetCancellationToken(cancellationToken));
+ }
+
+
+ /// <inheritdoc />
+ public override async Task<IQueryable<WmsInOutStockRecord>> WithDetailsAsync()
+ {
+ return (await GetQueryableAsync())
+ .Where(x => !x.IsDeleted).IncludeDetails();
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialRepository.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialRepository.cs"
index ee47e68..7a7edc1 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialRepository.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialRepository.cs"
@@ -1,4 +1,4 @@
-锘縰sing CMS.Plugin.HIAWms.Domain.WmsMaterial;
+using CMS.Plugin.HIAWms.Domain.WmsMaterial;
using CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions;
using CmsQueryExtensions.Extension;
using Microsoft.EntityFrameworkCore;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.MySQL/CMSPluginDbContext.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.MySQL/CMSPluginDbContext.cs"
index bd06548..b93e817 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.MySQL/CMSPluginDbContext.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.MySQL/CMSPluginDbContext.cs"
@@ -37,6 +37,8 @@
builder.ConfigureWmsArea();
builder.ConfigureWmsPlace();
builder.ConfigureWmsMaterial();
+ builder.ConfigureWmsInOutStockRecord();
+ builder.ConfigureWmsTask();
/* Configure your own tables/entities inside here */
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsInOutStockRecordController.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsInOutStockRecordController.cs"
new file mode 100644
index 0000000..425b7ae
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsInOutStockRecordController.cs"
@@ -0,0 +1,188 @@
+using Ao.Lang;
+using CMS.Extensions.Abp.AspNetCore.Mvc.Filters;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsInOutStockRecord;
+using CMS.Plugin.HIAWms.Application.Contracts.Services;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using MiniExcelLibs;
+using System.Reflection;
+using Volo.Abp;
+using Volo.Abp.Application.Dtos;
+
+namespace CMS.Plugin.HIAWms.Controller
+{
+ /// <summary>
+ /// 鍑哄叆搴撹褰曡〃鏈嶅姟
+ /// </summary>
+ [ApiController]
+ [TypeFilter(typeof(CMSLanguageFilter))]
+ [TypeFilter(typeof(CMSUowActionFilter))]
+ [TypeFilter(typeof(CMSAuditActionFilter))]
+ [TypeFilter(typeof(CMSExceptionFilter))]
+ [Route("api/v{version:apiVersion}/HIAWms/[controller]")]
+ public class WmsInOutStockRecordController : ControllerBase
+ {
+ private readonly IWmsInOutStockRecordAppService _wmsInOutStockRecordAppService;
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="WmsInOutStockRecordController"/> class.
+ /// </summary>
+ /// <param name="wmsInOutStockRecordAppService">The wmsInOutStockRecord application service.</param>
+ public WmsInOutStockRecordController(IWmsInOutStockRecordAppService wmsInOutStockRecordAppService)
+ {
+ _wmsInOutStockRecordAppService = wmsInOutStockRecordAppService;
+ }
+
+ /// <summary>
+ /// 鑾峰彇鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id">鏍囪瘑绗�.</param>
+ /// <returns></returns>
+ [HttpGet]
+ [Route("{id}")]
+ public virtual Task<WmsInOutStockRecordDto> GetAsync(Guid id)
+ {
+ return _wmsInOutStockRecordAppService.GetAsync(id);
+ }
+
+ /// <summary>
+ /// 鍒嗛〉鑾峰彇鍑哄叆搴撹褰曡〃鐨勫垪琛�.
+ /// </summary>
+ /// <param name="input">杈撳叆.</param>
+ /// <returns></returns>
+ [HttpGet]
+ [Route("Page")]
+ public virtual Task<PagedResultDto<WmsInOutStockRecordDto>> GetListAsync([FromQuery] GetWmsInOutStockRecordInput input)
+ {
+ return _wmsInOutStockRecordAppService.GetListAsync(input);
+ }
+
+ /// <summary>
+ /// 鍒涘缓鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="input">杈撳叆.</param>
+ /// <returns></returns>
+ //[Authorize]
+ [HttpPost]
+ public virtual Task<WmsInOutStockRecordDto> CreateAsync(WmsInOutStockRecordCreateDto input)
+ {
+ return _wmsInOutStockRecordAppService.CreateAsync(input);
+ }
+
+ /// <summary>
+ /// 鏇存柊鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id">鏍囪瘑绗�.</param>
+ /// <param name="input">杈撳叆.</param>
+ /// <returns></returns>
+ //[Authorize]
+ [HttpPut]
+ [Route("{id}")]
+ public virtual Task<WmsInOutStockRecordDto> UpdateAsync(Guid id, WmsInOutStockRecordUpdateDto input)
+ {
+ return _wmsInOutStockRecordAppService.UpdateAsync(id, input);
+ }
+
+ /// <summary>
+ /// 鍏嬮殕鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="ids">Id闆嗗悎.</param>
+ /// <returns></returns>
+ //[Authorize]
+ [HttpPost]
+ [Route("Clone")]
+ public virtual Task<List<WmsInOutStockRecordDto>> CloneAsync([FromBody] IEnumerable<Guid> ids)
+ {
+ return _wmsInOutStockRecordAppService.CloneAsync(ids);
+ }
+
+ /// <summary>
+ /// 鍒犻櫎鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id">鏍囪瘑绗�.</param>
+ /// <returns></returns>
+ //[Authorize]
+ [HttpDelete]
+ [Route("{id}")]
+ public virtual Task DeleteAsync(Guid id)
+ {
+ return _wmsInOutStockRecordAppService.DeleteAsync(id);
+ }
+
+ /// <summary>
+ /// 鎵归噺鍒犻櫎鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="ids">The ids.</param>
+ /// <returns></returns>
+ //[Authorize]
+ [HttpDelete]
+ public virtual Task DeleteAsync([FromBody] IEnumerable<Guid> ids)
+ {
+ return _wmsInOutStockRecordAppService.DeleteManyAsync(ids);
+ }
+
+ /// <summary>
+ /// 璋冩暣鎺掑簭鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <param name="id">鏍囪瘑绗�.</param>
+ /// <returns></returns>
+ [HttpPut]
+ [Route("{id}/AdjustSort/{sort}")]
+ public virtual Task AdjustSortAsync(Guid id, int sort)
+ {
+ return _wmsInOutStockRecordAppService.AdjustSortAsync(id, sort);
+ }
+
+ /// <summary>
+ /// 瀵煎叆鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <returns></returns>
+ [Authorize]
+ [HttpPost]
+ [Route("Import")]
+ public virtual async Task<IActionResult> ImportAsync(IFormFile file)
+ {
+ using var stream = new MemoryStream();
+ await file.CopyToAsync(stream);
+ stream.Seek(0L, SeekOrigin.Begin);
+
+ var sheetNames = stream.GetSheetNames();
+ var wmsInOutStockRecordRows = sheetNames.Contains("閰嶇疆") ? MiniExcel.Query<WmsInOutStockRecordsImportModel.WmsInOutStockRecordImportModel>(stream, sheetName: "閰嶇疆").ToList() : new();
+
+ if (!wmsInOutStockRecordRows.Any())
+ {
+ throw new UserFriendlyException("璇锋鏌ュ鍏ョ殑琛ㄦ牸");
+ }
+
+ await _wmsInOutStockRecordAppService.ImportAsync(new WmsInOutStockRecordsImportModel
+ {
+ WmsInOutStockRecords = wmsInOutStockRecordRows,
+ });
+
+ return Ok();
+ }
+
+ /// <summary>
+ /// 瀵煎嚭鍑哄叆搴撹褰曡〃
+ /// </summary>
+ /// <returns></returns>
+ [HttpGet]
+ [Route("Export")]
+ public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsInOutStockRecordInput input)
+ {
+ input.MaxResultCount = int.MaxValue;
+ var exportData = await _wmsInOutStockRecordAppService.ExportAsync(input);
+ var templatePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Resources/Templates/WmsInOutStockRecord瀵煎嚭妯℃澘.xlsx");
+ if (!System.IO.File.Exists(templatePath))
+ {
+ templatePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? string.Empty, $"Resources/Templates/WmsInOutStockRecord瀵煎嚭妯℃澘.xlsx");
+ }
+
+ var memoryStream = new MemoryStream();
+ await memoryStream.SaveAsByTemplateAsync(templatePath, exportData.Sheets);
+ memoryStream.Seek(0L, SeekOrigin.Begin);
+ return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { FileDownloadName = $"{exportData.FileName}_{DateTime.Now:yyyyMMddhhmmss}.xlsx" };
+ }
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialController.cs" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialController.cs"
index 0002de3..9060e10 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialController.cs"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialController.cs"
@@ -1,4 +1,4 @@
-锘縰sing Ao.Lang;
+using Ao.Lang;
using CMS.Extensions.Abp.AspNetCore.Mvc.Filters;
using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial;
using CMS.Plugin.HIAWms.Application.Contracts.Services;
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/config/menu.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/config/menu.ts"
index 1a0aaf6..bb14372 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/config/menu.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/config/menu.ts"
@@ -7,6 +7,13 @@
"notPage": false
},
{
+ "name": "鍑哄叆搴撹褰�",
+ "path": "/information-base/WmsInOutStockRecord",
+ "patchName": "WmsInOutStockRecord",
+ "icon": "p",
+ "notPage": false
+ },
+ {
"name": "Wms鎵樼洏绠$悊",
"path": "/information-base/WmsContainer",
"patchName": "WmsContainer",
@@ -21,7 +28,7 @@
"notPage": false
},
{
- "name": "Wms鐗╂枡鍩虹",
+ "name": "鐗╂枡淇℃伅",
"path": "/information-base/HIAWms",
"patchName": "HIAWms",
"icon": "p",
@@ -33,6 +40,13 @@
"name": "浠撳簱淇℃伅",
"path": "/information-base/WmsStoreInfo",
"patchName": "WmsStoreInfo",
+ "icon": "p",
+ "notPage": false
+ },
+ "WmsInOutStockRecord": {
+ "name": "鍑哄叆搴撹褰�",
+ "path": "/information-base/WmsInOutStockRecord",
+ "patchName": "WmsInOutStockRecord",
"icon": "p",
"notPage": false
},
@@ -51,7 +65,7 @@
"notPage": false
},
"HIAWms": {
- "name": "Wms鐗╂枡鍩虹",
+ "name": "鐗╂枡淇℃伅",
"path": "/information-base/HIAWms",
"patchName": "HIAWms",
"icon": "p",
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/File.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/File.ts"
index 75397ed..9162fef 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/File.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/File.ts"
@@ -1,31 +1,31 @@
-import { importFileToService, exportFileToClient } from '@/api/file'
-import { ElMessage } from 'element-plus'
-import { downloadFile } from '@/utils'
-import dayjs from 'dayjs'
-
-export const useFile = () => {
- /**
- * 瀵煎叆鏂囦欢
- * @param url
- */
- const importFile = async (url: string, file: File) => {
- const formData = new FormData()
- formData.append('file', file)
- await importFileToService(url, formData)
- ElMessage('瀵煎叆鎴愬姛')
- }
- /**
- * 瀵煎嚭鏂囦欢
- * @param url
- */
- const exportFile = async (url: string, params: any, name: string) => {
- const res = await exportFileToClient(url, params)
- downloadFile(res, `${name}_${dayjs().format('YYYYMMDDHHMMss')}.xlsx`)
- ElMessage.success('瀵煎嚭鎴愬姛')
- }
-
- return {
- importFile,
- exportFile,
- }
-}
+import { importFileToService, exportFileToClient } from '@/api/file'
+import { ElMessage } from 'element-plus'
+import { downloadFile } from '@/utils'
+import dayjs from 'dayjs'
+
+export const useFile = () => {
+ /**
+ * 瀵煎叆鏂囦欢
+ * @param url
+ */
+ const importFile = async (url: string, file: File) => {
+ const formData = new FormData()
+ formData.append('file', file)
+ await importFileToService(url, formData)
+ ElMessage('瀵煎叆鎴愬姛')
+ }
+ /**
+ * 瀵煎嚭鏂囦欢
+ * @param url
+ */
+ const exportFile = async (url: string, params: any, name: string) => {
+ const res = await exportFileToClient(url, params)
+ downloadFile(res, `${name}_${dayjs().format('YYYYMMDDHHMMss')}.xlsx`)
+ ElMessage.success('瀵煎嚭鎴愬姛')
+ }
+
+ return {
+ importFile,
+ exportFile,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterial.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterial.ts"
index b97016b..1f51100 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterial.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterial.ts"
@@ -1,275 +1,275 @@
-import { ref, onMounted, reactive, Ref, nextTick, computed } from 'vue'
-import { injectModel } from '@/libs/Provider/Provider'
-import { WmsMaterial } from '../Models/WmsMaterial'
-import { ElMessage } from 'element-plus'
-import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
-import { useFile } from './File'
-
-interface CurrentType {
- row: any
- index: number
-}
-export const useWmsMaterial = (props: any, ctx?: any) => {
- const wmsMaterial = injectModel<WmsMaterial>('wmsMaterial')
- const { exportFile } = useFile()
- /**
- * 澶撮儴閰嶇疆
- */
- const headers = ref({})
- /**
- * 鍔ㄦ�佸垪閰嶇疆
- */
- const wmsMaterialColumns = ref<Record<string, any>>([])
- /**
- * 鎼滅储鍊�
- */
- const search = ref('')
-
- /**
- * 鎺掑簭
- */
- const sort = ref(0)
- /**
- * 閫夋嫨椤�
- */
- const selection = ref([])
- /**
- * 褰撳墠閫変腑鐨勮
- */
- const current = ref<any>(null)
- /**
- * 鏁版嵁婧�
- */
- const dataSource: Ref<any[]> = ref([])
-
- /**
- * 琛ㄦ牸
- */
- const tableRef = ref()
- const dialogConfig = reactive({
- visible: false,
- title: '',
- isAdd: false,
- })
- const dialogConfigForQuery = reactive({
- visible: false,
- title: '',
- isAdd: false,
- })
-
-
- const dialogSettingConfig = reactive({
- visible: false,
- title: '',
- })
-
- /**
- * 鍒嗛〉鏁版嵁
- */
- const paginationParams = ref({})
-
- /**
- * 鎵撳紑璇︽儏
- * @param row
- */
- const openDetail = (row: any) => {
- current.value = row
- dialogConfig.visible = true
- dialogConfig.title = row.name
- dialogConfig.isAdd = false
- sort.value = row.sort
- }
-
- const contextMenu = [
- {
- label: '灞曞紑璇︽儏',
- fn: (c: CurrentType) => {
- current.value = null
- sort.value = c.row.sort
- nextTick(() => openDetail(c.row))
- },
- divided: true,
- icon: 'o',
- },
- // {
- // label: '鍚戜笂娣诲姞',
- // fn: (c: CurrentType, pageNum: number) => {
- // current.value = null
- // sort.value = c.index + 1 + (pageNum - 1) * 50
- // dialogConfig.visible = true
- // dialogConfig.title = '娣诲姞'
- // dialogConfig.isAdd = false
- // },
- // divided: true,
- // icon: 'up',
- // },
- // {
- // label: '鍚戜笅娣诲姞',
- // fn: (c: CurrentType, pageNum: number) => {
- // current.value = null
- // sort.value = c.index + 2 + (pageNum - 1) * 50
- // dialogConfig.visible = true
- // dialogConfig.title = '娣诲姞'
- // dialogConfig.isAdd = false
- // },
- // divided: true,
- // icon: 'down',
- // },
- // {
- // label: '鍒涘缓鍓湰',
- // fn: async ({ row }: CurrentType) => {
- // await wmsMaterial.cloneData([row.id])
- // ElMessage.success('鍒涘缓鍓湰鎴愬姛')
- // tableRef.value?.getList()
- // },
- // divided: true,
- // icon: 'copy',
- // },
- {
- label: '鍒犻櫎',
- fn: async (c: CurrentType) => {
- const names = selection.value.map((item: { name: string }) => item.name)
- ConfirmBox(
- `鏄惁鍒犻櫎${names.length ? names.join(',') : c.row.name}`
- ).then(async () => {
- const ids = selection.value.map((item: { id: string }) => item.id)
- await wmsMaterial.deleteWmsMaterials(ids.length ? ids : [c.row.id])
- ElMessage.success('鍒犻櫎鎴愬姛')
- tableRef.value.getList()
- })
- },
- icon: 'close',
- },
- ]
-
- const onCheck = (records: any) => {
- selection.value = records
- }
-
- const onAddWmsMaterial = () => {
- const params = tableRef.value?.getPaginationParams()
- current.value = null
- dialogConfig.visible = true
- dialogConfig.isAdd = true
- dialogConfig.title = '娣诲姞'
- sort.value = params.totalCount + 1
- }
-
- //鐐瑰嚮鎸夐挳銆愰珮绾ф煡璇€��
- const onAdvancedQuery = () => {
- const params = tableRef.value?.getPaginationParams()
- current.value = null
- dialogConfigForQuery.visible = true
- dialogConfigForQuery.isAdd = true
- dialogConfigForQuery.title = '楂樼骇鏌ヨ'
- }
+import { ref, onMounted, reactive, Ref, nextTick, computed } from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsMaterial } from '../Models/WmsMaterial'
+import { ElMessage } from 'element-plus'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { useFile } from './File'
- const onConfirmWmsMaterial = async () => {
- dialogConfig.visible = false
- if (dialogConfig.isAdd) {
- tableRef.value?.scrollToRow({
- skip: true,
- })
- } else {
- await tableRef.value?.getList()
- }
- }
- /**
- * 琛岀偣鍑绘椂鏇存柊current
- */
- const onRowClick = ({ row }: any) => {
- if (dialogConfig.visible && current.value) {
- current.value = row
- }
- }
- /**
- * 瀵煎嚭
- */
- const onExport = (data={}) => {
- //const params = tableRef.value?.getParams()
- exportFile('/api/v1/hIAWms/wmsMaterial/export', data, 'hIAWms')
- }
-
- /**
- * 鍏抽敭瀛楁悳绱�
- */
- const onSearch = () => {
- tableRef.value?.getList({
- Filter: search.value,
- })
- }
-
- /**
- * 閲嶇疆琛ㄦ牸鏁版嵁
- */
- const reloadList = () => {
- tableRef.value?.getList()
- }
- /**
- * 涓婁紶鎴愬姛
- */
- const onSuccess = () => {
- tableRef.value?.getList()
- ElMessage.success('瀵煎叆鎴愬姛')
- }
- /**
- * 澶辫触
- * @param err
- */
- const onError = (err: any) => {
- try {
- const message = JSON.parse(err.message)
- ElMessage.error(message.msg)
- } catch (error) {
- ElMessage.error('瀵煎叆澶辫触')
- }
- }
- /**
- * 涓婁紶閽╁瓙
- */
- const onBeforeUpload = (file: File) => {
- const format = ['xlsx', 'xls', 'csv']
- if (!format.includes(file.name.split('.')[1])) {
- ElMessage.error('瀵煎叆鏂囦欢鏍煎紡涓嶆纭紝璇峰鍏�.xlsx/.xls涓�.csv鏍煎紡鐨勬枃浠�')
- return false
- }
- return true
- }
-
- onMounted(() => {
- headers.value = {
- Authorization: `Bearer ${sessionStorage.getItem('Token')}`,
- 'X-Project': sessionStorage.getItem('X-Project'),
- }
- })
-
- ctx.expose({
- reloadList,
- })
-
- return {
- dataSource,
- contextMenu,
- dialogConfig,
- dialogConfigForQuery,
- dialogSettingConfig,
- tableRef,
- current,
- search,
- sort,
- wmsMaterialColumns,
- paginationParams,
- headers,
- onBeforeUpload,
- onError,
- onSuccess,
- openDetail,
- onSearch,
- onExport,
- onRowClick,
- onConfirmWmsMaterial,
- onCheck,
- onAddWmsMaterial,
- onAdvancedQuery
- }
-}
+interface CurrentType {
+ row: any
+ index: number
+}
+export const useWmsMaterial = (props: any, ctx?: any) => {
+ const wmsMaterial = injectModel<WmsMaterial>('wmsMaterial')
+ const { exportFile } = useFile()
+ /**
+ * 澶撮儴閰嶇疆
+ */
+ const headers = ref({})
+ /**
+ * 鍔ㄦ�佸垪閰嶇疆
+ */
+ const wmsMaterialColumns = ref<Record<string, any>>([])
+ /**
+ * 鎼滅储鍊�
+ */
+ const search = ref('')
+
+ /**
+ * 鎺掑簭
+ */
+ const sort = ref(0)
+ /**
+ * 閫夋嫨椤�
+ */
+ const selection = ref([])
+ /**
+ * 褰撳墠閫変腑鐨勮
+ */
+ const current = ref<any>(null)
+ /**
+ * 鏁版嵁婧�
+ */
+ const dataSource: Ref<any[]> = ref([])
+
+ /**
+ * 琛ㄦ牸
+ */
+ const tableRef = ref()
+ const dialogConfig = reactive({
+ visible: false,
+ title: '',
+ isAdd: false,
+ })
+ const dialogConfigForQuery = reactive({
+ visible: false,
+ title: '',
+ isAdd: false,
+ })
+
+
+ const dialogSettingConfig = reactive({
+ visible: false,
+ title: '',
+ })
+
+ /**
+ * 鍒嗛〉鏁版嵁
+ */
+ const paginationParams = ref({})
+
+ /**
+ * 鎵撳紑璇︽儏
+ * @param row
+ */
+ const openDetail = (row: any) => {
+ current.value = row
+ dialogConfig.visible = true
+ dialogConfig.title = row.name
+ dialogConfig.isAdd = false
+ sort.value = row.sort
+ }
+
+ const contextMenu = [
+ {
+ label: '灞曞紑璇︽儏',
+ fn: (c: CurrentType) => {
+ current.value = null
+ sort.value = c.row.sort
+ nextTick(() => openDetail(c.row))
+ },
+ divided: true,
+ icon: 'o',
+ },
+ // {
+ // label: '鍚戜笂娣诲姞',
+ // fn: (c: CurrentType, pageNum: number) => {
+ // current.value = null
+ // sort.value = c.index + 1 + (pageNum - 1) * 50
+ // dialogConfig.visible = true
+ // dialogConfig.title = '娣诲姞'
+ // dialogConfig.isAdd = false
+ // },
+ // divided: true,
+ // icon: 'up',
+ // },
+ // {
+ // label: '鍚戜笅娣诲姞',
+ // fn: (c: CurrentType, pageNum: number) => {
+ // current.value = null
+ // sort.value = c.index + 2 + (pageNum - 1) * 50
+ // dialogConfig.visible = true
+ // dialogConfig.title = '娣诲姞'
+ // dialogConfig.isAdd = false
+ // },
+ // divided: true,
+ // icon: 'down',
+ // },
+ // {
+ // label: '鍒涘缓鍓湰',
+ // fn: async ({ row }: CurrentType) => {
+ // await wmsMaterial.cloneData([row.id])
+ // ElMessage.success('鍒涘缓鍓湰鎴愬姛')
+ // tableRef.value?.getList()
+ // },
+ // divided: true,
+ // icon: 'copy',
+ // },
+ {
+ label: '鍒犻櫎',
+ fn: async (c: CurrentType) => {
+ const names = selection.value.map((item: { name: string }) => item.name)
+ ConfirmBox(
+ `鏄惁鍒犻櫎${names.length ? names.join(',') : c.row.name}`
+ ).then(async () => {
+ const ids = selection.value.map((item: { id: string }) => item.id)
+ await wmsMaterial.deleteWmsMaterials(ids.length ? ids : [c.row.id])
+ ElMessage.success('鍒犻櫎鎴愬姛')
+ tableRef.value.getList()
+ })
+ },
+ icon: 'close',
+ },
+ ]
+
+ const onCheck = (records: any) => {
+ selection.value = records
+ }
+
+ const onAddWmsMaterial = () => {
+ const params = tableRef.value?.getPaginationParams()
+ current.value = null
+ dialogConfig.visible = true
+ dialogConfig.isAdd = true
+ dialogConfig.title = '娣诲姞'
+ sort.value = params.totalCount + 1
+ }
+
+ //鐐瑰嚮鎸夐挳銆愰珮绾ф煡璇€��
+ const onAdvancedQuery = () => {
+ const params = tableRef.value?.getPaginationParams()
+ current.value = null
+ dialogConfigForQuery.visible = true
+ dialogConfigForQuery.isAdd = true
+ dialogConfigForQuery.title = '楂樼骇鏌ヨ'
+ }
+
+ const onConfirmWmsMaterial = async () => {
+ dialogConfig.visible = false
+ if (dialogConfig.isAdd) {
+ tableRef.value?.scrollToRow({
+ skip: true,
+ })
+ } else {
+ await tableRef.value?.getList()
+ }
+ }
+ /**
+ * 琛岀偣鍑绘椂鏇存柊current
+ */
+ const onRowClick = ({ row }: any) => {
+ if (dialogConfig.visible && current.value) {
+ current.value = row
+ }
+ }
+ /**
+ * 瀵煎嚭
+ */
+ const onExport = (data={}) => {
+ //const params = tableRef.value?.getParams()
+ exportFile('/api/v1/hIAWms/wmsMaterial/export', data, 'hIAWms')
+ }
+
+ /**
+ * 鍏抽敭瀛楁悳绱�
+ */
+ const onSearch = () => {
+ tableRef.value?.getList({
+ Filter: search.value,
+ })
+ }
+
+ /**
+ * 閲嶇疆琛ㄦ牸鏁版嵁
+ */
+ const reloadList = () => {
+ tableRef.value?.getList()
+ }
+ /**
+ * 涓婁紶鎴愬姛
+ */
+ const onSuccess = () => {
+ tableRef.value?.getList()
+ ElMessage.success('瀵煎叆鎴愬姛')
+ }
+ /**
+ * 澶辫触
+ * @param err
+ */
+ const onError = (err: any) => {
+ try {
+ const message = JSON.parse(err.message)
+ ElMessage.error(message.msg)
+ } catch (error) {
+ ElMessage.error('瀵煎叆澶辫触')
+ }
+ }
+ /**
+ * 涓婁紶閽╁瓙
+ */
+ const onBeforeUpload = (file: File) => {
+ const format = ['xlsx', 'xls', 'csv']
+ if (!format.includes(file.name.split('.')[1])) {
+ ElMessage.error('瀵煎叆鏂囦欢鏍煎紡涓嶆纭紝璇峰鍏�.xlsx/.xls涓�.csv鏍煎紡鐨勬枃浠�')
+ return false
+ }
+ return true
+ }
+
+ onMounted(() => {
+ headers.value = {
+ Authorization: `Bearer ${sessionStorage.getItem('Token')}`,
+ 'X-Project': sessionStorage.getItem('X-Project'),
+ }
+ })
+
+ ctx.expose({
+ reloadList,
+ })
+
+ return {
+ dataSource,
+ contextMenu,
+ dialogConfig,
+ dialogConfigForQuery,
+ dialogSettingConfig,
+ tableRef,
+ current,
+ search,
+ sort,
+ wmsMaterialColumns,
+ paginationParams,
+ headers,
+ onBeforeUpload,
+ onError,
+ onSuccess,
+ openDetail,
+ onSearch,
+ onExport,
+ onRowClick,
+ onConfirmWmsMaterial,
+ onCheck,
+ onAddWmsMaterial,
+ onAdvancedQuery
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx"
index ad14d54..6cacc6e 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx"
@@ -1,317 +1,363 @@
-import {
- ref,
- onMounted,
- reactive,
- computed,
- Ref,
- watch,
- SetupContext,
- h,
-} from 'vue'
-import { injectModel } from '@/libs/Provider/Provider'
-import { WmsMaterialDrawer } from '../Models/WmsMaterialDrawer'
-import { ElMessage } from 'element-plus'
-import isEqual from 'lodash/isEqual'
-import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
-import { cloneDeep } from 'lodash'
-
-export const useWmsMaterialDrawer = (props: any, ctx?: any) => {
- const wmsMaterialDrawer = injectModel<WmsMaterialDrawer>('wmsMaterialDrawer')
- /**
- * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
- */
- const initiateData: Ref<Record<string, any>> = ref({})
- const formData = ref<Record<string, any>>({})
- // ref
- const formRef = ref()
-
- const disabled = ref(false)
-
- const current = computed(() => {
- return props.row || null
- })
-
- const inputNumber = (attrs) => {
- return (
- <el-input-number
- min="1"
- step="1"
- precision="0"
- {...attrs}
- ></el-input-number>
- )
- }
-
- const visible = computed({
- get() {
- return props.modelValue
- },
- set(val) {
- ctx.emit('update:modelValue', val)
- },
- })
- /**
- * 娣诲姞鐨刦orm瀛楁
- */
- const formItems = reactive([
- {
- label: '鐗╂枡缂栫爜',
- prop: 'materialCode',
- el: 'input',
- disabled: disabled,
- placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮�',
- rules: [{ required: true, message: '鐗╂枡缂栫爜涓嶈兘涓虹┖', trigger: 'blur' }],
- },
- {
- label: '鐗╂枡鍚嶇О',
- prop: 'materialName',
- el: 'input',
- placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
- rules: [{ required: true, message: '鐗╂枡鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' }],
- },
- {
- label: '閲囪喘绫诲瀷',
- prop: 'purchaseType',
- el: 'select',
- placeholder: '璇烽�夋嫨閲囪喘绫诲瀷',
- options: [],
- rules: [{ required: true, message: '璇烽�夋嫨閲囪喘绫诲瀷', trigger: 'change' }],
- },
- {
- label: '鐗╂枡绫诲瀷',
- prop: 'materialType',
- el: 'select',
- placeholder: '璇烽�夋嫨鐗╂枡绫诲瀷',
- options: [],
- rules: [{ required: true, message: '璇烽�夋嫨鐗╂枡绫诲瀷', trigger: 'change' }],
- },
- {
- label: '涓诲崟浣�',
- prop: 'primaryUnit',
- el: 'input',
- placeholder: '璇疯緭鍏ヤ富鍗曚綅(濡�: kg, m, 涓�)',
- },
- {
- label: '瑙勬牸/鏍囧噯',
- prop: 'standard',
- el: 'input',
- placeholder: '璇疯緭鍏ヨ鏍�/鏍囧噯(濡�: GB/T 8163-2018)',
- },
- {
- label: '澶栧緞(mm)',
- prop: 'outerDiameter',
- el: (props: any, { attrs }: SetupContext) => {
- return h(inputNumber, {
- ...props,
- clearable: true,
- ...attrs,
- })
- },
- width: '100%',
- placeholder: '璇疯緭鍏ュ寰�',
- step: 0.01,
- precision: 2,
- },
- {
- label: '澹佸帤(mm)',
- prop: 'wallThickness',
- el: (props: any, { attrs }: SetupContext) => {
- return h(inputNumber, {
- ...props,
- clearable: true,
- ...attrs,
- })
- },
- width: '100%',
- placeholder: '璇疯緭鍏ュ鍘�',
- step: 0.01,
- precision: 2,
- },
- {
- label: '鏉愯川',
- prop: 'materialQuality',
- el: 'input',
- placeholder: '璇疯緭鍏ユ潗璐�(濡�: 304涓嶉攬閽�)',
- },
- {
- label: '闀垮害(m)',
- prop: 'length',
- el: (props: any, { attrs }: SetupContext) => {
- return h(inputNumber, {
- ...props,
- clearable: true,
- ...attrs,
- })
- },
- width: '100%',
- placeholder: '璇疯緭鍏ラ暱搴�',
- step: 0.1,
- precision: 2,
- },
- {
- label: '鏄惁涓绘敮绠�',
- prop: 'isMainBranch',
- el: 'select',
- options: [],
- },
- {
- label: '鐢熶骇宸ュ巶',
- prop: 'factory',
- el: 'input',
- placeholder: '璇疯緭鍏ョ敓浜у伐鍘�',
- },
- {
- label: '璇佷功缂栧彿',
- prop: 'certification',
- el: 'input',
- placeholder: '璇疯緭鍏ヨ瘉涔︾紪鍙�',
- },
- {
- label: '澶囨敞',
- prop: 'remark',
- el: 'input',
- type: 'textarea',
- placeholder: '璇疯緭鍏ュ娉�',
- },
- ])
- /**
- * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
- */
- const checkIsEqualObject = () => {
- const data = {
- formData: formData.value,
- }
- const check = isEqual(initiateData.value, data)
- return check
- }
-
- const onClose = (done: () => void) => {
- if (visible.value) {
- if (checkIsEqualObject()) {
- visible.value = false
- done && done()
- } else {
- ConfirmBox('鏄惁淇濆瓨璁剧疆锛�')
- .then(() => {
- onConfirm()
- })
- .catch(() => {
- visible.value = false
- done && done()
- })
- }
- }
- }
- /**
- * 淇濆瓨
- */
- const onConfirm = async () => {
- await formRef.value?.validate()
- const data = {
- materialCode: formData.value.materialCode,
- materialName: formData.value.materialName,
- purchaseType: formData.value.purchaseType,
- materialType: formData.value.materialType,
- primaryUnit: formData.value.primaryUnit,
- standard: formData.value.standard,
- outerDiameter: formData.value.outerDiameter,
- wallThickness: formData.value.wallThickness,
- materialQuality: formData.value.materialQuality,
- length: formData.value.length,
- isMainBranch: formData.value.isMainBranch,
- factory: formData.value.factory,
- certification: formData.value.certification,
- remark: formData.value.remark,
- }
- if (!current.value) {
- await wmsMaterialDrawer.addWmsMaterial(data)
- } else {
- const id = current.value.id
- await wmsMaterialDrawer.updateWmsMaterial(id, data)
- }
- ElMessage.success('淇濆瓨鎴愬姛')
- ctx.emit('confirm')
- }
-
- const updateCheckData = () => {
- initiateData.value = {
- formData: {
- ...formData.value,
- },
- }
- }
- const updateFormItemOptions = (propName: string, enumData: any[]) => {
- const item = formItems.find((item) => item.prop === propName)
- if (item && enumData) {
- item.options = enumData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
- }
- }
- /**
- * 閫氱敤鏌ヨ鏋氫妇
- */
- const commonQueryEnumForFrom = async () => {
- const materialTypeEnum = await wmsMaterialDrawer.getWmsEnumData({
- EnumName: 'MaterialTypeEnum',
- })
- updateFormItemOptions('materialType', materialTypeEnum)
-
- const purchaseTypeEnum = await wmsMaterialDrawer.getWmsEnumData({
- EnumName: 'PurchaseTypeEnum',
- })
- updateFormItemOptions('purchaseType', purchaseTypeEnum)
-
- const yesOrNoTypeEnum = await wmsMaterialDrawer.getWmsEnumData({
- EnumName: 'YesNoEnum',
- })
- updateFormItemOptions('isMainBranch', yesOrNoTypeEnum)
- }
- commonQueryEnumForFrom()
- /**
- * 寮圭獥鎵撳紑鑾峰彇璇︽儏
- */
- const onOpen = async () => {
- if (current.value) {
- const res = await wmsMaterialDrawer.getWmsMaterialDetail(current.value)
-
- formData.value = {
- materialCode: res.materialCode,
- materialName: res.materialName,
- purchaseType: res.purchaseType,
- materialType: res.materialType,
- primaryUnit: res.primaryUnit,
- standard: res.standard,
- outerDiameter: res.outerDiameter,
- wallThickness: res.wallThickness,
- materialQuality: res.materialQuality,
- length: res.length,
- isMainBranch: res.isMainBranch,
- factory: res.factory,
- certification: res.certification,
- remark: res.remark,
- id: res.id,
- }
- disabled.value = true
- updateCheckData()
- } else {
- formData.value = {}
-
- disabled.value = false
- updateCheckData()
- }
- }
-
- watch(() => current.value, onOpen)
-
- return {
- formItems,
- formData,
- visible,
- formRef,
- onOpen,
- onClose,
- onConfirm,
- }
-}
+import {
+ ref,
+ onMounted,
+ reactive,
+ computed,
+ Ref,
+ watch,
+ SetupContext,
+ h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsMaterialDrawer } from '../Models/WmsMaterialDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsMaterialDrawer = (props: any, ctx?: any) => {
+ const wmsMaterialDrawer = injectModel<WmsMaterialDrawer>('wmsMaterialDrawer')
+ /**
+ * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+ */
+ const initiateData: Ref<Record<string, any>> = ref({})
+ const formData = ref<Record<string, any>>({})
+ // ref
+ const formRef = ref()
+
+ const disabled = ref(false)
+
+ const current = computed(() => {
+ return props.row || null
+ })
+
+ const inputNumber = (attrs) => {
+ return (
+ <el-input-number
+ min="1"
+ step="1"
+ precision="0"
+ {...attrs}
+ ></el-input-number>
+ )
+ }
+
+ const visible = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ ctx.emit('update:modelValue', val)
+ },
+ })
+ /**
+ * 娣诲姞鐨刦orm瀛楁
+ */
+ const formItems = reactive([
+ {
+ label: '鐗╂枡缂栫爜锛堝敮涓�鏍囪瘑锛�',
+ prop: 'materialCode',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮侊紙鍞竴鏍囪瘑锛�',
+ rules: [{required: true, message: '鐗╂枡缂栫爜锛堝敮涓�鏍囪瘑锛変笉鑳戒负绌�', trigger: 'blur' }],
+ },
+ {
+ label: '鐗╂枡鍚嶇О',
+ prop: 'materialName',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+ rules: [{required: true, message: '鐗╂枡鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '閲囪喘绫诲瀷锛堟灇涓惧�硷級',
+ prop: 'purchaseType',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ラ噰璐被鍨嬶紙鏋氫妇鍊硷級',
+ rules: [{required: true, message: '閲囪喘绫诲瀷锛堟灇涓惧�硷級涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '鐗╂枡绫诲瀷锛堟灇涓惧�硷級',
+ prop: 'materialType',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欑被鍨嬶紙鏋氫妇鍊硷級',
+ rules: [{required: true, message: '鐗╂枡绫诲瀷锛堟灇涓惧�硷級涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '涓诲崟浣嶏紙濡傦細kg銆乵銆佷釜锛�',
+ prop: 'primaryUnit',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヤ富鍗曚綅锛堝锛歬g銆乵銆佷釜锛�',
+ },
+ {
+ label: '瑙勬牸/鏍囧噯锛堝锛欸B/T 8163-2018锛�',
+ prop: 'standard',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヨ鏍�/鏍囧噯锛堝锛欸B/T 8163-2018锛�',
+ },
+ {
+ label: '澶栧緞锛堝崟浣嶏細mm锛�',
+ prop: 'outerDiameter',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ step: 0.01,
+ precision: 2,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ寰勶紙鍗曚綅锛歮m锛�',
+ rules: [{required: true, message: '澶栧緞锛堝崟浣嶏細mm锛変笉鑳戒负绌�', trigger: 'blur' }],
+ },
+ {
+ label: '澹佸帤锛堝崟浣嶏細mm锛�',
+ prop: 'wallThickness',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ step: 0.01,
+ precision: 2,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ鍘氾紙鍗曚綅锛歮m锛�',
+ rules: [{required: true, message: '澹佸帤锛堝崟浣嶏細mm锛変笉鑳戒负绌�', trigger: 'blur' }],
+ },
+ {
+ label: '鏉愯川锛堝锛�304涓嶉攬閽級',
+ prop: 'materialQuality',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ潗璐紙濡傦細304涓嶉攬閽級',
+ },
+ {
+ label: '闀垮害锛堝崟浣嶏細m锛�',
+ prop: 'length',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ step: 0.01,
+ precision: 2,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ラ暱搴︼紙鍗曚綅锛歮锛�',
+ rules: [{required: true, message: '闀垮害锛堝崟浣嶏細m锛変笉鑳戒负绌�', trigger: 'blur' }],
+ },
+ {
+ label: '鏄惁涓轰富鏀',
+ prop: 'isMainBranch',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ槸鍚︿负涓绘敮绠�',
+ rules: [{required: true, message: '鏄惁涓轰富鏀涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '鐢熶骇宸ュ巶',
+ prop: 'factory',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ敓浜у伐鍘�',
+ },
+ {
+ label: '璇佷功缂栧彿',
+ prop: 'certification',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヨ瘉涔︾紪鍙�',
+ },
+ {
+ label: '鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ prop: 'redundantField1',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ },
+ {
+ label: '鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ prop: 'redundantField2',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ },
+ {
+ label: '鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��',
+ prop: 'redundantField3',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�3 - 棰勭暀鎵╁睍鐢ㄩ��',
+ },
+ {
+ label: '澶囨敞',
+ prop: 'remark',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ娉�',
+ },
+ {
+ label: '鏄惁绂佺敤',
+ prop: 'isDisabled',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ槸鍚︾鐢�',
+ },
+ ])
+ /**
+ * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+ */
+ const checkIsEqualObject = () => {
+ const data = {
+ formData: formData.value,
+ }
+ const check = isEqual(initiateData.value, data)
+ return check
+ }
+
+ const onClose = (done: () => void) => {
+ if (visible.value) {
+ if (checkIsEqualObject()) {
+ visible.value = false
+ done && done()
+ } else {
+ ConfirmBox('鏄惁淇濆瓨璁剧疆锛�')
+ .then(() => {
+ onConfirm()
+ })
+ .catch(() => {
+ visible.value = false
+ done && done()
+ })
+ }
+ }
+ }
+ /**
+ * 淇濆瓨
+ */
+ const onConfirm = async () => {
+ await formRef.value?.validate()
+ const data = {
+ materialCode: formData.value.materialCode,
+materialName: formData.value.materialName,
+purchaseType: formData.value.purchaseType,
+materialType: formData.value.materialType,
+primaryUnit: formData.value.primaryUnit,
+standard: formData.value.standard,
+outerDiameter: formData.value.outerDiameter,
+wallThickness: formData.value.wallThickness,
+materialQuality: formData.value.materialQuality,
+length: formData.value.length,
+isMainBranch: formData.value.isMainBranch,
+factory: formData.value.factory,
+certification: formData.value.certification,
+redundantField1: formData.value.redundantField1,
+redundantField2: formData.value.redundantField2,
+redundantField3: formData.value.redundantField3,
+remark: formData.value.remark,
+isDisabled: formData.value.isDisabled,
+ }
+ if (!current.value) {
+ await wmsMaterialDrawer.addWmsMaterial(data)
+ } else {
+ const id = current.value.id
+ await wmsMaterialDrawer.updateWmsMaterial(id, data)
+ }
+ ElMessage.success('淇濆瓨鎴愬姛')
+ ctx.emit('confirm')
+ }
+
+ const updateCheckData = () => {
+ initiateData.value = {
+ formData: {
+ ...formData.value,
+ },
+ }
+ }
+ const updateFormItemOptions = (propName: string, enumData: any[]) => {
+ const item = formItems.find((item) => item.prop === propName)
+ if (item && enumData) {
+ item.options = enumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ }
+ }
+ /**
+ * 閫氱敤鏌ヨ鏋氫妇
+ */
+ const commonQueryEnumForFrom = async () => {
+ const purchaseTypeEnumEnum = await wmsMaterialDrawer.getWmsEnumData({
+ EnumName: 'PurchaseTypeEnum',
+})
+updateFormItemOptions('purchaseType', purchaseTypeEnumEnum)
+const materialTypeEnumEnum = await wmsMaterialDrawer.getWmsEnumData({
+ EnumName: 'MaterialTypeEnum',
+})
+updateFormItemOptions('materialType', materialTypeEnumEnum)
+const yesNoEnumEnum = await wmsMaterialDrawer.getWmsEnumData({
+ EnumName: 'YesNoEnum',
+})
+updateFormItemOptions('isMainBranch', yesNoEnumEnum)
+
+ }
+ commonQueryEnumForFrom()
+ /**
+ * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+ */
+ const onOpen = async () => {
+ if (current.value) {
+ const res = await wmsMaterialDrawer.getWmsMaterialDetail(current.value)
+
+ formData.value = {
+ materialCode: res.materialCode,
+materialName: res.materialName,
+purchaseType: res.purchaseType,
+materialType: res.materialType,
+primaryUnit: res.primaryUnit,
+standard: res.standard,
+outerDiameter: res.outerDiameter,
+wallThickness: res.wallThickness,
+materialQuality: res.materialQuality,
+length: res.length,
+isMainBranch: res.isMainBranch,
+factory: res.factory,
+certification: res.certification,
+redundantField1: res.redundantField1,
+redundantField2: res.redundantField2,
+redundantField3: res.redundantField3,
+remark: res.remark,
+isDisabled: res.isDisabled,
+ id: res.id,
+ }
+ disabled.value = true
+ updateCheckData()
+ } else {
+ formData.value = {}
+
+ disabled.value = false
+ updateCheckData()
+ }
+ }
+
+ watch(() => current.value, onOpen)
+
+ return {
+ formItems,
+ formData,
+ visible,
+ formRef,
+ onOpen,
+ onClose,
+ onConfirm,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialQueryDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialQueryDrawer.tsx"
index 8d9a9bd..4215656 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialQueryDrawer.tsx"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Controllers/WmsMaterialQueryDrawer.tsx"
@@ -1,296 +1,366 @@
-import {
- ref,
- onMounted,
- reactive,
- computed,
- Ref,
- watch,
- SetupContext,
- h,
-} from 'vue'
-import { injectModel } from '@/libs/Provider/Provider'
-import { WmsMaterialDrawer } from '../Models/WmsMaterialDrawer'
-import { ElMessage } from 'element-plus'
-import isEqual from 'lodash/isEqual'
-import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
-import { cloneDeep } from 'lodash'
-
-export const useWmsMaterialQueryDrawer = (props: any, ctx?: any) => {
- const wmsMaterialDrawer = injectModel<WmsMaterialDrawer>('WmsMaterialDrawer')
- /**
- * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
- */
- const initiateData: Ref<Record<string, any>> = ref({})
- const formData = ref<Record<string, any>>({})
- // ref
- const formRef = ref()
-
- const disabled = ref(false)
-
- const current = computed(() => {
- return props.row || null
- })
-
- const inputNumber = (attrs) => {
- return (
- <el-input-number
- min="1"
- step="1"
- precision="0"
- {...attrs}
- ></el-input-number>
- )
- }
-
-
- const visible = computed({
- get() {
- return props.modelValue
- },
- set(val) {
- ctx.emit('update:modelValue', val)
- },
- })
- /**
- * 娣诲姞鐨刦orm瀛楁
- */
- const formItems = reactive([
- {
- label: '鐗╂枡缂栫爜',
- prop: 'materialCode',
- el: 'input',
- disabled: disabled,
- placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮�',
- },
- {
- label: '鐗╂枡鍚嶇О',
- prop: 'materialName',
- el: 'input',
- placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
- },
- {
- label: '閲囪喘绫诲瀷',
- prop: 'purchaseType',
- el: 'select',
- placeholder: '璇烽�夋嫨閲囪喘绫诲瀷',
- options: [],
- },
- {
- label: '鐗╂枡绫诲瀷',
- prop: 'materialType',
- el: 'select',
- placeholder: '璇烽�夋嫨鐗╂枡绫诲瀷',
- options: [],
- },
- {
- label: '涓诲崟浣�',
- prop: 'primaryUnit',
- el: 'input',
- placeholder: '璇疯緭鍏ヤ富鍗曚綅(濡�: kg, m, 涓�)',
- },
- {
- label: '瑙勬牸/鏍囧噯',
- prop: 'standard',
- el: 'input',
- placeholder: '璇疯緭鍏ヨ鏍�/鏍囧噯(濡�: GB/T 8163-2018)',
- },
- {
- label: '澶栧緞(mm)',
- prop: 'outerDiameter',
- el: (props: any, { attrs }: SetupContext) => {
- return h(inputNumber, {
- ...props,
- clearable: true,
- ...attrs,
- })
- },
- width: '100%',
- placeholder: '璇疯緭鍏ュ寰�',
- step: 0.01,
- precision: 2,
- },
- {
- label: '澹佸帤(mm)',
- prop: 'wallThickness',
- el: (props: any, { attrs }: SetupContext) => {
- return h(inputNumber, {
- ...props,
- clearable: true,
- ...attrs,
- })
- },
- width: '100%',
- placeholder: '璇疯緭鍏ュ鍘�',
- step: 0.01,
- precision: 2,
- },
- {
- label: '鏉愯川',
- prop: 'materialQuality',
- el: 'input',
- placeholder: '璇疯緭鍏ユ潗璐�(濡�: 304涓嶉攬閽�)',
- },
- {
- label: '闀垮害(m)',
- prop: 'length',
- el: (props: any, { attrs }: SetupContext) => {
- return h(inputNumber, {
- ...props,
- clearable: true,
- ...attrs,
- })
- },
- width: '100%',
- placeholder: '璇疯緭鍏ラ暱搴�',
- step: 0.1,
- precision: 2,
- },
- {
- label: '鏄惁涓绘敮绠�',
- prop: 'isMainBranch',
- el: 'select',
- options: [],
- },
- {
- label: '鐢熶骇宸ュ巶',
- prop: 'factory',
- el: 'input',
- placeholder: '璇疯緭鍏ョ敓浜у伐鍘�',
- },
- {
- label: '璇佷功缂栧彿',
- prop: 'certification',
- el: 'input',
- placeholder: '璇疯緭鍏ヨ瘉涔︾紪鍙�',
- },
- {
- label: '澶囨敞',
- prop: 'remark',
- el: 'input',
- type: 'textarea',
- placeholder: '璇疯緭鍏ュ娉�',
- },
- ])
- /**
- * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
- */
- const checkIsEqualObject = () => {
- const data = {
- formData: formData.value,
- }
- const check = isEqual(initiateData.value, data)
- return check
- }
- const commonGetFormData=()=>{
- const data = {
- materialCode: formData.value.materialCode,
- materialName: formData.value.materialName,
- purchaseType: formData.value.purchaseType,
- materialType: formData.value.materialType,
- primaryUnit: formData.value.primaryUnit,
- standard: formData.value.standard,
- outerDiameter: formData.value.outerDiameter,
- wallThickness: formData.value.wallThickness,
- materialQuality: formData.value.materialQuality,
- length: formData.value.length,
- isMainBranch: formData.value.isMainBranch,
- factory: formData.value.factory,
- certification: formData.value.certification,
- remark: formData.value.remark,
- }
- return data;
- }
- const onClose = (done: () => void) => {
- if (visible.value) {
- visible.value = false
- const data =commonGetFormData();
- ctx.emit('close', data)
- }
- }
- /**
- * 纭鏌ヨ
- */
- const onConfirmQuery = async () => {
- const data =commonGetFormData();
- ctx.emit('confirmQuery', data)
- }
- /**
- * 閲嶇疆鏌ヨ
- */
- const onReset = async () => {
- formData.value = {}
- formData.value.materialCode = ''
- formData.value.materialName = ''
- formData.value.purchaseType = ''
- formData.value.materialType = ''
- formData.value.primaryUnit = ''
- formData.value.standard = ''
- formData.value.outerDiameter = ''
- formData.value.wallThickness = ''
- formData.value.materialQuality = ''
- formData.value.length = ''
- formData.value.isMainBranch = ''
- formData.value.factory = ''
- formData.value.certification = ''
- formData.value.remark = ''
- //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
- ctx.emit('restQuery');
- }
-
- const updateCheckData = () => {
- initiateData.value = {
- formData: {
- ...formData.value,
- },
- }
- }
- const updateFormItemOptions = (propName: string, enumData: any[]) => {
- const item = formItems.find((item) => item.prop === propName)
- if (item && enumData) {
- item.options = enumData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
- }
- }
- /**
- * 閫氱敤鏌ヨ鏋氫妇
- */
- const commonQueryEnumForFrom = async () => {
- const materialTypeEnum = await wmsMaterialDrawer.getWmsEnumData({
- EnumName: 'MaterialTypeEnum',
- })
- updateFormItemOptions('materialType', materialTypeEnum)
-
- const purchaseTypeEnum = await wmsMaterialDrawer.getWmsEnumData({
- EnumName: 'PurchaseTypeEnum',
- })
- updateFormItemOptions('purchaseType', purchaseTypeEnum)
-
- const yesOrNoTypeEnum = await wmsMaterialDrawer.getWmsEnumData({
- EnumName: 'YesNoEnum',
- })
- updateFormItemOptions('isMainBranch', yesOrNoTypeEnum)
- }
- commonQueryEnumForFrom()
- /**
- * 寮圭獥鎵撳紑鑾峰彇璇︽儏
- */
- const onOpen = async () => {
- disabled.value = false
- updateCheckData()
- }
-
- watch(() => current.value, onOpen)
-
- return {
- formItems,
- formData,
- visible,
- formRef,
- onOpen,
- onClose,
- onConfirmQuery,
- onReset,
- }
-}
+import {
+ ref,
+ onMounted,
+ reactive,
+ computed,
+ Ref,
+ watch,
+ SetupContext,
+ h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsMaterialDrawer } from '../Models/WmsMaterialDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsMaterialQueryDrawer = (props: any, ctx?: any) => {
+ const wmsMaterialDrawer = injectModel<WmsMaterialDrawer>('WmsMaterialDrawer')
+ /**
+ * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+ */
+ const initiateData: Ref<Record<string, any>> = ref({})
+ const formData = ref<Record<string, any>>({})
+ // ref
+ const formRef = ref()
+
+ const disabled = ref(false)
+
+ const current = computed(() => {
+ return props.row || null
+ })
+
+ const inputNumber = (attrs) => {
+ return (
+ <el-input-number
+ min="1"
+ step="1"
+ precision="0"
+ {...attrs}
+ ></el-input-number>
+ )
+ }
+
+
+ const visible = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ ctx.emit('update:modelValue', val)
+ },
+ })
+ /**
+ * 娣诲姞鐨刦orm瀛楁
+ */
+ const formItems = reactive([
+ {
+ label: '鐗╂枡缂栫爜锛堝敮涓�鏍囪瘑锛�',
+ prop: 'materialCode',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮侊紙鍞竴鏍囪瘑锛�',
+ },
+ {
+ label: '鐗╂枡鍚嶇О',
+ prop: 'materialName',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+ },
+ {
+ label: '閲囪喘绫诲瀷锛堟灇涓惧�硷級',
+ prop: 'purchaseType',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ラ噰璐被鍨嬶紙鏋氫妇鍊硷級',
+ },
+ {
+ label: '鐗╂枡绫诲瀷锛堟灇涓惧�硷級',
+ prop: 'materialType',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欑被鍨嬶紙鏋氫妇鍊硷級',
+ },
+ {
+ label: '涓诲崟浣嶏紙濡傦細kg銆乵銆佷釜锛�',
+ prop: 'primaryUnit',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヤ富鍗曚綅锛堝锛歬g銆乵銆佷釜锛�',
+ },
+ {
+ label: '瑙勬牸/鏍囧噯锛堝锛欸B/T 8163-2018锛�',
+ prop: 'standard',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヨ鏍�/鏍囧噯锛堝锛欸B/T 8163-2018锛�',
+ },
+ {
+ label: '澶栧緞锛堝崟浣嶏細mm锛�',
+ prop: 'outerDiameter',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ step: 0.01,
+ precision: 2,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ寰勶紙鍗曚綅锛歮m锛�',
+ },
+ {
+ label: '澹佸帤锛堝崟浣嶏細mm锛�',
+ prop: 'wallThickness',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ step: 0.01,
+ precision: 2,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ鍘氾紙鍗曚綅锛歮m锛�',
+ },
+ {
+ label: '鏉愯川锛堝锛�304涓嶉攬閽級',
+ prop: 'materialQuality',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ潗璐紙濡傦細304涓嶉攬閽級',
+ },
+ {
+ label: '闀垮害锛堝崟浣嶏細m锛�',
+ prop: 'length',
+ el: (props: any, { attrs }: SetupContext) => {
+ return h(inputNumber, {
+ ...props,
+ clearable: true,
+ ...attrs,
+ })
+ },
+ step: 0.01,
+ precision: 2,
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ラ暱搴︼紙鍗曚綅锛歮锛�',
+ },
+ {
+ label: '鏄惁涓轰富鏀',
+ prop: 'isMainBranch',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ槸鍚︿负涓绘敮绠�',
+ },
+ {
+ label: '鐢熶骇宸ュ巶',
+ prop: 'factory',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ敓浜у伐鍘�',
+ },
+ {
+ label: '璇佷功缂栧彿',
+ prop: 'certification',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヨ瘉涔︾紪鍙�',
+ },
+ {
+ label: '鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ prop: 'redundantField1',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�1 - 棰勭暀鎵╁睍鐢ㄩ��',
+ },
+ {
+ label: '鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ prop: 'redundantField2',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�2 - 棰勭暀鎵╁睍鐢ㄩ��',
+ },
+ {
+ label: '鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��',
+ prop: 'redundantField3',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ啑浣欏瓧娈�3 - 棰勭暀鎵╁睍鐢ㄩ��',
+ },
+ {
+ label: '澶囨敞',
+ prop: 'remark',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ娉�',
+ },
+ {
+ label: '鏄惁绂佺敤',
+ prop: 'isDisabled',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ槸鍚︾鐢�',
+ },
+ ])
+ /**
+ * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+ */
+ const checkIsEqualObject = () => {
+ const data = {
+ formData: formData.value,
+ }
+ const check = isEqual(initiateData.value, data)
+ return check
+ }
+ const commonGetFormData=()=>{
+ const data = {
+ MaterialCode: formData.value.MaterialCode,
+MaterialName: formData.value.MaterialName,
+PurchaseType: formData.value.PurchaseType,
+MaterialType: formData.value.MaterialType,
+PrimaryUnit: formData.value.PrimaryUnit,
+Standard: formData.value.Standard,
+OuterDiameter: formData.value.OuterDiameter,
+WallThickness: formData.value.WallThickness,
+MaterialQuality: formData.value.MaterialQuality,
+Length: formData.value.Length,
+IsMainBranch: formData.value.IsMainBranch,
+Factory: formData.value.Factory,
+Certification: formData.value.Certification,
+RedundantField1: formData.value.RedundantField1,
+RedundantField2: formData.value.RedundantField2,
+RedundantField3: formData.value.RedundantField3,
+Remark: formData.value.Remark,
+IsDisabled: formData.value.IsDisabled,
+ materialCode: formData.value.materialCode,
+ materialName: formData.value.materialName,
+ purchaseType: formData.value.purchaseType,
+ materialType: formData.value.materialType,
+ primaryUnit: formData.value.primaryUnit,
+ standard: formData.value.standard,
+ outerDiameter: formData.value.outerDiameter,
+ wallThickness: formData.value.wallThickness,
+ materialQuality: formData.value.materialQuality,
+ length: formData.value.length,
+ isMainBranch: formData.value.isMainBranch,
+ factory: formData.value.factory,
+ certification: formData.value.certification,
+ remark: formData.value.remark,
+ }
+ return data;
+ }
+ const onClose = (done: () => void) => {
+ if (visible.value) {
+ visible.value = false
+ const data =commonGetFormData();
+ ctx.emit('close', data)
+ }
+ }
+ /**
+ * 纭鏌ヨ
+ */
+ const onConfirmQuery = async () => {
+ const data =commonGetFormData();
+ ctx.emit('confirmQuery', data)
+ }
+ /**
+ * 閲嶇疆鏌ヨ
+ */
+ const onReset = async () => {
+ formData.value = {}
+ formData.value.MaterialCode = ''
+formData.value.MaterialName = ''
+formData.value.PurchaseType = ''
+formData.value.MaterialType = ''
+formData.value.PrimaryUnit = ''
+formData.value.Standard = ''
+formData.value.OuterDiameter = ''
+formData.value.WallThickness = ''
+formData.value.MaterialQuality = ''
+formData.value.Length = ''
+formData.value.IsMainBranch = ''
+formData.value.Factory = ''
+formData.value.Certification = ''
+formData.value.RedundantField1 = ''
+formData.value.RedundantField2 = ''
+formData.value.RedundantField3 = ''
+formData.value.Remark = ''
+formData.value.IsDisabled = ''
+ formData.value.materialCode = ''
+ formData.value.materialName = ''
+ formData.value.purchaseType = ''
+ formData.value.materialType = ''
+ formData.value.primaryUnit = ''
+ formData.value.standard = ''
+ formData.value.outerDiameter = ''
+ formData.value.wallThickness = ''
+ formData.value.materialQuality = ''
+ formData.value.length = ''
+ formData.value.isMainBranch = ''
+ formData.value.factory = ''
+ formData.value.certification = ''
+ formData.value.remark = ''
+ //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
+ ctx.emit('restQuery');
+ }
+
+ const updateCheckData = () => {
+ initiateData.value = {
+ formData: {
+ ...formData.value,
+ },
+ }
+ }
+ const updateFormItemOptions = (propName: string, enumData: any[]) => {
+ const item = formItems.find((item) => item.prop === propName)
+ if (item && enumData) {
+ item.options = enumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ }
+ }
+ /**
+ * 閫氱敤鏌ヨ鏋氫妇
+ */
+ const commonQueryEnumForFrom = async () => {
+ const purchaseTypeEnumEnum = await wmsMaterialDrawer.getWmsEnumData({
+ EnumName: 'PurchaseTypeEnum',
+})
+updateFormItemOptions('purchaseType', purchaseTypeEnumEnum)
+const materialTypeEnumEnum = await wmsMaterialDrawer.getWmsEnumData({
+ EnumName: 'MaterialTypeEnum',
+})
+updateFormItemOptions('materialType', materialTypeEnumEnum)
+const yesNoEnumEnum = await wmsMaterialDrawer.getWmsEnumData({
+ EnumName: 'YesNoEnum',
+})
+updateFormItemOptions('isMainBranch', yesNoEnumEnum)
+
+ }
+ commonQueryEnumForFrom()
+ /**
+ * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+ */
+ const onOpen = async () => {
+ disabled.value = false
+ updateCheckData()
+ }
+
+ watch(() => current.value, onOpen)
+
+ return {
+ formItems,
+ formData,
+ visible,
+ formRef,
+ onOpen,
+ onClose,
+ onConfirmQuery,
+ onReset,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterial.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterial.ts"
index 280ea76..ee101f4 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterial.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterial.ts"
@@ -1,30 +1,30 @@
-import { Base } from '@/libs/Base/Base'
-const request = Base.request
-
-/**
- * 娣诲姞
- * @returns
- */
-export const addWmsMaterial = (data: any) => {
- return request.post('/api/v1/hIAWms/wmsMaterial', data)
-}
-
-/**
- * 鎵归噺鍒犻櫎
- * @returns
- */
-export const deleteWmsMaterials = (ids: string[]) => {
- return request({
- data: ids,
- url: '/api/v1/hIAWms/wmsMaterial',
- method: 'delete',
- })
-}
-
-/**
- * 鍏嬮殕
- * @returns
- */
-export const cloneData = (data: any) => {
- return request.post('/api/v1/hIAWms/wmsMaterial/clone', data)
-}
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsMaterial = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsMaterial', data)
+}
+
+/**
+ * 鎵归噺鍒犻櫎
+ * @returns
+ */
+export const deleteWmsMaterials = (ids: string[]) => {
+ return request({
+ data: ids,
+ url: '/api/v1/HIAWms/wmsMaterial',
+ method: 'delete',
+ })
+}
+
+/**
+ * 鍏嬮殕
+ * @returns
+ */
+export const cloneData = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsMaterial/clone', data)
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialDrawer.ts"
index 3d1d318..61e3dec 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialDrawer.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialDrawer.ts"
@@ -1,58 +1,34 @@
-import { Base } from '@/libs/Base/Base'
-const request = Base.request
-
-/**
- * 娣诲姞
- * @returns
- */
-export const addWmsMaterial = (data: any) => {
- return request.post('/api/v1/hIAWms/wmsMaterial', data)
-}
-
-/**
- * 鑾峰彇璇︽儏
- * @returns
- */
-export const getWmsMaterial = (id: string) => {
- return request.get(`/api/v1/hIAWms/wmsMaterial/${id}`)
-}
-
-/**
- * 鏇存柊
- * @returns
- */
-export const updateWmsMaterial = (id: string, data: Record<string, any>) => {
- return request.put(`/api/v1/hIAWms/wmsMaterial/${id}`, data)
-}
-
-/**
- * 鑾峰彇鏋氫妇
- * @returns
- */
-export const getWmsEnumData = (data: any) => {
- return request.post('/api/v1/hIAWms/WmsEnum', data)
-}
-
-// /**
-// * 鑾峰彇鐗╂枡鍩虹鍒楄〃
-// * @returns
-// */
-// export const getWmsDataList = (data: any) => {
-// return request.post('/api/v1/hIAWms/wmsmaterial/page', data)
-// }
-
-/**
- * 鑾峰彇浠撳簱鍒楄〃
- * @returns
- */
-export const getStoreDataList = () => {
- return request.get('/api/v1/hIAWms/WmsEnum/StoreList')
-}
-
-/**
- * 鑾峰彇搴撳尯鍒楄〃
- * @returns
- */
-export const getAreaAreaDataList = () => {
- return request.get('/api/v1/hIAWms/WmsEnum/AreaList')
-}
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsMaterial = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsMaterial', data)
+}
+
+/**
+ * 鑾峰彇璇︽儏
+ * @returns
+ */
+export const getWmsMaterial = (id: string) => {
+ return request.get(`/api/v1/HIAWms/wmsMaterial/${id}`)
+}
+
+/**
+ * 鏇存柊
+ * @returns
+ */
+export const updateWmsMaterial = (id: string, data: Record<string, any>) => {
+ return request.put(`/api/v1/HIAWms/wmsMaterial/${id}`, data)
+}
+
+/**
+ * 鑾峰彇鏋氫妇
+ * @returns
+ */
+export const getWmsEnumData = (data: any) => {
+ return request.post('/api/v1/HIAWms/WmsEnum', data)
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialQueryDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialQueryDrawer.ts"
index a31f0fa..b88dd84 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialQueryDrawer.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/Service/WmsMaterialQueryDrawer.ts"
@@ -1,58 +1,35 @@
-import { Base } from '@/libs/Base/Base'
-const request = Base.request
-
-/**
- * 娣诲姞
- * @returns
- */
-export const addWmsMaterial = (data: any) => {
- return request.post('/api/v1/hIAWms/wmsMaterial', data)
-}
-
-/**
- * 鑾峰彇璇︽儏
- * @returns
- */
-export const getWmsMaterial = (id: string) => {
- return request.get(`/api/v1/hIAWms/wmsMaterial/${id}`)
-}
-
-/**
- * 鏇存柊
- * @returns
- */
-export const updateWmsMaterial = (id: string, data: Record<string, any>) => {
- return request.put(`/api/v1/hIAWms/wmsMaterial/${id}`, data)
-}
-
-/**
- * 鑾峰彇鏋氫妇
- * @returns
- */
-export const getWmsEnumData = (data: any) => {
- return request.post('/api/v1/hIAWms/WmsEnum', data)
-}
-
-/**
- * 鑾峰彇鐗╂枡鍩虹鍒楄〃
- * @returns
- */
-export const getWmsDataList = (data: any) => {
- return request.post('/api/v1/hIAWms/wmsmaterial/page', data)
-}
-
-/**
- * 鑾峰彇浠撳簱鍒楄〃
- * @returns
- */
-export const getStoreDataList = () => {
- return request.get('/api/v1/hIAWms/WmsEnum/StoreList')
-}
-
-/**
- * 鑾峰彇搴撳尯鍒楄〃
- * @returns
- */
-export const getAreaAreaDataList = () => {
- return request.get('/api/v1/hIAWms/WmsEnum/AreaList')
-}
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsMaterial = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsMaterial', data)
+}
+
+/**
+ * 鑾峰彇璇︽儏
+ * @returns
+ */
+export const getWmsMaterial = (id: string) => {
+ return request.get(`/api/v1/HIAWms/wmsMaterial/${id}`)
+}
+
+/**
+ * 鏇存柊
+ * @returns
+ */
+export const updateWmsMaterial = (id: string, data: Record<string, any>) => {
+ return request.put(`/api/v1/HIAWms/wmsMaterial/${id}`, data)
+}
+
+/**
+ * 鑾峰彇鏋氫妇
+ * @returns
+ */
+export const getWmsEnumData = (data: any) => {
+ return request.post('/api/v1/HIAWms/WmsEnum', data)
+}
+
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterial.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterial.ts"
index be93eca..faa9d62 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterial.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterial.ts"
@@ -1,41 +1,41 @@
-import { Base } from '@/libs/Base/Base'
-import {
- deleteWmsMaterials,
- addWmsMaterial,
- cloneData,
-} from './Service/WmsMaterial'
-
-export class WmsMaterial extends Base<{ [key: string]: any }> {
- constructor() {
- super({
- data: [],
- })
- }
- onMounted() {}
- /**
- * 鍒犻櫎
- * @param id
- * @returns
- */
- async deleteWmsMaterials(ids: string[]) {
- return deleteWmsMaterials(ids)
- }
-
- /**
- * 娣诲姞鏁版嵁
- * @param data
- * @returns
- */
- addWmsMaterial(data: Record<string, any>) {
- return addWmsMaterial(data)
- }
-
- /**
- * 鍏嬮殕
- * @param ids
- * @returns
- */
- cloneData(ids: string[]) {
- return cloneData(ids)
- }
-}
+import { Base } from '@/libs/Base/Base'
+import {
+ deleteWmsMaterials,
+ addWmsMaterial,
+ cloneData,
+} from './Service/WmsMaterial'
+
+export class WmsMaterial extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ })
+ }
+ onMounted() {}
+ /**
+ * 鍒犻櫎
+ * @param id
+ * @returns
+ */
+ async deleteWmsMaterials(ids: string[]) {
+ return deleteWmsMaterials(ids)
+ }
+
+ /**
+ * 娣诲姞鏁版嵁
+ * @param data
+ * @returns
+ */
+ addWmsMaterial(data: Record<string, any>) {
+ return addWmsMaterial(data)
+ }
+
+ /**
+ * 鍏嬮殕
+ * @param ids
+ * @returns
+ */
+ cloneData(ids: string[]) {
+ return cloneData(ids)
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialDrawer.ts"
index 4194408..2129a69 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialDrawer.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialDrawer.ts"
@@ -1,44 +1,44 @@
-import { Base } from '@/libs/Base/Base'
-import {
- addWmsMaterial,
- getWmsMaterial,
- updateWmsMaterial,
- getWmsEnumData,
-} from './Service/WmsMaterialDrawer'
-import { useGlobalState } from '@/libs/Store/Store'
-
-export class WmsMaterialDrawer extends Base<{ [key: string]: any }> {
- constructor() {
- super({
- data: [],
- wmsMaterial: {},
- })
- }
-
- /**
- * 娣诲姞
- * @param data
- */
- async addWmsMaterial(data: Record<string, any>) {
- return addWmsMaterial(data)
- }
- /**
- * 鏇存柊
- * @param data
- */
- async updateWmsMaterial(id: string, data: Record<string, any>) {
- return updateWmsMaterial(id, data)
- }
-
- /**
- * 鑾峰彇璇︽儏
- */
- async getWmsMaterialDetail(current: any, id?: string) {
- return getWmsMaterial(id || current?.id)
- }
-
- // 鑾峰彇鏋氫妇鍊�
- async getWmsEnumData(data: Record<string, any>) {
- return getWmsEnumData(data)
- }
-}
+import { Base } from '@/libs/Base/Base'
+import {
+ addWmsMaterial,
+ getWmsMaterial,
+ updateWmsMaterial,
+ getWmsEnumData,
+} from './Service/WmsMaterialDrawer'
+import { useGlobalState } from '@/libs/Store/Store'
+
+export class WmsMaterialDrawer extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ wmsMaterial: {},
+ })
+ }
+
+ /**
+ * 娣诲姞
+ * @param data
+ */
+ async addWmsMaterial(data: Record<string, any>) {
+ return addWmsMaterial(data)
+ }
+ /**
+ * 鏇存柊
+ * @param data
+ */
+ async updateWmsMaterial(id: string, data: Record<string, any>) {
+ return updateWmsMaterial(id, data)
+ }
+
+ /**
+ * 鑾峰彇璇︽儏
+ */
+ async getWmsMaterialDetail(current: any, id?: string) {
+ return getWmsMaterial(id || current?.id)
+ }
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialQueryDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialQueryDrawer.ts"
index 9818421..ca0ed17 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialQueryDrawer.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Models/WmsMaterialQueryDrawer.ts"
@@ -1,44 +1,44 @@
-import { Base } from '@/libs/Base/Base'
-import {
- addWmsMaterial,
- getWmsMaterial,
- updateWmsMaterial,
- getWmsEnumData,
-} from './Service/WmsMaterialQueryDrawer'
-import { useGlobalState } from '@/libs/Store/Store'
-
-export class WmsMaterialQueryDrawer extends Base<{ [key: string]: any }> {
- constructor() {
- super({
- data: [],
- wmsMaterial: {},
- })
- }
-
- /**
- * 娣诲姞
- * @param data
- */
- async addWmsMaterial(data: Record<string, any>) {
- return addWmsMaterial(data)
- }
- /**
- * 鏇存柊
- * @param data
- */
- async updateWmsMaterial(id: string, data: Record<string, any>) {
- return updateWmsMaterial(id, data)
- }
-
- /**
- * 鑾峰彇璇︽儏
- */
- async getWmsMaterialDetail(current: any, id?: string) {
- return getWmsMaterial(id || current?.id)
- }
-
- // 鑾峰彇鏋氫妇鍊�
- async getWmsEnumData(data: Record<string, any>) {
- return getWmsEnumData(data)
- }
-}
+import { Base } from '@/libs/Base/Base'
+import {
+ addWmsMaterial,
+ getWmsMaterial,
+ updateWmsMaterial,
+ getWmsEnumData,
+} from './Service/WmsMaterialQueryDrawer'
+import { useGlobalState } from '@/libs/Store/Store'
+
+export class WmsMaterialQueryDrawer extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ wmsMaterial: {},
+ })
+ }
+
+ /**
+ * 娣诲姞
+ * @param data
+ */
+ async addWmsMaterial(data: Record<string, any>) {
+ return addWmsMaterial(data)
+ }
+ /**
+ * 鏇存柊
+ * @param data
+ */
+ async updateWmsMaterial(id: string, data: Record<string, any>) {
+ return updateWmsMaterial(id, data)
+ }
+
+ /**
+ * 鑾峰彇璇︽儏
+ */
+ async getWmsMaterialDetail(current: any, id?: string) {
+ return getWmsMaterial(id || current?.id)
+ }
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.module.scss"
index 9c17b51..82be026 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.module.scss"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.module.scss"
@@ -1,7 +1,7 @@
-.HIAWms {
- background-color: #fff;
- border-radius: 5px 5px 0 0;
- width: 100%;
- height: 100%;
- border: 1px solid #dbdbdb;
-}
+.HIAWms {
+ background-color: #fff;
+ border-radius: 5px 5px 0 0;
+ width: 100%;
+ height: 100%;
+ border: 1px solid #dbdbdb;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.tsx"
index 7e8b462..b8b946b 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.tsx"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/HIAWms.tsx"
@@ -1,81 +1,80 @@
-import {
- Component,
- DefineComponent,
- defineComponent,
- markRaw,
- ref,
- SetupContext,
- onMounted,
-} from 'vue'
-import styles from './HIAWms.module.scss'
-// import WmsContainer from './Pages/HIAWms/WmsContainer'
-import Tab from '@/components/Tab/Tab'
-import { useProvideModels } from '@/libs/Provider/app'
-import { usePermission } from '@/libs/Permission/Permission'
-import { permissionCodes } from '../enum'
-import { ModuleType, TabItem } from '../type/Type'
-import { getEntityNames } from '@/hooks/hook'
-import TabPane from '@/components/Tab/TabPane'
-
-const Models: ModuleType = import.meta.glob('./config/*.json', {
- eager: true,
-})
-
-const entityNames = getEntityNames(Models)
-
-const nameToLabelMap = [{ name: 'WmsMaterial', label: '鐗╂枡鍩虹' }]
-
-export default defineComponent({
- name: 'HIAWms',
-
- setup(props, ctx: SetupContext) {
- useProvideModels()
- usePermission(props, permissionCodes)
-
- const rf = ref<{
- [key: string]: any
- }>({})
-
- const tabData = ref<TabItem[]>([])
-
- const onTabChange = (v: string) => {
- rf.value?.[v]?.reloadList()
- }
-
- const initTableData = async () => {
- for (const i in entityNames) {
- const name = entityNames[i]
- const module = await import(`./Pages/${name}/${name}.tsx`)
- const WmsMaterial = markRaw(module.default)
- const foundLabel =
- nameToLabelMap.find((item) => item.name === name)?.label || name
- tabData.value.push({
- label: foundLabel,
- name,
- component: WmsMaterial,
- })
- }
- }
-
- initTableData()
-
- return () => {
- return (
- <div class={styles.HIAWms}>
- <Tab data={tabData.value} type="list" onTab={onTabChange}>
- {tabData.value.map((widgetInfo) => {
- const Widget: any = widgetInfo.component
- return (
- <TabPane label={widgetInfo.label} name={widgetInfo.name}>
- <Widget
- ref={(r: any) => (rf.value['WmsMaterial'] = r)}
- ></Widget>
- </TabPane>
- )
- })}
- </Tab>
- </div>
- )
- }
- },
-})
+import {
+ Component,
+ DefineComponent,
+ defineComponent,
+ markRaw,
+ ref,
+ SetupContext,
+ onMounted,
+} from 'vue'
+import styles from './HIAWms.module.scss'
+import Tab from '@/components/Tab/Tab'
+import { useProvideModels } from '@/libs/Provider/app'
+import { usePermission } from '@/libs/Permission/Permission'
+import { permissionCodes } from '../enum'
+import { ModuleType, TabItem } from '../type/Type'
+import { getEntityNames } from '@/hooks/hook'
+import TabPane from '@/components/Tab/TabPane'
+
+const Models: ModuleType = import.meta.glob('./config/*.json', {
+ eager: true,
+})
+
+const entityNames = getEntityNames(Models)
+
+const nameToLabelMap = [{ name: 'WmsMaterial', label: '鐗╂枡淇℃伅' }]
+
+export default defineComponent({
+ name: 'HIAWms',
+
+ setup(props, ctx: SetupContext) {
+ useProvideModels()
+ usePermission(props, permissionCodes)
+
+ const rf = ref<{
+ [key: string]: any
+ }>({})
+
+ const tabData = ref<TabItem[]>([])
+
+ const onTabChange = (v: string) => {
+ rf.value?.[v]?.reloadList()
+ }
+
+ const initTableData = async () => {
+ for (const i in entityNames) {
+ const name = entityNames[i]
+ const module = await import(`./Pages/${name}/${name}.tsx`)
+ const WmsMaterial = markRaw(module.default)
+ const foundLabel =
+ nameToLabelMap.find((item) => item.name === name)?.label || name
+ tabData.value.push({
+ label: foundLabel,
+ name,
+ component: WmsMaterial,
+ })
+ }
+ }
+
+ initTableData()
+
+ return () => {
+ return (
+ <div class={styles.HIAWms}>
+ <Tab data={tabData.value} type="list" onTab={onTabChange}>
+ {tabData.value.map((widgetInfo) => {
+ const Widget: any = widgetInfo.component
+ return (
+ <TabPane label={widgetInfo.label} name={widgetInfo.name}>
+ <Widget
+ ref={(r: any) => (rf.value['WmsMaterial'] = r)}
+ ></Widget>
+ </TabPane>
+ )
+ })}
+ </Tab>
+ </div>
+ )
+ }
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.module.scss"
index 98607dd..177adca 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.module.scss"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.module.scss"
@@ -1,3 +1,3 @@
-.drawer {
- width: 800px;
-}
+.drawer {
+ width: 800px;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.tsx"
index 50ad20c..e24b256 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.tsx"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialDrawer/WmsMaterialDrawer.tsx"
@@ -1,61 +1,61 @@
-import { SetupContext, defineComponent } from 'vue'
-import BaseDrawer from '@/components/BaseDrawer/BaseDrawer'
-import styles from './WmsMaterialDrawer.module.scss'
-import { useWmsMaterialDrawer } from '../../../../Controllers/WmsMaterialDrawer.tsx'
-import DyForm from '@/components/DyForm/DyForm'
-
-// @ts-ignore
-export default defineComponent<{
- [key: string]: any
-}>({
- name: '寮圭獥',
- props: {
- modelValue: {
- type: Boolean,
- default: false,
- },
- title: {
- type: String,
- default: '',
- },
- row: {
- type: Object,
- },
- sort: {
- type: Number,
- default: 0,
- },
- },
- emits: ['update:modelValue', 'close', 'submit', 'confirm'],
- setup(props: Record<string, any>, ctx: SetupContext) {
- const {
- onClose,
- onConfirm,
- onOpen,
- formRef,
- visible,
- formItems,
- formData,
- } = useWmsMaterialDrawer(props, ctx)
- return () => (
- <BaseDrawer
- class={styles.drawer}
- size="800px"
- title={props.title || '娣诲姞'}
- v-model={visible.value}
- close-on-click-modal={true}
- onConfirm={onConfirm}
- onOpen={onOpen}
- before-close={onClose}
- onClose={onClose}
- >
- <DyForm
- ref={formRef}
- formData={formData.value}
- labelWidth="106px"
- formItemProps={formItems}
- ></DyForm>
- </BaseDrawer>
- )
- },
-})
+import { SetupContext, defineComponent } from 'vue'
+import BaseDrawer from '@/components/BaseDrawer/BaseDrawer'
+import styles from './WmsMaterialDrawer.module.scss'
+import { useWmsMaterialDrawer } from '../../../../Controllers/WmsMaterialDrawer.tsx'
+import DyForm from '@/components/DyForm/DyForm'
+
+// @ts-ignore
+export default defineComponent<{
+ [key: string]: any
+}>({
+ name: '寮圭獥',
+ props: {
+ modelValue: {
+ type: Boolean,
+ default: false,
+ },
+ title: {
+ type: String,
+ default: '',
+ },
+ row: {
+ type: Object,
+ },
+ sort: {
+ type: Number,
+ default: 0,
+ },
+ },
+ emits: ['update:modelValue', 'close', 'submit', 'confirm'],
+ setup(props: Record<string, any>, ctx: SetupContext) {
+ const {
+ onClose,
+ onConfirm,
+ onOpen,
+ formRef,
+ visible,
+ formItems,
+ formData,
+ } = useWmsMaterialDrawer(props, ctx)
+ return () => (
+ <BaseDrawer
+ class={styles.drawer}
+ size="800px"
+ title={props.title || '娣诲姞'}
+ v-model={visible.value}
+ close-on-click-modal={true}
+ onConfirm={onConfirm}
+ onOpen={onOpen}
+ before-close={onClose}
+ onClose={onClose}
+ >
+ <DyForm
+ ref={formRef}
+ formData={formData.value}
+ labelWidth="106px"
+ formItemProps={formItems}
+ ></DyForm>
+ </BaseDrawer>
+ )
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.module.scss"
index 98607dd..177adca 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.module.scss"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.module.scss"
@@ -1,3 +1,3 @@
-.drawer {
- width: 800px;
-}
+.drawer {
+ width: 800px;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.tsx"
index 1b080df..df1e463 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.tsx"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer.tsx"
@@ -1,71 +1,71 @@
-/*
- * 鐗╂枡鍩虹淇℃伅鏌ヨ寮瑰嚭妗�
-*/
-import { SetupContext, defineComponent } from 'vue'
-import BaseQueryDrawer from '@/components/BaseQueryDrawer/BaseQueryDrawer'
-import styles from './WmsMaterialQueryDrawer.module.scss'
-import { useWmsMaterialQueryDrawer } from '../../../../Controllers/WmsMaterialQueryDrawer.tsx'
-import DyForm from '@/components/DyForm/DyForm'
-
-// @ts-ignore
-export default defineComponent<{
- [key: string]: any
-}>({
- name: '寮圭獥',
- props: {
- //鏋氫妇绫诲瀷瀛楀吀
- enumListDict:{
- type: Array as () => Array<{ key: string; value: object }>, // 瀹氫箟鏁扮粍鍏冪礌绫诲瀷
- default: () => [] // 榛樿鍊�
- },
- modelValue: {
- type: Boolean,
- default: false,
- },
- title: {
- type: String,
- default: '',
- },
- row: {
- type: Object,
- },
- sort: {
- type: Number,
- default: 0,
- },
- },
- emits: ['update:modelValue', 'close', 'submit', 'confirmquery1'],
- setup(props: Record<string, any>, ctx: SetupContext) {
- const {
- onClose,
- onConfirmQuery,
- onOpen,
- onReset,
- formRef,
- visible,
- formItems,
- formData,
- } = useWmsMaterialQueryDrawer(props, ctx)
- return () => (
- <BaseQueryDrawer
- class={styles.drawer}
- size="800px"
- title={props.title || '楂樼骇鏌ヨ'}
- v-model={visible.value}
- close-on-click-modal={true}
- onReset={onReset}
- onConfirmQueryForBase={onConfirmQuery}
- onOpen={onOpen}
- before-close={onClose}
- onClose={onClose}
- >
- <DyForm
- ref={formRef}
- formData={formData.value}
- labelWidth="106px"
- formItemProps={formItems}
- ></DyForm>
- </BaseQueryDrawer>
- )
- },
-})
+/*
+ * 鐗╂枡鍩虹淇℃伅鏌ヨ寮瑰嚭妗�
+*/
+import { SetupContext, defineComponent } from 'vue'
+import BaseQueryDrawer from '@/components/BaseQueryDrawer/BaseQueryDrawer'
+import styles from './WmsMaterialQueryDrawer.module.scss'
+import { useWmsMaterialQueryDrawer } from '../../../../Controllers/WmsMaterialQueryDrawer.tsx'
+import DyForm from '@/components/DyForm/DyForm'
+
+// @ts-ignore
+export default defineComponent<{
+ [key: string]: any
+}>({
+ name: '寮圭獥',
+ props: {
+ //鏋氫妇绫诲瀷瀛楀吀
+ enumListDict:{
+ type: Array as () => Array<{ key: string; value: object }>, // 瀹氫箟鏁扮粍鍏冪礌绫诲瀷
+ default: () => [] // 榛樿鍊�
+ },
+ modelValue: {
+ type: Boolean,
+ default: false,
+ },
+ title: {
+ type: String,
+ default: '',
+ },
+ row: {
+ type: Object,
+ },
+ sort: {
+ type: Number,
+ default: 0,
+ },
+ },
+ emits: ['update:modelValue', 'close', 'submit', 'confirmquery1'],
+ setup(props: Record<string, any>, ctx: SetupContext) {
+ const {
+ onClose,
+ onConfirmQuery,
+ onOpen,
+ onReset,
+ formRef,
+ visible,
+ formItems,
+ formData,
+ } = useWmsMaterialQueryDrawer(props, ctx)
+ return () => (
+ <BaseQueryDrawer
+ class={styles.drawer}
+ size="800px"
+ title={props.title || '楂樼骇鏌ヨ'}
+ v-model={visible.value}
+ close-on-click-modal={true}
+ onReset={onReset}
+ onConfirmQueryForBase={onConfirmQuery}
+ onOpen={onOpen}
+ before-close={onClose}
+ onClose={onClose}
+ >
+ <DyForm
+ ref={formRef}
+ formData={formData.value}
+ labelWidth="106px"
+ formItemProps={formItems}
+ ></DyForm>
+ </BaseQueryDrawer>
+ )
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/Config.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/Config.ts"
index 2b0e6f5..eb67834 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/Config.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/Config.ts"
@@ -1,63 +1,91 @@
-export const columns = [
- {
- type: 'seq',
- width: 60,
- title: '搴忓彿',
- },
- {
- field: 'materialCode',
- title: '鐗╂枡缂栫爜',
- },
- {
- field: 'materialName',
- title: '鐗╂枡鍚嶇О',
- },
- {
- field: 'purchaseTypeDesc',
- title: '閲囪喘绫诲瀷',
- },
- {
- field: 'materialTypeDesc',
- title: '鐗╂枡绫诲瀷',
- },
- {
- field: 'primaryUnit',
- title: '涓诲崟浣�',
- },
- {
- field: 'standard',
- title: '瑙勬牸/鏍囧噯',
- },
- {
- field: 'outerDiameter',
- title: '澶栧緞(mm)',
- },
- {
- field: 'wallThickness',
- title: '澹佸帤(mm)',
- },
- {
- field: 'materialQuality',
- title: '鏉愯川',
- },
- {
- field: 'length',
- title: '闀垮害(m)',
- },
- {
- field: 'isMainBranchDesc',
- title: '鏄惁涓绘敮绠�',
- },
- {
- field: 'factory',
- title: '鐢熶骇宸ュ巶',
- },
- {
- field: 'certification',
- title: '璇佷功缂栧彿',
- },
- {
- field: 'remark',
- title: '澶囨敞',
- },
-]
+export const columns = [
+ {
+ type: 'seq',
+ width: 60,
+ title: '搴忓彿',
+ },
+ {
+ field: 'materialCode',
+ title: '鐗╂枡缂栫爜锛堝敮涓�鏍囪瘑锛�',
+},
+{
+ field: 'materialName',
+ title: '鐗╂枡鍚嶇О',
+},
+{
+ field: 'purchaseTypeDesc',
+ title: '閲囪喘绫诲瀷锛堟灇涓惧�硷級',
+},
+{
+ field: 'materialTypeDesc',
+ title: '鐗╂枡绫诲瀷锛堟灇涓惧�硷級',
+},
+{
+ field: 'primaryUnit',
+ title: '涓诲崟浣嶏紙濡傦細kg銆乵銆佷釜锛�',
+},
+{
+ field: 'standard',
+ title: '瑙勬牸/鏍囧噯锛堝锛欸B/T 8163-2018锛�',
+},
+{
+ field: 'outerDiameter',
+ title: '澶栧緞锛堝崟浣嶏細mm锛�',
+},
+{
+ field: 'wallThickness',
+ title: '澹佸帤锛堝崟浣嶏細mm锛�',
+},
+{
+ field: 'materialQuality',
+ title: '鏉愯川锛堝锛�304涓嶉攬閽級',
+},
+{
+ field: 'length',
+ title: '闀垮害锛堝崟浣嶏細m锛�',
+},
+{
+ field: 'isMainBranchDesc',
+ title: '鏄惁涓轰富鏀',
+},
+{
+ field: 'factory',
+ title: '鐢熶骇宸ュ巶',
+},
+{
+ field: 'certification',
+ title: '璇佷功缂栧彿',
+},
+{
+ field: 'redundantField1',
+ title: '鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��',
+},
+{
+ field: 'redundantField2',
+ title: '鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��',
+},
+{
+ field: 'redundantField3',
+ title: '鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��',
+},
+{
+ field: 'sort',
+ title: '鎺掑簭',
+},
+{
+ field: 'remark',
+ title: '澶囨敞',
+},
+{
+ field: 'isDisabled',
+ title: '鏄惁绂佺敤',
+},
+{
+ field: 'creationTime',
+ title: '',
+},
+{
+ field: 'deletionTime',
+ title: '',
+},
+]
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.module.scss"
index 931ea3a..a29837b 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.module.scss"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.module.scss"
@@ -1,113 +1,113 @@
-.wmsMaterialContent {
- width: 100%;
- height: 100%;
-
- .wmsMaterialList {
- width: 100%;
- height: calc(100% - 70px);
- }
- .headerContent {
- display: flex;
- justify-content: space-between;
- align-items: center;
- height: 43px;
- }
- .header {
- margin-bottom: 12px;
- display: flex;
- justify-content: flex-start;
- align-items: center;
- }
-}
-
-.tagBox {
- width: auto;
- min-width: 80px;
- height: 24px;
- background: #ffffff;
- border-radius: 19px 19px 19px 19px;
- opacity: 1;
- border: 1px dashed #bcc4cc;
- width: 50px;
- height: 20px;
- font-size: 14px;
- font-family: PingFang SC, PingFang SC;
- font-weight: 400;
- color: #5a84ff;
- display: flex;
- justify-content: center;
- align-items: center;
- // cursor: pointer;
-}
-
-.group {
- display: flex;
- justify-content: space-between;
- align-items: center;
-}
-
-.groupTable {
- width: 100%;
-}
-
-.overBox {
- width: 100%;
- height: calc(100% - 20px);
- overflow: auto;
- :global(.cs-collapse-item__header) {
- background-color: #f1f1f1;
- padding: 0 20px;
- height: 35px;
- font-size: 16px;
- font-family: PingFang SC, PingFang SC;
- font-weight: 500;
- }
- :global(.cs-collapse-item__content) {
- padding-bottom: 0px;
- }
-}
-.groupHeader {
- width: 100%;
- height: 30px;
- background: #ccc;
-}
-
-.hideBlock {
- display: none;
-}
-.queryForm {
- padding: 10px;
- background: #f5f7fa;
- margin-bottom: 0px;
- border-radius: 4px;
-
- .el-form-item {
- margin-right: 20px;
- margin-bottom: 0;
-
- // 缁熶竴杈撳叆妗嗗拰閫夋嫨妗嗙殑瀹藉害
- .el-input, .el-select {
- width: 200px; // 璁剧疆缁熶竴鐨勫搴�
- }
-
- // 閫夋嫨妗嗗唴閮ㄨ緭鍏ユ鏍峰紡
- .el-select .el-input__wrapper {
- height: 32px; // 涓庤緭鍏ユ楂樺害涓�鑷�
- padding: 1px 11px; // 涓庤緭鍏ユ鍐呰竟璺濅竴鑷�
- }
-
- // 鏃ユ湡閫夋嫨鍣ㄥ搴�
- .el-date-editor {
- width: 220px;
- }
- }
-}
-
-// 濡傛灉闇�瑕佹洿绮剧‘鐨勬帶鍒讹紝鍙互鍗曠嫭璁剧疆
-.formItem {
- width: 200px;
-
- &.el-input, &.el-select {
- width: 100%;
- }
-}
\ No newline at end of file
+.wmsMaterialContent {
+ width: 100%;
+ height: 100%;
+
+ .wmsMaterialList {
+ width: 100%;
+ height: calc(100% - 70px);
+ }
+ .headerContent {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 43px;
+ }
+ .header {
+ margin-bottom: 12px;
+ display: flex;
+ justify-content: flex-start;
+ align-items: center;
+ }
+}
+
+.tagBox {
+ width: auto;
+ min-width: 80px;
+ height: 24px;
+ background: #ffffff;
+ border-radius: 19px 19px 19px 19px;
+ opacity: 1;
+ border: 1px dashed #bcc4cc;
+ width: 50px;
+ height: 20px;
+ font-size: 14px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 400;
+ color: #5a84ff;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ // cursor: pointer;
+}
+
+.group {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.groupTable {
+ width: 100%;
+}
+
+.overBox {
+ width: 100%;
+ height: calc(100% - 20px);
+ overflow: auto;
+ :global(.cs-collapse-item__header) {
+ background-color: #f1f1f1;
+ padding: 0 20px;
+ height: 35px;
+ font-size: 16px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 500;
+ }
+ :global(.cs-collapse-item__content) {
+ padding-bottom: 0px;
+ }
+}
+.groupHeader {
+ width: 100%;
+ height: 30px;
+ background: #ccc;
+}
+
+.hideBlock {
+ display: none;
+}
+.queryForm {
+ padding: 10px;
+ background: #f5f7fa;
+ margin-bottom: 0px;
+ border-radius: 4px;
+
+ .el-form-item {
+ margin-right: 20px;
+ margin-bottom: 0;
+
+ // 缁熶竴杈撳叆妗嗗拰閫夋嫨妗嗙殑瀹藉害
+ .el-input, .el-select {
+ width: 200px; // 璁剧疆缁熶竴鐨勫搴�
+ }
+
+ // 閫夋嫨妗嗗唴閮ㄨ緭鍏ユ鏍峰紡
+ .el-select .el-input__wrapper {
+ height: 32px; // 涓庤緭鍏ユ楂樺害涓�鑷�
+ padding: 1px 11px; // 涓庤緭鍏ユ鍐呰竟璺濅竴鑷�
+ }
+
+ // 鏃ユ湡閫夋嫨鍣ㄥ搴�
+ .el-date-editor {
+ width: 220px;
+ }
+ }
+}
+
+// 濡傛灉闇�瑕佹洿绮剧‘鐨勬帶鍒讹紝鍙互鍗曠嫭璁剧疆
+.formItem {
+ width: 200px;
+
+ &.el-input, &.el-select {
+ width: 100%;
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.tsx"
index 1703d1e..688d922 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.tsx"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/Pages/WmsMaterial/WmsMaterial.tsx"
@@ -1,321 +1,324 @@
-import { computed, defineComponent, onMounted, reactive, ref } from 'vue'
-import type { Ref } from 'vue'
-import BaseTable from '@/components/Table/Table'
-import styles from './WmsMaterial.module.scss'
-import { useWmsMaterial } from '../../../Controllers/WmsMaterial'
-import IconButton from '@/components/IconButton/IconButton'
-import WmsMaterialDrawer from '../Dialog/WmsMaterialDrawer/WmsMaterialDrawer'
-import WmsMaterialQueryDrawer from '../Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer'
-import Search from '@/components/Search/Search'
-import { columns } from './Config'
-import TdButton from '@/components/TdButton/TdButton'
-import { vPermission } from '@/libs/Permission/Permission'
-import {
- getWmsEnumData
-} from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer'
-import {
- ElInput,
- ElSelect,
- ElOption,
- ElDatePicker,
- ElForm,
- ElFormItem,
-} from 'element-plus'
-import { injectModel } from '@/libs/Provider/Provider'
-
-interface RenderTableType {
- url?: string
- dataSource: Ref<any[]>
- isDrag?: boolean
- isChecked?: boolean
- isHidePagination?: boolean
- params?: Record<string, any>
- autoHeight?: boolean
-}
-
-export default defineComponent({
- name: 'WmsMaterial',
- directives: {
- permission: vPermission,
- },
- setup(props, ctx) {
- const {
- dataSource,
- contextMenu,
- dialogConfig,
- dialogConfigForQuery,
- tableRef,
- current,
- search,
- sort,
- headers,
- onError,
- onSearch,
- onRowClick,
- onConfirmWmsMaterial,
- onCheck,
- onAddWmsMaterial,
- onAdvancedQuery,
- onExport,
- openDetail,
- onSuccess,
- onBeforeUpload,
- } = useWmsMaterial(props, ctx)
-
- //瀹氫箟楂樼骇鏌ヨ寮曠敤
- const wmsMaterialQueryDrawerRef=ref(null);
- // 鏂板鐨勬煡璇㈡潯浠�
- const queryForm = ref({
- searchVal: '',
- str_searchFormInputAttrs:[]
- })
- //瀹氫箟鏁翠綋妯$硦鏌ヨ鐨勫垪鏁扮粍(娉ㄦ剰锛氬繀椤诲ぇ灏忓啓璺熷悗绔殑瀹炰綋绫诲睘鎬у悕涓�鑷达紝鍚﹀垯浼氬鑷村尮閰嶄笉瀵圭殑闂)
- const _searchFormInputAttrs = ref([
- 'MaterialCode',
- 'MaterialName',
- 'Remark'
- ]);
- const searchFormInputAttrs_Placeholder = ref('璇疯緭鍏ョ墿鏂欑紪鐮�/鐗╂枡鍚嶇О/澶囨敞');
+import { computed, defineComponent, onMounted, reactive, ref } from 'vue'
+import type { Ref } from 'vue'
+import BaseTable from '@/components/Table/Table'
+import styles from './WmsMaterial.module.scss'
+import { useWmsMaterial } from '../../../Controllers/WmsMaterial'
+import IconButton from '@/components/IconButton/IconButton'
+import WmsMaterialDrawer from '../Dialog/WmsMaterialDrawer/WmsMaterialDrawer'
+import WmsMaterialQueryDrawer from '../Dialog/WmsMaterialQueryDrawer/WmsMaterialQueryDrawer'
+import Search from '@/components/Search/Search'
+import { columns } from './Config'
+import TdButton from '@/components/TdButton/TdButton'
+import { vPermission } from '@/libs/Permission/Permission'
+import {
+ getWmsEnumData
+} from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer'
+import {
+ ElInput,
+ ElSelect,
+ ElOption,
+ ElDatePicker,
+ ElForm,
+ ElFormItem,
+} from 'element-plus'
+import { injectModel } from '@/libs/Provider/Provider'
+
+interface RenderTableType {
+ url?: string
+ dataSource: Ref<any[]>
+ isDrag?: boolean
+ isChecked?: boolean
+ isHidePagination?: boolean
+ params?: Record<string, any>
+ autoHeight?: boolean
+}
+
+export default defineComponent({
+ name: 'WmsMaterial',
+ directives: {
+ permission: vPermission,
+ },
+ setup(props, ctx) {
+ const {
+ dataSource,
+ contextMenu,
+ dialogConfig,
+ dialogConfigForQuery,
+ tableRef,
+ current,
+ search,
+ sort,
+ headers,
+ onError,
+ onSearch,
+ onRowClick,
+ onConfirmWmsMaterial,
+ onCheck,
+ onAddWmsMaterial,
+ onAdvancedQuery,
+ onExport,
+ openDetail,
+ onSuccess,
+ onBeforeUpload,
+ } = useWmsMaterial(props, ctx)
+
+ //瀹氫箟楂樼骇鏌ヨ寮曠敤
+ const wmsMaterialQueryDrawerRef=ref(null);
+ // 鏂板鐨勬煡璇㈡潯浠�
+ const queryForm = ref({
+ searchVal: '',
+ str_searchFormInputAttrs:[]
+ })
+ //瀹氫箟鏁翠綋妯$硦鏌ヨ鐨勫垪鏁扮粍(娉ㄦ剰锛氬繀椤诲ぇ灏忓啓璺熷悗绔殑瀹炰綋绫诲睘鎬у悕涓�鑷达紝鍚﹀垯浼氬鑷村尮閰嶄笉瀵圭殑闂)
+ const _searchFormInputAttrs = ref([
+ 'MaterialCode', 'MaterialName', 'Remark'
+ ]);
+ const searchFormInputAttrs_Placeholder = ref('璇疯緭鍏ョ墿鏂欑紪鐮�/鐗╂枡鍚嶇О/澶囨敞');
+
+
+ // 鍔ㄦ�佹灇涓鹃�夐」
+ const enumOptions = reactive({
+ purchaseType: [] as Array<{label: string; value: any }>,
+materialType: [] as Array<{label: string; value: any }>,
+isMainBranch: [] as Array<{label: string; value: any }>,
+ })
+
+ // 鑾峰彇鏋氫妇鏁版嵁
+ const fetchEnumData = async () => {
+ try {
+ const purchaseTypeEnumData = await getWmsEnumData({
+ EnumName: 'PurchaseTypeEnum',
+})
+enumOptions.purchaseType = purchaseTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+}))
+const materialTypeEnumData = await getWmsEnumData({
+ EnumName: 'MaterialTypeEnum',
+})
+enumOptions.materialType = materialTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+}))
+const yesNoEnumData = await getWmsEnumData({
+ EnumName: 'YesNoEnum',
+})
+enumOptions.isMainBranch = yesNoEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+}))
+
+ } catch (error) {
+ console.error('鑾峰彇鏋氫妇鏁版嵁澶辫触:', error)
+ }
+ }
+
+ // 缁勪欢鎸傝浇鏃惰幏鍙栨灇涓炬暟鎹�
+ onMounted(() => {
+ fetchEnumData()
+ })
+
+ // 瀹氫箟鍝嶅簲寮忔煡璇㈡暟鎹�
+ const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[] });
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙涓婚〉闈腑鐨勬寜閽�愭煡璇€�戯級
+ const handleQueryForMain = async () => {
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal;
+ _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
+ tableRef.value.getList(_curHighQueryData.value)
+ }
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙楂樼骇鏌ヨ涓殑鎸夐挳銆愭煡璇€�戯級
+ const handleQuery = async (extraParams = {}) => {
+ let filteredData = commonGetHighQueryForm(extraParams);
+ commonSaveCurHighQueryData(filteredData);
+ tableRef.value.getList(filteredData)
+ }
+ // 鏂扮増鐨勬煡璇㈤噸缃�
+ const resetQuery = () => {
+ queryForm.value.searchVal = ''
+ queryForm.value.str_searchFormInputAttrs=_searchFormInputAttrs.value;
+ }
+ //鏂扮増鐨勫鍑烘柟娉�
+ const handleExport=()=>{
+ onExport(_curHighQueryData.value);
+ }
+ // 鏂扮増鐨勬煡璇㈠脊鍑烘鍏抽棴鏂规硶
+ const closeQuery = (extraParams={}) => {
+ let filteredData = commonGetHighQueryForm(extraParams);
+ console.log("closeQuery鏂规硶");
+ console.log(filteredData);
+ commonSaveCurHighQueryData(filteredData);
+ }
+ //淇濆瓨鏌ヨ鍊�
+ const commonSaveCurHighQueryData=(filteredData={})=>{
+ _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData };
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal
+ _curHighQueryData.value.str_searchFormInputAttrs =_searchFormInputAttrs.value;
+ }
+ //鑾峰彇楂樼骇鏌ヨ寮瑰嚭妗嗙殑鏌ヨ鍊�
+ const commonGetHighQueryForm=(extraParams={})=>{
+ // 杩囨护鎺� undefined 鐨勫��
+ let filteredData = Object.assign(
+ {},
+ ...Object.entries(extraParams).map(([key, value]) =>
+ value !== undefined ? { [key]: value } : {}
+ )
+ )
+ //缁勫悎妯$硦鏌ヨ
+ filteredData.searchVal = queryForm.value.searchVal
+ filteredData.str_searchFormInputAttrs =_searchFormInputAttrs.value;
+ return filteredData;
+ }
-
- // 鍔ㄦ�佹灇涓鹃�夐」
- const enumOptions = reactive({
- materialType: [] as Array<{ label: string; value: any }>,
- purchaseType: [] as Array<{ label: string; value: any }>,
- isMainBranch: [] as Array<{ label: string; value: any }>,
- })
-
- // 鑾峰彇鏋氫妇鏁版嵁
- const fetchEnumData = async () => {
- try {
- // 鑾峰彇鐗╂枡绫诲瀷鏋氫妇
- const materialTypeData = await getWmsEnumData({
- EnumName: 'MaterialTypeEnum',
- })
- enumOptions.materialType = materialTypeData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
-
- // 鑾峰彇閲囪喘绫诲瀷鏋氫妇
- const purchaseTypeData = await getWmsEnumData({
- EnumName: 'PurchaseTypeEnum',
- })
- enumOptions.purchaseType = purchaseTypeData.map((item) => ({
- label: item.description,
- value: item.value,
- }))
- } catch (error) {
- console.error('鑾峰彇鏋氫妇鏁版嵁澶辫触:', error)
- }
- }
-
- // 缁勪欢鎸傝浇鏃惰幏鍙栨灇涓炬暟鎹�
- onMounted(() => {
- fetchEnumData()
- })
-
- // 瀹氫箟鍝嶅簲寮忔煡璇㈡暟鎹�
- const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[] });
- // 鏂扮増鐨勬煡璇㈡柟娉曪紙涓婚〉闈腑鐨勬寜閽�愭煡璇€�戯級
- const handleQueryForMain = async () => {
- _curHighQueryData.value.searchVal = queryForm.value.searchVal;
- _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
- tableRef.value.getList(_curHighQueryData.value)
- }
- // 鏂扮増鐨勬煡璇㈡柟娉曪紙楂樼骇鏌ヨ涓殑鎸夐挳銆愭煡璇€�戯級
- const handleQuery = async (extraParams = {}) => {
- let filteredData = commonGetHighQueryForm(extraParams);
- commonSaveCurHighQueryData(filteredData);
- tableRef.value.getList(filteredData)
- }
- // 鏂扮増鐨勬煡璇㈤噸缃�
- const resetQuery = () => {
- queryForm.value.searchVal = ''
- queryForm.value.str_searchFormInputAttrs=_searchFormInputAttrs.value;
- }
- //鏂扮増鐨勫鍑烘柟娉�
- const handleExport=()=>{
- onExport(_curHighQueryData.value);
- }
- // 鏂扮増鐨勬煡璇㈠脊鍑烘鍏抽棴鏂规硶
- const closeQuery = (extraParams={}) => {
- let filteredData = commonGetHighQueryForm(extraParams);
- console.log("closeQuery鏂规硶");
- console.log(filteredData);
- commonSaveCurHighQueryData(filteredData);
- }
- //淇濆瓨鏌ヨ鍊�
- const commonSaveCurHighQueryData=(filteredData={})=>{
- _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData };
- _curHighQueryData.value.searchVal = queryForm.value.searchVal
- _curHighQueryData.value.str_searchFormInputAttrs =_searchFormInputAttrs.value;
- }
- //鑾峰彇楂樼骇鏌ヨ寮瑰嚭妗嗙殑鏌ヨ鍊�
- const commonGetHighQueryForm=(extraParams={})=>{
- // 杩囨护鎺� undefined 鐨勫��
- let filteredData = Object.assign(
- {},
- ...Object.entries(extraParams).map(([key, value]) =>
- value !== undefined ? { [key]: value } : {}
- )
- )
- //缁勫悎妯$硦鏌ヨ
- filteredData.searchVal = queryForm.value.searchVal
- filteredData.str_searchFormInputAttrs =_searchFormInputAttrs.value;
- return filteredData;
- }
-
-
- /**
- * @returns 琛ㄦ牸
- */
- const RenderBaseTable = (props: RenderTableType) => {
- const {
- url,
- dataSource,
- isDrag,
- isChecked,
- isHidePagination,
- params,
- autoHeight,
- } = props
-
- return (
- <div
- class={{
- [styles.wmsMaterialList]: true,
- }}
- >
- <BaseTable
- ref={tableRef}
- url={url}
- sortUrlTpl="/api/v1/hIAWms/wmsMaterial/{id}/adjustsort/{sort}"
- v-model:dataSource={dataSource.value}
- columns={columns}
- contextMenu={contextMenu}
- params={params}
- isDrag={isDrag}
- isChecked={isChecked}
- autoHeight={autoHeight}
- onCheck={onCheck}
- onRowClick={onRowClick}
- isHidePagination={isHidePagination}
- pageSize={20}
- v-slots={{
- name: ({ row }: any) => {
- return row?.name ? (
- <TdButton
- onClick={() => openDetail(row)}
- text={<span style="color:#5a84ff">璇︽儏</span>}
- icon="scale"
- tip={row?.name}
- hover
- >
- {row?.name}
- </TdButton>
- ) : (
- '-'
- )
- },
- }}
- ></BaseTable>
- </div>
- )
- }
-
- return () => {
- return (
- <div class={styles.wmsMaterialContent}>
- {/* 娣诲姞/缂栬緫 */}
- <WmsMaterialDrawer
- v-model={dialogConfig.visible}
- title={dialogConfig.title}
- row={current.value}
- sort={sort.value}
- onConfirm={onConfirmWmsMaterial}
- />
- {/* 楂樼骇鏌ヨ */}
- <WmsMaterialQueryDrawer
- ref="wmsMaterialQueryDrawerRef"
- v-model={dialogConfigForQuery.visible}
- title={dialogConfigForQuery.title}
- row={current.value}
- sort={sort.value}
- onConfirmQuery={handleQuery}
- onRestQuery={resetQuery}
- onClose={closeQuery}
- />
-
- <div class={styles.headerContent}>
- <div class={styles.header}>
- <IconButton
- v-permission="wmsMaterial-add"
- icon="add-p"
- onClick={onAddWmsMaterial}
- type="primary"
- >
- 娣诲姞
- </IconButton>
- <el-divider direction="vertical" />
-
- <el-divider direction="vertical" />
- <el-upload
- v-permission="wmsMaterial-import"
- name="file"
- accept=".xlsx,.xls,.csv"
- show-file-list={false}
- onError={onError}
- onSuccess={onSuccess}
- before-upload={onBeforeUpload}
- headers={headers.value}
- action="/api/v1/hIAWms/wmsMaterial/import"
- >
- <IconButton icon="in">瀵煎叆</IconButton>
- </el-upload>
-
- <IconButton
- v-permission="wmsMaterial-output"
- icon="out"
- onClick={handleExport}
- >
- 瀵煎嚭
- </IconButton>
- </div>
- <ElFormItem style={{ marginTop: '15px' }}>
- <ElFormItem label="鍏抽敭瀛�">
- <ElInput
- v-model={queryForm.value.searchVal}
- placeholder={searchFormInputAttrs_Placeholder.value}
- clearable
- class={styles.formItem}
- />
- </ElFormItem>
- <IconButton type="primary" icon="search" onClick={handleQueryForMain}>
- 鏌ヨ
- </IconButton>
- {/* <IconButton style="" icon="refresh" onClick={resetQuery}>
- 閲嶇疆
- </IconButton> */}
- <IconButton
- v-permission="wmsMaterial-add"
- icon="search"
- onClick={onAdvancedQuery}
- type="primary"
- >
- 楂樼骇鏌ヨ
- </IconButton>
- </ElFormItem>
- </div>
-
- <RenderBaseTable
- url="/api/v1/hIAWms/wmsMaterial/page"
- dataSource={dataSource}
- isChecked={true}
- isDrag={true}
- />
- </div>
- )
- }
- },
-})
+
+ /**
+ * @returns 琛ㄦ牸
+ */
+ const RenderBaseTable = (props: RenderTableType) => {
+ const {
+ url,
+ dataSource,
+ isDrag,
+ isChecked,
+ isHidePagination,
+ params,
+ autoHeight,
+ } = props
+
+ return (
+ <div
+ class={{
+ [styles.wmsMaterialList]: true,
+ }}
+ >
+ <BaseTable
+ ref={tableRef}
+ url={url}
+ sortUrlTpl="/api/v1/HIAWms/wmsMaterial/{id}/adjustsort/{sort}"
+ v-model:dataSource={dataSource.value}
+ columns={columns}
+ contextMenu={contextMenu}
+ params={params}
+ isDrag={isDrag}
+ isChecked={isChecked}
+ autoHeight={autoHeight}
+ onCheck={onCheck}
+ onRowClick={onRowClick}
+ isHidePagination={isHidePagination}
+ pageSize={20}
+ v-slots={{
+ name: ({ row }: any) => {
+ return row?.name ? (
+ <TdButton
+ onClick={() => openDetail(row)}
+ text={<span style="color:#5a84ff">璇︽儏</span>}
+ icon="scale"
+ tip={row?.name}
+ hover
+ >
+ {row?.name}
+ </TdButton>
+ ) : (
+ '-'
+ )
+ },
+ }}
+ ></BaseTable>
+ </div>
+ )
+ }
+
+ return () => {
+ return (
+ <div class={styles.wmsMaterialContent}>
+ {/* 娣诲姞/缂栬緫 */}
+ <WmsMaterialDrawer
+ v-model={dialogConfig.visible}
+ title={dialogConfig.title}
+ row={current.value}
+ sort={sort.value}
+ onConfirm={onConfirmWmsMaterial}
+ />
+ {/* 楂樼骇鏌ヨ */}
+ <WmsMaterialQueryDrawer
+ ref="wmsMaterialQueryDrawerRef"
+ v-model={dialogConfigForQuery.visible}
+ title={dialogConfigForQuery.title}
+ row={current.value}
+ sort={sort.value}
+ onConfirmQuery={handleQuery}
+ onRestQuery={resetQuery}
+ onClose={closeQuery}
+ />
+
+ <div class={styles.headerContent}>
+ <div class={styles.header}>
+ <IconButton
+ v-permission="wmsMaterial-add"
+ icon="add-p"
+ onClick={onAddWmsMaterial}
+ type="primary"
+ >
+ 娣诲姞
+ </IconButton>
+ <el-divider direction="vertical" />
+
+ <el-divider direction="vertical" />
+ <el-upload
+ v-permission="wmsMaterial-import"
+ name="file"
+ accept=".xlsx,.xls,.csv"
+ show-file-list={false}
+ onError={onError}
+ onSuccess={onSuccess}
+ before-upload={onBeforeUpload}
+ headers={headers.value}
+ action="/api/v1/HIAWms/wmsMaterial/import"
+ >
+ <IconButton icon="in">瀵煎叆</IconButton>
+ </el-upload>
+
+ <IconButton
+ v-permission="wmsMaterial-output"
+ icon="out"
+ onClick={handleExport}
+ >
+ 瀵煎嚭
+ </IconButton>
+ </div>
+ <ElFormItem style={{ marginTop: '15px' }}>
+ <ElFormItem label="鍏抽敭瀛�">
+ <ElInput
+ v-model={queryForm.value.searchVal}
+ placeholder={searchFormInputAttrs_Placeholder.value}
+ clearable
+ class={styles.formItem}
+ />
+ </ElFormItem>
+ <IconButton type="primary" icon="search" onClick={handleQueryForMain}>
+ 鏌ヨ
+ </IconButton>
+ {/* <IconButton style="" icon="refresh" onClick={resetQuery}>
+ 閲嶇疆
+ </IconButton> */}
+ <IconButton
+ v-permission="wmsMaterial-add"
+ icon="search"
+ onClick={onAdvancedQuery}
+ type="primary"
+ >
+ 楂樼骇鏌ヨ
+ </IconButton>
+ </ElFormItem>
+ </div>
+
+ <RenderBaseTable
+ url="/api/v1/HIAWms/wmsMaterial/page"
+ dataSource={dataSource}
+ isChecked={true}
+ isDrag={true}
+ />
+ </div>
+ )
+ }
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/config/HIAWms.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/config/HIAWms.module.scss"
new file mode 100644
index 0000000..bbe1334
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/Views/config/HIAWms.module.scss"
@@ -0,0 +1,3 @@
+{
+ "name": "WmsMaterial"
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/enum.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/enum.ts"
index c268a5b..063ce43 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/enum.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/enum.ts"
@@ -1,15 +1,15 @@
-export interface TabType {
- label: string
- name: string
- columns?: any[]
- data?: any[]
- isFooter: boolean
- [key: string]: any
-}
-
-export const permissionCodes = {
- 'wmsMaterial-list': '鍒楄〃-鍒楄〃',
- 'wmsMaterial-add': '鍒楄〃-娣诲姞',
- 'wmsMaterial-import': '鍒楄〃-瀵煎叆',
- 'wmsMaterial-output': '鍒楄〃-杈撳嚭',
-}
+export interface TabType {
+ label: string
+ name: string
+ columns?: any[]
+ data?: any[]
+ isFooter: boolean
+ [key: string]: any
+}
+
+export const permissionCodes = {
+ 'wmsMaterial-list': '鍒楄〃-鍒楄〃',
+ 'wmsMaterial-add': '鍒楄〃-娣诲姞',
+ 'wmsMaterial-import': '鍒楄〃-瀵煎叆',
+ 'wmsMaterial-output': '鍒楄〃-杈撳嚭',
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/index.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/index.ts"
index 2aa9efb..5682ae2 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/index.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/index.ts"
@@ -1,14 +1,14 @@
-import HIAWms from './Views/HIAWms'
-import Setting from '@/components/Setting/Setting'
-import { provider } from '@/provider/index'
-import p from '../../assets/svg/p.svg'
-
-export default {
- is: 'HIAWms',
- name: 'Wms鐗╂枡鍩虹',
- category: 'run',
- icon: p,
- authorizationRequired: false,
- canvasView: provider(HIAWms),
- settingsView: Setting,
-}
+import HIAWms from './Views/HIAWms'
+import Setting from '@/components/Setting/Setting'
+import { provider } from '@/provider/index'
+import p from '../../assets/svg/p.svg'
+
+export default {
+ is: 'HIAWms',
+ name: '鐗╂枡淇℃伅',
+ category: 'run',
+ icon: p,
+ authorizationRequired: false,
+ canvasView: provider(HIAWms),
+ settingsView: Setting,
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/type/Type.d.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/type/Type.d.ts"
index c7c5b09..7bd5c03 100644
--- "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/type/Type.d.ts"
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/HIAWms/type/Type.d.ts"
@@ -1,45 +1,45 @@
-import { Component } from 'vue'
-
-export interface DataItemType {
- id?: string
- name?: string
- code?: string
- description?: string
- label?: string
- value?: string | number
-}
-
-export interface WmsContainerBaseType {
- id?: string
- name?: string
- code?: string
- value?: number
- description?: string
- options?: Array<DataItemType>
- abilityValue?: number | string
- data?: DataItemType
- defaultValue?: string | number
- flow: string
-}
-
-export interface FlowDefinitionType {
- id?: string
- name?: string
- code?: string
- description?: string
-}
-
-export type ModuleType = Record<
- string,
- {
- default: Record<string, string>
- name: string
- }
->
-
-export interface TabItem {
- name: string
- label: string
- component: Component
- hidden?: boolean
-}
+import { Component } from 'vue'
+
+export interface DataItemType {
+ id?: string
+ name?: string
+ code?: string
+ description?: string
+ label?: string
+ value?: string | number
+}
+
+export interface WmsMaterialBaseType {
+ id?: string
+ name?: string
+ code?: string
+ value?: number
+ description?: string
+ options?: Array<DataItemType>
+ abilityValue?: number | string
+ data?: DataItemType
+ defaultValue?: string | number
+ flow: string
+}
+
+export interface FlowDefinitionType {
+ id?: string
+ name?: string
+ code?: string
+ description?: string
+}
+
+export type ModuleType = Record<
+ string,
+ {
+ default: Record<string, string>
+ name: string
+ }
+>
+
+export interface TabItem {
+ name: string
+ label: string
+ component: Component
+ hidden?: boolean
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/File.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/File.ts"
new file mode 100644
index 0000000..9162fef
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/File.ts"
@@ -0,0 +1,31 @@
+import { importFileToService, exportFileToClient } from '@/api/file'
+import { ElMessage } from 'element-plus'
+import { downloadFile } from '@/utils'
+import dayjs from 'dayjs'
+
+export const useFile = () => {
+ /**
+ * 瀵煎叆鏂囦欢
+ * @param url
+ */
+ const importFile = async (url: string, file: File) => {
+ const formData = new FormData()
+ formData.append('file', file)
+ await importFileToService(url, formData)
+ ElMessage('瀵煎叆鎴愬姛')
+ }
+ /**
+ * 瀵煎嚭鏂囦欢
+ * @param url
+ */
+ const exportFile = async (url: string, params: any, name: string) => {
+ const res = await exportFileToClient(url, params)
+ downloadFile(res, `${name}_${dayjs().format('YYYYMMDDHHMMss')}.xlsx`)
+ ElMessage.success('瀵煎嚭鎴愬姛')
+ }
+
+ return {
+ importFile,
+ exportFile,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecord.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecord.ts"
new file mode 100644
index 0000000..9846030
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecord.ts"
@@ -0,0 +1,275 @@
+import { ref, onMounted, reactive, Ref, nextTick, computed } from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsInOutStockRecord } from '../Models/WmsInOutStockRecord'
+import { ElMessage } from 'element-plus'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { useFile } from './File'
+
+interface CurrentType {
+ row: any
+ index: number
+}
+export const useWmsInOutStockRecord = (props: any, ctx?: any) => {
+ const wmsInOutStockRecord = injectModel<WmsInOutStockRecord>('wmsInOutStockRecord')
+ const { exportFile } = useFile()
+ /**
+ * 澶撮儴閰嶇疆
+ */
+ const headers = ref({})
+ /**
+ * 鍔ㄦ�佸垪閰嶇疆
+ */
+ const wmsInOutStockRecordColumns = ref<Record<string, any>>([])
+ /**
+ * 鎼滅储鍊�
+ */
+ const search = ref('')
+
+ /**
+ * 鎺掑簭
+ */
+ const sort = ref(0)
+ /**
+ * 閫夋嫨椤�
+ */
+ const selection = ref([])
+ /**
+ * 褰撳墠閫変腑鐨勮
+ */
+ const current = ref<any>(null)
+ /**
+ * 鏁版嵁婧�
+ */
+ const dataSource: Ref<any[]> = ref([])
+
+ /**
+ * 琛ㄦ牸
+ */
+ const tableRef = ref()
+ const dialogConfig = reactive({
+ visible: false,
+ title: '',
+ isAdd: false,
+ })
+ const dialogConfigForQuery = reactive({
+ visible: false,
+ title: '',
+ isAdd: false,
+ })
+
+
+ const dialogSettingConfig = reactive({
+ visible: false,
+ title: '',
+ })
+
+ /**
+ * 鍒嗛〉鏁版嵁
+ */
+ const paginationParams = ref({})
+
+ /**
+ * 鎵撳紑璇︽儏
+ * @param row
+ */
+ const openDetail = (row: any) => {
+ current.value = row
+ dialogConfig.visible = true
+ dialogConfig.title = row.name
+ dialogConfig.isAdd = false
+ sort.value = row.sort
+ }
+
+ const contextMenu = [
+ {
+ label: '灞曞紑璇︽儏',
+ fn: (c: CurrentType) => {
+ current.value = null
+ sort.value = c.row.sort
+ nextTick(() => openDetail(c.row))
+ },
+ divided: true,
+ icon: 'o',
+ },
+ // {
+ // label: '鍚戜笂娣诲姞',
+ // fn: (c: CurrentType, pageNum: number) => {
+ // current.value = null
+ // sort.value = c.index + 1 + (pageNum - 1) * 50
+ // dialogConfig.visible = true
+ // dialogConfig.title = '娣诲姞'
+ // dialogConfig.isAdd = false
+ // },
+ // divided: true,
+ // icon: 'up',
+ // },
+ // {
+ // label: '鍚戜笅娣诲姞',
+ // fn: (c: CurrentType, pageNum: number) => {
+ // current.value = null
+ // sort.value = c.index + 2 + (pageNum - 1) * 50
+ // dialogConfig.visible = true
+ // dialogConfig.title = '娣诲姞'
+ // dialogConfig.isAdd = false
+ // },
+ // divided: true,
+ // icon: 'down',
+ // },
+ // {
+ // label: '鍒涘缓鍓湰',
+ // fn: async ({ row }: CurrentType) => {
+ // await wmsInOutStockRecord.cloneData([row.id])
+ // ElMessage.success('鍒涘缓鍓湰鎴愬姛')
+ // tableRef.value?.getList()
+ // },
+ // divided: true,
+ // icon: 'copy',
+ // },
+ {
+ label: '鍒犻櫎',
+ fn: async (c: CurrentType) => {
+ const names = selection.value.map((item: { materialNo: string }) => item.materialNo)
+ ConfirmBox(
+ `鏄惁鍒犻櫎${names.length ? names.join(',') : c.row.materialNo}`
+ ).then(async () => {
+ const ids = selection.value.map((item: { id: string }) => item.id)
+ await wmsInOutStockRecord.deleteWmsInOutStockRecords(ids.length ? ids : [c.row.id])
+ ElMessage.success('鍒犻櫎鎴愬姛')
+ tableRef.value.getList()
+ })
+ },
+ icon: 'close',
+ },
+ ]
+
+ const onCheck = (records: any) => {
+ selection.value = records
+ }
+
+ const onAddWmsInOutStockRecord = () => {
+ const params = tableRef.value?.getPaginationParams()
+ current.value = null
+ dialogConfig.visible = true
+ dialogConfig.isAdd = true
+ dialogConfig.title = '娣诲姞'
+ sort.value = params.totalCount + 1
+ }
+
+ //鐐瑰嚮鎸夐挳銆愰珮绾ф煡璇€��
+ const onAdvancedQuery = () => {
+ const params = tableRef.value?.getPaginationParams()
+ current.value = null
+ dialogConfigForQuery.visible = true
+ dialogConfigForQuery.isAdd = true
+ dialogConfigForQuery.title = '楂樼骇鏌ヨ'
+ }
+
+ const onConfirmWmsInOutStockRecord = async () => {
+ dialogConfig.visible = false
+ if (dialogConfig.isAdd) {
+ tableRef.value?.scrollToRow({
+ skip: true,
+ })
+ } else {
+ await tableRef.value?.getList()
+ }
+ }
+ /**
+ * 琛岀偣鍑绘椂鏇存柊current
+ */
+ const onRowClick = ({ row }: any) => {
+ if (dialogConfig.visible && current.value) {
+ current.value = row
+ }
+ }
+ /**
+ * 瀵煎嚭
+ */
+ const onExport = (data={}) => {
+ //const params = tableRef.value?.getParams()
+ exportFile('/api/v1/HIAWms/wmsInOutStockRecord/export', data, 'HIAWms')
+ }
+
+ /**
+ * 鍏抽敭瀛楁悳绱�
+ */
+ const onSearch = () => {
+ tableRef.value?.getList({
+ Filter: search.value,
+ })
+ }
+
+ /**
+ * 閲嶇疆琛ㄦ牸鏁版嵁
+ */
+ const reloadList = () => {
+ tableRef.value?.getList()
+ }
+ /**
+ * 涓婁紶鎴愬姛
+ */
+ const onSuccess = () => {
+ tableRef.value?.getList()
+ ElMessage.success('瀵煎叆鎴愬姛')
+ }
+ /**
+ * 澶辫触
+ * @param err
+ */
+ const onError = (err: any) => {
+ try {
+ const message = JSON.parse(err.message)
+ ElMessage.error(message.msg)
+ } catch (error) {
+ ElMessage.error('瀵煎叆澶辫触')
+ }
+ }
+ /**
+ * 涓婁紶閽╁瓙
+ */
+ const onBeforeUpload = (file: File) => {
+ const format = ['xlsx', 'xls', 'csv']
+ if (!format.includes(file.name.split('.')[1])) {
+ ElMessage.error('瀵煎叆鏂囦欢鏍煎紡涓嶆纭紝璇峰鍏�.xlsx/.xls涓�.csv鏍煎紡鐨勬枃浠�')
+ return false
+ }
+ return true
+ }
+
+ onMounted(() => {
+ headers.value = {
+ Authorization: `Bearer ${sessionStorage.getItem('Token')}`,
+ 'X-Project': sessionStorage.getItem('X-Project'),
+ }
+ })
+
+ ctx.expose({
+ reloadList,
+ })
+
+ return {
+ dataSource,
+ contextMenu,
+ dialogConfig,
+ dialogConfigForQuery,
+ dialogSettingConfig,
+ tableRef,
+ current,
+ search,
+ sort,
+ wmsInOutStockRecordColumns,
+ paginationParams,
+ headers,
+ onBeforeUpload,
+ onError,
+ onSuccess,
+ openDetail,
+ onSearch,
+ onExport,
+ onRowClick,
+ onConfirmWmsInOutStockRecord,
+ onCheck,
+ onAddWmsInOutStockRecord,
+ onAdvancedQuery
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordDrawer.tsx"
new file mode 100644
index 0000000..4e6176f
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordDrawer.tsx"
@@ -0,0 +1,275 @@
+import {
+ ref,
+ onMounted,
+ reactive,
+ computed,
+ Ref,
+ watch,
+ SetupContext,
+ h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsInOutStockRecordDrawer } from '../Models/WmsInOutStockRecordDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsInOutStockRecordDrawer = (props: any, ctx?: any) => {
+ const wmsInOutStockRecordDrawer = injectModel<WmsInOutStockRecordDrawer>('wmsInOutStockRecordDrawer')
+ /**
+ * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+ */
+ const initiateData: Ref<Record<string, any>> = ref({})
+ const formData = ref<Record<string, any>>({})
+ // ref
+ const formRef = ref()
+
+ const disabled = ref(false)
+
+ const current = computed(() => {
+ return props.row || null
+ })
+
+ const inputNumber = (attrs) => {
+ return (
+ <el-input-number
+ min="1"
+ step="1"
+ precision="0"
+ {...attrs}
+ ></el-input-number>
+ )
+ }
+
+ const visible = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ ctx.emit('update:modelValue', val)
+ },
+ })
+ /**
+ * 娣诲姞鐨刦orm瀛楁
+ */
+ const formItems = reactive([
+ {
+ label: '鍗曟嵁缂栧彿',
+ prop: 'orderNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ崟鎹紪鍙�',
+ rules: [{required: true, message: '鍗曟嵁缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '鐗╂枡鍚嶇О',
+ prop: 'materialName',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+ },
+ {
+ label: '鐗╂枡浠跺彿',
+ prop: 'materialNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欎欢鍙�',
+ rules: [{required: true, message: '鐗╂枡浠跺彿涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '鎿嶄綔绫诲瀷',
+ prop: 'stockType',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ搷浣滅被鍨�',
+ rules: [{required: true, message: '鎿嶄綔绫诲瀷涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '瀹瑰櫒缂栧彿',
+ prop: 'containerNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ鍣ㄧ紪鍙�',
+ },
+ {
+ label: '鏈哄瀷',
+ prop: 'materialModel',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ満鍨�',
+ },
+ {
+ label: '鎿嶄綔鏃堕棿',
+ prop: 'operateTime',
+ type: 'datetimerange',
+ el: 'date-picker',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ搷浣滄椂闂�',
+ },
+ {
+ label: '澶囨敞',
+ prop: 'remark',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ娉�',
+ },
+ {
+ label: '鐗╂枡ID',
+ prop: 'materialId',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂橧D',
+ rules: [{required: true, message: '鐗╂枡ID涓嶈兘涓虹┖', trigger: 'blur' }],
+ },
+ {
+ label: '浠诲姟鍙�',
+ prop: 'taskNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヤ换鍔″彿',
+ rules: [{required: true, message: '浠诲姟鍙蜂笉鑳戒负绌�', trigger: 'blur' }],
+ },
+ {
+ label: '璧峰搴撲綅',
+ prop: 'sourcePlace',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヨ捣濮嬪簱浣�',
+ },
+ {
+ label: '鐩爣搴撲綅',
+ prop: 'toPlace',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ洰鏍囧簱浣�',
+ },
+ ])
+ /**
+ * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+ */
+ const checkIsEqualObject = () => {
+ const data = {
+ formData: formData.value,
+ }
+ const check = isEqual(initiateData.value, data)
+ return check
+ }
+
+ const onClose = (done: () => void) => {
+ if (visible.value) {
+ if (checkIsEqualObject()) {
+ visible.value = false
+ done && done()
+ } else {
+ ConfirmBox('鏄惁淇濆瓨璁剧疆锛�')
+ .then(() => {
+ onConfirm()
+ })
+ .catch(() => {
+ visible.value = false
+ done && done()
+ })
+ }
+ }
+ }
+ /**
+ * 淇濆瓨
+ */
+ const onConfirm = async () => {
+ await formRef.value?.validate()
+ const data = {
+ orderNo: formData.value.orderNo,
+materialName: formData.value.materialName,
+materialNo: formData.value.materialNo,
+stockType: formData.value.stockType,
+containerNo: formData.value.containerNo,
+materialModel: formData.value.materialModel,
+operateTime: formData.value.operateTime,
+remark: formData.value.remark,
+materialId: formData.value.materialId,
+taskNo: formData.value.taskNo,
+sourcePlace: formData.value.sourcePlace,
+toPlace: formData.value.toPlace,
+ }
+ if (!current.value) {
+ await wmsInOutStockRecordDrawer.addWmsInOutStockRecord(data)
+ } else {
+ const id = current.value.id
+ await wmsInOutStockRecordDrawer.updateWmsInOutStockRecord(id, data)
+ }
+ ElMessage.success('淇濆瓨鎴愬姛')
+ ctx.emit('confirm')
+ }
+
+ const updateCheckData = () => {
+ initiateData.value = {
+ formData: {
+ ...formData.value,
+ },
+ }
+ }
+ const updateFormItemOptions = (propName: string, enumData: any[]) => {
+ const item = formItems.find((item) => item.prop === propName)
+ if (item && enumData) {
+ item.options = enumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ }
+ }
+ /**
+ * 閫氱敤鏌ヨ鏋氫妇
+ */
+ const commonQueryEnumForFrom = async () => {
+ const stockTypeEnumEnum = await wmsInOutStockRecordDrawer.getWmsEnumData({
+ EnumName: 'StockTypeEnum',
+})
+updateFormItemOptions('stockType', stockTypeEnumEnum)
+
+ }
+ commonQueryEnumForFrom()
+ /**
+ * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+ */
+ const onOpen = async () => {
+ if (current.value) {
+ const res = await wmsInOutStockRecordDrawer.getWmsInOutStockRecordDetail(current.value)
+
+ formData.value = {
+ orderNo: res.orderNo,
+materialName: res.materialName,
+materialNo: res.materialNo,
+stockType: res.stockType,
+containerNo: res.containerNo,
+materialModel: res.materialModel,
+operateTime: res.operateTime,
+remark: res.remark,
+materialId: res.materialId,
+taskNo: res.taskNo,
+sourcePlace: res.sourcePlace,
+toPlace: res.toPlace,
+ id: res.id,
+ }
+ disabled.value = true
+ updateCheckData()
+ } else {
+ formData.value = {}
+
+ disabled.value = false
+ updateCheckData()
+ }
+ }
+
+ watch(() => current.value, onOpen)
+
+ return {
+ formItems,
+ formData,
+ visible,
+ formRef,
+ onOpen,
+ onClose,
+ onConfirm,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordQueryDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordQueryDrawer.tsx"
new file mode 100644
index 0000000..d1074e5
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Controllers/WmsInOutStockRecordQueryDrawer.tsx"
@@ -0,0 +1,267 @@
+import {
+ ref,
+ onMounted,
+ reactive,
+ computed,
+ Ref,
+ watch,
+ SetupContext,
+ h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsInOutStockRecordDrawer } from '../Models/WmsInOutStockRecordDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsInOutStockRecordQueryDrawer = (props: any, ctx?: any) => {
+ const wmsInOutStockRecordDrawer = injectModel<WmsInOutStockRecordDrawer>('WmsInOutStockRecordDrawer')
+ /**
+ * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+ */
+ const initiateData: Ref<Record<string, any>> = ref({})
+ const formData = ref<Record<string, any>>({})
+ // ref
+ const formRef = ref()
+
+ const disabled = ref(false)
+
+ const current = computed(() => {
+ return props.row || null
+ })
+
+ const inputNumber = (attrs) => {
+ return (
+ <el-input-number
+ min="1"
+ step="1"
+ precision="0"
+ {...attrs}
+ ></el-input-number>
+ )
+ }
+
+
+ const visible = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ ctx.emit('update:modelValue', val)
+ },
+ })
+ /**
+ * 娣诲姞鐨刦orm瀛楁
+ */
+ const formItems = reactive([
+ {
+ label: '鍗曟嵁缂栧彿',
+ prop: 'orderNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ崟鎹紪鍙�',
+ },
+ {
+ label: '鐗╂枡鍚嶇О',
+ prop: 'materialName',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+ },
+ {
+ label: '鐗╂枡浠跺彿',
+ prop: 'materialNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂欎欢鍙�',
+ },
+ {
+ label: '鎿嶄綔绫诲瀷',
+ prop: 'stockType',
+ el: 'select',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ搷浣滅被鍨�',
+ },
+ {
+ label: '瀹瑰櫒缂栧彿',
+ prop: 'containerNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ鍣ㄧ紪鍙�',
+ },
+ {
+ label: '鏈哄瀷',
+ prop: 'materialModel',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ満鍨�',
+ },
+ {
+ label: '鎿嶄綔鏃堕棿',
+ prop: 'operateTime',
+ type: 'datetimerange',
+ el: 'date-picker',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ユ搷浣滄椂闂�',
+ },
+ {
+ label: '澶囨敞',
+ prop: 'remark',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ュ娉�',
+ },
+ {
+ label: '鐗╂枡ID',
+ prop: 'materialId',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ墿鏂橧D',
+ },
+ {
+ label: '浠诲姟鍙�',
+ prop: 'taskNo',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヤ换鍔″彿',
+ },
+ {
+ label: '璧峰搴撲綅',
+ prop: 'sourcePlace',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ヨ捣濮嬪簱浣�',
+ },
+ {
+ label: '鐩爣搴撲綅',
+ prop: 'toPlace',
+ el: 'input',
+ //disabled: disabled,
+ placeholder: '璇疯緭鍏ョ洰鏍囧簱浣�',
+ },
+ ])
+ /**
+ * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+ */
+ const checkIsEqualObject = () => {
+ const data = {
+ formData: formData.value,
+ }
+ const check = isEqual(initiateData.value, data)
+ return check
+ }
+ const commonGetFormData=()=>{
+ const data = {
+ OrderNo: formData.value.OrderNo,
+MaterialName: formData.value.MaterialName,
+MaterialNo: formData.value.MaterialNo,
+StockType: formData.value.StockType,
+ContainerNo: formData.value.ContainerNo,
+MaterialModel: formData.value.MaterialModel,
+OperateTime: formData.value.OperateTime,
+Remark: formData.value.Remark,
+MaterialId: formData.value.MaterialId,
+TaskNo: formData.value.TaskNo,
+SourcePlace: formData.value.SourcePlace,
+ToPlace: formData.value.ToPlace,
+ }
+ return data;
+ }
+ const onClose = (done: () => void) => {
+ if (visible.value) {
+ visible.value = false
+ const data =commonGetFormData();
+ ctx.emit('close', data)
+ }
+ }
+ /**
+ * 纭鏌ヨ
+ */
+ const onConfirmQuery = async () => {
+ const data =commonGetFormData();
+ ctx.emit('confirmQuery', data)
+ }
+ /**
+ * 閲嶇疆鏌ヨ
+ */
+ const onReset = async () => {
+ formData.value = {}
+ formData.value.OrderNo = ''
+formData.value.MaterialName = ''
+formData.value.MaterialNo = ''
+formData.value.StockType = ''
+formData.value.ContainerNo = ''
+formData.value.MaterialModel = ''
+formData.value.OperateTime = ''
+formData.value.Remark = ''
+formData.value.MaterialId = ''
+formData.value.TaskNo = ''
+formData.value.SourcePlace = ''
+formData.value.ToPlace = ''
+ formData.value.materialCode = ''
+ formData.value.materialName = ''
+ formData.value.purchaseType = ''
+ formData.value.materialType = ''
+ formData.value.primaryUnit = ''
+ formData.value.standard = ''
+ formData.value.outerDiameter = ''
+ formData.value.wallThickness = ''
+ formData.value.materialQuality = ''
+ formData.value.length = ''
+ formData.value.isMainBranch = ''
+ formData.value.factory = ''
+ formData.value.certification = ''
+ formData.value.remark = ''
+ //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
+ ctx.emit('restQuery');
+ }
+
+ const updateCheckData = () => {
+ initiateData.value = {
+ formData: {
+ ...formData.value,
+ },
+ }
+ }
+ const updateFormItemOptions = (propName: string, enumData: any[]) => {
+ const item = formItems.find((item) => item.prop === propName)
+ if (item && enumData) {
+ item.options = enumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+ }))
+ }
+ }
+ /**
+ * 閫氱敤鏌ヨ鏋氫妇
+ */
+ const commonQueryEnumForFrom = async () => {
+ const stockTypeEnumEnum = await wmsInOutStockRecordDrawer.getWmsEnumData({
+ EnumName: 'StockTypeEnum',
+})
+updateFormItemOptions('stockType', stockTypeEnumEnum)
+
+ }
+ commonQueryEnumForFrom()
+ /**
+ * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+ */
+ const onOpen = async () => {
+ disabled.value = false
+ updateCheckData()
+ }
+
+ watch(() => current.value, onOpen)
+
+ return {
+ formItems,
+ formData,
+ visible,
+ formRef,
+ onOpen,
+ onClose,
+ onConfirmQuery,
+ onReset,
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecord.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecord.ts"
new file mode 100644
index 0000000..be7ab90
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecord.ts"
@@ -0,0 +1,30 @@
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsInOutStockRecord = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsInOutStockRecord', data)
+}
+
+/**
+ * 鎵归噺鍒犻櫎
+ * @returns
+ */
+export const deleteWmsInOutStockRecords = (ids: string[]) => {
+ return request({
+ data: ids,
+ url: '/api/v1/HIAWms/wmsInOutStockRecord',
+ method: 'delete',
+ })
+}
+
+/**
+ * 鍏嬮殕
+ * @returns
+ */
+export const cloneData = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsInOutStockRecord/clone', data)
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordDrawer.ts"
new file mode 100644
index 0000000..cbef900
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordDrawer.ts"
@@ -0,0 +1,34 @@
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsInOutStockRecord = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsInOutStockRecord', data)
+}
+
+/**
+ * 鑾峰彇璇︽儏
+ * @returns
+ */
+export const getWmsInOutStockRecord = (id: string) => {
+ return request.get(`/api/v1/HIAWms/wmsInOutStockRecord/${id}`)
+}
+
+/**
+ * 鏇存柊
+ * @returns
+ */
+export const updateWmsInOutStockRecord = (id: string, data: Record<string, any>) => {
+ return request.put(`/api/v1/HIAWms/wmsInOutStockRecord/${id}`, data)
+}
+
+/**
+ * 鑾峰彇鏋氫妇
+ * @returns
+ */
+export const getWmsEnumData = (data: any) => {
+ return request.post('/api/v1/HIAWms/WmsEnum', data)
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordQueryDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordQueryDrawer.ts"
new file mode 100644
index 0000000..7f3530a
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordQueryDrawer.ts"
@@ -0,0 +1,35 @@
+import { Base } from '@/libs/Base/Base'
+const request = Base.request
+
+/**
+ * 娣诲姞
+ * @returns
+ */
+export const addWmsInOutStockRecord = (data: any) => {
+ return request.post('/api/v1/HIAWms/wmsInOutStockRecord', data)
+}
+
+/**
+ * 鑾峰彇璇︽儏
+ * @returns
+ */
+export const getWmsInOutStockRecord = (id: string) => {
+ return request.get(`/api/v1/HIAWms/wmsInOutStockRecord/${id}`)
+}
+
+/**
+ * 鏇存柊
+ * @returns
+ */
+export const updateWmsInOutStockRecord = (id: string, data: Record<string, any>) => {
+ return request.put(`/api/v1/HIAWms/wmsInOutStockRecord/${id}`, data)
+}
+
+/**
+ * 鑾峰彇鏋氫妇
+ * @returns
+ */
+export const getWmsEnumData = (data: any) => {
+ return request.post('/api/v1/HIAWms/WmsEnum', data)
+}
+
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecord.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecord.ts"
new file mode 100644
index 0000000..85d73a8
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecord.ts"
@@ -0,0 +1,41 @@
+import { Base } from '@/libs/Base/Base'
+import {
+ deleteWmsInOutStockRecords,
+ addWmsInOutStockRecord,
+ cloneData,
+} from './Service/WmsInOutStockRecord'
+
+export class WmsInOutStockRecord extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ })
+ }
+ onMounted() {}
+ /**
+ * 鍒犻櫎
+ * @param id
+ * @returns
+ */
+ async deleteWmsInOutStockRecords(ids: string[]) {
+ return deleteWmsInOutStockRecords(ids)
+ }
+
+ /**
+ * 娣诲姞鏁版嵁
+ * @param data
+ * @returns
+ */
+ addWmsInOutStockRecord(data: Record<string, any>) {
+ return addWmsInOutStockRecord(data)
+ }
+
+ /**
+ * 鍏嬮殕
+ * @param ids
+ * @returns
+ */
+ cloneData(ids: string[]) {
+ return cloneData(ids)
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordDrawer.ts"
new file mode 100644
index 0000000..450c9ba
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordDrawer.ts"
@@ -0,0 +1,44 @@
+import { Base } from '@/libs/Base/Base'
+import {
+ addWmsInOutStockRecord,
+ getWmsInOutStockRecord,
+ updateWmsInOutStockRecord,
+ getWmsEnumData,
+} from './Service/WmsInOutStockRecordDrawer'
+import { useGlobalState } from '@/libs/Store/Store'
+
+export class WmsInOutStockRecordDrawer extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ wmsInOutStockRecord: {},
+ })
+ }
+
+ /**
+ * 娣诲姞
+ * @param data
+ */
+ async addWmsInOutStockRecord(data: Record<string, any>) {
+ return addWmsInOutStockRecord(data)
+ }
+ /**
+ * 鏇存柊
+ * @param data
+ */
+ async updateWmsInOutStockRecord(id: string, data: Record<string, any>) {
+ return updateWmsInOutStockRecord(id, data)
+ }
+
+ /**
+ * 鑾峰彇璇︽儏
+ */
+ async getWmsInOutStockRecordDetail(current: any, id?: string) {
+ return getWmsInOutStockRecord(id || current?.id)
+ }
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordQueryDrawer.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordQueryDrawer.ts"
new file mode 100644
index 0000000..e4c2ef2
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Models/WmsInOutStockRecordQueryDrawer.ts"
@@ -0,0 +1,44 @@
+import { Base } from '@/libs/Base/Base'
+import {
+ addWmsInOutStockRecord,
+ getWmsInOutStockRecord,
+ updateWmsInOutStockRecord,
+ getWmsEnumData,
+} from './Service/WmsInOutStockRecordQueryDrawer'
+import { useGlobalState } from '@/libs/Store/Store'
+
+export class WmsInOutStockRecordQueryDrawer extends Base<{ [key: string]: any }> {
+ constructor() {
+ super({
+ data: [],
+ wmsInOutStockRecord: {},
+ })
+ }
+
+ /**
+ * 娣诲姞
+ * @param data
+ */
+ async addWmsInOutStockRecord(data: Record<string, any>) {
+ return addWmsInOutStockRecord(data)
+ }
+ /**
+ * 鏇存柊
+ * @param data
+ */
+ async updateWmsInOutStockRecord(id: string, data: Record<string, any>) {
+ return updateWmsInOutStockRecord(id, data)
+ }
+
+ /**
+ * 鑾峰彇璇︽儏
+ */
+ async getWmsInOutStockRecordDetail(current: any, id?: string) {
+ return getWmsInOutStockRecord(id || current?.id)
+ }
+
+ // 鑾峰彇鏋氫妇鍊�
+ async getWmsEnumData(data: Record<string, any>) {
+ return getWmsEnumData(data)
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.module.scss"
new file mode 100644
index 0000000..177adca
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.module.scss"
@@ -0,0 +1,3 @@
+.drawer {
+ width: 800px;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.tsx"
new file mode 100644
index 0000000..e0f65e2
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer.tsx"
@@ -0,0 +1,61 @@
+import { SetupContext, defineComponent } from 'vue'
+import BaseDrawer from '@/components/BaseDrawer/BaseDrawer'
+import styles from './WmsInOutStockRecordDrawer.module.scss'
+import { useWmsInOutStockRecordDrawer } from '../../../../Controllers/WmsInOutStockRecordDrawer.tsx'
+import DyForm from '@/components/DyForm/DyForm'
+
+// @ts-ignore
+export default defineComponent<{
+ [key: string]: any
+}>({
+ name: '寮圭獥',
+ props: {
+ modelValue: {
+ type: Boolean,
+ default: false,
+ },
+ title: {
+ type: String,
+ default: '',
+ },
+ row: {
+ type: Object,
+ },
+ sort: {
+ type: Number,
+ default: 0,
+ },
+ },
+ emits: ['update:modelValue', 'close', 'submit', 'confirm'],
+ setup(props: Record<string, any>, ctx: SetupContext) {
+ const {
+ onClose,
+ onConfirm,
+ onOpen,
+ formRef,
+ visible,
+ formItems,
+ formData,
+ } = useWmsInOutStockRecordDrawer(props, ctx)
+ return () => (
+ <BaseDrawer
+ class={styles.drawer}
+ size="800px"
+ title={props.title || '娣诲姞'}
+ v-model={visible.value}
+ close-on-click-modal={true}
+ onConfirm={onConfirm}
+ onOpen={onOpen}
+ before-close={onClose}
+ onClose={onClose}
+ >
+ <DyForm
+ ref={formRef}
+ formData={formData.value}
+ labelWidth="106px"
+ formItemProps={formItems}
+ ></DyForm>
+ </BaseDrawer>
+ )
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.module.scss"
new file mode 100644
index 0000000..177adca
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.module.scss"
@@ -0,0 +1,3 @@
+.drawer {
+ width: 800px;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.tsx"
new file mode 100644
index 0000000..5c44328
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer.tsx"
@@ -0,0 +1,71 @@
+/*
+ * 鐗╂枡鍩虹淇℃伅鏌ヨ寮瑰嚭妗�
+*/
+import { SetupContext, defineComponent } from 'vue'
+import BaseQueryDrawer from '@/components/BaseQueryDrawer/BaseQueryDrawer'
+import styles from './WmsInOutStockRecordQueryDrawer.module.scss'
+import { useWmsInOutStockRecordQueryDrawer } from '../../../../Controllers/WmsInOutStockRecordQueryDrawer.tsx'
+import DyForm from '@/components/DyForm/DyForm'
+
+// @ts-ignore
+export default defineComponent<{
+ [key: string]: any
+}>({
+ name: '寮圭獥',
+ props: {
+ //鏋氫妇绫诲瀷瀛楀吀
+ enumListDict:{
+ type: Array as () => Array<{ key: string; value: object }>, // 瀹氫箟鏁扮粍鍏冪礌绫诲瀷
+ default: () => [] // 榛樿鍊�
+ },
+ modelValue: {
+ type: Boolean,
+ default: false,
+ },
+ title: {
+ type: String,
+ default: '',
+ },
+ row: {
+ type: Object,
+ },
+ sort: {
+ type: Number,
+ default: 0,
+ },
+ },
+ emits: ['update:modelValue', 'close', 'submit', 'confirmquery1'],
+ setup(props: Record<string, any>, ctx: SetupContext) {
+ const {
+ onClose,
+ onConfirmQuery,
+ onOpen,
+ onReset,
+ formRef,
+ visible,
+ formItems,
+ formData,
+ } = useWmsInOutStockRecordQueryDrawer(props, ctx)
+ return () => (
+ <BaseQueryDrawer
+ class={styles.drawer}
+ size="800px"
+ title={props.title || '楂樼骇鏌ヨ'}
+ v-model={visible.value}
+ close-on-click-modal={true}
+ onReset={onReset}
+ onConfirmQueryForBase={onConfirmQuery}
+ onOpen={onOpen}
+ before-close={onClose}
+ onClose={onClose}
+ >
+ <DyForm
+ ref={formRef}
+ formData={formData.value}
+ labelWidth="106px"
+ formItemProps={formItems}
+ ></DyForm>
+ </BaseQueryDrawer>
+ )
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts"
new file mode 100644
index 0000000..5297ad7
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/Config.ts"
@@ -0,0 +1,67 @@
+export const columns = [
+ {
+ type: 'seq',
+ width: 60,
+ title: '搴忓彿',
+ },
+ {
+ field: 'orderNo',
+ title: '鍗曟嵁缂栧彿',
+},
+{
+ field: 'materialName',
+ title: '鐗╂枡鍚嶇О',
+},
+{
+ field: 'materialNo',
+ title: '鐗╂枡浠跺彿',
+},
+{
+ field: 'stockTypeDesc',
+ title: '鎿嶄綔绫诲瀷',
+},
+{
+ field: 'containerNo',
+ title: '瀹瑰櫒缂栧彿',
+},
+{
+ field: 'materialModel',
+ title: '鏈哄瀷',
+},
+{
+ field: 'operateTime',
+ title: '鎿嶄綔鏃堕棿',
+},
+{
+ field: 'remark',
+ title: '澶囨敞',
+},
+{
+ field: 'materialId',
+ title: '鐗╂枡ID',
+},
+{
+ field: 'taskNo',
+ title: '浠诲姟鍙�',
+},
+{
+ field: 'sourcePlace',
+ title: '璧峰搴撲綅',
+},
+{
+ field: 'toPlace',
+ title: '鐩爣搴撲綅',
+},
+{
+ field: 'creationTime',
+ title: '',
+},
+{
+ field: 'deletionTime',
+ title: '',
+},
+{
+ field: 'sort',
+ title: '鎺掑簭',
+},
+]
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.module.scss"
new file mode 100644
index 0000000..a1c8215
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.module.scss"
@@ -0,0 +1,113 @@
+.wmsInOutStockRecordContent {
+ width: 100%;
+ height: 100%;
+
+ .wmsInOutStockRecordList {
+ width: 100%;
+ height: calc(100% - 70px);
+ }
+ .headerContent {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 43px;
+ }
+ .header {
+ margin-bottom: 12px;
+ display: flex;
+ justify-content: flex-start;
+ align-items: center;
+ }
+}
+
+.tagBox {
+ width: auto;
+ min-width: 80px;
+ height: 24px;
+ background: #ffffff;
+ border-radius: 19px 19px 19px 19px;
+ opacity: 1;
+ border: 1px dashed #bcc4cc;
+ width: 50px;
+ height: 20px;
+ font-size: 14px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 400;
+ color: #5a84ff;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ // cursor: pointer;
+}
+
+.group {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.groupTable {
+ width: 100%;
+}
+
+.overBox {
+ width: 100%;
+ height: calc(100% - 20px);
+ overflow: auto;
+ :global(.cs-collapse-item__header) {
+ background-color: #f1f1f1;
+ padding: 0 20px;
+ height: 35px;
+ font-size: 16px;
+ font-family: PingFang SC, PingFang SC;
+ font-weight: 500;
+ }
+ :global(.cs-collapse-item__content) {
+ padding-bottom: 0px;
+ }
+}
+.groupHeader {
+ width: 100%;
+ height: 30px;
+ background: #ccc;
+}
+
+.hideBlock {
+ display: none;
+}
+.queryForm {
+ padding: 10px;
+ background: #f5f7fa;
+ margin-bottom: 0px;
+ border-radius: 4px;
+
+ .el-form-item {
+ margin-right: 20px;
+ margin-bottom: 0;
+
+ // 缁熶竴杈撳叆妗嗗拰閫夋嫨妗嗙殑瀹藉害
+ .el-input, .el-select {
+ width: 200px; // 璁剧疆缁熶竴鐨勫搴�
+ }
+
+ // 閫夋嫨妗嗗唴閮ㄨ緭鍏ユ鏍峰紡
+ .el-select .el-input__wrapper {
+ height: 32px; // 涓庤緭鍏ユ楂樺害涓�鑷�
+ padding: 1px 11px; // 涓庤緭鍏ユ鍐呰竟璺濅竴鑷�
+ }
+
+ // 鏃ユ湡閫夋嫨鍣ㄥ搴�
+ .el-date-editor {
+ width: 220px;
+ }
+ }
+}
+
+// 濡傛灉闇�瑕佹洿绮剧‘鐨勬帶鍒讹紝鍙互鍗曠嫭璁剧疆
+.formItem {
+ width: 200px;
+
+ &.el-input, &.el-select {
+ width: 100%;
+ }
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.tsx"
new file mode 100644
index 0000000..a5a85b1
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/Pages/WmsInOutStockRecord/WmsInOutStockRecord.tsx"
@@ -0,0 +1,308 @@
+import { computed, defineComponent, onMounted, reactive, ref } from 'vue'
+import type { Ref } from 'vue'
+import BaseTable from '@/components/Table/Table'
+import styles from './WmsInOutStockRecord.module.scss'
+import { useWmsInOutStockRecord } from '../../../Controllers/WmsInOutStockRecord'
+import IconButton from '@/components/IconButton/IconButton'
+import WmsInOutStockRecordDrawer from '../Dialog/WmsInOutStockRecordDrawer/WmsInOutStockRecordDrawer'
+import WmsInOutStockRecordQueryDrawer from '../Dialog/WmsInOutStockRecordQueryDrawer/WmsInOutStockRecordQueryDrawer'
+import Search from '@/components/Search/Search'
+import { columns } from './Config'
+import TdButton from '@/components/TdButton/TdButton'
+import { vPermission } from '@/libs/Permission/Permission'
+import {
+ getWmsEnumData
+} from '@/widgets/WmsInOutStockRecord/Models/Service/WmsInOutStockRecordDrawer'
+import {
+ ElInput,
+ ElSelect,
+ ElOption,
+ ElDatePicker,
+ ElForm,
+ ElFormItem,
+} from 'element-plus'
+import { injectModel } from '@/libs/Provider/Provider'
+
+interface RenderTableType {
+ url?: string
+ dataSource: Ref<any[]>
+ isDrag?: boolean
+ isChecked?: boolean
+ isHidePagination?: boolean
+ params?: Record<string, any>
+ autoHeight?: boolean
+}
+
+export default defineComponent({
+ name: 'WmsInOutStockRecord',
+ directives: {
+ permission: vPermission,
+ },
+ setup(props, ctx) {
+ const {
+ dataSource,
+ contextMenu,
+ dialogConfig,
+ dialogConfigForQuery,
+ tableRef,
+ current,
+ search,
+ sort,
+ headers,
+ onError,
+ onSearch,
+ onRowClick,
+ onConfirmWmsInOutStockRecord,
+ onCheck,
+ onAddWmsInOutStockRecord,
+ onAdvancedQuery,
+ onExport,
+ openDetail,
+ onSuccess,
+ onBeforeUpload,
+ } = useWmsInOutStockRecord(props, ctx)
+
+ //瀹氫箟楂樼骇鏌ヨ寮曠敤
+ const wmsInOutStockRecordQueryDrawerRef=ref(null);
+ // 鏂板鐨勬煡璇㈡潯浠�
+ const queryForm = ref({
+ searchVal: '',
+ str_searchFormInputAttrs:[]
+ })
+ //瀹氫箟鏁翠綋妯$硦鏌ヨ鐨勫垪鏁扮粍(娉ㄦ剰锛氬繀椤诲ぇ灏忓啓璺熷悗绔殑瀹炰綋绫诲睘鎬у悕涓�鑷达紝鍚﹀垯浼氬鑷村尮閰嶄笉瀵圭殑闂)
+ const _searchFormInputAttrs = ref([
+ 'MaterialNo', 'MaterialName', 'Remark'
+ ]);
+ const searchFormInputAttrs_Placeholder = ref('璇疯緭鍏ョ墿鏂欑紪鐮�/鐗╂枡鍚嶇О/澶囨敞');
+
+
+ // 鍔ㄦ�佹灇涓鹃�夐」
+ const enumOptions = reactive({
+ stockType: [] as Array<{label: string; value: any }>,
+ })
+
+ // 鑾峰彇鏋氫妇鏁版嵁
+ const fetchEnumData = async () => {
+ try {
+ const stockTypeEnumData = await getWmsEnumData({
+ EnumName: 'StockTypeEnum',
+})
+enumOptions.stockType = stockTypeEnumData.map((item) => ({
+ label: item.description,
+ value: item.value,
+}))
+
+ } catch (error) {
+ console.error('鑾峰彇鏋氫妇鏁版嵁澶辫触:', error)
+ }
+ }
+
+ // 缁勪欢鎸傝浇鏃惰幏鍙栨灇涓炬暟鎹�
+ onMounted(() => {
+ fetchEnumData()
+ })
+
+ // 瀹氫箟鍝嶅簲寮忔煡璇㈡暟鎹�
+ const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[] });
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙涓婚〉闈腑鐨勬寜閽�愭煡璇€�戯級
+ const handleQueryForMain = async () => {
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal;
+ _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
+ tableRef.value.getList(_curHighQueryData.value)
+ }
+ // 鏂扮増鐨勬煡璇㈡柟娉曪紙楂樼骇鏌ヨ涓殑鎸夐挳銆愭煡璇€�戯級
+ const handleQuery = async (extraParams = {}) => {
+ let filteredData = commonGetHighQueryForm(extraParams);
+ commonSaveCurHighQueryData(filteredData);
+ tableRef.value.getList(filteredData)
+ }
+ // 鏂扮増鐨勬煡璇㈤噸缃�
+ const resetQuery = () => {
+ queryForm.value.searchVal = ''
+ queryForm.value.str_searchFormInputAttrs=_searchFormInputAttrs.value;
+ }
+ //鏂扮増鐨勫鍑烘柟娉�
+ const handleExport=()=>{
+ onExport(_curHighQueryData.value);
+ }
+ // 鏂扮増鐨勬煡璇㈠脊鍑烘鍏抽棴鏂规硶
+ const closeQuery = (extraParams={}) => {
+ let filteredData = commonGetHighQueryForm(extraParams);
+ console.log("closeQuery鏂规硶");
+ console.log(filteredData);
+ commonSaveCurHighQueryData(filteredData);
+ }
+ //淇濆瓨鏌ヨ鍊�
+ const commonSaveCurHighQueryData=(filteredData={})=>{
+ _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData };
+ _curHighQueryData.value.searchVal = queryForm.value.searchVal
+ _curHighQueryData.value.str_searchFormInputAttrs =_searchFormInputAttrs.value;
+ }
+ //鑾峰彇楂樼骇鏌ヨ寮瑰嚭妗嗙殑鏌ヨ鍊�
+ const commonGetHighQueryForm=(extraParams={})=>{
+ // 杩囨护鎺� undefined 鐨勫��
+ let filteredData = Object.assign(
+ {},
+ ...Object.entries(extraParams).map(([key, value]) =>
+ value !== undefined ? { [key]: value } : {}
+ )
+ )
+ //缁勫悎妯$硦鏌ヨ
+ filteredData.searchVal = queryForm.value.searchVal
+ filteredData.str_searchFormInputAttrs =_searchFormInputAttrs.value;
+ return filteredData;
+ }
+
+
+ /**
+ * @returns 琛ㄦ牸
+ */
+ const RenderBaseTable = (props: RenderTableType) => {
+ const {
+ url,
+ dataSource,
+ isDrag,
+ isChecked,
+ isHidePagination,
+ params,
+ autoHeight,
+ } = props
+
+ return (
+ <div
+ class={{
+ [styles.wmsInOutStockRecordList]: true,
+ }}
+ >
+ <BaseTable
+ ref={tableRef}
+ url={url}
+ sortUrlTpl="/api/v1/HIAWms/wmsInOutStockRecord/{id}/adjustsort/{sort}"
+ v-model:dataSource={dataSource.value}
+ columns={columns}
+ contextMenu={contextMenu}
+ params={params}
+ isDrag={isDrag}
+ isChecked={isChecked}
+ autoHeight={autoHeight}
+ onCheck={onCheck}
+ onRowClick={onRowClick}
+ isHidePagination={isHidePagination}
+ pageSize={20}
+ v-slots={{
+ name: ({ row }: any) => {
+ return row?.name ? (
+ <TdButton
+ onClick={() => openDetail(row)}
+ text={<span style="color:#5a84ff">璇︽儏</span>}
+ icon="scale"
+ tip={row?.name}
+ hover
+ >
+ {row?.name}
+ </TdButton>
+ ) : (
+ '-'
+ )
+ },
+ }}
+ ></BaseTable>
+ </div>
+ )
+ }
+
+ return () => {
+ return (
+ <div class={styles.wmsInOutStockRecordContent}>
+ {/* 娣诲姞/缂栬緫 */}
+ <WmsInOutStockRecordDrawer
+ v-model={dialogConfig.visible}
+ title={dialogConfig.title}
+ row={current.value}
+ sort={sort.value}
+ onConfirm={onConfirmWmsInOutStockRecord}
+ />
+ {/* 楂樼骇鏌ヨ */}
+ <WmsInOutStockRecordQueryDrawer
+ ref="wmsInOutStockRecordQueryDrawerRef"
+ v-model={dialogConfigForQuery.visible}
+ title={dialogConfigForQuery.title}
+ row={current.value}
+ sort={sort.value}
+ onConfirmQuery={handleQuery}
+ onRestQuery={resetQuery}
+ onClose={closeQuery}
+ />
+
+ <div class={styles.headerContent}>
+ <div class={styles.header}>
+ <IconButton
+ v-permission="wmsInOutStockRecord-add"
+ icon="add-p"
+ onClick={onAddWmsInOutStockRecord}
+ type="primary"
+ >
+ 娣诲姞
+ </IconButton>
+ <el-divider direction="vertical" />
+
+ <el-divider direction="vertical" />
+ <el-upload
+ v-permission="wmsInOutStockRecord-import"
+ name="file"
+ accept=".xlsx,.xls,.csv"
+ show-file-list={false}
+ onError={onError}
+ onSuccess={onSuccess}
+ before-upload={onBeforeUpload}
+ headers={headers.value}
+ action="/api/v1/HIAWms/wmsInOutStockRecord/import"
+ >
+ <IconButton icon="in">瀵煎叆</IconButton>
+ </el-upload>
+
+ <IconButton
+ v-permission="wmsInOutStockRecord-output"
+ icon="out"
+ onClick={handleExport}
+ >
+ 瀵煎嚭
+ </IconButton>
+ </div>
+ <ElFormItem style={{ marginTop: '15px' }}>
+ <ElFormItem label="鍏抽敭瀛�">
+ <ElInput
+ v-model={queryForm.value.searchVal}
+ placeholder={searchFormInputAttrs_Placeholder.value}
+ clearable
+ class={styles.formItem}
+ />
+ </ElFormItem>
+ <IconButton type="primary" icon="search" onClick={handleQueryForMain}>
+ 鏌ヨ
+ </IconButton>
+ {/* <IconButton style="" icon="refresh" onClick={resetQuery}>
+ 閲嶇疆
+ </IconButton> */}
+ <IconButton
+ v-permission="wmsInOutStockRecord-add"
+ icon="search"
+ onClick={onAdvancedQuery}
+ type="primary"
+ >
+ 楂樼骇鏌ヨ
+ </IconButton>
+ </ElFormItem>
+ </div>
+
+ <RenderBaseTable
+ url="/api/v1/HIAWms/wmsInOutStockRecord/page"
+ dataSource={dataSource}
+ isChecked={true}
+ isDrag={true}
+ />
+ </div>
+ )
+ }
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.module.scss" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.module.scss"
new file mode 100644
index 0000000..0d44341
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.module.scss"
@@ -0,0 +1,7 @@
+.WmsInOutStockRecord {
+ background-color: #fff;
+ border-radius: 5px 5px 0 0;
+ width: 100%;
+ height: 100%;
+ border: 1px solid #dbdbdb;
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.tsx" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.tsx"
new file mode 100644
index 0000000..39abbb5
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/WmsInOutStockRecord.tsx"
@@ -0,0 +1,80 @@
+import {
+ Component,
+ DefineComponent,
+ defineComponent,
+ markRaw,
+ ref,
+ SetupContext,
+ onMounted,
+} from 'vue'
+import styles from './WmsInOutStockRecord.module.scss'
+import Tab from '@/components/Tab/Tab'
+import { useProvideModels } from '@/libs/Provider/app'
+import { usePermission } from '@/libs/Permission/Permission'
+import { permissionCodes } from '../enum'
+import { ModuleType, TabItem } from '../type/Type'
+import { getEntityNames } from '@/hooks/hook'
+import TabPane from '@/components/Tab/TabPane'
+
+const Models: ModuleType = import.meta.glob('./config/*.json', {
+ eager: true,
+})
+
+const entityNames = getEntityNames(Models)
+
+const nameToLabelMap = [{ name: 'WmsInOutStockRecord', label: '鍑哄叆搴撹褰�' }]
+
+export default defineComponent({
+ name: 'WmsInOutStockRecord',
+
+ setup(props, ctx: SetupContext) {
+ useProvideModels()
+ usePermission(props, permissionCodes)
+
+ const rf = ref<{
+ [key: string]: any
+ }>({})
+
+ const tabData = ref<TabItem[]>([])
+
+ const onTabChange = (v: string) => {
+ rf.value?.[v]?.reloadList()
+ }
+
+ const initTableData = async () => {
+ for (const i in entityNames) {
+ const name = entityNames[i]
+ const module = await import(`./Pages/${name}/${name}.tsx`)
+ const WmsInOutStockRecord = markRaw(module.default)
+ const foundLabel =
+ nameToLabelMap.find((item) => item.name === name)?.label || name
+ tabData.value.push({
+ label: foundLabel,
+ name,
+ component: WmsInOutStockRecord,
+ })
+ }
+ }
+
+ initTableData()
+
+ return () => {
+ return (
+ <div class={styles.WmsInOutStockRecord}>
+ <Tab data={tabData.value} type="list" onTab={onTabChange}>
+ {tabData.value.map((widgetInfo) => {
+ const Widget: any = widgetInfo.component
+ return (
+ <TabPane label={widgetInfo.label} name={widgetInfo.name}>
+ <Widget
+ ref={(r: any) => (rf.value['WmsInOutStockRecord'] = r)}
+ ></Widget>
+ </TabPane>
+ )
+ })}
+ </Tab>
+ </div>
+ )
+ }
+ },
+})
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/config/WmsInOutStockRecord.json" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/config/WmsInOutStockRecord.json"
new file mode 100644
index 0000000..c4e9885
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/Views/config/WmsInOutStockRecord.json"
@@ -0,0 +1,3 @@
+{
+ "name": "WmsInOutStockRecord"
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/enum.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/enum.ts"
new file mode 100644
index 0000000..1b6b3b2
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/enum.ts"
@@ -0,0 +1,15 @@
+export interface TabType {
+ label: string
+ name: string
+ columns?: any[]
+ data?: any[]
+ isFooter: boolean
+ [key: string]: any
+}
+
+export const permissionCodes = {
+ 'wmsInOutStockRecord-list': '鍒楄〃-鍒楄〃',
+ 'wmsInOutStockRecord-add': '鍒楄〃-娣诲姞',
+ 'wmsInOutStockRecord-import': '鍒楄〃-瀵煎叆',
+ 'wmsInOutStockRecord-output': '鍒楄〃-杈撳嚭',
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/index.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/index.ts"
new file mode 100644
index 0000000..a9e338e
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/index.ts"
@@ -0,0 +1,14 @@
+import WmsInOutStockRecord from './Views/WmsInOutStockRecord'
+import Setting from '@/components/Setting/Setting'
+import { provider } from '@/provider/index'
+import p from '../../assets/svg/p.svg'
+
+export default {
+ is: 'WmsInOutStockRecord',
+ name: '鍑哄叆搴撹褰�',
+ category: 'run',
+ icon: p,
+ authorizationRequired: false,
+ canvasView: provider(WmsInOutStockRecord),
+ settingsView: Setting,
+}
diff --git "a/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/type/type.d.ts" "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/type/type.d.ts"
new file mode 100644
index 0000000..708d39c
--- /dev/null
+++ "b/Weben_CMS\344\270\223\347\224\250\344\273\243\347\240\201\347\224\237\346\210\220\345\231\250/Weben_CMS_TemplateDemo/web/src/widgets/WmsInOutStockRecord/type/type.d.ts"
@@ -0,0 +1,45 @@
+import { Component } from 'vue'
+
+export interface DataItemType {
+ id?: string
+ name?: string
+ code?: string
+ description?: string
+ label?: string
+ value?: string | number
+}
+
+export interface WmsInOutStockRecordBaseType {
+ id?: string
+ name?: string
+ code?: string
+ value?: number
+ description?: string
+ options?: Array<DataItemType>
+ abilityValue?: number | string
+ data?: DataItemType
+ defaultValue?: string | number
+ flow: string
+}
+
+export interface FlowDefinitionType {
+ id?: string
+ name?: string
+ code?: string
+ description?: string
+}
+
+export type ModuleType = Record<
+ string,
+ {
+ default: Record<string, string>
+ name: string
+ }
+>
+
+export interface TabItem {
+ name: string
+ label: string
+ component: Component
+ hidden?: boolean
+}
--
Gitblit v1.9.3