| | |
| | | using Newtonsoft.Json; |
| | | using DLL; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Linq; |
| | | using Pub_Class; |
| | | using System; |
| | |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.IO; |
| | | using System.Threading.Tasks; |
| | | using System.Web; |
| | | using System.Web.Http; |
| | | using WebAPI.Models; |
| | |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "单据号:"+ oBill.omodel.HBillNo+ " 审核成功!"; |
| | |
| | | |
| | | if (bResult) |
| | | { |
| | | |
| | | //自动审核设置 |
| | | if (OperationType == "1") |
| | | { |
| | | objJsonResult.HInterID = oBill.omodel.HInterID.ToString(); //返回主ID |
| | | //系统参数 自动审核 |
| | | string sReturn = ""; |
| | | if (oSystemParameter.ShowBill(ref sReturn) == true) |
| | | { |
| | | if (oSystemParameter.omodel.SB_EquipICMOTechParamBill_Check == "Y") //系统参数 自动审核 |
| | | { |
| | | objJsonResult.Verify = "Y"; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.Verify = "N"; |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.HInterID = oBill.omodel.HInterID.ToString(); //返回主ID |
| | | objJsonResult.Verify = "N"; |
| | | } |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; //成功! |
| | |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | #endregion |
| | | |
| | | # region 手工点检表出现NG发送信息 |
| | | [Route("SB_EquipICMOTechParamBillController/HSendDDMeg")] |
| | | [HttpGet] |
| | | |
| | | public async Task<object> HSendDDMeg(string HInterID) |
| | | { |
| | | try |
| | | { |
| | | //查询子表是否有NG值 |
| | | ds = oCn.RunProcReturn("select * from SB_EquipICMOTechParamBillMain a inner join SB_EquipICMOTechParamBillSub b on a.HInterID=b.HInterID where b.HResult='NG' and a.HInterID=" + HInterID, "SB_EquipICMOTechParamBillMain"); |
| | | if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count != 0) |
| | | { |
| | | //查询并合并异常工艺参数值 |
| | | string sql = @"SELECT 生产车间, STUFF((SELECT ', ' + CAST(hsubid AS VARCHAR(10)) FROM h_v_SB_EquipICMOTechParamBillList_Detail AS InnerTable WHERE InnerTable.生产车间 = OuterTable.生产车间 AND InnerTable.检测结果 = 'NG' AND InnerTable.hmainid ='"+HInterID+"' FOR XML PATH('')), 1, 2, '') AS hsubid,STUFF(( SELECT '; ' + 设备编码 + ' - ' + 工艺参数 + ' - 工艺参数值: ' + CAST(工艺参数值 AS VARCHAR(10)) + ' - 标准值: ' + CAST(标准值 AS VARCHAR(10)) + ' - 上限: ' + CAST(上限 AS VARCHAR(10)) + ' - 下限: ' + CAST(下限 AS VARCHAR(10)) FROM h_v_SB_EquipICMOTechParamBillList_Detail AS InnerTable WHERE InnerTable.生产车间 = OuterTable.生产车间 AND InnerTable.检测结果 = 'NG' FOR XML PATH('') ), 1, 2, '') AS 内容 FROM h_v_SB_EquipICMOTechParamBillList_Detail AS OuterTable where OuterTable.hmainid = '" + HInterID + "' GROUP BY 生产车间"; |
| | | ds = oCn.RunProcReturn(sql, "h_v_SB_EquipICMOTechParamBillList_Detail"); |
| | | var HDeptName = ds.Tables[0].Rows[0]["生产车间"].ToString(); |
| | | var HDescription = ds.Tables[0].Rows[0]["内容"].ToString(); |
| | | var HSubID = ds.Tables[0].Rows[0]["hsubid"].ToString(); |
| | | //查询接收人 |
| | | string newSql1 = @"select a.HDingDingUserID 钉钉id,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 = '" + HDeptName + "工艺异常预警接收人'"; |
| | | DataSet dt = oCn.RunProcReturn(newSql1, "Gy_Czygl"); |
| | | if (dt.Tables[0].Rows.Count > 0) |
| | | { |
| | | |
| | | string appKey = ""; |
| | | string appSecret = ""; |
| | | string sReturn = ""; |
| | | string agentIds = ""; |
| | | Cls_DDMsg msg = new Cls_DDMsg(); |
| | | if (oSystemParameter.ShowBill(ref sReturn) == true) |
| | | { |
| | | //系统参数是否 N为本地,Y为斯莫尔 |
| | | if (oSystemParameter.omodel.OA_ErrMsgBackBill_SendDingDingMsg == "N") |
| | | { |
| | | appKey = "dingrsrzhdyn3mlaof95"; |
| | | appSecret = "RAqH6YtZnPLCpDbuqfaYQkKkVtVdS0wqfC8I26X6qiS-8eoCJCNrzx3fubGND4Sq"; |
| | | agentIds = "3118119317"; |
| | | } |
| | | else if (oSystemParameter.omodel.OA_ErrMsgBackBill_SendDingDingMsg == "Y") |
| | | { |
| | | appKey = "dingkdddbhdcssk7jduw"; |
| | | appSecret = "iv07c-GLfJPnzfJaNAAOfJDl3Z-eODvDAhlInMZCZhGorkle5Evbaxx3ImylvdjQ"; |
| | | agentIds = "3151454458"; |
| | | } |
| | | |
| | | } |
| | | |
| | | //获取企业的access_token的值 |
| | | string response = msg.GetAccessToken(appKey, appSecret); |
| | | JObject responseJson = JObject.Parse(response); |
| | | // 获取access_token的值 |
| | | string accessToken = responseJson["accessToken"].ToString(); |
| | | |
| | | |
| | | string HName = ""; // 用于存储拼接后的钉钉ID |
| | | List<string> dingDingIds = new List<string>(); // 用来存储钉钉ID的集合 |
| | | |
| | | // 拼接钉钉ID |
| | | for (int i = 0; i < dt.Tables[0].Rows.Count; i++) |
| | | { |
| | | dingDingIds.Add(dt.Tables[0].Rows[i]["钉钉id"].ToString()); // 将每个钉钉ID添加到列表中 |
| | | } |
| | | |
| | | // 使用逗号将钉钉ID拼接成一个字符串 |
| | | HName = string.Join(",", dingDingIds); |
| | | //更新为NG的子表字段 未 已发送 1 |
| | | oCn.RunProc("update SB_EquipICMOTechParamBillSub set HSendFlag =1 where HInterID='" + HInterID + "' and HEntryID in(" + HSubID + ")"); |
| | | response = await msg.SendTextMessage(accessToken, agentIds, HName, "0", "false", HDescription); |
| | | return response; |
| | | } |
| | | } |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "无NG工艺参数!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "发送失败!" + e.Message; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | } |
| | | #endregion |
| | | } |
| | | } |