From 662c8acd89bdcbbd92d1b917d6128cbcce0134d7 Mon Sep 17 00:00:00 2001
From: tjx <t2856754968@163.com>
Date: 星期四, 04 十二月 2025 14:42:55 +0800
Subject: [PATCH] 三个检验增加钉钉推送
---
MES.Service/service/QC/SJService.cs | 672 ++++++++++++++++++++++++++++++++++---------------------
1 files changed, 416 insertions(+), 256 deletions(-)
diff --git a/MES.Service/service/QC/SJService.cs b/MES.Service/service/QC/SJService.cs
index 7344103..3d9effa 100644
--- a/MES.Service/service/QC/SJService.cs
+++ b/MES.Service/service/QC/SJService.cs
@@ -48,7 +48,8 @@
}
//鑾峰彇鎵�鏈夋暟鎹垎椤�
- public (List<SJPageResult> items, int totalCount) getPage(SJPageResult queryObj)
+ public (List<SJPageResult> items, int totalCount) getPage(
+ SJPageResult queryObj)
{
var db = SqlSugarHelper.GetInstance();
@@ -59,14 +60,19 @@
//if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser))
// lineNo = _baseService.getUserLineNo(queryObj.StatusUser);
- var data = db.Queryable<SJPageResult, Womdaa, Womcaa, SysDepartment, MesUserDepartmentQc,MesItems> ((a,
- da,ca,d,dq,i) =>
+ var data = db
+ .Queryable<SJPageResult, Womdaa, Womcaa, SysDepartment,
+ MesUserDepartmentQc, MesItems>((a,
+ da, ca, d, dq, i) =>
new JoinQueryInfos(
- JoinType.Left, Convert.ToDecimal(a.Pbaid) == da.Id, // 鍏宠仈宸ュ崟淇℃伅
- JoinType.Left, da.Daa021 == ca.Caa020,//浠诲姟鍗曪紝鐢ㄤ簬鏌ヨ閿�鍞鍗曞彿
- JoinType.Left, d.Departmentid == Convert.ToDecimal(da.Daa013),//鏌ヨ杞﹂棿
- JoinType.Left, dq.Departmentcode == d.Departmentcode,//鏌ヨ鐢ㄦ埛鏉冮檺
- JoinType.Left, i.Id == Convert.ToDecimal(da.Daa002)//鏌ヨ鐢ㄦ埛鏉冮檺
+ JoinType.Left,
+ Convert.ToDecimal(a.Pbaid) == da.Id, // 鍏宠仈宸ュ崟淇℃伅
+ JoinType.Left, da.Daa021 == ca.Caa020, //浠诲姟鍗曪紝鐢ㄤ簬鏌ヨ閿�鍞鍗曞彿
+ JoinType.Left,
+ d.Departmentid == Convert.ToDecimal(da.Daa013), //鏌ヨ杞﹂棿
+ JoinType.Left,
+ dq.Departmentcode == d.Departmentcode, //鏌ヨ鐢ㄦ埛鏉冮檺
+ JoinType.Left, i.Id == Convert.ToDecimal(da.Daa002) //鏌ヨ鐢ㄦ埛鏉冮檺
))
//.WhereIF(lineNo != null && lineNo.Length > 0,
// a => lineNo.Contains(a.line))
@@ -86,11 +92,14 @@
(a, da, ca, d, dq) => dq.Usercode == queryObj.LoginUser)
//鍖归厤鎼滅储瀛楃涓�
.WhereIF(!string.IsNullOrEmpty(queryObj.SearchValue),
- (a, da, ca, d, dq,i) =>
- a.BillNo.ToLower().Contains(queryObj.SearchValue.ToLower())||
- i.ItemName.ToLower() .Contains(queryObj.SearchValue.ToLower()) ||
- ca.Caa015.ToLower().Contains(queryObj.SearchValue.ToLower()) ||
- i.ItemNo.ToLower().Contains(queryObj.SearchValue.ToLower()))
+ (a, da, ca, d, dq, i) =>
+ a.BillNo.ToLower()
+ .Contains(queryObj.SearchValue.ToLower()) ||
+ i.ItemName.ToLower()
+ .Contains(queryObj.SearchValue.ToLower()) ||
+ ca.Caa015.ToLower()
+ .Contains(queryObj.SearchValue.ToLower()) ||
+ i.ItemNo.ToLower().Contains(queryObj.SearchValue.ToLower()))
.Select((a, da, ca, d, dq) => new SJPageResult
{
Id = a.Id,
@@ -120,7 +129,8 @@
PlanName = a.PlanName
})
.OrderBy(a => a.CreateTime, OrderByType.Desc);
- var items = data.ToPageList(queryObj.PageIndex, queryObj.Limit,ref totalCount);
+ var items = data.ToPageList(queryObj.PageIndex, queryObj.Limit,
+ ref totalCount);
return (items, totalCount);
}
@@ -154,66 +164,66 @@
// result = "鏈娴�"
// }).ToList();
// }
- public List<QsItemIpiItem> SetQSItems(string itemNo,string planName)
+ public List<QsItemIpiItem> SetQSItems(string itemNo, string planName)
{
var db = SqlSugarHelper.GetInstance();
var count = db.Queryable<MesQa>().Where(s => s.QsType == "1"
- && s.ItemNo == itemNo &&s.QaPlan == planName && s.Fsubmit == 1).Count();
+ && s.ItemNo == itemNo && s.QaPlan == planName && s.Fsubmit == 1)
+ .Count();
if (count <= 0) return [];
//鏂板鏍规嵁璁″垝鍚嶇О鏌ヨID
decimal? QsId = db.Queryable<MesQa>()
- .Where(s => s.QsType == "1"
- && s.ItemNo == itemNo
- && s.QaPlan == planName
- && s.Fsubmit == 1)
- .Select(s => s.Id)
- .First();
+ .Where(s => s.QsType == "1"
+ && s.ItemNo == itemNo
+ && s.QaPlan == planName
+ && s.Fsubmit == 1)
+ .Select(s => s.Id)
+ .First();
return db //鏍规嵁涓昏〃ID鏌ヨ
- .Queryable<MesQualityStandard>()
- .Where(b => b.Pid == QsId).Select(
- b => new QsItemIpiItem
- {
- ProjName = b.ProjName,
- ItemMod = b.ItemMod,
- InspectionMethod = b.InspectionMethod,
- UsingInstruments = b.UsingInstruments,
- LevelNum = SqlFunc.IsNull(
- SqlFunc.IsNull(b.LevelNum * b.InspectionLevel, 1),
- b.InspectionLevel),
- MaxValue = b.MaxValue,
- StandardValue = b.StandardValue,
- MinValue = b.MinValue,
- Notes = b.Notes,
- FcheckLevel = b.FcheckLevel,
- FacLevel = b.FacLevel,
- QsCode = b.QsCode,
- QsName = b.QsName,
- Picture = b.Picture,
- Picturename = b.Picturename,
- result = "鏈娴�",
- isCheck = 0
- }).ToList();
+ .Queryable<MesQualityStandard>()
+ .Where(b => b.Pid == QsId).Select(b => new QsItemIpiItem
+ {
+ ProjName = b.ProjName,
+ ItemMod = b.ItemMod,
+ InspectionMethod = b.InspectionMethod,
+ UsingInstruments = b.UsingInstruments,
+ LevelNum = SqlFunc.IsNull(
+ SqlFunc.IsNull(b.LevelNum * b.InspectionLevel, 1),
+ b.InspectionLevel),
+ MaxValue = b.MaxValue,
+ StandardValue = b.StandardValue,
+ MinValue = b.MinValue,
+ Notes = b.Notes,
+ FcheckLevel = b.FcheckLevel,
+ FacLevel = b.FacLevel,
+ QsCode = b.QsCode,
+ QsName = b.QsName,
+ Picture = b.Picture,
+ Picturename = b.Picturename,
+ result = "鏈娴�",
+ isCheck = 0
+ }).ToList();
}
- public List<SJBadReason>? GetReason(string billNo)//绾犳鎺柦鍗曡幏鍙栦笉鑹俊鎭�
+ public List<SJBadReason>? GetReason(string billNo) //绾犳鎺柦鍗曡幏鍙栦笉鑹俊鎭�
{
var db = SqlSugarHelper.GetInstance();
- var count = db.Queryable<SJBadReason>().Where(s => s.BillNo == billNo).Count();
+ var count = db.Queryable<SJBadReason>().Where(s => s.BillNo == billNo)
+ .Count();
if (count <= 0) return null;
var reason = db
.Queryable<SJBadReason>()
- .Where(s => s.BillNo == billNo).Select(
- b => new SJBadReason
- {
- Reason =b.Reason
- }).ToList();
+ .Where(s => s.BillNo == billNo).Select(b => new SJBadReason
+ {
+ Reason = b.Reason
+ }).ToList();
return reason;
}
@@ -221,10 +231,13 @@
public List<QsItemIpiItem> getQSItems(decimal? pid, decimal? id)
{
var db = SqlSugarHelper.GetInstance();
- var qsItemIpiItems = db.Queryable<QsItemIpiItem>().WhereIF(pid > 0, a => a.Pid == pid).WhereIF(id > 0, a => a.Id == id).ToList();
+ var qsItemIpiItems = db.Queryable<QsItemIpiItem>()
+ .WhereIF(pid > 0, a => a.Pid == pid)
+ .WhereIF(id > 0, a => a.Id == id).ToList();
var array = qsItemIpiItems.Select(s => s.Id).ToArray();
- var qsItemIpiItemDetails = db.Queryable<QsItemIpiItemDetail>().Where(s => array.Contains(s.Pid)).GroupBy(s => s.Pid)
+ var qsItemIpiItemDetails = db.Queryable<QsItemIpiItemDetail>()
+ .Where(s => array.Contains(s.Pid)).GroupBy(s => s.Pid)
.Select(s => new
{
s.Pid,
@@ -252,7 +265,8 @@
});
//浣跨敤linq琛ㄨ揪寮忚繃婊ゅ嚭鍥剧墖id涓嶄负绌虹殑鏁版嵁
- var itemIpiItems =qsItemIpiItems.Where(s => s.Picture is { Length: > 0 }).ToList();
+ var itemIpiItems = qsItemIpiItems
+ .Where(s => s.Picture is { Length: > 0 }).ToList();
if (itemIpiItems.Count > 0)
itemIpiItems.ForEach(s =>
{
@@ -271,19 +285,18 @@
{
var qsItemIpiReq = item.From;
var qsItemIpiItems = item.Items;
- SqlSugarHelper.UseTransactionWithOracle(
- db =>
- {
- qsItemIpiReq.StatusDate = DateTime.Now;
- var pid = db.Insertable(qsItemIpiReq).ExecuteReturnIdentity();
- qsItemIpiReq.Id = pid;
+ SqlSugarHelper.UseTransactionWithOracle(db =>
+ {
+ qsItemIpiReq.StatusDate = DateTime.Now;
+ var pid = db.Insertable(qsItemIpiReq).ExecuteReturnIdentity();
+ qsItemIpiReq.Id = pid;
- item.gid = pid;
+ item.gid = pid;
- qsItemIpiItems.ForEach(s => s.Pid = pid);
+ qsItemIpiItems.ForEach(s => s.Pid = pid);
- return db.Insertable(qsItemIpiItems).ExecuteCommand();
- });
+ return db.Insertable(qsItemIpiItems).ExecuteCommand();
+ });
item.Items = getQSItems(qsItemIpiReq.Id, null);
//娌℃湁涓婁笅闄愮殑妫�楠岄」鐩嚜鍔ㄧ洏鐐逛负鍚堟牸
@@ -314,7 +327,7 @@
var db = SqlSugarHelper.GetInstance();
var del = db.Deleteable<QsItemIpiItem>()
- .Where(s=>s.Pid == item.gid)
+ .Where(s => s.Pid == item.gid)
.ExecuteCommand();
//QsItemIpiItemDetail
@@ -324,25 +337,22 @@
var qsItemIpiItems = item.Items;
- SqlSugarHelper.UseTransactionWithOracle(
- db =>
- {
- // 1. 璁剧疆鐖剁骇ID
- qsItemIpiItems.ForEach(s => s.Pid = item.gid);
+ SqlSugarHelper.UseTransactionWithOracle(db =>
+ {
+ // 1. 璁剧疆鐖剁骇ID
+ qsItemIpiItems.ForEach(s => s.Pid = item.gid);
- // 2. 鎻掑叆
- db.Insertable(qsItemIpiItems).ExecuteCommand();
+ // 2. 鎻掑叆
+ db.Insertable(qsItemIpiItems).ExecuteCommand();
- // 3. 閲嶆柊浠庢暟鎹簱鏌ヨ鎻掑叆鍚庣殑璁板綍锛堟寜 pid 鏌ヨ锛� 闃叉妫�楠岀粨鏋滄洿鏂板埌鏃ч」鐩笂
- qsItemIpiItems = db.Queryable<QsItemIpiItem>()
- .Where(x => x.Pid == item.gid)
- .ToList();
+ // 3. 閲嶆柊浠庢暟鎹簱鏌ヨ鎻掑叆鍚庣殑璁板綍锛堟寜 pid 鏌ヨ锛� 闃叉妫�楠岀粨鏋滄洿鏂板埌鏃ч」鐩笂
+ qsItemIpiItems = db.Queryable<QsItemIpiItem>()
+ .Where(x => x.Pid == item.gid)
+ .ToList();
- // 鉁� 杩斿洖鍊间笉閲嶈锛屽彧瑕佷繚璇佷簨鍔℃彁浜ゅ嵆鍙�
- return 1;
- });
-
-
+ // 鉁� 杩斿洖鍊间笉閲嶈锛屽彧瑕佷繚璇佷簨鍔℃彁浜ゅ嵆鍙�
+ return 1;
+ });
//item.Items = getQSItems(item.gid, null);
@@ -350,10 +360,12 @@
//娌℃湁涓婁笅闄愮殑妫�楠岄」鐩嚜鍔ㄧ洏鐐逛负鍚堟牸
qsItemIpiItems.ForEach(s =>
{
- if (s.MaxValue != null || s.StandardValue != null || s.MinValue != null)
+ if (s.MaxValue != null || s.StandardValue != null ||
+ s.MinValue != null)
{
return;
}
+
var detail = new QsItemIpiItemDetail();
detail.Pid = s.Id;
detail.Gid = item.gid;
@@ -369,32 +381,34 @@
return item;
}
- public decimal SavePlan(decimal pid,string PlanName)
+ public decimal SavePlan(decimal pid, string PlanName)
{
var db = SqlSugarHelper.GetInstance();
var res = db.Updateable<QsItemIpiReq>()
- .SetColumns(a => a.QaPlan == PlanName)
- .Where(a => a.Id == pid)
- .ExecuteCommand();
+ .SetColumns(a => a.QaPlan == PlanName)
+ .Where(a => a.Id == pid)
+ .ExecuteCommand();
return res;
-
}
- public List<string?> GetItemProj(string? itemNo)
- { //鑾峰彇鐗╂枡鎵�鏈夌殑妫�楠岃鍒掑悕绉�
+ public List<string?> GetItemProj(string? itemNo)
+ {
+ //鑾峰彇鐗╂枡鎵�鏈夌殑妫�楠岃鍒掑悕绉�
var db = SqlSugarHelper.GetInstance();
- var plans = db.Queryable<MesQa>().Where(a => a.ItemNo == itemNo && a.QsType == "1")
- .Select(s => s.QaPlan)
- .Distinct()
- .ToList();
+ var plans = db.Queryable<MesQa>()
+ .Where(a => a.ItemNo == itemNo && a.QsType == "1")
+ .Select(s => s.QaPlan)
+ .Distinct()
+ .ToList();
return plans;
}
- public (decimal?,string?, string?) CreateNew(string? DaaNo,string? userNo,string? planName)
+ public (decimal?, string?, string?) CreateNew(string? DaaNo, string? userNo,
+ string? planName)
{
var db = SqlSugarHelper.GetInstance();
// 鍒涘缓鍙傛暟
@@ -403,12 +417,13 @@
var FplanName = new SugarParameter("P_PLAN_NAME", planName);
- var FRes = new SugarParameter("po_result", null, true); // 杈撳嚭鍙傛暟
+ var FRes = new SugarParameter("po_result", null, true); // 杈撳嚭鍙傛暟
var FMsg = new SugarParameter("po_Message", null, true);
var FBillNo = new SugarParameter("po_BILL_NO", null, true);
// 鎵ц瀛樺偍杩囩▼
- db.Ado.UseStoredProcedure().GetDataTable("PRC_PQC_ITEM_INSERT_JK", FitemNo, FuserNo, FplanName, FRes, FMsg, FBillNo);
+ db.Ado.UseStoredProcedure().GetDataTable("PRC_PQC_ITEM_INSERT_JK",
+ FitemNo, FuserNo, FplanName, FRes, FMsg, FBillNo);
// 鑾峰彇杈撳嚭缁撴灉
var Res = Convert.ToInt32(FRes.Value);
@@ -417,7 +432,7 @@
Console.WriteLine($"缁撴灉: {Res}, 杩斿洖娑堟伅: {Msg},鍗曟嵁鍙凤細{BillNo}");
- return (Res,Msg, BillNo);
+ return (Res, Msg, BillNo);
}
public int SetQSItemDetail(QsItemIpiItemDetail detail)
@@ -436,6 +451,7 @@
item.CreateDate = DateTime.Now;
result.Add(item);
}
+
return db.Insertable(result).ExecuteCommand();
});
@@ -480,8 +496,8 @@
if (count == passCount) result = 1;
- var useTransactionWithOracle = SqlSugarHelper.UseTransactionWithOracle(
- db =>
+ var useTransactionWithOracle =
+ SqlSugarHelper.UseTransactionWithOracle(db =>
{
var commit = 0;
commit += db.Updateable<QsItemIpiItem>()
@@ -552,14 +568,15 @@
var db = SqlSugarHelper.GetInstance();
// 鍒涘缓鍙傛暟
- var FId= new SugarParameter("P_ID", detail.Gid);
+ var FId = new SugarParameter("P_ID", detail.Gid);
// 杈撳嚭鍙傛暟
var FRes = new SugarParameter("c_result", null, true);
var FMsg = new SugarParameter("c_msg", null, true);
// 鎵ц瀛樺偍杩囩▼
- db.Ado.UseStoredProcedure().GetDataTable("PRC_SJ_UPDATE_RESU", FId, FRes, FMsg);
+ db.Ado.UseStoredProcedure()
+ .GetDataTable("PRC_SJ_UPDATE_RESU", FId, FRes, FMsg);
// 鑾峰彇杈撳嚭缁撴灉
var Res = Convert.ToInt32(FRes.Value);
@@ -610,15 +627,16 @@
.ExecuteCommand();
});
}
-
-
+
+
//NOTES
public int saveNotesPid(QsItem dto)
{
return SqlSugarHelper.UseTransactionWithOracle(db =>
{
return db.Updateable<QsItemIpiItem>()
- .SetColumns(it =>it.Notes == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
+ .SetColumns(it =>
+ it.Notes == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
.Where(it => it.Id == dto.pid)
.ExecuteCommand();
});
@@ -630,7 +648,8 @@
return SqlSugarHelper.UseTransactionWithOracle(db =>
{
return db.Updateable<QsItemIpiItemDetail>()
- .SetColumns(it =>it.Remarks == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
+ .SetColumns(it =>
+ it.Remarks == dto.Remarks) //SetColumns鏄彲浠ュ彔鍔犵殑 鍐�2涓氨2涓瓧娈佃祴鍊�
.Where(it => it.Id == dto.id)
.ExecuteCommand();
});
@@ -659,7 +678,6 @@
public bool SJQaSubmit(QsItem item)
{
-
if (item == null)
throw new ArgumentNullException(nameof(item), "璐ㄦ椤规暟鎹笉鑳戒负绌�");
@@ -670,21 +688,23 @@
try
{
// 瀹氫箟杈撳嚭鍙傛暟
- var outputResult = new SugarParameter("o_Result", null, DbType.Int32, ParameterDirection.Output,
+ var outputResult = new SugarParameter("o_Result", null,
+ DbType.Int32, ParameterDirection.Output,
4000);
- var outputMessage = new SugarParameter("o_Msg", null, DbType.String, ParameterDirection.Output, 4000);
+ var outputMessage = new SugarParameter("o_Msg", null, DbType.String,
+ ParameterDirection.Output, 4000);
// 瀹氫箟杈撳叆鍙傛暟
var parameters = new List<SugarParameter>
- {
-
- new("p_Id", item.gid, DbType.Int32,ParameterDirection.Input),
- new("p_Flag", 1, DbType.Int32,ParameterDirection.Input),
- new("p_User", item.userNo, DbType.String, ParameterDirection.Input),
- outputResult,
- outputMessage
- };
+ {
+ new("p_Id", item.gid, DbType.Int32, ParameterDirection.Input),
+ new("p_Flag", 1, DbType.Int32, ParameterDirection.Input),
+ new("p_User", item.userNo, DbType.String,
+ ParameterDirection.Input),
+ outputResult,
+ outputMessage
+ };
var db = SqlSugarHelper.GetInstance();
@@ -697,8 +717,51 @@
var resultValue = outputResult.Value?.ToString();
var messageValue = outputMessage.Value?.ToString();
- if ("1".Equals(resultValue)) { throw new Exception(messageValue); }
- if ("0".Equals(resultValue)) { throw new Exception(messageValue); }
+ if ("1".Equals(resultValue))
+ {
+ throw new Exception(messageValue);
+ }
+
+ if ("0".Equals(resultValue))
+ {
+ // 鎴愬姛鎻愪氦鍚庢帹閫侀拤閽夋秷鎭�
+ var qaSjSuccess = db.Queryable<QaSj>()
+ .Where(s => s.Id == item.gid)
+ .First();
+ if (qaSjSuccess != null)
+ {
+ try
+ {
+ var qaMsgDto = new
+ {
+ id = qaSjSuccess.Id,
+ lineName = qaSjSuccess.LineName,
+ workshopName = qaSjSuccess.WorkshopName,
+ qaType = "棣栦欢棣栨瀹屾垚"
+ };
+
+ // 璋冪敤閽夐拤娑堟伅鎺ㄩ�佹帴鍙�
+ var client = new System.Net.Http.HttpClient();
+ var json =
+ Newtonsoft.Json.JsonConvert.SerializeObject(
+ qaMsgDto);
+ var content = new System.Net.Http.StringContent(json,
+ System.Text.Encoding.UTF8, "application/json");
+ var response = client
+ .PostAsync(
+ "http://192.168.0.100:9096/MesQaDingtalk/sendQaMsgSJ",
+ content).Result;
+ }
+ catch (Exception ex)
+ {
+ // 璁板綍閽夐拤鎺ㄩ�佸紓甯革紝浣嗕笉褰卞搷涓绘祦绋�
+ Console.WriteLine($"閽夐拤娑堟伅鎺ㄩ�佸け璐�: {ex.Message}");
+ }
+ }
+
+ throw new Exception(messageValue);
+ }
+
return true;
}
@@ -710,7 +773,6 @@
public bool SJQaReSubmit(QsItem item)
{
-
if (item == null)
throw new ArgumentNullException(nameof(item), "璐ㄦ椤规暟鎹笉鑳戒负绌�");
@@ -721,21 +783,23 @@
try
{
// 瀹氫箟杈撳嚭鍙傛暟
- var outputResult = new SugarParameter("o_Result", null, DbType.Int32, ParameterDirection.Output,
+ var outputResult = new SugarParameter("o_Result", null,
+ DbType.Int32, ParameterDirection.Output,
4000);
- var outputMessage = new SugarParameter("o_Msg", null, DbType.String, ParameterDirection.Output, 4000);
+ var outputMessage = new SugarParameter("o_Msg", null, DbType.String,
+ ParameterDirection.Output, 4000);
// 瀹氫箟杈撳叆鍙傛暟
var parameters = new List<SugarParameter>
- {
-
- new("p_Id", item.gid, DbType.Int32,ParameterDirection.Input),
- new("p_Flag", 2, DbType.Int32,ParameterDirection.Input),
- new("p_User", item.userNo, DbType.String, ParameterDirection.Input),
- outputResult,
- outputMessage
- };
+ {
+ new("p_Id", item.gid, DbType.Int32, ParameterDirection.Input),
+ new("p_Flag", 2, DbType.Int32, ParameterDirection.Input),
+ new("p_User", item.userNo, DbType.String,
+ ParameterDirection.Input),
+ outputResult,
+ outputMessage
+ };
var db = SqlSugarHelper.GetInstance();
@@ -748,8 +812,15 @@
var resultValue = outputResult.Value?.ToString();
var messageValue = outputMessage.Value?.ToString();
- if ("1".Equals(resultValue)) { throw new Exception(messageValue); }
- if ("0".Equals(resultValue)) { throw new Exception(messageValue); }
+ if ("1".Equals(resultValue))
+ {
+ throw new Exception(messageValue);
+ }
+
+ if ("0".Equals(resultValue))
+ {
+ throw new Exception(messageValue);
+ }
return true;
}
@@ -783,8 +854,6 @@
.Where(s => s.Id == id)
.ExecuteCommand();
});
-
-
}
/// <summary>
@@ -795,13 +864,13 @@
{
var db = SqlSugarHelper.GetInstance();
return db.Queryable<DingDept>()
- .Where(b => b.NoChild== 1)
- .Select(b => new DingDept
- {
- Id=b.Id,
- Name=b.Name
- })
- .ToList();
+ .Where(b => b.NoChild == 1)
+ .Select(b => new DingDept
+ {
+ Id = b.Id,
+ Name = b.Name
+ })
+ .ToList();
}
public List<DeptNode> BuildDeptTree()
@@ -844,14 +913,13 @@
{
var db = SqlSugarHelper.GetInstance();
return db.Queryable<DingStaff>()
- .Select(b => new DingStaff
- {
- StaffName=b.StaffName,
- Id=b .Id
- })
- .ToList();
+ .Select(b => new DingStaff
+ {
+ StaffName = b.StaffName,
+ Id = b.Id
+ })
+ .ToList();
}
-
/// <summary>
@@ -860,7 +928,8 @@
/// <returns></returns>
public static AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client CreateClient()
{
- AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
+ AlibabaCloud.OpenApiClient.Models.Config config =
+ new AlibabaCloud.OpenApiClient.Models.Config();
config.Protocol = "https";
config.RegionId = "central";
return new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client(config);
@@ -868,7 +937,8 @@
public static AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client CreateClient1()
{
- AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
+ AlibabaCloud.OpenApiClient.Models.Config config =
+ new AlibabaCloud.OpenApiClient.Models.Config();
config.Protocol = "https";
config.RegionId = "central";
return new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client(config);
@@ -878,11 +948,15 @@
public string GetToken()
{
AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client client = CreateClient1();
- AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest getAccessTokenRequest = new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest
- {
- AppKey = "dingyzos0r1bizj7g6lr",
- AppSecret = "-HP4RvK2OUbqhG3iBUpd_TPe5MZRj8cfLc0b8Skt8rhC3I38kVLY9SS8P3kLWFcH",
- };
+ AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest
+ getAccessTokenRequest =
+ new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.
+ GetAccessTokenRequest
+ {
+ AppKey = "dingyzos0r1bizj7g6lr",
+ AppSecret =
+ "-HP4RvK2OUbqhG3iBUpd_TPe5MZRj8cfLc0b8Skt8rhC3I38kVLY9SS8P3kLWFcH",
+ };
try
{
@@ -891,7 +965,8 @@
}
catch (TeaException err)
{
- Console.WriteLine($"TeaException: Code={err.Code}, Message={err.Message}");
+ Console.WriteLine(
+ $"TeaException: Code={err.Code}, Message={err.Message}");
return null;
}
catch (Exception _err)
@@ -904,7 +979,7 @@
public bool DingJZCSD(JzcsdData InData)
{
if (string.IsNullOrWhiteSpace(InData.Imodel))
- throw new Exception( "浜у搧鍨嬪彿涓嶈兘涓虹┖");
+ throw new Exception("浜у搧鍨嬪彿涓嶈兘涓虹┖");
if (string.IsNullOrWhiteSpace(InData.selectedDeptID))
throw new Exception("璇烽�夋嫨鎺ユ敹閮ㄩ棬");
@@ -922,7 +997,6 @@
throw new Exception("瀹℃壒閮ㄩ棬涓嶈兘涓虹┖");
-
var db = SqlSugarHelper.GetInstance();
string numUserId = db.Queryable<DingStaff>()
@@ -935,7 +1009,8 @@
// 浣跨敤 JSON 搴忓垪鍖栬緭鍑哄璞$殑璇︾粏鍐呭
- string InDataJson = JsonConvert.SerializeObject(InData, Formatting.Indented);
+ string InDataJson =
+ JsonConvert.SerializeObject(InData, Formatting.Indented);
Debug.WriteLine("InDataDetail: " + InDataJson);
// 鑾峰彇 Access Token
@@ -945,10 +1020,15 @@
throw new Exception("鑾峰彇 Access Token 澶辫触");
}
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client client = CreateClient();
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceHeaders startProcessInstanceHeaders = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceHeaders();
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client
+ client = CreateClient();
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceHeaders startProcessInstanceHeaders =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceHeaders();
Debug.WriteLine(accessToken);
- startProcessInstanceHeaders.XAcsDingtalkAccessToken = accessToken; // 浣跨敤鑾峰彇鍒扮殑 Access Token
+ startProcessInstanceHeaders.XAcsDingtalkAccessToken =
+ accessToken; // 浣跨敤鑾峰彇鍒扮殑 Access Token
/*
浜у搧鍨嬪彿 TextField-K2AD4O5B
绾犳浜嬮」鏉ユ簮 DDMultiSelectField_19MZJHE2ZWM80
@@ -961,111 +1041,192 @@
瀹℃壒閫夋嫨 DDSelectField_WE67NWABXM80
*/
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues1 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //绾犳浜嬮」鏉ユ簮
- Name = "DDMultiSelectField_19MZJHE2ZWM80",
- Value = InData.Source
- /* Value = JsonConvert.SerializeObject(new[] {
- new { value = InData.Source, label = "鍐呴儴瀹℃牳" }
- })*/
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues2 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //鎻愬嚭浜哄憳
- Name = "InnerContactField_WY9BZDYT7W00",
- Value = "[\"" + string.Join("\",\"", UserId) + "\"]",
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues3 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //鎻愬嚭鏃ユ湡
- Name = "DDDateField_JD4ISXXCNLS0",
- Value = DateTime.Now.ToString("yyyy-MM-dd"),
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues4 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //鎺ユ敹閮ㄩ棬
- Name = "DepartmentField_SLLT1GL6RC00",
- Value = InData.selectedDeptID,
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues5 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //璐熻矗浜�
- Name = "InnerContactField_1I3FYOICN4N40",
- Value = "[\"" + string.Join("\",\"", InData.selectedUserID) + "\"]"
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues6 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //鍥炲鏃ユ湡
- Name = "DDDateField_1NPTPIPNEI1S0",
- Value = InData.ReplyDate,
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues7 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //闂鎻忚堪
- Name = "TextareaField_1FUN513WLK4G0",
- Value = InData.Reason,
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues8 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //瀹℃壒閫夋嫨
- Name = "DDSelectField_WE67NWABXM80",
- Value = InData.selectedADept,
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues9 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //鎻愬嚭閮ㄩ棬
- Name = "DepartmentField_184EOWTFMJUK0",
- Value = "975745197",//鍥哄畾涓篗ES閮ㄩ棬
- };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues10 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
- {
- //浜у搧鍨嬪彿
- Name = "TextField-K2AD4O5B",
- Value = InData.Imodel,
- };
-
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues1 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //绾犳浜嬮」鏉ユ簮
+ Name = "DDMultiSelectField_19MZJHE2ZWM80",
+ Value = InData.Source
+ /* Value = JsonConvert.SerializeObject(new[] {
+ new { value = InData.Source, label = "鍐呴儴瀹℃牳" }
+ })*/
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues2 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //鎻愬嚭浜哄憳
+ Name = "InnerContactField_WY9BZDYT7W00",
+ Value =
+ "[\"" + string.Join("\",\"", UserId) + "\"]",
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues3 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //鎻愬嚭鏃ユ湡
+ Name = "DDDateField_JD4ISXXCNLS0",
+ Value = DateTime.Now.ToString("yyyy-MM-dd"),
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues4 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //鎺ユ敹閮ㄩ棬
+ Name = "DepartmentField_SLLT1GL6RC00",
+ Value = InData.selectedDeptID,
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues5 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //璐熻矗浜�
+ Name = "InnerContactField_1I3FYOICN4N40",
+ Value = "[\"" +
+ string.Join("\",\"",
+ InData.selectedUserID) + "\"]"
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues6 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //鍥炲鏃ユ湡
+ Name = "DDDateField_1NPTPIPNEI1S0",
+ Value = InData.ReplyDate,
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues7 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //闂鎻忚堪
+ Name = "TextareaField_1FUN513WLK4G0",
+ Value = InData.Reason,
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues8 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //瀹℃壒閫夋嫨
+ Name = "DDSelectField_WE67NWABXM80",
+ Value = InData.selectedADept,
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues9 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //鎻愬嚭閮ㄩ棬
+ Name = "DepartmentField_184EOWTFMJUK0",
+ Value = "975745197", //鍥哄畾涓篗ES閮ㄩ棬
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ formComponentValues10 =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues
+ {
+ //浜у搧鍨嬪彿
+ Name = "TextField-K2AD4O5B",
+ Value = InData.Imodel,
+ };
- AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest startProcessInstanceRequest = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest
- {
- OriginatorUserId = UserId,
- ProcessCode = "PROC-2752201A-3896-4CA7-82A1-ADBBE9F1B36A",
- DeptId = 987012076,
- FormComponentValues = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues>
- {
- formComponentValues1,formComponentValues2,formComponentValues3, formComponentValues4, formComponentValues5, formComponentValues6, formComponentValues7, formComponentValues8,
- formComponentValues9,formComponentValues10//, formComponentValues11, formComponentValues12, formComponentValues13, formComponentValues14
- },
- // TargetSelectActioners = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners>
- //{
- // targetSelectActioners0
- //},
- // Approvers = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestApprovers>
- //{
- // approvers0
- //},
- CcList = new List<string>
- {
- UserId
- },
- CcPosition = "START",
- };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest startProcessInstanceRequest =
+ new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.
+ StartProcessInstanceRequest
+ {
+ OriginatorUserId = UserId,
+ ProcessCode =
+ "PROC-2752201A-3896-4CA7-82A1-ADBBE9F1B36A",
+ DeptId = 987012076,
+ FormComponentValues =
+ new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.
+ Models.StartProcessInstanceRequest.
+ StartProcessInstanceRequestFormComponentValues>
+ {
+ formComponentValues1, formComponentValues2,
+ formComponentValues3, formComponentValues4,
+ formComponentValues5, formComponentValues6,
+ formComponentValues7, formComponentValues8,
+ formComponentValues9,
+ formComponentValues10 //, formComponentValues11, formComponentValues12, formComponentValues13, formComponentValues14
+ },
+ // TargetSelectActioners = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners>
+ //{
+ // targetSelectActioners0
+ //},
+ // Approvers = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestApprovers>
+ //{
+ // approvers0
+ //},
+ CcList = new List<string>
+ {
+ UserId
+ },
+ CcPosition = "START",
+ };
// 搴忓垪鍖� FormComponentValues 鍒楄〃涓� JSON 鏍煎紡
- string formComponentValuesJson = JsonConvert.SerializeObject(startProcessInstanceRequest.FormComponentValues, Formatting.Indented);
+ string formComponentValuesJson = JsonConvert.SerializeObject(
+ startProcessInstanceRequest.FormComponentValues,
+ Formatting.Indented);
Debug.WriteLine("FormComponentValues: " + formComponentValuesJson);
try
{
- string requestContent = Newtonsoft.Json.JsonConvert.SerializeObject(startProcessInstanceRequest);
+ string requestContent =
+ Newtonsoft.Json.JsonConvert.SerializeObject(
+ startProcessInstanceRequest);
Debug.WriteLine("startProcessInstanceRequest鍐呭锛�");
Debug.WriteLine(requestContent);
- var response = client.StartProcessInstanceWithOptions(startProcessInstanceRequest, startProcessInstanceHeaders, new RuntimeOptions());
+ var response = client.StartProcessInstanceWithOptions(
+ startProcessInstanceRequest, startProcessInstanceHeaders,
+ new RuntimeOptions());
//return $"閽夐拤宸ヤ綔娴佸疄渚嬪惎鍔ㄦ垚鍔�: {Newtonsoft.Json.JsonConvert.SerializeObject(response.Body)}";
return true;
}
catch (TeaException err)
{
- string requestContent = Newtonsoft.Json.JsonConvert.SerializeObject(startProcessInstanceRequest);
+ string requestContent =
+ Newtonsoft.Json.JsonConvert.SerializeObject(
+ startProcessInstanceRequest);
Debug.WriteLine("startProcessInstanceRequest鍐呭锛�");
Debug.WriteLine(startProcessInstanceRequest);
@@ -1088,5 +1249,4 @@
//return "鎮ㄤ笉鏄叕鍙告垚鍛樻垨杩樻湭琚姞鍏ュ埌鏁版嵁搴撲腑鎴栧悕瀛楀~鍐欓敊璇紝鏈壘鍒板尮閰嶇殑鐢ㄦ埛淇℃伅";
}
}
-
}
\ No newline at end of file
--
Gitblit v1.9.3