From becbbb4135880b054e20153e889a3932bae679b9 Mon Sep 17 00:00:00 2001
From: zs <zhousong@weben-smart.com>
Date: 周二, 13 5月 2025 16:59:55 +0800
Subject: [PATCH] 库存查询
---
HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs | 53 --
HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialStockAppService.cs | 64 ++
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockDto.cs | 146 +++++--
HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs | 6
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialStockAppService.cs | 6
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockExportModel.cs | 175 ++++++++
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockUpdateDto.cs | 27
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStocksImportModel.cs | 67 +-
CommonDLL/CmsQueryExtensions.dll | 0
HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx | 10
/dev/null | 114 -----
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateOrUpdateDtoBase.cs | 91 +++-
Weben_CMS专用代码生成器/queryExtensions/CmsQueryExtensions/Utils/GetEnumDescriptionUtil.cs | 2
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStockInput.cs | 360 ++++++++++++++++++
HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateDto.cs | 34
HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsMaterialStockAutoMapperProfile.cs | 2
HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs | 27 +
HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterialStocks/IWmsMaterialStockRepository.cs | 4
18 files changed, 859 insertions(+), 329 deletions(-)
diff --git a/CommonDLL/CmsQueryExtensions.dll b/CommonDLL/CmsQueryExtensions.dll
index fb7ab04..c64db13 100644
--- a/CommonDLL/CmsQueryExtensions.dll
+++ b/CommonDLL/CmsQueryExtensions.dll
Binary files differ
diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx
index 977dd17..9e583a7 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx
+++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Views/Pages/WmsMaterialStock/WmsMaterialStock.tsx
@@ -145,7 +145,7 @@
tableRef.value = {
dataSource: [],
}
- handleQueryForMain()
+ // handleQueryForMain()
})
// 瀹氫箟鍝嶅簲寮忔煡璇㈡暟鎹�
@@ -158,10 +158,10 @@
_curHighQueryData.value.searchVal = queryForm.value.searchVal
_curHighQueryData.value.str_searchFormInputAttrs =
_searchFormInputAttrs.value
- if (!_curHighQueryData.value?.storageTypeNo) {
- _curHighQueryData.value.storageTypeNo = 1
- }
- tableRef.value.getList(_curHighQueryData.value)
+ // if (!_curHighQueryData.value?.storageTypeNo) {
+ // _curHighQueryData.value.storageTypeNo = 1
+ // }
+ tableRef.value?.getList(_curHighQueryData.value)
}
// 鏂扮増鐨勬煡璇㈡柟娉曪紙楂樼骇鏌ヨ涓殑鎸夐挳銆愭煡璇€�戯級
const handleQuery = async (extraParams = {}) => {
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStockInput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStockInput.cs
new file mode 100644
index 0000000..0221eb9
--- /dev/null
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStockInput.cs
@@ -0,0 +1,360 @@
+using CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using CmsQueryExtensions.Extension;
+using Volo.Abp.Application.Dtos;
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
+
+/// <summary>
+/// 鍑哄叆搴撳崟鎹鎯呮煡璇㈠弬鏁�
+/// </summary>
+public class GetWmsMaterialStockInput : 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>
+ /// 鐗╂枡ID
+ /// </summary>
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡ID-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialId_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ public string MaterialName { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialName_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿
+ /// </summary>
+ public string ContainerNo { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum ContainerNo_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 瀹瑰櫒鐘舵��
+ /// </summary>
+ public ContainerStatusEnum? ContainerStatus { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒鐘舵��-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum ContainerStatus_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 瀹瑰櫒绫诲瀷
+ /// </summary>
+ public ContainerTypeEnum? ContainerType { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒绫诲瀷-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum ContainerType_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鐗╂枡缂栧彿
+ /// </summary>
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栧彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialNo_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 搴撳瓨鏁伴噺
+ /// </summary>
+ public int? StockNumber { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鏁伴噺-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum StockNumber_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鐗╂枡鎵规
+ /// </summary>
+ public string MaterialBatch { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鎵规-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialBatch_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鍙�
+ /// </summary>
+ public string SupplierCode { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鍙�-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum SupplierCode_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鏈哄瀷/瑙勬牸
+ /// </summary>
+ public string MaterialModel { get; set; }
+
+ /// <summary>
+ /// 鏈哄瀷/瑙勬牸-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum MaterialModel_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 搴撲綅缂栧彿
+ /// </summary>
+ public string PlaceNo { get; set; }
+
+ /// <summary>
+ /// 搴撲綅缂栧彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum PlaceNo_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 搴撲綅鐘舵��;
+ /// </summary>
+ public PlaceStatusEnum? PlaceStatus { get; set; }
+
+ /// <summary>
+ /// 搴撲綅鐘舵��;-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum PlaceStatus_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 搴撲綅绫诲瀷
+ /// </summary>
+ public PlaceTypeEnum? StorageTypeNo { get; set; } = PlaceTypeEnum.YUANLIAOKUWEI;
+
+ /// <summary>
+ /// 搴撲綅绫诲瀷-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum StorageTypeNo_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鍖哄煙缂栧彿
+ /// </summary>
+ public string AreaCode { get; set; }
+
+ /// <summary>
+ /// 鍖哄煙缂栧彿-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum AreaCode_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 搴撳尯鍚嶇О
+ /// </summary>
+ public string AreaName { get; set; }
+
+ /// <summary>
+ /// 搴撳尯鍚嶇О-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum AreaName_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)
+ /// </summary>
+ public MaterialCheckStatusEnum? CheckStatus { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum CheckStatus_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)
+ /// </summary>
+ public YesNoEnum? IsLock { get; set; }
+
+ /// <summary>
+ /// 鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum IsLock_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鏄惁绌烘墭(2:鍚�,1:鏄�)
+ /// </summary>
+ public YesNoEnum? EmptyContainer { get; set; }
+
+ /// <summary>
+ /// 鏄惁绌烘墭(2:鍚�,1:鏄�)-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum EmptyContainer_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 鍏ュ簱鏃堕棿
+ /// </summary>
+ //琛ㄧず鏄� 楂樼骇鏌ヨ鑼冨洿鏌ヨ鐗规��
+ [HighSearchRangeAttribute]
+ public List<string> InStockTime { get; set; }
+
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public int? Sort { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum Sort_FilterMode { get; set; } = SearchFilterModeEnum.绮惧噯鏌ヨ;
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ public string Remark { get; set; }
+
+ /// <summary>
+ /// 澶囨敞-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum Remark_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string RedundantField1 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum RedundantField1_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string RedundantField2 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum RedundantField2_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string RedundantField3 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum RedundantField3_FilterMode { get; set; } = SearchFilterModeEnum.妯$硦鏌ヨ;
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤-鏌ヨ鍏崇郴杩愮畻绗�
+ /// </summary>
+ public SearchFilterModeEnum IsDisabled_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; }
+
+
+
+}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs
deleted file mode 100644
index 37f3ca4..0000000
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/GetWmsMaterialStocksInput.cs
+++ /dev/null
@@ -1,114 +0,0 @@
-using CMS.Plugin.HIAWms.Domain.Shared.Enums;
-using Volo.Abp.Application.Dtos;
-
-namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
-
-/// <summary>
-/// WmsMaterialStock鏌ヨ鍙傛暟瀵硅薄
-/// </summary>
-public class GetWmsMaterialStocksInput : ExtensiblePagedAndSortedResultRequestDto
-{
- /// <summary>
- /// Gets or sets the filter.
- /// </summary>
- public string Filter { get; set; }
-
- /// <summary>
- /// Gets or sets the name.
- /// </summary>
- public string Name { get; set; }
-
- /// <summary>
- /// 寮�濮嬫椂闂�
- /// </summary>
- public DateTime? StartTime { get; set; }
-
- /// <summary>
- /// 缁撴潫鏃堕棿
- /// </summary>
- public DateTime? EndTime { get; set; }
-
- /// <summary>
- /// 缂栧彿
- /// </summary>
- public virtual string MaterialId { get; set; }
-
- /// <summary>
- /// 妫�楠岀姸鎬�
- /// </summary>
- public MaterialCheckStatusEnum? CheckStatus { get; set; }
- /// <summary>
- /// 鍚嶇О
- /// </summary>
- public virtual string MaterialName { get; set; }
-
- /// <summary>
- /// 瀹瑰櫒缂栧彿
- /// </summary>
- public string ContainerNo { get; set; }
-
- /// <summary>
- /// 瀹瑰櫒鐘舵��
- /// </summary>
- public ContainerStatusEnum? ContainerStatus { get; set; }
-
- /// <summary>
- /// 瀹瑰櫒绫诲瀷
- /// </summary>
- public ContainerTypeEnum? ContainerType { get; set; }
-
- /// <summary>
- /// 鐗╂枡缂栧彿
- /// </summary>
- public string MaterialNo { get; set; }
-
- /// <summary>
- /// 鐗╂枡鎵规
- /// </summary>
- public string MaterialBatch { get; set; }
-
- /// <summary>
- /// 渚涘簲鍟嗙紪鍙�
- /// </summary>
- public string SupplierCode { get; set; }
-
- /// <summary>
- /// 鏈哄瀷
- /// </summary>
- public string MaterialModel { get; set; }
-
- /// <summary>
- /// 搴撲綅缂栧彿
- /// </summary>
- public string PlaceNo { get; set; }
-
- /// <summary>
- /// 搴撲綅鐘舵��
- /// </summary>
- public PlaceStatusEnum? PlaceStatus { get; set; }
-
- /// <summary>
- /// 搴撲綅绫诲瀷缂栧彿
- /// </summary>
- public PlaceTypeEnum? StorageTypeNo { get; set; } = PlaceTypeEnum.YUANLIAOKUWEI;
-
- /// <summary>
- /// 鍖哄煙缂栧彿
- /// </summary>
- public string AreaCode { get; set; }
-
- /// <summary>
- /// 搴撳尯鍚嶇О
- /// </summary>
- public string AreaName { get; set; }
-
- /// <summary>
- /// 鏄惁閿佸畾
- /// </summary>
- public YesNoEnum? IsLock { get; set; }
-
- /// <summary>
- /// 鍏ュ簱鏃堕棿
- /// </summary>
- public DateTime? InStockTime { get; set; }
-}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateDto.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateDto.cs
index 16d40b0..2f89dc8 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateDto.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateDto.cs
@@ -1,17 +1,19 @@
-namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
+using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
-/// <summary>
-/// WmsMaterialStock鍒涘缓鍙傛暟瀵硅薄
-/// </summary>
-public class WmsMaterialStockCreateDto : WmsMaterialStockCreateOrUpdateDtoBase
-{
- /// <summary>
- /// 鎺掑簭
- /// </summary>
- public virtual int? Sort { get; set; }
-
- /// <summary>
- /// 鏄惁绂佺敤
- /// </summary>
- public bool? IsDisabled { get; set; } = false;
-}
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
+
+/// <summary>
+/// 鍑哄叆搴撳崟鎹鎯呭垱寤哄弬鏁板璞�
+/// </summary>
+public class WmsMaterialStockCreateDto : WmsMaterialStockCreateOrUpdateDtoBase
+{
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+ public virtual int? Sort { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; } = false;
+}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateOrUpdateDtoBase.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateOrUpdateDtoBase.cs
index fd3e1ed..a7ec0d1 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateOrUpdateDtoBase.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockCreateOrUpdateDtoBase.cs
@@ -1,27 +1,28 @@
using CMS.Plugin.HIAWms.Domain.Shared.Enums;
+using System;
using Volo.Abp.Application.Dtos;
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
-/// <summary>
-/// WmsMaterialStock鍒涘缓鎴栨洿鏂板熀绫�
-/// </summary>
+/// <summary>
+/// 鍑哄叆搴撳崟鎹鎯呭垱寤烘垨鏇存柊鍩虹被
+/// </summary>
public abstract class WmsMaterialStockCreateOrUpdateDtoBase : ExtensibleEntityDto
{
/// <summary>
- /// 缂栧彿
+ /// 鐗╂枡ID
/// </summary>
- public virtual string MaterialId { get; set; }
+ public string MaterialId { get; set; }
/// <summary>
- /// 鍚嶇О
+ /// 鐗╂枡鍚嶇О
/// </summary>
- public virtual string MaterialName { get; set; }
+ public string MaterialName { get; set; }
/// <summary>
/// 瀹瑰櫒缂栧彿
/// </summary>
- public string ContainerNo { get; set; }
+ public string? ContainerNo { get; set; }
/// <summary>
/// 瀹瑰櫒鐘舵��
@@ -46,55 +47,55 @@
/// <summary>
/// 鐗╂枡鎵规
/// </summary>
- public string MaterialBatch { get; set; }
+ public string? MaterialBatch { get; set; }
/// <summary>
/// 渚涘簲鍟嗙紪鍙�
/// </summary>
- public string SupplierCode { get; set; }
+ public string? SupplierCode { get; set; }
/// <summary>
- /// 鏈哄瀷
+ /// 鏈哄瀷/瑙勬牸
/// </summary>
- public string MaterialModel { get; set; }
+ public string? MaterialModel { get; set; }
/// <summary>
/// 搴撲綅缂栧彿
/// </summary>
- public string PlaceNo { get; set; }
+ public string? PlaceNo { get; set; }
/// <summary>
- /// 搴撲綅鐘舵��
+ /// 搴撲綅鐘舵��;
/// </summary>
public PlaceStatusEnum PlaceStatus { get; set; }
/// <summary>
- /// 搴撲綅绫诲瀷缂栧彿
+ /// 搴撲綅绫诲瀷
/// </summary>
public PlaceTypeEnum StorageTypeNo { get; set; }
/// <summary>
/// 鍖哄煙缂栧彿
/// </summary>
- public string AreaCode { get; set; }
+ public string? AreaCode { get; set; }
/// <summary>
/// 搴撳尯鍚嶇О
/// </summary>
- public string AreaName { get; set; }
+ public string? AreaName { get; set; }
/// <summary>
- /// 妫�楠岀姸鎬�
+ /// 妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)
/// </summary>
- public MaterialCheckStatusEnum? CheckStatus { get; set; }
+ public MaterialCheckStatusEnum? CheckStatus { get; set; } = MaterialCheckStatusEnum.HEGE;
/// <summary>
- /// 鏄惁閿佸畾
+ /// 鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)
/// </summary>
public YesNoEnum IsLock { get; set; }
/// <summary>
- /// 鏄惁绌烘墭
+ /// 鏄惁绌烘墭(2:鍚�,1:鏄�)
/// </summary>
public YesNoEnum EmptyContainer { get; set; }
@@ -104,13 +105,55 @@
public DateTime? InStockTime { get; set; }
/// <summary>
- /// 澶囨敞
+ /// 鎺掑簭
/// </summary>
- public virtual string Remark { get; set; }
+ public int Sort { get; set; }
/// <summary>
- /// Initializes a new instance of the <see cref="WmsMaterialStockCreateOrUpdateDtoBase"/> class.
+ /// 澶囨敞
/// </summary>
+ public string? Remark { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string? RedundantField1 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string? RedundantField2 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string? RedundantField3 { get; set; }
+
+ /// <summary>
+ /// 鏄惁绂佺敤
+ /// </summary>
+ public bool? IsDisabled { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? CreatorId { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public string? LastModifierId { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ public DateTime? DeletionTime { get; set; }
+
+
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="WmsMaterialStockCreateOrUpdateDtoBase"/> class.
+ /// </summary>
public WmsMaterialStockCreateOrUpdateDtoBase() : base(false)
{
}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockDto.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockDto.cs
index 6694562..0f61b6a 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockDto.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockDto.cs
@@ -1,30 +1,31 @@
using CMS.Plugin.HIAWms.Domain.Shared.Enums;
using CmsQueryExtensions;
-using System.Runtime.CompilerServices;
using Volo.Abp.Application.Dtos;
+using Volo.Abp.Data;
using Volo.Abp.Domain.Entities;
+
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
-/// <summary>
-/// WmsMaterialStock鏁版嵁鍙傛暟瀵硅薄
-/// </summary>
+/// <summary>
+/// 鍑哄叆搴撳崟鎹鎯呮暟鎹弬鏁板璞�
+/// </summary>
public class WmsMaterialStockDto : ExtensibleEntityDto<Guid>, IHasConcurrencyStamp
{
/// <summary>
- /// 缂栧彿
+ /// 鐗╂枡ID
/// </summary>
- public virtual string MaterialId { get; set; }
+ public string MaterialId { get; set; }
/// <summary>
- /// 鍚嶇О
+ /// 鐗╂枡鍚嶇О
/// </summary>
- public virtual string MaterialName { get; set; }
+ public string MaterialName { get; set; }
/// <summary>
/// 瀹瑰櫒缂栧彿
/// </summary>
- public string ContainerNo { get; set; }
+ public string? ContainerNo { get; set; }
/// <summary>
/// 瀹瑰櫒鐘舵��
@@ -32,7 +33,7 @@
public ContainerStatusEnum ContainerStatus { get; set; }
/// <summary>
- /// 鎵樼洏鐘舵��
+ /// 瀹瑰櫒鐘舵��
/// </summary>
public string ContainerStatusDesc
{
@@ -41,14 +42,13 @@
return GetEnumDescriptionUtil.GetEnumDescription(ContainerStatus);
}
}
-
/// <summary>
/// 瀹瑰櫒绫诲瀷
/// </summary>
public ContainerTypeEnum ContainerType { get; set; }
/// <summary>
- /// 鎵樼洏绫诲瀷
+ /// 瀹瑰櫒绫诲瀷
/// </summary>
public string ContainerTypeDesc
{
@@ -57,8 +57,6 @@
return GetEnumDescriptionUtil.GetEnumDescription(ContainerType);
}
}
-
-
/// <summary>
/// 鐗╂枡缂栧彿
/// </summary>
@@ -72,30 +70,30 @@
/// <summary>
/// 鐗╂枡鎵规
/// </summary>
- public string MaterialBatch { get; set; }
+ public string? MaterialBatch { get; set; }
/// <summary>
/// 渚涘簲鍟嗙紪鍙�
/// </summary>
- public string SupplierCode { get; set; }
+ public string? SupplierCode { get; set; }
/// <summary>
- /// 鏈哄瀷
+ /// 鏈哄瀷/瑙勬牸
/// </summary>
- public string MaterialModel { get; set; }
+ public string? MaterialModel { get; set; }
/// <summary>
/// 搴撲綅缂栧彿
/// </summary>
- public string PlaceNo { get; set; }
+ public string? PlaceNo { get; set; }
/// <summary>
- /// 搴撲綅鐘舵��
+ /// 搴撲綅鐘舵��;
/// </summary>
public PlaceStatusEnum PlaceStatus { get; set; }
/// <summary>
- /// 璐т綅鐘舵��
+ /// 搴撲綅鐘舵��;
/// </summary>
public string PlaceStatusDesc
{
@@ -104,15 +102,13 @@
return GetEnumDescriptionUtil.GetEnumDescription(PlaceStatus);
}
}
-
-
/// <summary>
- /// 搴撲綅绫诲瀷缂栧彿
+ /// 搴撲綅绫诲瀷
/// </summary>
public PlaceTypeEnum StorageTypeNo { get; set; }
/// <summary>
- /// 璐т綅绫诲瀷
+ /// 搴撲綅绫诲瀷
/// </summary>
public string StorageTypeNoDesc
{
@@ -121,40 +117,39 @@
return GetEnumDescriptionUtil.GetEnumDescription(StorageTypeNo);
}
}
-
/// <summary>
/// 鍖哄煙缂栧彿
/// </summary>
- public string AreaCode { get; set; }
+ public string? AreaCode { get; set; }
/// <summary>
/// 搴撳尯鍚嶇О
/// </summary>
- public string AreaName { get; set; }
+ public string? AreaName { get; set; }
/// <summary>
- /// 妫�楠岀姸鎬�
+ /// 妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)
/// </summary>
public MaterialCheckStatusEnum? CheckStatus { get; set; }
/// <summary>
- /// 妫�楠岀姸鎬�
+ /// 妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)
/// </summary>
- public string CheckStatusDesc
+ public string? CheckStatusDesc
{
get
{
+ if (!CheckStatus.HasValue) { return "鏈楠�"; }
return GetEnumDescriptionUtil.GetEnumDescription(CheckStatus);
}
}
-
/// <summary>
- /// 鏄惁閿佸畾
+ /// 鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)
/// </summary>
public YesNoEnum IsLock { get; set; }
/// <summary>
- /// 鏄惁閿佸畾
+ /// 鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)
/// </summary>
public string IsLockDesc
{
@@ -163,14 +158,13 @@
return GetEnumDescriptionUtil.GetEnumDescription(IsLock);
}
}
-
/// <summary>
- /// 鏄惁绌烘墭
+ /// 鏄惁绌烘墭(2:鍚�,1:鏄�)
/// </summary>
- public YesNoEnum EmptyContainer { get; protected set; }
+ public YesNoEnum EmptyContainer { get; set; }
/// <summary>
- /// 鏄惁绌烘墭
+ /// 鏄惁绌烘墭(2:鍚�,1:鏄�)
/// </summary>
public string EmptyContainerDesc
{
@@ -179,7 +173,6 @@
return GetEnumDescriptionUtil.GetEnumDescription(EmptyContainer);
}
}
-
/// <summary>
/// 鍏ュ簱鏃堕棿
/// </summary>
@@ -188,27 +181,88 @@
/// <summary>
/// 鎺掑簭
/// </summary>
- public virtual int Sort { get; set; }
+ public int Sort { get; set; }
+ /// <summary>
+ /// 搴撳瓨娆″簭
+ /// </summary>
+ public int OrderInPlace { get; set; }
/// <summary>
/// 澶囨敞
/// </summary>
- public virtual string Remark { get; set; }
+ public string? Remark { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string? RedundantField1 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string? RedundantField2 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ public string? RedundantField3 { get; set; }
/// <summary>
/// 鏄惁绂佺敤
/// </summary>
- public virtual bool? IsDisabled { get; set; }
+ public bool? IsDisabled { get; set; }
/// <summary>
- /// 骞跺彂鎴�
+ ///
/// </summary>
- public string ConcurrencyStamp { get; set; }
+ public ExtraPropertyDictionary? ExtraProperties { get; set; }
/// <summary>
- /// Gets the export data.
+ ///
/// </summary>
- /// <returns></returns>
+ 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>
+ /// Gets the export data.
+ /// </summary>
+ /// <returns></returns>
public Dictionary<string, object> GetExportData()
{
var exportData = new Dictionary<string, object>();
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockExportModel.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockExportModel.cs
new file mode 100644
index 0000000..439399a
--- /dev/null
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockExportModel.cs
@@ -0,0 +1,175 @@
+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.WmsMaterialStocks;
+
+/// <summary>
+/// 鍑哄叆搴撳崟鎹鎯呭鍑烘ā鍨�
+/// </summary>
+public class WmsMaterialStockExportModel
+{
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡ID", Width = 25)]
+ public string MaterialId { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鍚嶇О
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡鍚嶇О", Width = 25)]
+ public string MaterialName { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒缂栧彿
+ /// </summary>
+ [ExcelColumn(Name = "瀹瑰櫒缂栧彿", Width = 25)]
+ public string ContainerNo { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒鐘舵��
+ /// </summary>
+ [ExcelColumn(Name = "瀹瑰櫒鐘舵��", Width = 25)]
+ public ContainerStatusEnum ContainerStatus { get; set; }
+
+ /// <summary>
+ /// 瀹瑰櫒绫诲瀷
+ /// </summary>
+ [ExcelColumn(Name = "瀹瑰櫒绫诲瀷", Width = 25)]
+ public ContainerTypeEnum ContainerType { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡缂栧彿
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡缂栧彿", Width = 25)]
+ public string MaterialNo { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨鏁伴噺
+ /// </summary>
+ [ExcelColumn(Name = "搴撳瓨鏁伴噺", Width = 25)]
+ public int StockNumber { get; set; }
+
+ /// <summary>
+ /// 鐗╂枡鎵规
+ /// </summary>
+ [ExcelColumn(Name = "鐗╂枡鎵规", Width = 25)]
+ public string MaterialBatch { get; set; }
+
+ /// <summary>
+ /// 渚涘簲鍟嗙紪鍙�
+ /// </summary>
+ [ExcelColumn(Name = "渚涘簲鍟嗙紪鍙�", Width = 25)]
+ public string SupplierCode { get; set; }
+
+ /// <summary>
+ /// 鏈哄瀷/瑙勬牸
+ /// </summary>
+ [ExcelColumn(Name = "鏈哄瀷/瑙勬牸", Width = 25)]
+ public string MaterialModel { get; set; }
+
+ /// <summary>
+ /// 搴撲綅缂栧彿
+ /// </summary>
+ [ExcelColumn(Name = "搴撲綅缂栧彿", Width = 25)]
+ public string PlaceNo { get; set; }
+
+ /// <summary>
+ /// 搴撲綅鐘舵��;
+ /// </summary>
+ [ExcelColumn(Name = "搴撲綅鐘舵��;", Width = 25)]
+ public PlaceStatusEnum PlaceStatus { get; set; }
+
+ /// <summary>
+ /// 搴撲綅绫诲瀷
+ /// </summary>
+ [ExcelColumn(Name = "搴撲綅绫诲瀷", Width = 25)]
+ public PlaceTypeEnum StorageTypeNo { get; set; }
+
+ /// <summary>
+ /// 鍖哄煙缂栧彿
+ /// </summary>
+ [ExcelColumn(Name = "鍖哄煙缂栧彿", Width = 25)]
+ public string AreaCode { get; set; }
+
+ /// <summary>
+ /// 搴撳尯鍚嶇О
+ /// </summary>
+ [ExcelColumn(Name = "搴撳尯鍚嶇О", Width = 25)]
+ public string AreaName { get; set; }
+
+ /// <summary>
+ /// 妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)
+ /// </summary>
+ [ExcelColumn(Name = "妫�楠岀姸鎬�(1:鏈楠�,2:妫�楠岄�氳繃,3:妫�楠屼笉閫氳繃)", Width = 25)]
+ public MaterialCheckStatusEnum? CheckStatus { get; set; }
+
+ /// <summary>
+ /// 鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)
+ /// </summary>
+ [ExcelColumn(Name = "鏄惁閿佸畾(2:鏈攣瀹�,1:宸查攣瀹�)", Width = 25)]
+ public YesNoEnum IsLock { get; set; }
+
+ /// <summary>
+ /// 鏄惁绌烘墭(2:鍚�,1:鏄�)
+ /// </summary>
+ [ExcelColumn(Name = "鏄惁绌烘墭(2:鍚�,1:鏄�)", Width = 25)]
+ public YesNoEnum EmptyContainer { get; set; }
+
+ /// <summary>
+ /// 鍏ュ簱鏃堕棿
+ /// </summary>
+ [ExcelColumn(Name = "鍏ュ簱鏃堕棿", Width = 25)]
+ public DateTime InStockTime { get; set; }
+
+ /// <summary>
+ /// 澶囨敞
+ /// </summary>
+ [ExcelColumn(Name = "澶囨敞", Width = 25)]
+ public string Remark { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ [ExcelColumn(Name = "鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��", Width = 25)]
+ public string RedundantField1 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ [ExcelColumn(Name = "鍐椾綑瀛楁2 - 棰勭暀鎵╁睍鐢ㄩ��", Width = 25)]
+ public string RedundantField2 { get; set; }
+
+ /// <summary>
+ /// 鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��
+ /// </summary>
+ [ExcelColumn(Name = "鍐椾綑瀛楁3 - 棰勭暀鎵╁睍鐢ㄩ��", Width = 25)]
+ public string RedundantField3 { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ [ExcelColumn(Name = "", Width = 25)]
+ public DateTime CreationTime { get; set; }
+
+ /// <summary>
+ ///
+ /// </summary>
+ [ExcelColumn(Name = "", Width = 25)]
+ public DateTime LastModificationTime { 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/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockUpdateDto.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockUpdateDto.cs
index 0578e9f..f61a51c 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockUpdateDto.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStockUpdateDto.cs
@@ -1,14 +1,13 @@
-using Volo.Abp.Domain.Entities;
-
-namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
-
-/// <summary>
-/// WmsMaterialStock鏇存柊鍙傛暟瀵硅薄
-/// </summary>
-public class WmsMaterialStockUpdateDto : WmsMaterialStockCreateOrUpdateDtoBase, IHasConcurrencyStamp
-{
- /// <summary>
- /// 骞跺彂鎴�
- /// </summary>
- public string ConcurrencyStamp { get; set; }
-}
+using Volo.Abp.Domain.Entities;
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
+
+/// <summary>
+/// 鍑哄叆搴撳崟鎹鎯呮洿鏂板弬鏁板璞�
+/// </summary>
+public class WmsMaterialStockUpdateDto : WmsMaterialStockCreateOrUpdateDtoBase, IHasConcurrencyStamp
+{
+ /// <summary>
+ /// 骞跺彂鎴�
+ /// </summary>
+ public string ConcurrencyStamp { get; set; }
+}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStocksImportModel.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStocksImportModel.cs
index 0b363ab..345f303 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStocksImportModel.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterialStocks/WmsMaterialStocksImportModel.cs
@@ -1,34 +1,33 @@
-using static CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks.WmsMaterialStocksExportModel;
-
-namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks
-{
- /// <summary>
- /// WmsMaterialStocks瀵煎叆妯″瀷
- /// </summary>
- public class WmsMaterialStocksImportModel
- {
- private List<WmsMaterialStockImportModel> _wmsmaterialstocks = new();
-
- public List<WmsMaterialStockImportModel> WmsMaterialStocks
- {
- get => _wmsmaterialstocks;
- set
- {
- _wmsmaterialstocks = value;
- var rowIndex = 2;
- _wmsmaterialstocks?.ForEach(x => x.RowIndex = rowIndex++);
- }
- }
-
- /// <summary>
- /// WmsMaterialStock瀵煎叆妯″瀷
- /// </summary>
- public class WmsMaterialStockImportModel : WorkSectionExportModel
- {
- /// <summary>
- /// 琛屽彿
- /// </summary>
- public int RowIndex { get; set; }
- }
- }
-}
+
+namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks
+{
+ /// <summary>
+ /// 鍑哄叆搴撳崟鎹鎯呭鍏ユā鍨�
+ /// </summary>
+ public class WmsMaterialStocksImportModel
+ {
+ private List<WmsMaterialStockImportModel> _WmsMaterialStocks = new();
+
+ public List<WmsMaterialStockImportModel> WmsMaterialStocks
+ {
+ get => _WmsMaterialStocks;
+ set
+ {
+ _WmsMaterialStocks = value;
+ var rowIndex = 2;
+ _WmsMaterialStocks?.ForEach(x => x.RowIndex = rowIndex++);
+ }
+ }
+
+ /// <summary>
+ /// 鍑哄叆搴撳崟鎹鎯呭鍏ユā鍨�
+ /// </summary>
+ public class WmsMaterialStockImportModel : WmsMaterialStockExportModel
+ {
+ /// <summary>
+ /// 琛屽彿
+ /// </summary>
+ public int RowIndex { get; set; }
+ }
+ }
+}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialStockAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialStockAppService.cs
index d297289..b4f1bee 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialStockAppService.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application.Contracts/Services/IWmsMaterialStockAppService.cs
@@ -7,7 +7,7 @@
/// <summary>
/// WmsMaterialStock搴旂敤鏈嶅姟
/// </summary>
-public interface IWmsMaterialStockAppService : ICrudAppService<WmsMaterialStockDto, Guid, GetWmsMaterialStocksInput, WmsMaterialStockCreateDto, WmsMaterialStockUpdateDto>
+public interface IWmsMaterialStockAppService : ICrudAppService<WmsMaterialStockDto, Guid, GetWmsMaterialStockInput, WmsMaterialStockCreateDto, WmsMaterialStockUpdateDto>
{
/// <summary>
/// Clones the asynchronous.
@@ -21,7 +21,7 @@
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
- Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync(GetWmsMaterialStocksInput input);
+ Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync(GetWmsMaterialStockInput input);
/// <summary>
/// Deletes the many asynchronous.
@@ -57,5 +57,5 @@
/// </summary>
/// <param name="input">The input.</param>
/// <returns></returns>
- Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialStocksInput input);
+ Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialStockInput input);
}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs
index 890f1c6..904fd93 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsCommonAppService.cs
@@ -5,9 +5,11 @@
using CMS.Plugin.HIAWms.Domain.WmsMaterials;
using CMS.Plugin.HIAWms.Domain.WmsMaterialStocks;
using CMS.Plugin.HIAWms.Domain.WmsPlaces;
+using CmsQueryExtensions.Extension;
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp;
@@ -44,8 +46,10 @@
/// <exception cref="UserFriendlyException"></exception>
public async Task<Dictionary<WmsPlaceDto, int>> FindAvailablePlacesAsync(string materialModel,int requiredNum, string materialNo="" )
{
+
+ var whereConditions = DynamicGetQueryParams(new GetWmsMaterialStockInput { StorageTypeNo = Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI });
// 1. 鑾峰彇鎵�鏈夊簱瀛樺拰搴撲綅淇℃伅
- var stockList = await _wmsMaterialStockRepository.GetListAsync(new WmsMaterialStock { StorageTypeNo = Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI});
+ var stockList = await _wmsMaterialStockRepository.GetListAsync(whereConditions);
var placeList = await _wmsPlaceRepository.GetListAsync(new WmsPlace { StorageTypeNo = Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI});
var allPlaceList = ObjectMapper.Map<List<WmsPlace>, List<WmsPlaceDto>>(placeList);
@@ -113,7 +117,8 @@
public async Task<Dictionary<WmsMaterialStockDto, int>> FindStockAsync(string materialModel, int requiredNum, string materialNo = "")
{
// 1. 鑾峰彇鎵�鏈夊簱瀛橈紙鎺掗櫎閿佸畾搴撳瓨锛�
- var stockList = (await _wmsMaterialStockRepository.GetListAsync(new WmsMaterialStock()))
+ var whereConditions = DynamicGetQueryParams(new GetWmsMaterialStockInput());
+ var stockList = (await _wmsMaterialStockRepository.GetListAsync(whereConditions))
.Where(x => x.IsLock == Domain.Shared.Enums.YesNoEnum.N)
.Where(x=>x.StorageTypeNo == Domain.Shared.Enums.PlaceTypeEnum.YUANLIAOKUWEI)
.ToList();
@@ -150,5 +155,23 @@
return allocation;
}
+
+ private FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> DynamicGetQueryParams(GetWmsMaterialStockInput input)
+ {
+ //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+ var whereConditions = WhereConditionsExtensions.GetWhereConditions<WmsMaterialStock, GetWmsMaterialStockInput>(input);
+ if (!whereConditions.IsSuccess)
+ {
+ throw new Exception("鍔ㄦ�佹瀯閫犳煡璇㈡潯浠跺け璐�:" + whereConditions.ErrMsg);
+ }
+
+ //涔熷彲鍐嶆鑷畾涔夋瀯寤烘煡璇㈡潯浠�
+ Expression<Func<WmsMaterialStock, bool>> extendExpression = a => a.IsDeleted == false;
+ // 浣跨敤 System.Linq.PredicateBuilder 鐨� And
+ var pres = (System.Linq.Expressions.Expression<Func<WmsMaterialStock, bool>>)(whereConditions.data);
+ whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression);
+
+ return whereConditions;
+ }
}
}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialStockAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialStockAppService.cs
index 334b107..6cb1570 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialStockAppService.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsMaterialStockAppService.cs
@@ -58,7 +58,7 @@
}
/// <inheritdoc />
- public virtual async Task<PagedResultDto<WmsMaterialStockDto>> GetListAsync(GetWmsMaterialStocksInput input)
+ public virtual async Task<PagedResultDto<WmsMaterialStockDto>> GetListAsync(GetWmsMaterialStockInput input)
{
Check.NotNull(input, nameof(input));
@@ -67,15 +67,17 @@
input.Sorting = nameof(WmsMaterialStock.Sort);
}
- var specification = new WmsMaterialStockSpecification(input.Name);
- var stock = ObjectMapper.Map<GetWmsMaterialStocksInput, WmsMaterialStock>(input);
- var count = await _wmsmaterialstockRepository.GetCountAsync(stock, input.StartTime, input.EndTime, input.Filter, specification);
- var list = await _wmsmaterialstockRepository.GetListAsync(stock, input.StartTime, input.EndTime, input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification);
+ //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
+ var whereConditions = DynamicGetQueryParams(input);
+
+ var stock = ObjectMapper.Map<GetWmsMaterialStockInput, WmsMaterialStock>(input);
+ var count = await _wmsmaterialstockRepository.GetCountAsync(whereConditions);
+ var list = await _wmsmaterialstockRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount);
return new PagedResultDto<WmsMaterialStockDto>(count, ObjectMapper.Map<List<WmsMaterialStock>, List<WmsMaterialStockDto>>(list));
}
- public async Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync(GetWmsMaterialStocksInput input)
+ public async Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync(GetWmsMaterialStockInput input)
{
Check.NotNull(input, nameof(input));
@@ -93,8 +95,40 @@
var count = await _wmsmaterialstockRepository.GetDetailCountAsync(whereConditions);
var list = await _wmsmaterialstockRepository.GetStockDetailListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount);
+ var result = list
+ .GroupBy(x => x.PlaceNo) // 鎸夊簱浣嶅彿鍒嗙粍
+ .SelectMany(g => g
+ .OrderBy(x => x.InStockTime) // 鎸夊叆搴撴椂闂存帓搴�
+ .Select((x, index) => new WmsMaterialStockDto
+ {
+ MaterialId = x.MaterialId,
+ MaterialBatch = x.MaterialBatch,
+ MaterialModel = x.MaterialModel,
+ MaterialName = x.MaterialName,
+ MaterialNo = x.MaterialNo,
+ CheckStatus = x.CheckStatus,
+ ContainerNo = x.ContainerNo,
+ ContainerType = x.ContainerType,
+ StockNumber = x.StockNumber,
+ SupplierCode = x.SupplierCode,
+ PlaceNo = x.PlaceNo,
+ PlaceStatus = x.PlaceStatus,
+ StorageTypeNo = x.StorageTypeNo,
+ AreaCode = x.AreaCode,
+ AreaName = x.AreaName,
+ IsLock = x.IsLock,
+ Id = x.Id,
+ EmptyContainer = x.EmptyContainer,
+ InStockTime = x.InStockTime,
+ RedundantField1 = x.RedundantField1,
+ RedundantField2 = x.RedundantField2,
+ RedundantField3 = x.RedundantField3,
+ Remark = x.Remark,
+ OrderInPlace = index+1
- return new PagedResultDto<WmsMaterialStockDto>(count, ObjectMapper.Map<List<WmsMaterialStock>, List<WmsMaterialStockDto>>(list));
+ })).ToList();
+
+ return new PagedResultDto<WmsMaterialStockDto>(count, result);
}
/// <summary>
@@ -102,17 +136,17 @@
/// </summary>
/// <param name="input">杈撳叆鍙傛暟</param>
/// <returns></returns>
- private FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> DynamicGetQueryParams(GetWmsMaterialStocksInput input)
+ private FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> DynamicGetQueryParams(GetWmsMaterialStockInput input)
{
//鍔ㄦ�佹瀯閫犳煡璇㈡潯浠�
- var whereConditions = WhereConditionsExtensions.GetWhereConditions<WmsMaterialStock, GetWmsMaterialStocksInput>(input);
+ var whereConditions = WhereConditionsExtensions.GetWhereConditions<WmsMaterialStock, GetWmsMaterialStockInput>(input);
if (!whereConditions.IsSuccess)
{
throw new Exception("鍔ㄦ�佹瀯閫犳煡璇㈡潯浠跺け璐�:" + whereConditions.ErrMsg);
}
//涔熷彲鍐嶆鑷畾涔夋瀯寤烘煡璇㈡潯浠�
- Expression<Func<WmsMaterialStock, bool>> extendExpression = a => a.IsDeleted == false ;
+ Expression<Func<WmsMaterialStock, bool>> extendExpression = a => a.IsDeleted == false;
// 浣跨敤 System.Linq.PredicateBuilder 鐨� And
var pres = (System.Linq.Expressions.Expression<Func<WmsMaterialStock, bool>>)(whereConditions.data);
whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression);
@@ -415,7 +449,7 @@
/// <inheritdoc />
public virtual async Task AdjustSortAsync(Guid id, int sort)
{
- var list = await _wmsmaterialstockRepository.GetListAsync(null, null, null, nameof(WmsMaterialStock.Sort));
+ var list = await _wmsmaterialstockRepository.GetListAsync(null, "", 0, 999);
if (list != null && list.Any())
{
var initSort = 1;
@@ -595,7 +629,7 @@
}
/// <inheritdoc />
- public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialStocksInput input)
+ public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialStockInput input)
{
Check.NotNull(input, nameof(input));
@@ -604,9 +638,9 @@
input.Sorting = nameof(WmsMaterialStock.Sort);
}
- var specification = new WmsMaterialStockSpecification(input.Name);
- var stock = ObjectMapper.Map<GetWmsMaterialStocksInput, WmsMaterialStock>(input);
- var list = await _wmsmaterialstockRepository.GetListAsync(stock, input.StartTime, input.EndTime, input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification, includeDetails: true);
+ var whereConditions = DynamicGetQueryParams(input);
+ var stock = ObjectMapper.Map<GetWmsMaterialStockInput, WmsMaterialStock>(input);
+ var list = await _wmsmaterialstockRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount);
var result = ObjectMapper.Map<List<WmsMaterialStock>, List<WmsMaterialStockDto>>(list);
var sheets = new Dictionary<string, object>
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsMaterialStockAutoMapperProfile.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsMaterialStockAutoMapperProfile.cs
index 8973ba8..dfea33f 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsMaterialStockAutoMapperProfile.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/MapperProfiles/WmsMaterialStockAutoMapperProfile.cs
@@ -23,6 +23,6 @@
* into multiple profile classes for a better organization. */
CreateMap<WmsMaterialStock, WmsMaterialStockDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
CreateMap<WmsMaterialStockCreateDto, WmsMaterialStock>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
- CreateMap<GetWmsMaterialStocksInput, WmsMaterialStock>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
+ CreateMap<GetWmsMaterialStockInput, WmsMaterialStock>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None);
}
}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterialStocks/IWmsMaterialStockRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterialStocks/IWmsMaterialStockRepository.cs
index a8ab1c7..a56a849 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterialStocks/IWmsMaterialStockRepository.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterialStocks/IWmsMaterialStockRepository.cs
@@ -51,7 +51,7 @@
/// <param name="includeDetails">if set to <c>true</c> [include details].</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns></returns>
- Task<List<WmsMaterialStock>> GetListAsync(WmsMaterialStock? stock, DateTime? startTime = null, DateTime? endTime = null, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsMaterialStock> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default);
+ Task<List<WmsMaterialStock>> GetListAsync(FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default);
/// <summary>
/// 鑾峰彇鎵�鏈夌殑搴撳瓨淇℃伅
@@ -87,5 +87,5 @@
/// <param name="specification">The specification.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns></returns>
- Task<long> GetCountAsync(WmsMaterialStock? stock, DateTime? startTime = null, DateTime? endTime = null, string filter = null, Specification<WmsMaterialStock> specification = null, CancellationToken cancellationToken = default);
+ Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> whereConditions, CancellationToken cancellationToken = default);
}
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs
index 202ee99..e50badd 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsMaterialStockRepository.cs
@@ -73,33 +73,10 @@
}
/// <inheritdoc />
- public async Task<List<WmsMaterialStock>> GetListAsync(WmsMaterialStock? stock, DateTime? startTime = null, DateTime? endTime = null, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsMaterialStock> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default)
+ public async Task<List<WmsMaterialStock>> GetListAsync(FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default)
{
- specification ??= new WmsMaterialStockSpecification();
var baseQuery = (await GetDbSetAsync())
- .IncludeDetails(includeDetails)
- .WhereIf(!filter.IsNullOrWhiteSpace(),
- u => u.MaterialNo.Contains(filter) ||
- u.MaterialName.Contains(filter) ||
- u.MaterialBatch.Contains(filter) ||
- u.PlaceNo.Contains(filter) ||
- u.AreaName.Contains(filter))
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialNo), u => u.MaterialNo.Contains(stock.MaterialNo))
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialName), u => u.MaterialName.Contains(stock.MaterialName))
- .WhereIf(!string.IsNullOrEmpty(stock?.ContainerNo), u => u.ContainerNo == stock.ContainerNo)
- .WhereIf(stock?.ContainerStatus > 0, u => u.ContainerStatus == stock.ContainerStatus)
- .WhereIf(stock?.ContainerType > 0, u => u.ContainerType == stock.ContainerType)
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialBatch), u => u.MaterialBatch == stock.MaterialBatch)
- .WhereIf(!string.IsNullOrEmpty(stock?.SupplierCode), u => u.SupplierCode == stock.SupplierCode)
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialModel), u => u.MaterialModel==stock.MaterialModel)
- .WhereIf(!string.IsNullOrEmpty(stock?.PlaceNo), u => u.PlaceNo == stock.PlaceNo)
- .WhereIf(stock.PlaceStatus > 0, u => u.PlaceStatus == stock.PlaceStatus)
- .WhereIf(stock?.StorageTypeNo > 0, u => u.StorageTypeNo == stock.StorageTypeNo)
- .WhereIf(!string.IsNullOrEmpty(stock?.AreaCode), u => u.AreaCode == stock.AreaCode)
- .WhereIf(!string.IsNullOrEmpty(stock?.AreaName), u => u.AreaName.Contains(stock.AreaName))
- .WhereIf(stock.IsLock > 0, u => u.IsLock == stock.IsLock)
- .WhereIf(startTime.HasValue, u => u.InStockTime >= startTime.Value)
- .WhereIf(endTime.HasValue, u => u.InStockTime <= endTime.Value)
+ .IncludeDetails(includeDetails).WhereIf(whereConditions != null, whereConditions.data)
.Where(u => !u.IsDeleted)
.AsQueryable();
@@ -157,32 +134,10 @@
}
/// <inheritdoc />
- public async Task<long> GetCountAsync(WmsMaterialStock? stock, DateTime? startTime = null, DateTime? endTime = null, string filter = null, Specification<WmsMaterialStock> specification = null, CancellationToken cancellationToken = default)
+ public async Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsMaterialStock, bool>>> whereConditions, CancellationToken cancellationToken = default)
{
- specification ??= new WmsMaterialStockSpecification();
var baseQuery = (await GetQueryableAsync())
- .WhereIf(!filter.IsNullOrWhiteSpace(),
- u => u.MaterialNo.Contains(filter) ||
- u.MaterialName.Contains(filter) ||
- u.MaterialBatch.Contains(filter) ||
- u.PlaceNo.Contains(filter) ||
- u.AreaName.Contains(filter))
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialNo), u => u.MaterialNo.Contains(stock.MaterialNo))
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialName), u => u.MaterialName.Contains(stock.MaterialName))
- .WhereIf(!string.IsNullOrEmpty(stock?.ContainerNo), u => u.ContainerNo == stock.ContainerNo)
- .WhereIf(stock?.ContainerStatus > 0, u => u.ContainerStatus == stock.ContainerStatus)
- .WhereIf(stock?.ContainerType > 0, u => u.ContainerType == stock.ContainerType)
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialBatch), u => u.MaterialBatch == stock.MaterialBatch)
- .WhereIf(!string.IsNullOrEmpty(stock?.SupplierCode), u => u.SupplierCode == stock.SupplierCode)
- .WhereIf(!string.IsNullOrEmpty(stock?.MaterialModel), u => u.MaterialModel.Contains(stock.MaterialModel))
- .WhereIf(!string.IsNullOrEmpty(stock?.PlaceNo), u => u.PlaceNo == stock.PlaceNo)
- .WhereIf(stock.PlaceStatus > 0, u => u.PlaceStatus == stock.PlaceStatus)
- .WhereIf(stock?.StorageTypeNo > 0, u => u.StorageTypeNo == stock.StorageTypeNo)
- .WhereIf(!string.IsNullOrEmpty(stock?.AreaCode), u => u.AreaCode == stock.AreaCode)
- .WhereIf(!string.IsNullOrEmpty(stock?.AreaName), u => u.AreaName.Contains(stock.AreaName))
- .WhereIf(stock.IsLock > 0, u => u.IsLock == stock.IsLock)
- .WhereIf(startTime.HasValue, u => u.InStockTime >= startTime.Value)
- .WhereIf(endTime.HasValue, u => u.InStockTime <= endTime.Value)
+ .WhereIf(whereConditions != null, whereConditions.data)
.Where(u => !u.IsDeleted)
.AsQueryable();
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs
index 6944397..c84b892 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms/Controller/WmsMaterialStockController.cs
@@ -52,7 +52,7 @@
/// <param name="input">杈撳叆.</param>
/// <returns></returns>
[HttpGet]
- public virtual Task<PagedResultDto<WmsMaterialStockDto>> GetListAsync([FromQuery] GetWmsMaterialStocksInput input)
+ public virtual Task<PagedResultDto<WmsMaterialStockDto>> GetListAsync([FromQuery] GetWmsMaterialStockInput input)
{
return _wmsmaterialstockAppService.GetListAsync(input);
}
@@ -64,7 +64,7 @@
/// <returns></returns>
[HttpGet]
[Route("StockDetail")]
- public async Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync([FromQuery]GetWmsMaterialStocksInput input)
+ public async Task<PagedResultDto<WmsMaterialStockDto>> GetStockDetailAsync([FromQuery]GetWmsMaterialStockInput input)
{
return await _wmsmaterialstockAppService.GetStockDetailAsync(input);
}
@@ -186,7 +186,7 @@
/// <returns></returns>
[HttpGet]
[Route("Export")]
- public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsMaterialStocksInput input)
+ public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsMaterialStockInput input)
{
input.MaxResultCount = int.MaxValue;
var exportData = await _wmsmaterialstockAppService.ExportAsync(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/queryExtensions/CmsQueryExtensions/Utils/GetEnumDescriptionUtil.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/queryExtensions/CmsQueryExtensions/Utils/GetEnumDescriptionUtil.cs"
index bcf3c5b..5facb9e 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/queryExtensions/CmsQueryExtensions/Utils/GetEnumDescriptionUtil.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/queryExtensions/CmsQueryExtensions/Utils/GetEnumDescriptionUtil.cs"
@@ -18,7 +18,7 @@
public static string GetEnumDescription(Enum enumValue)
{
string value = enumValue.ToString();
- if (string.IsNullOrWhiteSpace(value) || value == "0") return "";
+ if (string.IsNullOrEmpty(value) || value == "0") return "";
FieldInfo field = enumValue.GetType().GetField(value);
object[] objs = field.GetCustomAttributes(typeof(DescriptionAttribute), false); //鑾峰彇鎻忚堪灞炴��
if (objs == null || objs.Length == 0) //褰撴弿杩板睘鎬ф病鏈夋椂锛岀洿鎺ヨ繑鍥炲悕绉�
--
Gitblit v1.9.3