From c5cfa2df88c6d2e5b31e87e1d5a8fe49d585f0bb Mon Sep 17 00:00:00 2001
From: jinghz@oceic.com <jinghz@oceic.com>
Date: 星期四, 24 八月 2023 10:44:03 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/仓存管理/条码生成/Sc_BarCodeController.cs | 1196 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 1,182 insertions(+), 14 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 c5143ee..7416774 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,5 +1,8 @@
-锘縰sing Newtonsoft.Json;
+锘縰sing DAL;
+using DBUtility;
+using Newtonsoft.Json;
 using Newtonsoft.Json.Converters;
+using Newtonsoft.Json.Linq;
 using System;
 using System.Collections.Generic;
 using System.Data;
@@ -22,8 +25,12 @@
         private WebS.WebService1 oWebs = new WebS.WebService1();
         //鑾峰彇绯荤粺鍙傛暟
         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+        public Int64 HInterID = 0;      //鍐呯爜
+        public string ModName = "85";
+        public string HOrgNumber = "";
+        public Int64 HOrgID = -1;
+        public string SourceQtyCtl = ""; //瓒呮簮鍗曟暟閲忔帶鍒�
 
-       
 
         #region 鏉$爜鐢熸垚
 
@@ -62,7 +69,7 @@
                 }
                 else
                 {
-                    list.Add("");
+                    list.Add(CampanyName);
                 }
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -125,7 +132,7 @@
                     list.Add("鍞竴鏉$爜");
                     list.Add("鍝佺鏉$爜");
                     list.Add("鎵规鏉$爜");
-                    //list.Add("鎵樼洏鏉$爜");
+                    list.Add("鎵樼洏鏉$爜");
                 }
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
@@ -149,6 +156,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
             {
@@ -169,35 +177,66 @@
                 {
                     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 鍗曟嵁鍙�", "h_v_IFCLD_ICMOBillList_Source").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)");
+                        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 * 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 * 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 * 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";
+                        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 * 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 "鐢熶骇閫�鏂欏崟":
-                        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;
                     default:
                         break;
                 }
                 ds = new SQLHelper.ClsCN().RunProcReturn(sql, tabname);
                 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";
                 foreach (DataColumn col in ds.Tables[0].Columns)
                 {
 
@@ -238,6 +277,1135 @@
         }
         #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();
+                objJsonResult.data = null;
+                objJsonResult.list = columnNameList;
+            }
+            return objJsonResult;
+        }
+        #endregion
+
+        #region [閫氳繃閫夋嫨鐨勬簮鍗曚俊鎭煡鎵炬簮鍗曟暟鎹甝
+        [Route("Sc_BarCode/SelectReportFromBillList")]
+        [HttpPost]
+        public object SelectReportFromBillList([FromBody] JObject msg)
+        {
+            //List<DBUtility.BillSelect> oList,string HBarCodeType
+            var _value = msg["msg"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string HSourceBillType = sArray[1].ToString();
+            string HBarCodeType = sArray[2].ToString();
+            string UserName = sArray[3].ToString();
+            ClsPub.CurUserName = UserName;
+            ListModels oListModels = new ListModels();
+            List<object> ListRows = new List<object>();
+            try
+            {
+               
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                List<DBUtility.BillSelect> oList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DBUtility.BillSelect>>(msg2);
+                foreach (DBUtility.BillSelect oSelectRow in oList)
+                {
+                    HSouceOrderList ordrlist = new HSouceOrderList();
+                    switch (oSelectRow.BillType)
+                    {
+                        case "3710": //鐢熶骇璁㈠崟
+                            //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("select * from h_v_IFCLD_ICMOList where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IFCLD_ICMOList");
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(HSourceOrderList(ds.Tables[0],ordrlist, HBarCodeType));
+                            break;
+                        case "3711": //鐢熶骇姹囨姤鍗�
+                            //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("select * from h_v_IF_ICMOReportList where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_ICMOReportList");
+                            //鍐欏叆淇℃伅
+                            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");
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
+                        case "1103": //鏀舵枡閫氱煡鍗�
+                            //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("select * from h_v_IF_POInStockList where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_POInStockList");
+                            //鍐欏叆淇℃伅
+                            ListRows.Add(HSourceOrderList1(ds.Tables[0], ordrlist, HBarCodeType, HSourceBillType));
+                            break;
+                        case "1601": //濮斿璁㈠崟
+                            //寰楀埌淇℃伅
+                            ds = oCN.RunProcReturn("select * from h_v_IF_EntrustOrderList where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_EntrustOrderList");
+                            //鍐欏叆淇℃伅
+                            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": //鍏朵粬鍏ュ簱鍗�
+                            break;
+                        case "1207": //鐩存帴璋冩嫧鍗�
+                            break;
+                        case "1239": //閲囪喘閫�鏂欏崟
+                            break;
+                        case "1255": //缁勮鎷嗗嵏鍗�
+                            break;
+                        default:
+                            break;
+                    }
+                }
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鑾峰彇鏁版嵁鎴愬姛!";
+                objJsonResult.data = null;
+                objJsonResult.list = ListRows;
+            }
+            catch (Exception e)
+            {
+
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = e.Message.ToString();
+                objJsonResult.data = null;
+                objJsonResult.list = ListRows;
+            }
+            return objJsonResult;
+        }
+
+        public object HSourceOrderList(DataTable dt, HSouceOrderList ordrlist,string HBarCodeType) 
+        {
+            for (int i = 0; i < dt.Rows.Count; i++)
+            {
+                ordrlist.HQty = 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.HSourceBillNo = dt.Rows[i]["鍗曟嵁鍙�"].ToString();
+                ordrlist.HBillType = dt.Rows[i]["HBillType"].ToString();
+                ordrlist.HDate = dt.Rows[i]["鏃ユ湡"].ToString(); //鍗氭棩 鏀舵枡鍗曟嵁鏃ユ湡
+                ordrlist.HShowDate = DateTime.Now.ToString();
+                ordrlist.HSupID = dt.Rows[i]["hsupid"].ToString();
+                ordrlist.HSupNumber = dt.Rows[i]["渚涘簲鍟嗕唬鐮�"].ToString();
+                ordrlist.HSupName = dt.Rows[i]["渚涘簲鍟�"].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.HRemark = dt.Rows[i]["澶囨敞"].ToString();
+                ordrlist.HMTONo = dt.Rows[i]["璁″垝璺熻釜鍙�"].ToString();
+                ordrlist.HCusID = dt.Rows[i]["HCusID"].ToString();
+                ordrlist.HCusNumber = dt.Rows[i]["瀹㈡埛浠g爜"].ToString();
+                ordrlist.HCusName = dt.Rows[i]["瀹㈡埛"].ToString();
+                ordrlist.HCusType = dt.Rows[i]["瀹㈡埛鍨嬪彿"].ToString();
+                ordrlist.HPinfanBarCode = dt.Rows[i]["HPinfanBarCode"].ToString();
+                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 (HBarCodeType == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
+                {
+                    ordrlist.HMinQty = dt.Rows[i]["鏈敓鎴愭潯鐮佹暟閲�"].ToString();
+                }
+                else if (HBarCodeType == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�"|| HBarCodeType == "浠櫒鎴愬搧鏉$爜瑙勫垯"|| HBarCodeType == "璇曞墏鎴愬搧鏉$爜瑙勫垯")
+                {
+                    ordrlist.HMinQty = "1";
+                }
+                else
+                {
+                    ordrlist.HMinQty = dt.Rows[i]["鏈�灏忓寘瑁呮暟"].ToString();
+                }
+            }
+            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();
+                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.HDate = dt.Rows[i]["鏃ユ湡"].ToString(); //鍗氭棩 鏀舵枡鍗曟嵁鏃ユ湡
+                ordrlist.HShowDate = DateTime.Now.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.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();
+                }
+                else if (HBarCodeType == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�")
+                {
+                    ordrlist.HMinQty = "1";
+                }
+                else
+                {
+                    ordrlist.HMinQty = dt.Rows[i]["鏈�灏忓寘瑁呮暟"].ToString();
+                }
+                ordrlist.HMaker = ClsPub.CurUserName;
+                if (HSourceBillType== "鏀舵枡閫氱煡鍗�"|| HSourceBillType== "閲囪喘璁㈠崟"|| HSourceBillType=="濮斿璁㈠崟"|| HSourceBillType== "閲囪喘鍏ュ簱鍗�") 
+                {
+                    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();
+                    if (HSourceBillType == "鏀舵枡閫氱煡鍗�")
+                    {
+                        if (dt.Rows[i]["鏄惁璧犲搧"].ToString() == "鏄�")
+                        {
+                            ordrlist.HGiveAwayFlag = 1;
+                        }
+                        else
+                        {
+                            ordrlist.HGiveAwayFlag = 0;
+                        }
+                    }
+                }
+                if (HSourceBillType == "閫�璐ч�氱煡鍗�")
+                {
+                    ordrlist.HCusID = dt.Rows[i]["HCusID"].ToString();
+                    ordrlist.HCusNumber = dt.Rows[i]["瀹㈡埛浠g爜"].ToString();
+                    ordrlist.HCusName= 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)
+        {
+
+            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();
+            }
+            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="鐢熸垚鎵规澶辫触锛�";
+                    return objJsonResult;
+                }
+                else if (DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0][0]) == "1")
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.Message = "鐢熸垚鎵规鎴愬姛锛�";
+                    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="娌℃湁闇�瑕佺敓鎴愭壒娆$殑鏄庣粏琛岋紒";
+                return objJsonResult;
+            }
+            else //瀹屽叏灏侀棴
+            {
+                return null;
+            }
+        }
+        #endregion
+
+        #region [鏉$爜鐢熸垚鎺ュ彛]
+        [Route("Sc_BarCode/Sub_SaveBill")]
+        [HttpPost]
+        public object Sub_SaveBill([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 = "閫夋嫨缁勭粐鏈夐敊璇�!";
+                    return objJsonResult;
+                }
+                if (!Sub_AllowSave(msg2, HSelectBarCodeType))//鍗曟嵁瀹屾暣鎬у垽鏂�
+                {
+                    return objJsonResult;
+                }
+                if (HSelectBarCodeType == "浠櫒鎴愬搧鏉$爜瑙勫垯")
+                {
+                    //瀹㈡埛瀹氬埗
+                }
+                else
+                {
+                    //鐢熸垚鏉$爜
+                    SaveBarCode(msg2, HSelectBarCodeType, CampanyName, HSourceBillTypeName);
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏉$爜鐢熸垚澶辫触!"+e.Message;
+                return objJsonResult;
+            }
+            return objJsonResult;
+        }
+        #endregion        
+
+        #region[鍗曟嵁瀹屾暣鎬у垽鏂璢
+        private bool Sub_AllowSave(string msg2, string HSelectBarCodeType)
+        {
+            msg2 = msg2.Replace("\\", "");
+            msg2 = msg2.Replace("\n", "");  //\n
+            List<HSouceOrderList> ordrlist = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HSouceOrderList>>(msg2);
+
+            string sHRemark = "";
+            for (int i = 0; i < ordrlist.Count; i++)
+            {
+                long HSno = i + 1;                                                          // 搴忓彿
+                string HBarCodeType = HSelectBarCodeType;                                   // 鏉$爜绫诲瀷
+                string HSourceBillNo = DBUtility.ClsPub.isStrNull(ordrlist[i].HBillNo);     // 婧愬崟鍗曞彿
+                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
+                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");
+                    if (oDsCheck == null && oDsCheck.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏉$爜鐢熸垚瀹屾暣鎬у垽鏂敊璇�";
+                        return false;
+                    }
+                    else if (DBUtility.ClsPub.isStrNull(oDsCheck.Tables[0].Rows[0][0]) == "1")
+                    {
+                        sHRemark = sHRemark + DBUtility.ClsPub.isStrNull(oDsCheck.Tables[0].Rows[0]["HRemark"]);
+                    }
+                }
+            }
+            if (sHRemark != "")
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = sHRemark;
+                return false;
+            }
+            return true;
+        }
+
+        #endregion
+
+        #region[鏉$爜鐢熸垚鏂规硶]
+        private object SaveBarCode(string msg2, string HSelectBarCodeType, string CampanyName,string HSourceBillTypeName)
+        {
+            int LSHlen = 6;             //娴佹按鍙烽暱搴�
+            int SumLen = 10;            //鎬婚暱搴�
+            string TM = "";             //鏉$爜
+            string HNumber = "";        //鐗╂枡鍐呯爜
+            string HMaterNumber = "";   //鐗╂枡浠g爜
+            double HSumQty = 0;         //浜у搧鏁伴噺
+            double HMinQty = 0;         //鏈�灏忓寘瑁呮暟
+            int HBQty = 0;              //绠辨暟
+            double HQty = 0;            //鏁伴噺
+            string WeiShu = "";         //灏炬暟
+            int LSH = 0;                //娴佹按鍙�
+            string LSH2 = "";           //娴佹按鍙疯浆鎹㈡垚瀛楃
+            string sDate = "";          //鏃ユ湡
+            string sYear = "";          //骞�
+            string sPeriod = "";        //鏈�
+            string sDay = "";           //鏃�
+            string HBatchNo = "";       //鎵规
+            string HYasuoji = "";       //鍘嬬缉鏈�
+            string HModelName = "";       //鏈哄瀷
+            string HICMOBillNo = "";       //婧愬崟鍙�
+            string HBarCodeBatchNo = "";       //鏉$爜鎵规鍙�
+            string HBarCodeDate = "";         //鏉$爜鏃ユ湡
+            int k = 0;
+            int n = 0;                  //鍚屼竴鎵圭敓鎴愭潯鐮佷腑鐨勭鍑犳潯
+            string sTMNumber = "";      //鏉$爜鑷畾涔夊墠缂�
+
+            string HCoilNO = "";
+            string HFurnaceNO = "";
+            string HFactory = "";
+            decimal HAuxQty = 0;
+            string HheatNO = "";
+
+            DataSet Ds;
+            msg2 = msg2.Replace("\\", "");
+            msg2 = msg2.Replace("\n", "");  //\n
+            List<HSouceOrderList> ordrlist = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HSouceOrderList>>(msg2);
+            List<HBarCodeList> ListRows = new List<HBarCodeList>();
+            for (int j = 0; j < ordrlist.Count; j++)
+            {
+                if (ClsPub.isLong(ordrlist[j].HMaterID) != 0)
+                {
+                    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);
+                    //鏃ユ湡鑾峰彇鏂瑰紡
+                    sDate = DateTime.Now.ToString();
+                    //
+                    if (HSelectBarCodeType == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" || HSelectBarCodeType == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�") //鍗曟嵁鏃ユ湡(鏀舵枡閫氱煡鍗�)
+                    {
+                        sDate = DBUtility.ClsPub.isStrNull(ordrlist[j].HDate);
+                    }
+                    else if (HSelectBarCodeType == "璇曞墏鎴愬搧鏉$爜瑙勫垯")// 澶辨晥鏃ユ湡锛堢敓浜ц鍗曪級
+                    {
+                        sDate = DBUtility.ClsPub.isStrNull(ordrlist[j].HEndDate);
+                    }
+                    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); //鏉$爜鏃ユ湡锛堝瀹濈數鍣級
+                    //
+                    sYear = ClsPub.isDate(sDate).Year.ToString().Substring(2, 2);
+                    sPeriod = "0" + ClsPub.isDate(sDate).Month.ToString();
+                    sPeriod = sPeriod.Substring(sPeriod.Length - 2, 2);
+                    sDay = "0" + ClsPub.isDate(sDate).Day.ToString();
+                    sDay = sDay.Substring(sDay.Length - 2, 2);
+                    //==================================
+                    if (HSelectBarCodeType == "鍞竴鏉$爜")
+                    {
+                        if (CampanyName == "鍗撳姏") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�
+                        {
+                            //鏉$爜鍓嶇紑 = 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
+                            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]);
+                        }
+                        else if (CampanyName == "椋為緳")
+                        {
+                            string HWorksNumber = "";
+                            HWorksNumber = CampanyName;
+                            if (HWorksNumber == "")
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "宸ュ巶浠g爜涓嶈兘涓虹┖!";
+                                return objJsonResult;
+                            }
+                            //鏉$爜鍓嶇紑 = 宸ュ巶浠g爜 + 鐗╂枡鍐呯爜 + 鏃ユ湡
+                            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]);
+                        }
+                        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.isInt(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.isInt(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.isInt(Ds.Tables[0].Rows[0][0]);
+                            }
+                        }
+                        else  //閫氱敤鏂规硶
+                        {
+                            //鏉$爜鍓嶇紑 = 缁勭粐浠g爜 + 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
+                            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]);
+                        }
+                    }
+                    else if (HSelectBarCodeType == "鍝佺鏉$爜")
+                    {
+                        if (CampanyName == "浜斾簯") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�
+                        {
+                            TM = HNumber + ";" + DBUtility.ClsPub.isStrNull(ordrlist[j].HMTONo);
+                        }
+                        else
+                        {
+                            TM = HOrgNumber + HNumber;
+                        }
+                    }
+                    else if (HSelectBarCodeType == "鎵规鏉$爜")
+                    {
+                        TM = HOrgNumber + HNumber + HBatchNo;
+                    }//鍗氭棩鐗规畩澶勭悊
+                    else if (HSelectBarCodeType == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" || HSelectBarCodeType == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
+                    {
+                        //鐗╂枡缂栫爜+鍗曟嵁鏃ユ湡锛圷YMMDD锛�+娴佹按4浣� 
+                        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]);
+                        LSHlen = 4;
+                    }
+                    else if (HSelectBarCodeType == "浠櫒鎴愬搧鏉$爜瑙勫垯") //鍙﹀澶勭悊浜�
+                    {
+                        //鐗╂枡缂栫爜+搴忓垪鍙�+鐢熶骇鏃ユ湡
+                        //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]);
+                    }
+                    else if (HSelectBarCodeType == "璇曞墏鎴愬搧鏉$爜瑙勫垯")
+                    {
+                        //鐗╂枡缂栫爜+鐢熶骇鎵瑰彿+娴佹按鍙�6浣�-
+                        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]);
+                        LSHlen = 6;
+                    }
+                    else if (HSelectBarCodeType == "鍐呴攢鏈烘潯鐮�")
+                    {
+                        //鍒堕�犳湰閮�1浣嶏紙榛樿1锛�+鏈哄瀷浠g爜5浣嶏紙锛�+骞�2浣�+鏈�1浣嶏紙A銆丅銆丆浠f浛10鏈堜唤锛�
+                        //+鏃�2浣�+鏉$爜鎵规鐮�2浣�+鍘嬬缉鏈轰唬鐮�1浣�+00+娴佹按鍙�4浣�+鏍¢獙鐮侊紙榛樿0锛�
+                        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]);
+                        LSHlen = 5;
+                        if (sTMNumber.Length != 16)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏉$爜闀垮害涓嶅16浣嶏紝鏄惁鏁版嵁涓嶅叏锛佸埗閫犳湰閮�1浣�:[0] + 鏈哄瀷浠g爜5浣�:[" + HModelName + "] + 骞存湀鏃�5浣�:[" + HBarCodeDate + "] + 鎵规鍙�2浣�:[" + HBarCodeBatchNo + "]+ 鍘嬬缉鏈�1浣�:[" + HYasuoji + "]+00 ; ";
+                            return objJsonResult;
+                        }
+                    }
+                    else if (HSelectBarCodeType == "澶栭攢鏈烘潯鐮�")
+                    {
+                        //鐗╂枡浠g爜11浣�+骞�2浣�+鏈�1浣嶏紙A銆丅銆丆浠f浛10鏈堜唤锛�+鏃�2浣�+鎵规2浣�+娴佹按鍙�4浣�
+                        //sTMNumber = HMaterNumber.Replace(Convert.ToChar("."),Convert.ToChar("")) + HBarCodeDate + HBarCodeBatchNo;
+                        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]);
+                        LSHlen = 5;
+                        if (sTMNumber.Length != 18)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏉$爜闀垮害涓嶅18浣嶏紝鏄惁鏁版嵁涓嶅叏锛佺墿鏂欎唬鐮�11浣�:[" + HMaterNumber.Replace(".", "") + "]+骞存湀鏃�5浣�:[" + HBarCodeDate + "]+鎵规鍙�2浣�:[" + HBarCodeBatchNo + "];";
+                            return objJsonResult;
+                        }
+                    }
+                    else if (HSelectBarCodeType == "鍗婃垚鍝佹潯鐮�")
+                    {
+                        //鐢熶骇璁㈠崟鍙�+4浣嶆祦姘村彿
+                        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]);
+                        LSHlen = 5;
+                    }
+                    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.isInt(Ds.Tables[0].Rows[0][0]);
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "閿欒鐨勬潯鐮佺被鍨嬶紝涓嶈兘鐢熸垚鏉$爜锛�";
+                        return objJsonResult;
+                    }
+
+                    HBQty = HBQty + ClsPub.isInt(ordrlist[j].HBQty);
+                    HMinQty = ClsPub.isDoule(ordrlist[j].HMinQty);
+                    HSumQty = ClsPub.isDoule(ordrlist[j].HQty);
+                    n = 0;
+                    
+                    for (int i = k; i < HBQty; i++)
+                    {
+                        if (HSumQty - HMinQty > 0)
+                        {
+                            WeiShu = "";
+                            HSumQty = HSumQty - HMinQty;
+                        }
+                        else
+                        {
+                            if (HSumQty == HMinQty)
+                            {
+                                WeiShu = "";
+                            }
+                            else
+                            {
+                                WeiShu = "灏炬暟";
+                            }
+                            HMinQty = HSumQty;
+                        }
+                        //
+                        LSH = LSH + 1;
+                        LSH2 = LSH.ToString();
+                        while (LSH2.Length < LSHlen)  //濡傛灉娴佹按鍙峰皬浜�6浣嶆暟鍓嶉潰琛�0
+                        {
+                            LSH2 = "0" + LSH2;
+                        }
+                        if (HSelectBarCodeType == "鍞竴鏉$爜" || HSelectBarCodeType == "鎵樼洏鏉$爜")
+                        {
+                            //鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
+                            TM = sTMNumber + LSH2;
+                        }
+                        else if (HSelectBarCodeType == "浠櫒澶栬喘浠舵潯鐮佹櫘閫氳鍒�" || HSelectBarCodeType == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�" || HSelectBarCodeType == "璇曞墏鎴愬搧鏉$爜瑙勫垯"
+                            || HSelectBarCodeType == "鍗婃垚鍝佹潯鐮�" || HSelectBarCodeType == "澶栭攢鏈烘潯鐮�")
+                        {
+                            TM = sTMNumber + LSH2;
+
+                        }
+                        else if (HSelectBarCodeType == "鍐呴攢鏈烘潯鐮�")
+                        {
+                            TM = sTMNumber + LSH2 + "0";
+                        }
+                        //
+                        if (TM.Trim() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏉″舰鐮佷笉鑳戒负绌猴紝涓嶈兘鐢熸垚鏉$爜锛�";
+                            return objJsonResult;
+                        }
+                        HBarCodeList barcode = new HBarCodeList();
+                        barcode.HBarCode2 = TM;
+                        barcode.HEntryID2 = ClsPub.isStrNull(j + 1);
+                        barcode.HMaterID2 = ordrlist[j].HMaterID;
+                        barcode.HMaterNumber2 = ordrlist[j].HMaterNumber;
+                        barcode.HMaterName2 = ordrlist[j].HMaterName;
+                        barcode.HMaterModel2 = ordrlist[j].HMaterModel;
+                        barcode.HPinfan2 = ordrlist[j].HPinfan;
+                        barcode.HPinfanBarCode2 = ordrlist[j].HPinfanBarCode;
+
+
+                        barcode.HAuxPropID2 = ordrlist[j].HAuxPropID;
+                        barcode.HAuxPropNumber2 = ordrlist[j].HAuxPropNumber;
+                        barcode.HAuxPropName2 = ordrlist[j].HAuxPropName;
+
+                        barcode.HUnitID2 = ordrlist[j].HUnitID;
+                        barcode.HUnitNumber2 = ordrlist[j].HUnitNumber;
+                        barcode.HUnitName2 = ordrlist[j].HUnitName;
+
+                        barcode.HQty2 = ClsPub.isStrNull(HMinQty);
+                        barcode.HBatchNo2 = ordrlist[j].HBatchNo;
+                        barcode.HSourceInterID2 = ordrlist[j].HMainID;
+                        barcode.HSourceEntryID2 = ordrlist[j].HSubID;
+                        barcode.HSourceBillNo2 = ordrlist[j].HBillNo;
+                        barcode.HSourceBillType2 = ordrlist[j].HBillType;
+                        barcode.HPrint = "0";
+                        barcode.HWei = WeiShu;
+                        barcode.HBarcodeNo = ClsPub.isStrNull(n + 1);
+                        barcode.HBarcodeQtys = ordrlist[j].HBQty;
+                        barcode.HSupID2 = ordrlist[j].HSupID;
+                        barcode.HSupNumber2 = ordrlist[j].HSupNumber;
+                        barcode.HSupName2 = ordrlist[j].HSupName;
+                        barcode.HDeptID2 = ordrlist[j].HDeptID;
+                        barcode.HDeptNumber2 = ordrlist[j].HDeptNumber;
+                        barcode.HDeptName2 = ordrlist[j].HDeptName;
+                        barcode.HRemark2 = ordrlist[j].HRemark;
+                        barcode.HDate2 = ordrlist[j].HDate;
+                        barcode.HShowDate2 = ordrlist[j].HShowDate;
+                        barcode.HWhID2 = ordrlist[j].HWhID;
+                        barcode.HWhNumber2 = ordrlist[j].HWhNumber;
+                        barcode.HWhName2 = ordrlist[j].HWhName;
+                        barcode.HSPID2 = ordrlist[j].HSPID;
+                        barcode.HSPNumber2 = ordrlist[j].HSPNumber;
+                        barcode.HSPName2 = ordrlist[j].HSPName;
+                        barcode.HMTONo2 = ordrlist[j].HMTONo;
+                        barcode.HCusID2 = ordrlist[j].HCusID;
+                        barcode.HCusNumber2 = ordrlist[j].HCusNumber;
+                        barcode.HCusName2 = ordrlist[j].HCusName;
+                        barcode.HCusType2 = ordrlist[j].HCusType;
+                        barcode.HSourceID2 = ordrlist[j].HSourceID;
+                        barcode.HSourceNumber2 = ordrlist[j].HSourceNumber;
+                        barcode.HSourceName2 = ordrlist[j].HSourceName;
+                        barcode.HEndDate2 = ordrlist[j].HEndDate;
+                        barcode.HSeOrderBillNo2 = ordrlist[j].HSeOrderBillNo;
+                        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;
+                        ListRows.Add(barcode);
+                        k = k + 1;
+                        n = n + 1;
+                        oCN.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
+                    }
+                }
+            }
+            string HWei = "";      //灏炬暟
+            string HBarCode = "";
+            string HBarCodeType = "";
+            Int64 HMaterID = 0;
+            Int64 HAuxPropID = 0;
+            Int64 HUnitID = 0;
+            double HQty2 = 0;
+            string HBatchNo2 = "";
+            Int64 HSupID = 0;
+            Int64 HGroupID = 0;
+            int HPrintQty = 0;
+            Int64 HSourceInterID = 0;
+            Int64 HSourceEntryID = 0;
+            string HSourceBillNo = "";
+            string HSourceBillType = "";
+            Int64 HBarcodeNo = 0;       //鎵樺彿
+            Int64 HBarcodeQtys = 0;     //鎬绘墭鏁�
+            Int64 HDeptID = 0;
+            Int64 HWhID = 0;
+            Int64 HSPID = 0;
+            string HRemark = "";
+            string HMaterName = "";
+            string HMaterModel = "";
+            string HPinfan = "";
+            string HMTONo = "";
+            Int64 HCusID = 0;
+            string HCusType = "";
+            DateTime HEndDate;
+            string HWorkLineName = "";
+            string HSeOrderBillNo = "";
+            string HInnerBillNo = "";
+            bool HGiveAwayFlag = false;
+            Int64 HEntryID = 0;
+
+            string HCoilNO2 = "";
+            string HFurnaceNO2 = "";
+            string HFactory2 = "";
+            decimal HAuxQty2 = 0;
+            string HheatNO2 = "";
+            DateTime HProduceDate;
+            DateTime HExpiryDate;
+            try
+            {
+                oCN.BeginTran();
+                for (int i = 0; i < ListRows.Count; i++)
+                {
+                    if (ClsPub.isLong(ListRows[i].HMaterID2) != 0)
+                    {
+                        HWei = ClsPub.isStrNull(ListRows[i].HWei);
+                        HBarCode = ClsPub.isStrNull(ListRows[i].HBarCode2);
+                        //
+                        HBarCodeType = ClsPub.isStrNull(HSelectBarCodeType);
+                        if (CampanyName == "鍗氭棩绉戞妧" || CampanyName == "澶忓疂鐢靛櫒")
+                        {
+                            HBarCodeType = "鍞竴鏉$爜";
+                        }
+                        //
+                        HMaterID = ClsPub.isLong(ListRows[i].HMaterID2);
+                        HEntryID = ClsPub.isLong(ListRows[i].HEntryID2);
+                        HAuxPropID = ClsPub.isLong(ListRows[i].HAuxPropID2);
+                        HUnitID = ClsPub.isLong(ListRows[i].HUnitID2);
+                        HQty2 = ClsPub.isDoule(ListRows[i].HQty2);
+                        HBatchNo2 = ClsPub.isStrNull(ListRows[i].HBatchNo2);
+                        HSourceInterID = ClsPub.isLong(ListRows[i].HSourceInterID2);
+                        HSourceEntryID = ClsPub.isLong(ListRows[i].HSourceEntryID2);
+                        HSourceBillNo = ClsPub.isStrNull(ListRows[i].HSourceBillNo2);
+                        HSourceBillType = ClsPub.isStrNull(ListRows[i].HSourceBillType2);
+                        HBarcodeQtys = ClsPub.isLong(ListRows[i].HBarcodeQtys);
+                        HBarcodeNo = ClsPub.isLong(ListRows[i].HBarcodeNo);
+                        HSupID = ClsPub.isLong(ListRows[i].HSupID2);
+                        HDeptID = ClsPub.isLong(ListRows[i].HDeptID2);
+                        HWhID = ClsPub.isLong(ListRows[i].HWhID2);
+                        HSPID = ClsPub.isLong(ListRows[i].HSPID2);
+                        HRemark = ClsPub.isStrNull(ListRows[i].HRemark2);
+                        HMaterName = ClsPub.isStrNull(ListRows[i].HMaterName2);
+                        HMaterModel = ClsPub.isStrNull(ListRows[i].HMaterModel2);
+                        HPinfan = ClsPub.isStrNull(ListRows[i].HPinfan2);
+                        HMTONo = ClsPub.isStrNull(ListRows[i].HMTONo2);
+                        HCusID = ClsPub.isLong(ListRows[i].HCusID2);
+                        HCusType = ClsPub.isStrNull(ListRows[i].HCusType2);
+                        HEndDate = ClsPub.isDate(ListRows[i].HEndDate2);
+                        HWorkLineName = ClsPub.isStrNull(ListRows[i].HSourceName2);
+                        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);
+                        oCN.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,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 " +
+                                    ") values ("
+                                    + "'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HQty2.ToString()
+                                    + ",'" + HBatchNo2 + "'," + HSupID.ToString() + "," + HGroupID.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 + "'" + ")");
+
+
+                        //HNumber = ClsPub.isStrNull(grdSub.Rows[i].Cells[HMaterID2Col].Value);
+                        //if (cmbHBarCodeType.Text == "鍞竴鏉$爜")
+                        //{
+                        //    if (CampanyName == "鍗撳姏") //绯荤粺鍙傛暟  瀹㈡埛瀹氬埗鍖栧悕绉�
+                        //    {
+                        //        //鏉$爜鍓嶇紑 = 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
+                        //        sTMNumber = HNumber + sYear + sPeriod + sDay; 
+                        //    }
+                        //    else if (CampanyName == "椋為緳")
+                        //    {
+                        //        string HWorksNumber = "";
+                        //        HWorksNumber = cmbHWorksNumber.Text;
+                        //        if (HWorksNumber == "")
+                        //        {
+                        //            MessageBox.Show("宸ュ巶浠g爜涓嶈兘涓虹┖锛�");
+                        //            return;
+                        //        }
+                        //        //鏉$爜鍓嶇紑 = 宸ュ巶浠g爜 + 鐗╂枡鍐呯爜 + 鏃ユ湡
+                        //        sTMNumber = HWorksNumber + HNumber + sYear + sPeriod + sDay; 
+                        //    }
+                        //    else  //閫氱敤鏂规硶
+                        //    {
+                        //        //鏉$爜鍓嶇紑 = 缁勭粐浠g爜 + 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
+                        //        sTMNumber = HOrgNumber + HNumber + sYear + sPeriod + sDay; 
+                        //    }
+                        //}
+                        //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
+                    }
+                }
+                //澧炲姞 鏉$爜瓒呰繃鏈敓鎴愬姛鑳芥帶鍒�
+
+                //
+
+
+                //鏉$爜鐢熸垚鏃跺悓姝ョ敓鎴愭潯鐮佸嚭鍏ュ簱璁板綍
+                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
+                //鑾峰彇鐢熸垚鐨勬潯鐮佷俊鎭�
+                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 = "鑾峰彇璧勬簮缁戝畾鏁版嵁鎴愬姛锛�";
+                    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 = "娌℃湁杩斿洖浠讳綍缁撴灉,鏉$爜涓嶅瓨鍦紒";
+                    objJsonResult.data = null;
+                    objJsonResult.list = listobj;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏉$爜鐢熸垚澶辫触锛�" + 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
+
         #endregion
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1