From b318aa82c9309725574368b0f3d254d0c787ef2e Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期四, 26 六月 2025 14:27:23 +0800
Subject: [PATCH] 工程阶段 添加 查询 编辑 API 工程费用 添加 查询 编辑 API

---
 WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs |  103 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 94 insertions(+), 9 deletions(-)

diff --git a/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs b/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
index 1729c44..6590647 100644
--- a/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
@@ -434,6 +434,53 @@
             }
         }
 
+        /// <summary>
+        /// 鏌ヨ瀛愯〃鏂规硶
+        /// </summary>
+        [Route("Gy_WorkCenter/listSub")]
+        [HttpGet]
+        public object listSub(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_WorkCenter_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_WorkCenterSubList where 1 = 1 " + sWhere + " order by HItemID ", "h_v_WorkCenterSubList");
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
 
 
 
@@ -600,6 +647,7 @@
                 string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                 string msg1 = sArray[0].ToString();
                 string msg2 = sArray[1].ToString();
+                string msg4 = sArray[2].ToString();
                 //string msg4 = sArray[2].ToString();
                 //string msg5 = sArray[3].ToString();
 
@@ -612,10 +660,12 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-
                 //鍙嶅簭鍒楀寲
                 msg1 = "[" + msg1.ToString() + "]";
+
                 List<Gy_WorkCenter> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_WorkCenter>>(msg1);
+ 
+                List<ClsGy_WorkCenterSub> list1 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_WorkCenterSub>>(msg4);
 
                 long HItemID = list[0].HItemID;
                 string HNumber = list[0].HNumber;
@@ -696,6 +746,7 @@
                 //淇濆瓨瀹屾瘯鍚庡鐞�
                 if (HItemID == 0)
                 {
+                    LogService.Write("鏂板");
                     oCN.BeginTran();
                     //鍒ゆ柇浠g爜鏄惁閲嶅
                     DataSet dss;
@@ -733,20 +784,45 @@
                     }
                     //================================================================================== 
 
-
-                    oCN.RunProc("Insert into  Gy_WorkCenter " +
+                    LogService.Write("涓昏〃鎻掑叆璇彞");
+                    string sql_Temp = "Insert into Gy_WorkCenter " +
                     " (HNumber,HName,HHelpCode,HShortNumber,HParentID" +
                     ",HDeptNumber,HWorkTimes,HQty,HUseFlag" +
                     ",HLevel,HEndFlag,HStopflag,HRemark,HDeptID,HBarCodeForBase" +
                     ",HProcID,HDayMoney,HUSEORGID,HCREATEORGID,HMaker,HMakeTime) " +
-                    " Values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "'," + HParentID.ToString() +
-                     ",'" + HDeptNumber + "'," + HWorkTimes + "," + HQty +",'"+ HUseFlag+
-                     "'," + HLevel.ToString() + "," + Convert.ToString(HEndFlag ? 1 : 0) + "," + Convert.ToString(HStopflag ? 1 : 0) +
-                     ",'" + HRemark + "'," + HDeptID + ",'" + HBarCodeForBase + "'," + HProcID + "," + HDayMoney + "," + HUSEORGID + "," + HCREATEORGID + "" +
-                     ",'" + HMaker + "',getdate())", ref DBUtility.ClsPub.sExeReturnInfo);
+                    " Values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "','" + HParentID.ToString() +
+                     "','" + HDeptNumber + "'," + HWorkTimes + "," + HQty + ",'" + HUseFlag +
+                     "'," + HLevel.ToString() + "," + Convert.ToString(HEndFlag ? 1 : 0) + ",'" + Convert.ToString(HStopflag ? 1 : 0) +
+                     "','" + HRemark + "','" + HDeptID + "','" + HBarCodeForBase + "','" + HProcID + "'," + HDayMoney + "," + HUSEORGID + "," + HCREATEORGID + "" +
+                     ",'" + HMaker + "',getdate())";
+                    LogService.Write(sql_Temp);
+                    oCN.RunProc(sql_Temp, ref DBUtility.ClsPub.sExeReturnInfo);
                     //淇敼涓婄骇涓洪潪鏈骇浠g爜
                     oCN.RunProc("Update  Gy_WorkCenter set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
 
+                    DataSet temp_ds = oCN.RunProcReturn("select top 1 HItemID from Gy_WorkCenter where HNumber = N'" + HNumber + "'", "Gy_WorkCenter");
+
+                    if(temp_ds.Tables[0].Rows.Count < 1)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "淇濆瓨澶辫触!鍘熷洜锛氭彃鍏ユ暟鎹け璐�";
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+
+                    int itemID = int.Parse(temp_ds.Tables[0].Rows[0]["HItemID"].ToString());
+                    LogService.Write(itemID);
+                    string sql3 = "";
+                    foreach (ClsGy_WorkCenterSub listOne in list1)
+                    {
+                        sql3 += "insert into Gy_WorkCenterSub(HCenterID, HSourceID) Values("
+                        + itemID + "," + listOne.HSourceID + ");";
+
+                    }
+                    LogService.Write(sql3);
+                    oCN.RunProcReturn(sql3, "Gy_WorkCenterSub");
 
                     //淇濆瓨鍚庢帶鍒�=========================================      
                     string sql2 = "exec h_p_Gy_WorkCenter_AfterSaveCtrl " + HMaker + ",'" + 1 + "'";
@@ -835,7 +911,16 @@
                                   ",HCREATEORGID='" + HCREATEORGID + "'" +
                                   ",HBarCodeForBase='" + HBarCodeForBase + "'  Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
                     //淇敼瀛愰」鐩唬鐮�
-                    //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_WorkCenter,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
+                    oCN.RunProcReturn("delete from Gy_WorkCenterSub where HCenterID = " + HItemID, "Gy_WorkCenterSub");
+
+                    string sql3 = "";
+                    foreach(ClsGy_WorkCenterSub listOne in list1)
+                    {
+                        sql3 += "insert into Gy_WorkCenterSub(HCenterID, HSourceID) Values("
+                        + HItemID + "," + listOne.HSourceID + ")";
+                    }
+
+                    oCN.RunProcReturn(sql3,  "Gy_WorkCenterSub");
                     //灏嗕笂绾� 涓洪潪鏈骇
                     oCN.RunProc("Update Gy_WorkCenter set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
 

--
Gitblit v1.9.1