From a017f6a3f5b24637b99a38dbc0855785c6a2ebff Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期一, 20 四月 2026 11:01:32 +0800
Subject: [PATCH] Merge branch 'htq20251215' of http://115.159.85.185:8098/r/ZhongRui/ALDbanyunxiangmu into htq20251215
---
项目代码/WMS无仓储版/WIDESEA_WMSServer/BigGreenService/BigGreenService.cs | 68 +++++++++++++++++++++++++---------
1 files changed, 50 insertions(+), 18 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/BigGreenService/BigGreenService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/BigGreenService/BigGreenService.cs"
index 1980f67..7652c4c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/BigGreenService/BigGreenService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/BigGreenService/BigGreenService.cs"
@@ -65,13 +65,14 @@
var unInBound = _inboundRepository.Db.Queryable<Dt_InboundOrder>().Where(x => targetInStatus.Contains(x.OrderStatus) && x.CreateDate.ToString("MM-dd") == DateTime.Now.ToString("MM-dd")).Count();
//璁$畻搴撲綅鍒╃敤鐜�
- var freeLocation = _locationInfoRepository.Db.Queryable<Dt_LocationInfo>().Select(x=>x.Id).Count();
+ var totalLocation = _locationInfoRepository.Db.Queryable<Dt_LocationInfo>().Select(x=>x.Id).Count();
var inStockLocation = _locationInfoRepository.Db.Queryable<Dt_LocationInfo>().Where(x => x.LocationStatus == (int)LocationStatusEnum.InStock).Count();
- int totalLocation = freeLocation + inStockLocation;
decimal locationUtilizationRate = totalLocation == 0
? 0
: Math.Round((decimal)inStockLocation / totalLocation, 4) * 100;
+ //绂佺敤璐т綅
+ var disableLocation = _locationInfoRepository.QueryData(x=>x.EnableStatus == (int)EnableStatusEnum.Disable).Count();
//璁$畻鍏ュ簱浠诲姟鍜屽嚭搴撲换鍔″畬鎴愭暟閲�
var inboundCount = _taskHtyRepository.Db.Queryable<Dt_Task_Hty>().Where(x => x.TaskType >= 500 && x.TaskType < 900 && x.CreateDate.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")).Count();
var outboundCount = _taskHtyRepository.Db.Queryable<Dt_Task_Hty>().Where(x => x.TaskType >= 100 && x.TaskType < 500 && x.CreateDate.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd")).Count();
@@ -102,7 +103,9 @@
FreeStockPallet = freeStockPallet,
CompleteTask = completeTask,
NearExpirationList = nearExpirationList,
- UnInBoundOrderCount = unInBound
+ UnInBoundOrderCount = unInBound,
+ TotalLocation = totalLocation,
+ DisableLocation = disableLocation
};
return WebResponseContent.Instance.OK(data: bigGreenData);
}
@@ -165,22 +168,46 @@
public List<SimpleStatisticsDTO> SimpleStatistics()
{
- var targetStatuses = new List<int>
- {
- (int)InOrderStatusEnum.鍏ュ簱涓�,
- (int)InOrderStatusEnum.鏈紑濮�,
- (int)OutOrderStatusEnum.鏈紑濮�,
- (int)OutOrderStatusEnum.鍑哄簱涓�
- };
- var inboundList = _inboundRepository.QueryData(x => x.CreateDate.ToString("MM-dd") == DateTime.Now.ToString("MM-dd") && targetStatuses.Contains(x.OrderStatus)).ToList();
- var outboundList = _outBoundOrderRepository.QueryData(x => x.CreateDate.ToString("MM-dd") == DateTime.Now.ToString("MM-dd") && targetStatuses.Contains(x.OrderStatus)).ToList();
+ var today = DateTime.Now.Date;
+ var threeDaysAgo = today.AddDays(-3);
- var stats = new List<SimpleStatisticsDTO> { new SimpleStatisticsDTO
- {
- inboundOrders =inboundList,
- outboundOrders = outboundList
- } };
- return stats;
+ var targetStatuses = new List<int> { (int)InOrderStatusEnum.鍏ュ簱涓�, (int)InOrderStatusEnum.鏈紑濮�,
+ (int)OutOrderStatusEnum.鏈紑濮�, (int)OutOrderStatusEnum.鍑哄簱涓� };
+ var failReturnStatuses = new List<int> {4,2};
+
+ var inboundToday = QueryInboundOrders(today, today, targetStatuses);
+ var outboundToday = QueryOutboundOrders(today, today, targetStatuses);
+ var inboundFail3Days = QueryInboundOrders(threeDaysAgo, today, failReturnStatuses, isReturnStatus: true);
+ var outboundFail3Days = QueryOutboundOrders(threeDaysAgo, today, failReturnStatuses, isReturnStatus: true);
+
+
+ return new List<SimpleStatisticsDTO> { new()
+ {
+ inboundOrders = inboundToday,
+ outboundOrders = outboundToday,
+ inboundReturnFailOrders = inboundFail3Days,
+ outboundReturnFailOrders = outboundFail3Days
+ }};
+ }
+
+
+ private List<Dt_InboundOrder> QueryInboundOrders(DateTime startDate, DateTime endDate,
+ List<int> statusList, bool isReturnStatus = false)
+ {
+ return _inboundRepository.QueryData(x =>
+ x.CreateDate.Date >= startDate &&
+ x.CreateDate.Date <= endDate &&
+ (isReturnStatus ? statusList.Contains(x.ReturnToMESStatus) : statusList.Contains(x.OrderStatus))).ToList();
+ }
+
+
+ private List<Dt_OutboundOrder> QueryOutboundOrders(DateTime startDate, DateTime endDate,
+ List<int> statusList, bool isReturnStatus = false)
+ {
+ return _outBoundOrderRepository.QueryData(x =>
+ x.CreateDate.Date >= startDate &&
+ x.CreateDate.Date <= endDate &&
+ (isReturnStatus ? statusList.Contains(x.ReturnToMESStatus) : statusList.Contains(x.OrderStatus))).ToList();
}
/// <summary>
@@ -250,6 +277,9 @@
public List<SimpleStatisticsDTO> CompleteTask { get; set; }
public List<StockInfoDetailExtDTO> NearExpirationList { get; set; }
+
+ public int TotalLocation { get; set; }
+ public int DisableLocation { get; set; }
}
/// <summary>
@@ -278,6 +308,8 @@
{
public List<Dt_InboundOrder> inboundOrders { get; set; }
public List<Dt_OutboundOrder> outboundOrders { get; set; }
+ public List<Dt_InboundOrder> inboundReturnFailOrders { get; set; }
+ public List<Dt_OutboundOrder> outboundReturnFailOrders { get; set; }
}
--
Gitblit v1.9.3