From 96fb607676bb3b9f2e3b191d64c44e801d08d0e5 Mon Sep 17 00:00:00 2001 From: zrg <z18737863051@163.com> Date: 星期一, 24 六月 2024 15:38:01 +0800 Subject: [PATCH] 生产质量日汇报单查询,增加发送钉钉时调用的方法,以及报工台点击异常按钮,输入信息保存后,进行钉钉发信息 --- WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs | 256 ++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 222 insertions(+), 34 deletions(-) diff --git a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs index 3444efa..3f55bdf 100644 --- a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs +++ b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs @@ -1,4 +1,6 @@ -锘縰sing DBUtility; +锘縰sing DAL; +using DBUtility; +using DLL; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; @@ -7,8 +9,11 @@ using System.Linq; using System.Net; using System.Net.Http; +using System.Timers; +using System.Threading.Tasks; using System.Web.Http; using WebAPI.Models; +using System.Threading; namespace WebAPI.Controllers.SCGL { @@ -43,7 +48,7 @@ /// <returns></returns> [Route("Sc_MESTransFerWorkBill/SaveGetMESTransFerWorkFrom")] [HttpPost] - public object SaveGetMESTransFerWorkFrom([FromBody] JObject msg) + public object SaveGetMESTransFerWorkFromAsync([FromBody] JObject msg) { var _value = msg["msg"].ToString(); @@ -151,7 +156,7 @@ objJsonResult.data = 1; return objJsonResult; } - + //string[] arrStr = oItem.HSendMan.Split(','); //鍙戦�佷汉 //arrStr = oItem.HReceiveMan.Split(','); //鎺ユ敹浜� string[] arrStr = oItem.HCopyMan.Split(','); //鎶勯�佷汉 @@ -165,7 +170,7 @@ Models.ClsOA_ErrMsgBackBillSub2 sb = new Models.ClsOA_ErrMsgBackBillSub2(); sb.HEntryID = i; sb.HReceiveMan = arrStr[i - 1]; - if (arrStr[i-1].ToString() == oItem.HSendMan) + if (arrStr[i - 1].ToString() == oItem.HSendMan) { sb.HReadFlag = true; } @@ -198,6 +203,7 @@ } } } + SaveOA_ErrMsgBackBillSub(msg2);//绗竴娆′繚瀛樺彂閫侀拤閽� } else @@ -396,7 +402,7 @@ if (sWhere == null || sWhere.Equals("")) { string sql = "select * from h_v_OA_ErrMsgBackBillList order by 鍗曟嵁鍙� desc"; - ds = oCN.RunProcReturn(sql, "p_v_OA_ErrMsgBackBillList"); + ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackBillList"); } else { @@ -518,10 +524,12 @@ A.HReceiveMan,A.HCopyMan,A.HHasten, A.HLevel,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.HSourceInterID,A.HSourceEntryID,A.HSourceBillNo,A.HSourceBillType, + A.HHandleEmpID,f.HName HHandleEmpName 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 where A.HInterID='" + HID + "' and b.HEntryID='" + HEntryID + "'"); var dataSet = oCN.RunProcReturn(sql, "OA_ErrMsgBackBillMain"); if (dataSet == null || dataSet.Tables[0].Rows.Count == 0) @@ -5523,16 +5531,16 @@ //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞� string s = ""; - int sYear = 0; - int sPeriod = 0; - if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DateTime.Now, ref sYear, ref sPeriod, ref s) == false) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = s; - objJsonResult.data = null; - return objJsonResult; - } + //int sYear = 0; + //int sPeriod = 0; + //if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DateTime.Now, ref sYear, ref sPeriod, ref s) == false) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = s; + // objJsonResult.data = null; + // return objJsonResult; + //} ListModels oListModels = new ListModels(); try @@ -5613,9 +5621,17 @@ //string[] arrStr = oItem.HSendMan.Split(','); //鍙戦�佷汉 //arrStr = oItem.HReceiveMan.Split(','); //鎺ユ敹浜� string[] arrStr = oItem.HCopyMan.Split(','); //鎶勯�佷汉 - List<string> b = new List<string>(arrStr); - b.Add(oItem.HReceiveMan); - arrStr = b.ToArray(); + if (!string.IsNullOrEmpty(oItem.HCopyMan)) + { + arrStr = oItem.HCopyMan.Split(','); // 鎶勯�佷汉 + List<string> b = new List<string>(arrStr); + b.Add(oItem.HReceiveMan); + arrStr = b.ToArray(); + } + else + { + arrStr = oItem.HReceiveMan.Split(',');//鎺ユ敹浜� + } //鎶勯�佷汉琛ㄤ綋鏁版嵁 for (int i = 1; i <= arrStr.Length; i++) { @@ -5733,18 +5749,17 @@ #region 宸ヤ綔鑱旂郴鍗曠紪杈戣幏鍙栨暟鎹� [Route("Sc_MESTransFerWorkBill/GetOA_WorkLinkBillListCheckDetai")] [HttpGet] - public object GetOA_WorkLinkBillListCheckDetai(string HID, string HEntryID) + public object GetOA_WorkLinkBillListCheckDetai(string HID) { try { List<object> columnNameList = new List<object>(); - string sql = string.Format(@"select A.*,B.HEntryID,B.HReadFlag,D.HName HDeptName,e.HName HEvaluateStatusName + string sql = string.Format(@"select A.*,D.HName HDeptName,e.HName HEvaluateStatusName from OA_WorkLinkBillMain A - inner join OA_WorkLinkBillSub2 B on A.HInterID=B.HInterID left join Gy_Department D on A.HDeptID=D.HItemID left join Gy_EvaluateStatus AS e ON A.HEvaluateStatusID = e.HItemID - where A.HInterID='" + HID + "' and b.HEntryID='" + HEntryID + "'"); ; + where A.HInterID='" + HID + "'" ); ; ds = oCN.RunProcReturn(sql, "OA_WorkLinkBillMain"); if (ds == null || ds.Tables[0].Rows.Count == 0) { @@ -6283,7 +6298,7 @@ #region 宸ヤ綔鑱旂郴鍗曞洖澶� /// <summary> - /// 寮傚父鍙嶉鍗� + /// 宸ヤ綔鑱旂郴鍗� /// </summary> /// <param name="msg"></param> /// <returns></returns> @@ -6312,16 +6327,16 @@ //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞� string s = ""; - int sYear = 0; - int sPeriod = 0; - if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DateTime.Now, ref sYear, ref sPeriod, ref s) == false) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = s; - objJsonResult.data = null; - return objJsonResult; - } + //int sYear = 0; + //int sPeriod = 0; + //if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DateTime.Now, ref sYear, ref sPeriod, ref s) == false) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = s; + // objJsonResult.data = null; + // return objJsonResult; + //} ListModels oListModels = new ListModels(); try @@ -6459,6 +6474,179 @@ } #endregion + #region 宸ヤ綔鑱旂郴鍗曞偓淇� + [Route("Sc_MESTransFerWorkBill/UpdateOA_WorkLinkBillHHasten")] + [HttpGet] + public object UpdateOA_WorkLinkBillHHasten(Int64 HInterID,string CurUserName) + { + try + { + //鏉冮檺 + if (!DBUtility.ClsPub.Security_Log_second("OA_WorkLinkBill_Edit", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + //HInterID鏁版嵁鍒ゆ柇 + if (HInterID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID灏忎簬0锛�"; + objJsonResult.data = null; + return objJsonResult; + } + Int64 lngBillKey = 0; + lngBillKey = DBUtility.ClsPub.isLong(HInterID); + DAL.ClsOA_WorkLinkBill oBill = new DAL.ClsOA_WorkLinkBill(); //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣� + //閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔 + if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁 + { + if (oBill.omodel.HCloseMan.Trim() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍌績锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (oBill.omodel.HDeleteMan.Trim() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘鍌績锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + string sql = "update OA_WorkLinkBillMain set HHasten = HHasten + 1 where HInterID = " + HInterID ; + + oCN.RunProc(sql); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 宸ヤ綔鑱旂郴鍗曟牴鎹簮鍗旾D鏌ョ湅鏄惁鏈夊搴旇仈绯诲崟 + [Route("Sc_MESTransFerWorkBill/GetOA_WorkLinkBillListBySourceID")] + [HttpGet] + public object GetOA_WorkLinkBillListBySourceID(string HRelationInterID, string HRelationEntryID) + { + try + { + List<object> columnNameList = new List<object>(); + + string sql = string.Format(@"select A.*,D.HName HDeptName,e.HName HEvaluateStatusName + from OA_WorkLinkBillMain A + left join Gy_Department D on A.HDeptID=D.HItemID + left join Gy_EvaluateStatus AS e ON A.HEvaluateStatusID = e.HItemID + where A.HRelationInterID='" + HRelationInterID + "' and A.HRelationEntryID= '"+ HRelationEntryID+"'"); ; + ds = oCN.RunProcReturn(sql, "OA_WorkLinkBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "false锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + } + catch (Exception ex) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�" + ex.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + + } + #endregion + + #endregion + + #region 寮傚父鍙嶉鍗曚繚瀛樺悗,寰�瀛愯〃閲岄潰鍘绘彃鍏ユ暟鎹� + public object SaveOA_ErrMsgBackBillSub(string msg2) + { + msg2 = "[" + msg2.ToString() + "]"; + List<ClsOA_ErrMsgBackBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsOA_ErrMsgBackBillMain>>(msg2); + + long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D + string HReceiveMan = mainList[0].HReceiveMan;//鎺ユ敹浜� + string HDescription = mainList[0].HDescription;//鍐呭 + int HEntryID = 1; + + string sql = "insert into OA_ErrMsgBackBillSub2 values('" + HInterID + "','" + HEntryID + "','" + HReceiveMan + "','0')"; + oCN.RunProcReturn(sql, "OA_ErrMsgBackBillSub2"); + //鐩存帴鍙戦�侀拤閽夋秷鎭� s + FistDingDingMesAsync(HReceiveMan, HDescription); + + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎻掑叆鎴愬姛,寮�濮嬫墽琛屽畾鏃朵换鍔�,閽夐拤鍙戦�佹秷鎭�"; + objJsonResult.data = 1; + return objJsonResult; + } + + /// <summary> + /// 寮傚父鍙嶉鍗曠涓�娆′繚瀛樼殑鏃跺�欒繘琛屽彂閫佹秷鎭� + /// </summary> + /// <param name="HReceiveMan"></param> + /// <param name="HDescription"></param> + public async void FistDingDingMesAsync(string HReceiveMan, string HDescription) + { + + ds = oCN.RunProcReturn("select * from Gy_Czygl where Czymc='" + HReceiveMan + "'", "Gy_Czygl"); + string DDUserID = ds.Tables[0].Rows[0]["DDUserID"].ToString(); //閽夐拤鐢ㄦ埛鐨刬d + Cls_DDMsg msg = new Cls_DDMsg(); + string appKey = "dingrsrzhdyn3mlaof95"; + string appSecret = "RAqH6YtZnPLCpDbuqfaYQkKkVtVdS0wqfC8I26X6qiS-8eoCJCNrzx3fubGND4Sq"; + //鑾峰彇浼佷笟鐨刟ccess_token鐨勫�� + string response = msg.GetAccessToken(appKey, appSecret); + JObject responseJson = JObject.Parse(response); + // 鑾峰彇access_token鐨勫�� + string accessToken = responseJson["accessToken"].ToString(); + //璋冪敤鏂规硶鍙戦�佹秷鎭� + string agentId = "3118119317"; //浼佷笟鍐呴儴灏忕▼搴廼d + string deptIdList = "0"; // 绌哄瓧绗︿覆琛ㄧず涓嶆寚瀹氶儴闂� + string toAllUser = "false"; + string message = HDescription;//寮傚父鍙嶉鍗曠殑鍐呭 + response = await msg.SendTextMessage(accessToken, agentId, DDUserID, deptIdList, toAllUser, message); + Console.WriteLine($"鍒濆娑堟伅鍙戦�佺粨鏋�: {response}"); + } + #endregion } } \ No newline at end of file -- Gitblit v1.9.1