From 58376d519aeb76ef78d38b737c0c57f8d982fb52 Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期五, 13 三月 2026 14:29:01 +0800
Subject: [PATCH] feat: 完成S7 PLC模拟器完整实现
---
Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs | 71 +++++++++++++++++++++++++++++++++--
1 files changed, 66 insertions(+), 5 deletions(-)
diff --git a/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs b/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs
index 339d933..8e4027b 100644
--- a/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs
+++ b/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs
@@ -1,4 +1,4 @@
-锘縰sing AutoMapper;
+using WIDESEA_Common.StockEnum;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
using WIDESEA_IStockService;
@@ -6,16 +6,77 @@
namespace WIDESEA_StockService
{
+ /// <summary>
+ /// 搴撳瓨淇℃伅鏈嶅姟瀹炵幇绫�
+ /// </summary>
public partial class StockInfoService : ServiceBase<Dt_StockInfo, IRepository<Dt_StockInfo>>, IStockInfoService
{
- private readonly IMapper _mapper;
-
+ /// <summary>
+ /// 鑾峰彇搴撳瓨淇℃伅浠撳偍鎺ュ彛
+ /// </summary>
public IRepository<Dt_StockInfo> Repository => BaseDal;
- public StockInfoService(IRepository<Dt_StockInfo> BaseDal, IMapper mapper) : base(BaseDal)
+ /// <summary>
+ /// 鏋勯�犲嚱鏁�
+ /// </summary>
+ /// <param name="baseDal">鍩虹鏁版嵁璁块棶瀵硅薄</param>
+ public StockInfoService(IRepository<Dt_StockInfo> baseDal) : base(baseDal)
{
- _mapper = mapper;
}
+ /// <summary>
+ /// 鑾峰彇搴撳瓨淇℃伅鍒楄〃锛堝嚭搴撴棩鏈熷皬浜庡綋鍓嶆椂闂翠笖搴撳瓨鐘舵�佷负鍏ュ簱瀹屾垚鐨勮褰曪級
+ /// </summary>
+ /// <returns>搴撳瓨淇℃伅鍒楄〃</returns>
+ public async Task<List<Dt_StockInfo>> GetStockInfoAsync()
+ {
+ return await BaseDal.QueryDataAsync(x =>
+ x.OutboundDate < DateTime.Now &&
+ x.StockStatus == StockStatusEmun.鍏ュ簱瀹屾垚.GetHashCode());
+ }
+
+ /// <summary>
+ /// 鑾峰彇搴撳瓨淇℃伅鍒楄〃锛堝嚭搴撴棩鏈熷皬浜庡綋鍓嶆椂闂翠笖搴撳瓨鐘舵�佷负鍏ュ簱瀹屾垚鐨勮褰曪紝涓斾粨搴揑D鍖归厤锛�
+ /// </summary>
+ /// <param name="warehouseId">浠撳簱ID</param>
+ /// <returns>搴撳瓨淇℃伅鍒楄〃</returns>
+ public async Task<List<Dt_StockInfo>> GetStockInfoAsync(int warehouseId)
+ {
+ return await BaseDal.QueryDataAsync(x =>
+ x.OutboundDate < DateTime.Now &&
+ x.StockStatus == StockStatusEmun.鍏ュ簱瀹屾垚.GetHashCode() &&
+ x.WarehouseId == warehouseId);
+ }
+
+ /// <summary>
+ /// 鑾峰彇搴撳瓨淇℃伅锛堟牴鎹墭鐩樼爜鏌ヨ锛�
+ /// </summary>
+ /// <param name="palletCode">鎵樼洏缂栫爜</param>
+ /// <returns>搴撳瓨淇℃伅</returns>
+ public async Task<Dt_StockInfo> GetStockInfoAsync(string palletCode)
+ {
+ return await BaseDal.QueryDataNavFirstAsync(x => x.PalletCode == palletCode);
+ }
+
+ /// <summary>
+ /// 鏇存柊搴撳瓨鏁版嵁
+ /// </summary>
+ /// <param name="stockInfo">搴撳瓨淇℃伅瀵硅薄</param>
+ /// <returns>鏇存柊鏄惁鎴愬姛</returns>
+ public async Task<bool> UpdateStockAsync(Dt_StockInfo stockInfo)
+ {
+ return await BaseDal.UpdateDataAsync(stockInfo);
+ }
+
+ /// <summary>
+ /// 妫�绱㈡寚瀹氭墭鐩樺湪缁欏畾浣嶇疆鐨勫簱瀛樿缁嗕俊鎭�
+ /// </summary>
+ /// <param name="palletCode">鎵樼洏缂栫爜</param>
+ /// <param name="locationCode">璐т綅缂栫爜</param>
+ /// <returns>搴撳瓨淇℃伅</returns>
+ public async Task<Dt_StockInfo> GetStockInfoAsync(string palletCode, string locationCode)
+ {
+ return await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode && x.LocationCode == locationCode);
+ }
}
}
--
Gitblit v1.9.3