| | |
| | | using MES.Service.Dto.webApi.DeliveryNote; |
| | | using MES.Service.Modes.DeliveryNote; |
| | | using Newtonsoft.Json; |
| | | using Oracle.ManagedDataAccess.Client; |
| | | using System.Data; |
| | | |
| | | namespace MES.Service.service.QcIssueResult; |
| | | |
| | |
| | | var QcIssueResults = new QcIssueResults |
| | | { |
| | | ProcessNo = ProcessNo, |
| | | ReleaseNo = ReleaseNo |
| | | ReleaseNo = ReleaseNo, |
| | | QcStatu = "", |
| | | TCSTATU ="" |
| | | |
| | | }; |
| | | |
| | | return QcIssueResults; |
| | |
| | | var mesQcIssueResults = new QcIssueResults |
| | | { |
| | | ProcessNo = erpQcIssueResult.ProcessNo, |
| | | FReview = erpQcIssueResult.FReview |
| | | FReview = erpQcIssueResult.FReview, |
| | | QcStatu = erpQcIssueResult.QCSTATU, |
| | | QCREMARK = erpQcIssueResult.QcRemark, |
| | | SELECTREMARK = erpQcIssueResult.SelectRemark, |
| | | DATA = erpQcIssueResult.DATA, |
| | | CGORDER = erpQcIssueResult.CGORDER, |
| | | SJPLACE = erpQcIssueResult.SJPLACE, |
| | | NUM = erpQcIssueResult.NUM, |
| | | BFREMARK = erpQcIssueResult.BFREMARK, |
| | | THREMARK = erpQcIssueResult.THREMARK, |
| | | TCSTATU = erpQcIssueResult.TCSTATU, |
| | | MODEL =erpQcIssueResult.MODEL, |
| | | RBJSREMARK =erpQcIssueResult.RBJSREMARK, |
| | | RETURN_DATE=System.DateTime.Now |
| | | }; |
| | | |
| | | return mesQcIssueResults; |
| | |
| | | |
| | | if (mapping.Any()) |
| | | { |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | | // 只更新 ReleaseNo 和 FReview 两个字段 |
| | | var updateResult = db.Updateable<QcIssueResults>() |
| | | .SetColumns(t => new QcIssueResults |
| | | { |
| | | ReleaseNo = ReleaseNo, |
| | | FReview = qcIssueResults.FReview |
| | | }) |
| | | .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | | |
| | | // 查询 UpdateMesQaItems 表中是否存在匹配的记录 |
| | | var existingRecord = db.Queryable<UpdateMesQaItems>() |
| | | .Where(it => it.ReleaseNo == ReleaseNo) |
| | | .First(); // 使用 First 获取第一条记录 |
| | | |
| | | Debug.WriteLine($"查询到的 mapping: {JsonConvert.SerializeObject(existingRecord)}"); |
| | | |
| | | if (existingRecord != null) |
| | | if (qcIssueResults.TCSTATU == "是") |
| | | { |
| | | // 更新 UpdateMesQaItems 表中的字段 |
| | | existingRecord.FngHandle = qcIssueResults.FReview; |
| | | if (existingRecord.FngHandle == "退货") |
| | | if (qcIssueResults.QcStatu == "拒绝") |
| | | { |
| | | existingRecord.FMRMODE = "退料补料"; |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | | // 只更新 ReleaseNo 和 FReview 两个字段 |
| | | var updateResult = db.Updateable<QcIssueResults>() |
| | | .SetColumns(t => new QcIssueResults |
| | | { |
| | | ReleaseNo = ReleaseNo, |
| | | FReview = qcIssueResults.FReview, |
| | | QcStatu = qcIssueResults.QcStatu, |
| | | QCREMARK = qcIssueResults.QCREMARK, |
| | | SELECTREMARK = qcIssueResults.SELECTREMARK, |
| | | DATA = qcIssueResults.DATA, |
| | | CGORDER = qcIssueResults.CGORDER, |
| | | SJPLACE = qcIssueResults.SJPLACE, |
| | | NUM = qcIssueResults.NUM, |
| | | BFREMARK = qcIssueResults.BFREMARK, |
| | | THREMARK = qcIssueResults.THREMARK, |
| | | TCSTATU = qcIssueResults.TCSTATU, |
| | | MODEL = qcIssueResults.MODEL, |
| | | RBJSREMARK = qcIssueResults.RBJSREMARK, |
| | | RETURN_DATE=System.DateTime.Now |
| | | }) |
| | | .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | | |
| | | // 查询 UpdateMesQaItems 表中是否存在匹配的记录 |
| | | var existingRecord = db.Queryable<UpdateMesQaItems>() |
| | | .Where(it => it.ReleaseNo == ReleaseNo) |
| | | .First(); // 使用 First 获取第一条记录 |
| | | |
| | | Debug.WriteLine($"查询到的 mapping: {JsonConvert.SerializeObject(existingRecord)}"); |
| | | |
| | | if (existingRecord != null) |
| | | { |
| | | |
| | | bool returnValue = false; |
| | | try |
| | | { |
| | | //定义输入参数 |
| | | 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) |
| | | { |
| | | //存储过程失败则事务进行回滚 |
| | | db.Ado.RollbackTran(); |
| | | throw new Exception(message); |
| | | } |
| | | // 提交事务 |
| | | db.Ado.CommitTran(); |
| | | return true; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Console.WriteLine("Exception: " + ex.Message); |
| | | return false; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | throw new Exception("未找到需要更新的记录"); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | existingRecord.FMRMODE = null; |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | | // 只更新 ReleaseNo 和 FReview 两个字段 |
| | | var updateResult = db.Updateable<QcIssueResults>() |
| | | .SetColumns(t => new QcIssueResults |
| | | { |
| | | ReleaseNo = ReleaseNo, |
| | | FReview = qcIssueResults.FReview, |
| | | QcStatu = qcIssueResults.QcStatu, |
| | | QCREMARK = qcIssueResults.QCREMARK, |
| | | SELECTREMARK = qcIssueResults.SELECTREMARK, |
| | | DATA = qcIssueResults.DATA, |
| | | CGORDER = qcIssueResults.CGORDER, |
| | | SJPLACE = qcIssueResults.SJPLACE, |
| | | NUM = qcIssueResults.NUM, |
| | | BFREMARK = qcIssueResults.BFREMARK, |
| | | THREMARK = qcIssueResults.THREMARK, |
| | | TCSTATU = qcIssueResults.TCSTATU, |
| | | MODEL = qcIssueResults.MODEL, |
| | | RBJSREMARK = qcIssueResults.RBJSREMARK, |
| | | RETURN_DATE = System.DateTime.Now |
| | | }) |
| | | .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | | |
| | | // 查询 UpdateMesQaItems 表中是否存在匹配的记录 |
| | | var existingRecord = db.Queryable<UpdateMesQaItems>() |
| | | .Where(it => it.ReleaseNo == ReleaseNo) |
| | | .First(); // 使用 First 获取第一条记录 |
| | | |
| | | Debug.WriteLine($"查询到的 mapping: {JsonConvert.SerializeObject(existingRecord)}"); |
| | | |
| | | if (existingRecord != null) |
| | | { |
| | | // 更新 UpdateMesQaItems 表中的字段 |
| | | existingRecord.FngHandle = "特采直接使用"; |
| | | existingRecord.FMRMODE = null; |
| | | |
| | | // 执行更新操作 |
| | | 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", "特采直接使用"); |
| | | var inputParam4 = new SugarParameter("PI_TLFS", ""); |
| | | 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_BILLNO,: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 |
| | | } |
| | | else |
| | | { |
| | | throw new Exception("未找到需要更新的记录"); |
| | | } |
| | | } |
| | | |
| | | // 执行更新操作 |
| | | updateResult = db.Updateable(existingRecord).ExecuteCommand(); |
| | | |
| | | return updateResult > 0; // 如果更新成功,返回 true |
| | | } |
| | | else |
| | | { |
| | | throw new Exception("未找到需要更新的记录"); |
| | | if (qcIssueResults.QcStatu == "拒绝") |
| | | { |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | | // 只更新 ReleaseNo 和 FReview 两个字段 |
| | | var updateResult = db.Updateable<QcIssueResults>() |
| | | .SetColumns(t => new QcIssueResults |
| | | { |
| | | ReleaseNo = ReleaseNo, |
| | | FReview = qcIssueResults.FReview, |
| | | QcStatu = qcIssueResults.QcStatu, |
| | | QCREMARK = qcIssueResults.QCREMARK, |
| | | SELECTREMARK = qcIssueResults.SELECTREMARK, |
| | | DATA = qcIssueResults.DATA, |
| | | CGORDER = qcIssueResults.CGORDER, |
| | | SJPLACE = qcIssueResults.SJPLACE, |
| | | NUM = qcIssueResults.NUM, |
| | | BFREMARK = qcIssueResults.BFREMARK, |
| | | THREMARK = qcIssueResults.THREMARK, |
| | | TCSTATU = qcIssueResults.TCSTATU, |
| | | MODEL = qcIssueResults.MODEL, |
| | | RBJSREMARK = qcIssueResults.RBJSREMARK, |
| | | RETURN_DATE = System.DateTime.Now |
| | | }) |
| | | .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | | |
| | | // 查询 UpdateMesQaItems 表中是否存在匹配的记录 |
| | | var existingRecord = db.Queryable<UpdateMesQaItems>() |
| | | .Where(it => it.ReleaseNo == ReleaseNo) |
| | | .First(); // 使用 First 获取第一条记录 |
| | | |
| | | Console.WriteLine($"查询到的 mapping: {JsonConvert.SerializeObject(existingRecord)}"); |
| | | |
| | | if (existingRecord != null) |
| | | { |
| | | |
| | | try |
| | | { |
| | | |
| | | //定义输入参数 |
| | | 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) |
| | | { |
| | | //存储过程失败则事务进行回滚 |
| | | db.Ado.RollbackTran(); |
| | | throw new Exception(message); |
| | | } |
| | | // 提交事务 |
| | | db.Ado.CommitTran(); |
| | | return true; |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Console.WriteLine("Exception: " + ex.Message); |
| | | return false; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | throw new Exception("未找到需要更新的记录"); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | string ReleaseNo = mapping.FirstOrDefault().ReleaseNo; |
| | | |
| | | // 只更新 ReleaseNo 和 FReview 两个字段 |
| | | var updateResult = db.Updateable<QcIssueResults>() |
| | | .SetColumns(t => new QcIssueResults |
| | | { |
| | | ReleaseNo = ReleaseNo, |
| | | FReview = qcIssueResults.FReview, |
| | | QcStatu = qcIssueResults.QcStatu, |
| | | QCREMARK = qcIssueResults.QCREMARK, |
| | | SELECTREMARK = qcIssueResults.SELECTREMARK, |
| | | DATA = qcIssueResults.DATA, |
| | | CGORDER = qcIssueResults.CGORDER, |
| | | SJPLACE = qcIssueResults.SJPLACE, |
| | | NUM = qcIssueResults.NUM, |
| | | BFREMARK = qcIssueResults.BFREMARK, |
| | | THREMARK = qcIssueResults.THREMARK, |
| | | TCSTATU = qcIssueResults.TCSTATU, |
| | | MODEL = qcIssueResults.MODEL, |
| | | RBJSREMARK = qcIssueResults.RBJSREMARK, |
| | | }) |
| | | .Where(t => t.ProcessNo == qcIssueResults.ProcessNo) // 显式指定更新条件 |
| | | .ExecuteCommand(); |
| | | |
| | | // 查询 UpdateMesQaItems 表中是否存在匹配的记录 |
| | | var existingRecord = db.Queryable<UpdateMesQaItems>() |
| | | .Where(it => it.ReleaseNo == ReleaseNo) |
| | | .First(); // 使用 First 获取第一条记录 |
| | | |
| | | Debug.WriteLine($"查询到的 mapping: {JsonConvert.SerializeObject(existingRecord)}"); |
| | | |
| | | if (existingRecord != null) |
| | | { |
| | | // 更新 UpdateMesQaItems 表中的字段 |
| | | existingRecord.FngHandle = qcIssueResults.FReview; |
| | | if (existingRecord.FngHandle == "退货") |
| | | { |
| | | existingRecord.FMRMODE = "退料补料"; |
| | | } |
| | | else if (existingRecord.FngHandle == "挑选使用") |
| | | { |
| | | existingRecord.FMRMODE = "退料补料"; |
| | | } |
| | | else if (existingRecord.FngHandle == "报废") |
| | | { |
| | | existingRecord.FMRMODE = "退料补料"; |
| | | } |
| | | else |
| | | { |
| | | existingRecord.FMRMODE = null; |
| | | } |
| | | |
| | | // 执行更新操作 |
| | | 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_BILLNO,: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 |
| | | } |
| | | else |
| | | { |
| | | throw new Exception("未找到需要更新的记录"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | else |
| | | { |