From d1b14d00d9ee4ff4a1b271e6b4fe094f5049a55f Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期一, 17 三月 2025 09:23:16 +0800
Subject: [PATCH] 采购入库单:下推采购退料单

---
 WebAPI/Controllers/GG_NoticeController.cs |  170 +++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 143 insertions(+), 27 deletions(-)

diff --git a/WebAPI/Controllers/GG_NoticeController.cs b/WebAPI/Controllers/GG_NoticeController.cs
index 4144c40..35c2687 100644
--- a/WebAPI/Controllers/GG_NoticeController.cs
+++ b/WebAPI/Controllers/GG_NoticeController.cs
@@ -1,4 +1,5 @@
 锘縰sing DBUtility;
+using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
 using System;
 using System.Collections.Generic;
@@ -28,8 +29,9 @@
         {
             try
             {
+                List<object> columnNameList = new List<object>();
                 //缂栬緫鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldRepairChangeBillList", 1, true, user))
+                //if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldRepairChangeBillList", 1, false, user))
                 //{
                 //    objJsonResult.code = "0";
                 //    objJsonResult.count = 0;
@@ -39,22 +41,32 @@
                 //}
 
                 ds = Get_GG_NoticeBillList(sWhere);
-                if (ds == null)
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
                 {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�";
-                    objJsonResult.data = ds.Tables[0];
-                    return objJsonResult;
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
                 }
-                else
-                {
-                    objJsonResult.code = "1";
-                    objJsonResult.count = 1;
-                    objJsonResult.Message = "杩斿洖璁板綍鎴愬姛锛�";
-                    objJsonResult.data = ds.Tables[0];
-                    return objJsonResult;
-                }
+
+                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
+                //{
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+                //}
+                //else
+                //{
+                //objJsonResult.code = "0";
+                //objJsonResult.count = 0;
+                //objJsonResult.Message = "鏃犳暟鎹�";
+                //objJsonResult.data = null;
+                //return objJsonResult;
+                //}
             }
             catch (Exception ex)
             {
@@ -68,11 +80,29 @@
 
         public static DataSet Get_GG_NoticeBillList(string sWhere)
         {
-            var sql = "select A.HInterID,b.HEntryID,A.HContext,A.HDeptID,D.HName HDeptName, A.HSendMan, B.HReceiveMan,A.HLevel,A.HDescription,case when B.HReadFlag=0 then '鏈槄' when B.HReadFlag=1 then '宸查槄' end HReadFlag, A.HMaker,A.HDate,A.HUpDater,A.HUpDateDate" +
-               " from OA_InformBillMain A inner join  OA_InformBillSub B on A.HInterID=B.HInterID left join Gy_Department D on A.HDeptID=D.HItemID where 1=1 " + sWhere;
+            var sql = "select A.HInterID 涓诲唴鐮�,b.HEntryID 瀛愬唴鐮�,A.HBillNo 鍗曟嵁鍙�,A.HContext 涓婚,A.HDeptID,D.HName 鍙戦�侀儴闂�, A.HSendMan 鍙戦�佷汉, B.HReceiveMan 鎺ユ敹浜�,A.HLevel 绱ф�ョ▼搴�,A.HDescription 璇︾粏鍐呭,case when B.HReadFlag=0 then '鏈槄' when B.HReadFlag=1 then '宸查槄' end 鐘舵��, A.HMaker 鍒跺崟浜�,A.HMakeDate 鍒跺崟鏃ユ湡,A.HUpDater 淇敼浜�,A.HUpDateDate 淇敼鏃ユ湡" +
+               " from OA_InformBillMain A inner join  OA_InformBillSub B on A.HInterID=B.HInterID left join Gy_Department D on A.HDeptID=D.HItemID where 1=1 " + sWhere+ "  order by 涓诲唴鐮� desc";
             return new SQLHelper.ClsCN().RunProcReturn(sql, "OA_InformBillMain");
         }
 
+        #endregion
+
+        #region 鍏憡鍒楄〃缂栬緫鑾峰彇鏁版嵁
+        [Route("GG_Notice/GG_NoticeBillListCheckDetai")]
+        [HttpGet]
+        public ApiResult<DataSet> GG_NoticeBillListCheckDetai(string HID,string HEntryID)
+        {
+            if (string.IsNullOrEmpty(HID))
+                return new ApiResult<DataSet> { code = -1, msg = "ID涓嶈兘涓虹┖" };
+            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+            var dataSet = oCN.RunProcReturn("select A.HInterID,b.HEntryID,A.HBillNo,A.HContext,A.HDeptID,D.HName HDeptName, A.HSendMan, B.HReceiveMan,A.HLevel,A.HDescription,case when B.HReadFlag=0 then '鏈槄' when B.HReadFlag=1 then '宸查槄' end HReadFlag, A.HMaker,A.HMakeDate,A.HUpDater,A.HUpDateDate" +
+               " from OA_InformBillMain A inner join  OA_InformBillSub B on A.HInterID=B.HInterID left join Gy_Department D on A.HDeptID=D.HItemID where  A.HInterID='"+ HID + "' and b.HEntryID='"+HEntryID+"'", "OA_InformBillMain");
+            if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
+                return new ApiResult<DataSet> { code = -1, msg = "涓嶅瓨鍦ㄥ崟鍙�" };
+
+            return new ApiResult<DataSet> { code = 1, msg = "鏌ヨ鎴愬姛", data = dataSet };
+        }
         #endregion
 
         #region 鍏憡鍒楄〃淇濆瓨/缂栬緫
@@ -89,15 +119,14 @@
             string msg1 = _value.ToString();
             string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
             string msg2 = sArray[0].ToString();
-            string msg3 = sArray[1].ToString();
-            string refSav = sArray[2].ToString();
-            string msg4 = sArray[3].ToString();
+            string refSav = sArray[1].ToString();
+            string msg3 = sArray[2].ToString();
             string s = "";
             ListModels oListModels = new ListModels();
             try
             {
                 //缂栬緫鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldProdInBill_Edit", 1, true, msg4))
+                //if (!DBUtility.ClsPub.Security_Log_second("Sc_MouldProdInBill_Edit", 1, false, msg3))
                 //{
                 //    objJsonResult.code = "0";
                 //    objJsonResult.count = 0;
@@ -170,17 +199,18 @@
                         objJsonResult.data = 1;
                         return objJsonResult;
                     }
-                    oItem.HMaker = msg4;  //鍒跺崟浜�
+                    oItem.HMaker = msg3;  //鍒跺崟浜�
                     oItem.HBillType = "4506";
                     oItem.HBillSubType = "4506";
                     oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
                     oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
                     oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
-                    lsmain.Add(oItem);
+                    string[] arrStr = oItem.HReceiveMan.Split(',');
+                    oBill.omodel = oItem;
                     //琛ㄤ綋鏁版嵁
-                    for (int i = 0; i < msg3.Length; i++)
+                    for (int i = 1; i <=arrStr.Length; i++)
                     {
-                        i++;
+                       
                         Models.ClsOA_InformBillSub sb = new Models.ClsOA_InformBillSub();
                         sb.HEntryID = i;
                         sb.HCloseMan = "";
@@ -191,8 +221,8 @@
                         sb.HSourceBillType = "";
                         sb.HRelationQty = 0;
                         sb.HRelationMoney = 0;
-                        sb.HReceiveMan = "";
-                        lssub.Add(sb);
+                        sb.HReceiveMan = arrStr[i-1];
+                        oBill.DetailColl.Add(sb);
                     }
                 }
                 
@@ -237,5 +267,91 @@
         }
         #endregion
 
+        #region 鍏憡鍒楄〃鍒犻櫎
+        [Route("GG_Notice/Get_GG_Notice_DeleteBill")]
+        [HttpGet]
+        public object Get_GG_Notice_DeleteBill(string HInterID, string user)
+        {
+            try
+            {
+                //鍒犻櫎鏉冮檺
+                //if (!DBUtility.ClsPub.Security_Log_second("", 1, false, user))
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                oCN.RunProc("delete from OA_InformBillSub where HInterID=" + HInterID);
+                oCN.RunProc("delete from OA_InformBillMain where HInterID=" + HInterID);
+                oCN.Commit();//鎻愪氦浜嬪姟
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍏憡鏁版嵁鍒犻櫎鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鍏憡鏁版嵁鍒犻櫎澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        /// <summary>
+        /// 鏍规嵁鐢ㄦ埛鍚嶈幏鍙栧叕鍛婂垪琛�
+        /// </summary>
+        /// <param name="user"></param>
+        /// <returns></returns>
+        [Route("GG_Notice/notices")]
+        [HttpGet]
+        public object getNotices(string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                var sql = "select top(10) m.HMakeDate as 鏃ユ湡, m.HLevel as 鐘跺喌, m.HContext as 涓婚 " +
+                           ", m.HContext as 鍐呭" +
+                           ", m.HSendMan as 鍙戦�佷汉, s.HReceiveMan as 鎺ユ敹浜�, d.HName as 鍙戦�侀儴闂� " +
+                           " from OA_InformBillMain as m" +
+                           " inner join OA_InformBillSub as s on m.HInterID = s.HInterID" +
+                           " left join Gy_Department d on m.HDeptID = d.HItemID" +
+                           " where 1 = 1 and" + " s.HReceiveMan =" + "'" + user + "'" +
+                           " order by m.HMakeDate desc";
+
+                ds = new SQLHelper.ClsCN().RunProcReturn(sql, "OA_InformBillMain");
+
+                //娣诲姞鍒楀悕
+                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 ex)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�" + ex.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
     }
 }

--
Gitblit v1.9.1