From 17e5dbd7bd0364e27a33f1a7dab91cf33d5dcabc Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期三, 04 三月 2026 11:52:12 +0800
Subject: [PATCH] 增强Redis缓存服务与设备通信优化
---
Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockSerivce.cs | 58 ++++++++++++++++++++++++++++++++--------------------------
1 files changed, 32 insertions(+), 26 deletions(-)
diff --git a/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockSerivce.cs b/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockSerivce.cs
index c8cf69a..c7ad96a 100644
--- a/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockSerivce.cs
+++ b/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/StockSerivce.cs
@@ -1,7 +1,4 @@
-锘縰sing Autofac.Core;
-using System.Net;
-using System.Threading.Channels;
-using WIDESEA_Common.StockEnum;
+锘縰sing WIDESEA_Common.StockEnum;
using WIDESEA_Core;
using WIDESEA_DTO.Stock;
using WIDESEA_IStockService;
@@ -19,8 +16,6 @@
public IStockInfoDetail_HtyService StockInfoDetail_HtyService { get; }
public IStockInfo_HtyService StockInfo_HtyService { get; }
-
-
public StockSerivce(
IStockInfoDetailService stockInfoDetailService,
IStockInfoService stockInfoService,
@@ -36,8 +31,9 @@
/// <summary>
/// 缁勭洏
/// </summary>
- public async Task<bool> GroupPalletAsync(StockDTO stock)
+ public async Task<WebResponseContent> GroupPalletAsync(StockDTO stock)
{
+ WebResponseContent content = new WebResponseContent();
var now = DateTime.Now;
var details = stock.Details.Select(item => new Dt_StockInfoDetail
{
@@ -55,10 +51,13 @@
}).ToList();
var existingStock = StockInfoService.Repository.QueryFirst(s => s.PalletCode == stock.TargetPalletNo);
+ var result = false;
if (existingStock != null)
{
details.ForEach(d => d.StockId = existingStock.Id);
- return await StockInfoDetailService.Repository.AddDataAsync(details) > 0;
+ result = await StockInfoDetailService.Repository.AddDataAsync(details) > 0;
+ if (result) return content.OK("缁勭洏鎴愬姛");
+ return content.Error("缁勭洏澶辫触");
}
var entity = new Dt_StockInfo
@@ -70,24 +69,27 @@
Details = details
};
- return StockInfoService.Repository.AddData(entity, x => x.Details);
+ result = StockInfoService.Repository.AddData(entity, x => x.Details);
+ if (result) return content.OK("缁勭洏鎴愬姛");
+ return content.Error("缁勭洏澶辫触");
}
/// <summary>
/// 鎹㈢洏
/// </summary>
- public async Task<bool> ChangePalletAsync(StockDTO stock)
+ public async Task<WebResponseContent> ChangePalletAsync(StockDTO stock)
{
+ WebResponseContent content = new WebResponseContent();
if (stock == null ||
string.IsNullOrWhiteSpace(stock.TargetPalletNo) ||
string.IsNullOrWhiteSpace(stock.SourcePalletNo) ||
string.Equals(stock.SourcePalletNo, stock.TargetPalletNo, StringComparison.OrdinalIgnoreCase))
{
- return false;
+ return content.Error("婧愭墭鐩樺彿涓庣洰鏍囨墭鐩樺彿鐩稿悓");
}
var sourceStock = StockInfoService.Repository.QueryFirst(s => s.PalletCode == stock.SourcePalletNo);
- if (sourceStock == null) return false;
+ if (sourceStock == null) return content.Error("婧愭墭鐩樹笉瀛樺湪");
var targetStock = StockInfoService.Repository.QueryFirst(s => s.PalletCode == stock.TargetPalletNo);
if (targetStock == null)
@@ -101,39 +103,42 @@
};
var newId = StockInfoService.Repository.AddData(newStock);
- if (newId <= 0) return false;
+ if (newId <= 0) return content.Error("鎹㈢洏澶辫触");
targetStock = newStock;
targetStock.Id = newId;
}
var serialNumbers = stock.Details.Select(d => d.CellBarcode).Distinct().ToList();
- if (!serialNumbers.Any()) return false;
+ if (!serialNumbers.Any()) return content.Error("鏈壘鍒版湁鏁堢殑搴忓垪鍙�");
var detailEntities = StockInfoDetailService.Repository.QueryData(
d => d.StockId == sourceStock.Id && serialNumbers.Contains(d.SerialNumber));
- if (!detailEntities.Any()) return false;
+ if (!detailEntities.Any()) return content.Error("鏈壘鍒版湁鏁堢殑搴撳瓨鏄庣粏");
if (await StockInfoDetail_HtyService.Repository.AddDataAsync(CreateDetailHistory(detailEntities, "鎹㈢洏")) <= 0)
- return false;
+ return content.Error("鎹㈢洏鍘嗗彶璁板綍淇濆瓨澶辫触");
if (await StockInfo_HtyService.Repository.AddDataAsync(CreateStockHistory(new[] { sourceStock, targetStock }, "鎹㈢洏")) <= 0)
- return false;
+ return content.Error("鎹㈢洏鍘嗗彶璁板綍淇濆瓨澶辫触");
detailEntities.ForEach(d => d.StockId = targetStock.Id);
- return await StockInfoDetailService.Repository.UpdateDataAsync(detailEntities);
+ var result = await StockInfoDetailService.Repository.UpdateDataAsync(detailEntities);
+ if (!result) return content.Error("鎹㈢洏澶辫触");
+ return content.OK("鎹㈢洏鎴愬姛");
}
/// <summary>
/// 鎷嗙洏
/// </summary>
- public async Task<bool> SplitPalletAsync(StockDTO stock)
+ public async Task<WebResponseContent> SplitPalletAsync(StockDTO stock)
{
+ WebResponseContent content = new WebResponseContent();
if (stock == null || string.IsNullOrWhiteSpace(stock.SourcePalletNo))
- return false;
+ return content.Error("婧愭墭鐩樺彿涓嶈兘涓虹┖");
var sourceStock = StockInfoService.Repository.QueryFirst(s => s.PalletCode == stock.SourcePalletNo);
- if (sourceStock == null) return false;
+ if (sourceStock == null) return content.Error("婧愭墭鐩樹笉瀛樺湪");
var serialNumbers = stock.Details.Select(d => d.CellBarcode).Distinct().ToList();
if (!serialNumbers.Any())
@@ -146,15 +151,17 @@
var detailEntities = StockInfoDetailService.Repository.QueryData(
d => d.StockId == sourceStock.Id && serialNumbers.Contains(d.SerialNumber));
- if (!detailEntities.Any()) return false;
+ if (!detailEntities.Any()) return content.Error("鏈壘鍒版湁鏁堢殑搴撳瓨鏄庣粏");
if (await StockInfoDetail_HtyService.Repository.AddDataAsync(CreateDetailHistory(detailEntities, "鎷嗙洏")) <= 0)
- return false;
+ return content.Error("鎷嗙洏鍘嗗彶璁板綍淇濆瓨澶辫触");
if (await StockInfo_HtyService.Repository.AddDataAsync(CreateStockHistory(new[] { sourceStock }, "鎷嗙洏")) <= 0)
- return false;
+ return content.Error("鎷嗙洏鍘嗗彶璁板綍淇濆瓨澶辫触");
- return await StockInfoDetailService.Repository.DeleteDataAsync(detailEntities);
+ var result = await StockInfoDetailService.Repository.DeleteDataAsync(detailEntities);
+ if (!result) return content.Error("鎷嗙洏澶辫触");
+ return content.OK("鎷嗙洏鎴愬姛");
}
/// <summary>
@@ -227,6 +234,5 @@
ModifyDate = s.ModifyDate
}).ToList();
}
-
}
}
\ No newline at end of file
--
Gitblit v1.9.3