From b8d7145eadce706aef50ef95be75cff9ef79b518 Mon Sep 17 00:00:00 2001
From: llj <132905093+newwwwwwtree@users.noreply.github.com>
Date: 星期五, 31 十月 2025 09:01:20 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/仓存管理/条码生成/Sc_BarCodeController.cs | 1838 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 1,789 insertions(+), 49 deletions(-)

diff --git "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs" "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs"
index 044e63c..10103a7 100644
--- "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs"
+++ "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\346\235\241\347\240\201\347\224\237\346\210\220/Sc_BarCodeController.cs"
@@ -1,13 +1,16 @@
-锘縰sing DBUtility;
+锘縰sing DAL;
+using DBUtility;
 using Newtonsoft.Json;
 using Newtonsoft.Json.Converters;
 using Newtonsoft.Json.Linq;
 using System;
 using System.Collections.Generic;
 using System.Data;
+using System.IO;
 using System.Linq;
 using System.Net;
 using System.Net.Http;
+using System.Web;
 using System.Web.Http;
 using WebAPI.Models;
 
@@ -22,6 +25,7 @@
         public WebServer webserver = new WebServer();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         private WebS.WebService1 oWebs = new WebS.WebService1();
+        public WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS();
         //鑾峰彇绯荤粺鍙傛暟
         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
         public Int64 HInterID = 0;      //鍐呯爜
@@ -68,7 +72,7 @@
                 }
                 else
                 {
-                    list.Add("");
+                    list.Add(CampanyName);
                 }
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -126,12 +130,21 @@
                     list.Add("浠櫒鎴愬搧鏉$爜瑙勫垯");
                     list.Add("璇曞墏鎴愬搧鏉$爜瑙勫垯");
                 }
+                else if (sCapName == "娣诲悍绉戞妧")
+                {
+                    list.Add("鍞竴鏉$爜");
+                    list.Add("鎵规鏉$爜");
+                }
+                else if (sCapName == "娴疯瘹")
+                {
+                    list.Add("鍝佺鏉$爜");
+                }
                 else
                 {
                     list.Add("鍞竴鏉$爜");
                     list.Add("鍝佺鏉$爜");
                     list.Add("鎵规鏉$爜");
-                    //list.Add("鎵樼洏鏉$爜");
+                    list.Add("鎵樼洏鏉$爜");
                 }
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -155,6 +168,7 @@
         [HttpGet]
         public object ReportFromBillList(int page, int limit, string sWhere,string HSouceBillType,string HOrgID)
         {
+            oSystemParameter.ShowBill(ref DBUtility.ClsPub.sExeReturnInfo);
             List<object> columnNameList = new List<object>();
             try
             {
@@ -176,39 +190,70 @@
                     case "鐢熶骇璁㈠崟":
                         tabname = "h_v_IFCLD_ICMOBillList_Source"; 
                         count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IFCLD_ICMOBillList_Source "+sWhere+ " and 浠诲姟鏁伴噺>isnull(鍏ュ簱鏁伴噺,0)  and 鐘舵��<>'缁撴' order by 鍗曟嵁鍙�", tabname).Tables[0].Rows.Count;
-                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙�) as HRowNumber,* from h_v_IFCLD_ICMOBillList_Source " + sWhere + " and 浠诲姟鏁伴噺>isnull(鍏ュ簱鏁伴噺,0)  and 鐘舵��<>'缁撴')   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        sql = string.Format(@"select * from(select row_number() over (order by 鍗曟嵁鍙�) as HRowNumber,* from h_v_IFCLD_ICMOBillList_Source " + sWhere + " and 浠诲姟鏁伴噺>isnull(鍏ュ簱鏁伴噺,0)  and 鐘舵��<>'缁撴')   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
                     case "鐢熶骇姹囨姤鍗�":
                         tabname = "h_v_IF_ICMOReportBillList_Source";
                         count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_ICMOReportBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
-                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_ICMOReportBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        sql = string.Format(@"select * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_ICMOReportBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
                     case "閲囪喘璁㈠崟":
                         tabname = "h_v_IF_POOrderBillList_Source";
                         count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_POOrderBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
-                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_POOrderBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        sql = string.Format(@"select * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_POOrderBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
                     case "鏀舵枡閫氱煡鍗�":
                         tabname = "h_v_IF_POInStockBillList_Source";
-                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_POInStockBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
-                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_POInStockBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        if (oSystemParameter.omodel.WMS_CampanyName == "鐟炰笌绁�")
+                        {
+                            count = new SQLHelper.ClsCN().RunProcReturn("select top 1000 * from h_v_IF_POInStockBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                            sql = string.Format(@"select * from(select  top 1000 row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_POInStockBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        }
+                        else
+                        {
+                            count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_POInStockBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                            sql = string.Format(@"select * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_POInStockBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        }
                         break;
                     case "濮斿璁㈠崟":
                         tabname = "h_v_IF_EntrustOrderBillList_Source";
                         count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_EntrustOrderBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
-                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_EntrustOrderBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        sql = string.Format(@"select * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_EntrustOrderBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
-                    case "閫�璐ч�氱煡鍗�":
+                    case "鐢熶骇鍏ュ簱鍗�":
+                        tabname = "h_v_IF_ProductInBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_ProductInBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_ProductInBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
-                    case "鍏朵粬鍏ュ簱鍗�":
+                    case "閲囪喘鍏ュ簱鍗�":
+                        tabname = "h_v_IF_POStockInBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_POStockInBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_POStockInBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
-                    case "鐩存帴璋冩嫧鍗�":
-                        break;
-                    case "閲囪喘閫�鏂欏崟":
+                    case "閿�鍞��璐у崟":
+                        tabname = "h_v_IF_SellOutBackBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_SellOutBackBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_SellOutBackBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
                     case "鐢熶骇閫�鏂欏崟":
+                        tabname = "h_v_IF_MateOutBackBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_MateOutBackBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_MateOutBackBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
-                    case "缁勮鎷嗗嵏鍗�":
+                    case "宸ュ簭娴佽浆鍗�":
+                        tabname = "h_v_IF_ProcessExchangeBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_ProcessExchangeBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_ProcessExchangeBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        break;
+                    case "閿�鍞嚭搴撳崟":
+                        tabname = "h_v_IF_SellOutBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_SellOutBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_SellOutBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
+                        break;
+                    case "棰嗘枡鍑哄簱鍗�":
+                        tabname = "h_v_IF_MateOutBillList_Source";
+                        count = new SQLHelper.ClsCN().RunProcReturn("select * from h_v_IF_MateOutBillList_Source " + sWhere + " order by 鍗曟嵁鍙� desc,hsubid", tabname).Tables[0].Rows.Count;
+                        sql = string.Format(@"select top " + pageSize + " * from(select row_number() over (order by 鍗曟嵁鍙� desc,hsubid) as HRowNumber,* from h_v_IF_MateOutBillList_Source " + sWhere + ")   as A where HRowNumber >" + pageSize + " *(" + pageNum + "-1)");
                         break;
                     default:
                         break;
@@ -217,8 +262,8 @@
                 string aa = ds.Tables[0].Columns[0].ToString();
                 //ds.Tables[0].Columns["hmainid"].ColumnName.ToUpper();
                 //ds.Tables[0].Columns["hsubid"].ColumnName.ToUpper();
-                ds.Tables[0].Columns["hmainid"].ColumnName= "HMainID";
-                ds.Tables[0].Columns["hsubid"].ColumnName= "HSubID";
+                ds.Tables[0].Columns["hmainid"].ColumnName = "HMainID";
+                ds.Tables[0].Columns["hsubid"].ColumnName = "HSubID";
                 foreach (DataColumn col in ds.Tables[0].Columns)
                 {
 
@@ -249,6 +294,34 @@
             catch (Exception e)
             {
 
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = e.Message.ToString();
+                objJsonResult.data = null;
+                objJsonResult.list = columnNameList;
+            }
+            return objJsonResult;
+        }
+        #endregion
+
+        #region [閫氳繃鏉$爜缂栧彿鑾峰彇HItemId]
+        [Route("Sc_BarCode/Get_HItemId")]
+        [HttpGet]
+        public object Get_HItemId(string sWhere)
+        {
+            List<object> columnNameList = new List<object>();
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_IF_BarCodeBillList where 鏉$爜缂栧彿 =  '" + sWhere + "'", "h_v_IF_BarCodeBillList");
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = e.Message.ToString();
@@ -298,6 +371,12 @@
                             //鍐欏叆淇℃伅
                             ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
                             break;
+                        case "1205": //閿�鍞嚭搴撳崟
+                            //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("select * from h_v_IF_SellOutBillList_BarCode where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_SellOutBillList_BarCode");
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
                         case "1102": //閲囪喘璁㈠崟
                             //寰楀埌淇℃伅
                             ds = oCN.RunProcReturn("select * from h_v_IF_POOrderList where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_POOrderList");
@@ -316,6 +395,30 @@
                             //鍐欏叆淇℃伅
                             ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
                             break;
+                        case "1202": //鐢熶骇鍏ュ簱
+                             //寰楀埌淇℃伅
+                            ds = oWebs.getDataSetBySQL("select * from h_v_IF_ProductInBillList_Source where HMainID=" + oSelectRow.BillMainID + " and HSubID=" + oSelectRow.BillSubID, "h_v_IF_ProductInBillList_Source", ref DBUtility.ClsPub.sExeReturnInfo);
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(Sub_WriteInForm_InOut(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
+                        case "1201": //閲囪喘鍏ュ簱
+                            //寰楀埌淇℃伅
+                            ds = oWebs.getDataSetBySQL("select * from h_v_IF_POStockInBillList_Source	 where HMainID=" + oSelectRow.BillMainID + " and HSubID=" + oSelectRow.BillSubID, "h_v_IF_POStockInBillList_Source	", ref DBUtility.ClsPub.sExeReturnInfo);
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(Sub_WriteInForm_InOut(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
+                        case "1247": //閿�鍞��璐�
+                            //寰楀埌淇℃伅
+                            ds = oWebs.getDataSetBySQL("select * from h_v_IF_SellOutBackBillList_Source where HMainID=" + oSelectRow.BillMainID + " and HSubID=" + oSelectRow.BillSubID, "h_v_IF_SellOutBackBillList_Source", ref DBUtility.ClsPub.sExeReturnInfo);
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(Sub_WriteInForm_InOut(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
+                        case "1244": //鐢熶骇閫�鏂�
+                            //寰楀埌淇℃伅
+                            ds = oWebs.getDataSetBySQL("select * from h_v_IF_MateOutBackBillList_Source where HMainID=" + oSelectRow.BillMainID + " and HSubID=" + oSelectRow.BillSubID, "h_v_IF_MateOutBackBillList_Source", ref DBUtility.ClsPub.sExeReturnInfo);
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(Sub_WriteInForm_InOut(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
                         case "1403": //閫�璐ч�氱煡鍗�
                             break;
                         case "1203": //鍏朵粬鍏ュ簱鍗�
@@ -324,9 +427,19 @@
                             break;
                         case "1239": //閲囪喘閫�鏂欏崟
                             break;
-                        case "1244": //鐢熶骇閫�鏂欏崟
-                            break;
                         case "1255": //缁勮鎷嗗嵏鍗�
+                            break;
+                        case "3772": //宸ュ簭娴佽浆鍗�
+                                     //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("select * from h_v_IF_ProcessExchangeList where HMainID=" + oSelectRow.BillMainID + " and HSubID=" + oSelectRow.BillSubID, "h_v_IF_ProcessExchangeList", ref DBUtility.ClsPub.sExeReturnInfo);
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
+                        case "1204": //棰嗘枡鍑哄簱鍗�
+                            //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_MateOutBillList " + oSelectRow.BillMainID.ToString() + "," + oSelectRow.BillSubID.ToString(), "h_p_Gy_BarCodeBill_MateOutBillList");
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
                             break;
                         default:
                             break;
@@ -352,6 +465,7 @@
 
         public object HSourceOrderList(DataTable dt, HSouceOrderList ordrlist,string HBarCodeType) 
         {
+            oSystemParameter.ShowBill(ref DBUtility.ClsPub.sExeReturnInfo);
             for (int i = 0; i < dt.Rows.Count; i++)
             {
                 ordrlist.HQty = dt.Rows[i]["鏈敓鎴愭潯鐮佹暟閲�"].ToString();
@@ -387,6 +501,18 @@
                 ordrlist.HPinfan = dt.Rows[i]["HPinfan"].ToString();
                 ordrlist.HSourceName = dt.Rows[i]["鐢熶骇绾�"].ToString();
                 ordrlist.HEndDate = dt.Rows[i]["璁″垝瀹屽伐鏃ユ湡"].ToString();//鍗氭棩 鐢熶骇璁㈠崟 澶辨晥鏃ユ湡
+                ordrlist.HMinQty = dt.Rows[i]["鏈�灏忓寘瑁呮暟"].ToString();
+
+                if (oSystemParameter.omodel.WMS_CampanyName == "涔濊彵") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
+                {
+                    ordrlist.HGroupID = Convert.ToInt32(dt.Rows[i]["HBeginWorkGroupID"]);
+                    ordrlist.HGroupNumber = dt.Rows[i]["寮�宸ョ彮缁勪唬鐮�"].ToString();
+                    ordrlist.HGroupName = dt.Rows[i]["寮�宸ョ彮缁勫悕绉�"].ToString();
+                    ordrlist.HEmpID = Convert.ToInt32(dt.Rows[i]["HBeginWorkEmpID"]);
+                    ordrlist.HEmpNumber = dt.Rows[i]["寮�宸ヤ汉浠g爜"].ToString();
+                    ordrlist.HEmpName = dt.Rows[i]["寮�宸ヤ汉鍚嶇О"].ToString();
+                }
+
                 if (HBarCodeType == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
                 {
                     ordrlist.HMinQty = dt.Rows[i]["鏈敓鎴愭潯鐮佹暟閲�"].ToString();
@@ -403,8 +529,11 @@
             return ordrlist;
         }
 
+       
+
         public object HSourceOrderList1(DataTable dt, HSouceOrderList ordrlist, string HBarCodeType,string HSourceBillType)
         {
+            oSystemParameter.ShowBill(ref DBUtility.ClsPub.sExeReturnInfo);
             for (int i = 0; i < dt.Rows.Count; i++)
             {
                 ordrlist.HQty = dt.Rows[i]["鏈敓鎴愭潯鐮佹暟閲�"].ToString();
@@ -428,6 +557,17 @@
                 ordrlist.HUnitName = dt.Rows[i]["璁¢噺鍗曚綅"].ToString();
                 ordrlist.HRemark = dt.Rows[i]["澶囨敞"].ToString();
                 ordrlist.HMTONo = dt.Rows[i]["璁″垝璺熻釜鍙�"].ToString();
+
+                if(HSourceBillType == "鏀舵枡閫氱煡鍗�")
+                {
+                    if (oSystemParameter.omodel.WMS_CampanyName != "鐟炰笌绁�")
+                    {
+                        ordrlist.HFurnaceNO = dt.Rows[i]["鐐夊彿"].ToString();
+                        ordrlist.HCoilNO = dt.Rows[i]["閽㈠嵎鎹嗗寘鍙�"].ToString();
+                        ordrlist.HheatNO = dt.Rows[i]["鐑鐞�"].ToString();
+                    }
+                }
+
                 if (HBarCodeType == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
                 {
                     ordrlist.HMinQty = dt.Rows[i]["鏈敓鎴愭潯鐮佹暟閲�"].ToString();
@@ -458,6 +598,16 @@
                             ordrlist.HGiveAwayFlag = 0;
                         }
                     }
+                    if (HSourceBillType == "鏀舵枡閫氱煡鍗�" || HSourceBillType == "閲囪喘璁㈠崟")
+                    {
+                        if (oSystemParameter.omodel.WMS_CampanyName == "娴疯瘹")   //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
+                        {
+                            ordrlist.HSourceBillSEQ = dt.Rows[i]["HSEQ"].ToString();
+                            ordrlist.HFactory = dt.Rows[i]["瀹㈡埛缂栧彿"].ToString();
+                            ordrlist.HCoilNO = dt.Rows[i]["娆惧彿"].ToString();
+                            ordrlist.HFurnaceNO = dt.Rows[i]["鍒嗙粍"].ToString();
+                        }
+                    }
                 }
                 if (HSourceBillType == "閫�璐ч�氱煡鍗�")
                 {
@@ -465,7 +615,7 @@
                     ordrlist.HCusNumber = dt.Rows[i]["瀹㈡埛浠g爜"].ToString();
                     ordrlist.HCusName= dt.Rows[i]["瀹㈡埛"].ToString();
                 }
-                if (HSourceBillType == "鍏朵粬鍏ュ簱鍗�")
+                if (HSourceBillType == "鍏朵粬鍏ュ簱鍗�" || HSourceBillType == "棰嗘枡鍑哄簱鍗�")
                 {
                     ordrlist.HWhID = dt.Rows[i]["HWhID"].ToString();
                     ordrlist.HWhNumber = dt.Rows[i]["浠撳簱浠g爜"].ToString();
@@ -474,10 +624,139 @@
                     ordrlist.HSPNumber = dt.Rows[i]["浠撲綅浠g爜"].ToString();
                     ordrlist.HSPName = dt.Rows[i]["浠撲綅"].ToString();
                 }
+                if(HSourceBillType == "閿�鍞嚭搴撳崟")
+                {
+                    ordrlist.HWhID = dt.Rows[i]["HWhID"].ToString();
+                    ordrlist.HWhNumber = dt.Rows[i]["浠撳簱浠g爜"].ToString();
+                    ordrlist.HWhName = dt.Rows[i]["浠撳簱"].ToString();
+                    //ordrlist.HSPID = dt.Rows[i]["HSPID"].ToString();
+                    //ordrlist.HSPNumber = dt.Rows[i]["浠撲綅浠g爜"].ToString();
+                    //ordrlist.HSPName = dt.Rows[i]["浠撲綅"].ToString();
+                }
             }
             return ordrlist;
         }
 
+        //鏍规嵁TABLE鍐欏叆鐣岄潰(鍑哄叆搴撳崟鎹�) 
+        private object Sub_WriteInForm_InOut(DataTable dt, HSouceOrderList ordrlist, string HBarCodeType, string HSourceBillType)
+        {
+            oSystemParameter.ShowBill(ref DBUtility.ClsPub.sExeReturnInfo);
+            for (int i = 0; i < dt.Rows.Count; i++)
+            {
+                ordrlist.HQty = dt.Rows[i]["鍙敓鎴愭潯鐮佹暟閲�"].ToString();
+                ordrlist.HinitQty = dt.Rows[i]["鍙敓鎴愭潯鐮佹暟閲�"].ToString();
+                ordrlist.HMinQty = dt.Rows[i]["鏈�灏忓寘瑁呮暟"].ToString();
+                ordrlist.HMainID = dt.Rows[i]["HMainID"].ToString();
+                ordrlist.HSubID = dt.Rows[i]["HSubID"].ToString();
+                ordrlist.HBillNo = dt.Rows[i]["鍗曟嵁鍙�"].ToString();
+                ordrlist.HBillType = dt.Rows[i]["HBillType"].ToString();
+                ordrlist.HDeptID = dt.Rows[i]["HDeptID"].ToString();
+                ordrlist.HDeptNumber = dt.Rows[i]["閮ㄩ棬浠g爜"].ToString();
+                ordrlist.HDeptName = dt.Rows[i]["閮ㄩ棬"].ToString();
+                ordrlist.HMaterID = dt.Rows[i]["HMaterID"].ToString();
+                ordrlist.HMaterNumber = dt.Rows[i]["鐗╂枡浠g爜"].ToString();
+                ordrlist.HMaterName = dt.Rows[i]["鐗╂枡鍚嶇О"].ToString();
+                ordrlist.HMaterModel = dt.Rows[i]["瑙勬牸鍨嬪彿"].ToString();
+                ordrlist.HBatchNo = dt.Rows[i]["鎵瑰彿"].ToString();
+                ordrlist.HUnitID = dt.Rows[i]["HUnitID"].ToString();
+                ordrlist.HUnitNumber = dt.Rows[i]["璁¢噺鍗曚綅浠g爜"].ToString();
+                ordrlist.HUnitName = dt.Rows[i]["璁¢噺鍗曚綅"].ToString();
+                ordrlist.HAuxPropID = dt.Rows[i]["HAuxPropID"].ToString();
+                ordrlist.HAuxPropNumber = dt.Rows[i]["杈呭姪灞炴�т唬鐮�"].ToString();
+                ordrlist.HAuxPropName = dt.Rows[i]["杈呭姪灞炴��"].ToString();
+                ordrlist.HWhID = dt.Rows[i]["HWhID"].ToString();
+                ordrlist.HWhNumber = dt.Rows[i]["浠撳簱浠g爜"].ToString();
+                ordrlist.HWhName = dt.Rows[i]["浠撳簱"].ToString();
+                ordrlist.HSPID = dt.Rows[i]["HSPID"].ToString();
+                ordrlist.HSPNumber = dt.Rows[i]["浠撲綅浠g爜"].ToString();
+                ordrlist.HSPName = dt.Rows[i]["浠撲綅"].ToString();
+                ordrlist.HMTONo = dt.Rows[i]["璁″垝璺熻釜鍙�"].ToString();
+                ordrlist.HDate = dt.Rows[i]["鏃ユ湡"].ToString(); 
+                ordrlist.HShowDate = DateTime.Now.ToString();
+
+                if(HSourceBillType=="閲囪喘鍏ュ簱鍗�")
+                {
+                    if(oSystemParameter.omodel.WMS_CampanyName=="娴疯瘹")   //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�     绌虹櫧涓洪�氱敤
+                    {
+                        ordrlist.HInnerBillNo = dt.Rows[i]["閲囪喘璁㈠崟鍙�"].ToString();
+                        ordrlist.HSupID = dt.Rows[i]["HSupID"].ToString();
+                        ordrlist.HSupNumber = dt.Rows[i]["渚涘簲鍟嗕唬鐮�"].ToString();
+                        ordrlist.HSupName = dt.Rows[i]["渚涘簲鍟�"].ToString();
+                        ordrlist.HFactory = dt.Rows[i]["瀹㈡埛缂栧彿"].ToString();
+                        ordrlist.HCoilNO = dt.Rows[i]["娆惧彿"].ToString();
+                        ordrlist.HFurnaceNO = dt.Rows[i]["鍒嗙粍"].ToString();
+                    }
+                }
+            }
+            return ordrlist;
+        }
+        #endregion
+
+        #region [鍚屾璧勬枡]
+        [Route("Sc_BarCode/Sync_data")]
+        [HttpGet]
+        public object Sync_data()
+        {
+            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+            try
+            {
+                oCn.RunProc("exec h_p_IF_ERPDataToLocal", ref DBUtility.ClsPub.sExeReturnInfo);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍚屾鍩虹璧勬枡鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍚屾鍩虹璧勬枡澶辫触锛�" + e;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [鎵规]
+        [Route("Sc_BarCode/Batch")]
+        [HttpGet]
+        public object Batch(int HMaterID, string HBatchNo)
+        {
+            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+            bool b = false;
+            if (HMaterID != 0)
+            {
+                DataSet oDs = oCn.RunProcReturn("exec h_p_Gy_BarCodeBill_GetBatchNo " + HMaterID.ToString() + ",'" + HBatchNo + "','" + "" + "','" + "" + "'", "h_p_Gy_BarCodeBill_GetBatchNo");
+                //
+                if (oDs == null && oDs.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.Message= "[0000-2-053]鐢熸垚鎵规澶辫触锛�";
+                    return objJsonResult;
+                }
+                else if (DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0][0]) == "1")
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.Message = "[0000-2-054]鐢熸垚鎵规鎴愬姛锛�";
+                    objJsonResult.data = DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0]["HBatchNo"]);
+                    HBatchNo = DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0]["HBatchNo"]);
+                    b = true;
+                    return objJsonResult;
+                }
+            }
+            //鏄庣粏琛ㄦ槸鍚︿负闆惰
+            if (b == false)
+            {
+                objJsonResult.code = "1";
+                objJsonResult.Message= "[3899-2-003]娌℃湁闇�瑕佺敓鎴愭壒娆$殑鏄庣粏琛岋紒";
+                return objJsonResult;
+            }
+            else //瀹屽叏灏侀棴
+            {
+                return null;
+            }
+        }
         #endregion
 
         #region [鏉$爜鐢熸垚鎺ュ彛]
@@ -492,10 +771,11 @@
                 string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                 string msg2 = sArray[0].ToString();
                 string HOrgType = sArray[1].ToString();
-                string HSourceBillType = sArray[2].ToString();
+                string HSourceBillTypeName = sArray[2].ToString();
                 string HSelectBarCodeType = sArray[3].ToString();
                 string CampanyName = sArray[4].ToString()=="xxx"?"": sArray[4].ToString();
                 string UserName = sArray[5].ToString();
+                ClsPub.CurUserName = UserName;
 
                 //鑾峰彇鍐呯爜
                 HInterID = DBUtility.ClsPub.CreateBillID_Prod(ModName, ref DBUtility.ClsPub.sExeReturnInfo);
@@ -510,7 +790,7 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "閫夋嫨缁勭粐鏈夐敊璇�!";
+                    objJsonResult.Message = "[0000-2-055]閫夋嫨缁勭粐鏈夐敊璇�!";
                     return objJsonResult;
                 }
                 if (!Sub_AllowSave(msg2, HSelectBarCodeType))//鍗曟嵁瀹屾暣鎬у垽鏂�
@@ -524,19 +804,19 @@
                 else
                 {
                     //鐢熸垚鏉$爜
-                    SaveBarCode(msg2, HSelectBarCodeType, CampanyName);
+                    SaveBarCode(msg2, HSelectBarCodeType, CampanyName, HSourceBillTypeName);
                 }
             }
             catch (Exception e)
             {
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
-                objJsonResult.Message = "鏉$爜鐢熸垚澶辫触!"+e.Message;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触!" + e.Message;
                 return objJsonResult;
             }
             return objJsonResult;
         }
-        #endregion
+        #endregion        
 
         #region[鍗曟嵁瀹屾暣鎬у垽鏂璢
         private bool Sub_AllowSave(string msg2, string HSelectBarCodeType)
@@ -554,17 +834,18 @@
                 long HMaterID = DBUtility.ClsPub.isLong(ordrlist[i].HMaterID);              // 鐗╂枡鍐呯爜
                 string HBatchNo = DBUtility.ClsPub.isStrNull(ordrlist[i].HBatchNo);         // 鎵瑰彿
                 long HAuxPropID = DBUtility.ClsPub.isLong(ordrlist[i].HAuxPropID);          // 杈呭姪灞炴�D
+                string HMTONo = DBUtility.ClsPub.isStrNull(ordrlist[i].HMTONo);             //璁″垝璺熻釜鍙�
                 double HSourceQty = DBUtility.ClsPub.isDoule(ordrlist[i].HMinQty);          // 婧愬崟鏁伴噺
                 double HQty = DBUtility.ClsPub.isDoule(ordrlist[i].HQty);                   // 鏁伴噺
                 double HMinQty = DBUtility.ClsPub.isDoule(ordrlist[i].HMinQty);             // 鏈�灏忓寘瑁呮暟
                 if (HMaterID != 0)
                 {
-                    DataSet oDsCheck = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_AddCheck " + HSno.ToString() + ",'" + HBarCodeType + "','" + HSourceBillNo + "'," + HMaterID.ToString() + ",'" + HBatchNo + "'," + HAuxPropID.ToString() + "," + HSourceQty.ToString() + "," + HQty.ToString() + "," + HMinQty.ToString() + "," + HOrgID.ToString() + ",'" + SourceQtyCtl + "'", "h_p_Gy_BarCodeBill_AddCheck");
+                    DataSet oDsCheck = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_AddCheck_New " + HSno.ToString() + ",'" + HBarCodeType + "','" + HSourceBillNo + "'," + HMaterID.ToString() + ",'" + HBatchNo + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "'," + HSourceQty.ToString() + "," + HQty.ToString() + "," + HMinQty.ToString() + "," + HOrgID.ToString() + ",'" + SourceQtyCtl + "'", "h_p_Gy_BarCodeBill_AddCheck_New");
                     if (oDsCheck == null && oDsCheck.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
-                        objJsonResult.Message = "鏉$爜鐢熸垚瀹屾暣鎬у垽鏂敊璇�";
+                        objJsonResult.Message = "[3899-2-007]鏉$爜鐢熸垚瀹屾暣鎬у垽鏂敊璇�";
                         return false;
                     }
                     else if (DBUtility.ClsPub.isStrNull(oDsCheck.Tables[0].Rows[0][0]) == "1")
@@ -586,7 +867,7 @@
         #endregion
 
         #region[鏉$爜鐢熸垚鏂规硶]
-        private object SaveBarCode(string msg2, string HSelectBarCodeType, string CampanyName)
+        private object SaveBarCode(string msg2, string HSelectBarCodeType, string CampanyName,string HSourceBillTypeName)
         {
             int LSHlen = 6;             //娴佹按鍙烽暱搴�
             int SumLen = 10;            //鎬婚暱搴�
@@ -598,7 +879,7 @@
             int HBQty = 0;              //绠辨暟
             double HQty = 0;            //鏁伴噺
             string WeiShu = "";         //灏炬暟
-            int LSH = 0;                //娴佹按鍙�
+            Int64 LSH = 0;              //娴佹按鍙�
             string LSH2 = "";           //娴佹按鍙疯浆鎹㈡垚瀛楃
             string sDate = "";          //鏃ユ湡
             string sYear = "";          //骞�
@@ -613,6 +894,24 @@
             int k = 0;
             int n = 0;                  //鍚屼竴鎵圭敓鎴愭潯鐮佷腑鐨勭鍑犳潯
             string sTMNumber = "";      //鏉$爜鑷畾涔夊墠缂�
+
+            string HCoilNO = "";
+            string HFurnaceNO = "";
+            string HFactory = "";
+            decimal HAuxQty = 0;
+            string HheatNO = "";
+
+            Int64 HGroupID = 0;
+            long HEmpID = 0;
+            string HCusModel = ""; //瀹㈡埛鐗╂枡瑙勬牸
+            string HCusMaterName = ""; //瀹㈡埛鐗╂枡鍚嶇О
+            string HCheckEmpName = ""; //妫�楠屽憳鍚嶇О
+
+            string HSupNumber = ""; // 渚涘簲鍟嗙紪鐮�
+            string HPOInStockBillNo = ""; // 鏀舵枡閫氱煡鍗曞彿
+
+            string HPOOrderBillNo = ""; // 閲囪喘璁㈠崟鍙�
+
             DataSet Ds;
             msg2 = msg2.Replace("\\", "");
             msg2 = msg2.Replace("\n", "");  //\n
@@ -625,6 +924,17 @@
                     HNumber = DBUtility.ClsPub.isStrNull(ordrlist[j].HMaterID);
                     HMaterNumber = DBUtility.ClsPub.isStrNull(ordrlist[j].HMaterNumber);
                     HBatchNo = ClsPub.isStrNull(ordrlist[j].HBatchNo);
+
+                    HCoilNO = ClsPub.isStrNull(ordrlist[j].HCoilNO);
+                    HFurnaceNO = ClsPub.isStrNull(ordrlist[j].HFurnaceNO);
+                    HFactory = ClsPub.isStrNull(ordrlist[j].HFactory);
+                    HAuxQty = ClsPub.isLong(ordrlist[j].HAuxQty);
+                    HheatNO = ClsPub.isStrNull(ordrlist[j].HheatNO);
+                    HGroupID = ClsPub.isInt(ordrlist[j].HGroupID);
+                    HEmpID = ClsPub.isLong(ordrlist[j].HEmpID);
+                    HCusModel = ClsPub.isStrNull(ordrlist[j].HCusModel);
+                    HCusMaterName = ClsPub.isStrNull(ordrlist[j].HCusMaterName);
+                    HCheckEmpName = ClsPub.isStrNull(ordrlist[j].HCheckEmpName);
                     //鏃ユ湡鑾峰彇鏂瑰紡
                     sDate = DateTime.Now.ToString();
                     //
@@ -640,11 +950,20 @@
                     {
                         sDate = DBUtility.ClsPub.isStrNull(ordrlist[j].HDate);
                     }
+                    else if (CampanyName == "涔濊彵")// 鏃ユ湡锛氱敓浜ц鍗� 鏉$爜鏃ユ湡
+                    {
+                        sDate = DBUtility.ClsPub.isStrNull(ordrlist[j].HDate);
+                    }
                     HYasuoji = DBUtility.ClsPub.isStrNull(ordrlist[j].HPinfan); //鍘嬬缉鏈轰唬鐮侊紙澶忓疂鐢靛櫒锛�
                     HModelName = DBUtility.ClsPub.isStrNull(ordrlist[j].HCusType); //鏈哄瀷锛堝瀹濈數鍣級
                     HICMOBillNo = DBUtility.ClsPub.isStrNull(ordrlist[j].HSourceBillNo); //鐢熶骇璁㈠崟鍙凤紙澶忓疂鐢靛櫒锛�
                     HBarCodeBatchNo = DBUtility.ClsPub.isStrNull(ordrlist[j].HPinfanBarCode); //鏉$爜鎵规鍙凤紙澶忓疂鐢靛櫒锛�
                     HBarCodeDate = DBUtility.ClsPub.isStrNull(ordrlist[j].HSupNumber); //鏉$爜鏃ユ湡锛堝瀹濈數鍣級
+                    
+                    HPOInStockBillNo = DBUtility.ClsPub.isStrNull(ordrlist[j].HBillNo); // 鏀舵枡閫氱煡鍗曞彿 鍏磋揪鏉$爜
+                    HSupNumber = DBUtility.ClsPub.isStrNull(ordrlist[j].HSupNumber);// 渚涘簲鍟嗙紪鍙� 鍏磋揪鏉$爜
+
+                    HPOOrderBillNo = DBUtility.ClsPub.isStrNull(ordrlist[j].HBillNo); // 閲囪喘璁㈠崟鍙� 灏忓崼鐢靛櫒
                     //
                     sYear = ClsPub.isDate(sDate).Year.ToString().Substring(2, 2);
                     sPeriod = "0" + ClsPub.isDate(sDate).Month.ToString();
@@ -660,7 +979,7 @@
                             sTMNumber = HNumber + sYear + sPeriod + sDay;
                             Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                             //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                            LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                            LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         }
                         else if (CampanyName == "椋為緳")
                         {
@@ -677,7 +996,92 @@
                             sTMNumber = HWorksNumber + HNumber + sYear + sPeriod + sDay;
                             Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                             //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                            LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                            LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                        }
+                        else if (CampanyName == "鐟炰笌绁�") {
+                            var date = DateTime.Now.ToString("yyMMdd");//鏃ユ湡
+                            if (HSourceBillTypeName == "鏀舵枡閫氱煡鍗�")
+                            {
+                                //鐗╂枡浠g爜-鍖呰鏍囪瘑-鏃ユ湡-渚涘簲鍟嗕唬鐮�-鍏綅娴佹按鍙�
+                                LSHlen = 8;//娴佹按鍙锋槸8浣�
+
+                                DataSet dataDs = oCN.RunProcReturn($@"select  isnull(pr.FNUMBER,'') F_TEZV_BASE from  AIS20220308151944..T_PUR_Receive a 
+inner join AIS20220308151944..T_PUR_RECEIVEENTRY b on a.FID = b.FID 
+left join AIS20220308151944..T_BAS_PREBDONE pr on b.F_TEZV_BASE=pr.FID 
+where a.FID={ordrlist[j].HMainID} and b.FENTRYID={ordrlist[j].HSubID}", "T_PUR_Receive");
+                                if (dataDs.Tables[0].Rows.Count == 0)
+                                {
+                                    objJsonResult.code = "0";
+                                    objJsonResult.count = 0;
+                                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                                    return objJsonResult;
+                                }
+
+                                sTMNumber = ordrlist[j].HMaterNumber + "-" + dataDs.Tables[0].Rows[0]["F_TEZV_BASE"].ToString() + "-" + date + "-" + ordrlist[j].HSupNumber + "-";
+
+                                //sTMNumber = ordrlist[j].HMaterNumber + "-鍖呰鏍囪瘑-" + date + "-" + ordrlist[j].HSupNumber + "-";
+                                Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                                LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                            }
+                            else if (HSourceBillTypeName == "鐢熶骇鍏ュ簱鍗�")
+                            {
+                                //鐗╂枡浠g爜-鍖呰鏍囪瘑-鏃ユ湡-缁勭粐浠g爜-鍏綅娴佹按鍙�
+                                LSHlen = 8;//娴佹按鍙锋槸8浣�
+                                DataSet dataDs = oCN.RunProcReturn($@"select  isnull(pr.FNUMBER,'') F_bsv_Base1,a.FPRDORGID from  AIS20220308151944..T_PRD_INSTOCK a 
+inner join AIS20220308151944..T_PRD_INSTOCKENTRY b on a.FID = b.FID
+join(
+select HERPInterID, HERPEntryID, HInterID, HEntryID from Kf_ICStockBillSub
+)kf on b.FID = kf.HERPInterID and b.FENTRYID = kf.HERPEntryID
+left join AIS20220308151944..T_BAS_PREBDONE pr on b.F_bsv_Base1=pr.FID
+where kf.HInterID = {ordrlist[j].HMainID} and kf.HEntryID = {ordrlist[j].HSubID}", "T_PRD_INSTOCK");
+                                if (dataDs.Tables[0].Rows.Count == 0)
+                                {
+                                    objJsonResult.code = "0";
+                                    objJsonResult.count = 0;
+                                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒";
+                                    return objJsonResult;
+                                }
+                                string RQHNumber = "";
+                                if (dataDs.Tables[0].Rows[0]["FPRDORGID"].ToString() == "100014")//姹熻嫃
+                                {
+                                    RQHNumber = "1.07.008";
+                                }
+                                else if (dataDs.Tables[0].Rows[0]["FPRDORGID"].ToString() == "100012")//涓婃捣
+                                {
+                                    RQHNumber = "1.04.008";
+                                }
+
+                                sTMNumber = ordrlist[j].HMaterNumber + "-" + dataDs.Tables[0].Rows[0]["F_bsv_Base1"].ToString() + "-" + date + "-" + RQHNumber + "-";
+
+                                //sTMNumber = ordrlist[j].HMaterNumber + "-鍖呰鏍囪瘑-"+ date + "-缁勭粐浠g爜-";
+                                Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                                LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                            }
+                            else
+                            {
+                                sTMNumber = HOrgNumber + HNumber + sYear + sPeriod + sDay;
+                                Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                                LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                            }
+                        }
+                        else if (CampanyName.Contains("鍏磋揪"))
+                        {
+
+                            // 鍏磋揪鏉$爜
+                            //鏉$爜鍓嶇紑 = 鏀舵枡閫氱煡鍗曞彿 + 渚涘簲鍟嗙紪鐮� + 骞� + 鏈� + 鏃� + 3浣嶆祦姘村彿
+                            
+                            sTMNumber = HPOInStockBillNo + "@" + HSupNumber + "@" + sYear + sPeriod + sDay;
+                            Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                            LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                            LSHlen = 3; // 涓変綅娴佹按鍙�
+                        }
+                        else if (CampanyName.Contains("灏忓崼"))
+                        {
+                            // 灏忓崼鐢靛櫒
+                            // 鏉$爜鍓嶇紑 = 鍗曟嵁鍙� + 鐗╂枡缂栫爜 + 鎵规鍙�
+                            sTMNumber = HPOOrderBillNo + "@" + HMaterNumber + "@" + HBatchNo;
+                            Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                            LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         }
                         else  //閫氱敤鏂规硶
                         {
@@ -685,7 +1089,7 @@
                             sTMNumber = HOrgNumber + HNumber + sYear + sPeriod + sDay;
                             Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                             //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                            LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                            LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         }
                     }
                     else if (HSelectBarCodeType == "鍝佺鏉$爜")
@@ -709,7 +1113,7 @@
                         sTMNumber = HMaterNumber + sYear + sPeriod + sDay;
                         Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                                                                                                                     //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                        LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                        LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         LSHlen = 4;
                     }
                     else if (HSelectBarCodeType == "浠櫒鎴愬搧鏉$爜瑙勫垯") //鍙﹀澶勭悊浜�
@@ -726,7 +1130,7 @@
                         sTMNumber = HMaterNumber + HBatchNo;
                         Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                                                                                                                     //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                        LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                        LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         LSHlen = 6;
                     }
                     else if (HSelectBarCodeType == "鍐呴攢鏈烘潯鐮�")
@@ -736,7 +1140,7 @@
                         sTMNumber = "1" + HModelName + HBarCodeDate + HBarCodeBatchNo + HYasuoji + "00";
                         Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                                                                                                                     //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                        LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                        LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         LSHlen = 5;
                         if (sTMNumber.Length != 16)
                         {
@@ -753,7 +1157,7 @@
                         sTMNumber = HMaterNumber.Replace(".", "") + HBarCodeDate + HBarCodeBatchNo;
                         Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                                                                                                                     //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                        LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                        LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         LSHlen = 5;
                         if (sTMNumber.Length != 18)
                         {
@@ -769,13 +1173,17 @@
                         sTMNumber = HICMOBillNo;
                         Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                                                                                                                     //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
-                        LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
+                        LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
                         LSHlen = 5;
                     }
-                    //else if (cmbHBarCodeType.Text == "鎵樼洏鏉$爜")
-                    //{
-                    //    TM = HOrgNumber + HNumber + LSH2;
-                    //}
+                    else if (HSelectBarCodeType == "鎵樼洏鏉$爜")
+                    {
+                        LSHlen = 4;     //娴佹按鍙烽暱搴�
+                        //鏉$爜鍓嶇紑 = 鐗╂枡鍐呯爜 + 骞� + 鏈� + 鏃�
+                        sTMNumber = HNumber + sYear + sPeriod + sDay;
+                        Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                        LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                    }
                     else
                     {
                         objJsonResult.code = "0";
@@ -815,7 +1223,7 @@
                         {
                             LSH2 = "0" + LSH2;
                         }
-                        if (HSelectBarCodeType == "鍞竴鏉$爜")
+                        if (HSelectBarCodeType == "鍞竴鏉$爜" || HSelectBarCodeType == "鎵樼洏鏉$爜")
                         {
                             //鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
                             TM = sTMNumber + LSH2;
@@ -839,6 +1247,40 @@
                             return objJsonResult;
                         }
                         HBarCodeList barcode = new HBarCodeList();
+
+                        if (CampanyName == "娴疯瘹") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�
+                        {
+                            string sHMTONo = "";            //璁″垝璺熻釜鍙�
+                            string sHSourceBillNo = "";     //婧愬崟鍗曞彿
+                            string sHSourceBillSEQ = "";    //婧愬崟琛屽彿
+                            string sHSourceEntryID = "";    //婧愬崟瀛怚D
+                            string sSupNumber = "";         //渚涘簲鍟嗕唬鐮�
+                            string sHQty = "";              //鏁伴噺
+
+                            sHMTONo = DBUtility.ClsPub.isStrNull(ordrlist[j].HMTONo);
+                            sHSourceBillNo = DBUtility.ClsPub.isStrNull(ordrlist[j].HBillNo);
+                            sHSourceBillSEQ = DBUtility.ClsPub.isStrNull(ordrlist[j].HSourceBillSEQ);
+                            sHSourceEntryID = DBUtility.ClsPub.isStrNull(ordrlist[j].HSubID);
+                            sSupNumber = DBUtility.ClsPub.isStrNull(ordrlist[j].HSupNumber);
+                            sHQty = DBUtility.ClsPub.isStrNull(HMinQty);
+
+                            if (DBUtility.ClsPub.isStrNull(ordrlist[j].HBillType) == "1102") //婧愬崟锛氶噰璐鍗�
+                            {
+                                //鏉$爜瑙勫垯锛氶噰璐鍗曞崟鍙稝琛屽彿@鐗╂枡浠g爜@MTO@鏁伴噺@渚涘簲鍟嗕唬鐮�
+                                TM = sHSourceBillNo + "@" + sHSourceBillSEQ + "@" + HMaterNumber + "@" + sHMTONo + "@" + sHQty + "@" + sSupNumber;
+                            }
+                            else if (DBUtility.ClsPub.isStrNull(ordrlist[j].HBillType) == "1103") //婧愬崟锛氭敹鏂欓�氱煡鍗�
+                            {
+                                //鏉$爜瑙勫垯锛氭敹鏂欓�氱煡鍗曞彿@鍗曟嵁瀛愬唴鐮丂鐗╂枡浠g爜@MTO@鏁伴噺@渚涘簲鍟嗕唬鐮�
+                                TM = sHSourceBillNo + "@" + sHSourceEntryID + "@" + HMaterNumber + "@" + sHMTONo + "@" + sHQty + "@" + sSupNumber;
+                            }
+                            else
+                            {
+                                //鏉$爜瑙勫垯锛氱墿鏂欏唴鐮丂MTO@鎵规鍙稝鏁伴噺
+                                TM = HNumber + "@" + sHMTONo.Replace(" ","") + "@" + HBatchNo.Replace(" ","") + "@" + sHQty;
+                            }
+                        }
+
                         barcode.HBarCode2 = TM;
                         barcode.HEntryID2 = ClsPub.isStrNull(j + 1);
                         barcode.HMaterID2 = ordrlist[j].HMaterID;
@@ -895,6 +1337,18 @@
                         barcode.HInnerBillNo2 = ordrlist[j].HInnerBillNo;
                         barcode.HMaker2 = ordrlist[j].HMaker;
                         barcode.HGiveAwayFlag2 = ordrlist[j].HGiveAwayFlag;
+
+                        barcode.HCoilNO = ordrlist[j].HCoilNO;
+                        barcode.HFurnaceNO = ordrlist[j].HFurnaceNO;
+                        barcode.HFactory = ordrlist[j].HFactory;
+                        barcode.HAuxQty = ordrlist[j].HAuxQty;
+                        barcode.HheatNO = ordrlist[j].HheatNO;
+
+                        barcode.HGroupID2 = ordrlist[j].HGroupID;
+                        barcode.HEmpID2 = ordrlist[j].HEmpID;
+                        barcode.HCusModel2 = ordrlist[j].HCusModel;
+                        barcode.HCusMaterName2 = ordrlist[j].HCusMaterName;
+                        barcode.HCheckEmpName2 = ordrlist[j].HCheckEmpName;
                         ListRows.Add(barcode);
                         k = k + 1;
                         n = n + 1;
@@ -911,7 +1365,7 @@
             double HQty2 = 0;
             string HBatchNo2 = "";
             Int64 HSupID = 0;
-            Int64 HGroupID = 0;
+            Int64 HGroupID2 = 0;
             int HPrintQty = 0;
             Int64 HSourceInterID = 0;
             Int64 HSourceEntryID = 0;
@@ -935,6 +1389,19 @@
             string HInnerBillNo = "";
             bool HGiveAwayFlag = false;
             Int64 HEntryID = 0;
+
+            string HCoilNO2 = "";
+            string HFurnaceNO2 = "";
+            string HFactory2 = "";
+            decimal HAuxQty2 = 0;
+            string HheatNO2 = "";
+            DateTime HProduceDate;
+            DateTime HExpiryDate;
+            long HEmpID2 = 0;
+            string HCusModel2 = "";
+            string HCusMaterName2 = "";
+            string HCheckEmpName2 = "";
+
             try
             {
                 oCN.BeginTran();
@@ -949,6 +1416,10 @@
                         if (CampanyName == "鍗氭棩绉戞妧" || CampanyName == "澶忓疂鐢靛櫒")
                         {
                             HBarCodeType = "鍞竴鏉$爜";
+                        }
+                        if (CampanyName == "涔濊彵")
+                        {
+                            HBarCode = HBarCode + ClsPub.isStrNull(ListRows[i].HMTONo2);
                         }
                         //
                         HMaterID = ClsPub.isLong(ListRows[i].HMaterID2);
@@ -979,6 +1450,19 @@
                         HSeOrderBillNo = ClsPub.isStrNull(ListRows[i].HSeOrderBillNo2);
                         HInnerBillNo = ClsPub.isStrNull(ListRows[i].HInnerBillNo2);
                         HGiveAwayFlag = ClsPub.isBool(ListRows[i].HGiveAwayFlag2);
+
+                        HCoilNO2 = ClsPub.isStrNull(ListRows[i].HCoilNO);
+                        HFurnaceNO2 = ClsPub.isStrNull(ListRows[i].HFurnaceNO);
+                        HFactory2 = ClsPub.isStrNull(ListRows[i].HFactory);
+                        HAuxQty2 = ClsPub.isLong(ListRows[i].HAuxQty);
+                        HheatNO2 = ClsPub.isStrNull(ListRows[i].HheatNO);
+                        HProduceDate = ClsPub.isDate(ListRows[i].HProduceDate);
+                        HExpiryDate = ClsPub.isDate(ListRows[i].HExpiryDate);
+                        HGroupID2 = ClsPub.isInt(ListRows[i].HGroupID2);
+                        HEmpID2 = ClsPub.isLong(ListRows[i].HEmpID2);
+                        HCusModel2 = ClsPub.isStrNull(ListRows[i].HCusModel2);
+                        HCusMaterName2 = ClsPub.isStrNull(ListRows[i].HCusMaterName2);
+                        HCheckEmpName2 = ClsPub.isStrNull(ListRows[i].HCheckEmpName2);
                         oCN.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                                     ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                                     ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
@@ -986,16 +1470,18 @@
                                     ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
                                     ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID,HEntryID " +
                                     ",HGiveAwayFlag " +
-                                    ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo " +
+                                    ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo" +
+                                    ",HCoilNO,HFurnaceNO,HFactory,HAuxQty,HheatNO,HProduceDate,HExpiryDate,HEmpID,HCusModel,HCusMaterName,HCheckEmpName " +
                                     ") values ("
                                     + "'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HQty2.ToString()
-                                    + ",'" + HBatchNo2 + "'," + HSupID.ToString() + "," + HGroupID.ToString() + ",'" + ClsPub.CurUserName + "',getdate()," + HPrintQty.ToString() + "," + HQty2.ToString()
+                                    + ",'" + HBatchNo2 + "'," + HSupID.ToString() + "," + HGroupID2.ToString() + ",'" + ClsPub.CurUserName + "',getdate()," + HPrintQty.ToString() + "," + HQty2.ToString()
                                     + ", " + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HWei + "'"
                                     + ", " + HBarcodeQtys.ToString() + "," + HBarcodeNo.ToString() + "," + HDeptID.ToString() + "," + HWhID.ToString() + "," + HSPID.ToString() + ",'" + HRemark + "'"
                                     + ", " + HCusID.ToString() + ",'" + HCusType + "','" + HEndDate.ToShortDateString() + "','" + HWorkLineName + "','" + sDate + "'"
                                     + ", " + HOrgID.ToString() + "," + HOrgID.ToString() + ",'" + HSeOrderBillNo + "'," + HInterID.ToString() + "," + HEntryID.ToString() + ""
                                     + ", " + DBUtility.ClsPub.BoolToString(HGiveAwayFlag)
-                                    + ",'" + HMaterName + "','" + HMaterModel + "','" + HPinfan + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "','" + HInnerBillNo + "')");
+                                    + ",'" + HMaterName + "','" + HMaterModel + "','" + HPinfan + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "','" + HInnerBillNo + "'"
+                                    + ",'" + HCoilNO2 + "','" + HFurnaceNO2 + "','" + HFactory2 + "'," + HAuxQty2 + ",'" + HheatNO2 + "','" + HProduceDate + "','" + HExpiryDate + "'," + HEmpID2.ToString() + ",'" + HCusModel2 + "','" + HCusMaterName2 + "','" + HCheckEmpName2 + "'" + ")");
 
 
                         //HNumber = ClsPub.isStrNull(grdSub.Rows[i].Cells[HMaterID2Col].Value);
@@ -1030,6 +1516,23 @@
                 //澧炲姞 鏉$爜瓒呰繃鏈敓鎴愬姛鑳芥帶鍒�
 
                 //
+
+
+                //鏉$爜鐢熸垚鏃跺悓姝ョ敓鎴愭潯鐮佸嚭鍏ュ簱璁板綍
+                if (HSourceBillTypeName.Trim() == "鐢熶骇鍏ュ簱鍗�" || HSourceBillTypeName.Trim() == "閲囪喘鍏ュ簱鍗�"
+                    || HSourceBillTypeName.Trim() == "閿�鍞��璐у崟" || HSourceBillTypeName.Trim() == "鐢熶骇閫�鏂欏崟")
+                {
+                    if (!oWebs.set_BarCodeAutoWMS(HInterID, HSourceBillType, HOrgID, ref DBUtility.ClsPub.sExeReturnInfo))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        objJsonResult.list = null;
+                        return objJsonResult;
+                    }
+                }
+
                 oCN.Commit();
                 List<Object> listobj = ListRows.ConvertAll(s => (object)s);//List瀹炰綋绫昏浆鎹负object
                 //鑾峰彇鐢熸垚鐨勬潯鐮佷俊鎭�
@@ -1040,7 +1543,7 @@
                 {
                     objJsonResult.code = "1";
                     objJsonResult.count = 1;
-                    objJsonResult.Message = "鑾峰彇璧勬簮缁戝畾鏁版嵁鎴愬姛锛�";
+                    objJsonResult.Message = "[0000-1-037]鑾峰彇璧勬簮缁戝畾鏁版嵁鎴愬姛锛�";
                     objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[0], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //搴忓垪鍖朌ataSet涓殑鏃堕棿鏍煎紡锛岀劧鍚庡啀鍙嶅簭鍒楀寲鍥炴潵
                     objJsonResult.list = listobj;
                     return objJsonResult;
@@ -1049,7 +1552,7 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "娌℃湁杩斿洖浠讳綍缁撴灉,鏉$爜涓嶅瓨鍦紒";
+                    objJsonResult.Message = "[0000-2-020]娌℃湁杩斿洖浠讳綍缁撴灉,鏉$爜涓嶅瓨鍦紒";
                     objJsonResult.data = null;
                     objJsonResult.list = listobj;
                     return objJsonResult;
@@ -1060,12 +1563,1249 @@
                 oCN.RollBack();
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
-                objJsonResult.Message = "鏉$爜鐢熸垚澶辫触锛�" + e.Message;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触锛�" + e.Message;
                 return objJsonResult;
             }
         }
         #endregion
 
+        #region[鏉$爜鎵撳嵃鏇存柊鎵撳嵃娆℃暟]
+        /// <summary>
+        /// 鏇存柊鎵撳嵃娆℃暟
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <param name="msg2"></param>
+        /// <returns></returns>
+        [Route("Sc_BarCode/UpdateBarcodePrintQty")]
+        [HttpPost]
+        public object UpdateBarcodePrintQty(string msg)
+        {
+            try
+            {
+                oCN.RunProc("update Gy_BarCodeBill set HPrintQty=isnull(HPrintQty,0)+1 where HitemID in("+msg+")", ref DBUtility.ClsPub.sExeReturnInfo);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏇存柊鎵撳嵃娆℃暟鎴愬姛";
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵撳嵃澶辫触!鎵撳嵃缁撴潫 锛�" + e.ToString();
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鏉$爜杞瓨鏉$爜涓绘。
+        /// <summary>
+        /// 鏉$爜杞瓨鏉$爜涓绘。
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Sc_BarCode/SaveBarCode_NoGenerate")]
+        [HttpPost]
+        public object SaveBarCode_NoGenerate([FromBody] JObject msg)
+        {
+            try
+            {
+                var _value = msg["msg"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.None);
+                string msg2 = sArray[0].ToString();
+                string HOrgType = sArray[1].ToString();
+                string HSourceBillTypeName = sArray[2].ToString();
+                string HSelectBarCodeType = sArray[3].ToString();
+                string CampanyName = sArray[4].ToString() == "xxx" ? "" : sArray[4].ToString();
+                string UserName = sArray[5].ToString();
+                string barCodeNo = sArray[6].ToString();
+                string HFactory = sArray[7].ToString();
+                string HCoilNO = sArray[8].ToString();
+                string HFurnaceNO = sArray[9].ToString();
+                ClsPub.CurUserName = UserName;
+
+                //鑾峰彇鍐呯爜
+                HInterID = DBUtility.ClsPub.CreateBillID_Prod(ModName, ref DBUtility.ClsPub.sExeReturnInfo);
+                DAL.ClsGy_ORGANIZATIONS_View oClsGy_ORGANIZATIONS_View = new DAL.ClsGy_ORGANIZATIONS_View();
+                HOrgNumber = "";
+                if (oClsGy_ORGANIZATIONS_View.GetInfoByName(HOrgType))
+                {
+                    HOrgID = oClsGy_ORGANIZATIONS_View.omodel.HItemID;
+                    HOrgNumber = DBUtility.ClsPub.isStrNull(oClsGy_ORGANIZATIONS_View.omodel.HNumber);
+                }
+                if (HOrgID == -1)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "[0000-2-055]閫夋嫨缁勭粐鏈夐敊璇�!";
+                    return objJsonResult;
+                }
+                if (!Sub_AllowSave(msg2, HSelectBarCodeType))//鍗曟嵁瀹屾暣鎬у垽鏂�
+                {
+                    return objJsonResult;
+                }
+                if (HSelectBarCodeType == "浠櫒鎴愬搧鏉$爜瑙勫垯")
+                {
+                    //瀹㈡埛瀹氬埗
+                }
+                else
+                {
+                    string HBarCodeType = ClsPub.isStrNull(HSelectBarCodeType);
+                    // 鏉$爜杞瓨
+                    msg2 = msg2.Replace("\\", "");
+                    msg2 = msg2.Replace("\n", "");  //\n
+                    List<HSouceOrderList> ordrlist = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HSouceOrderList>>(msg2);
+                    // LogService.Write(ordrlist[0]);
+
+                    long HSourceInterID = string.IsNullOrEmpty(ordrlist[0].HMainID) == true ? 0 : ClsPub.isLong(ordrlist[0].HMainID);
+                    long HSourceEntryID = string.IsNullOrEmpty(ordrlist[0].HSubID) == true ? 0 : ClsPub.isLong(ordrlist[0].HSubID);
+                    DataSet ds1 = oCN.RunProcReturn("exec h_p_SC_BarCode_Transfer " + 
+                        "@HBarCodeNo = N'" + barCodeNo + "'" + 
+                        ",@HSubID = " + ordrlist[0].HSubID +
+                        ",@HMaterID = " + ordrlist[0].HMaterID + 
+                        ",@HGiveAwayFlag = " + ordrlist[0].HGiveAwayFlag +
+                        ",@HQty = " + ordrlist[0].HQty +
+                        ",@HUnitID = " + ordrlist[0].HUnitID +
+                        ",@HMinQty = " + ordrlist[0].HMinQty +
+                        ",@HSupID = " + ordrlist[0].HSupID +
+                        ",@HBatchNo = N'" + ordrlist[0].HBatchNo  + "'" +
+                        ",@HMTONO = N'" + ordrlist[0].HMTONo + "'" +
+                        ",@HBarCodeDate = N'" + ordrlist[0].HDate + "'" +
+                        ",@HEmpID = " + ordrlist[0].HEmpID  +
+                        ",@HSourceInterID = " + HSourceInterID + 
+                        ",@HSourceEntryID = " + HSourceEntryID +
+                        ",@HBarCodeType = N'" + HBarCodeType + "'" + 
+                        ",@HSourceBillNo = N'" + ordrlist[0].HSourceBillNo + "'" +
+                        ",@HMaker = N'" + ordrlist[0].HMaker + "'" +
+                        ",@HFactory = N'" + HFactory + "'" +
+                        ",@HCoilNO = N'" + HCoilNO + "'" +
+                        ",@HFurnaceNO = N'" + HFurnaceNO + "'" +
+                        ",@HInnerBillNo = N'" + ordrlist[0].HInnerBillNo + "'" + 
+                        ",@HSourceBillType = N'" + ordrlist[0].HBillType + "'" + 
+                        ",@HStockOrg = N'" + HOrgType + "'" + 
+                        ",@HInterID = N'" + ordrlist[0].HInterID + "'"
+                        , "h_p_SC_BarCode_Transfer");
+                    if((bool)ds1.Tables[0].Rows[0]["returntype"] == true)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = ds1.Tables[0].Rows[0]["mesg"].ToString();
+                    }
+                    else
+                    {
+                        throw new Exception(ds1.Tables[0].Rows[0]["mesg"].ToString());
+                    }
+                    
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+            return objJsonResult;
+        }
+        #endregion
+
+        #region 鏉$爜杞瓨鏉$爜涓绘。(鎵归噺)
+        /// <summary>
+        /// 鏉$爜杞瓨鏉$爜涓绘。(鎵归噺)
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Sc_BarCode/SaveBarCode_NoGenerate_Batch")]
+        [HttpPost]
+        public object SaveBarCode_NoGenerate_Batch([FromBody] JObject msg)
+        {
+            try
+            {
+                var _value = msg["msg"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.None);
+                string msg2 = sArray[0].ToString();
+                string HOrgType = sArray[1].ToString();
+                string HSourceBillTypeName = sArray[2].ToString();
+                string HSelectBarCodeType = sArray[3].ToString();
+                string CampanyName = sArray[4].ToString() == "xxx" ? "" : sArray[4].ToString();
+                string UserName = sArray[5].ToString();
+                string barCodeNoStrs = sArray[6].ToString(); // 杩欓噷鐨勬潯鐮佹槸涓庢彁浜ょ殑鍗曟嵁搴忓垪瀵瑰簲鐨勬潯鐮佹暟缁�
+                string HFactory = sArray[7].ToString();
+                string HCoilNO = sArray[8].ToString();
+                string HFurnaceNO = sArray[9].ToString();
+                ClsPub.CurUserName = UserName;
+
+                //鑾峰彇鍐呯爜
+                HInterID = DBUtility.ClsPub.CreateBillID_Prod(ModName, ref DBUtility.ClsPub.sExeReturnInfo);
+                DAL.ClsGy_ORGANIZATIONS_View oClsGy_ORGANIZATIONS_View = new DAL.ClsGy_ORGANIZATIONS_View();
+                HOrgNumber = "";
+                if (oClsGy_ORGANIZATIONS_View.GetInfoByName(HOrgType))
+                {
+                    HOrgID = oClsGy_ORGANIZATIONS_View.omodel.HItemID;
+                    HOrgNumber = DBUtility.ClsPub.isStrNull(oClsGy_ORGANIZATIONS_View.omodel.HNumber);
+                }
+                if (HOrgID == -1)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "[0000-2-055]閫夋嫨缁勭粐鏈夐敊璇�!";
+                    return objJsonResult;
+                }
+                if (!Sub_AllowSave(msg2, HSelectBarCodeType))//鍗曟嵁瀹屾暣鎬у垽鏂�
+                {
+                    return objJsonResult;
+                }
+                if (HSelectBarCodeType == "浠櫒鎴愬搧鏉$爜瑙勫垯")
+                {
+                    //瀹㈡埛瀹氬埗
+                }
+                else
+                {
+                    string HBarCodeType = ClsPub.isStrNull(HSelectBarCodeType);
+                    // 鏉$爜杞瓨
+                    msg2 = msg2.Replace("\\", "");
+                    msg2 = msg2.Replace("\n", "");  //\n
+                    List<HSouceOrderList> ordrlist = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HSouceOrderList>>(msg2);
+                    List<string> barcodeList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(barCodeNoStrs);
+                    // TODO 閫氳繃InterID 鍜� EntryID 浠庢潯鐮佹。妗堜腑鏌ヨ鏄惁鏈夊凡鐢熸垚鐨勫崟鎹� 閲嶆柊鍐欎竴涓瓨鍌ㄨ繃绋嬶紝褰撳凡瀛樺湪瀵瑰簲鐨勬潯鐮佸崟鎹椂锛岃繑鍥炴潯鐮佷富妗d腑鐨勬潯鐮佹。妗�
+                    DataSet dsCache = oCN.RunProcReturn($@"select * from h_v_IF_BarCodeBillList a 
+                                                    Inner Join Gy_BarCodeBill b on a.HItemID = b.HItemID
+                                                    where b.HSourceINterID = { ordrlist[0].HMainID } and b.HSourceEntryID = {ordrlist[0].HSubID}"
+                                                        , "h_v_IF_BarCodeBillList");
+                    if(dsCache.Tables[0].Rows.Count > 0)
+                    {
+                        objJsonResult.code = "2";
+                        objJsonResult.count = 1;
+                        objJsonResult.data = dsCache.Tables[0];
+                        objJsonResult.Message = "鏉$爜宸插瓨鍦�!";
+                        return objJsonResult;
+                    }
+                    DataSet ds1 = new DataSet();
+                    for(int i=0; i<ordrlist.Count; i++)
+                    {
+
+                        long HSourceInterID = string.IsNullOrEmpty(ordrlist[i].HMainID) == true ? 0 : ClsPub.isLong(ordrlist[0].HMainID);
+                        long HSourceEntryID = string.IsNullOrEmpty(ordrlist[i].HSubID) == true ? 0 : ClsPub.isLong(ordrlist[0].HSubID);
+
+                        ds1 = oCN.RunProcReturn("exec h_p_SC_BarCode_Transfer " +
+                        "@HBarCodeNo = N'" + barcodeList[i] + "'" +
+                        ",@HSubID = " + ordrlist[i].HSubID +
+                        ",@HMaterID = " + ordrlist[i].HMaterID +
+                        ",@HGiveAwayFlag = " + ordrlist[i].HGiveAwayFlag +
+                        ",@HQty = " + ordrlist[i].HQty +
+                        ",@HUnitID = " + ordrlist[i].HUnitID +
+                        ",@HMinQty = " + ordrlist[i].HMinQty +
+                        ",@HSupID = " + ordrlist[i].HSupID +
+                        ",@HBatchNo = N'" + ordrlist[i].HBatchNo + "'" +
+                        ",@HMTONO = N'" + ordrlist[i].HMTONo + "'" +
+                        ",@HBarCodeDate = N'" + ordrlist[i].HDate + "'" +
+                        ",@HEmpID = " + ordrlist[i].HEmpID +
+                        ",@HSourceInterID = " + HSourceInterID +
+                        ",@HSourceEntryID = " + HSourceEntryID +
+                        ",@HBarCodeType = N'" + HBarCodeType + "'" +
+                        ",@HSourceBillNo = N'" + ordrlist[i].HSourceBillNo + "'" +
+                        ",@HMaker = N'" + ordrlist[i].HMaker + "'" +
+                        ",@HFactory = N'" + HFactory + "'" +
+                        ",@HCoilNO = N'" + HCoilNO + "'" +
+                        ",@HFurnaceNO = N'" + HFurnaceNO + "'" +
+                        ",@HInnerBillNo = N'" + ordrlist[i].HInnerBillNo + "'" +
+                        ",@HSourceBillType = N'" + ordrlist[i].HBillType + "'" +
+                        ",@HStockOrg = N'" + HOrgType + "'" + 
+                        ",@HInterID = " + ordrlist[i].HInterID
+                        , "h_p_SC_BarCode_Transfer");
+                        if ((bool)ds1.Tables[0].Rows[0]["returntype"] == false)
+                        {
+                            throw new Exception(ds1.Tables[0].Rows[0]["mesg"].ToString());     
+                        }
+                    }
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = ds1.Tables[0].Rows[0]["mesg"].ToString();
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+            return objJsonResult;
+        }
+        #endregion
+
+        #region 鏇存柊鏉$爜瀵瑰簲鍑哄簱鐢宠鍗曞彿 鍏磋揪
+        public class BarCodeMeta
+        {
+            public string HBarCode { get; set; }
+            public string HBatchNo { get; set; }
+            public string HMaterModel  { get; set; }
+            public string HMaterName  { get; set; }
+            public float HQty  { get; set; }
+            public string HSCSPName { get; set; }
+            public string HSCWHName { get; set; }
+            public string HSPName { get; set; }
+            public float HTMQty { get; set; }
+            public string HUnitName { get; set; }
+            public string HWHName { get; set; }
+        }
+
+        [Route("Sc_BarCode/Set_BarCodeBill")]
+        [HttpPost]
+        public object Set_BarCodeBill([FromBody] JObject msg)
+        {
+
+            var _value = msg["msg"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.None);
+            string msg2 = sArray[0].ToString();
+            string HBillType = sArray[1].ToString();
+            string HBillNo = sArray[2].ToString();
+            string HOrgName = sArray[3].ToString();
+
+            List<BarCodeMeta> BarCodeMetaList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<BarCodeMeta>>(msg2);
+            oCN.BeginTran();
+            try
+            {
+                for(int i = 0; i < BarCodeMetaList.Count; i++)
+                {
+                    if (HBillType == "1205") // 閿�鍞嚭搴�
+                    {
+
+                        if (HOrgName.Contains("鍏磋揪") && !string.IsNullOrEmpty(HBillNo))
+                        {
+                            // 鍏磋揪 閿�鍞嚭搴撴洿鏂� 鍙戣揣閫氱煡鍗�
+                            oCN.RunProcReturn("Update Gy_BarCodeBill set " +
+                            "HSeOutStockBillNo='" + HBillNo + "' where HBarCode = '" + BarCodeMetaList[i].HBarCode + "'", "Gy_BarCodeBill");
+                        }
+                        
+                    }
+                }
+                
+                oCN.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "";
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇敼澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [鑾峰彇鏍囩鎵撳嵃鎸囦护 CPCL鎸囦护]
+        [Route("Sc_BarCode/Get_BarCodePrintCode_CPCL")]
+        [HttpGet]
+        public object Get_BarCodePrintCode_CPCL(string HOrginationName, string HBillSubType, int HInterID, int HItemID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("exec h_p_getHBarCodePrintCode_CPCL N'" + HOrginationName + "'" +
+                   ",N'" + HBillSubType + "'," + HInterID + "," + HItemID, "h_p_getHBarCodePrintCode_CPCL");
+                if((int)ds.Tables[0].Rows[0]["resultType"] == 1)
+                {
+                    string resultMesg = ds.Tables[0].Rows[0]["payload"].ToString().Replace("\\r\\n", "\r\n");
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = resultMesg;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎵撳嵃鎸囦护鑾峰彇澶辫触!" + ds.Tables[0].Rows[0]["payload"];
+                    return objJsonResult;
+                }
+            }
+            catch(Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵撳嵃鎸囦护鑾峰彇澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [APP 鑾峰彇鎵撳嵃妯℃澘]
+        public class PrintTemplate
+        {
+            public int Id { get; set; }
+            public string OrgShort { get; set; }
+            public string HBillSubtype { get; set; }
+            public string Format { get; set; }
+            public string Description { get; set; }
+            public string[] Placeholder { get; set; }
+        }
+
+        [Route("Sc_BarCode/Get_BarCodeGenTemplate")]
+        [HttpGet]
+        public object Get_BarCodeGenTemplate(string HOrginationName, string HBillSubType)
+        {
+            try
+            {
+
+                string filePath = HttpContext.Current.Server.MapPath("~/Template");
+                string fileFullPath = Path.Combine(filePath, "barCodeTemplateStorage.json");
+
+                if (!File.Exists(fileFullPath))
+                {
+
+                    throw new Exception($"妯℃澘鏂囦欢涓嶅瓨鍦細{fileFullPath}");
+                }
+
+                string jsonContent = File.ReadAllText(fileFullPath);
+                PrintTemplate[] templates = JsonConvert.DeserializeObject<PrintTemplate[]>(jsonContent);
+                PrintTemplate targetTemplate = templates.FirstOrDefault<PrintTemplate>(t => HOrginationName.Contains(t.OrgShort) && string.Equals(t.HBillSubtype, HBillSubType));
+                if (targetTemplate != null)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.data = JsonConvert.SerializeObject(targetTemplate);
+                    return objJsonResult;
+                }
+                else
+                {
+                    throw new Exception($"娌℃湁鎵惧埌瀵瑰簲鐨勬ā鏉�");
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鎵撳嵃妯℃澘鑾峰彇澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [鏉$爜鐢熸垚鎺ュ彛-杩﹀崡]
+        [Route("Sc_BarCode/Sub_SaveBill_JiaNan")]
+        [HttpPost]
+        public object Sub_SaveBill_JiaNan([FromBody] JObject msg)
+        {
+            try
+            {
+                var _value = msg["msg"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string msg2 = sArray[0].ToString();                                             //鐗╂枡璁板綍
+                string HOrgType = sArray[1].ToString();                                         //缁勭粐鍚嶇О
+                string HSourceBillTypeName = sArray[2].ToString();                              //婧愬崟绫诲瀷鍚嶇О
+                string HSelectBarCodeType = sArray[3].ToString();                               //鏉$爜绫诲瀷
+                string CampanyName = sArray[4].ToString() == "xxx" ? "" : sArray[4].ToString(); //鍔犲伐宸ュ巶鍚嶇О
+                string UserName = sArray[5].ToString();                                         //鐧诲綍璐﹀彿
+                ClsPub.CurUserName = UserName;
+
+                //鑾峰彇鍐呯爜
+                HInterID = DBUtility.ClsPub.CreateBillID_Prod(ModName, ref DBUtility.ClsPub.sExeReturnInfo);
+                DAL.ClsGy_ORGANIZATIONS_View oClsGy_ORGANIZATIONS_View = new DAL.ClsGy_ORGANIZATIONS_View();
+                HOrgNumber = "";
+                if (oClsGy_ORGANIZATIONS_View.GetInfoByName(HOrgType))
+                {
+                    HOrgID = oClsGy_ORGANIZATIONS_View.omodel.HItemID;
+                    HOrgNumber = DBUtility.ClsPub.isStrNull(oClsGy_ORGANIZATIONS_View.omodel.HNumber);
+                }
+                if (HOrgID == -1)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "[0000-2-055]閫夋嫨缁勭粐鏈夐敊璇�!";
+                    return objJsonResult;
+                }
+                if (!Sub_AllowSave(msg2, HSelectBarCodeType))//鍗曟嵁瀹屾暣鎬у垽鏂�
+                {
+                    return objJsonResult;
+                }
+
+                //鐢熸垚鏉$爜
+                SaveBarCode_JiaNan(msg2, HSelectBarCodeType, CampanyName, HSourceBillTypeName);
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+            return objJsonResult;
+        }
+        #endregion        
+
+        #region[鏉$爜鐢熸垚鏂规硶_杩﹀崡]
+        private object SaveBarCode_JiaNan(string msg2, string HSelectBarCodeType, string CampanyName, string HSourceBillTypeName)
+        {
+            DateTime sDate = DateTime.Now;                      //鏃ユ湡
+            string HSourceBillType_Temp = "";                   //婧愬崟绫诲瀷
+            int n = 0;                                          //鍚屾壒鐢熸垚鐨勬潯鐮佺储寮�
+
+            //鑾峰彇鏄庣粏淇℃伅
+            msg2 = msg2.Replace("\\", "");
+            msg2 = msg2.Replace("\n", "");  //\n
+            List<HSouceOrderList> ordrlist = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HSouceOrderList>>(msg2);
+            List<HBarCodeList> ListRows = new List<HBarCodeList>();
+
+            DataSet Ds;
+            for (int i = 0; i < ordrlist.Count; i++)
+            {
+                HSourceBillType_Temp = ordrlist[i].HBillType;
+
+                if (ClsPub.isLong(ordrlist[i].HMaterID) != 0)
+                {
+                    if (HSelectBarCodeType == "BarCode")
+                    {
+                        //鎷嗗垎姣忔潯鐗╂枡璁板綍涓哄鏉℃潯鐮佽褰�
+                        double HSumQty = ClsPub.isDoule(ordrlist[i].HQty);                      //浜у搧鏁伴噺
+                        double HQty = ClsPub.isDoule(ordrlist[i].HQty);                         //鏁伴噺
+                        double HMinQty = ClsPub.isDoule(ordrlist[i].HMinQty);                   //鏈�灏忓寘瑁呮暟
+                        int HBQty = ClsPub.isInt(ordrlist[i].HBQty);                            //绠辨暟
+                        string WeiShu = "";                                                     //灏炬暟
+
+                        for (int j = 0; j < HBQty; j++)
+                        {
+                            string HBarCode_Temp = "";                                                  //鏉$爜
+                            string sTMNumber = "";                                                      //鏉$爜鍓嶇紑
+                            string LSH = "";                                                            //鏈�澶ф祦姘村彿
+                            int HLen = 4;                                                            //娴佹按鍙烽暱搴�
+
+                            //鏉$爜鎷兼帴鎵�闇�瀛楁
+                            string HSupNumber = DBUtility.ClsPub.isStrNull(ordrlist[i].HSupNumber).Replace(".", "");             //渚涘簲鍟嗕唬鐮侊紙鍘绘帀鍒嗛殧绗︼級
+                            string sDateStr = sDate.ToString("yyMMdd");                                                         //鍚姩鏃ユ湡锛圷YMMDD锛�
+
+                            if (HSupNumber.Trim() == "")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "渚涘簲鍟嗕唬鐮佷笉鑳戒负绌猴紝涓嶈兘鐢熸垚鏉$爜锛�";
+                                return objJsonResult;
+                            }
+
+                            //鏉$爜鍓嶇紑 = R+渚涘簲鍟嗕唬鐮侊紙鍘绘帀鍒嗛殧绗︼級+鍚姩鏃ユ湡锛圷YMMDD锛�+鍥涗綅娴佹按鍙�
+                            sTMNumber = "R" + HSupNumber + sDateStr;
+
+                            //鏍规嵁鏉$爜鍓嶇紑鑾峰彇鏈�澶ф祦姘村彿
+                            Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");
+                            LSH = String.Format("{0:D" + HLen + "}", ClsPub.isInt(Ds.Tables[0].Rows[0][0]) + 1);
+
+                            //鎷兼帴鏉$爜
+                            HBarCode_Temp = sTMNumber + LSH;
+
+
+                            if (HSumQty - HMinQty > 0)
+                            {
+                                WeiShu = "";
+                                HSumQty = HSumQty - HMinQty;
+                            }
+                            else
+                            {
+                                if (HSumQty == HMinQty)
+                                {
+                                    WeiShu = "";
+                                }
+                                else
+                                {
+                                    WeiShu = "灏炬暟";
+                                }
+                                HMinQty = HSumQty;
+                            }
+
+                            HBarCodeList barcode = new HBarCodeList();
+                            barcode.HBarCode2 = HBarCode_Temp;
+                            barcode.HBarCodeType2 = "鍞竴鏉$爜";
+                            barcode.HBarCodeSubType2 = "鍖呮潯鐮�";
+                            barcode.HEntryID2 = ClsPub.isStrNull(i + 1);
+                            barcode.HMaterID2 = ordrlist[i].HMaterID;
+                            barcode.HMaterNumber2 = ordrlist[i].HMaterNumber;
+                            barcode.HMaterName2 = ordrlist[i].HMaterName;
+                            barcode.HMaterModel2 = ordrlist[i].HMaterModel;
+                            barcode.HPinfan2 = ordrlist[i].HPinfan;
+                            barcode.HPinfanBarCode2 = ordrlist[i].HPinfanBarCode;
+                            barcode.HAuxPropID2 = ordrlist[i].HAuxPropID;
+                            barcode.HAuxPropNumber2 = ordrlist[i].HAuxPropNumber;
+                            barcode.HAuxPropName2 = ordrlist[i].HAuxPropName;
+                            barcode.HUnitID2 = ordrlist[i].HUnitID;
+                            barcode.HUnitNumber2 = ordrlist[i].HUnitNumber;
+                            barcode.HUnitName2 = ordrlist[i].HUnitName;
+                            barcode.HQty2 = ClsPub.isStrNull(HMinQty);
+                            barcode.HBatchNo2 = ordrlist[i].HBatchNo;
+                            barcode.HSourceInterID2 = ordrlist[i].HMainID;
+                            barcode.HSourceEntryID2 = ordrlist[i].HSubID;
+                            barcode.HSourceBillNo2 = ordrlist[i].HBillNo;
+                            barcode.HSourceBillType2 = ordrlist[i].HBillType;
+                            barcode.HPrint = "0";
+                            barcode.HWei = WeiShu;
+                            barcode.HBarcodeNo = ClsPub.isStrNull(n + 1);
+                            barcode.HBarcodeQtys = ordrlist[i].HBQty;
+                            barcode.HSupID2 = ordrlist[i].HSupID;
+                            barcode.HSupNumber2 = ordrlist[i].HSupNumber;
+                            barcode.HSupName2 = ordrlist[i].HSupName;
+                            barcode.HDeptID2 = ordrlist[i].HDeptID;
+                            barcode.HDeptNumber2 = ordrlist[i].HDeptNumber;
+                            barcode.HDeptName2 = ordrlist[i].HDeptName;
+                            barcode.HRemark2 = ordrlist[i].HRemark;
+                            barcode.HDate2 = ordrlist[i].HDate;
+                            barcode.HShowDate2 = ordrlist[i].HShowDate;
+                            barcode.HWhID2 = ordrlist[i].HWhID;
+                            barcode.HWhNumber2 = ordrlist[i].HWhNumber;
+                            barcode.HWhName2 = ordrlist[i].HWhName;
+                            barcode.HSPID2 = ordrlist[i].HSPID;
+                            barcode.HSPNumber2 = ordrlist[i].HSPNumber;
+                            barcode.HSPName2 = ordrlist[i].HSPName;
+                            barcode.HMTONo2 = ordrlist[i].HMTONo;
+                            barcode.HCusID2 = ordrlist[i].HCusID;
+                            barcode.HCusNumber2 = ordrlist[i].HCusNumber;
+                            barcode.HCusName2 = ordrlist[i].HCusName;
+                            barcode.HCusType2 = ordrlist[i].HCusType;
+                            barcode.HSourceID2 = ordrlist[i].HSourceID;
+                            barcode.HSourceNumber2 = ordrlist[i].HSourceNumber;
+                            barcode.HSourceName2 = ordrlist[i].HSourceName;
+                            barcode.HEndDate2 = ordrlist[i].HEndDate;
+                            barcode.HSeOrderBillNo2 = ordrlist[i].HSeOrderBillNo;
+                            barcode.HInnerBillNo2 = ordrlist[i].HInnerBillNo;
+                            barcode.HMaker2 = ordrlist[i].HMaker;
+                            barcode.HGiveAwayFlag2 = ordrlist[i].HGiveAwayFlag;
+                            barcode.HCoilNO = ordrlist[i].HCoilNO;
+                            barcode.HFurnaceNO = ordrlist[i].HFurnaceNO;
+                            barcode.HFactory = ordrlist[i].HFactory;
+                            barcode.HAuxQty = ordrlist[i].HAuxQty;
+                            barcode.HheatNO = ordrlist[i].HheatNO;
+                            barcode.HGroupID2 = ordrlist[i].HGroupID;
+                            barcode.HEmpID2 = ordrlist[i].HEmpID;
+                            barcode.HCusModel2 = ordrlist[i].HCusModel;
+                            barcode.HCusMaterName2 = ordrlist[i].HCusMaterName;
+                            barcode.HCheckEmpName2 = ordrlist[i].HCheckEmpName;
+                            barcode.HZZRQ = ordrlist[i].HZZRQ;
+                            ListRows.Add(barcode);
+
+                            n += 1;                                                             //鏇存柊鍚屾壒鐢熸垚鐨勬潯鐮佹暟
+                            oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");           //鏇存柊鏈�澶ф祦姘村彿
+                        }
+                    }
+                    else if(HSelectBarCodeType == "BarCode_Box")
+                    {
+                        int HBQty = ClsPub.isInt(ordrlist[i].HBQty);                            //绠辨暟
+
+                        for (int j = 0; j < HBQty; j++)
+                        {
+                            string HBarCode_Temp = "";                                                  //鏉$爜
+                            string sTMNumber = "";                                                      //鏉$爜鍓嶇紑
+                            string LSH = "";                                                            //鏈�澶ф祦姘村彿
+                            int HLen = 4;                                                               //娴佹按鍙烽暱搴�
+
+                            //鏉$爜鎷兼帴鎵�闇�瀛楁
+                            string HSupNumber = DBUtility.ClsPub.isStrNull(ordrlist[i].HSupNumber).Replace(".", "");             //渚涘簲鍟嗕唬鐮侊紙鍘绘帀鍒嗛殧绗︼級
+                            string sDateStr = sDate.ToString("yyMMdd");                                                         //鍚姩鏃ユ湡锛圷YMMDD锛�
+
+                            if (HSupNumber.Trim() == "")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "渚涘簲鍟嗕唬鐮佷笉鑳戒负绌猴紝涓嶈兘鐢熸垚鏉$爜锛�";
+                                return objJsonResult;
+                            }
+
+                            //鏉$爜鍓嶇紑 = R+渚涘簲鍟嗕唬鐮侊紙鍘绘帀鍒嗛殧绗︼級+鍚姩鏃ユ湡锛圷YMMDD锛�+鍥涗綅娴佹按鍙�
+                            sTMNumber = "B" + HSupNumber + sDateStr;
+
+                            //鏍规嵁鏉$爜鍓嶇紑鑾峰彇鏈�澶ф祦姘村彿
+                            Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");
+                            LSH = String.Format("{0:D" + HLen + "}", ClsPub.isInt(Ds.Tables[0].Rows[0][0]) + 1);
+
+                            //鎷兼帴鏉$爜
+                            HBarCode_Temp = sTMNumber + LSH;
+
+                            HBarCodeList barcode = new HBarCodeList();
+                            barcode.HBarCode2 = HBarCode_Temp;
+                            barcode.HBarCodeType2 = "鎵樼洏鏉$爜";
+                            barcode.HBarCodeSubType2 = "绠辨潯鐮�";
+                            barcode.HEntryID2 = ClsPub.isStrNull(i + 1);
+                            barcode.HMaterID2 = ordrlist[i].HMaterID;
+                            barcode.HMaterNumber2 = ordrlist[i].HMaterNumber;
+                            barcode.HMaterName2 = ordrlist[i].HMaterName;
+                            barcode.HMaterModel2 = ordrlist[i].HMaterModel;
+                            barcode.HPinfan2 = ordrlist[i].HPinfan;
+                            barcode.HPinfanBarCode2 = ordrlist[i].HPinfanBarCode;
+                            barcode.HAuxPropID2 = ordrlist[i].HAuxPropID;
+                            barcode.HAuxPropNumber2 = ordrlist[i].HAuxPropNumber;
+                            barcode.HAuxPropName2 = ordrlist[i].HAuxPropName;
+                            barcode.HUnitID2 = ordrlist[i].HUnitID;
+                            barcode.HUnitNumber2 = ordrlist[i].HUnitNumber;
+                            barcode.HUnitName2 = ordrlist[i].HUnitName;
+                            barcode.HQty2 = ClsPub.isStrNull(0);
+                            barcode.HBatchNo2 = ordrlist[i].HBatchNo;
+                            barcode.HSourceInterID2 = ordrlist[i].HMainID;
+                            barcode.HSourceEntryID2 = ordrlist[i].HSubID;
+                            barcode.HSourceBillNo2 = ordrlist[i].HBillNo;
+                            barcode.HSourceBillType2 = ordrlist[i].HBillType;
+                            barcode.HPrint = "0";
+                            barcode.HWei = "";
+                            barcode.HBarcodeNo = ClsPub.isStrNull(n + 1);
+                            barcode.HBarcodeQtys = ordrlist[i].HBQty;
+                            barcode.HSupID2 = ordrlist[i].HSupID;
+                            barcode.HSupNumber2 = ordrlist[i].HSupNumber;
+                            barcode.HSupName2 = ordrlist[i].HSupName;
+                            barcode.HDeptID2 = ordrlist[i].HDeptID;
+                            barcode.HDeptNumber2 = ordrlist[i].HDeptNumber;
+                            barcode.HDeptName2 = ordrlist[i].HDeptName;
+                            barcode.HRemark2 = ordrlist[i].HRemark;
+                            barcode.HDate2 = ordrlist[i].HDate;
+                            barcode.HShowDate2 = ordrlist[i].HShowDate;
+                            barcode.HWhID2 = ordrlist[i].HWhID;
+                            barcode.HWhNumber2 = ordrlist[i].HWhNumber;
+                            barcode.HWhName2 = ordrlist[i].HWhName;
+                            barcode.HSPID2 = ordrlist[i].HSPID;
+                            barcode.HSPNumber2 = ordrlist[i].HSPNumber;
+                            barcode.HSPName2 = ordrlist[i].HSPName;
+                            barcode.HMTONo2 = ordrlist[i].HMTONo;
+                            barcode.HCusID2 = ordrlist[i].HCusID;
+                            barcode.HCusNumber2 = ordrlist[i].HCusNumber;
+                            barcode.HCusName2 = ordrlist[i].HCusName;
+                            barcode.HCusType2 = ordrlist[i].HCusType;
+                            barcode.HSourceID2 = ordrlist[i].HSourceID;
+                            barcode.HSourceNumber2 = ordrlist[i].HSourceNumber;
+                            barcode.HSourceName2 = ordrlist[i].HSourceName;
+                            barcode.HEndDate2 = ordrlist[i].HEndDate;
+                            barcode.HSeOrderBillNo2 = ordrlist[i].HSeOrderBillNo;
+                            barcode.HInnerBillNo2 = ordrlist[i].HInnerBillNo;
+                            barcode.HMaker2 = ordrlist[i].HMaker;
+                            barcode.HGiveAwayFlag2 = ordrlist[i].HGiveAwayFlag;
+                            barcode.HCoilNO = ordrlist[i].HCoilNO;
+                            barcode.HFurnaceNO = ordrlist[i].HFurnaceNO;
+                            barcode.HFactory = ordrlist[i].HFactory;
+                            barcode.HAuxQty = ordrlist[i].HAuxQty;
+                            barcode.HheatNO = ordrlist[i].HheatNO;
+                            barcode.HGroupID2 = ordrlist[i].HGroupID;
+                            barcode.HEmpID2 = ordrlist[i].HEmpID;
+                            barcode.HCusModel2 = ordrlist[i].HCusModel;
+                            barcode.HCusMaterName2 = ordrlist[i].HCusMaterName;
+                            barcode.HCheckEmpName2 = ordrlist[i].HCheckEmpName;
+                            barcode.HZZRQ = ordrlist[i].HZZRQ;
+                            ListRows.Add(barcode);
+
+                            n += 1;                                                             //鏇存柊鍚屾壒鐢熸垚鐨勬潯鐮佹暟
+                            oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");           //鏇存柊鏈�澶ф祦姘村彿
+                        }
+                    }
+                    else if (HSelectBarCodeType == "BarCode_Pack")
+                    {
+                        int HBQty = ClsPub.isInt(ordrlist[i].HBQty);                            //绠辨暟
+
+                        for (int j = 0; j < HBQty; j++)
+                        {
+                            string HBarCode_Temp = "";                                                  //鏉$爜
+                            string sTMNumber = "";                                                      //鏉$爜鍓嶇紑
+                            string LSH = "";                                                            //鏈�澶ф祦姘村彿
+                            int HLen = 4;                                                               //娴佹按鍙烽暱搴�
+
+                            //鏉$爜鎷兼帴鎵�闇�瀛楁
+                            string HSupNumber = DBUtility.ClsPub.isStrNull(ordrlist[i].HSupNumber).Replace(".", "");             //渚涘簲鍟嗕唬鐮侊紙鍘绘帀鍒嗛殧绗︼級
+                            string sDateStr = sDate.ToString("yyMMdd");                                                         //鍚姩鏃ユ湡锛圷YMMDD锛�
+
+                            if (HSupNumber.Trim() == "")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "渚涘簲鍟嗕唬鐮佷笉鑳戒负绌猴紝涓嶈兘鐢熸垚鏉$爜锛�";
+                                return objJsonResult;
+                            }
+
+                            //鏉$爜鍓嶇紑 = R+渚涘簲鍟嗕唬鐮侊紙鍘绘帀鍒嗛殧绗︼級+鍚姩鏃ユ湡锛圷YMMDD锛�+鍥涗綅娴佹按鍙�
+                            sTMNumber = "P" + HSupNumber + sDateStr;
+
+                            //鏍规嵁鏉$爜鍓嶇紑鑾峰彇鏈�澶ф祦姘村彿
+                            Ds = oCN.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");
+                            LSH = String.Format("{0:D" + HLen + "}", ClsPub.isInt(Ds.Tables[0].Rows[0][0]) + 1);
+
+                            //鎷兼帴鏉$爜
+                            HBarCode_Temp = sTMNumber + LSH;
+
+                            HBarCodeList barcode = new HBarCodeList();
+                            barcode.HBarCode2 = HBarCode_Temp;
+                            barcode.HBarCodeType2 = "鎵樼洏鏉$爜";
+                            barcode.HBarCodeSubType2 = "鎵樻潯鐮�";
+                            barcode.HEntryID2 = ClsPub.isStrNull(i + 1);
+                            barcode.HMaterID2 = ordrlist[i].HMaterID;
+                            barcode.HMaterNumber2 = ordrlist[i].HMaterNumber;
+                            barcode.HMaterName2 = ordrlist[i].HMaterName;
+                            barcode.HMaterModel2 = ordrlist[i].HMaterModel;
+                            barcode.HPinfan2 = ordrlist[i].HPinfan;
+                            barcode.HPinfanBarCode2 = ordrlist[i].HPinfanBarCode;
+                            barcode.HAuxPropID2 = ordrlist[i].HAuxPropID;
+                            barcode.HAuxPropNumber2 = ordrlist[i].HAuxPropNumber;
+                            barcode.HAuxPropName2 = ordrlist[i].HAuxPropName;
+                            barcode.HUnitID2 = ordrlist[i].HUnitID;
+                            barcode.HUnitNumber2 = ordrlist[i].HUnitNumber;
+                            barcode.HUnitName2 = ordrlist[i].HUnitName;
+                            barcode.HQty2 = ClsPub.isStrNull(0);
+                            barcode.HBatchNo2 = ordrlist[i].HBatchNo;
+                            barcode.HSourceInterID2 = ordrlist[i].HMainID;
+                            barcode.HSourceEntryID2 = ordrlist[i].HSubID;
+                            barcode.HSourceBillNo2 = ordrlist[i].HBillNo;
+                            barcode.HSourceBillType2 = ordrlist[i].HBillType;
+                            barcode.HPrint = "0";
+                            barcode.HWei = "";
+                            barcode.HBarcodeNo = ClsPub.isStrNull(n + 1);
+                            barcode.HBarcodeQtys = ordrlist[i].HBQty;
+                            barcode.HSupID2 = ordrlist[i].HSupID;
+                            barcode.HSupNumber2 = ordrlist[i].HSupNumber;
+                            barcode.HSupName2 = ordrlist[i].HSupName;
+                            barcode.HDeptID2 = ordrlist[i].HDeptID;
+                            barcode.HDeptNumber2 = ordrlist[i].HDeptNumber;
+                            barcode.HDeptName2 = ordrlist[i].HDeptName;
+                            barcode.HRemark2 = ordrlist[i].HRemark;
+                            barcode.HDate2 = ordrlist[i].HDate;
+                            barcode.HShowDate2 = ordrlist[i].HShowDate;
+                            barcode.HWhID2 = ordrlist[i].HWhID;
+                            barcode.HWhNumber2 = ordrlist[i].HWhNumber;
+                            barcode.HWhName2 = ordrlist[i].HWhName;
+                            barcode.HSPID2 = ordrlist[i].HSPID;
+                            barcode.HSPNumber2 = ordrlist[i].HSPNumber;
+                            barcode.HSPName2 = ordrlist[i].HSPName;
+                            barcode.HMTONo2 = ordrlist[i].HMTONo;
+                            barcode.HCusID2 = ordrlist[i].HCusID;
+                            barcode.HCusNumber2 = ordrlist[i].HCusNumber;
+                            barcode.HCusName2 = ordrlist[i].HCusName;
+                            barcode.HCusType2 = ordrlist[i].HCusType;
+                            barcode.HSourceID2 = ordrlist[i].HSourceID;
+                            barcode.HSourceNumber2 = ordrlist[i].HSourceNumber;
+                            barcode.HSourceName2 = ordrlist[i].HSourceName;
+                            barcode.HEndDate2 = ordrlist[i].HEndDate;
+                            barcode.HSeOrderBillNo2 = ordrlist[i].HSeOrderBillNo;
+                            barcode.HInnerBillNo2 = ordrlist[i].HInnerBillNo;
+                            barcode.HMaker2 = ordrlist[i].HMaker;
+                            barcode.HGiveAwayFlag2 = ordrlist[i].HGiveAwayFlag;
+                            barcode.HCoilNO = ordrlist[i].HCoilNO;
+                            barcode.HFurnaceNO = ordrlist[i].HFurnaceNO;
+                            barcode.HFactory = ordrlist[i].HFactory;
+                            barcode.HAuxQty = ordrlist[i].HAuxQty;
+                            barcode.HheatNO = ordrlist[i].HheatNO;
+                            barcode.HGroupID2 = ordrlist[i].HGroupID;
+                            barcode.HEmpID2 = ordrlist[i].HEmpID;
+                            barcode.HCusModel2 = ordrlist[i].HCusModel;
+                            barcode.HCusMaterName2 = ordrlist[i].HCusMaterName;
+                            barcode.HCheckEmpName2 = ordrlist[i].HCheckEmpName;
+                            barcode.HZZRQ = ordrlist[i].HZZRQ;
+                            ListRows.Add(barcode);
+
+                            n += 1;                                                             //鏇存柊鍚屾壒鐢熸垚鐨勬潯鐮佹暟
+                            oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");           //鏇存柊鏈�澶ф祦姘村彿
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "閿欒鐨勬潯鐮佺被鍨嬶紝涓嶈兘鐢熸垚鏉$爜锛�";
+                        return objJsonResult;
+                    }
+                }
+            }
+
+
+            try
+            {
+                oCN.BeginTran();
+                for (int i = 0; i < ListRows.Count; i++)
+                {
+                    if (ClsPub.isLong(ListRows[i].HMaterID2) != 0)
+                    {
+                        string HBarCode = ClsPub.isStrNull(ListRows[i].HBarCode2);
+                        string HBarCodeType = ClsPub.isStrNull(ListRows[i].HBarCodeType2);
+                        string HBarCodeSubType = ClsPub.isStrNull(ListRows[i].HBarCodeSubType2);
+                        Int64 HMaterID = ClsPub.isLong(ListRows[i].HMaterID2);
+                        Int64 HEntryID = ClsPub.isLong(ListRows[i].HEntryID2);
+                        Int64 HAuxPropID = ClsPub.isLong(ListRows[i].HAuxPropID2);
+                        Int64 HUnitID = ClsPub.isLong(ListRows[i].HUnitID2);
+                        double HQty2 = ClsPub.isDoule(ListRows[i].HQty2);
+                        string HWei = ClsPub.isStrNull(ListRows[i].HWei);
+                        string HBatchNo2 = ClsPub.isStrNull(ListRows[i].HBatchNo2);
+                        Int64 HSourceInterID = ClsPub.isLong(ListRows[i].HSourceInterID2);
+                        Int64 HSourceEntryID = ClsPub.isLong(ListRows[i].HSourceEntryID2);
+                        string HSourceBillNo = ClsPub.isStrNull(ListRows[i].HSourceBillNo2);
+                        string HSourceBillType = ClsPub.isStrNull(ListRows[i].HSourceBillType2);
+                        Int64 HBarcodeQtys = ClsPub.isLong(ListRows[i].HBarcodeQtys);
+                        Int64 HBarcodeNo = ClsPub.isLong(ListRows[i].HBarcodeNo);
+                        Int64 HSupID = ClsPub.isLong(ListRows[i].HSupID2);
+                        Int64 HDeptID = ClsPub.isLong(ListRows[i].HDeptID2);
+                        Int64 HWhID = ClsPub.isLong(ListRows[i].HWhID2);
+                        Int64 HSPID = ClsPub.isLong(ListRows[i].HSPID2);
+                        string HRemark = ClsPub.isStrNull(ListRows[i].HRemark2);
+                        string HMaterName = ClsPub.isStrNull(ListRows[i].HMaterName2);
+                        string HMaterModel = ClsPub.isStrNull(ListRows[i].HMaterModel2);
+                        string HPinfan = ClsPub.isStrNull(ListRows[i].HPinfan2);
+                        string HMTONo = ClsPub.isStrNull(ListRows[i].HMTONo2);
+                        Int64 HCusID = ClsPub.isLong(ListRows[i].HCusID2);
+                        string HCusType = ClsPub.isStrNull(ListRows[i].HCusType2);
+                        DateTime HEndDate = ClsPub.isDate(ListRows[i].HEndDate2);
+                        string HWorkLineName = ClsPub.isStrNull(ListRows[i].HSourceName2);
+                        string HSeOrderBillNo = ClsPub.isStrNull(ListRows[i].HSeOrderBillNo2);
+                        string HInnerBillNo = ClsPub.isStrNull(ListRows[i].HInnerBillNo2);
+                        bool HGiveAwayFlag = ClsPub.isBool(ListRows[i].HGiveAwayFlag2);
+                        int HPrintQty = ClsPub.isInt(ListRows[i].HPrint);
+
+                        string HCoilNO2 = ClsPub.isStrNull(ListRows[i].HCoilNO);
+                        string HFurnaceNO2 = ClsPub.isStrNull(ListRows[i].HFurnaceNO);
+                        string HFactory2 = ClsPub.isStrNull(ListRows[i].HFactory);
+                        Int64 HAuxQty2 = ClsPub.isLong(ListRows[i].HAuxQty);
+                        string HheatNO2 = ClsPub.isStrNull(ListRows[i].HheatNO);
+                        DateTime HProduceDate = ClsPub.isDate(ListRows[i].HProduceDate);
+                        DateTime HExpiryDate = ClsPub.isDate(ListRows[i].HExpiryDate);
+                        int HGroupID2 = ClsPub.isInt(ListRows[i].HGroupID2);
+                        Int64 HEmpID2 = ClsPub.isLong(ListRows[i].HEmpID2);
+                        string HCusModel2 = ClsPub.isStrNull(ListRows[i].HCusModel2);
+                        string HCusMaterName2 = ClsPub.isStrNull(ListRows[i].HCusMaterName2);
+                        string HCheckEmpName2 = ClsPub.isStrNull(ListRows[i].HCheckEmpName2);
+                        string HZZRQ = ClsPub.isStrNull(ListRows[i].HZZRQ);
+                        oCN.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HBarCodeSubType,HMaterID,HUnitID,HQty" +
+                                    ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
+                                    ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
+                                    ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
+                                    ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
+                                    ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID,HEntryID " +
+                                    ",HGiveAwayFlag " +
+                                    ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo" +
+                                    ",HCoilNO,HFurnaceNO,HFactory,HAuxQty,HheatNO,HProduceDate,HExpiryDate,HEmpID,HCusModel,HCusMaterName,HCheckEmpName,HZZRQ " +
+                                    ") values ("
+                                    + "'" + HBarCode + "','" + HBarCodeType + "','" + HBarCodeSubType + "'," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HQty2.ToString()
+                                    + ",'" + HBatchNo2 + "'," + HSupID.ToString() + "," + HGroupID2.ToString() + ",'" + ClsPub.CurUserName + "',getdate()," + HPrintQty.ToString() + "," + HQty2.ToString()
+                                    + ", " + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HWei + "'"
+                                    + ", " + HBarcodeQtys.ToString() + "," + HBarcodeNo.ToString() + "," + HDeptID.ToString() + "," + HWhID.ToString() + "," + HSPID.ToString() + ",'" + HRemark + "'"
+                                    + ", " + HCusID.ToString() + ",'" + HCusType + "','" + HEndDate.ToShortDateString() + "','" + HWorkLineName + "','" + sDate + "'"
+                                    + ", " + HOrgID.ToString() + "," + HOrgID.ToString() + ",'" + HSeOrderBillNo + "'," + HInterID.ToString() + "," + HEntryID.ToString() + ""
+                                    + ", " + DBUtility.ClsPub.BoolToString(HGiveAwayFlag)
+                                    + ",'" + HMaterName + "','" + HMaterModel + "','" + HPinfan + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "','" + HInnerBillNo + "'"
+                                    + ",'" + HCoilNO2 + "','" + HFurnaceNO2 + "','" + HFactory2 + "'," + HAuxQty2 + ",'" + HheatNO2 + "','" + HProduceDate + "','" + HExpiryDate + "'," + HEmpID2.ToString() + ",'" + HCusModel2 + "','" + HCusMaterName2 + "','" + HCheckEmpName2 + "','" + HZZRQ + "'" + ")");
+
+                    }
+                }
+                //澧炲姞 鏉$爜瓒呰繃鏈敓鎴愬姛鑳芥帶鍒�
+
+                //
+                //鑷姩瑁呯
+                string sql_autoForBoxBill = "exec h_v_Gy_BarCode_AutoProductBarCodeBox " + HInterID.ToString();
+                oCN.RunProc(sql_autoForBoxBill);
+
+                oCN.Commit();
+                List<Object> listobj = ListRows.ConvertAll(s => (object)s);//List瀹炰綋绫昏浆鎹负object
+                //鑾峰彇鐢熸垚鐨勬潯鐮佷俊鎭�
+                string sql = string.Format(@"select * from h_v_IF_BarCodeBillList Where HinterID=" + HInterID.ToString() + " order by HItemID");
+                ds = new SQLHelper.ClsCN().RunProcReturn(sql, "h_v_IF_ICMOBillList_Table");
+
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "[0000-1-037]鑾峰彇璧勬簮缁戝畾鏁版嵁鎴愬姛锛�";
+                    objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[0], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //搴忓垪鍖朌ataSet涓殑鏃堕棿鏍煎紡锛岀劧鍚庡啀鍙嶅簭鍒楀寲鍥炴潵
+                    objJsonResult.list = listobj;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "[0000-2-020]娌℃湁杩斿洖浠讳綍缁撴灉,鏉$爜涓嶅瓨鍦紒";
+                    objJsonResult.data = null;
+                    objJsonResult.list = listobj;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触锛�" + e.Message;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [app 鏉$爜鎷嗙爜鑾峰彇瀛愭潯鐮乚
+        [Route("Sc_BarCode/SplitBarCode_Sub")]
+        [HttpGet]
+        public object SplitBarCode_Sub(string HBarCodeNo)
+        {
+            try
+            {
+                if (string.IsNullOrWhiteSpace(HBarCodeNo))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "璇疯緭鍏ユ潯鐮佺紪鍙�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                // 鍘荤┖鏍�
+                string cleanBarCode = HBarCodeNo.Trim();
+                string prefix = cleanBarCode + "-"; // 鐢ㄤ簬鏌ュ瓙鐮�
+
+                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+                // 1. 鍏堟煡鐩存帴瀛愮爜锛堜竴绾у瓙鐮侊細xxx-1, xxx-2, ...锛�
+                string sqlSub = @"SELECT * FROM h_v_Gy_SplitBarCode WITH(NOLOCK) WHERE HBarCode LIKE '" + prefix + @"%' 
+                AND HBarCode NOT LIKE '" + prefix + @"%-%'
+                AND ISNUMERIC(RIGHT(HBarCode, LEN(HBarCode) - LEN('" + prefix + @"'))) = 1
+                AND TRY_CAST(RIGHT(HBarCode, LEN(HBarCode) - LEN('" + prefix + @"')) AS INT) IS NOT NULL";
+
+                DataSet ds = oCn.RunProcReturn(sqlSub, "Gy_BarCodeBill");
+
+                // 2. 濡傛灉鏈夊瓙鐮� 鈫� 杩斿洖瀛愮爜 + 涓嬩竴涓紪鍙�
+                if (ds != null && ds.Tables[0].Rows.Count > 0)
+                {
+                    int maxSuffix = 0;
+                    foreach (DataRow row in ds.Tables[0].Rows)
+                    {
+                        string barCode = row["HBarCode"].ToString();
+                        string suffix = barCode.Substring(prefix.Length);
+                        if (int.TryParse(suffix, out int num) && num > maxSuffix)
+                            maxSuffix = num;
+                    }
+
+                    string nextBarCode = $"{cleanBarCode}-{maxSuffix + 1}";
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = ds.Tables[0].Rows.Count;
+                    objJsonResult.Message = "鏌ヨ鎴愬姛锛岃繑鍥炵洿鎺ュ瓙鐮�";
+                    objJsonResult.data = new
+                    {
+                        SubBarCodes = ds.Tables[0],
+                        NextBarCode = nextBarCode
+                    };
+                }
+                else
+                {
+                    // 3. 娌℃湁瀛愮爜 鈫� 鏌ヨ嚜宸�
+                    string sqlSelf = @"SELECT * FROM h_v_Gy_SplitBarCode WITH(NOLOCK)  WHERE HBarCode = '" + cleanBarCode.Replace("'", "''") + "'";
+
+                    DataSet dsSelf = oCn.RunProcReturn(sqlSelf, "Gy_BarCodeBill");
+
+                    if (dsSelf != null && dsSelf.Tables[0].Rows.Count > 0)
+                    {
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "璇ユ潯鐮佹棤瀛愮爜锛岃繑鍥炶嚜韬�";
+                        objJsonResult.data = new
+                        {
+                            SubBarCodes = dsSelf.Tables[0],
+                            NextBarCode = $"{cleanBarCode}-1"  // 寤鸿浠� -1 寮�濮�
+                        };
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏉$爜涓嶅瓨鍦紝璇锋鏌�";
+                        objJsonResult.data = null;
+                    }
+                }
+
+                return objJsonResult;
+            }
+            catch (Exception ex)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "寮傚父锛�" + ex.Message;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [app鏉$爜鎷嗙爜鐢熸垚]
+        [Route("Sc_BarCode/SplitBarCode_Save")]
+        [HttpPost]
+        public object SplitBarCode_Save([FromBody] JObject msg)
+        {
+            try
+            {
+                ListModels oListModels = new ListModels();
+                DAL.ClsGy_BarCodeBill_ChaiMa BillNew = new DAL.ClsGy_BarCodeBill_ChaiMa();
+                var _value = msg["msg"].ToString();
+                string msg1 = _value.ToString();
+
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string barcode = sArray[0].ToString(); //鏉$爜缂栧彿
+                Double splitnum = Convert.ToDouble(sArray[1]); //鎷嗙爜鏁伴噺
+                string data = sArray[2].ToString(); //琛ㄤ綋鏁版嵁
+                string user = sArray[3].ToString(); //鐢ㄦ埛鍚�
+
+                data = data.Replace("\\", "");
+                data = data.Replace("\n", "");  //\n
+
+                List<Model.ClsGy_BarCodeEdit_Model> lsmain = new List<Model.ClsGy_BarCodeEdit_Model>();
+                lsmain = oListModels.getObjectByJson_Gy_SplitBarCode(data);
+
+                oCN.BeginTran();
+
+                ds = oCN.RunProcReturn("select top 1 * from Gy_BarCodeBill where HBarCode='" + barcode + "'", "Gy_BarCodeBill");
+              
+                if (ds != null || ds.Tables[0].Rows.Count > 0)
+                {
+
+                    string sql = "insert into Gy_BarCodeBill (HInterID, HEntryID, HBarCode, HBarCodeType, HBarCodeSubType, HMaterID, HUnitID, HQty, HBatchNo, HSupID, HGroupID, HMaker, HMakeDate, " +
+                  "HPrintQty, HSourceInterID, HSourceEntryID, HSourceBillNo, HSourceBillType, HinitQty, HEndQty, HBarcodeQtys, HBarcodeNo, HDeptID, HWhID, HSPID, HRemark, " +
+                  "HCusID, HCusType, HEndDate, HWorkLineName, HBarCodeDate, HSTOCKORGID, HOWNERID, HSeOrderBillNo, HGiveAwayFlag, HMaterName, HMaterModel, " +
+                  "HPinfan, HAuxPropID, HMTONo, HInnerBillNo, HCoilNO, HFurnaceNO, HFactory, HAuxQty, HheatNO, HProduceDate, HExpiryDate, HEmpID, HCusModel, HCusMaterName, HCheckEmpName, HZZRQ" +
+                  ") values (" +
+                  "'" + ds.Tables[0].Rows[0]["HInterID"].ToString() + "', " +
+                  "'" + (int.Parse(ds.Tables[0].Rows[0]["HEntryID"].ToString()) + 1).ToString() + "', " +
+                  "'" + lsmain[0].HBarCode.ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HBarCodeType"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HBarCodeSubType"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HMaterID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HUnitID"].ToString() + "', " +
+                  "'" + splitnum + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HBatchNo"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSupID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HGroupID"].ToString() + "', " +
+                  "'" + user + "', getdate(), " +
+                  "'" + ds.Tables[0].Rows[0]["HPrintQty"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSourceInterID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSourceEntryID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSourceBillNo"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSourceBillType"].ToString() + "', " +
+                  "'" + splitnum + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HEndQty"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HBarcodeQtys"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HBarcodeNo"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HDeptID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HWhID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSPID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HRemark"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HCusID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HCusType"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HEndDate"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HWorkLineName"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HBarCodeDate"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSTOCKORGID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HOWNERID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HSeOrderBillNo"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HGiveAwayFlag"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HMaterName"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HMaterModel"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HPinfan"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HAuxPropID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HMTONo"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HInnerBillNo"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HCoilNO"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HFurnaceNO"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HFactory"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HAuxQty"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HheatNO"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HProduceDate"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HExpiryDate"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HEmpID"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HCusModel"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HCusMaterName"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HCheckEmpName"].ToString() + "', " +
+                  "'" + ds.Tables[0].Rows[0]["HZZRQ"].ToString() + "'" +
+                  ")";
+                    //鎻掑叆鎷嗗垎鏉$爜
+                    oCN.RunProc(sql);
+                    //鏇存柊鑰佹潯鐮佺殑HQty鏁伴噺
+                    oCN.RunProc("update  Gy_BarCodeBill set HQty= HQty-'"+splitnum+"' where HItemID="+ ds.Tables[0].Rows[0]["HItemID"].ToString());
+
+
+
+                    oCN.Commit();
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+
+                }
+                else
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛佹湭鏌ヨ鍒版潯鐮佷俊鎭�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }               
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region [鏉$爜鐢熸垚鎺ュ彛_灏忓崼闀洉鐮乚
+        [Route("Sc_BarCode/SaveSNByICMO_XW")]
+        [HttpGet]
+        public object SaveSNByICMO_XW(String HBillNo,string HSN, int HBeginNo, int HEndNo, int HCount,string HMachineCode)
+        {
+            try
+            {
+                if(oWebs.GetWebAPIToLocal_ICMO(HBillNo, "3710", "admin", ref DBUtility.ClsPub.sErrInfo)==false)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "[0000-2-020]鍗曟嵁鍚屾澶辫触璇疯仈绯荤鐞嗗憳,"+ DBUtility.ClsPub.sErrInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_WMS_SaveSNByICMO_XW '" + @HBillNo + "', " + HSN +","+HBeginNo+","+HEndNo+","+HCount+",'"+HMachineCode+"'", "h_p_WMS_SaveSNByICMO_XW");
+
+                    if (ds == null)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "[0000-2-020]娌℃湁杩斿洖浠讳綍缁撴灉,鏉$爜淇濆瓨澶辫触锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "[0000-2-020]鏉$爜缁戝畾澶辫触锛�"+ ds.Tables[0].Rows[0]["HRemark"].ToString();
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "[0000-1-037]鏉$爜鐢熸垚鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+                
+                
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "[3899-2-006]鏉$爜鐢熸垚澶辫触!" + e.Message;
+                return objJsonResult;
+            }
+        }
+        #endregion        
 
         #endregion
     }

--
Gitblit v1.9.1