From 0705cb6170a9ba77ba48bbb6dcebb9cf3d73cbea Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期二, 14 十月 2025 02:12:25 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn
---
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs | 76 ++++++++++++++++++++++++++++++-------
1 files changed, 61 insertions(+), 15 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs"
index 9bbf7e4..f8c78c5 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs"
@@ -22,6 +22,7 @@
using WIDESEA_Common.StockEnum;
using WIDESEA_IBasicRepository;
using WIDESEA_Common.WareHouseEnum;
+using WIDESEA_Core.Enums;
namespace WIDESEA_StockService
{
@@ -55,28 +56,70 @@
try
{
List<SearchParameters> searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
- if (searchParametersList.Count > 0)
+ if (searchParametersList?.Any() == true)
{
+ foreach (var param in searchParametersList)
{
- SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_ProStockInfoDetail.ProductCode).FirstLetterToLower());
- if (searchParameters != null)
+ switch (param.Name)
{
- sugarQueryable1 = sugarQueryable1.Where(x => x.proStockInfoDetails.Any(v => v.ProductCode.Contains(searchParameters.Value)));
+ case var name when name == nameof(Dt_ProStockInfoDetail.ProductCode).FirstLetterToLower():
+ if (!string.IsNullOrEmpty(param.Value?.ToString()))
+ {
+ sugarQueryable1 = sugarQueryable1
+ .Where(x => x.proStockInfoDetails.Any(v => v.ProductCode.Contains(param.Value.ToString())));
+ }
+ break;
+ case var name when name == nameof(Dt_ProStockInfoDetail.LotNumber).FirstLetterToLower():
+ if (!string.IsNullOrEmpty(param.Value?.ToString()))
+ {
+ sugarQueryable1 = sugarQueryable1
+ .Where(x => x.proStockInfoDetails.Any(v => v.LotNumber.Contains(param.Value.ToString())));
+ }
+ break;
+
+ case var name when name == nameof(Dt_ProStockInfo.LocationCode).FirstLetterToLower():
+ if (!string.IsNullOrEmpty(param.Value?.ToString()))
+ {
+ sugarQueryable1 = sugarQueryable1
+ .Where(x => x.LocationCode == param.Value.ToString());
+ }
+ break;
+ case var name when name == nameof(Dt_ProStockInfoDetail.ProductVersion).FirstLetterToLower():
+ if (!string.IsNullOrEmpty(param.Value?.ToString()))
+ {
+ sugarQueryable1 = sugarQueryable1
+ .Where(x => x.proStockInfoDetails.Any(v => v.ProductVersion.Contains(param.Value.ToString())));
+ }
+ break;
+ case var name when name == nameof(Dt_ProStockInfoDetail.SpecifyVer).FirstLetterToLower():
+ if (!string.IsNullOrEmpty(param.Value?.ToString()))
+ {
+ sugarQueryable1 = sugarQueryable1
+ .Where(x => x.proStockInfoDetails.Any(v => v.SpecifyVer.Contains(param.Value.ToString())));
+ }
+ break;
+
+ case var name when name == nameof(Dt_ProStockInfo.CreateDate).FirstLetterToLower():
+ if (DateTime.TryParse(param.Value?.ToString(), out DateTime minDate))
+ {
+ LinqExpressionType expressionType = param.DisplayType.GetLinqCondition();
+ if (expressionType == LinqExpressionType.ThanOrEqual)
+ {
+ sugarQueryable1 = sugarQueryable1.Where(x => x.CreateDate >= minDate);
+ }
+ else if (expressionType == LinqExpressionType.LessThanOrEqual)
+ {
+ sugarQueryable1 = sugarQueryable1.Where(x => x.CreateDate <= minDate);
+ }
+ }
+ break;
}
}
-
- {
- SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_ProStockInfoDetail.ProductVersion).FirstLetterToLower());
- if (searchParameters != null)
- {
- sugarQueryable1 = sugarQueryable1.Where(x => x.proStockInfoDetails.Any(v => v.ProductVersion.Contains(searchParameters.Value)));
- }
- }
-
}
-
}
- catch { }
+ catch (Exception ex)
+ {
+ }
}
string whereSto = GetDataRole(typeof(Dt_ProStockInfo));
sugarQueryable1 = sugarQueryable1.Where(whereSto);
@@ -139,6 +182,7 @@
{
x.ProductCode = string.Join(",", x.Details.Select(x => x.ProductCode).Distinct());
x.ProductVersion = string.Join(",", x.Details.Select(x => x.ProductVersion).Distinct());
+ x.SpecifyVer = string.Join(",", x.Details.Select(x => x.SpecifyVer).Distinct());
x.DateCode = x.Details.FirstOrDefault()?.DateCode ?? "";
x.LotNumber = x.Details.FirstOrDefault()?.LotNumber ?? "";
x.ERPOrder = x.Details.FirstOrDefault()?.ERPOrder ?? "";
@@ -285,6 +329,7 @@
{
x.ProductCode = string.Join(",", x.Details.Select(x => x.ProductCode).Distinct());
x.ProductVersion = string.Join(",", x.Details.Select(x => x.ProductVersion).Distinct());
+ x.SpecifyVer = string.Join(",", x.Details.Select(x => x.SpecifyVer).Distinct());
x.DateCode = x.Details.FirstOrDefault()?.DateCode ?? "";
x.LotNumber = x.Details.FirstOrDefault()?.LotNumber ?? "";
x.ERPOrder = x.Details.FirstOrDefault()?.ERPOrder ?? "";
@@ -387,6 +432,7 @@
{
x.ProductCode = string.Join(",", x.Details.Select(x => x.ProductCode).Distinct());
x.ProductVersion = string.Join(",", x.Details.Select(x => x.ProductVersion).Distinct());
+ x.SpecifyVer = string.Join(",", x.Details.Select(x => x.SpecifyVer).Distinct());
x.DateCode = x.Details.FirstOrDefault()?.DateCode ?? "";
x.LotNumber = x.Details.FirstOrDefault()?.LotNumber ?? "";
x.ERPOrder = x.Details.FirstOrDefault()?.ERPOrder ?? "";
--
Gitblit v1.9.3