From f54b48dc3f09d1c13b85b97cb24d2df28b475a72 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期二, 02 七月 2024 14:34:42 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs |  223 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 220 insertions(+), 3 deletions(-)

diff --git a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
index 0d3a324..dc7028a 100644
--- a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
@@ -534,11 +534,12 @@
                                         A.HLevel,A.HMaterNumber,A.HMaterName,A.HMaterModel,
                                         B.HReadFlag, A.HMaker,A.HMakeDate,A.HUpDater,A.HUpDateDate,A.HChecker,A.HCheckDate,A.HCloseMan,A.HCloseDate,A.HDeleteMan,A.HDeleteDate,
                                         A.HSourceInterID,A.HSourceEntryID,A.HSourceBillNo,A.HSourceBillType,
-										A.HHandleEmpID,f.HName HHandleEmpName
+										A.HHandleEmpID,f.HName HHandleEmpName,A.HErrMsgBackTypeID,g.HName HErrMsgBackTypeName
                                         from OA_ErrMsgBackBillMain A 
                                         inner join  OA_ErrMsgBackBillSub2 B on A.HInterID=B.HInterID 
                                         left join Gy_Department D on A.HDeptID=D.HItemID
-										left join Gy_Employee f on A.HHandleEmpID=f.HItemID 
+										left join Gy_Employee f on A.HHandleEmpID=f.HItemID     
+                                        left join Gy_ErrMsgBackType g on A.HErrMsgBackTypeID=g.HItemID
                                         where A.HInterID='" + HID + "' and b.HEntryID='" + HEntryID + "'");
             var dataSet = oCN.RunProcReturn(sql, "OA_ErrMsgBackBillMain");
             if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
@@ -1027,6 +1028,7 @@
                 {
 
                     bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    _ = SendDingDingAsync(oBill.omodel.HSendMan, oBill.omodel.HHandleEmpID,oBill.omodel.HDescription,"");
                 }
                 else if (refSav == "Update")
                 {
@@ -2001,6 +2003,7 @@
                 {
 
                     bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    _ = SendDingDingAsync(oBill.omodel.HSendMan, 1, oBill.omodel.HDescription, oBill.omodel.HReceiveMan);
                 }
                 else if (refSav == "Update")
                 {
@@ -2917,6 +2920,7 @@
                 {
 
                     bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    _ = SendDingDingAsync(oBill.omodel.HSendMan, 1, oBill.omodel.HDescription, oBill.omodel.HReceiveMan);
                 }
                 else if (refSav == "Update")
                 {
@@ -3830,6 +3834,7 @@
                 {
 
                     bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                    _ = SendDingDingAsync(oBill.omodel.HReceiveMan, 0, oBill.omodel.HDescription, oBill.omodel.HCopyMan);
                 }
                 else if (refSav == "Update")
                 {
@@ -6606,7 +6611,95 @@
 
         #endregion
 
-       
+
+        #region 寮傚父鍙嶉 鎺ユ敹,澶勭悊,楠屾敹鍗曚繚瀛樺彂閫佹秷鎭�
+        /// <summary>
+        /// 寮傚父鍙嶉 鎺ユ敹,澶勭悊,楠屾敹鍗曚繚瀛樺彂閫佹秷鎭�
+        /// </summary>
+        /// <param name="HSendMan"></param>
+        /// <param name="HHandleEmpID"></param>
+        /// <param name="HDescription"></param>
+        /// <param name="HCopyMan"></param>
+        /// <returns></returns>
+        public async Task<object> SendDingDingAsync(string HSendMan, int HHandleEmpID,string HDescription,string HCopyMan)
+        {
+            string concatenatedNames = "";
+            Cls_DDMsg msg = new Cls_DDMsg();
+            string appKey = "dingrsrzhdyn3mlaof95";
+            string appSecret = "RAqH6YtZnPLCpDbuqfaYQkKkVtVdS0wqfC8I26X6qiS-8eoCJCNrzx3fubGND4Sq";
+            if (HHandleEmpID==0) //寮傚父鍙嶉楠屾敹鍗曚繚瀛�  灏嗘秷鎭� 鍙戦�佺粰 鎺ユ敹浜猴紝鎸囨淳澶勭悊浜猴紝鍏ㄩ儴鎶勯�佷汉 
+            {
+                string HReceiveMan = HSendMan;
+                string[] names = HCopyMan.Split(',');
+                string sqlNames = "";
+                foreach (string name in names)
+                {                   
+                    sqlNames += "'" + name.Trim() + "',";
+                }
+                sqlNames = sqlNames.TrimEnd(',');
+                //鑾峰彇鎸囨淳澶勭悊浜�,鍙戦�佷汉鐨勯拤閽塱d
+                string sql1 = "select HDingDingUserID 閽夐拤id from Gy_Czygl where Czymc in ('" + HReceiveMan + "'," + sqlNames + ")";
+                ds = oCN.RunProcReturn(sql1, "Gy_Czygl");
+                List<string> HNames = new List<string>();
+                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                {
+                    string HName = ds.Tables[0].Rows[i]["閽夐拤id"].ToString();
+                    HNames.Add(HName);
+
+                }
+                concatenatedNames = string.Join(",", HNames);
+            }
+            else if (HHandleEmpID==1)//寮傚父鍙嶉绛惧埌鍗�,寮傚父鍙嶉澶勭悊鍗�  灏嗘秷鎭� 鍙戦�佺粰 鍙戦�佷汉锛屾帴鏀朵汉
+            {
+                //鑾峰彇鍙戦�佷汉  鎺ユ敹浜�
+                string HReceiveMan = HCopyMan;
+                string sql1 = "select HDingDingUserID 閽夐拤id from Gy_Czygl where Czymc in ('" + HSendMan + "','" + HReceiveMan + "')";
+                ds = oCN.RunProcReturn(sql1, "Gy_Czygl");
+                List<string> HNames = new List<string>();
+                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                {
+                    string HName = ds.Tables[0].Rows[i]["閽夐拤id"].ToString();
+                    HNames.Add(HName);
+
+                }
+                concatenatedNames = string.Join(",", HNames);
+            }
+            else
+            {
+                //鏌ヨ鎸囨淳澶勭悊浜�
+                string sql = "select HName from Gy_Employee where HItemID='" + HHandleEmpID + "'";
+                ds = oCN.RunProcReturn(sql, "Gy_Employee");
+                string HHandleEmpName = ds.Tables[0].Rows[0]["HName"].ToString();
+                //鑾峰彇鎸囨淳澶勭悊浜�,鍙戦�佷汉鐨勯拤閽塱d
+                string sql1 = "select HDingDingUserID 閽夐拤id from Gy_Czygl where Czymc in ('" + HSendMan + "','" + HHandleEmpName + "')";
+                ds = oCN.RunProcReturn(sql1, "Gy_Czygl");
+                List<string> HNames = new List<string>();
+                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
+                {
+                    string HName = ds.Tables[0].Rows[i]["閽夐拤id"].ToString();
+                    HNames.Add(HName);
+
+                }
+                concatenatedNames = string.Join(",", HNames);
+            }
+          
+            //鑾峰彇浼佷笟鐨刟ccess_token鐨勫��
+            string response = msg.GetAccessToken(appKey, appSecret);
+            JObject responseJson = JObject.Parse(response);
+            // 鑾峰彇access_token鐨勫��
+            string accessToken = responseJson["accessToken"].ToString();
+
+            //璋冪敤鏂规硶鍙戦�佹秷鎭�           
+            string agentId = "3118119317";//閽夐拤鍚庡彴寤虹珛鐨勫皬绋嬪簭id
+            string userIdList = concatenatedNames;//閽夐拤浜哄憳鐨刬d
+            string deptIdList = "0"; // 绌哄瓧绗︿覆琛ㄧず涓嶆寚瀹氶儴闂�
+            string toAllUser = "false";
+            string message = HDescription;
+            response = await msg.SendTextMessage(accessToken, agentId, userIdList, deptIdList, toAllUser, message);
+            Console.WriteLine(response);
+            return response;
+        }
+        #endregion
 
         #region  寮傚父鍙嶉鍗曟煡璇紙鎺ユ敹鐨勶紝鍙戦�佺殑锛屾妱閫佺殑锛�
 
@@ -6657,5 +6750,129 @@
         }
         #endregion
 
+        #region 鎶ュ伐鍙拌烦杞紓甯稿弽棣堝崟 寮圭獥鑾峰彇鐢熶骇鐘舵�佷复鏃惰〃鐨� 鐗╂枡 鏁伴噺 淇℃伅 
+
+        [Route("Sc_MESTransFerWorkBill/Get_Sc_ICMOBillStatus")]
+        [HttpGet]
+        public object Get_Sc_ICMOBillStatus(string HSourceBill)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                string sql = "select a.HSourceBillNo 娴佽浆鍗″彿,a.HSourceBillType 娴佽浆鍗$被鍨�,a.HSourceInterID 娴佽浆鍗′富鍐呯爜,a.HSourceEntryID 娴佽浆鍗″瓙鍐呯爜,b.HNumber 鐗╂枡浠g爜,b.HName 鐗╂枡鍚嶇О,b.HModel 瑙勬牸鍨嬪彿,a.HPlanQty 璁″垝鏁伴噺 from Sc_ICMOBillStatus_Tmp a left join Gy_Material b on a.HMaterID=b.HItemID where HSourceBillNo='" + HSourceBill + "'";
+                ds = oCN.RunProcReturn(sql, "Sc_ICMOBillStatus_Tmp");
+
+                //娣诲姞鍒楀悕
+                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;
+            }
+        }
+        #endregion
+
+        #region 鎶ュ伐鍙拌烦杞紓甯稿弽棣堝崟 寮圭獥鑾峰彇 寮傚父绫诲瀷
+
+        [Route("Sc_MESTransFerWorkBill/Get_ErrMsgBackType")]
+        [HttpGet]
+        public object Get_ErrMsgBackType(string TypeName)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                string sql = "select HItemID,HName from Gy_ErrMsgBackType where HName='" + TypeName + "'";
+                ds = oCN.RunProcReturn(sql, "Gy_ErrMsgBackType");
+
+                //娣诲姞鍒楀悕
+                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;
+            }
+        }
+        #endregion
+
+        #region 鎶ュ伐鍙拌烦杞紓甯稿弽棣堝崟 寮圭獥鑾峰彇 褰撳墠浜虹殑涓婄骇
+
+        [Route("Sc_MESTransFerWorkBill/Get_UserSuperiors")]
+        [HttpGet]
+        public object Get_UserSuperiors(string HName)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏍规嵁褰撳墠浜鸿幏鍙栬亴鍔�
+                string sql = "select a.Czymc 鐢ㄦ埛鍚嶇О,c.GroupName 鑱屽姟 from Gy_Czygl a left join System_UserGroupInfo b on a.Czybm = b.UserId left join System_UserGroup c on b.GroupId = c.GroupID  where a.Czymc = '"+HName+"'";
+                ds = oCN.RunProcReturn(sql, "Gy_ErrMsgBackType");
+                string Job = ds.Tables[0].Rows[0]["鑱屽姟"].ToString();
+                //鏍规嵁鑱屽姟鎵惧埌浠栫殑涓婄骇
+                string sql1 = "select *  from Gy_Duty where HParentID=(select HParentID from Gy_Duty where HItemID =(select HParentID from Gy_Duty group by HParentID, HName having HName = '"+Job+"' and count(*) = 1))";
+                ds = oCN.RunProcReturn(sql1, "Gy_Duty");
+                string Job1= ds.Tables[0].Rows[0]["HName"].ToString(); 
+                //鐢ㄤ笂绾х殑鑱屽姟鎵惧埌鐢ㄦ埛
+                string sql2 = "select a.Czymc 鐢ㄦ埛鍚嶇О  from Gy_Czygl a left join System_UserGroupInfo b on a.Czybm = b.UserId left join System_UserGroup c on b.GroupId = c.GroupID  where c.GroupName = '"+Job1+"'";
+                ds = oCN.RunProcReturn(sql2, "Gy_Czygl");
+                //娣诲姞鍒楀悕
+                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;
+            }
+        }
+        #endregion
+
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1