From 146fa02f2ff92f9687fc9e099e2e812f785e04b1 Mon Sep 17 00:00:00 2001
From: zzr99 <1940172413@qq.com>
Date: 星期一, 25 四月 2022 13:32:32 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs |  206 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 113 insertions(+), 93 deletions(-)

diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
index 3bb1da8..453acf8 100644
--- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
@@ -98,6 +98,7 @@
             public long HSouceInterID = 0;//HSourceInterIDCol
             public long HSourceEntryID = 0;//HSourceEntryIDCol
             public int? 鍙枡鏁伴噺 = 0;//HBHGQtyCol
+            public int? 宸插彨鏂欐暟閲� = 0;//HBHGQtyCol
             public double? 閫�鏂欐暟閲� = 0;//閫�鏂欐暟閲�
             public long HSTOCKID = 0;//HSTOCKID
             public string 閫�鏂欏師鍥� { get; set; }//閫�鏂欏師鍥�
@@ -183,6 +184,15 @@
                 {
                     if (listCa[i].HMaterialID != 0 && listCa[i].鍙枡鏁伴噺 > 0)
                     {
+                        if (listCa[i].鍙枡鏁伴噺 > listCa[i].璁″垝鍙戞枡鏁伴噺)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍙枡鏁伴噺澶т簬璁″垝鍙戞枡鏁伴噺!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         j = 1;
 
                         var txtHBillNo = DBUtility.ClsPub.CreateBillCode_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿
@@ -272,7 +282,7 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犱换浣曞彨鏂欐暟閲忥紝鏃犳硶鍙枡!";
+                    objJsonResult.Message = "鏃犱换浣曞彨鏂欐暟閲忔垨鍙枡鏁伴噺灏忎簬0锛屾棤娉曞彨鏂�!";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -374,6 +384,15 @@
                 {
                     if (listCa[i].閫�鏂欐暟閲� > 0)
                     {
+                        if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸插彨鏂欐暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡鍙枡鏁伴噺!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         flag = AddICStockTuiBill(listCa[i], "666601", "涓嶈壇鍝侀��鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
                         j = 1;
                     }
@@ -382,7 +401,7 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "鏃犱换浣曢��鏂欐暟閲忥紝鏃犳硶閫�鏂�!";
+                    objJsonResult.Message = "鏃犱换浣曢��鏂欐暟閲忔垨閫�鏂欐暟閲忓皬浜�0锛屾棤娉曢��鏂�!";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -489,6 +508,15 @@
                 int j = 0;
                 for (int i = 0; i < listCa.Count; i++)
                 {
+                    if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸插彨鏂欐暟閲�)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡鍙枡鏁伴噺!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
                     if (listCa[i].閫�鏂欐暟閲� > 0)
                     {
                         flag = AddICStockTuiBill(listCa[i], "666602", " 浣欓噺閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
@@ -567,6 +595,15 @@
                 {
                     if (listCa[i].閫�鏂欐暟閲� > 0)
                     {
+                        if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸插彨鏂欐暟閲�)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡鍙枡鏁伴噺!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
                         flag = AddICStockTuiBill(listCa[i], "666603", "鎶ュ簾閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo);
                         j = 1;
                     }
@@ -608,12 +645,13 @@
         }
         #endregion
 
-        #region 鐢熶骇鍙枡骞冲彴  鍙枡鎷f枡淇℃伅鏌ヨ
+        #region 鐢熶骇鍙枡骞冲彴  鍙枡鎷f枡淇℃伅鏌ヨ  涓婃煡/涓嬫煡
         //鏌ヨ鏉′欢
         public class HlpBill
         {
             public int HSouceInterID = 0;
             public int HSourceEntryID = 0;
+            public int Type = 0;
             public string user { get; set; }
         }
         [Route("Sc_ComplementGoodBill/HlpBillList")]
@@ -622,48 +660,64 @@
         {
             try
             {
+                List<object> columnNameList = new List<object>();
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
                 HlpBill com = JsonConvert.DeserializeObject<HlpBill>(sWhere.ToString());
 
-                ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_DownQuery 0,0,'',0,0,{com.HSouceInterID},{com.HSourceEntryID}"+
-                    $",'{com.user}'", "h_p_JIT_CallGoodsPlatForm_DownQuery");
-
-                if (ds != null)
+                if (com.Type == 1)
                 {
-                    if (ds.Tables[0].Rows.Count != 0)
-                    {
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "Sucess锛�";
-                        objJsonResult.data = ds.Tables[0];
-                        return objJsonResult;
-                    }
-                    else if (ds.Tables[1].Rows.Count != 0)
-                    {
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "Sucess锛�";
-                        objJsonResult.data = ds.Tables[1];
-                        return objJsonResult;
-                    }
-                    else
-                    {
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "Sucess锛�";
-                        objJsonResult.data = ds.Tables[0];
-                        return objJsonResult;
-                    }
+                    //鐢熶骇鍙枡骞冲彴  涓嬫煡
+                    ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_DownQuery 0,0,'',0,0,{com.HSouceInterID},{com.HSourceEntryID}" +
+                       $",'{com.user}'", "h_p_JIT_CallGoodsPlatForm_DownQuery");
+                }
+                else if (com.Type == 2)
+                {
+                    //鎷f枡閰嶉�� 涓婃煡
+                    ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_UpQuery '{com.HSouceInterID}',{com.HSourceEntryID}", "h_p_JIT_ComplementGoodsBillList_UpQuery");
+                }
+                else if (com.Type == 3)
+                {
+                    //鎷f枡閰嶉�� 涓嬫煡
+                    ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_DownQuery '{com.HSouceInterID}',{com.HSourceEntryID}", "h_p_JIT_ComplementGoodsBillList_DownQuery");
+                }
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                //type==1 瀛樺偍杩囩▼閲岄潰鏌ヨ浜嗕袱娆�  鎵�鏈夐渶瑕佸垽鏂袱寮犺〃閮芥湁娌℃湁鏁版嵁
+                if (ds.Tables[0].Rows.Count != 0)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
+                }
+                else if ((com.Type == 1 ? ds.Tables[1].Rows.Count : ds.Tables[0].Rows.Count) != 0)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[1];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
                 }
                 else
                 {
                     objJsonResult.code = "1";
                     objJsonResult.count = 1;
                     objJsonResult.Message = "Sucess锛�";
-                    objJsonResult.data =null;
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
                     return objJsonResult;
                 }
-               
+
             }
             catch (Exception e)
             {
@@ -700,39 +754,21 @@
                 msg2 = msg2.Replace("\\", "");
                 msg2 = msg2.Replace("\n", "");
 
-                List<CallGoodsBill> listCa = new List<CallGoodsBill>();
-                //鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎
-                listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
-                int a = 0;
-                if (listCa.Count > 0)
+                ds = oCN.RunProcReturn("select * from h_v_IF_JIT_CallGoodsBillList ", "h_v_IF_JIT_CallGoodsBillList ");
+
+                if (ds.Tables[0].Rows.Count > 0)
                 {
-                    for (int i = 0; i < listCa.Count; i++)
-                    {
-                        long HInterID = DBUtility.ClsPub.CreateBillID_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo);
-                        string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo, true);
-                        long HOutOrgID = int.Parse(listCa[i].HOutOrgID.ToString());
-                        long HWHID = int.Parse(listCa[i].HWHID.ToString());
+                    ds.Clear();
+                    long HInterID = DBUtility.ClsPub.CreateBillID_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo);
+                    string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo, true);
 
-                        oCN.RunProc($"exec h_p_JIT_ComplementGoods_Insert {HInterID},'{HBillNo}',{HOrgID},'{user}',{HOutOrgID},{HWHID}");
-                        a = 1;
-                    }
+                   ds= oCN.RunProcReturn($"exec h_p_JIT_ComplementGoods_Insert {HInterID},'{HBillNo}',{HOrgID},'{user}',0,0", "h_p_JIT_ComplementGoods_Insert");
 
-                    if (a == 1)
-                    {
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鐢熸垚鎷f枡鍗曟垚鍔�";
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                    else
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鐢熸垚鎷f枡鍗曞け璐�";
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
+                    objJsonResult.code = ds.Tables[0].Rows[0][0].ToString();
+                    objJsonResult.count = int.Parse(ds.Tables[0].Rows[0][0].ToString());
+                    objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString();
+                    objJsonResult.data = null;
+                    return objJsonResult;
                 }
                 else
                 {
@@ -778,39 +814,23 @@
                 msg2 = msg2.Replace("\\", "");
                 msg2 = msg2.Replace("\n", "");
 
-                List<CallGoodsBill> listCa = new List<CallGoodsBill>();
-                //鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎
-                listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
-                int a = 0;
-                if (listCa.Count > 0)
+                ds = oCN.RunProcReturn("select * from JIT_CallGoodsBackBillMain ", "JIT_CallGoodsBackBillMain ");
+
+                if (ds.Tables[0].Rows.Count > 0)
                 {
-                    for (int i = 0; i < listCa.Count; i++)
-                    {
-                        long HInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
-                        string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);
-                        //long HOutOrgID = int.Parse(listCa[i].HOutOrgID.ToString());
-                        //long HWHID = int.Parse(listCa[i].HWHID.ToString());
 
-                        oCN.RunProc($"exec h_p_JIT_GetCallGoodsBillCount_Back {HInterID},'{HBillNo}',{HOrgID},'{user}'");
-                        a = 1;
-                    }
+                    long HInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
+                    string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);
+                    //long HOutOrgID = int.Parse(listCa[i].HOutOrgID.ToString());
+                    //long HWHID = int.Parse(listCa[i].HWHID.ToString());
 
-                    if (a == 1)
-                    {
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "鐢熸垚閫�鏂欏崟鎴愬姛";
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
-                    else
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鐢熸垚閫�鏂欏崟澶辫触";
-                        objJsonResult.data = null;
-                        return objJsonResult;
-                    }
+                   ds= oCN.RunProcReturn($"exec h_p_JIT_GetCallGoodsBillCount_Back {HInterID},'{HBillNo}',{HOrgID},'{user}'", "h_p_JIT_GetCallGoodsBillCount_Back");
+
+                    objJsonResult.code = ds.Tables[0].Rows[0][0].ToString();
+                    objJsonResult.count = int.Parse(ds.Tables[0].Rows[0][0].ToString());
+                    objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString();
+                    objJsonResult.data = null;
+                    return objJsonResult;
                 }
                 else
                 {

--
Gitblit v1.9.1