From 35d7109801b437fad4514047db521ae358a1b7ca Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期一, 30 六月 2025 14:11:25 +0800
Subject: [PATCH] Merge branch 'wxw'

---
 Wms/WMS.BLL/SysServer/MaterialsServer.cs |  102 +++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 95 insertions(+), 7 deletions(-)

diff --git a/Wms/WMS.BLL/SysServer/MaterialsServer.cs b/Wms/WMS.BLL/SysServer/MaterialsServer.cs
index 5554355..d23f17a 100644
--- a/Wms/WMS.BLL/SysServer/MaterialsServer.cs
+++ b/Wms/WMS.BLL/SysServer/MaterialsServer.cs
@@ -7,6 +7,7 @@
 using System.Text;
 using System.Threading.Tasks;
 using AutoMapper;
+using Model.InterFaceModel;
 using Model.ModelDto.SysDto;
 using SqlSugar;
 using Utility;
@@ -55,12 +56,12 @@
         /// <returns></returns>
         public Task<List<MaterialsDto>> GetMateList(string skuNo, string skuName, string auditStatusNo, string type, string isControlled, string isInspect, string environment, string categoryNo)
         {
-            return Db.Queryable<SysMaterials>()
+            var DA =  Db.Queryable<SysMaterials>()
                      .LeftJoin<SysUserInfor>((a, b) => a.CreateUser == b.Id)
                      .LeftJoin<SysPackag>((a, b,c) => a.PackagNo == c.PackagNo)
-                     .LeftJoin<SysUnit> ((a,b,c,d)=>a.UnitNo == d.UnitNo)
-                     .LeftJoin<SysMaterialCategory>((a,b,c,d,e)=>a.CategoryNo == e.CategoryNo)
-                     .Where((a,b,c,d,e) => d.IsDel == "0" && e.IsDel =="0")
+                     //.LeftJoin<SysUnit> ((a,b,c,d)=>a.UnitNo == d.UnitNo)
+                     .LeftJoin<SysMaterialCategory>((a,b,c,d)=>a.CategoryNo == d.CategoryNo)
+                     .Where((a,b,c,d) => a.IsDel == "0" && d.IsDel == "0" )
                      .WhereIF(!string.IsNullOrEmpty(skuNo), a => a.SkuNo.Contains(skuNo))
                      .WhereIF(!string.IsNullOrEmpty(skuName), a => a.SkuName.Contains(skuName))
                      .WhereIF(!string.IsNullOrEmpty(auditStatusNo), a => a.AuditStatusNo == auditStatusNo)
@@ -69,9 +70,9 @@
                      .WhereIF(!string.IsNullOrEmpty(isInspect), a => a.IsInspect == isInspect)
                      .WhereIF(!string.IsNullOrEmpty(environment), a => a.Environment == environment)
                      .WhereIF(!string.IsNullOrEmpty(categoryNo), a => a.CategoryNo == categoryNo)
-                     .Where(a => a.IsDel == "0" )
-                     .Select<MaterialsDto>((a, b, c,d,e) => new MaterialsDto() { CreateUserName = b.RealName,PackagName = c.PackagName }, true)
+                     .Select<MaterialsDto>((a, b, c,d) => new MaterialsDto() { CreateUserName = b.RealName,PackagName = c.PackagName }, true)
                      .ToListAsync();
+            return DA;
         }
 
         /// <summary>
@@ -202,7 +203,7 @@
         #endregion
 
         #region erp
-
+        
         /// <summary>
         /// 鑾峰彇erp鏁版嵁
         /// </summary>
@@ -297,5 +298,92 @@
 
         #endregion
 
+        #region sap
+
+        /// <summary>
+        /// SAP鏂板鐗╂枡涓绘暟鎹暟鎹�
+        /// </summary>
+        /// <param name="model">erp瀹炰綋</param>
+        /// <returns></returns>
+        /// <exception cref="Exception">鎹曡幏寮傚父</exception>
+        public async Task<string> AddSkuSap(SendSkuInfoVm model)
+        {
+            //鎹曡幏寮傚父
+            try
+            {
+                if (string.IsNullOrWhiteSpace(model.skuNo.ToString()) || string.IsNullOrWhiteSpace(model.skuName) || string.IsNullOrWhiteSpace(model.categoryNo))
+                {
+                    throw new Exception("鍙傛暟閿欒");
+                }
+                //鍒ゆ柇鏄惁鍞竴
+                var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == model.skuNo.ToString());
+                if (sku != null)
+                {
+                    throw new Exception("褰撳墠鐗╂枡宸插瓨鍦�");
+                }
+                //寮�鍚簨鍔�
+                Db.BeginTran();
+
+                var category = Db.Queryable<SysMaterialCategory>().First(w => w.IsDel == "0" && w.CategoryNo == model.categoryNo);
+                if (category == null)
+                {
+                    category = new SysMaterialCategory()
+                    {
+                        CategoryNo = model.categoryNo,
+                        CategoryName = model.categoryName,
+                        CreateUser = 1
+                    };
+                    //娣诲姞鐗╂枡绫诲埆淇℃伅
+                    Db.Insertable(category).ExecuteCommand();
+                }
+                var pack = new SysPackag()
+                {
+                    PackagNo = model.skuNo.ToString(),
+                    PackagName = model.skuName,
+                    L1Num = 1,
+                    L1Name = model.unit,
+                    L2Num = Convert.ToInt32(model.packageQty),
+                    L2Name = model.packageName
+                };
+                //娣诲姞鍖呰淇℃伅
+                Db.Insertable(pack).ExecuteCommand();
+
+                var addSku = new SysMaterials()
+                {
+                    SkuNo = model.skuNo.ToString(),
+                    SkuName = model.skuName,
+                    Standard = model.specification,
+                    CategoryNo = category.CategoryNo,
+                    AuditStatusNo = "9", //model.AuditStatusNo
+                    Type = "0",
+                    IsControlled = "0",//鏄惁璇烽獙锛�0锛氭槸 1锛氬惁
+                    IsInspect = model.consume.ToString() == "0" ? "1" : "0",
+                    IsPasteCode = "1",
+                    Origin = "SAP",
+                    UnitNo = model.unit,
+                    PackagNo = pack.PackagNo,
+                    Environment = null,
+                    Weight = null,
+                    Warranty = Convert.ToInt32(model.shelfLife.Trim()),
+                    UnpackWarranty = null,
+                    Price = null,
+                    AdventTime = Convert.ToInt32(model.remainingDays)
+                };
+                await Db.Insertable(addSku).ExecuteCommandAsync();
+
+                //鎻愪氦浜嬪姟
+                Db.CommitTran();
+
+                return "0";
+            }
+            catch (Exception ex)
+            {
+                //鍥炴粴浜嬪姟
+                Db.RollbackTran();
+                //鎶涘嚭寮傚父
+                throw new Exception("鏂板erp鏁版嵁寮傚父", ex);
+            }
+        }
+        #endregion
     }
 }

--
Gitblit v1.8.0