From 9dfddcb21acd47446a612ea64582d45c705548e4 Mon Sep 17 00:00:00 2001
From: zrg <z18737863051@163.com>
Date: 星期五, 01 十一月 2024 11:16:51 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/CJGL/Cj_SingleStationController.cs |   84 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 75 insertions(+), 9 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
index daace44..e890165 100644
--- a/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_SingleStationController.cs
@@ -732,8 +732,26 @@
             try
             {
                 ds = oCN.RunProcReturn(@"select * from h_v_Gy_BarCodeBill WITH(NOLOCK) where HBarCode='" + HBarCode + "'", "h_v_Gy_BarCodeBill");
+
+                //鍒ゆ柇鏉$爜鏄惁瀛樺湪鏉$爜妗f
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    string HSourceBillNo = ds.Tables[0].Rows[0]["HSourceBillNo"].ToString();
+                    DataSet dataTable = oCN.RunProcReturn(@"select * from Sc_ProcessExchangeBillMain where HBillNo='" + HSourceBillNo + "'", "Sc_ProcessExchangeBillMain");
+                    //鍒ゆ柇鏉$爜鐨勬簮鍗� 娴佽浆鍗℃槸鍚﹁鍒犻櫎
+                    if (dataTable.Tables[0].Rows.Count == 0)
+                    {
+                        //濡傛灉婧愬崟宸茬粡鍒犻櫎  鍒欐潯鐮佷篃鍒犻櫎閲嶆柊鐢熸垚
+                        oCN.RunProc("delete from Gy_BarCodeBill where HBarCode='" + HBarCode + "'");
+
+                        //閲嶆柊鏌ヨ鏉$爜妗f 杩涘叆鏂板鏂规硶
+                        ds = oCN.RunProcReturn(@"select * from Gy_BarCodeBill where HBarCode='" + HBarCode + "'", "Gy_BarCodeBill");
+                    }
+                }
+
                 if (ds.Tables[0].Rows.Count == 0)
                 {
+                    //鍒ゆ柇闀垮害鏄惁涓�29浣� 鏃犲皹杞﹂棿
                     if (HBarCode.Length == 29)
                     {
                         string str1 = HBarCode.Substring(18, 8);
@@ -741,7 +759,7 @@
                         DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
 left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
 left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
-where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID="+ HOrgID, "Sc_ProcessExchangeBillMain");
+where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");
 
                         if (dataSet.Tables[0].Rows.Count == 0)
                         {
@@ -767,7 +785,33 @@
                                 return get_HBardBillSave(HProcExchBillNo, HBarCode);
                             }
                         }
-                        else {
+                        else
+                        {
+                            ClsPub.CurUserName = user;
+                            //鏉$爜鐢熸垚
+                            return get_HBardBillSave(HProcExchBillNo, HBarCode);
+                        }
+                    }
+                    //鍒ゆ柇闀垮害鏄惁涓�50浣�  15杞﹂棿
+                    else if (HBarCode.Length == 50)
+                    {
+                        string str1 = HBarCode.Substring(42, 8);
+
+                        DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
+left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
+left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
+where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");
+
+                        if (dataSet.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏉$爜涓庢祦杞崱涓嶅瓨鍦ㄥ搴斿叧绯�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
                             ClsPub.CurUserName = user;
                             //鏉$爜鐢熸垚
                             return get_HBardBillSave(HProcExchBillNo, HBarCode);
@@ -783,19 +827,41 @@
                     }
                 }
                 else {
-                   
-                    string str1 = HBarCode.Substring(18, 8);
+                    //鍒ゆ柇闀垮害鏄惁涓�29浣� 鏃犲皹杞﹂棿
+                    if (HBarCode.Length == 29)
+                    {
+                        string str1 = HBarCode.Substring(18, 8);
 
-                    DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
+                        DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
 left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
 left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
 where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");
 
-                    if (dataSet.Tables[0].Rows.Count == 0)
-                    {
-                        str1 = HBarCode.Substring(23, 3);
+                        if (dataSet.Tables[0].Rows.Count == 0)
+                        {
+                            str1 = HBarCode.Substring(23, 3);
 
-                        dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
+                            dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
+left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
+left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
+where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");
+
+                            if (dataSet.Tables[0].Rows.Count == 0)
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "鏉$爜涓庢祦杞崱涓嶅瓨鍦ㄥ搴斿叧绯�!";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                        }
+                    }
+                    //鍒ゆ柇闀垮害鏄惁涓�50浣�  15杞﹂棿
+                    else if (HBarCode.Length == 50)
+                    {
+                        string str1 = HBarCode.Substring(42, 8);
+
+                        DataSet dataSet = oCN.RunProcReturn(@"select  m.HNumber 鐗╂枡浠g爜,o.HNumber 缁勭粐浠g爜 from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
 left join Gy_Material m WITH(NOLOCK) on a.HMaterID=m.HItemID
 left join Xt_ORGANIZATIONS o WITH(NOLOCK) on a.HPRDORGID=o.HItemID 
 where HBillNo='" + HProcExchBillNo + "' and HProjectNum like'" + str1 + "%' and HPRDORGID=" + HOrgID, "Sc_ProcessExchangeBillMain");

--
Gitblit v1.9.1