From c2c81f518deb22140121bbb1c76c672d69d533c8 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期二, 11 三月 2025 15:41:36 +0800
Subject: [PATCH] 生产资源,工序冲突合并
---
WebAPI/Controllers/数据同步/钉钉同步/DD_DataSynchronizationController.cs | 809 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 756 insertions(+), 53 deletions(-)
diff --git "a/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\351\222\211\351\222\211\345\220\214\346\255\245/DD_DataSynchronizationController.cs" "b/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\351\222\211\351\222\211\345\220\214\346\255\245/DD_DataSynchronizationController.cs"
index 84d603b..48953e5 100644
--- "a/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\351\222\211\351\222\211\345\220\214\346\255\245/DD_DataSynchronizationController.cs"
+++ "b/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\351\222\211\351\222\211\345\220\214\346\255\245/DD_DataSynchronizationController.cs"
@@ -17,6 +17,8 @@
using DingTalk.Api.Response;
using System.Globalization;
using System.Linq;
+using AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models;
+using System.Text.RegularExpressions;
namespace WebAPI.Controllers
{
@@ -72,10 +74,13 @@
}
#region 鍙橀噺
- private string AppKey = "dingiokapm2dvjrhzl2g"; //宸插垱寤虹殑浼佷笟鍐呴儴搴旂敤鐨凙ppKey銆�
- private string AppSecret = "dPUD7tN3BGVYAC4lDzhpcBH7O4FWFDdjLJWa6cVRBQj5U7GJ4Gwr7Vohnv0oPBOr"; //宸插垱寤虹殑浼佷笟鍐呴儴搴旂敤鐨凙ppSecret銆�
- private long AgentID = 3188176952; //搴旂敤鐨凙gentId
- private string accessToken = ""; //璋冪敤璇ユ帴鍙g殑璁块棶鍑瘉銆�
+ //private string AppKey = "dingiokapm2dvjrhzl2g"; //宸插垱寤虹殑浼佷笟鍐呴儴搴旂敤鐨凙ppKey銆�
+ //private string AppSecret = "dPUD7tN3BGVYAC4lDzhpcBH7O4FWFDdjLJWa6cVRBQj5U7GJ4Gwr7Vohnv0oPBOr"; //宸插垱寤虹殑浼佷笟鍐呴儴搴旂敤鐨凙ppSecret銆�
+ //private long AgentID = 3188176952; //搴旂敤鐨凙gentId
+ private string AppKey = "dingj3hskhwk8jioofub"; //宸插垱寤虹殑浼佷笟鍐呴儴搴旂敤鐨凙ppKey銆�
+ private string AppSecret = "qGPbXJGJtFI__FYGdzZPIjHZP_o1jI1KnM4_bbKx9AUuXcYqr3UN6nkQeSe8GcT7"; //宸插垱寤虹殑浼佷笟鍐呴儴搴旂敤鐨凙ppSecret銆�
+ private long AgentID = 3553515838; //搴旂敤鐨凙gentId
+ public string accessToken = ""; //璋冪敤璇ユ帴鍙g殑璁块棶鍑瘉銆�
private string ProcessInstanceId = ""; //瀹℃壒瀹炰緥ID銆�
#endregion
@@ -85,6 +90,13 @@
public long? TotalCount;
public long? PageNumber;
public List<string> Data;
+ }
+ //oa瀹℃壒杩斿洖绫�
+ public class OA_GetInstanceIDListResponse
+ {
+ public List<string> list;//鑾峰彇鐨刬d鍒楄〃
+ public string nextToken;
+ public bool? success;
}
#region 鍒嗗眰瀹℃牳绛惧埌琛�
@@ -358,8 +370,83 @@
public List<Sc_MouldRepairWorkBillSub> DetailColMouldRepair = new List<Sc_MouldRepairWorkBillSub>();
}
-
+
#endregion
+
+ #region 寮傚父宸ユ椂鐢宠鍗�
+
+ #region 涓昏〃+瀛愯〃
+ public class Pay_ErrWorkTimesRequestBill
+ {
+ public int HInterID;
+ public string HBillNo;
+ public string HDate;
+ public string HInnerBillNo;
+ public int HDeptID;
+ public string HDeptName;
+ public int HGroupID;
+ public string HGroupName;
+ public int HMangerID;
+ public string HManagerName;
+ public int HICMOInterID;
+ public string HICMOBillNo;
+ public string HExplanation;
+ public double HSumRequestTimes;
+ public int HMaterID;
+ public string HMaterName;
+ public int HUnitID;
+ public string HUnitName;
+ public double HPlanQty;
+ public string HBatchNo;
+ public string HRemark;
+
+ public string HMaker;
+ public string HMakerDate;
+ public string HUpdater;
+ public string HUpdaterDate;
+ public string HChecker;
+ public string HCheckerDate;
+ public string HCloseMan;
+ public string HCloseManDate;
+ public string HDeleteMan;
+ public string HDeleteManDate;
+ public string HBacker;
+ public string HBackerDate;
+ public string HBackRemark;
+ public List<Pay_ErrWorkTimesRequestBillSub> Pay_ErrWorkTimesRequestBillSub = new List<Pay_ErrWorkTimesRequestBillSub>();
+ }
+ #endregion
+
+ #region 瀛愯〃
+ public class Pay_ErrWorkTimesRequestBillSub
+ {
+ public int HEmpID;
+ public string HEmpNumber;
+ public string HEmpName;
+ public int HWorkTypeID;
+ public string HWorkTypeNumber;
+ public string HWorkTypeName;
+ public double HPayMoney;
+ public string HBTimes;
+ public string HETimes;
+ public double HTimes;
+ public double HRelTimes;
+ public double HRelPay;
+ public string HRemark;
+
+ public int HSourceInterID;
+ public int HSourceEntryID;
+ public string HSourceBillNo;
+ public string HSourceBillType;
+ public double HRelationQty;
+ public double HRelationMoney;
+ public string HCloseMan;
+ public string HEntryCloseDate;
+ }
+ #endregion
+
+ #endregion
+
#endregion
#region 閽夐拤 閫氱敤鎿嶄綔鏂规硶
@@ -452,25 +539,29 @@
#region 鑾峰彇 閽夐拤-鏅鸿兘浜轰簨 鑾峰彇鍦ㄨ亴鍛樺伐ID鍒楄〃
public bool getEmployeeIDList_DingDing(long offset, long size, ref List<string> IDList, ref string msg)
{
+ LogService.Write("鏌ョ湅5-1-1");
OapiSmartworkHrmEmployeeQueryonjobResponse response = new OapiSmartworkHrmEmployeeQueryonjobResponse();
do
{
if (getEmployeeIDList_Page_DingDing(offset, size, ref response, ref msg) == false)
{
+ LogService.Write("鏌ョ湅5-1-2");
return false;
}
-
+ LogService.Write("鏌ョ湅5-1-3");
for (int i = 0; i < response.Result.DataList.Count; i++)
{
IDList.Add(response.Result.DataList[i]);
}
-
+ LogService.Write("鏌ョ湅5-1-4");
if (response.Result.NextCursor != 0)
{
+ LogService.Write("鏌ョ湅5-1-4-1");
offset = response.Result.NextCursor;
}
else
{
+ LogService.Write("鏌ョ湅5-1-5");
break;
}
} while (true);
@@ -505,6 +596,7 @@
#region 鑾峰彇 瀹滄惌鎸囧畾鍗曟嵁鐨勫疄渚婭D鍒楄〃--鎸囧畾鍒嗛〉鐨勬暟鎹�
public bool getInstanceIDList_Page_YiDa(string appType, string systemToken, string userID, string formUuid, int pageNumber, int pageSize, ref YD_GetInstanceIDListResponse response, ref string msg)
{
+ LogService.Write("鏌ョ湅4-浼犻�掑弬鏁�:appType=" + appType + ",systemToken=" + systemToken + ",formUuid=" + formUuid + ",userID=" + userID + ",pageSize=" + pageSize + ",pageNumber=" + pageNumber+ ",accessToken="+ this.accessToken);
AlibabaCloud.SDK.Dingtalkyida_1_0.Client client = CreateClient4();
AlibabaCloud.SDK.Dingtalkyida_1_0.Models.GetInstanceIdListHeaders getInstanceIdListHeaders = new AlibabaCloud.SDK.Dingtalkyida_1_0.Models.GetInstanceIdListHeaders();
getInstanceIdListHeaders.XAcsDingtalkAccessToken = this.accessToken;
@@ -527,9 +619,9 @@
//TaskId = "12", //浠诲姟ID銆�
//CreateFromTimeGMT = DateTime.Now.AddMonths(-1).ToString("yyyy-MM-dd"), //鍒涘缓鏃堕棿璧峰鍊笺��
- //CreateToTimeGMT = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd hh:mm:ss"), //鍒涘缓鏃堕棿缁堟鍊笺��
+ //CreateToTimeGMT = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd HH:mm:ss"), //鍒涘缓鏃堕棿缁堟鍊笺��
ModifiedFromTimeGMT = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd"), //淇敼鏃堕棿璧峰鍊笺��
- ModifiedToTimeGMT = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), //淇敼鏃堕棿缁堟鍊笺��
+ ModifiedToTimeGMT = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), //淇敼鏃堕棿缁堟鍊笺��
PageSize = pageSize, //鍒嗛〉澶у皬銆�
PageNumber = pageNumber, //鍒嗛〉椤电爜
@@ -551,7 +643,9 @@
{
// err 涓惈鏈� code 鍜� message 灞炴�э紝鍙府鍔╁紑鍙戝畾浣嶉棶棰�
}
+
msg = "閿欒浠g爜" + err.Code + "锛�" + err.Message;
+ LogService.Write("鏌ョ湅4-鎶ラ敊淇℃伅1:"+ msg);
return false;
}
@@ -566,6 +660,7 @@
// err 涓惈鏈� code 鍜� message 灞炴�э紝鍙府鍔╁紑鍙戝畾浣嶉棶棰�
}
msg = "閿欒浠g爜" + err.Code + "锛�" + err.Message;
+ LogService.Write("鏌ョ湅4-鎶ラ敊淇℃伅2:" + msg);
return false;
}
}
@@ -574,6 +669,7 @@
#region 鑾峰彇 瀹滄惌鎸囧畾鍗曟嵁鐨勫疄渚婭D鍒楄〃
public bool getInstanceIDList_YiDa(string appType, string systemToken, string userID, string formUuid, int pageNumber, int pageSize, ref List<string> IDList, ref string msg)
{
+ LogService.Write("鏌ョ湅4-1鏌ヨ");
YD_GetInstanceIDListResponse response = new YD_GetInstanceIDListResponse();
do
{
@@ -724,6 +820,145 @@
#endregion
#endregion
+ #region oa 閫氱敤鎿嶄綔鏂规硶
+
+ #region OA 鑾峰彇瀹℃壒瀹炰緥ID鍒楄〃(鍗曢〉)
+ public bool getInstanceIDList_Page_OA(string processCode,DateTime startTime, DateTime endTime,long nextToken, int maxResult, List<string> statuses, ref OA_GetInstanceIDListResponse response, ref string msg)
+ {
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client client = CreateClient1();
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ListProcessInstanceIdsHeaders listProcessInstanceIdsHeaders = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ListProcessInstanceIdsHeaders();
+ listProcessInstanceIdsHeaders.XAcsDingtalkAccessToken = this.accessToken;
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ListProcessInstanceIdsRequest listProcessInstanceIdsRequest = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ListProcessInstanceIdsRequest
+ {
+ Statuses = statuses,
+ StartTime = getTimeMillions(startTime),
+ EndTime = getTimeMillions(endTime),
+ ProcessCode = processCode,
+ NextToken = nextToken,
+ MaxResults = maxResult,
+ };
+ try
+ {
+ ListProcessInstanceIdsResponse listProcessInstanceIdsResponse = client.ListProcessInstanceIdsWithOptions(listProcessInstanceIdsRequest, listProcessInstanceIdsHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
+ response.success = listProcessInstanceIdsResponse.Body.Success;
+ response.list = listProcessInstanceIdsResponse.Body.Result.List;
+ response.nextToken = listProcessInstanceIdsResponse.Body.Result.NextToken;
+ return true;
+ }
+ catch (TeaException err)
+ {
+ if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
+ {
+ // err 涓惈鏈� code 鍜� message 灞炴�э紝鍙府鍔╁紑鍙戝畾浣嶉棶棰�
+ }
+ msg = "閿欒浠g爜" + err.Code + "锛�" + err.Message;
+ return false;
+ }
+ catch (Exception _err)
+ {
+ TeaException err = new TeaException(new Dictionary<string, object>
+ {
+ { "message", _err.Message }
+ });
+ if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
+ {
+ // err 涓惈鏈� code 鍜� message 灞炴�э紝鍙府鍔╁紑鍙戝畾浣嶉棶棰�
+ }
+ msg = "閿欒浠g爜" + err.Code + "锛�" + err.Message;
+ return false;
+ }
+ }
+ #endregion
+
+ #region 鑾峰彇 OA鎸囧畾鍗曟嵁鐨勫疄渚婭D鍒楄〃(鍏ㄩ儴)
+ public bool getInstanceIDList_OA(string processCode, DateTime startTime, DateTime endTime, long nextToken, int maxResult, List<string> statuses, ref List<string> IDList, ref string msg)
+ {
+ OA_GetInstanceIDListResponse response = new OA_GetInstanceIDListResponse();
+ response.nextToken = nextToken.ToString();//璧嬪�煎垵濮嬪��
+ do
+ {
+ nextToken = long.Parse(response.nextToken);
+ if (getInstanceIDList_Page_OA(processCode, startTime, endTime, nextToken, maxResult, statuses,ref response, ref msg) == false)
+ {
+ return false;
+ }
+
+ for (int i = 0; i < response.list.Count; i++)
+ {
+ IDList.Add(response.list[i]);
+ }
+
+ } while (response.nextToken!=null);
+ return true;
+ }
+ #endregion
+
+ #region 鑾峰彇 OA 鏍规嵁瀹炰緥ID鑾峰彇瀹炰緥璇︽儏
+ public bool getInstanceDetailByInstanceID_OA(string processinstanceID,ref GetProcessInstanceResponse response, ref string msg)
+ {
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Client client = CreateClient1();
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.GetProcessInstanceHeaders getProcessInstanceHeaders = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.GetProcessInstanceHeaders();
+ getProcessInstanceHeaders.XAcsDingtalkAccessToken = this.accessToken;
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.GetProcessInstanceRequest getProcessInstanceRequest = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.GetProcessInstanceRequest
+ {
+ ProcessInstanceId = processinstanceID,
+ };
+ try
+ {
+ response = client.GetProcessInstanceWithOptions(getProcessInstanceRequest, getProcessInstanceHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
+ return true;
+ }
+ catch (TeaException err)
+ {
+ if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
+ {
+ // err 涓惈鏈� code 鍜� message 灞炴�э紝鍙府鍔╁紑鍙戝畾浣嶉棶棰�
+ }
+ msg = "閿欒浠g爜" + err.Code + "锛�" + err.Message;
+ return false;
+ }
+ catch (Exception _err)
+ {
+ TeaException err = new TeaException(new Dictionary<string, object>
+ {
+ { "message", _err.Message }
+ });
+ if (!AlibabaCloud.TeaUtil.Common.Empty(err.Code) && !AlibabaCloud.TeaUtil.Common.Empty(err.Message))
+ {
+ // err 涓惈鏈� code 鍜� message 灞炴�э紝鍙府鍔╁紑鍙戝畾浣嶉棶棰�
+ }
+ msg = "閿欒浠g爜" + err.Code + "锛�" + err.Message;
+ return false;
+ }
+ }
+ #endregion
+
+ #region 鑾峰彇 OA 鏍规嵁瀹炰緥ID鍒楄〃鑾峰彇瀹炰緥璇︽儏鍒楄〃
+ public bool getInstanceDetailListByInstanceIDList_OA(List<string> processinstanceIDList, ref List<GetProcessInstanceResponse> responseList, ref string msg)
+ {
+ GetProcessInstanceResponse getProcessInstanceResponse = new GetProcessInstanceResponse();
+ try
+ {
+ foreach(string processinstanceID in processinstanceIDList)
+ {
+ if(!getInstanceDetailByInstanceID_OA(processinstanceID,ref getProcessInstanceResponse,ref msg))
+ {
+ return false;
+ }
+ responseList.Add(getProcessInstanceResponse);
+ }
+ return true;
+ }
+ catch (Exception e)
+ {
+ msg = e.Message;
+ return false;
+ }
+ }
+ #endregion
+
+ #endregion
+
#region 鏁版嵁鍚屾鏂规硶
#region 鏁版嵁鍚屾-鍒嗗眰瀹℃牳绛惧埌琛�
#region 鑾峰彇 瀹滄惌-鍒嗗眰瀹℃牳绛惧埌琛� 瀹炰緥ID鍒楄〃瀵瑰簲鐨勫疄渚嬭鎯�
@@ -753,7 +988,7 @@
return false;
}
-
+ LogService.Write("鏌ョ湅1-鏁版嵁鏌ヨ1");
for (int i = 0; i < response.Body.Result.Count; i++)
{
try
@@ -801,6 +1036,7 @@
// oItem.HEmployeeID = ((List<object>)response.Body.Result[i].FormData["employeeField_lo6w37hf_id"])[0].ToString().Replace("'", "");
//}
+ LogService.Write("鏌ョ湅1-鏁版嵁鏌ヨ-寰幆閲岄潰2:"+ oItem.HInstanceID);
//绛惧埌琛�
if (keys.Contains("dateField_ls9ma7h3"))
@@ -829,7 +1065,7 @@
oItem.HEmployeeID = ((List<object>)response.Body.Result[i].FormData["employeeField_ls9ma7h5_id"])[0].ToString().Replace("'", "");
}
-
+ LogService.Write("鏌ョ湅1-鏁版嵁鏌ヨ-寰幆閲岄潰3:鑾峰彇瀹炰緥鐘舵��:"+ oItem.HInstanceStatus);
//鑾峰彇瀹炰緥鐘舵��
GetInstanceByIdResponse response1 = new GetInstanceByIdResponse();
@@ -870,11 +1106,12 @@
oItem.HApprovedResult = "";
}
-
+ LogService.Write("鏌ョ湅1-鏁版嵁鏌ヨ-寰幆閲岄潰4:鏁版嵁鏂板:" + oItem.HApprovedResult);
lsmain.Add(oItem);
}catch(Exception e)
{
+ LogService.Write("鏌ョ湅1" + e.Message);
continue;
}
}
@@ -911,7 +1148,7 @@
string formUuid = "FORM-A01FFB0B63A34F18B7753F695F49190DJEY7"; //绛惧埌琛�
int pageNumber = 1;
int pageSize = 100;
-
+ LogService.Write("鏌ョ湅1");
//鑾峰彇鍒嗗眰瀹℃牳琛ㄧ殑瀹炰緥ID鍒楄〃
List<string> IDList = new List<string>();
if (getInstanceIDList_YiDa(appType, systemToken, userID, formUuid, pageNumber, pageSize, ref IDList, ref msg) == false)
@@ -928,7 +1165,8 @@
try
{
- oCN.BeginTran();
+ LogService.Write("鏌ョ湅1-鏂板鏁版嵁");
+ oCN.BeginTran();
foreach (YD_FenCengShenHeQianDaoBiao oItem in lsmain)
{
string sql_searchRepeat = "select * from DD_FenCengShenHeQianDaoBiao where HInstanceID = '" + oItem.HInstanceID + "'";
@@ -966,10 +1204,12 @@
oCN.RunProc(sql_main);
}
oCN.Commit();
+ LogService.Write("鏌ョ湅1-鏂板鏁版嵁缁撴潫");
return true;
}catch(Exception e)
{
msg = e.Message;
+ LogService.Write("鏌ョ湅1-鎶ラ敊" + msg);
oCN.RollBack();
return false;
}
@@ -1118,6 +1358,7 @@
lsmain.Add(oItem);
}catch(Exception e)
{
+ LogService.Write("鏌ョ湅2"+e.Message);
continue;
}
}
@@ -1149,7 +1390,7 @@
string formUuid = "FORM-E3DFC12364514330A836DD3056C15668UGG7";
int pageNumber = 1;
int pageSize = 100;
-
+ LogService.Write("鏌ョ湅2");
//鑾峰彇瀹炰緥ID鍒楄〃
List<string> IDList = new List<string>();
if (getInstanceIDList_YiDa(appType, systemToken, userID, formUuid, pageNumber, pageSize, ref IDList, ref msg) == false)
@@ -1387,6 +1628,7 @@
}
catch (Exception e)
{
+ LogService.Write("鏌ョ湅3"+e.Message);
continue;
}
}
@@ -1418,7 +1660,7 @@
string formUuid = "FORM-K5766HA1CKZB4E1L64Y1KBWCJTQF2HWJ3NDJL4";
int pageNumber = 1;
int pageSize = 100;
-
+ LogService.Write("鏌ョ湅3");
//鑾峰彇瀹炰緥ID鍒楄〃
List<string> IDList = new List<string>();
if (getInstanceIDList_YiDa(appType, systemToken, userID, formUuid, pageNumber, pageSize, ref IDList, ref msg) == false)
@@ -1529,7 +1771,7 @@
return false;
}
-
+ LogService.Write("鏌ョ湅4-寰幆-鏌ヨ鏁版嵁");
for (int i = 0; i < response.Body.Result.Count; i++)
{
try
@@ -1545,6 +1787,8 @@
oItem.HUpdateDate = response.Body.Result[i].ModifiedTimeGMT.Replace("T", " ").Replace("Z", "").Replace("'", ""); ;
oItem.HInstanceID = response.Body.Result[i].FormInstanceId.Replace("'", ""); ;
oItem.HOriginator = response.Body.Result[i].Originator.Name.NameInChinese.Replace("'", ""); ;
+
+ LogService.Write("鏌ョ湅4-寰幆-鑾峰彇id-鏌ヨ鏁版嵁"+ oItem.HInstanceID);
int startindex = response.Body.Result[i].Title.IndexOf("zh_CN") + 8;
oItem.HTitle = startIndex + response.Body.Result[i].Title.Substring(startindex).Replace("\"}", "").Replace("'", "");
@@ -1565,6 +1809,8 @@
{
return false;
}
+
+ LogService.Write("鏌ョ湅4-寰幆-鑾峰彇鐘舵��-鏌ヨ鏁版嵁" + oItem.HInstanceStatus);
oItem.HInstanceStatus = response1.Body.InstanceStatus;
if (oItem.HInstanceStatus == "RUNNING")
@@ -1686,10 +1932,13 @@
oItem.HQuestion_Duty = sub2List;
+ LogService.Write("鏌ョ湅4-寰幆-鏂板缁撴潫-鏌ヨ鏁版嵁" + oItem.HQuestion_Duty.Count);
+
lsmain.Add(oItem);
}
catch (Exception e)
{
+ LogService.Write("鏌ョ湅4"+e.Message);
continue;
}
}
@@ -1721,14 +1970,15 @@
string formUuid = "FORM-65AD77453E7F44EA847166C3AB5A1F04IPSS";
int pageNumber = 1;
int pageSize = 100;
-
+ LogService.Write("鏌ョ湅4");
//鑾峰彇瀹炰緥ID鍒楄〃
List<string> IDList = new List<string>();
if (getInstanceIDList_YiDa(appType, systemToken, userID, formUuid, pageNumber, pageSize, ref IDList, ref msg) == false)
{
+ LogService.Write("鏌ョ湅4-1-杩斿洖");
return false;
}
-
+ LogService.Write("鏌ョ湅4-1");
//鑾峰彇璇︾粏淇℃伅骞堕檮鍔犲埌鍒楄〃lsmain涓�
List<YD_QRQCWenTiTiJiaoBiao> lsmain = new List<YD_QRQCWenTiTiJiaoBiao>();
if (getInstanceDetailList_QRQCWenTiTiJiaoBiao__YiDa(appType, systemToken, userID, formUuid, IDList, ref lsmain, ref msg) == false)
@@ -1738,6 +1988,7 @@
try
{
+ LogService.Write("鏌ョ湅4-鏂板");
oCN.BeginTran();
foreach (YD_QRQCWenTiTiJiaoBiao oItem in lsmain)
{
@@ -1824,11 +2075,13 @@
}
oCN.Commit();
+ LogService.Write("鏌ョ湅4-鏂板缁撴潫");
return true;
}
catch (Exception e)
{
msg = e.Message;
+ LogService.Write("鏌ョ湅4-鏂板鎶ラ敊:"+ msg);
oCN.RollBack();
return false;
}
@@ -1935,6 +2188,7 @@
}
catch (Exception e)
{
+ LogService.Write("鏌ョ湅5"+e.Message);
continue;
}
}
@@ -1966,14 +2220,16 @@
{
long offset = 0;
long size = 50;
-
+ LogService.Write("鏌ョ湅5");
+ LogService.Write("鏌ョ湅5.1");
//鑾峰彇鑺卞悕鍐岃亴鍛業D鍒楄〃
List<string> IDList = new List<string>();
if (getEmployeeIDList_DingDing(offset, size, ref IDList, ref msg) == false)
{
+ LogService.Write("鏌ョ湅5-1"+ msg);
return false;
}
-
+ LogService.Write("鏌ョ湅5-2");
//鑾峰彇璇︾粏淇℃伅骞堕檮鍔犲埌鍒楄〃lsmain涓�
List<DD_HuaMingCe> lsmain = new List<DD_HuaMingCe>();
if (getEmployeeDetailList_HuaMingCe__DingDing(IDList, ref lsmain, ref msg) == false)
@@ -1982,6 +2238,7 @@
}
try
{
+ LogService.Write("鏌ョ湅5-3");
oCN.BeginTran();
foreach (DD_HuaMingCe oItem in lsmain)
{
@@ -2006,12 +2263,14 @@
oCN.RunProc(sql_main);
}
+ LogService.Write("鏌ョ湅5-4");
oCN.Commit();
return true;
}
catch (Exception e)
{
msg = e.Message;
+ LogService.Write("鏌ョ湅5鎶ラ敊:" + e.Message);
oCN.RollBack();
return false;
}
@@ -2071,11 +2330,88 @@
{
continue;
}
+ string HStaus = "";
+
+ switch (getInstanceByIdResponse.Body.InstanceStatus)
+ {
+ case "COMPLETED":
+ HStaus = "缁翠慨缁撴潫";
+ break;
+ case "RUNNING":
+ HStaus = "缁翠慨杩涜涓�";
+ break;
+ case "TERMINATED":
+ HStaus = "缁翠慨缁堟";
+ break;
+ }
+
+ LogService.Write("鐘舵��:" + HStaus);
if (getInstanceByIdResponse.Body.InstanceStatus != "COMPLETED")
{
+ //妯″叿缂栫爜
+ if (keys.Contains("selectField_lq3idkvg"))
+ {
+ string HDate_Temp = response.Body.Result[i].FormData["selectField_lq3idkvg"].ToString();
+ LogService.Write("妯″叿:" + HDate_Temp);
+ DataSet ds = oCN.RunProcReturn("select * from Gy_MouldFileMain with(nolock) where HMouldNo='" + HDate_Temp + "'", "Gy_MouldFileMain");
+ string HMouldID = "0";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ LogService.Write("娴嬭瘯1:" + ds.Tables[0].Rows[0]["HCloseDate"].ToString());
+ string HUpdateDate = ds.Tables[0].Rows[0]["HCloseDate"].ToString() == "" ? "1900-01-01 00:00:00" : ds.Tables[0].Rows[0]["HCloseDate"].ToString();
+ string HMouldStaus = ds.Tables[0].Rows[0]["HMouldStatus"].ToString();
+ LogService.Write("妯″叿:" + HDate_Temp + ",鐘舵��:" + HMouldStaus + ",鏃堕棿:" + HUpdateDate);
+ HMouldID = ds.Tables[0].Rows[0]["HInterID"].ToString();
+ if (HMouldStaus != HStaus && DateTime.Parse(HUpdateDate) <= DateTime.Parse(oItem.HUpdateDate)) {
+ //淇敼妯″叿鐨勭姸鎬佸拰鏃堕棿
+ oCN.RunProc("update Gy_MouldFileMain set HMouldUseStatus='" + HStaus + "',HCloseDate='" + oItem.HUpdateDate + "' WHERE HInterID =" + HMouldID);
+ }
+ }
+ }
+
continue;
}
+
+ //妯″叿缂栫爜
+ if (keys.Contains("selectField_lq3idkvg"))
+ {
+ string HDate_Temp = response.Body.Result[i].FormData["selectField_lq3idkvg"].ToString();
+ LogService.Write("妯″叿:" + HDate_Temp);
+ DataSet ds = oCN.RunProcReturn("select * from Gy_MouldFileMain with(nolock) where HMouldNo='" + HDate_Temp + "'", "Gy_MouldFileMain");
+ string HMouldID = "0";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ LogService.Write("娴嬭瘯2:" + ds.Tables[0].Rows[0]["HCloseDate"].ToString());
+ HMouldID = ds.Tables[0].Rows[0]["HInterID"].ToString();
+ string HUpdateDate = ds.Tables[0].Rows[0]["HCloseDate"].ToString() == "" ? "1900-01-01 00:00:00" : ds.Tables[0].Rows[0]["HCloseDate"].ToString();
+
+ string HMouldStaus = ds.Tables[0].Rows[0]["HMouldStatus"].ToString();
+
+ LogService.Write("妯″叿:" + HDate_Temp+ ",鐘舵��:" + HMouldStaus + ",鏃堕棿:" + HUpdateDate);
+ if (HMouldStaus != HStaus && DateTime.Parse(HUpdateDate) <= DateTime.Parse(oItem.HUpdateDate))
+ {
+ //淇敼妯″叿鐨勭姸鎬佸拰鏃堕棿
+ oCN.RunProc("update Gy_MouldFileMain set HMouldUseStatus='" + HStaus + "',HCloseDate='" + oItem.HUpdateDate + "' WHERE HInterID =" + HMouldID);
+ }
+ }
+ oItem.HMouldID = long.Parse(HMouldID);
+ oItem.HRemark = HDate_Temp;
+ //LogService.Write("娴嬭瘯3:" + HMouldID);
+
+ //鏌ヨ淇濆吇璁″垝
+ ds = oCN.RunProcReturn(@"select a.HInterID,a.HBillNo from Sc_MouldMaintainPlanBillMain a
+ inner join Sc_MouldMaintainPlanBillSub b on a.HInterID = b.HInterID
+ where a.HMouldID =" + oItem.HMouldID+ " order by a.HMakeDate desc", "Sc_MouldMaintainPlanBillMain");
+ //LogService.Write("娴嬭瘯4:");
+ oItem.HPlanInterID = "";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ oItem.HPlanInterID = ds.Tables[0].Rows[0]["HInterID"].ToString();
+ oItem.HPlanNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+ }
+ }
+ LogService.Write("妯″叿缂栫爜:" + oItem.HMouldID);
//寮�鍗曟棩鏈�
if (keys.Contains("dateField_lq0v65sv"))
@@ -2083,6 +2419,7 @@
double HDate_Temp = double.Parse(response.Body.Result[i].FormData["dateField_lq0v65sv"].ToString());
oItem.HDate = convertFromMillisecondsToDateString(HDate_Temp, "yyyy-MM-dd HH:mm");
}
+ LogService.Write("寮�鍗曟棩鏈�:" + oItem.HDate);
//妯″叿淇濆吇绾у埆
if (keys.Contains("selectField_m1ip9j31"))
@@ -2107,6 +2444,7 @@
oItem.HMaintainLevID = HDate_Temp;
}
+ LogService.Write("妯″叿淇濆吇绾у埆:" + oItem.HMaintainLevID);
//淇ā寮�濮嬫椂闂�
if (keys.Contains("dateField_lq4gf2ih"))
@@ -2114,6 +2452,7 @@
double HDate_Temp = double.Parse(response.Body.Result[i].FormData["dateField_lq4gf2ih"].ToString());
oItem.HRepairBeginDate = DateTime.Parse(convertFromMillisecondsToDateString(HDate_Temp, "yyyy-MM-dd HH:mm"));
}
+ LogService.Write("淇ā寮�濮嬫椂闂�:" + oItem.HRepairBeginDate);
//淇ā缁撴潫鏃堕棿
if (keys.Contains("dateField_lq4gf2ii"))
@@ -2121,6 +2460,7 @@
double HDate_Temp = double.Parse(response.Body.Result[i].FormData["dateField_lq4gf2ii"].ToString());
oItem.HRepairEndDate = DateTime.Parse(convertFromMillisecondsToDateString(HDate_Temp, "yyyy-MM-dd HH:mm"));
}
+ LogService.Write("淇ā缁撴潫鏃堕棿:" + oItem.HRepairEndDate);
//妯″叿鍗曟嵁鍙�
if (keys.Contains("serialNumberField_lqaak4ts"))
@@ -2128,6 +2468,7 @@
string HDate_Temp = response.Body.Result[i].FormData["serialNumberField_lqaak4ts"].ToString();
oItem.HBillNo = HDate_Temp;
}
+ LogService.Write("妯″叿鍗曟嵁鍙�:" + oItem.HBillNo);
//瑕佹眰瀹屾垚鏃ユ湡
if (keys.Contains("dateField_lq3idkvd"))
@@ -2135,6 +2476,7 @@
double HDate_Temp = double.Parse(response.Body.Result[i].FormData["dateField_lq3idkvd"].ToString());
oItem.HRequestComDate = DateTime.Parse(convertFromMillisecondsToDateString(HDate_Temp, "yyyy-MM-dd HH:mm:ss"));
}
+ LogService.Write("瑕佹眰瀹屾垚鏃ユ湡:" + oItem.HRequestComDate);
//缁翠慨鍙楃悊鏃ユ湡
if (keys.Contains("dateField_lq4gf2ih"))
@@ -2142,6 +2484,7 @@
double HDate_Temp = double.Parse(response.Body.Result[i].FormData["dateField_lq4gf2ih"].ToString());
oItem.HRepairAccepDate = DateTime.Parse(convertFromMillisecondsToDateString(HDate_Temp, "yyyy-MM-dd HH:mm:ss"));
}
+ LogService.Write("缁翠慨鍙楃悊鏃ユ湡:" + oItem.HRepairAccepDate);
//鏈�杩戜繚鍏绘ā鏁�
if (keys.Contains("numberField_lq3idkvi"))
@@ -2149,6 +2492,7 @@
string HDate_Temp = response.Body.Result[i].FormData["numberField_lq3idkvi"].ToString();
oItem.HRecentMainModule = double.Parse(HDate_Temp);
}
+ LogService.Write("鏈�杩戜繚鍏绘ā鏁�:" + oItem.HRecentMainModule);
//绱妯℃暟
if (keys.Contains("numberField_lq3idkvj"))
@@ -2156,6 +2500,7 @@
string HDate_Temp = response.Body.Result[i].FormData["numberField_lq3idkvj"].ToString();
oItem.HCumulativeModule = double.Parse(HDate_Temp);
}
+ LogService.Write("绱妯℃暟:" + oItem.HCumulativeModule);
//鏈鐢熶骇妯℃暟
if (keys.Contains("textField_lq4vdvgh"))
@@ -2163,32 +2508,7 @@
string HDate_Temp = response.Body.Result[i].FormData["textField_lq4vdvgh"].ToString();
oItem.HProductionModule = double.Parse(HDate_Temp);
}
-
- //妯″叿缂栫爜
- if (keys.Contains("selectField_lq3idkvg"))
- {
- string HDate_Temp = response.Body.Result[i].FormData["selectField_lq3idkvg"].ToString();
- DataSet ds = oCN.RunProcReturn("select * from Gy_MouldFileMain with(nolock) where HMouldNo='" + HDate_Temp + "'", "Gy_MouldFileMain");
- string HMouldID = "0";
- if (ds.Tables[0].Rows.Count > 0)
- {
- HMouldID = ds.Tables[0].Rows[0]["HInterID"].ToString();
- }
- oItem.HMouldID = long.Parse(HMouldID);
- oItem.HRemark = HDate_Temp;
-
-
- //鏌ヨ淇濆吇璁″垝
- ds = oCN.RunProcReturn(@"select a.HInterID,a.HBillNo from Sc_MouldMaintainPlanBillMain a
- inner join Sc_MouldMaintainPlanBillSub b on a.HInterID = b.HInterID
- where a.HMouldID =" + oItem.HMouldID + " and a.HMaintainLevID = " + oItem.HMaintainLevID, "Sc_MouldMaintainPlanBillMain");
- oItem.HPlanInterID = "";
- if (ds.Tables[0].Rows.Count > 0) {
- oItem.HPlanInterID = ds.Tables[0].Rows[0]["HInterID"].ToString();
- oItem.HPlanNo = ds.Tables[0].Rows[0]["HInterID"].ToString();
- }
- }
-
+ LogService.Write("绱妯℃暟:" + oItem.HProductionModule);
//缁翠慨閮ㄩ棬
if (keys.Contains("selectField_lq3idkva"))
@@ -2202,6 +2522,7 @@
}
oItem.HDeptID = long.Parse(HDeptID);
}
+ LogService.Write("缁翠慨閮ㄩ棬:" + oItem.HDeptID);
//鏂拌璁″鍛�
oItem.HNewDesignLife = 30000;
@@ -2218,6 +2539,7 @@
}
oItem.HEmpID = long.Parse(HEmpID);
}
+ LogService.Write("缁翠慨浜�:" + oItem.HEmpID);
//缁翠慨鏃堕棿
if (keys.Contains("numberField_lq3ixr9j"))
@@ -2227,6 +2549,7 @@
oItem.HTimes = long.Parse(HDate_Temp);
oItem.HPlanTimes = long.Parse(HDate_Temp);
}
+ LogService.Write("缁翠慨鏃堕棿:" + oItem.HTimes);
//瀛愯〃 缁翠慨瑕佹眰 缁翠慨澶囨敞(闂鎻忚堪)
if (keys.Contains("tableField_lq3ixr9b"))
@@ -2243,15 +2566,19 @@
{
oItemSub.HRepairExplanation = dic[ij]["textareaField_lq3ixr9e"].ToString();
}
+ LogService.Write("缁翠慨瑕佹眰:" + oItemSub.HRepairExplanation);
//澶囨敞
if (keys_Sub.Contains("textField_lq3ixr9d"))
{
oItemSub.HRemark = dic[ij]["textField_lq3ixr9d"].ToString();
}
+ LogService.Write("澶囨敞:" + oItemSub.HRemark);
+
oItem.DetailColMouldRepair.Add(oItemSub);
}
}
+
string HRemark = "";
//瀛愯〃 淇濆吇澶囨敞(闂鎻忚堪)
@@ -2273,9 +2600,10 @@
oItemSub.HClaim = HDate_Temp[ij];
oItemSub.HMaintainResult = HRemark;
oItem.DetailColMouldMaintain.Add(oItemSub);
+ LogService.Write("鍏蜂綋瑕佹眰:" + oItemSub.HClaim);
}
-
}
+
int startindex = response.Body.Result[i].Title.IndexOf("zh_CN") + 8;
oItem.HTitle = startIndex + response.Body.Result[i].Title.Substring(startindex).Replace("\"}", "").Replace("'", "");
@@ -2310,6 +2638,7 @@
}
catch (Exception e)
{
+ LogService.Write("鎶ラ敊:" + e.Message);
continue;
}
}
@@ -2345,7 +2674,7 @@
string formUuid = "FORM-30C78F46E77E46A9AA8778214CEFE6B5J0AN";
int pageNumber = 1;
int pageSize = 100;
-
+ LogService.Write("鏌ョ湅7");
//鑾峰彇妯″叿缁翠慨淇濆吇琛ㄧ殑瀹炰緥ID鍒楄〃
List<string> IDList = new List<string>();
if (getInstanceIDList_YiDa(appType, systemToken, userID, formUuid, pageNumber, pageSize, ref IDList, ref msg) == false)
@@ -2557,8 +2886,45 @@
continue;
}
+ string HStaus = "";
+
+ switch (getInstanceByIdResponse.Body.InstanceStatus)
+ {
+ case "COMPLETED":
+ HStaus = "缁翠慨缁撴潫";
+ break;
+ case "RUNNING":
+ HStaus = "缁翠慨杩涜涓�";
+ break;
+ case "TERMINATED":
+ HStaus = "缁翠慨缁堟";
+ break;
+ }
+ LogService.Write("鐘舵��:" + HStaus);
if (getInstanceByIdResponse.Body.InstanceStatus != "COMPLETED")
{
+ //璁惧缂栫爜
+ if (keys.Contains("textField_lfg9hgys"))
+ {
+ string HDate_Temp = response.Body.Result[i].FormData["textField_lfg9hgys"].ToString();
+ DataSet ds = oCN.RunProcReturn("select * from Gy_EquipFileBillMain with(nolock) where HEquipFileNo='" + HDate_Temp + "'", "Gy_EquipFileBillMain");
+ string HEquipID = "0";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ HEquipID = ds.Tables[0].Rows[0]["HInterID"].ToString();
+ oItem.HEquipID = long.Parse(HEquipID);
+ oItem.HRemark2 = HDate_Temp;
+
+ string HUpdateDate = ds.Tables[0].Rows[0]["HCloseDate"].ToString()==""?"1900-01-01 00:00:00": ds.Tables[0].Rows[0]["HCloseDate"].ToString();
+ string HMouldStaus = ds.Tables[0].Rows[0]["HStatus"].ToString();
+ LogService.Write("璁惧:" + HDate_Temp + ",鐘舵��:" + HMouldStaus + ",鏃堕棿:" + HUpdateDate);
+ if (HMouldStaus != HStaus && DateTime.Parse(HUpdateDate) <= DateTime.Parse(oItem.HUpdateDate))
+ {
+ //淇敼璁惧鐨勭姸鎬佸拰鏃堕棿
+ oCN.RunProc("update Gy_EquipFileBillMain set HStatus='" + HStaus + "',HCloseDate='" + oItem.HUpdateDate + "' WHERE HInterID =" + HEquipID);
+ }
+ }
+ }
continue;
}
@@ -2571,18 +2937,28 @@
{
string HDate_Temp = response.Body.Result[i].FormData["textField_lfg9hgys"].ToString();
DataSet ds = oCN.RunProcReturn("select * from Gy_EquipFileBillMain with(nolock) where HEquipFileNo='" + HDate_Temp + "'", "Gy_EquipFileBillMain");
+ LogService.Write("璁惧鏃�:" + HDate_Temp);
string HEquipID = "0";
if (ds.Tables[0].Rows.Count > 0)
{
HEquipID = ds.Tables[0].Rows[0]["HInterID"].ToString();
oItem.HEquipID = long.Parse(HEquipID);
oItem.HRemark2 = HDate_Temp;
+ string HUpdateDate = ds.Tables[0].Rows[0]["HCloseDate"].ToString() == "" ? "1900-01-01 00:00:00" : ds.Tables[0].Rows[0]["HCloseDate"].ToString();
+ string HMouldStaus = ds.Tables[0].Rows[0]["HStatus"].ToString();
+ LogService.Write("璁惧:" + HDate_Temp + ",鐘舵��:" + HMouldStaus + ",鏃堕棿:" + HUpdateDate);
+ if (HMouldStaus != HStaus && DateTime.Parse(HUpdateDate) <= DateTime.Parse(oItem.HUpdateDate))
+ {
+ //淇敼璁惧鐨勭姸鎬佸拰鏃堕棿
+ oCN.RunProc("update Gy_EquipFileBillMain set HStatus='" + HStaus + "',HCloseDate='" + oItem.HUpdateDate + "' WHERE HInterID =" + HEquipID);
+ }
}
else
{
continue;
}
}
+ LogService.Write("璁惧:" + oItem.HEquipID);
//缁翠慨閮ㄩ棬
if (keys.Contains("selectField_kzgkw10a"))
@@ -2601,6 +2977,7 @@
}
}
+ LogService.Write("缁翠慨閮ㄩ棬:" + oItem.HDeptID);
//缁翠慨浜�
if (keys.Contains("employeeField_lthwkdh2"))
@@ -2619,6 +2996,7 @@
}
}
+ LogService.Write("缁翠慨浜�:" + oItem.HEmpID);
//缁翠慨鍐呭
if (keys.Contains("textField_l2r9bvwk"))
@@ -2627,6 +3005,7 @@
oItem.HRepairContent = HDate_Temp;
}
+ LogService.Write("缁翠慨鍐呭:" + oItem.HRepairContent);
//鎶ヤ慨绫诲埆
if (keys.Contains("multiSelectField_lfg9hgyv"))
@@ -2635,7 +3014,7 @@
oItem.HRepairCategory = HDate_Temp[0];
}
-
+ LogService.Write("鎶ヤ慨绫诲埆:" + oItem.HRepairCategory);
//绱ф�ョ▼搴�
if (keys.Contains("radioField_kzgkw10c"))
{
@@ -2643,6 +3022,7 @@
oItem.HUrgenLevel = HDate_Temp;
}
+ LogService.Write("绱ф�ョ▼搴�:" + oItem.HUrgenLevel);
//鎶ヤ慨浜�
if (keys.Contains("employeeField_lkasesrk"))
@@ -2651,6 +3031,7 @@
oItem.HRepairer = HDate_Temp[0];
}
+ LogService.Write("鎶ヤ慨浜�:" + oItem.HRepairer);
//鏄惁鏈変骇鑳藉奖鍝�
if (keys.Contains("textField_lyjddw0r"))
@@ -2659,7 +3040,8 @@
oItem.HIsCapacityImpact = HDate_Temp;
}
-
+ LogService.Write("鏄惁鏈変骇鑳藉奖鍝�:" + oItem.HIsCapacityImpact);
+
//缁翠慨鏃堕棿
if (keys.Contains("textField_l2r95oo2"))
{
@@ -2675,6 +3057,8 @@
oItem.HTimes = int.Parse(new string(HDate_Temp.Where(char.IsDigit).ToArray()));
oItem.HPlanTimes = int.Parse(new string(HDate_Temp.Where(char.IsDigit).ToArray()));
}
+ LogService.Write("缁翠慨鏃堕棿:" + oItem.HTimes);
+
//瀛愯〃 缁翠慨瑕佹眰 缁翠慨澶囨敞(闂鎻忚堪)
@@ -2687,6 +3071,7 @@
oItem.HExplanation = HDate_Temp;
sub.HRepairExplanation = HDate_Temp;
}
+ LogService.Write("缁翠慨瑕佹眰:" + oItem.HExplanation);
//澶囨敞
if (keys.Contains("textField_l2r95oo0"))
@@ -2695,6 +3080,8 @@
sub.HRemark = HDate_Temp;
}
+ LogService.Write("澶囨敞:" + oItem.HRemark);
+
oItem.DetailColMouldRepair.Add(sub);
int startindex = response.Body.Result[i].Title.IndexOf("zh_CN") + 8;
@@ -2730,7 +3117,7 @@
}
catch (Exception e)
{
- LogService.Write(e.Message);
+ LogService.Write("鎶ラ敊:" + e.Message);
a = "";
continue;
}
@@ -2766,7 +3153,7 @@
string formUuid = "FORM-OM566O7177LW0ARJ5IMFF63NTFKA34G9RL2YKN1";
int pageNumber = 1;
int pageSize = 100;
-
+ LogService.Write("鏌ョ湅6");
//鑾峰彇璁惧缁翠慨淇濆吇琛ㄧ殑瀹炰緥ID鍒楄〃
List<string> IDList = new List<string>();
if (getInstanceIDList_YiDa(appType, systemToken, userID, formUuid, pageNumber, pageSize, ref IDList, ref msg) == false)
@@ -2857,6 +3244,288 @@
#endregion
#endregion
+ #region 鏁版嵁鍚屾-寮傚父宸ユ椂鍗昈A閲岃幏鍙�
+
+ #region 绫诲瀷杞崲鎻愬彇response涓殑value瀵硅薄
+ public class StatValue
+ {
+ public string Id { get; set; }
+ public string Label { get; set; }
+ public string Upper { get; set; }
+ public string Num { get; set; }
+ }
+
+ public class ExtValue
+ {
+ public List<StatValue> StatValue { get; set; }
+ public string ComponentName { get; set; }
+ }
+ public class RowValue
+ {
+ public string Label { get; set; }
+ public object Value { get; set; }
+ public string Key { get; set; }
+ // 娉ㄦ剰锛氳繖閲屼笉瀹氫箟extendValue灞炴�э紝鍥犱负鎴戜滑涓嶉渶瑕佸畠
+ // public SomeType ExtendValue { get; set; } // 濡傛灉闇�瑕侊紝鍙互娉ㄩ噴鎺夋垨鍒犻櫎杩欒
+ }
+ public class Row
+ {
+ public List<RowValue> RowValue { get; set; }
+ public string RowNumber { get; set; }
+ // 娉ㄦ剰锛氳繖閲屽亣璁句綘涓嶉渶瑕乧omponentName锛屽洜涓篔SON绀轰緥涓病鏈夌洿鎺ュ寘鍚畠
+ // 浣嗗鏋滀綘鐨勫疄闄匤SON鎴栭渶姹備腑鍖呭惈锛屼綘搴旇娣诲姞杩欎釜灞炴��
+ // public string ComponentName { get; set; }
+ }
+ #endregion
+
+
+ #region OA寮傚父宸ユ椂鐢宠鍗� 瀹炰緥ID鍒楄〃瀵瑰簲鐨勫疄渚嬭鎯�
+ public bool getInstanceDetailList___ErrWorkTimesRequest_OA(List<string> processinstanceIDList, DateTime startTime, DateTime endTime, ref List<Pay_ErrWorkTimesRequestBill> lsmain,ref string msg)
+ {
+ try
+ {
+ List<GetProcessInstanceResponse> getProcessInstanceResponses = new List<GetProcessInstanceResponse>();
+ //鑾峰彇閽夐拤response
+ if (getInstanceDetailListByInstanceIDList_OA(processinstanceIDList,ref getProcessInstanceResponses,ref msg)==false)
+ {
+ return false;
+ }
+ foreach(GetProcessInstanceResponse getProcessInstanceResponse in getProcessInstanceResponses)
+ {
+ Pay_ErrWorkTimesRequestBill oItem = new Pay_ErrWorkTimesRequestBill();
+ //涓昏〃
+ oItem.HDate = getProcessInstanceResponse.Body.Result.FormComponentValues[1].Value;//鍗曟嵁鏃ユ湡璁℃椂鏃堕棿
+ DateTime dateTime1 = DateTime.ParseExact(oItem.HDate + " 00:00:00", "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
+ if (!(DateTime.Compare(dateTime1, startTime)>=0&& DateTime.Compare(dateTime1, endTime) <= 0))//鎺у埗鏃堕棿
+ {
+ continue;
+ }
+ string result = getProcessInstanceResponse.Body.Result.Result.ToString();
+ if (result != "agree")
+ {
+ continue;
+ }
+ string[] deptNameAndGroupName = getProcessInstanceResponse.Body.Result.OriginatorDeptName.Split('-');//鑾峰彇閮ㄩ棬鎷兼帴瀛楃涓叉暟缁�
+ oItem.HDeptName = deptNameAndGroupName[1];
+ oItem.HGroupName = deptNameAndGroupName[deptNameAndGroupName.Length-1];
+ //涓荤-璐熻矗浜�
+ string HManagerValue = getProcessInstanceResponse.Body.Result.FormComponentValues[9].Value;//鑾峰彇鐨勫悕瀛楀惈鍚庣紑鑻辨枃
+ string pattern = @"[\u4e00-\u9fff]+"; // 涓枃瀛楃鐨刄nicode鑼冨洿
+
+ MatchCollection matches = Regex.Matches(HManagerValue, pattern);
+
+ // 鍒涘缓涓�涓猄tringBuilder鏉ユ嫾鎺ユ墍鏈夊尮閰嶇殑涓枃瀛楃
+ System.Text.StringBuilder chineseChars = new System.Text.StringBuilder();
+ foreach (Match match in matches)
+ {
+ chineseChars.Append(match.Value);
+ }
+ string HManagerName = chineseChars.ToString();
+ DataSet ds = oCN.RunProcReturn("select * from Gy_Employee with(nolock) where HName='" + HManagerName + "'", "Gy_Employee");
+ string HMangerID = "0";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ HMangerID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+ }
+ oItem.HMangerID = int.Parse(HMangerID);
+ //澶勭悊閮ㄩ棬鍜岀彮缁勫悕绉癷d
+ ds = oCN.RunProcReturn("select * from h_v_GroupList with(nolock) where 鐝粍鍚嶇О='" + oItem.HGroupName + "'", "h_v_GroupList");
+ string HDeptID = "0";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ HDeptID = ds.Tables[0].Rows[0]["HDeptID"].ToString();
+ }
+ oItem.HDeptID = int.Parse(HDeptID);
+ ds = oCN.RunProcReturn("select * from Gy_Group with(nolock) where HName='" + oItem.HGroupName + "'", "Gy_Group");
+ string HGroupID = "0";
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ HGroupID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+ }
+ oItem.HGroupID = int.Parse(HGroupID);
+
+ //鍙嶅簭鍒楀寲鏄庣粏鍐呭
+ string tableFieldValue = getProcessInstanceResponse.Body.Result.FormComponentValues[11].Value;
+ List<Row> rows = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Row>>(tableFieldValue);
+ ExtValue extValue = Newtonsoft.Json.JsonConvert.DeserializeObject<ExtValue>(getProcessInstanceResponse.Body.Result.FormComponentValues[11].ExtValue);
+ oItem.HBatchNo = rows[0].RowValue[1].Value.ToString();//鎵规鍙�-璁㈠崟鍙风爜
+ //浠诲姟鎻忚堪-浠诲姟绫诲瀷+宸ヤ綔鍐呭
+ oItem.HExplanation = getProcessInstanceResponse.Body.Result.FormComponentValues[2].Value + "-" + rows[0].RowValue[0].Value;
+ oItem.HSumRequestTimes = double.Parse(extValue.StatValue[1].Num);//鎬绘椂闀�
+ oItem.HPlanQty = 0;//璁″垝鏁伴噺
+ oItem.HRemark = "閽夐拤瀵煎叆" + getProcessInstanceResponse.Body.Result.Title;//澶囨敞
+ //寰幆閬嶅巻鑾峰彇鑱屽憳鍚嶇Оid锛屽伐鏃�
+ for (int i = 0; i < rows.Count; i++)
+ {
+ if (rows[i].RowValue.Count<10)
+ {
+ continue;
+ }
+ string[] nameArray = rows[i].RowValue[4].Value.ToString().Split(',');//鑾峰彇姣忎釜浜虹殑浜哄悕
+ oItem.HPlanQty += double.Parse(rows[i].RowValue[2].Value.ToString());//璁″垝鏁伴噺
+ for (int j = 0; j < int.Parse(rows[i].RowValue[5].Value.ToString()); j++)
+ {
+ if (nameArray.Length < j + 1)//闃叉鍑虹幇浜虹鑱屼簡璁℃椂鍗曠敵璇峰畬浜嗗鑷存妧鏈汉鍛樹笌璁℃椂浜烘暟涓嶄竴鑷寸殑闂
+ {
+ continue;
+ }
+ Pay_ErrWorkTimesRequestBillSub pay_ErrWorkTimesRequestBillSub = new Pay_ErrWorkTimesRequestBillSub();
+ ds = oCN.RunProcReturn("select * from Gy_Employee with(nolock) where HName='" + nameArray[j] + "'", "Gy_Employee");
+ string HEmpID = "0";
+ //璁剧疆瀛愯〃鑱屽憳id鍚嶇О
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ HEmpID = ds.Tables[0].Rows[0]["HItemID"].ToString();
+ }
+ pay_ErrWorkTimesRequestBillSub.HEmpName = nameArray[j];
+ pay_ErrWorkTimesRequestBillSub.HEmpID = int.Parse(HEmpID);
+ pay_ErrWorkTimesRequestBillSub.HRelTimes = double.Parse(rows[i].RowValue[6].Value.ToString());
+ pay_ErrWorkTimesRequestBillSub.HTimes = double.Parse(rows[i].RowValue[6].Value.ToString());
+ pay_ErrWorkTimesRequestBillSub.HRelPay = double.Parse(rows[i].RowValue[10].Value.ToString());
+ pay_ErrWorkTimesRequestBillSub.HPayMoney = pay_ErrWorkTimesRequestBillSub.HRelPay / pay_ErrWorkTimesRequestBillSub.HTimes;
+ pay_ErrWorkTimesRequestBillSub.HRemark = "閽夐拤瀵煎叆";
+ oItem.Pay_ErrWorkTimesRequestBillSub.Add(pay_ErrWorkTimesRequestBillSub);
+
+ }
+ }
+ lsmain.Add(oItem);
+ }
+ return true;
+ }catch(Exception e)
+ {
+ msg = e.Message;
+ return false;
+ }
+
+ }
+ #endregion
+
+ #region 鏁版嵁鍚屾
+ public bool getData_ErrWorkTimesRequest(DateTime startTime, DateTime endTime,ref string msg)
+ {
+ string processCode = "PROC-21371550-FEF1-4EDD-A827-639746E22E43";
+ long nextToken = 1;
+ int maxResult = 20;//鏈�澶�20
+ List<string> statues = new List<string>{"COMPLETED"};
+ this.AppKey = "ding7miekiaqn4rc2ert";
+ this.AppSecret = "81qMrC5SvkgjT9t2A3wUyEEENzyl9jJLeXOpjv2SNULc_HSlFZF4NE21YFCXik4K";
+ getAccessToken();//璁剧疆accessToken
+ //鑾峰彇宸ユ椂鐢宠鐨勫疄渚婭D鍒楄〃
+ List<string> IDList = new List<string>();
+ if (getInstanceIDList_OA(processCode,startTime,endTime,nextToken,maxResult,statues,ref IDList, ref msg) == false)
+ {
+ return false;
+ }
+ //鑾峰彇璇︾粏淇℃伅骞堕檮鍔犲埌鍒楄〃lsmain涓�
+ List<Pay_ErrWorkTimesRequestBill> lsmain = new List<Pay_ErrWorkTimesRequestBill>();
+ if (getInstanceDetailList___ErrWorkTimesRequest_OA(IDList,startTime,endTime, ref lsmain, ref msg) == false)
+ {
+ return false;
+ }
+ try
+ {
+ oCN.BeginTran();
+ //鍒犻櫎鏃堕棿鑼冨洿鍐呯殑瀵煎叆鍗曟嵁
+ DataSet dataSet = oCN.RunProcReturn(@"select HInterID from Pay_ErrWorkTimesRequestBillMain a with(nolock) where a.HRemark like '%閽夐拤瀵煎叆%' and a.HIsImport = 1 and HDate >= '" + startTime + "' and HDate<='" + endTime + "'", "Pay_ErrWorkTimesRequestBillMain");
+ if(dataSet != null && dataSet.Tables[0].Rows.Count > 0)
+ {
+ foreach (DataRow row in dataSet.Tables[0].Rows)
+ {
+ int HInterID = row.Field<int>("HInterID");
+ oCN.RunProc(@"Delete From Pay_ErrWorkTimesRequestBillMain where HInterID = " + HInterID);
+ oCN.RunProc(@"Delete From Pay_ErrWorkTimesRequestBillSub where HInterID = " + HInterID);
+ }
+ }
+ //鎻掑叆鏁版嵁
+ foreach(Pay_ErrWorkTimesRequestBill oItem in lsmain)
+ {
+ if (oItem.Pay_ErrWorkTimesRequestBillSub.Count != 0)
+ {
+ string HBillType = "2231";
+ long HInterID = DBUtility.ClsPub.CreateBillID(HBillType, ref DBUtility.ClsPub.sExeReturnInfo);
+ string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod(HBillType, ref DBUtility.ClsPub.sExeReturnInfo, true);
+ int HYear = int.Parse(oItem.HDate.Split('-')[0]);
+ int HPeriod = int.Parse(oItem.HDate.Split('-')[1]);
+ //涓昏〃
+ string sql = "insert into Pay_ErrWorkTimesRequestBillMain" +
+ "(HYear,HPeriod,HBillType,HBillSubType,HBillStatus,HInterID,HBillNo,HDate,HInnerBillNo,HDeptID,HGroupID,HMangerID,HICMOInterID,HICMOBillNo,HExplanation,HSumRequestTimes,HMaterID,HUnitID,HPlanQty,HBatchNo,HRemark,HMaker,HMakeDate,HChecker,HCheckDate,HIsImport) " +
+ "values(" +
+ "" + HYear +
+ "," + HPeriod +
+ ",'" + HBillType +
+ "','" + " " +
+ "'," + 2 +
+ "," + HInterID +
+ ",'" + HBillNo +
+ "','" + oItem.HDate +
+ "','" + " " +
+ "'," + oItem.HDeptID +
+ "," + oItem.HGroupID +
+ "," + oItem.HMangerID +
+ "," + "0" +
+ ",'" + " " +
+ "','" + oItem.HExplanation +
+ "'," + oItem.HSumRequestTimes +
+ "," + 0 +
+ "," + 0 +
+ "," + oItem.HPlanQty +
+ ",'" + oItem.HBatchNo +
+ "','" + oItem.HRemark +
+ "','" + "System" +
+ "'," + "GETDATE()" +
+ ",'" + "System" +
+ "'," + "GETDATE()" +
+ "," + "1" +
+ ")";
+ //涓昏〃
+ LogService.Write(sql);
+ oCN.RunProc(sql);
+ int i = 1;
+ foreach (Pay_ErrWorkTimesRequestBillSub oItem_Detail in oItem.Pay_ErrWorkTimesRequestBillSub)
+ {
+ sql = "insert into Pay_ErrWorkTimesRequestBillSub" +
+ "(HInterID,HEntryID,HEmpID,HWorkTypeID,HPayMoney,HBTimes,HETimes,HTimes,HRelTimes,HRelPay,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo" +
+ ",HSourceBillType,HRelationQty,HRelationMoney) " +
+ "values(" +
+ "" + HInterID +
+ "," + i +
+ "," + oItem_Detail.HEmpID +
+ "," + 0 +
+ "," + oItem_Detail.HPayMoney +
+ ",'" + "" +
+ "','" + "" +
+ "'," + oItem_Detail.HTimes +
+ "," + oItem_Detail.HRelTimes +
+ "," + oItem_Detail.HRelPay +
+ ",'" + oItem_Detail.HRemark +
+ "'," + 0 +
+ "," + 0 +
+ ",'" + " " +
+ "','" + " " +
+ "'," + 0 +
+ "," + 0 +
+ ")";
+ LogService.Write(sql);
+ oCN.RunProc(sql);
+ i += 1;
+ }
+ }
+ }
+ oCN.Commit();
+ return true;
+ }
+ catch (Exception e)
+ {
+ LogService.Write(e.Message);
+ msg = e.Message;
+ oCN.RollBack();
+ return false;
+ }
+ }
+ #endregion
+
+ #endregion
+
#endregion
@@ -2932,5 +3601,39 @@
}
#endregion
+ #region 閽夐拤鏁版嵁鍚屾OA
+ [Route("DD_DataSynchronization/DataSynchronization_DingDing_OA")]
+ [HttpGet]
+ public object DataSynchronization_DingDing_OA(DateTime startTime, DateTime endTime, string user)
+ {
+ string msg = "";
+ try
+ {
+ //if (getData_ErrWorkTimesRequest(startTime,endTime,ref msg) == false)
+ //{
+ // objJsonResult.code = "0";
+ // objJsonResult.count = 0;
+ // objJsonResult.Message = "Exception锛�" + msg;
+ // objJsonResult.data = null;
+ // return objJsonResult;
+ //}
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
}
}
\ No newline at end of file
--
Gitblit v1.9.1