From ed8133138ecfacdc7564197e4fbf996aa4b4ebf4 Mon Sep 17 00:00:00 2001
From: xwt <2740516069@qq.com>
Date: 星期四, 16 十月 2025 16:59:59 +0800
Subject: [PATCH] IQC PLM图纸地址修改
---
StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs | 339 +++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 246 insertions(+), 93 deletions(-)
diff --git a/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs b/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs
index 8700d85..9648fdf 100644
--- a/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs
+++ b/StandardInterface/MES.Service/service/QcIssueResult/QcIssueResultManager.cs
@@ -28,7 +28,7 @@
//寮傚父澶勭疆鍗曠粨鏋滆〃
[SugarTable("MES_QA_ITEMS_DETECT_01")]
-public class QcIssueResultManager: Repository<QcIssueResults>
+public class QcIssueResultManager : Repository<QcIssueResults>
{
/**
* 浣跨敤 Token 鍒濆鍖栬处鍙稢lient
@@ -103,7 +103,7 @@
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ProcessForecastRequest processForecastRequest = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ProcessForecastRequest
{
- ProcessCode = "PROC-BBA5632D-DC7C-4267-A3E2-757E2B7023BC",
+ ProcessCode = "PROC-4F4B3976-BA15-47EF-9A3C-3A07AC07DFEA",
DeptId = 1,
UserId = "923188102",
FormComponentValues = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.ProcessForecastRequest.ProcessForecastRequestFormComponentValues>
@@ -118,9 +118,9 @@
}
catch (TeaException err)
{
-
- return $"TeaException: Code={err.Code}, Message={err.Message}";
-
+
+ return $"TeaException: Code={err.Code}, Message={err.Message}";
+
}
catch (Exception _err)
{
@@ -132,7 +132,7 @@
* 鑾峰彇userid
* @return string 杩斿洖鍚姩缁撴灉
*/
- public HttpClient _httpClient;
+ public HttpClient _httpClient;
public string DingTalkService()
{
_httpClient = new HttpClient();
@@ -153,7 +153,7 @@
return await GetUserIdByMobile(accessToken, phone);
}
-
+
public async Task<string> GetUserIdByMobile(string accessToken, string mobile)
{
@@ -213,12 +213,12 @@
* @return string 杩斿洖鍚姩缁撴灉
*/
- public string GetProcessNo(GetQcIssueResultDetail getQcIssueResultDetail)
+ public string GetProcessNo(GetQcIssueResultDetail getQcIssueResultDetail, string processType = "LLJ")
{
var db = SqlSugarHelper.GetInstance();
var stafflist = db.Queryable<DingNameCode>()
- .Where(t => t.STAFF_NO == getQcIssueResultDetail.Fname)
+ .Where(t => t.STAFF_NO == getQcIssueResultDetail.StaffNo)
.Select(t => new DingNameCode
{
STAFF_NAME = t.STAFF_NAME,
@@ -230,6 +230,7 @@
{
Task<string> task = GetUserId(stafflist[0].PHONE_NUMBER);
string UserId = task.Result;
+ string applicationUser = $"[\"{UserId}\"]";
// 浣跨敤 JSON 搴忓垪鍖栬緭鍑哄璞$殑璇︾粏鍐呭
string getQcIssueResultDetailJson = JsonConvert.SerializeObject(getQcIssueResultDetail, Formatting.Indented);
@@ -246,70 +247,75 @@
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceHeaders startProcessInstanceHeaders = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceHeaders();
Debug.WriteLine(accessToken);
startProcessInstanceHeaders.XAcsDingtalkAccessToken = accessToken; // 浣跨敤鑾峰彇鍒扮殑 Access Token
+
+ // 鏍规嵁娴佺▼绫诲瀷閫夋嫨涓嶅悓鐨凱rocessCode
+ string processCode = "PROC-4F4B3976-BA15-47EF-9A3C-3A07AC07DFEA"; // 缁熶竴浣跨敤鏉ユ枡妫�娴佺▼缂栫爜
+
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues1 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextField-K2AD4O5B",
- Value = getQcIssueResultDetail.ItemName,
+ Name = "TextField_K5AVR59BD28",
+ Value = getQcIssueResultDetail.ItemNo,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues2 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextField_DYFD1EESLVC0",
- Value = getQcIssueResultDetail.ItemModel,
+ Name = "TextField_1LW382XRH1DS0",
+ Value = getQcIssueResultDetail.ItemName,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues3 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextField_1AVN2BNVY1OG0",
+ Name = "NumberField_UKE91Z101BK0",
Value = getQcIssueResultDetail.FbatchQty,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues4 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextField_1DKEMESOOGSG0",
+ Name = "TextField_1QM2NWE9T3Y80",
Value = getQcIssueResultDetail.SuppName,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues5 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "DDDateField_20LKOACGMLXC0",
- Value = DateTime.Now.ToString("yyyy-MM-dd"),
+ Name = "TextField_1DAQ9890FDWG0",
+ Value = getQcIssueResultDetail.AppicationReason,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues6 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextField_WBNBWGFHR000",
- Value = getQcIssueResultDetail.CgOrder,
+ Name = "DDSelectField_76Z6HC5W1F0",
+ Value = getQcIssueResultDetail.BadReason,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues7 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextareaField_1ZP3BDPMYY800",
+ Name = "TextField_3B85TFIK9Z60",
Value = getQcIssueResultDetail.remark,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues8 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "SignatureField_SKF9Q82DZUO0",
- Value = stafflist[0].STAFF_NAME,
+ Name = "InnerContactField_WVZLUIPZ9J40",
+ Value = applicationUser,
+
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues9 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "DDSelectField_1AK82Q8A2NB40",
- Value = "閫�璐�",
+ Name = "DDSelectField_1AL6MWUUUOHS0",
+ Value = getQcIssueResultDetail.IqcStatus,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues10 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextareaField_1LM82CPPR35S0",
- Value = "鎸戦�夊唴瀹�",
+ Name = "DepartmentField_10ZVNJNJCRJK0",
+ Value = getQcIssueResultDetail.Department,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues11 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextareaField_AK4JLDDNS2O0",
- Value = "璁╂鎺ユ敹鍐呭",
+ Name = "DDSelectField_HG2SQUPO2NK0",
+ Value = getQcIssueResultDetail.WorkShop,
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues12 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextareaField_K69R6770WLS0",
- Value = "閫�璐у娉�",
+ Name = "DDPhotoField_QD15KYR764G0",
+ Value = "娴嬭瘯涓嶈壇鍥剧墖",
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues13 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
- Name = "TextareaField_194UFGLMI02O0",
- Value = "鎶ュ簾澶囨敞",
+ Name = "DDAttachment_GLZLFSIWK9S0",
+ Value = "闄勪欢",
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues14 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
{
@@ -325,6 +331,16 @@
{
Name = "DDAttachment_23VB5MMC1R1C0",
Value = "闄勪欢",
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues17 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+ {
+ Name = "TextField_X6NPRMTGFZ40",
+ Value = getQcIssueResultDetail.EMERGENCY,
+ };
+ AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues formComponentValues18 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestFormComponentValues
+ {
+ Name = "NumberField_23LXMDXBXOTC0",
+ Value = GetFlowConditionValue(getQcIssueResultDetail.IqcStatus),
};
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners targetSelectActioners0 = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners
{
@@ -347,12 +363,12 @@
AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest startProcessInstanceRequest = new AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest
{
OriginatorUserId = UserId,
- ProcessCode = "PROC-BBA5632D-DC7C-4267-A3E2-757E2B7023BC",
+ ProcessCode = processCode,
DeptId = 1,
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
+ formComponentValues9, formComponentValues11, formComponentValues17, formComponentValues18
},
TargetSelectActioners = new List<AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models.StartProcessInstanceRequest.StartProcessInstanceRequestTargetSelectActioners>
{
@@ -402,27 +418,84 @@
/**
* 灏嗗甫鏈夋祦绋嬪彿鍜屾楠屽崟鍙风殑鏂拌褰曟彃鍏ヨ〃涓�
*/
- public dynamic SaveProcessNo(string ReleaseNo,string ProcessNo)
+ public dynamic SaveProcessNo(string ReleaseNo, string ProcessNo, string StaffNo, string Department, string IqcStatus = null)
{
+ var QcIssueResults = GetQcIssueResults(ReleaseNo, ProcessNo, IqcStatus);
- var QcIssueResults = GetQcIssueResults(ReleaseNo, ProcessNo);
+ var ApplicantResults = GetApplicantResults(ProcessNo, StaffNo);
+
+ var DepartmentResults = GetDepartmentResults(ProcessNo, Department);
+
+ var db = SqlSugarHelper.GetInstance();
+
+ db.Insertable(ApplicantResults).ExecuteCommand(); // 鎻掑叆鐢宠浜烘暟鎹�
+ db.Insertable(DepartmentResults).ExecuteCommand(); // 鎻掑叆閮ㄩ棬鏁版嵁
return UseTransaction(db =>
{
- return SaveOrUpdateData(db, QcIssueResults) ? 1 : 0;
- }) > 0;
+ try
+ {
+ // 缁熶竴浣跨敤浜嬪姟db
+ //SaveOrUpdateApplicantData(db, ApplicantResults);
+ //SaveOrUpdateDepartmentData(db, DepartmentResults);
+ SaveOrUpdateData(db, QcIssueResults);
+
+ return 1;
+ }
+ catch
+ {
+ db.RollbackTran();
+ throw;
+ }
+ });
}
- public QcIssueResults GetQcIssueResults(string ReleaseNo, string ProcessNo)
+ public QcIssueResults GetQcIssueResults(string ReleaseNo, string ProcessNo, string IqcStatus = null)
{
var QcIssueResults = new QcIssueResults
{
- ProcessNo = ProcessNo,
+ INSTANCEID = ProcessNo,
ReleaseNo = ReleaseNo,
- QcStatu = ""
+ QcStatu = "",
+ FLOW_CONDITION = IqcStatus != null ? GetFlowConditionValue(IqcStatus) : null
};
return QcIssueResults;
+ }
+
+ public IqcApplicant GetApplicantResults(string ProcessNo, string StaffNo)
+ {
+ var db = SqlSugarHelper.GetInstance();
+
+ var stafflist = db.Queryable<DingNameCode>()
+ .Where(t => t.STAFF_NO == StaffNo)
+ .Select(t => new DingNameCode
+ {
+ STAFF_NAME = t.STAFF_NAME,
+ PHONE_NUMBER = t.PHONE_NUMBER
+ })
+ .ToList();
+
+ var ApplicantResults = new IqcApplicant
+ {
+ INSTANCEID = ProcessNo,
+ APPLICANTID = StaffNo,
+ APPLICANTNAME = stafflist[0].STAFF_NAME
+ };
+
+ return ApplicantResults;
+ }
+
+ public IqcDepartment GetDepartmentResults(string ProcessNo, string Department)
+ {
+
+ var DepartmentResults = new IqcDepartment
+ {
+ INSTANCEID = ProcessNo,
+ DEPARTMENTNAME = Department
+ };
+
+ return DepartmentResults;
}
/**
@@ -430,28 +503,46 @@
*/
public dynamic Save(ErpQcIssueResult erpQcIssueResult)
{
- var json = JsonConvert.SerializeObject(erpQcIssueResult);
+ //var json = JsonConvert.SerializeObject(erpQcIssueResult);
- //var saveSuccess = UseTransaction(db =>
+ ////var saveSuccess = UseTransaction(db =>
+ ////{
+ //// var data = GetMesQcIssueResults(erpQcIssueResult);
+ //// return SaveOrUpdateData(db, data);
+ ////});
+
+ //return new
//{
- // var data = GetMesQcIssueResults(erpQcIssueResult);
- // return SaveOrUpdateData(db, data);
- //});
+ // SerializedPayload = json,
+ // ServerTime = DateTime.UtcNow.ToString("O")
+ //};
- return new
+ var mesQcIssueResults = GetMesQcIssueResults(erpQcIssueResult);
+
+ return UseTransaction(db =>
{
- SerializedPayload = json,
- ServerTime = DateTime.UtcNow.ToString("O")
- };
+ return SaveOrUpdateData(db, mesQcIssueResults) ? 1 : 0;
+ }) > 0;
+
}
public QcIssueResults GetMesQcIssueResults(ErpQcIssueResult erpQcIssueResult)
{
var mesQcIssueResults = new QcIssueResults
{
- ProcessNo = erpQcIssueResult.ProcessNo,
+ INSTANCEID = erpQcIssueResult.ProcessNo,
FReview = erpQcIssueResult.FReview,
- QcStatu = erpQcIssueResult.QcStatus
+ APPLICATIONNUM = erpQcIssueResult.ApplicationQuantity.ToString(),
+ BADCAUSES = erpQcIssueResult.BadCauses,
+ BELONGINGWORKSHOP = erpQcIssueResult.AffiliatedWorkshop,
+ REVIEWSTATUS = erpQcIssueResult.FReview,
+ QcStatu = erpQcIssueResult.QcStatus,
+ ITEMNAME = erpQcIssueResult.ItemName,
+ ITEMNO = erpQcIssueResult.ItemNo,
+ SUPPLIERNAME = erpQcIssueResult.SupplierName,
+ REMARK = erpQcIssueResult.Remark,
+ APPLICATIONRESON = erpQcIssueResult.Reason,
+ FLOW_CONDITION = GetFlowConditionValue(erpQcIssueResult.FReview) // 鏍规嵁璇勫鐘舵�佽缃祦绋嬫潯浠�
};
return mesQcIssueResults;
@@ -465,7 +556,7 @@
// 鏌ヨ QcIssueResults 琛ㄤ腑鏄惁瀛樺湪鍖归厤鐨勮褰�
var mapping = db.Queryable<QcIssueResults>()
- .Where(t => t.ProcessNo == qcIssueResults.ProcessNo)
+ .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID)
.Select(t => new QcIssueResults
{
ReleaseNo = t.ReleaseNo,
@@ -474,7 +565,7 @@
if (mapping.Any())
{
- if (qcIssueResults.QcStatu=="鎷掔粷")
+ if (qcIssueResults.QcStatu == "鎷掔粷")
{
string ReleaseNo = mapping.FirstOrDefault().ReleaseNo;
@@ -483,9 +574,21 @@
.SetColumns(t => new QcIssueResults
{
ReleaseNo = ReleaseNo,
- FReview = qcIssueResults.FReview
+ INSTANCEID = qcIssueResults.INSTANCEID,
+ FReview = qcIssueResults.FReview,
+ APPLICATIONNUM = qcIssueResults.APPLICATIONNUM,
+ BADCAUSES = qcIssueResults.BADCAUSES,
+ BELONGINGWORKSHOP = qcIssueResults.BELONGINGWORKSHOP,
+ REVIEWSTATUS = qcIssueResults.REVIEWSTATUS,
+ QcStatu = qcIssueResults.QcStatu,
+ ITEMNAME = qcIssueResults.ITEMNAME,
+ ITEMNO = qcIssueResults.ITEMNO,
+ SUPPLIERNAME = qcIssueResults.SUPPLIERNAME,
+ REMARK = qcIssueResults.REMARK,
+ APPLICATIONRESON = qcIssueResults.APPLICATIONRESON,
+ FLOW_CONDITION = qcIssueResults.FLOW_CONDITION
})
- .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 鏄惧紡鎸囧畾鏇存柊鏉′欢
+ .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID) // 鏄惧紡鎸囧畾鏇存柊鏉′欢
.ExecuteCommand();
// 鏌ヨ UpdateMesQaItems 琛ㄤ腑鏄惁瀛樺湪鍖归厤鐨勮褰�
@@ -497,41 +600,28 @@
if (existingRecord != null)
{
- string result = null;
- bool returnValue = false;
try
{
- string connectionString = "User Id=yc_dev;Password=ycdev;Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.100)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))";
- using (OracleConnection connection = new OracleConnection(connectionString))
+ //瀹氫箟杈撳叆鍙傛暟
+ var inputParam1 = new SugarParameter("pi_no", existingRecord.ReleaseNo);
+ var inputParam2 = new SugarParameter("pi_user", "PL017");
+ // 瀹氫箟杈撳嚭鍙傛暟
+ var outParam1 = new SugarParameter("po_result", null, true);
+ var outParam2 = new SugarParameter("po_msg", null, true);
+ // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼
+ Db.Ado.ExecuteCommand("BEGIN PRC_MES_IQC_CG_REVOCK(:pi_no,:pi_user,:po_result,:po_msg ); END;", inputParam1, inputParam2, outParam1, outParam2);
+ // 鑾峰彇杈撳嚭鍙傛暟鐨勫��
+ int result = int.Parse((string)outParam1.Value);
+ string message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value;
+ if (result == 1)
{
- using (OracleCommand command = new OracleCommand("PRC_MES_IQC_CG_REVOCK", connection))
- {
- command.CommandType = CommandType.StoredProcedure;
- // 娣诲姞杈撳叆鍙傛暟
- command.Parameters.Add("pi_no", OracleDbType.Varchar2).Value = existingRecord.ReleaseNo; // 鏇挎崲涓哄疄闄呭��
- command.Parameters.Add("pi_user", OracleDbType.Varchar2).Value = "PL017"; // 鏇挎崲涓哄疄闄呭��
- // 娣诲姞杈撳嚭鍙傛暟
- OracleParameter poResult = new OracleParameter("po_result", OracleDbType.Int32, ParameterDirection.Output);
- OracleParameter poMsg = new OracleParameter("po_msg", OracleDbType.Varchar2, 4000, ParameterDirection.Output);
- command.Parameters.Add(poResult);
- command.Parameters.Add(poMsg);
- // 鎵撳紑杩炴帴骞舵墽琛屽懡浠�
- connection.Open();
- command.ExecuteNonQuery();
- // 澶勭悊杩斿洖鍊�
- if (poResult.Value != null && poResult.Value.ToString() == "0")
- {
- returnValue = true;
- }
- else
- {
- // 杈撳嚭閿欒淇℃伅
- string errorMsg = poMsg.Value != null ? poMsg.Value.ToString() : "Unknown error occurred";
- Console.WriteLine("Error: " + errorMsg);
- }
- }
+ //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊�
+ db.Ado.RollbackTran();
+ throw new Exception(message);
}
- return returnValue;
+ // 鎻愪氦浜嬪姟
+ db.Ado.CommitTran();
+ return true;
}
catch (Exception ex)
{
@@ -544,7 +634,8 @@
throw new Exception("鏈壘鍒伴渶瑕佹洿鏂扮殑璁板綍");
}
}
- else{
+ else
+ {
string ReleaseNo = mapping.FirstOrDefault().ReleaseNo;
// 鍙洿鏂� ReleaseNo 鍜� FReview 涓や釜瀛楁
@@ -552,9 +643,21 @@
.SetColumns(t => new QcIssueResults
{
ReleaseNo = ReleaseNo,
- FReview = qcIssueResults.FReview
+ INSTANCEID = qcIssueResults.INSTANCEID,
+ FReview = qcIssueResults.FReview,
+ APPLICATIONNUM = qcIssueResults.APPLICATIONNUM,
+ BADCAUSES = qcIssueResults.BADCAUSES,
+ BELONGINGWORKSHOP = qcIssueResults.BELONGINGWORKSHOP,
+ REVIEWSTATUS = qcIssueResults.REVIEWSTATUS,
+ QcStatu = qcIssueResults.QcStatu,
+ ITEMNAME = qcIssueResults.ITEMNAME,
+ ITEMNO = qcIssueResults.ITEMNO,
+ SUPPLIERNAME = qcIssueResults.SUPPLIERNAME,
+ REMARK = qcIssueResults.REMARK,
+ APPLICATIONRESON = qcIssueResults.APPLICATIONRESON,
+ FLOW_CONDITION = qcIssueResults.FLOW_CONDITION
})
- .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 鏄惧紡鎸囧畾鏇存柊鏉′欢
+ .Where(t => t.INSTANCEID == qcIssueResults.INSTANCEID) // 鏄惧紡鎸囧畾鏇存柊鏉′欢
.ExecuteCommand();
// 鏌ヨ UpdateMesQaItems 琛ㄤ腑鏄惁瀛樺湪鍖归厤鐨勮褰�
@@ -567,7 +670,7 @@
if (existingRecord != null)
{
// 鏇存柊 UpdateMesQaItems 琛ㄤ腑鐨勫瓧娈�
- existingRecord.FngHandle = qcIssueResults.FReview;
+ existingRecord.FngHandle = qcIssueResults.REVIEWSTATUS;
if (existingRecord.FngHandle == "閫�璐�")
{
existingRecord.FMRMODE = "閫�鏂欒ˉ鏂�";
@@ -579,6 +682,44 @@
// 鎵ц鏇存柊鎿嶄綔
updateResult = db.Updateable(existingRecord).ExecuteCommand();
+
+ if (updateResult > 0)
+ {
+ try
+ {
+
+ //瀹氫箟杈撳叆鍙傛暟
+ var inputParam1 = new SugarParameter("PI_BILLNO", ReleaseNo);
+ var inputParam2 = new SugarParameter("PI_USER", "PL017");
+ var inputParam3 = new SugarParameter("PI_HANDLE", existingRecord.FngHandle);
+ var inputParam4 = new SugarParameter("PI_TLFS", existingRecord.FMRMODE);
+ var inputParam5 = new SugarParameter("PI_REMARK", "");
+
+ // 瀹氫箟杈撳嚭鍙傛暟
+ var outParam1 = new SugarParameter("PO_RESULT", null, true);
+ var outParam2 = new SugarParameter("PO_MSG", null, true);
+ // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼
+ Db.Ado.ExecuteCommand("BEGIN PRC_MES_IQC_CG_SUBMIT(:PI_BILLNO,:PI_USER ,:PI_HANDLE,:PI_TLFS,:PI_REMARK,:PO_RESULT,:PO_MSG); END;", inputParam1, inputParam2, inputParam3, inputParam4, inputParam5, outParam1, outParam2);
+ // 鑾峰彇杈撳嚭鍙傛暟鐨勫��
+ int result = int.Parse((string)outParam1.Value);
+ string message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value;
+ if (result == 1)
+ {
+ //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊�
+ db.Ado.RollbackTran();
+ throw new Exception(message);
+ }
+ // 鎻愪氦浜嬪姟
+ db.Ado.CommitTran();
+ return true;
+
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine("Exception: " + ex.Message);
+ return false;
+ }
+ }
return updateResult > 0; // 濡傛灉鏇存柊鎴愬姛锛岃繑鍥� true
}
@@ -595,10 +736,22 @@
if (orUpdate) return true;
throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
}
-
}
-
+ /**
+ * 鏍规嵁璇勫鐘舵�佽幏鍙栨祦绋嬫潯浠跺��
+ */
+ private string GetFlowConditionValue(string iqcStatus)
+ {
+ switch (iqcStatus)
+ {
+
+ case "寰呭垽":
+ return "1";
+ default:
+ return "0"; // 榛樿鍊�
+ }
+ }
}
// 鍝嶅簲妯″瀷
--
Gitblit v1.9.3