From 0c525ecf57809add2b988f331e22a74022ad1070 Mon Sep 17 00:00:00 2001
From: liuying <1427574514@qq.com>
Date: 周三, 24 4月 2024 20:25:56 +0800
Subject: [PATCH] 物料
---
iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsContainerPackaging/WmsContainerPackagingService.cs | 112 +++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 98 insertions(+), 14 deletions(-)
diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsContainerPackaging/WmsContainerPackagingService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsContainerPackaging/WmsContainerPackagingService.cs
index c2759c1..3b36ac6 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsContainerPackaging/WmsContainerPackagingService.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsContainerPackaging/WmsContainerPackagingService.cs
@@ -16,7 +16,7 @@
namespace Admin.NET.Application
{
/// <summary>
- /// 鍖呰鍏崇郴鍩虹琛ㄦ湇鍔�
+ /// 瀹瑰櫒鍏崇郴鏈嶅姟
/// </summary>
[ApiDescriptionSettings("WmsBase", Name = "WmsContainerPackaging", Order = 100)]
[Route("api")]
@@ -42,7 +42,7 @@
}
/// <summary>
- /// 鍒嗛〉鏌ヨ鍖呰鍏崇郴鍩虹琛�
+ /// 鍒嗛〉鏌ヨ瀹瑰櫒鍏崇郴
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -67,10 +67,10 @@
}
/// <summary>
- /// 涓嶅垎椤垫煡璇㈠寘瑁呭叧绯诲熀纭�琛ㄥ垪琛�
+ /// 涓嶅垎椤垫煡璇㈠鍣ㄥ叧绯诲垪琛�
/// </summary>
- /// <param name="input">鍖呰鍏崇郴鍩虹琛ㄦ煡璇㈠弬鏁�</param>
- /// <returns>(鍖呰鍏崇郴鍩虹琛�)瀹炰緥鍒楄〃</returns>
+ /// <param name="input">瀹瑰櫒鍏崇郴鏌ヨ鍙傛暟</param>
+ /// <returns>(瀹瑰櫒鍏崇郴)瀹炰緥鍒楄〃</returns>
[HttpGet("WmsContainerPackaging/listNonPage")]
public async Task<List<WmsContainerPackagingOutput>> ListNonPageAsync([FromQuery] WmsContainerPackagingSearchNonPage input)
{
@@ -102,7 +102,7 @@
}
/// <summary>
- /// 鑾峰彇鍖呰鍏崇郴鍩虹琛�
+ /// 鑾峰彇瀹瑰櫒鍏崇郴
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -113,7 +113,7 @@
}
/// <summary>
- /// 鑾峰彇鍖呰鍏崇郴鍩虹琛ㄥ垪琛�
+ /// 鑾峰彇瀹瑰櫒鍏崇郴鍒楄〃
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -126,7 +126,7 @@
#region 澧炪�佸垹銆佹敼
/// <summary>
- /// 澧炲姞鍖呰鍏崇郴鍩虹琛�
+ /// 澧炲姞瀹瑰櫒鍏崇郴
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -144,7 +144,7 @@
}
/// <summary>
- /// 鍒犻櫎鍖呰鍏崇郴鍩虹琛�
+ /// 鍒犻櫎瀹瑰櫒鍏崇郴
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -157,7 +157,7 @@
}
/// <summary>
- /// 鏇存柊鍖呰鍏崇郴鍩虹琛�
+ /// 鏇存柊瀹瑰櫒鍏崇郴
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -182,7 +182,7 @@
#region 瀵煎叆
/// <summary>
- /// Excel妯℃澘瀵煎叆鍖呰鍏崇郴鍩虹琛ㄥ姛鑳�
+ /// Excel妯℃澘瀵煎叆瀹瑰櫒鍏崇郴鍔熻兘
/// </summary>
/// <param name="file">Excel妯℃澘鏂囦欢</param>
/// <returns>瀵煎叆鐨勮褰曟暟</returns>
@@ -253,6 +253,12 @@
#region 楠岃瘉
+
+ if (string.IsNullOrEmpty(_ContainerTypeId))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾瀹瑰櫒绫诲瀷ID]{_ContainerTypeId}涓嶈兘涓虹┖锛�");
+ }
+
if(!string.IsNullOrEmpty(_ContainerTypeId))
{
if (!long.TryParse(_ContainerTypeId, out long outContainerTypeId)&&!string.IsNullOrEmpty(_ContainerTypeId))
@@ -269,10 +275,22 @@
}
}
+
+ if (string.IsNullOrEmpty(_ContainerTypeName))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾瀹瑰櫒绫诲瀷鍚嶇О]{_ContainerTypeName}涓嶈兘涓虹┖锛�");
+ }
+
if(!string.IsNullOrEmpty(_ContainerTypeName))
{
addItem.ContainerTypeName = (string)_ContainerTypeName;
}
+
+ if (string.IsNullOrEmpty(_MaterialTypeId))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鐗╂枡绫诲瀷ID]{_MaterialTypeId}涓嶈兘涓虹┖锛�");
+ }
+
if(!string.IsNullOrEmpty(_MaterialTypeId))
{
if (!long.TryParse(_MaterialTypeId, out long outMaterialTypeId)&&!string.IsNullOrEmpty(_MaterialTypeId))
@@ -289,14 +307,32 @@
}
}
+
+ if (string.IsNullOrEmpty(_MaterialTypeCode))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鐗╂枡绫诲瀷缂栧彿]{_MaterialTypeCode}涓嶈兘涓虹┖锛�");
+ }
+
if(!string.IsNullOrEmpty(_MaterialTypeCode))
{
addItem.MaterialTypeCode = (string)_MaterialTypeCode;
}
+
+ if (string.IsNullOrEmpty(_MaterialTypeName))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鐗╂枡绫诲瀷鍚嶇О]{_MaterialTypeName}涓嶈兘涓虹┖锛�");
+ }
+
if(!string.IsNullOrEmpty(_MaterialTypeName))
{
addItem.MaterialTypeName = (string)_MaterialTypeName;
}
+
+ if (string.IsNullOrEmpty(_BoxQty))
+ {
+ throw Oops.Oh($"绗瑊index}琛孾鐗╂枡瀹瑰櫒瀹归噺]{_BoxQty}涓嶈兘涓虹┖锛�");
+ }
+
if(!string.IsNullOrEmpty(_BoxQty))
{
if (!decimal.TryParse(_BoxQty, out decimal outBoxQty)&&!string.IsNullOrEmpty(_BoxQty))
@@ -342,7 +378,7 @@
}
/// <summary>
- /// 鏍规嵁鐗堟湰涓嬭浇鍖呰鍏崇郴鍩虹琛ㄧ殑Excel瀵煎叆妯℃澘
+ /// 鏍规嵁鐗堟湰涓嬭浇瀹瑰櫒鍏崇郴鐨凟xcel瀵煎叆妯℃澘
/// </summary>
/// <param name="version">妯℃澘鐗堟湰</param>
/// <returns>涓嬭浇鐨勬ā鏉挎枃浠�</returns>
@@ -350,7 +386,7 @@
public IActionResult DownloadExcelTemplate([FromQuery] string version)
{
string _path = TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増璺緞 + $"\\WmsContainerPackaging{TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増鍚嶇О鍚庣紑}.xlsx";
- var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(鍖呰鍏崇郴鍩虹琛�).xlsx", Encoding.GetEncoding("UTF-8"));
+ var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(瀹瑰櫒鍏崇郴).xlsx", Encoding.GetEncoding("UTF-8"));
return new FileStreamResult(new FileStream(_path, FileMode.Open), "application/octet-stream") { FileDownloadName = fileName };
}
@@ -369,13 +405,29 @@
+ bool isExist = false;
+ if (!isEdit)//鏂板
+ {
+ //鏁版嵁鏄惁瀛樺湪閲嶅
+ isExist = await _wmsContainerPackagingRep.AnyAsync(u =>
+ u.ContainerTypeId.Equals(input.ContainerTypeId)
+ ,false);
+ }
+ else//缂栬緫
+ {
+ //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
+ isExist = await _wmsContainerPackagingRep.AnyAsync(u =>
+ u.Id != input.Id
+ &&u.ContainerTypeId.Equals(input.ContainerTypeId)
+ ,false);
+ }
- //娌℃湁閰嶇疆鑱斿悎涓婚敭锛屼笉闇�瑕侀獙閲�
+ if (isExist) throw Oops.Oh(ErrorCode.E0001);
}
/// <summary>
@@ -386,10 +438,42 @@
private async Task CheckExisitForImport(List<WmsContainerPackaging> inputs)
{
//鏍规嵁鑱斿悎涓婚敭楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+ if (inputs?.Count <= 0)
+ {
+ throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
+ }
+ //鏁版嵁鏄惁閲嶅
+ var existExcelItem = inputs.GroupBy(g => new {
+ g.ContainerTypeId
+ })
+ .Where(g => g.Count() > 1)
+ .Select(s => new {
+ s.Key.ContainerTypeId
+ }).FirstOrDefault();
+ if (existExcelItem != null)
+ {
+ var wmsContainerPackaging = existExcelItem.Adapt<WmsContainerPackaging>();
+ var item= existExcelItem.Adapt<WmsContainerPackaging>();
+ throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,瀹瑰櫒绫诲瀷ID[{item.ContainerTypeId}]宸插瓨鍦�");
+ }
+ //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+ var existDBItem = await _wmsContainerPackagingRep.DetachedEntities.FirstOrDefaultAsync(w=>
+ inputs.Select(s=>""
+ +s.ContainerTypeId
+ )
+ .Contains(""
+ +w.ContainerTypeId
+ ));
+ if (existDBItem != null)
+ {
+ var wmsContainerPackaging = existExcelItem.Adapt<WmsContainerPackaging>();
+ var item= existExcelItem.Adapt<WmsContainerPackaging>();
+ throw Oops.Oh($"绯荤粺涓�,瀹瑰櫒绫诲瀷ID[{item.ContainerTypeId}]宸插瓨鍦�");
+ }
}
#endregion
--
Gitblit v1.9.3