From eb858e6be89e639a997d03deee816dc7970af248 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期四, 23 十月 2025 16:57:47 +0800
Subject: [PATCH] 调整 客户、供应商、物料、部门、仓库 基础资料 公有云 调用WEBAPI 同步方式

---
 WebAPI/Controllers/BaseSet/Gy_MaterialController.cs |  720 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 668 insertions(+), 52 deletions(-)

diff --git a/WebAPI/Controllers/BaseSet/Gy_MaterialController.cs b/WebAPI/Controllers/BaseSet/Gy_MaterialController.cs
index a7fd6f6..b440953 100644
--- a/WebAPI/Controllers/BaseSet/Gy_MaterialController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_MaterialController.cs
@@ -317,6 +317,33 @@
         }
         #endregion
 
+        #region 鑾峰彇杞﹂棿鍙�
+        [Route("Gy_Material/Get_HDepartment")]
+        [HttpGet]
+        public object Get_HDepartment()
+        {
+            try
+            {
+                DataSet oDs = new DataSet();
+                //==========
+                oDs = oCN.RunProcReturn("select top(20) HItemID , HName from Gy_Department", "Gy_Department");
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鑾峰彇鎴愬姛锛�";
+                objJsonResult.data = oDs.Tables[0];
+                return objJsonResult; ;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍒犻櫎澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         /// <summary>
         /// 鑾峰彇椤圭洰鍒楄〃
         /// </summary>
@@ -583,6 +610,18 @@
                 }
                 else
                 {
+                    //宸插鏍镐笉鍏佽淇敼
+                    DataSet dss;
+                    dss = oCN.RunProcReturn("select * from Gy_Material where HItemID=" + oBill.oModel.HItemID, "Gy_Material");
+                    //鍒ゆ柇鏄惁鍙紪杈�
+                    if (dss.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "姝ゅ崟鎹姸鎬佸凡缁忓鏍革紝涓嶅厑璁镐慨鏀癸紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
                     bResult = oBill.ModifyByID(oBill.oModel.HItemID);
                 }
                 if (bResult)
@@ -613,6 +652,320 @@
             }
         }
 
+        #region 淇濆瓨鐗╂枡_鎵归噺
+        /// <summary>
+        /// 淇濆瓨鐗╂枡
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Gy_Material/SaveGy_MaterialList_Batch")]
+        [HttpPost]
+        public object SaveGy_MaterialList_Batch([FromBody] JObject msg)
+        {
+            DataSet ds;
+            var _value = msg["msg"].ToString();
+            string msg3 = _value.ToString();
+            string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg1 = sArray[0].ToString();
+            string msg2 = sArray[1].ToString();
+            string msg_HUSEORGID = sArray[2].ToString();
+            bool bResult = false;
+            Int64 HItemID = 0;
+            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+            //缂栬緫鏉冮檺
+            if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Edit", 1, false, msg2))
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+            //鑾峰彇鏈�澶D鍊艰祴鍊�
+            DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_Material ", "Gy_Material");
+            if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
+            {
+                //HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
+                var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
+                maxid += 1;
+                HItemID = maxid;
+            }
+            ListModels oListModels = new ListModels();
+
+            try
+            {
+                DLL.ClsGy_Material_Ctl oBill = new DLL.ClsGy_Material_Ctl();
+                List<Models.ClsGy_Material_Model> lsmain = new List<Models.ClsGy_Material_Model>();
+                msg1 = msg1.Replace("\\", "");
+                msg1 = msg1.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
+                foreach (ClsGy_Material_Model oItem in lsmain)
+                {
+                    if (oItem.HNumber.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮佷笉鑳戒负绌猴紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    if (oItem.HName.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佸悕绉颁笉鑳戒负绌猴紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    if (oItem.HMaterTypeID == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佺墿鏂欏垎绫讳笉鑳戒负绌猴紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    //if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
+                    //{
+                    //    objJsonResult.code = "0";
+                    //    objJsonResult.count = 0;
+                    //    objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮佷腑涓嶈兘鍑虹幇杩炵画鈥�.鈥欏苟涓旈浣嶆湯浣嶄笉鑳戒负鈥�.鈥欙紒";
+                    //    objJsonResult.data = 1;
+                    //    return objJsonResult;
+                    //}
+                    //鏌ヨ鏁版嵁涓槸鍚﹀瓨鍦ㄩ噸澶嶄唬鐮�
+                    ds = oCN.RunProcReturn("select * from  Gy_Material where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_Material");
+                    //鏂板鏃跺垽鏂�
+                    #region 鐖剁骇鏍¢獙鏂规硶锛坅pi璋冪敤鍏堟敞閲婃帀锛岋級
+                    /*
+                    if (oItem.HItemID == 0)
+                    {
+                        if (ds == null || ds.Tables[0].Rows.Count > 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮侀噸澶嶏紒";
+                            objJsonResult.data = 1;
+                            return objJsonResult;
+                        }
+                        //妫�鏌ョ埗绾ф槸鍚﹀瓨鍦�
+                        string sParent;
+                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
+                        if (sParent.Trim() == "")
+                        {
+                            oBill.oModel.HParentID = 0;
+                        }
+                        else
+                        {
+                            if (oBill.HavParentCode(sParent.Trim(), HItemID))
+                            {
+                                oBill.oModel.HParentID = oBill.oModel.HItemID;
+                            }
+                            else
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "淇濆瓨澶辫触锛佷笂绾т唬鐮佷笉瀛樺湪鎴栬绂佺敤锛�";
+                                objJsonResult.data = 1;
+                                return objJsonResult;
+                            }
+                        }
+                    }
+                    else//缂栬緫鏃跺垽鏂�
+                    {
+                        //妫�鏌ョ埗绾ф槸鍚﹀瓨鍦�
+                        string sParent;
+                        sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
+                        if (sParent.Trim() == "")
+                        {
+                            oBill.oModel.HParentID = 0;
+                        }
+                        else
+                        {
+                            if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
+                            {
+                                oBill.oModel.HParentID = oBill.oModel.HItemID;
+                            }
+                            else
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "淇濆瓨澶辫触锛佷笂绾т唬鐮佷笉瀛樺湪鎴栬绂佺敤锛�";
+                                objJsonResult.data = 1;
+                                return objJsonResult;
+                            }
+                        }
+                    }
+                    */
+                    #endregion
+                    //寰楀埌鐭唬鐮�
+                    string sShortNumber;
+                    sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
+                    if (sShortNumber.Trim() == "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佺煭浠g爜涓虹┖锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                    oItem.HUSEORGID = Convert.ToInt32(msg_HUSEORGID); //缁勭粐id
+                    oItem.HShortNumber = sShortNumber;//鐭唬鐮�
+                    oItem.HEndFlag = true;//鏈骇鏍囧織
+                    oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //绛夌骇
+                    oItem.HModifyEmp = msg2;
+                    oBill.oModel = oItem;  
+                    
+                    if (oBill.oModel.HItemID == 0)
+                    {
+                        //bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                        bResult = oBill.AddNew();
+                    }
+                    else
+                    {
+                        bResult = oBill.ModifyByIDDynamic(oBill.oModel.HItemID);
+                    }
+                }
+                //淇濆瓨
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                
+                /*if (oBill.oModel.HItemID == 0)
+                {
+                    //bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    bResult = oBill.AddNew();
+                }
+                else
+                {
+                    bResult = oBill.ModifyByID(oBill.oModel.HItemID);
+                }*/
+                if (bResult)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    //WebAPIController.Add_Log("閫佽揣鍗曚笅鎺�", UserName, "鐢熸垚閫佽揣鍗�");
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo;
+                    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 淇濆瓨鐗╂枡_鎵归噺
+        /// <summary>
+        /// 淇濆瓨鐗╂枡
+        /// </summary>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        [Route("Gy_Material/SaveGy_MaterialList_Modify")]
+        [HttpPost]
+        public object SaveGy_MaterialList_Modify([FromBody] JObject msg)
+        {
+            DataSet ds;
+            var _value = msg["msg"].ToString();
+            string msg3 = _value.ToString();
+            string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg1 = sArray[0].ToString();
+            string msg2 = sArray[1].ToString();
+            string msg_HUSEORGID = sArray[2].ToString();
+            string msg_itemIdList = sArray[3].ToString();
+            string msg_UpdateInfo = sArray[4].ToString();
+            bool bResult = false;
+            Int64 HItemID = 0;
+            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+            //缂栬緫鏉冮檺
+            if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Edit", 1, false, msg2))
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+            //鑾峰彇鏈�澶D鍊艰祴鍊�
+            DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_Material ", "Gy_Material");
+            if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
+            {
+                //HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
+                var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
+                maxid += 1;
+                HItemID = maxid;
+            }
+            ListModels oListModels = new ListModels();
+
+            try
+            {
+                DLL.ClsGy_Material_Ctl oBill = new DLL.ClsGy_Material_Ctl();
+                List<Models.ClsGy_Material_Model> lsmain = new List<Models.ClsGy_Material_Model>();
+                msg1 = msg1.Replace("\\", "");
+                msg1 = msg1.Replace("\n", "");  //\n
+                lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
+                JObject jobject = JObject.Parse(msg_UpdateInfo);
+                var paramStr = "";
+                foreach (var property in jobject.Properties())
+                {
+                    string key = property.Name;
+                    string value = property.Value.ToString();
+
+                    // 鎷兼帴鏍煎紡: key=value
+                    paramStr += string.Format("{0}='{1}',", key, value);
+                    // 鍒犻櫎鏈�鍚庝竴涓�楀彿
+                   
+                }
+                paramStr = paramStr.Substring(0, paramStr.Length - 1);
+
+                bResult = oBill.ModifyByIDListDynamic(msg_itemIdList, paramStr, lsmain);
+
+
+                if (bResult)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                    //WebAPIController.Add_Log("閫佽揣鍗曚笅鎺�", UserName, "鐢熸垚閫佽揣鍗�");
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = 1;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         [Route("Gy_Material/SaveGy_MaterialListApi")]
         [HttpPost]
         public object SaveGy_MaterialListApi([FromBody] JObject msg)
@@ -629,8 +982,10 @@
                 List<Models.ClsGy_Material_Model> lsmain = new List<Models.ClsGy_Material_Model>();
                 msg1 = msg1.Replace("\\", "");
                 msg1 = msg1.Replace("\n", "");  //\n
-                lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
+                lsmain = oListModels.getObjectByJson_Gy_Material(msg1); 
+
                 oBill.oModel = lsmain[0];
+                LogService.Write("鐗╂枡鍚屾鎻掍欢,淇濆瓨鏂规硶鎵ц瀹屾垚寮傚父锛�"+ msg1);
                 //淇濆瓨
                 bool bResult = oBill.AddNewApi();
                 if (bResult)
@@ -1891,6 +2246,24 @@
                 //杩涜闇�瑕佽繘琛岀殑浣滃簾/鍙嶄綔搴熸搷浣�
                 if (IsAudit == 0) //浣滃簾鎻愪氦
                 {
+                    string sql_deleteBeforeCtrl = "exec h_p_Gy_BarCodeBill_Cancelltion_Before " + HInterID;
+                    DataSet ds_deleteBeforeCtrl = oCN.RunProcReturn(sql_deleteBeforeCtrl, "h_p_Gy_BarCodeBill_Cancelltion_Before");
+                    if (ds_deleteBeforeCtrl == null || ds_deleteBeforeCtrl.Tables.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "浣滃簾澶辫触锛氭潯鐮佷綔搴熷墠鎺у埗澶辫触锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }else if(ds_deleteBeforeCtrl.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "浣滃簾澶辫触锛�" + ds_deleteBeforeCtrl.Tables[0].Rows[0]["HRemark"].ToString();
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
                     oCN.BeginTran();
 
                     //浣滃簾鏉$爜
@@ -1969,6 +2342,187 @@
                     if (ds != null && ds.Tables[0].Rows.Count > 0)
                     {
                         string HBarCode = ds.Tables[0].Rows[0]["HBarCode"].ToString();
+                        oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','鍙嶄綔搴熸潯鐮侊細" + HBarCode + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','鍙嶄綔搴�'", ref DBUtility.ClsPub.sExeReturnInfo);
+
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "[0000-1-043]鍙嶄綔搴熸垚鍔�";
+                        objJsonResult.data = null;
+                        oCN.Commit();
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "[0000-1-042]鍙嶄綔搴熷け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+                }
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "[0000-1-044]浣滃簾澶辫触鎴栬�呭弽浣滃簾澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 鏉$爜涓绘。缁存姢 鎵归噺浣滃簾/鎵归噺鍙嶄綔搴�
+        /// <summary>
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">浣滃簾(0),鍙嶄綔搴�(1)</param>
+        /// <param name="CurUserName">浣滃簾浜�</param>
+        /// <returns></returns>
+        [Route("Gy_BarCodeBillList/DeleteBatchGy_BarCodeBillList")]
+        [HttpGet]
+        public object DeleteBatchGy_BarCodeBillList(string HInterID, int IsAudit, string CurUserName)
+        {
+            string ModRightNameCheck = "Gy_BarCodeBillList_Delete";
+            DBUtility.ClsPub.CurUserName = CurUserName;
+            try
+            {
+                //妫�鏌ユ潈闄�
+                if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "[0000-1-063]浣滃簾/鍙嶄綔搴熷け璐ワ紒鏃犳潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //HInterID鏁版嵁鍒ゆ柇
+                if (HInterID.Length<=0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏈�夋嫨闇�瑕佷綔搴�/鍙嶄綔搴� 鐨勬潯鐮�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                Int64 lngBillKey = 0;
+                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹�
+
+                //杩涜闇�瑕佽繘琛岀殑浣滃簾/鍙嶄綔搴熸搷浣�
+                if (IsAudit == 0) //浣滃簾鎻愪氦
+                {
+                    string sql_deleteBeforeCtrl = "exec h_p_Gy_BarCodeBill_Cancelltion_Before '" + HInterID + "'";
+                    DataSet ds_deleteBeforeCtrl = oCN.RunProcReturn(sql_deleteBeforeCtrl, "h_p_Gy_BarCodeBill_Cancelltion_Before");
+                    if (ds_deleteBeforeCtrl == null || ds_deleteBeforeCtrl.Tables.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "浣滃簾澶辫触锛氭潯鐮佷綔搴熷墠鎺у埗澶辫触锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else if (ds_deleteBeforeCtrl.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "浣滃簾澶辫触锛�" + ds_deleteBeforeCtrl.Tables[0].Rows[0]["HRemark"].ToString();
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    oCN.BeginTran();
+
+                    //浣滃簾鏉$爜
+                    oCN.RunProc("update Gy_BarCodeBill set HStopflag=1,HDeleteMan='" + CurUserName + "',HDeleteDate=getdate() where HItemID in (" + HInterID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+
+                    string sql = "select * from Gy_BarCodeBill where HItemID in (" + HInterID + ")";
+                    ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill");
+                    if (ds != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        string HBarCode = "";
+                        for(int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                        {
+                            HBarCode = ds.Tables[0].Rows[0]["HBarCode"].ToString() + "锛�";
+                        }
+
+
+                        //娣诲姞鎿嶄綔鏃ュ織
+                        oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','浣滃簾鏉$爜锛�" + HBarCode + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','浣滃簾'", ref DBUtility.ClsPub.sExeReturnInfo);
+
+                        objJsonResult.code = "1";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "[0000-1-040]浣滃簾鎴愬姛";
+                        objJsonResult.data = null;
+
+                        oCN.Commit();
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "[0000-1-042]浣滃簾澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                        objJsonResult.data = null;
+
+                        oCN.RollBack();
+                    }
+
+
+                    return objJsonResult;
+                }
+                if (IsAudit == 1) //鍙嶅叧闂彁浜�
+                {
+                    oCN.BeginTran();
+
+                    //#region 鍙嶄綔搴熸潯鐮佸墠杩涜鍒ゆ柇
+                    ////鍙嶄綔搴熸潯鐮佸墠杩涜鍒ゆ柇------------------------------------------------------------------------------------------------------------------------------------------------------
+                    ////--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
+                    //DataSet DS = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_UnCancelltion '" + HInterID + "','N'", "h_p_Gy_BarCodeBill_UnCancelltion", ref DBUtility.ClsPub.sExeReturnInfo);
+                    //if (DS == null || DS.Tables[0].Rows.Count <= 0)
+                    //{
+                    //    oCN.RollBack();
+
+                    //    objJsonResult.code = "0";
+                    //    objJsonResult.count = 0;
+                    //    objJsonResult.Message = "[0000-1-042]鍙嶄綔搴熷け璐ワ紝鍘熷洜锛氬弽浣滃簾鏉$爜鍓嶅垽鏂彂鐢熼敊璇紒";
+                    //    objJsonResult.data = null;
+                    //    return objJsonResult;
+                    //}
+                    //else
+                    //{
+                    //    if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) == "1")
+                    //    {
+                    //        oCN.RollBack();
+
+                    //        objJsonResult.code = "1";
+                    //        objJsonResult.count = 1;
+                    //        objJsonResult.Message = "[0000-1-042]鍙嶄綔搴熷け璐ワ紝鍘熷洜锛�" + DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
+                    //        objJsonResult.data = null;
+                    //        return objJsonResult;
+                    //    }
+                    //}
+                    ////--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
+                    ////--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
+                    //#endregion
+
+                    //鍙嶄綔搴熸潯鐮�
+                    oCN.RunProc("update Gy_BarCodeBill set HStopflag=0,HDeleteMan='',HDeleteDate=null where HItemID in (" + HInterID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+
+                    //澧炲姞鎿嶄綔鏃ュ織
+                    string sql = "select * from Gy_BarCodeBill where HItemID in (" + HInterID + ")";
+                    ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill");
+                    if (ds != null && ds.Tables[0].Rows.Count > 0)
+                    {
+                        string HBarCode = "";
+                        for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                        {
+                            HBarCode = ds.Tables[0].Rows[0]["HBarCode"].ToString() + "锛�";
+                        }
+
                         oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','鍙嶄綔搴熸潯鐮侊細" + HBarCode + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','鍙嶄綔搴�'", ref DBUtility.ClsPub.sExeReturnInfo);
 
                         objJsonResult.code = "1";
@@ -2338,6 +2892,7 @@
                 int HNowSPID = mainList[0].HNowSPID;
                 string HMouldUseStatus = mainList[0].HMouldUseStatus;
                 int HUSEORGID = mainList[0].HUSEORGID;
+                DateTime HNextMainDate = mainList[0].HNextMainDate;
                 //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
                 oCN.BeginTran();
 
@@ -2418,6 +2973,7 @@
                 ",HNowWHID=" + HNowWHID +
                 ",HNowSPID=" + HNowSPID +
                 ",HInitLife='" + HInitLife +
+                "',HNextMainDate='" + HNextMainDate +
                 "',HMouldUseStatus='" + HMouldUseStatus +
                 "' where HInterID=" + HInterID.ToString());
 
@@ -2794,7 +3350,7 @@
         #region [鍚屾鍩虹璧勬枡]
         [Route("Gy_Material/Gy_MaterialViewApi")]
         [HttpGet]
-        public json Gy_MaterialViewApi(string Number, string Type)
+        public json Gy_MaterialViewApi(string Number, string Type, string HUseOrgID)
         {
             string sql = string.Empty;
             string sReturn = "";
@@ -2852,14 +3408,24 @@
                 {
                     #region [鍏湁浜戞ā寮忥紝璋冪敤WEBAPI鐨勬柟寮忚繘琛屾洿鏂癩
                     var json = new
+                    // {
+                    //     CreateOrgId = 0,
+                    //     Number = Number,
+                    //     Id = ""
+                    // };
                     {
-                        CreateOrgId = 0,
-                        Number = Number,
-                        Id = ""
+                        FormId= "BD_MATERIAL",
+                        FieldKeys= "FMASTERID,FNUMBER,FNAME,FSPECIFICATION,FFORBIDSTATUS,FErpClsID,FBaseUnitId,FLENGTH,FWIDTH,FHEIGHT,FNETWEIGHT,FGROSSWEIGHT,FOldNumber,FSTOCKPLACEID,FPLANMODE,FCREATEDATE,FCREATEORGID,FUSEORGID,FISBATCHMANAGE,FCheckIncoming,FIsEnable1,FIsKFPeriod,FAuxUnitID,FSNUNIT,FBaseUnitId,FSaleUnitId,FSalePriceUnitId,FPerUnitStandHour,FStdLaborPrePareTime,FStdMachinePrepareTime",
+                        FilterString= $@"FNUMBER='{Number}' AND FUSEORGID={HUseOrgID}",
+                        OrderString= "",
+                        TopRowCount= 0,
+                        StartRow= 0,
+                        Limit= 0
                     };
-                    #region [閲戣澏閮ㄥ垎]
-                    //鐧诲綍閲戣澏
-                    var loginRet = InvokeHelper.Login();
+
+                #region [閲戣澏閮ㄥ垎]
+                //鐧诲綍閲戣澏
+                var loginRet = InvokeHelper.Login();
                     var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                     //鍒ゆ柇鏄惁鐧诲綍鎴愬姛
                     if (isSuccess < 0)
@@ -2871,14 +3437,22 @@
                         return objJsonResult;
                     }
                     //鏌ョ湅 鑾峰彇鏁版嵁                    
-                    var _result = InvokeHelper.View("BD_MATERIAL", JsonConvert.SerializeObject(json));
-                    var _saveObj = JObject.Parse(_result);
+                    var _result = InvokeHelper.Query("BD_MATERIAL", JsonConvert.SerializeObject(json));
+                    var _saveObj = JArray.Parse(_result);
                     //鍒ゆ柇鏁版嵁鏄惁鑾峰彇鎴愬姛
-                    if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                    // if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                    // {
+                    //     objJsonResult.code = "0";
+                    //     objJsonResult.count = 0;
+                    //     objJsonResult.Message = "閲戣澏鐗╂枡鍚屾澶辫触jsonRoot锛�" + _result;
+                    //     objJsonResult.data = null;
+                    //     return objJsonResult;
+                    // }
+                    if (_saveObj.Count == 0)
                     {
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
-                        objJsonResult.Message = "閲戣澏鐗╂枡鍚屾澶辫触jsonRoot锛�" + _result;
+                        objJsonResult.Message = "閲戣澏瀹㈡埛鍚屾澶辫触锛屼娇鐢ㄧ粍缁囧搴旂殑鐗╂枡浠g爜鏃犲搴旂殑鐗╂枡";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
@@ -2894,47 +3468,89 @@
 
                     #region [琛ㄦ暟鎹祴鍊糫
                     var jsonData = new
+                    // {
+                    //     HItemID = _saveObj["Result"]["Result"]["Id"],
+                    //     HERPItemID = _saveObj["Result"]["Result"]["Id"],
+                    //     HNumber      = _saveObj["Result"]["Result"]["Number"],
+                    //     HName        = _saveObj["Result"]["Result"]["Name"][1]["Value"],
+                    //     HModel       = _saveObj["Result"]["Result"]["Specification"][0]["Value"],
+                    //     HShortNumber = _saveObj["Result"]["Result"]["Number"],
+                    //     HParentID    = 0,
+                    //     HLevel       = 1,
+                    //     HEndFlag     = 1,
+                    //     HStopflag    = _saveObj["Result"]["Result"]["ForbidStatus"].ToString() == "A" ? 0 : 1 ,
+                    //     HRemark      = "CLD-ERP瀵煎叆",
+                    //     HMaterClsID  = _saveObj["Result"]["Result"]["MaterialBase"][0]["ErpClsID"],
+                    //     HUnitID      = _saveObj["Result"]["Result"]["MaterialBase"][0]["BaseUnitId_Id"],
+                    //     HUnitGroupID       = 0,
+                    //     HLength         = _saveObj["Result"]["Result"]["MaterialBase"][0]["LENGTH"],
+                    //     HWidth          = _saveObj["Result"]["Result"]["MaterialBase"][0]["WIDTH"],
+                    //     HHeight         = _saveObj["Result"]["Result"]["MaterialBase"][0]["HEIGHT"],
+                    //     HJQty           = _saveObj["Result"]["Result"]["MaterialBase"][0]["NETWEIGHT"],
+                    //     HMQty           = _saveObj["Result"]["Result"]["MaterialBase"][0]["GROSSWEIGHT"],
+                    //     HOldMaterNumber = _saveObj["Result"]["Result"]["OldNumber"],
+                    //     HWHID           = 0,
+                    //     HSPID           = _saveObj["Result"]["Result"]["MaterialStock"][0]["StockPlaceId_Id"],
+                    //     HPlanMode       = _saveObj["Result"]["Result"]["MaterialPlan"][0]["PlanMode"],
+                    //     HUseFlag        = "鏈楠�",
+                    //     HMakeTime       = _saveObj["Result"]["Result"]["CreateDate"],
+                    //     HMinPickQty     = 0,
+                    //     HCREATEORGID    = _saveObj["Result"]["Result"]["CreateOrgId_Id"],
+                    //     HUSEORGID       = _saveObj["Result"]["Result"]["UseOrgId_Id"],
+                    //     HBatchManager   = _saveObj["Result"]["Result"]["MaterialStock"][0]["IsBatchManage"].ToString() == "false" ? 0 : 1,
+                    //     HCHECKINCOMING  = _saveObj["Result"]["Result"]["MaterialQM"][0]["CheckIncoming"].ToString() == "false" ? 0 : 1,
+                    //     HAuxPropFlag    = _saveObj["Result"]["Result"]["MaterialAuxPty"][0]["IsEnable1"].ToString() == "false" ? 0 : 1,
+                    //     HISKFPERIOD     = _saveObj["Result"]["Result"]["MaterialStock"][0]["IsKFPeriod"].ToString() == "false" ? 0 : 1,
+                    //     HAuxUnitID      = _saveObj["Result"]["Result"]["MaterialStock"][0]["AuxUnitID_Id"],
+                    //     HSNUnitID       = _saveObj["Result"]["Result"]["MaterialStock"][0]["SNUnit_Id"],
+                    //     HBASEUNITID     = _saveObj["Result"]["Result"]["MaterialBase"][0]["BaseUnitId_Id"],
+                    //     HSALEUNITID        = _saveObj["Result"]["Result"]["MaterialSale"][0]["SaleUnitId_Id"],
+                    //     HSALEPRICEUNITID   = _saveObj["Result"]["Result"]["MaterialSale"][0]["SalePriceUnitId_Id"],
+                    //     HPERUNITSTANDHOUR = _saveObj["Result"]["Result"]["MaterialProduce"][0]["PerUnitStandHour"],
+                    //     HSTDLABORPREPARETIME = _saveObj["Result"]["Result"]["MaterialProduce"][0]["StdLaborPrePareTime"],
+                    //     HSTDMACHINEPREPARETIME = _saveObj["Result"]["Result"]["MaterialProduce"][0]["StdMachinePrepareTime"]                       
+                    // };
                     {
-                        HItemID = _saveObj["Result"]["Result"]["Id"],
-                        HERPItemID = _saveObj["Result"]["Result"]["Id"],
-                        HNumber      = _saveObj["Result"]["Result"]["Number"],
-                        HName        = _saveObj["Result"]["Result"]["Name"][1]["Value"],
-                        HModel       = _saveObj["Result"]["Result"]["Specification"][0]["Value"],
-                        HShortNumber = _saveObj["Result"]["Result"]["Number"],
-                        HParentID    = 0,
-                        HLevel       = 1,
-                        HEndFlag     = 1,
-                        HStopflag    = _saveObj["Result"]["Result"]["ForbidStatus"].ToString() == "A" ? 0 : 1 ,
-                        HRemark      = "CLD-ERP瀵煎叆",
-                        HMaterClsID  = _saveObj["Result"]["Result"]["MaterialBase"][0]["ErpClsID"],
-                        HUnitID      = _saveObj["Result"]["Result"]["MaterialBase"][0]["BaseUnitId_Id"],
-                        HUnitGroupID       = 0,
-                        HLength         = _saveObj["Result"]["Result"]["MaterialBase"][0]["LENGTH"],
-                        HWidth          = _saveObj["Result"]["Result"]["MaterialBase"][0]["WIDTH"],
-                        HHeight         = _saveObj["Result"]["Result"]["MaterialBase"][0]["HEIGHT"],
-                        HJQty           = _saveObj["Result"]["Result"]["MaterialBase"][0]["NETWEIGHT"],
-                        HMQty           = _saveObj["Result"]["Result"]["MaterialBase"][0]["GROSSWEIGHT"],
-                        HOldMaterNumber = _saveObj["Result"]["Result"]["OldNumber"],
-                        HWHID           = 0,
-                        HSPID           = _saveObj["Result"]["Result"]["MaterialStock"][0]["StockPlaceId_Id"],
-                        HPlanMode       = _saveObj["Result"]["Result"]["MaterialPlan"][0]["PlanMode"],
-                        HUseFlag        = "鏈楠�",
-                        HMakeTime       = _saveObj["Result"]["Result"]["CreateDate"],
-                        HMinPickQty     = 0,
-                        HCREATEORGID    = _saveObj["Result"]["Result"]["CreateOrgId_Id"],
-                        HUSEORGID       = _saveObj["Result"]["Result"]["UseOrgId_Id"],
-                        HBatchManager   = _saveObj["Result"]["Result"]["MaterialStock"][0]["IsBatchManage"].ToString() == "false" ? 0 : 1,
-                        HCHECKINCOMING  = _saveObj["Result"]["Result"]["MaterialQM"][0]["CheckIncoming"].ToString() == "false" ? 0 : 1,
-                        HAuxPropFlag    = _saveObj["Result"]["Result"]["MaterialAuxPty"][0]["IsEnable1"].ToString() == "false" ? 0 : 1,
-                        HISKFPERIOD     = _saveObj["Result"]["Result"]["MaterialStock"][0]["IsKFPeriod"].ToString() == "false" ? 0 : 1,
-                        HAuxUnitID      = _saveObj["Result"]["Result"]["MaterialStock"][0]["AuxUnitID_Id"],
-                        HSNUnitID       = _saveObj["Result"]["Result"]["MaterialStock"][0]["SNUnit_Id"],
-                        HBASEUNITID     = _saveObj["Result"]["Result"]["MaterialBase"][0]["BaseUnitId_Id"],
-                        HSALEUNITID        = _saveObj["Result"]["Result"]["MaterialSale"][0]["SaleUnitId_Id"],
-                        HSALEPRICEUNITID   = _saveObj["Result"]["Result"]["MaterialSale"][0]["SalePriceUnitId_Id"],
-                        HPERUNITSTANDHOUR = _saveObj["Result"]["Result"]["MaterialProduce"][0]["PerUnitStandHour"],
-                        HSTDLABORPREPARETIME = _saveObj["Result"]["Result"]["MaterialProduce"][0]["StdLaborPrePareTime"],
-                        HSTDMACHINEPREPARETIME = _saveObj["Result"]["Result"]["MaterialProduce"][0]["StdMachinePrepareTime"]                       
+                        HItemID = _saveObj[0][0],  // 瀵瑰簲FMASTERID
+                        HERPItemID = _saveObj[0][0],  // 瀵瑰簲FMASTERID
+                        HNumber = _saveObj[0][1],  // 瀵瑰簲FNUMBER
+                        HName = _saveObj[0][2],  // 瀵瑰簲FNAME
+                        HModel = _saveObj[0][3],  // 瀵瑰簲FSPECIFICATION
+                        HShortNumber = _saveObj[0][1],  // 瀵瑰簲FNUMBER
+                        HParentID = 0,
+                        HLevel = 1,
+                        HEndFlag = 1,
+                        HStopflag = _saveObj[0][4].ToString() == "A" ? 0 : 1,  // 瀵瑰簲FFORBIDSTATUS
+                        HRemark = "CLD-ERP瀵煎叆",
+                        HMaterClsID = _saveObj[0][5],  // 瀵瑰簲FErpClsID
+                        HUnitID = _saveObj[0][6],  // 瀵瑰簲FBaseUnitId
+                        HUnitGroupID = 0,
+                        HLength = _saveObj[0][7],  // 瀵瑰簲FLENGTH
+                        HWidth = _saveObj[0][8],  // 瀵瑰簲FWIDTH
+                        HHeight = _saveObj[0][9],  // 瀵瑰簲FHEIGHT
+                        HJQty = _saveObj[0][10],  // 瀵瑰簲FNETWEIGHT
+                        HMQty = _saveObj[0][11],  // 瀵瑰簲FGROSSWEIGHT
+                        HOldMaterNumber = _saveObj[0][12],  // 瀵瑰簲FOldNumber
+                        HWHID = 0,
+                        HSPID = _saveObj[0][13],  // 瀵瑰簲FSTOCKPLACEID
+                        HPlanMode = _saveObj[0][14],  // 瀵瑰簲FPLANMODE
+                        HUseFlag = "鏈楠�",
+                        HMakeTime = _saveObj[0][15],  // 瀵瑰簲FCREATEDATE
+                        HMinPickQty = 0,
+                        HCREATEORGID = _saveObj[0][16],  // 瀵瑰簲FCREATEORGID
+                        HUSEORGID = _saveObj[0][17],  // 瀵瑰簲FUSEORGID
+                        HBatchManager = (bool)_saveObj[0][18] ? 1 : 0,  // 瀵瑰簲FISBATCHMANAGE
+                        HCHECKINCOMING = (bool)_saveObj[0][19] ? 1 : 0,  // 瀵瑰簲FCheckIncoming
+                        HAuxPropFlag = (bool)_saveObj[0][20] ? 1 : 0,  // 瀵瑰簲FIsEnable1
+                        HISKFPERIOD = (bool)_saveObj[0][21] ? 1 : 0,  // 瀵瑰簲FIsKFPeriod
+                        HAuxUnitID = _saveObj[0][22],  // 瀵瑰簲FAuxUnitID
+                        HSNUnitID = _saveObj[0][23],  // 瀵瑰簲FSNUNIT
+                        HBASEUNITID = _saveObj[0][24],  // 瀵瑰簲FBaseUnitId
+                        HSALEUNITID = _saveObj[0][25],  // 瀵瑰簲FSaleUnitId
+                        HSALEPRICEUNITID = _saveObj[0][26],  // 瀵瑰簲FSalePriceUnitId
+                        HPERUNITSTANDHOUR = _saveObj[0][27],  // 瀵瑰簲FPerUnitStandHour
+                        HSTDLABORPREPARETIME = _saveObj[0][28],  // 瀵瑰簲FStdLaborPrePareTime
+                        HSTDMACHINEPREPARETIME = _saveObj[0][29]  // 瀵瑰簲FStdMachinePrepareTime
                     };
                     #endregion
                     // 鍒犻櫎涓昏〃瀵瑰簲鏁版嵁

--
Gitblit v1.9.1