From 9f6816fd0824aafc360bee29c9ec1eb76fa0aa16 Mon Sep 17 00:00:00 2001
From: yxj <yxj@hz-kingdee.com>
Date: 星期四, 25 五月 2023 16:51:38 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs           |    4 
 WebAPI/Controllers/仓存管理/条码生成/Sc_BarCodeController.cs            |   10 
 WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs             |  100 ++++-
 WebAPI/Controllers/BLL/Xt_UserController.cs                     |   82 ++++
 WebAPI/Controllers/Open_PrintTemController.cs                   |   84 ++++
 WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs          |  285 +++++++++++++++
 Model/采购管理/ClsCg_POInStockBillSub.cs                            |    2 
 WebAPI/Controllers/LMESController.cs                            |  154 ++++++++
 WebAPI/Controllers/WebAPIController.cs                          |   46 ++
 WebAPI/Controllers/POStockInBillController.cs                   |   14 
 WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs |  146 +++++++
 WebAPI/ListModels.cs                                            |   12 
 WebAPI/WebServer.cs                                             |   16 
 WebAPI/Models/WorkCenter.cs                                     |   30 +
 WebAPI/WebAPI.csproj                                            |    1 
 Pub_Class/CustomerCls/ClsPub.cs                                 |   92 +++++
 16 files changed, 1,029 insertions(+), 49 deletions(-)

diff --git "a/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_POInStockBillSub.cs" "b/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_POInStockBillSub.cs"
index 065c6e4..859b687 100644
--- "a/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_POInStockBillSub.cs"
+++ "b/Model/\351\207\207\350\264\255\347\256\241\347\220\206/ClsCg_POInStockBillSub.cs"
@@ -78,5 +78,7 @@
         public Int64 HSELLERWITHHOLDING;
         public Int64 HBUYERWITHHOLDING;
 
+        public string HSalOutStockBillNo; //销售出库单编码_序号
+        public Int64 HSalOutStockEntryId; //销售出库单分录Id
     }
 }
diff --git a/Pub_Class/CustomerCls/ClsPub.cs b/Pub_Class/CustomerCls/ClsPub.cs
index fdc5f20..70be5da 100644
--- a/Pub_Class/CustomerCls/ClsPub.cs
+++ b/Pub_Class/CustomerCls/ClsPub.cs
@@ -2503,5 +2503,97 @@
             }
             return sb.ToString();
         }
+
+        //鎷兼帴sql锛屾寜杞﹂棿锛屽伐浣滀腑蹇冩煡璇�
+        public static string SpliceSQL(string czymc,string ListName)
+        {
+            DataSet ds;
+            ClsSqlHelper oCN = new ClsSqlHelper();
+            string sql = "";
+
+            //鍒ゆ柇鏄惁鏈夋煡璇㈠垪琛ㄦ墍鏈変俊鎭潈闄�
+            if (!Security_Log("Xt_List_All", 1, false, czymc))
+            {
+                //鏃�
+                switch (ListName)
+                {
+                    case "宸ヨ壓璺嚎鍒楄〃":
+                        sql = " and HCenterID in (select HWorkCenterID from Gy_UserWorkCenterRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+                        break;
+                    case "鐢熶骇璁㈠崟鍒楄〃":
+                        sql = " and HDeptID in (select HDeptID from Gy_UserDeptRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+                        break;
+                    case "宸ュ簭娲惧伐鍗曞垪琛�":
+                        sql = " and HDeptID in (select HDeptID from Gy_UserDeptRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+                        break;
+                    case "宸ュ簭娲惧伐鍗曟槑缁嗗垪琛�":
+                        sql = " and HDeptID in (select HDeptID from Gy_UserDeptRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+                        break;
+                    case "宸ュ簭姹囨姤鍗曞垪琛�":
+                        sql = " and HCenterID in (select HWorkCenterID from Gy_UserWorkCenterRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+                        break;
+                    case "鐢熶骇杞﹂棿宸ュ簭鎶ヨ〃":
+                        sql = ",'" + czymc +"'";
+                        break;
+                    case "宸ュ簭鍦ㄥ埗鍝佹姤琛�":
+                        sql = ",'" + czymc + "'";
+                        break;
+                    case "宸ュ簭姹囨姤鏃ユ姤琛�":
+                        sql = ",'" + czymc + "'";
+                        break;
+                    case "璁′欢宸ヨ祫鎶ヨ〃":
+                        sql = ",'" + czymc + "'";
+                        break;
+                    case "璁′欢宸ヨ祫姹囨�绘姤琛�":
+                        sql = ",'" + czymc + "'";
+                        break;
+                }
+                return sql;
+            }
+            else
+            {
+                //鏈�
+                return sql;
+            }
+
+            //ds = oCN.RunProcReturn("select * from gy_czygl where Czymc='" + czymc + "'", "gy_czygl");
+            ////鍒ゆ柇鏄惁鏌ヨ鍒扮浉鍏崇敤鎴蜂俊鎭�
+            //if (ds != null || ds.Tables[0].Rows.Count != 0)
+            //{
+            //    Int64 HManagerFlag = Convert.ToInt64(ds.Tables[0].Rows[0]["ManagerFlag"]);
+            //    if (HManagerFlag == 1)//鏈夌鐞嗗憳鏉冮檺
+            //    {
+            //        return sql;
+            //    }
+            //    else //娌℃湁绠$悊鍛樻潈闄�
+            //    {
+            //        switch (ListName)
+            //        {
+            //            case "宸ヨ壓璺嚎鍒楄〃":
+            //                sql = " and HCenterID in (select HWorkCenterID from Gy_UserWorkCenterRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+            //                break;
+            //            case "鐢熶骇璁㈠崟鍒楄〃":
+            //                sql = " and HDeptID in (select HDeptID from Gy_UserDeptRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+            //                break;
+            //            case "宸ュ簭娲惧伐鍗曞垪琛�":
+            //                sql = " and HDeptID in (select HDeptID from Gy_UserDeptRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+            //                break;
+            //            case "宸ュ簭娲惧伐鍗曟槑缁嗗垪琛�":
+            //                sql = " and HDeptID in (select HDeptID from Gy_UserDeptRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+            //                break;
+            //            case "宸ュ簭姹囨姤鍗曞垪琛�":
+            //                sql = " and HCenterID in (select HWorkCenterID from Gy_UserWorkCenterRelation where HUserID = (select Czybm from gy_czygl where czymc = '" + czymc + "'))";
+            //                break;
+            //        }                   
+            //        return sql;
+            //    }
+            //}
+            //else
+            //{
+            //    sql = "娌℃湁鏌ヨ鍒扮浉鍏崇敤鎴蜂俊鎭�";
+            //    return sql;
+            //}
+        }
+
     }
 }
diff --git a/WebAPI/Controllers/BLL/Xt_UserController.cs b/WebAPI/Controllers/BLL/Xt_UserController.cs
index 0ce6b23..8b674ab 100644
--- a/WebAPI/Controllers/BLL/Xt_UserController.cs
+++ b/WebAPI/Controllers/BLL/Xt_UserController.cs
@@ -724,6 +724,88 @@
         }
         #endregion
 
+        #region  鏍规嵁鐢ㄦ埛缂栫爜鏌ユ壘宸插垎閰嶅伐浣滀腑蹇冨垪琛�
+        [Route("Xt_User/UserWorkCenterlistPlaylist")]
+        [HttpGet]
+        public object UserWorkCenterlistPlaylist(string HUserID)
+        {
+            try
+            {
+
+                ds = oCN.RunProcReturn("select HWorkCenterID HItemID,宸ヤ綔涓績浠g爜 HNumber,宸ヤ綔涓績鍚嶇О HName from h_v_Gy_UserWorkCenterRelationList where HUserID='" + HUserID + "' ", "h_v_Gy_UserWorkCenterRelationList");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲伐浣滀腑蹇冧俊鎭紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    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 = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鐢ㄦ埛鍏宠仈宸ヤ綔涓績淇濆瓨
+        [Route("Xt_User/SaveUserWorkCenter")]
+        [HttpPost]
+        public object SaveUserWorkCenter([FromBody] JObject msg)
+        {
+            var _value = msg["msg"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString();
+
+            ListModels oListModels = new ListModels();
+            try
+            {
+                List<Models.WorkCenter> lsmain = new List<Models.WorkCenter>();
+                msg2 = msg2.Substring(1, msg2.Length - 2);
+                msg2 = msg2.Replace("\\", "");
+                msg2 = msg2.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_WorkCenter(msg2);
+                oCN.BeginTran();
+                //鍒犻櫎宸茬粡鍏宠仈鐨勬暟鎹�
+                oCN.RunProc("Delete From Gy_UserWorkCenterRelation  where HUserID='" + msg3.ToString() + "'");
+                foreach (Models.WorkCenter oItem in lsmain)
+                {
+                    //閲嶆柊鍐欏叆鍏宠仈鏁版嵁
+                    oCN.RunProc("insert into Gy_UserWorkCenterRelation (HWorkCenterID,HUserID) values ('" + oItem.HItemID + "','" + msg3.ToString() + "')");
+                }
+                oCN.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region  鏍规嵁鐢ㄦ埛缂栫爜鏌ユ壘宸插垎閰嶅伐浣嶅垪琛�
         [Route("Xt_User/UserByWorkStationlistPlaylist")]
         [HttpGet]
diff --git a/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs b/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
index a657012..d8db8f0 100644
--- a/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
+++ b/WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
@@ -595,12 +595,12 @@
 ,HPRICECOEFFICIENT,HPRICEUNITID,HPRICELISTENTRY,HSAMPLEDAMAGEQTY,HSAMPLEDAMAGEBASEQTY
 ,HPAYORGID,HSETTLEORGID,HSETTLECURRID,HSETTLEMODEID,HEXCHANGETYPEID,HPAYCONDITONID
 ,HEXCHANGERATE,HLOCALCURRID,HISINCLUDEDTAX,HISPRICEEXCLUDETAX
-,HTAXRATEID,HCOSTPERCENT,HCOSTAMOUNT,HVAT,HSELLERWITHHOLDING,HBUYERWITHHOLDING,HSecUnitID) 
+,HTAXRATEID,HCOSTPERCENT,HCOSTAMOUNT,HVAT,HSELLERWITHHOLDING,HBUYERWITHHOLDING,HSecUnitID,HSalOutStockBillNo,HSalOutStockEntryId) 
 values(
 '{oSub.HInterID}','{oSub.HEntryID}','{oSub.HMaterID}','{oSub.HUnitID}','{oSub.HQty}','{oSub.HPrice}'
 ,'{oSub.HMoney}','{oSub.HWHID}','{oSub.HSPID}','{oSub.HRemark}','{oSub.HTaxMoney}','{oSub.HTaxRate}','{oSub.HTaxMoney_TAX}','{oSub.HTaxRate_TAX}'
 ,'{oSub.HSourceInterID}','{oSub.HSourceEntryID}','{oSub.HSourceBillNo}','{oSub.HSourceBillType}','{oSub.HPOOrderInterID}','{oSub.HPOOrderEntryID}','{oSub.HPOOrderBillNo}','{oSub.HAuxPropID}','{oSub.HBatchNO}','{oSub.HMTONo}','{oSub.HPlanMode}','{oSub.HERPInterID}','{oSub.HERPEntryID}','{oSub.HRelationQty}','{oSub.HGiveAwayFlag}','{oSub.HReceiveQty}','{oSub.HSEQ}','{oSub.HPRODUCEDATE}','{oSub.HEXPIRYDATE}',
-'{oSub.HSUPPLYLOT}','{oSub.HREQTRACENO}','{oSub.HBOMID}','{oSub.HSTOCKUNITID}','{oSub.HBASEUNITID}','{oSub.HSTOCKSTATUSID}','{oSub.HKEEPERTYPEID}','{oSub.HPROJECTNO}','{oSub.HCHECKINCOMING}','{oSub.HTaxPrice}','{oSub.HDISCOUNTRATE}','{oSub.HPRICECOEFFICIENT}','{oSub.HPRICEUNITID}','{oSub.HPRICELISTENTRY}','{oSub.HSAMPLEDAMAGEQTY}','{oSub.HSAMPLEDAMAGEBASEQTY}','{oSub.HPAYORGID}','{oSub.HSETTLEORGID}','{oSub.HSETTLECURRID}','{oSub.HSETTLEMODEID}','{oSub.HEXCHANGETYPEID}','{oSub.HPAYCONDITONID}','{oSub.HEXCHANGERATE}','{oSub.HLOCALCURRID}','{oSub.HISINCLUDEDTAX}','{oSub.HISPRICEEXCLUDETAX}','{oSub.HTAXRATEID}','{oSub.HCOSTPERCENT}','{oSub.HCOSTAMOUNT}','{oSub.HVAT}','{oSub.HSELLERWITHHOLDING}','{oSub.HBUYERWITHHOLDING}','{oSub.HSecUnitID}')";
+'{oSub.HSUPPLYLOT}','{oSub.HREQTRACENO}','{oSub.HBOMID}','{oSub.HSTOCKUNITID}','{oSub.HBASEUNITID}','{oSub.HSTOCKSTATUSID}','{oSub.HKEEPERTYPEID}','{oSub.HPROJECTNO}','{oSub.HCHECKINCOMING}','{oSub.HTaxPrice}','{oSub.HDISCOUNTRATE}','{oSub.HPRICECOEFFICIENT}','{oSub.HPRICEUNITID}','{oSub.HPRICELISTENTRY}','{oSub.HSAMPLEDAMAGEQTY}','{oSub.HSAMPLEDAMAGEBASEQTY}','{oSub.HPAYORGID}','{oSub.HSETTLEORGID}','{oSub.HSETTLECURRID}','{oSub.HSETTLEMODEID}','{oSub.HEXCHANGETYPEID}','{oSub.HPAYCONDITONID}','{oSub.HEXCHANGERATE}','{oSub.HLOCALCURRID}','{oSub.HISINCLUDEDTAX}','{oSub.HISPRICEEXCLUDETAX}','{oSub.HTAXRATEID}','{oSub.HCOSTPERCENT}','{oSub.HCOSTAMOUNT}','{oSub.HVAT}','{oSub.HSELLERWITHHOLDING}','{oSub.HBUYERWITHHOLDING}','{oSub.HSecUnitID}','{oSub.HSalOutStockBillNo}','{oSub.HSalOutStockEntryId}')";
                     oCN.RunProc(sql);
                 }
                 oCN.Commit();
diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
index 9f00be0..370daab 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -478,6 +478,264 @@
             }
         }
 
+        #region 鎵归噺鏂板鍗曟嵁-淇濆瓨鎸夐挳
+        [Route("Cj_StationOutBill/BatchAddBill")]
+        [HttpPost]
+        public object BatchAddBill([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            try
+            {
+                //鍙嶅簭鍒楀寲
+                string msg2 = "[" + sArray[0].ToString() + "]"; //琛ㄥご
+                string user = sArray[1].ToString();//鐢ㄦ埛鍚�
+                string msg3 = sArray[2].ToString(); //琛ㄤ綋
+                Int64 OperationType = Convert.ToInt64(sArray[3]); //鎿嶄綔绫诲瀷
+
+                //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犵紪杈戞潈闄�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg2);
+                List<StationBill> listSub = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg3);
+
+                oCN.BeginTran();
+                for (int i = 0;i < listSub.Count; i++)
+                {
+                    long HMainInterID = 0;
+                    HMainInterID = list[0].HMainInterID;
+                    string eventType = list[0].eventType;
+                    string BillType = "3791";
+                    string HBillSubType = "3791";
+                    long HInterID = listSub[i].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                    string HBillNo = listSub[i].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                    int HBillStatus = 0;
+                    string HMaker = user;//鍒跺崟浜�
+                    string HMouldNum = list[0].HMouldNum;//妯$┐鍙�
+                    int HYear = DateTime.Now.Year;
+                    double HPeriod = DateTime.Now.Month;
+                    string HRemark = list[0].HRemark;//澶囨敞
+                    string HSourceName = listSub[i].HSourceName;//鐢熶骇璧勬簮鍚嶇О
+                    double HPieceQty = list[0].HPieceQty;//杩涚珯PCS鏁�
+                    double HWasterQty = listSub[i].HWasterQty;//鎶ュ簾鏁伴噺
+                    double HPlanPieceQty = list[0].HPlanPieceQty;//杩涚珯PNL鏁�
+                    double HBadPNL = list[0].HBadPNL;//鎶ュ簾PNL鏁�
+                    long HICMOInterID = listSub[i].HICMOInterID;//浠诲姟鍗旾D
+                    string HICMOBillNo = listSub[i].HICMOBillNo;//浠诲姟鍗�
+                    int HProcPlanInterID = 0;
+                    int HProcPlanEntryID = 0;
+                    string HProcPlanBillNo = "";
+                    long HProcExchInterID = listSub[i].lngBillKey;
+                    long HProcExchEntryID = listSub[i].lngBillSubKey;
+                    string HProcExchBillNo = listSub[i].HProcExchBillNo;//娴佽浆鍗�
+                    long HMaterID = listSub[i].HMaterID;//浜у搧ID
+                    long HProcID = listSub[i].HProcID;//褰撳墠宸ュ簭ID
+                    double HICMOQty = listSub[i].HICMOQty;//浠诲姟鍗曟暟閲�
+                    double HPlanQty = list[0].HPlanQty;//绉讳氦PNL鏁�
+                    DateTime HStationOutTime = list[0].HStationOutTime;//姹囨姤鏃堕棿
+                    long HSourceID = listSub[i].HSourceID;//鐢熶骇璧勬簮ID
+                    long HPayProcID = list[0].HPayProcID;//鏍哥畻宸ュ簭ID
+                    long HGroupID = list[0].HGroupID;//鐝粍ID
+                    long HDeptID = 0;
+                    long HEmpID = listSub[i].HEmpID;//鎿嶄綔鍛業D
+                    string HBarCode = list[0].HBarCode;//鏉″舰鐮�
+                    string HAddr = "";
+                    string HBarCodeMaker = "";
+                    long HSourceID2 = list[0].HSourceID2;//鐢熶骇璧勬簮2ID
+                    long HSourceID3 = list[0].HSourceID3;//鐢熶骇璧勬簮3ID
+                    long HSourceID4 = list[0].HSourceID4;//鐢熶骇璧勬簮4ID
+                    long HSourceID5 = list[0].HSourceID5;//鐢熶骇璧勬簮5ID
+                    long HSupID = 0;
+                    double HQty = listSub[i].HQty;//鍚堟牸鏁伴噺
+                    double HPrice = 0;
+                    double HMoney = 0;
+                    double HBadCount = list[0].HBadCount;//涓嶈壇鏁伴噺
+                    long HCenterID = listSub[0].HCenterID;//宸ヤ綔涓績ID
+                    string HProcNo = listSub[i].HProcNo;//娴佹按鍙�
+                    string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙�
+                    string HSourceNameList = list[0].HSourceNameList;//璁惧娓呭崟
+                    long HMainSourceInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                    string HMainSourceBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                    string HMainSourceBillType = "3790";
+                    bool HLastSubProc = list[0].HLastSubProc;//杞笅宸ュ簭
+                    long HEmpID2 = list[0].HEmpID2;//鎿嶄綔鍛�2ID
+                    long HEmpID3 = list[0].HEmpID3;//鎿嶄綔鍛�3ID
+                    long HEmpID4 = list[0].HEmpID4;//鎿嶄綔鍛�4ID
+                    long HEmpID5 = list[0].HEmpID5;//鎿嶄綔鍛�5ID
+                    double HDSQty = list[0].HDSQty;//鎶樺集鍒�鏁�
+                    double HChongQty = list[0].HChongQty;//NCT鍐叉鏁�
+                    double HPriceRate = list[0].HPriceRate;//绯绘暟
+                    double HWorkTimes = list[0].HWorkTimes;//宸ユ椂
+                    long HQCCheckID = list[0].HQCCheckID;//妫�楠屽憳ID
+                    long HPRDOrgID = list[0].HPRDOrgID;//缁勭粐ID
+
+                    var num = 0;
+
+                    //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�                   
+                    if (OperationType == 1)//鏂板
+                    {
+                        num = 1;
+                        if (!AllowbillNo(HBillNo))
+                        {
+                            oCN.RollBack();
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        oCN.RunProc("Insert Into Sc_StationOutBillMain " +
+                        "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate,HMouldNum" +
+                        ",HYear,HPeriod,HRemark,HSourceName,HPieceQty,HWasterQty,HPlanPieceQty,HBadPNL" +
+                        ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" +
+                        ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationOutTime,HSourceID,HPayProcID" +
+                        ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate,HSourceID2,HSourceID3,HSourceID4,HSourceID5" +
+                        ",HSupID,HQty,HPrice,HMoney,HBadCount,HCenterID,HProcNo,HOrderProcNO,HSourceNameList" +
+                        ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" +
+                        ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" +
+                        ") " +
+                        " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" +
+                        "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL +
+                        "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID +
+                        ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + "," + HPayProcID +
+                        "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + "," + HSourceID2 + "," + HSourceID3 + "," + HSourceID4 + "," + HSourceID5 +
+                        "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HBadCount + "," + HCenterID + "," + HProcNo + ",'" + HOrderProcNO + "'" + ",'" + HSourceNameList + "'" +
+                        "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) +
+                        "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID +
+                        ") ");
+                    }
+                    else
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //涓昏〃
+
+                    ds = oCN.RunProcReturn("exec h_p_MES_StationOutBill_QtyCtrl " + HInterID + "", "h_p_MES_StationOutBill_QtyCtrl");
+                    if (ds == null)
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍒ゆ柇鏁伴噺澶辫触锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍒ゆ柇鏁伴噺澶辫触锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2")
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏁伴噺鎺у埗," + ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + "," + num + "");
+                    oCN.RunProc("exec h_p_Mes_ProcessExchangeChangeStatus  " + HInterID + " ");
+                    oCN.RunProc("exec h_p_Mes_StationOutBillBackBarCode  " + HInterID + " ");
+                    //鍒ゆ柇鏄惁鏄� 鏈亾宸ュ簭 
+                    ds1 = oCN.RunProcReturn(" select HLastProc,HFstProc from Sc_ProcessExchangeBillMain a  " +
+                                        " inner join Sc_ProcessExchangeBillSub b on a.HInterID=b.HInterID  " +
+                                        " Where a.HInterID=" + HProcExchInterID + " and b.HEntryID=" + HProcExchEntryID + " ", "Sc_ProcessExchangeBillMain");
+                    //鍒ゆ柇鏄惁鏄柊澧�
+                    if (OperationType == 1)
+                    {
+                        //鍒ゆ柇鏄惁鏄湯閬撳伐搴�
+                        if (ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HLastProc"]) == "鏄�")
+                        {
+                            //鑾峰彇绯荤粺鍙傛暟
+                            string Return = "";
+                            if (oSystemParameter.ShowBill(ref Return))
+                            {
+                                //鍒ゆ柇鏈亾 鐢熶骇姹囨姤姹囨姤 鏄惁鍕鹃��
+                                if (oSystemParameter.omodel.MES_StationOutBill_LastAutoICMOReport == "Y") //绯荤粺鍙傛暟   
+                                {
+                                    //鍚屾鐢熶骇姹囨姤鍗�
+                                    objJsonResult = (json)SaveICMOReportBill(HInterID.ToString(), user, HBillNo, HPRDOrgID.ToString());
+                                    if (objJsonResult.count == 0)
+                                    {
+                                        oCN.RollBack();
+                                        objJsonResult.code = "0";
+                                        objJsonResult.count = 0;
+                                        objJsonResult.Message = objJsonResult.Message;
+                                        objJsonResult.data = null;
+                                        return objJsonResult;
+                                    }
+                                }
+                                //鍒ゆ柇鏈亾 鐢熶骇鍏ュ簱 鏄惁鍕鹃��
+                                else if (oSystemParameter.omodel.MES_StationOutBill_AutoStockIn == "Y") //绯荤粺鍙傛暟   
+                                {
+                                    //鍚屾鐢熶骇鍏ュ簱鍗�
+                                    objJsonResult = (json)SaveProcdutInBill(HBillNo);
+                                    if (objJsonResult.count == 0)
+                                    {
+                                        oCN.RollBack();
+                                        objJsonResult.code = "0";
+                                        objJsonResult.count = 0;
+                                        objJsonResult.Message = objJsonResult.Message;
+                                        objJsonResult.data = null;
+                                        return objJsonResult;
+                                    }
+                                }
+
+                            }
+                        }
+                    }
+                }
+                
+                oCN.Commit();
+                string sReturn = "";
+                if (oSystemParameter.ShowBill(ref sReturn) == true)
+                {
+                    if (oSystemParameter.omodel.MES_StationOutBill_SaveAutoAddnew == "Y") //绯荤粺鍙傛暟  鑷姩瀹℃牳 
+                    {
+                        objJsonResult.Verify = "Y";
+                    }
+                    else
+                    {
+                        objJsonResult.Verify = "N";
+                    }
+                }
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 鏈亾宸ュ簭 鐢熶骇姹囨姤
         public object SaveICMOReportBill(string InterID, string user, string BillNo, string OrganizationID)
         {
@@ -1214,9 +1472,34 @@
                     return objJsonResult;
                 }
 
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "宸ュ簭姹囨姤鍗曞垪琛�");
+
+                        if (sql_splice == "娌℃湁鏌ヨ鍒扮浉鍏崇敤鎴蜂俊鎭�")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "娌℃湁鏌ヨ鍒扮浉鍏崇敤鎴蜂俊鎭�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            sWhere += sql_splice;
+                        }
+                    }
+                }
+
                 if (sWhere == null || sWhere.Equals(""))
                 {
-                    ds = oCN.RunProcReturn("select * from h_v_MES_StationOutBillList  order by hmainid desc", "h_v_MES_StationOutBillList");
+                    ds = oCN.RunProcReturn("select * from h_v_MES_StationOutBillList where 1 = 1" + sWhere + "order by hmainid desc", "h_v_MES_StationOutBillList");
                 }
                 else
                 {
diff --git a/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs b/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs
index 5bdd5a7..1e9ae5b 100644
--- a/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs
+++ b/WebAPI/Controllers/CJGL/Mes_OrderProcFlowAllReportController.cs
@@ -18,6 +18,7 @@
         private json objJsonResult = new json();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         DataSet ds;
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
 
         #region 杞﹂棿宸ュ簭鍏ㄧ▼璺熻釜鎶ヨ〃 鏌ヨ
         [Route("Mes_OrderProcFlowAllReport/OrderProcFlowAllReportList")]
@@ -172,10 +173,37 @@
         #region 璁′欢宸ヨ祫鎶ヨ〃 鏌ヨ
         [Route("Mes_OrderProcFlowAllReport/EmployeePiecePayReport")]
         [HttpGet]
-        public object EmployeePiecePayReport(string sWhere)
+        public object EmployeePiecePayReport(string sWhere, string user)
         {
             try
             {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "璁′欢宸ヨ祫鎶ヨ〃");
+
+                        if (sql_splice != "")
+                        {
+                            sWhere += sql_splice;
+                        }
+                        else
+                        {
+                            string czymc = "";
+                            ds = oCN.RunProcReturn("select * from gy_czygl where Czymc='" + user + "'", "gy_czygl");
+                            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                            {
+                                czymc += Convert.ToString(ds.Tables[0].Rows[i]["czymc"]) + ",";
+                            }
+                            sWhere += ",''";
+                        }
+                    }
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
 
                 ds = oCN.RunProcReturn("exec h_p_Sc_EmployeePiecePayReport " + sWhere + "", "h_p_Sc_EmployeePiecePayReport");
@@ -210,10 +238,37 @@
         #region 璁′欢宸ヨ祫姹囨�绘姤琛� 鏌ヨ
         [Route("Mes_OrderProcFlowAllReport/EmployeePiecePaySumReport")]
         [HttpGet]
-        public object EmployeePiecePaySumReport(string sWhere)
+        public object EmployeePiecePaySumReport(string sWhere, string user)
         {
             try
             {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "璁′欢宸ヨ祫姹囨�绘姤琛�");
+
+                        if (sql_splice != "")
+                        {
+                            sWhere += sql_splice;
+                        }
+                        else
+                        {
+                            string czymc = "";
+                            ds = oCN.RunProcReturn("select * from gy_czygl where Czymc='" + user + "'", "gy_czygl");
+                            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                            {
+                                czymc += Convert.ToString(ds.Tables[0].Rows[i]["czymc"]) + ",";
+                            }
+                            sWhere += ",''";
+                        }
+                    }
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
 
                 ds = oCN.RunProcReturn("exec h_p_Sc_EmployeePiecePaySumReport " + sWhere + "", "h_p_Sc_EmployeePiecePaySumReport");
@@ -248,10 +303,37 @@
         #region 宸ヨ祫姹囨姤鏃ユ姤琛� 鏌ヨ
         [Route("Mes_OrderProcFlowAllReport/EmployeePieceWorkReport")]
         [HttpGet]
-        public object EmployeePieceWorkReport(string sWhere)
+        public object EmployeePieceWorkReport(string sWhere, string user)
         {
             try
             {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "宸ュ簭姹囨姤鏃ユ姤琛�");
+
+                        if (sql_splice != "")
+                        {
+                            sWhere += sql_splice;
+                        }
+                        else
+                        {
+                            string czymc = "";
+                            ds = oCN.RunProcReturn("select * from gy_czygl where Czymc='" + user + "'", "gy_czygl");
+                            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                            {
+                                czymc += Convert.ToString(ds.Tables[0].Rows[i]["czymc"]) + ",";
+                            }
+                            sWhere += ",''";
+                        }
+                    }
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
 
                 ds = oCN.RunProcReturn("exec h_p_Sc_EmployeePieceWorkReport " + sWhere + "", "h_p_Sc_EmployeePieceWorkReport");
@@ -286,10 +368,37 @@
         #region 鐢熶骇杞﹂棿宸ュ簭鎶ヨ〃 鏌ヨ
         [Route("Mes_OrderProcFlowAllReport/WorkShopProcessWIPReport")]
         [HttpGet]
-        public object WorkShopProcessWIPReport(string sWhere)
+        public object WorkShopProcessWIPReport(string sWhere,string user)
         {
             try
             {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "鐢熶骇杞﹂棿宸ュ簭鎶ヨ〃");
+
+                        if(sql_splice != "")
+                        {
+                            sWhere += sql_splice;
+                        }
+                        else
+                        {
+                            string czymc = "";
+                            ds = oCN.RunProcReturn("select * from gy_czygl where Czymc='" + user + "'", "gy_czygl");
+                            for(int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                            {
+                                czymc += Convert.ToString(ds.Tables[0].Rows[i]["czymc"])+",";
+                            }
+                            sWhere += ",''";
+                        }                        
+                    }
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
 
                 ds = oCN.RunProcReturn("exec h_p_Sc_WorkShopProcessWIPReport " + sWhere + "", "h_p_Sc_WorkShopProcessWIPReport");
@@ -324,10 +433,37 @@
         #region 宸ュ簭鍦ㄥ埗鍝佹姤琛� 鏌ヨ
         [Route("Mes_OrderProcFlowAllReport/WorkShopProcessWIPSumReport")]
         [HttpGet]
-        public object WorkShopProcessWIPSumReport(string sWhere)
+        public object WorkShopProcessWIPSumReport(string sWhere, string user)
         {
             try
             {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "宸ュ簭鍦ㄥ埗鍝佹姤琛�");
+
+                        if (sql_splice != "")
+                        {
+                            sWhere += sql_splice;
+                        }
+                        else
+                        {
+                            string czymc = "";
+                            ds = oCN.RunProcReturn("select * from gy_czygl where Czymc='" + user + "'", "gy_czygl");
+                            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                            {
+                                czymc += Convert.ToString(ds.Tables[0].Rows[i]["czymc"]) + ",";
+                            }
+                            sWhere += ",''";
+                        }
+                    }
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
 
                 ds = oCN.RunProcReturn("exec h_p_Sc_WorkShopProcessWIPSumReport " + sWhere + "", "h_p_Sc_WorkShopProcessWIPSumReport");
diff --git a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
index 2afdfbc..88dac64 100644
--- a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
+++ b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
@@ -33,6 +33,9 @@
         public string BillType = "3301";
         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
 
+        string user_LongShan = "";
+        string HName_LongShan = "";
+
         #region 鏈煡
         /// <summary>
         /// 鏈煡
@@ -126,6 +129,7 @@
             int OperationType = int.Parse(sArray[2].ToString());//鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
             string user = sArray[3].ToString();//鐢ㄦ埛鍚�
             string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
+            user_LongShan = sArray[3].ToString();//鐢ㄦ埛鍚�
             try
             {
                 //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
@@ -173,8 +177,9 @@
                 string HMaterTexture = mainList[0].HMaterTexture;//鏉愯川
                 string HProductNum = mainList[0].HProductNum;//鎴愬搧缂栧彿
                 string HVerNum = mainList[0].HVerNum;//鐗堟湰
-                int IsProNo = mainList[0].IsProNo;//鏄惁杞伐搴�
-              
+                int IsProNo = mainList[0].IsProNo;//鏄惁杞伐搴�                     
+                HName_LongShan = mainList[0].HName;//宸ヨ壓璺嚎鍚嶇О
+
                 if (OperationType == 2)
                 {
                     ds = oCN.RunProcReturn("select * from h_v_Gy_RoutingBillList where  鍗曟嵁鍙�='" + HBillNo + "'", "h_v_Gy_RoutingBillList");
@@ -333,6 +338,8 @@
         {
             List<Gy_RoutingBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_RoutingBillSub>>(msg3);
             int i = 0;
+            string Ret = "";
+            oSystemParameter.ShowBill(ref Ret);
             foreach (Gy_RoutingBillSub oSub in DetailColl)
             {
                 i++;
@@ -344,32 +351,71 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
+                
+                //濡傛灉宸ヤ环涓�0锛屽垯宸ヤ环瀛楁涓嶅仛涓哄繀濉瓧娈�
+                if (oSub.HProcPrice == 0 && oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                {
+                    oCN.RunProc("Insert into Gy_RoutingBillSub " +
+                    "(HInterID,HEntryID,HProcID,HProcNO,HSupID,HSupFlag" +
+                    ",HWorkQty,HCenterID,HTimeUnit,HUnitTime" +
+                    ",HReadyTime,HQueueTime,HMoveTime" +
+                    ",HCloseMan,HCloseType,HRemark,HProcType,HNextProcFlag,HFlowProc" +
+                    ",HFixPrice,HBadPrice,HWasterPrice,HStdFlag,HBeginDayQty,HBeginFixQty" +
+                    ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HAutoTrunFlag" +
+                    ",HFixWorkDays,HTrunWorkDays,HReadyTimes,HICMOReadyTimes,HSubStdEmpQty,HSubCanUseSourceQty" +
+                    ",HProcID_S,HCenterID_S,HWorkQty_S,HSubStdEmpQty_S,HMouldNo,HChangeMould" +
+                    ",HPackStd,HPack,HPutArea,HMyWorkDays,HMyFixWorkDays,HPassRate" +
+                    ",HTechnologyParameter,HPicNum,HProcCheckNote" +
+                    ",HOverRate,HProcWorkNum,HBadWHID,HWasterWHID, HWHID " +
+                    ") values("
+                    + HInterID + "," + i + "," + oSub.HProcID.ToString() + ",'" + oSub.HProcNo + "'," + oSub.HSupID.ToString() + "," + Convert.ToString(oSub.HSupFlag ? 1 : 0) + "" +
+                    "," + oSub.HWorkQty.ToString() + "," + oSub.HCenterID.ToString() + ",'" + oSub.HTimeUnit.ToString() + "'," + oSub.HUnitTime.ToString() +
+                    "," + oSub.HReadyTime.ToString() + "," + oSub.HQueueTime.ToString() + "," + oSub.HMoveTime.ToString() +
+                    ",'" + oSub.HCloseMan + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "','" + oSub.HProcType + "'," + Convert.ToString(oSub.HNextProcFlag ? 1 : 0) + "," + Convert.ToString(oSub.HFlowProc ? 1 : 0) +
+                    "," + oSub.HFixPrice.ToString() + "," + oSub.HBadPrice.ToString() + "," + oSub.HWasterPrice.ToString() + "," + Convert.ToString(oSub.HStdFlag ? 1 : 0) + "," + oSub.HBeginDayQty.ToString() + "," + oSub.HBeginFixQty.ToString() +
+                    "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + "," + Convert.ToString(oSub.HAutoTrunFlag ? 1 : 0) +
+                   "," + oSub.HFixWorkDays.ToString() + "," + oSub.HTrunWorkDays.ToString() + "," + oSub.HReadyTimes.ToString() + "," + oSub.HICMOReadyTimes.ToString() + "," + oSub.HSubStdEmpQty.ToString() + "," + oSub.HSubCanUseSourceQty.ToString() +
+                   "," + oSub.HProcID_S.ToString() + "," + oSub.HCenterID_S.ToString() + "," + oSub.HWorkQty_S.ToString() + ", " + oSub.HSubStdEmpQty_S.ToString() + ",'" + oSub.HMouldNo + "'," + oSub.HChangeMould.ToString() +
+                   ",'" + oSub.HPackStd + "','" + oSub.HPack + "','" + oSub.HPutArea + "'," + oSub.HMyWorkDays.ToString() + "," + oSub.HMyFixWorkDays.ToString() + "," + oSub.HPassRate.ToString() +
+                   ",'" + oSub.HTechnologyParameter.ToString() + "','" + oSub.HPicNum.ToString() + "','" + oSub.HProcCheckNote.ToString() +
+                   "', " + oSub.HOverRate.ToString() + ",'" + oSub.HProcWorkNum.ToString() + "'," + oSub.HBadWHID.ToString() + "," + oSub.HWasterWHID.ToString() + "," + oSub.HWHID.ToString() +
+                    ") ");
+                }
+                else
+                {
+                    oCN.RunProc("Insert into Gy_RoutingBillSub " +
+                    "(HInterID,HEntryID,HProcID,HProcNO,HSupID,HSupFlag" +
+                    ",HWorkQty,HCenterID,HTimeUnit,HUnitTime" +
+                    ",HReadyTime,HQueueTime,HMoveTime" +
+                    ",HCloseMan,HCloseType,HRemark,HProcType,HNextProcFlag,HFlowProc" +
+                    ",HFixPrice,HProcPrice,HBadPrice,HWasterPrice,HStdFlag,HBeginDayQty,HBeginFixQty" +
+                    ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HAutoTrunFlag" +
+                    ",HFixWorkDays,HTrunWorkDays,HReadyTimes,HICMOReadyTimes,HSubStdEmpQty,HSubCanUseSourceQty" +
+                    ",HProcID_S,HCenterID_S,HWorkQty_S,HSubStdEmpQty_S,HMouldNo,HChangeMould" +
+                    ",HPackStd,HPack,HPutArea,HMyWorkDays,HMyFixWorkDays,HPassRate" +
+                    ",HTechnologyParameter,HPicNum,HProcCheckNote" +
+                    ",HOverRate,HProcWorkNum,HBadWHID,HWasterWHID, HWHID " +
+                    ") values("
+                    + HInterID + "," + i + "," + oSub.HProcID.ToString() + ",'" + oSub.HProcNo + "'," + oSub.HSupID.ToString() + "," + Convert.ToString(oSub.HSupFlag ? 1 : 0) + "" +
+                    "," + oSub.HWorkQty.ToString() + "," + oSub.HCenterID.ToString() + ",'" + oSub.HTimeUnit.ToString() + "'," + oSub.HUnitTime.ToString() +
+                    "," + oSub.HReadyTime.ToString() + "," + oSub.HQueueTime.ToString() + "," + oSub.HMoveTime.ToString() +
+                    ",'" + oSub.HCloseMan + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "','" + oSub.HProcType + "'," + Convert.ToString(oSub.HNextProcFlag ? 1 : 0) + "," + Convert.ToString(oSub.HFlowProc ? 1 : 0) +
+                    "," + oSub.HFixPrice.ToString() + "," + oSub.HProcPrice.ToString() + "," + oSub.HBadPrice.ToString() + "," + oSub.HWasterPrice.ToString() + "," + Convert.ToString(oSub.HStdFlag ? 1 : 0) + "," + oSub.HBeginDayQty.ToString() + "," + oSub.HBeginFixQty.ToString() +
+                    "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + "," + Convert.ToString(oSub.HAutoTrunFlag ? 1 : 0) +
+                   "," + oSub.HFixWorkDays.ToString() + "," + oSub.HTrunWorkDays.ToString() + "," + oSub.HReadyTimes.ToString() + "," + oSub.HICMOReadyTimes.ToString() + "," + oSub.HSubStdEmpQty.ToString() + "," + oSub.HSubCanUseSourceQty.ToString() +
+                   "," + oSub.HProcID_S.ToString() + "," + oSub.HCenterID_S.ToString() + "," + oSub.HWorkQty_S.ToString() + ", " + oSub.HSubStdEmpQty_S.ToString() + ",'" + oSub.HMouldNo + "'," + oSub.HChangeMould.ToString() +
+                   ",'" + oSub.HPackStd + "','" + oSub.HPack + "','" + oSub.HPutArea + "'," + oSub.HMyWorkDays.ToString() + "," + oSub.HMyFixWorkDays.ToString() + "," + oSub.HPassRate.ToString() +
+                   ",'" + oSub.HTechnologyParameter.ToString() + "','" + oSub.HPicNum.ToString() + "','" + oSub.HProcCheckNote.ToString() +
+                   "', " + oSub.HOverRate.ToString() + ",'" + oSub.HProcWorkNum.ToString() + "'," + oSub.HBadWHID.ToString() + "," + oSub.HWasterWHID.ToString() + "," + oSub.HWHID.ToString() +
+                    ") ");
 
-                oCN.RunProc("Insert into Gy_RoutingBillSub " +
-                "(HInterID,HEntryID,HProcID,HProcNO,HSupID,HSupFlag" +
-                ",HWorkQty,HCenterID,HTimeUnit,HUnitTime" +
-                ",HReadyTime,HQueueTime,HMoveTime" +
-                ",HCloseMan,HCloseType,HRemark,HProcType,HNextProcFlag,HFlowProc" +
-                ",HFixPrice,HProcPrice,HBadPrice,HWasterPrice,HStdFlag,HBeginDayQty,HBeginFixQty" +
-                ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HAutoTrunFlag" +
-                ",HFixWorkDays,HTrunWorkDays,HReadyTimes,HICMOReadyTimes,HSubStdEmpQty,HSubCanUseSourceQty" +
-                ",HProcID_S,HCenterID_S,HWorkQty_S,HSubStdEmpQty_S,HMouldNo,HChangeMould" +
-                ",HPackStd,HPack,HPutArea,HMyWorkDays,HMyFixWorkDays,HPassRate" +
-                ",HTechnologyParameter,HPicNum,HProcCheckNote" +
-                ",HOverRate,HProcWorkNum,HBadWHID,HWasterWHID, HWHID " +
-                ") values("
-                + HInterID + "," + i + "," + oSub.HProcID.ToString() + ",'" + oSub.HProcNo + "'," + oSub.HSupID.ToString() + "," + Convert.ToString(oSub.HSupFlag ? 1 : 0) + "" +
-                "," + oSub.HWorkQty.ToString() + "," + oSub.HCenterID.ToString() + ",'" + oSub.HTimeUnit.ToString() + "'," + oSub.HUnitTime.ToString() +
-                "," + oSub.HReadyTime.ToString() + "," + oSub.HQueueTime.ToString() + "," + oSub.HMoveTime.ToString() +
-                ",'" + oSub.HCloseMan + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "','" + oSub.HProcType + "'," + Convert.ToString(oSub.HNextProcFlag ? 1 : 0) + "," + Convert.ToString(oSub.HFlowProc ? 1 : 0) +
-                "," + oSub.HFixPrice.ToString() + "," + oSub.HProcPrice.ToString() + "," + oSub.HBadPrice.ToString() + "," + oSub.HWasterPrice.ToString() + "," + Convert.ToString(oSub.HStdFlag ? 1 : 0) + "," + oSub.HBeginDayQty.ToString() + "," + oSub.HBeginFixQty.ToString() +
-                "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + "," + Convert.ToString(oSub.HAutoTrunFlag ? 1 : 0) +
-               "," + oSub.HFixWorkDays.ToString() + "," + oSub.HTrunWorkDays.ToString() + "," + oSub.HReadyTimes.ToString() + "," + oSub.HICMOReadyTimes.ToString() + "," + oSub.HSubStdEmpQty.ToString() + "," + oSub.HSubCanUseSourceQty.ToString() +
-               "," + oSub.HProcID_S.ToString() + "," + oSub.HCenterID_S.ToString() + "," + oSub.HWorkQty_S.ToString() + ", " + oSub.HSubStdEmpQty_S.ToString() + ",'" + oSub.HMouldNo + "'," + oSub.HChangeMould.ToString() +
-               ",'" + oSub.HPackStd + "','" + oSub.HPack + "','" + oSub.HPutArea + "'," + oSub.HMyWorkDays.ToString() + "," + oSub.HMyFixWorkDays.ToString() + "," + oSub.HPassRate.ToString() +
-               ",'" + oSub.HTechnologyParameter.ToString() + "','" + oSub.HPicNum.ToString() + "','" + oSub.HProcCheckNote.ToString() +
-               "', " + oSub.HOverRate.ToString() + ",'" + oSub.HProcWorkNum.ToString() + "'," + oSub.HBadWHID.ToString() + "," + oSub.HWasterWHID.ToString() + "," + oSub.HWHID.ToString() +
-                ") ");
+                    if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
+                    {
+                        string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
+
+                        oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user_LongShan + "','" + HComputerName + "','" + "Gy_RoutingBill_Edit,宸ヨ壓璺嚎_缂栬緫" + "','LMES绯荤粺-宸ヨ壓璺嚎缂栬緫妯″潡','" + DBUtility.ClsPub.IPAddress + "','" + "淇敼浜嗗伐鑹鸿矾绾匡細" + HName_LongShan + " 宸ュ簭鍙凤細" + oSub.HProcNo + " 宸ヤ环涓猴細" + oSub.HProcPrice.ToString() + "'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    }
+                }                
             }
 
             objJsonResult.code = "1";
diff --git a/WebAPI/Controllers/LMESController.cs b/WebAPI/Controllers/LMESController.cs
index 97dfadb..cf9b9bf 100644
--- a/WebAPI/Controllers/LMESController.cs
+++ b/WebAPI/Controllers/LMESController.cs
@@ -17,6 +17,7 @@
 
         private json objJsonResult = new json();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
         /// <summary>
         /// 杩斿洖杩涚珯鎵弿鍒楄〃|宸ュ簭杩涚珯鎺ユ敹鍗曞垪琛� 
         ///鍙傛暟锛歴tring sql銆�
@@ -70,6 +71,20 @@
                     objJsonResult.Message = "鏃犳煡璇㈡潈闄�!";
                     objJsonResult.data = null;
                     return objJsonResult;
+                }
+
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "宸ュ簭娲惧伐鍗曞垪琛�");
+
+                        sWhere += sql_splice;                       
+                    }
                 }
 
                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
@@ -153,6 +168,21 @@
                 //    objJsonResult.data = null;
                 //    return objJsonResult;
                 //}
+
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "宸ュ簭娲惧伐鍗曟槑缁嗗垪琛�");
+
+                        sWhere += sql_splice;                        
+                    }
+                }
+
                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                 ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeIssueBillQuery where 1 = 1 " + sWhere + " order by hmainid desc ", "h_v_Sc_ProcessExchangeIssueBillQuery");
                 objJsonResult.code = "1";
@@ -374,10 +404,24 @@
                     return objJsonResult;
                 }
 
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user,"宸ヨ壓璺嚎鍒楄〃");
+
+                        sWhere += sql_splice;                        
+                    }
+                }               
+
                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                 if (sWhere == null || sWhere.Equals(""))
                 {
-                    ds = oCN.RunProcReturn("select top 1000 * from h_v_Gy_RoutingBillList order by hmainid desc", "h_v_Gy_RoutingBillList");
+                    ds = oCN.RunProcReturn("select * from h_v_Gy_RoutingBillList where 1 = 1" + sWhere + " order by hmainid desc", "h_v_Gy_RoutingBillList");
                 }
                 else
                 {
@@ -397,6 +441,100 @@
             return GetObjectJson(ds);
         }
 
+        #endregion       
+
+        #region 鏌ョ湅宸ヨ壓璺嚎鍒楄〃宸ヤ环鏉冮檺
+        /// <summary>
+        /// 鍒ゆ柇鏈夋棤鏌ョ湅宸ヤ环鏉冮檺
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Web/CheckProcPrice")]
+        [HttpGet]
+        public object CheckProcPrice(string UserName)
+        {
+            try
+            {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鍒ゆ柇鏄惁鏈夋煡璇㈠伐浠锋潈闄�
+                        if (!DBUtility.ClsPub.Security_Log("Gy_RoutingBill_CheckProcPrice", 1, false, UserName))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏃犳煡鐪嬪伐浠锋潈闄�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏌ョ湅鎴愬姛锛�";
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "寮傚父锛�" + e.Message;
+                objJsonResult.data = null;
+                return objJsonResult; ;
+            }
+        }
+        #endregion
+
+        #region 淇敼宸ヨ壓璺嚎宸ヤ环鏉冮檺
+        /// <summary>
+        /// 鍒ゆ柇鏈夋棤淇敼宸ヤ环鏉冮檺
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Web/EditProcPrice")]
+        [HttpGet]
+        public object EditProcPrice(string UserName)
+        {
+            try
+            {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鍒ゆ柇鏄惁鏈夋煡璇㈠伐浠锋潈闄�
+                        if (!DBUtility.ClsPub.Security_Log("Gy_RoutingBill_EditProcPrice", 1, false, UserName))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鏃犱慨鏀瑰伐浠锋潈闄�!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "淇敼鎴愬姛锛�";
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "寮傚父锛�" + e.Message;
+                objJsonResult.data = null;
+                return objJsonResult; ;
+            }
+        }
         #endregion
 
         #region 宸ヨ壓璺嚎  鍒犻櫎
@@ -630,6 +768,20 @@
                     return objJsonResult;
                 }
 
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓�
+                        string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "鐢熶骇璁㈠崟鍒楄〃");
+
+                        sWhere += sql_splice;
+                    }
+                }
+
                 ds = oCN.RunProcReturn("select * from h_v_IF_ICMOBillList where 1 = 1 " + sWhere + " order by 鍒跺崟鏃ユ湡 desc,鍗曟嵁鍙� desc", "h_v_IF_ICMOBillList");
             }
             catch (Exception e)
diff --git a/WebAPI/Controllers/Open_PrintTemController.cs b/WebAPI/Controllers/Open_PrintTemController.cs
index 190a5b1..12b2343 100644
--- a/WebAPI/Controllers/Open_PrintTemController.cs
+++ b/WebAPI/Controllers/Open_PrintTemController.cs
@@ -138,5 +138,89 @@
 
         }
         #endregion
+
+        #region [璁剧疆榛樿鎵撳嵃妯℃澘]
+        /// <summary>
+        /// 璁剧疆榛樿鍗版ā鏉�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Open_PrintTem/DefaultOpenTmp")]
+        [HttpGet]
+        public object DefaultOpenTmp(string HNumber,string HName)
+        {
+            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+            try
+            {
+                oCn.BeginTran();
+                //鍏堟妸姝ゆā鍧椾笅鐨勬ā鏉块粯璁ゆā鏉挎爣璁伴兘鍏抽棴
+                oCn.RunProc("update SRM_OpenTmp set HStdFlag = 0 where HNumber='" + HNumber + "'", ref DBUtility.ClsPub.sExeReturnInfo);
+                //鏇存柊褰撳墠妯℃澘涓洪粯璁ゆā鏉�
+                oCn.RunProc("update SRM_OpenTmp set HStdFlag = 1 where HNumber='" + HNumber + "' and HName='"+ HName + "'", ref DBUtility.ClsPub.sExeReturnInfo);
+                oCn.Commit();
+                objjson.code = "0";
+                objjson.count = 1;
+                objjson.Message = "璁剧疆鎴愬姛!";
+                objjson.data = null;
+                return objjson;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                objjson.code = "0";
+                objjson.count = 0;
+                objjson.Message = "璁剧疆澶辫触" + e.ToString();
+                objjson.data = null;
+                return objjson;
+            }
+
+        }
+        #endregion
+
+        #region [鑾峰彇榛樿鎵撳嵃妯℃澘]
+        /// <summary>
+        /// 鑾峰彇鎵撳嵃妯℃澘鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        [Route("Open_PrintTem/GetDefaultOpenTmp_Json")]
+        [HttpGet]
+        public object GetDefaultOpenTmp_Json(string HNumber)
+        {
+            sWhere = " Where 榛樿鏍囪=1 ";
+            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
+            if (HNumber != "")
+            {
+                sWhere = sWhere + " and ( HNumber = '" + HNumber + "') ";
+            }
+            try
+            {
+                ds = webserver.GetOpenTmpList(sWhere, ref DBUtility.ClsPub.sErrInfo);
+                if (ds == null || ds.Tables[0].Rows.Count <= 0)
+                {
+                    objjson.code = "0";
+                    objjson.count = 0;
+                    objjson.Message = "鑾峰彇澶辫触,娌℃湁璁剧疆榛樿妯℃澘" + DBUtility.ClsPub.sErrInfo;
+                    objjson.data = null;
+                    return objjson;
+                }
+                else
+                {
+                    objjson.code = "0";
+                    objjson.count = 1;
+                    objjson.Message = "鑾峰彇鎴愬姛!";
+                    objjson.data = ds.Tables[0];
+                    return objjson;
+                }
+            }
+            catch (Exception ex)
+            {
+
+                objjson.code = "0";
+                objjson.count = 0;
+                objjson.Message = "寮傚父" + ex.ToString();
+                objjson.data = null;
+                return objjson;
+            }
+        }
+        #endregion
     }
 }
diff --git a/WebAPI/Controllers/POStockInBillController.cs b/WebAPI/Controllers/POStockInBillController.cs
index d5acaaa..467a4e4 100644
--- a/WebAPI/Controllers/POStockInBillController.cs
+++ b/WebAPI/Controllers/POStockInBillController.cs
@@ -936,7 +936,7 @@
                     {
                 '@'
                     });
-                    string str = array[0];
+                    string str = array[0]; //鐗╂枡浠g爜
                     long num = (long)ClsPub.isInt(array[4]);
                     string text2 = array[6];
                     DateTime dateTime = ClsPub.isDate(array[3]);
@@ -1079,12 +1079,12 @@
                     bool flag6 = text7.Contains("W") || text7.Contains("N");
                     if (flag6)
                     {
-                        string text8 = sBarCodeNew.Substring(0, 10);//鍟嗗搧鐮�
+                        string text8 = sBarCodeNew.Substring(0, 10);//鍟嗗搧鐮�    鍟嗗搧鐮�+鐗╂枡浠g爜+鐢熶骇鏃ユ湡+鎵规+澶辨晥鏃ユ湡+涓�浣嶅瓧姣�+涓変綅鏁板瓧
                         string str4 = sBarCodeNew.Substring(10, 10);//鐗╂枡浠g爜
                         string text9 = "20" + sBarCodeNew.Substring(20, 6);
-                        long num8 = (long)ClsPub.isInt(text9.Substring(0, 4));
-                        long num9 = (long)ClsPub.isInt(text9.Substring(4, 2));
-                        long num10 = (long)ClsPub.isInt(text9.Substring(6, 2));
+                        long num8 = (long)ClsPub.isInt(text9.Substring(0, 4));  //骞�
+                        long num9 = (long)ClsPub.isInt(text9.Substring(4, 2));  //鏈�
+                        long num10 = (long)ClsPub.isInt(text9.Substring(6, 2)); //鏃�
                         long num11 = (long)ClsPub.isInt(sBarCodeNew.Remove(0, sBarCodeNew.Length - 3));//鍚庝笁浣嶆案杩滈兘鏄暟瀛�
                         string text10 = sBarCodeNew.Remove(0, sBarCodeNew.Length - 10);//澶辨晥鏃ユ湡+涓�浣嶅瓧姣�+涓変綅鏁板瓧
                         string text11 = "20" + text10.Substring(0, 6);
@@ -1241,7 +1241,7 @@
                     }
                     else
                     {
-                        /*鍓嶅崄浣嶇墿鏂欎唬鐮侊紝鍚庡叚浣嶇敓鏁堟棩鏈燂紝鍊掓暟鍓嶄笁浣嶆槸鏁板瓧鍓嶅叚浣嶆槸澶辨晥鏃ユ湡  鎵瑰彿鏀逛负鍔ㄦ�佽幏鍙�*/
+                        /*鍓嶅崄浣嶇墿鏂欎唬鐮侊紝鍚庡叚浣嶇敓鏁堟棩鏈燂紝鍊掓暟鍓嶄笁浣嶆槸鏁板瓧鍓嶅叚浣嶆槸澶辨晥鏃ユ湡 */
                         string str6 = sBarCodeNew.Substring(0, 10);//鐗╂枡浠g爜
                         string text17 = "20" + sBarCodeNew.Substring(10, 6);
                         long num21 = (long)ClsPub.isInt(text17.Substring(0, 4));
@@ -1261,7 +1261,7 @@
                     "-",
                     num27.ToString()
                         }));
-                        string text20 = sBarCodeNew.Remove(0, 16); //SAE1300100230309 2303704250308010
+                        string text20 = sBarCodeNew.Remove(0, 16); //SAE1300100 230309 2303704 250308 010
                         string text21 = text20.Remove(text20.Length - 9 , 9); //SAE1300100230309 2303704 250308010
                          ClsCN clsCN3 = new ClsCN();
                         DataSet dataSet13 = clsCN3.RunProcReturn(" select HItemID,HName,HModel,HUnitID from Gy_Material where HNumber= '" + str6 + "' and  huseorgid = " + HOrgID.ToString(), "Gy_Material");
diff --git a/WebAPI/Controllers/WebAPIController.cs b/WebAPI/Controllers/WebAPIController.cs
index 028a6d9..b6fe672 100644
--- a/WebAPI/Controllers/WebAPIController.cs
+++ b/WebAPI/Controllers/WebAPIController.cs
@@ -26,6 +26,7 @@
         private json objjson = new json();
         private json objJsonResult = new json();
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
         //public static string sUrl = "http://183.129.128.86:9090/WEBS-WMSTest/WebService1.asmx";
         //  private POInStockBillServices oclscg_poinstockbillmain = new POInStockBillServices();
         /// <summary>
@@ -201,7 +202,7 @@
         public object GetUser(string UserName, string PassWord, string HOrgName)
         {
             try
-            {
+            {                              
                 DataSet ds = null;
                 ClsCN oCnLoc = new ClsCN();
                 DAL.ClsUser oUser = new DAL.ClsUser();
@@ -244,6 +245,49 @@
             }
         }
         /// <summary>
+        /// 鑿滃崟鏍�
+        /// </summary>
+        /// <returns></returns>
+        [Route("Web/MenuBar")]
+        [HttpGet]
+        public object MenuBar(string UserName)
+        {
+            try
+            {
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+                        if (!DBUtility.ClsPub.Security_Log("Xt_MenuBar_Unfold", 1, false, UserName))
+                        {
+                            objjson.code = "0";
+                            objjson.count = 0;
+                            objjson.Message = "鏃犲睍寮�鑿滃崟鏍忔潈闄�!";
+                            objjson.data = null;
+                            return objjson;
+                        }
+                    }
+                }                
+                objjson.code = "0";
+                objjson.count = 1;
+                objjson.Message = "灞曞紑鎴愬姛锛�";
+                objjson.data = 1;
+                return objjson;
+            }
+            catch (Exception e)
+            {
+                objjson.code = "0";
+                objjson.count = 0;
+                objjson.Message = "寮傚父锛�" + e.Message;
+                objjson.data = null;
+                return objjson; ;
+            }
+        }
+        /// <summary>
         /// 淇敼瀵嗙爜
         /// </summary>
         /// <param name="UserName"></param>
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 1e4977f..99a4535 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"
@@ -177,27 +177,27 @@
                     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)");
+                        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 "鐢熶骇鍏ュ簱鍗�":
                         tabname = "h_v_IF_ProductInBillList_Source";
diff --git a/WebAPI/ListModels.cs b/WebAPI/ListModels.cs
index b091113..c7536c8 100644
--- a/WebAPI/ListModels.cs
+++ b/WebAPI/ListModels.cs
@@ -2374,6 +2374,18 @@
         }
 
         /// <summary>
+        /// 鐢ㄦ埛宸ヤ綔涓績鍏崇郴淇℃伅琛ㄧ殑json
+        /// </summary>
+        /// <param name="jsonString"></param>
+        /// <returns></returns>
+        public List<Models.WorkCenter> getObjectByJson_WorkCenter(string jsonString)
+        {
+            jsonString = "[" + jsonString.ToString() + "]";
+            List<Models.WorkCenter> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.WorkCenter>>(jsonString);
+            return list;
+        }
+
+        /// <summary>
         /// 鐢ㄦ埛鑱屽憳鍏崇郴淇℃伅琛ㄧ殑json
         /// </summary>
         /// <param name="jsonString"></param>
diff --git a/WebAPI/Models/WorkCenter.cs b/WebAPI/Models/WorkCenter.cs
new file mode 100644
index 0000000..d67bbcf
--- /dev/null
+++ b/WebAPI/Models/WorkCenter.cs
@@ -0,0 +1,30 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace WebAPI.Models
+{
+    public class WorkCenter
+    {
+        public long HItemID { get; set; }
+        public string HNumber { get; set; }
+        public string HName { get; set; }
+        public string HShortNumber { get; set; }
+        public string HRemark { get; set; }
+        public string HUseFlag { get; set; }
+        public long HParentID { get; set; }
+        public string HBarCode { get; set; }
+        public long HSecManagerID { get; set; }
+        public long HCreateOrgID { get; set; }
+        public long HUseOrgID { get; set; }
+        public string HHelpCode { get; set; }
+        public string HCreator { get; set; }
+        public bool HStopflag { get; set; }
+        public Int64 HEmpID { get; set; }
+        public string HEmpName { get; set; }
+        public string HUpDater { get; set; }
+        public string HChecker { get; set; }
+        public string HDeleteMan { get; set; }
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/WebAPI.csproj b/WebAPI/WebAPI.csproj
index 7545308..fdfc679 100644
--- a/WebAPI/WebAPI.csproj
+++ b/WebAPI/WebAPI.csproj
@@ -660,6 +660,7 @@
     <Compile Include="Models\TechnologyParameter.cs" />
     <Compile Include="Models\TechnologyParameterUnit.cs" />
     <Compile Include="Models\TechParamByProc.cs" />
+    <Compile Include="Models\WorkCenter.cs" />
     <Compile Include="Models\Xt_CheckFlowMain.cs" />
     <Compile Include="Models\Xt_CheckFlowSub.cs" />
     <Compile Include="Models\Xt_CheckItem.cs" />
diff --git a/WebAPI/WebServer.cs b/WebAPI/WebServer.cs
index 430f1cc3..314ffe8 100644
--- a/WebAPI/WebServer.cs
+++ b/WebAPI/WebServer.cs
@@ -7992,6 +7992,22 @@
         }
         #endregion
 
+        #region [鑾峰彇榛樿鎵撳嵃妯℃澘]
+        /// <summary>
+        /// 榛樿鎵撳嵃妯℃澘
+        /// </summary>
+        /// <param name="sWhere"></param>
+        /// <param name="sErr"></param>
+        /// <returns></returns>
+        public DataSet GetDefaultOpenTmp(string sWhere, ref string sErr)
+        {
+            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+            DataSet ds = new DataSet();
+            ds = oCn.RunProcReturn("select * from h_v_IF_OpenTmpList " + sWhere, "h_v_IF_OpenTmpList");
+            return ds;
+        }
+        #endregion
+
         //杩斿洖鏉$爜涓存椂琛�
         /// <summary>
         /// 杩斿洖鏉$爜涓存椂琛�

--
Gitblit v1.9.1