From bfa52edd6a430978873367426da7b379730da411 Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期二, 28 四月 2026 08:51:43 +0800
Subject: [PATCH] PLS接口优化
---
项目代码/WMS/WMSServices/WIDESEA_BasicService/Service/MaterielInfoService.cs | 80 +++++++++++++++++++++++++++++++++++----
1 files changed, 71 insertions(+), 9 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/MaterielInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/MaterielInfoService.cs"
index b3228d9..91521a6 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/MaterielInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/MaterielInfoService.cs"
@@ -1,16 +1,11 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_BasicRepository;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Common.MaterielEnum;
+锘縰sing WIDESEA_Common.CommonEnum;
using WIDESEA_Core;
using WIDESEA_Core.BaseServices;
using WIDESEA_Core.Helper;
-using WIDESEA_DTO.Basic;
+using WIDESEA_DTO;
using WIDESEA_DTO.ERP;
+using WIDESEA_DTO.PLS;
+using WIDESEA_External.PLSService;
using WIDESEA_IBasicRepository;
using WIDESEA_IBasicService;
using WIDESEA_Model.Models;
@@ -163,5 +158,72 @@
return WebResponseContent.Instance.OK(ex.Message);
}
}
+
+
+ /// <summary>
+ /// 鍚屾VMI鐗╂枡淇℃伅
+ /// </summary>
+ /// <param name="model"></param>
+ /// <returns></returns>
+ public WebResponseContent ReceiveVMIMaterial(VMIItemCodeInfo vmiModel)
+ {
+ try
+ {
+ ///鍙傛暟鏍¢獙
+ if (vmiModel == null || vmiModel.Data == null || !vmiModel.Data.Any())
+ {
+ return WebResponseContent.Instance.Error("鎺ュ彛浼犲叆鐨勭墿鏂欐暟鎹泦鍚堜笉鑳戒负绌�");
+ }
+
+ ///绛惧悕鏍¢獙
+ bool IsSign = MD5Util.CheckPLSSign(vmiModel);
+ if (!IsSign)
+ {
+ return WebResponseContent.Instance.Error("绛惧悕楠岃瘉澶辫触锛岃妫�鏌�");
+ }
+
+ foreach (var itemData in vmiModel.Data)
+ {
+ var existMateriel = BaseDal.QueryFirst(x => x.MaterielCode == itemData.ItemCode && x.OrgId == itemData.OrgId && x.MaterielInvOrgId == itemData.SupplierCode);
+
+ if (existMateriel == null)
+ {
+ Dt_MaterielInfo addEntity = new Dt_MaterielInfo()
+ {
+ MaterielCode = itemData.ItemCode,
+ OrgId = itemData.OrgId,
+ MaterielInvOrgId = itemData.SupplierCode,
+ PackageQty = itemData.PackageQty,
+ MaterielState = itemData.DeleteFlag == 0 ? EnableEnum.Enable : EnableEnum.Disable,
+ WarehouseId = 0,
+ MaterielSourceType = 0,
+ Creater = itemData.CreateUser,
+ CreateDate = DateTime.Now,
+ };
+ _basicRepository.MaterielInfoRepository.AddData(addEntity);
+ }
+ else
+ {
+ existMateriel.OrgId = itemData.OrgId;
+ existMateriel.MaterielInvOrgId = itemData.SupplierCode;
+ existMateriel.PackageQty = itemData.PackageQty;
+ existMateriel.MaterielState = itemData.DeleteFlag == 0 ? EnableEnum.Enable : EnableEnum.Disable;
+
+ existMateriel.Modifier = itemData.UpdateUser;
+ existMateriel.ModifyDate = itemData.UpdateDate;
+
+ BaseDal.UpdateData(existMateriel);
+ }
+ }
+ // 澶勭悊瀹屾垚
+ return WebResponseContent.Instance.OK("VMI鐗╂枡鏁版嵁鍚屾鎴愬姛");
+ }
+ catch (Exception ex)
+ {
+ // 寮傚父杩斿洖
+ return WebResponseContent.Instance.Error($"VMI鐗╂枡鍚屾澶辫触锛歿ex.Message}");
+ }
+ }
+
}
}
--
Gitblit v1.9.3