| StandardPda/MES.Service/Dto/service/XJCloseInspectionDto.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| StandardPda/MES.Service/service/QC/BaseService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| StandardPda/MES.Service/service/QC/SJService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| StandardPda/MES.Service/service/QC/XJService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| StandardPda/MESApplication/Controllers/QC/BaseController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| StandardPda/MESApplication/Controllers/QC/SJController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| StandardPda/MESApplication/Controllers/QC/XJController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
StandardPda/MES.Service/Dto/service/XJCloseInspectionDto.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,9 @@ using MES.Service.Dto.@base; namespace MES.Service.Dto.service; public class XJCloseInspectionDto : Page { public string billNo { get; set; } public int id { get; set; } } StandardPda/MES.Service/service/QC/BaseService.cs
@@ -81,4 +81,21 @@ }); return mesQsImages; } public List<MesQsImage> getXjAllImgByFid(int id, string qsType) { var db = SqlSugarHelper.GetInstance(); var mesQsImages = db .Queryable<MesQsImage, QsQaItemXj01>((a, b) => new JoinQueryInfos(JoinType.Left, a.Fid == int.Parse("666" + b.Id.ToString()))) .Where((a, b) => b.Pid == id && a.Id != null).ToList(); mesQsImages.ForEach(s => { if (s.ImageData is { Length: > 0 }) s.base64Date = Convert.ToBase64String(s.ImageData); }); return mesQsImages; } } StandardPda/MES.Service/service/QC/SJService.cs
@@ -77,13 +77,37 @@ public (List<SJPageResult> item, int TotalCount) getPage(SJPageResult queryObj) { var db = SqlSugarHelper.GetInstance(); int totalCount = 0; string[]? lineNo = null; // if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser)) // lineNo = _baseService.getUserLineNo(queryObj.StatusUser); var totalCount = 0; string searchValue = queryObj.searchValue?.Trim(); var query = db.Queryable<SJPageResult>(); // ========= æå»ºåºç¡ query ========= var query = db.Queryable<SJPageResult>() .WhereIF(lineNo != null && lineNo.Length > 0, a => lineNo.Contains(a.line)) .WhereIF(queryObj.Id != null, a => a.Id == queryObj.Id) .WhereIF(StringUtil.IsNotNullOrEmpty(queryObj.BillNo), a => a.BillNo == queryObj.BillNo) // æªå®æ .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.Result) && "æªå®æ".Equals(queryObj.Result), a => a.FSubmit == 0 || a.FSubmit == null) // 已宿 .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.Result) && !"æªå®æ".Equals(queryObj.Result), a => a.FSubmit == 1); // 1ï¸â£ 妿 SearchValue 为空 â æ¥è¯¢å ¨é¨ // ========= SearchValue 夿 ========= // SearchValue 为空ï¼è¿åå ¨é¨ if (string.IsNullOrWhiteSpace(searchValue)) { var allData = query @@ -91,27 +115,26 @@ .ToPageList( Math.Max(queryObj.PageIndex, 1), Math.Max(queryObj.Limit, 1), ref totalCount); ref totalCount ); return (allData, totalCount); } // 2ï¸â£ SearchValue é空 â æ¨¡ç³å¹é BILL_NO æ ITEM_NO // SearchValue ä¸ä¸ºç©ºï¼æ¨¡ç³æ¥ BILL_NO / ITEM_NO query = query.Where(a => SqlFunc.Like(SqlFunc.Trim(a.BillNo).ToLower(), $"%{searchValue.ToLower()}%") || SqlFunc.Like(SqlFunc.Trim(a.ItemNo).ToLower(), $"%{searchValue.ToLower()}%") ); // ========= æ§è¡å页 ========= var data = query .OrderBy(a => a.BillNo, OrderByType.Desc) .ToPageList( Math.Max(queryObj.PageIndex, 1), Math.Max(queryObj.Limit, 1), ref totalCount); // 3ï¸â£ å¦ææ²¡æå¹é æ°æ® â è¿å空å表 if (totalCount == 0) return (new List<SJPageResult>(), 0); ref totalCount ); return (data, totalCount); } @@ -125,6 +148,8 @@ //SetQSItem // public List<QsItemIpiItem> SetQSItems(string itemNo) // { StandardPda/MES.Service/service/QC/XJService.cs
@@ -3,6 +3,7 @@ using MES.Service.Modes; using MES.Service.util; using SqlSugar; using System.Data; namespace MES.Service.service.QC; @@ -107,63 +108,181 @@ }).ToList(); } //public (List<QsQaItemXj> item, int TotalCount) getPage(XJPageResult queryObj) //{ // var db = SqlSugarHelper.GetInstance(); // var id = Convert.ToDecimal(queryObj.id); // var totalCount = 0; // string[]? lineNo = null; // // if (StringUtil.IsNotNullOrEmpty(queryObj.createUser)) // // lineNo = _baseService.getUserLineNo(queryObj.createUser); // var pageList = db // .Queryable<QsQaItemXj, Womdaa, // MesItems>((s, a, b) => // new JoinQueryInfos( // JoinType.Inner, s.BillNo == a.Daa001, // JoinType.Left, s.ItemId == b.Id // ) // ) // .WhereIF( // StringUtil.IsNotNullOrEmpty(queryObj.result) && // "æªå®æ".Equals(queryObj.result), // (s, a, b) => s.Fsubmit == null || s.Fsubmit == 0) // // .WhereIF( // // StringUtil.IsNotNullOrEmpty(queryObj.result) && // // !"æªå®æ".Equals(queryObj.result), // // (s, a, b) => s.FcheckResu != null) // .WhereIF( // StringUtil.IsNotNullOrEmpty(queryObj.result) && // !"æªå®æ".Equals(queryObj.result), // (s, a, b) => s.Fsubmit == 1) // .WhereIF(id > 0, (s, a, b) => s.Id == id) // .Select((s, a, b) => new QsQaItemXj // { // Id = s.Id, // PlanQty = a.Daa008, // CreateBy = s.CreateBy, // CreateDate = s.CreateDate, // ReleaseNo = s.ReleaseNo, // ItemNo = s.ItemNo, // BillNo = s.BillNo, // ItemName = b.ItemName, // ItemModel = b.ItemModel, // FcheckBy = s.FcheckBy, // FcheckResu = s.FcheckResu, // Remarks = s.Remarks, // Fsubmit = s.Fsubmit, // FcheckDate = s.FcheckDate, // FsubmitBy = s.FsubmitBy // }).OrderBy(s => s.CreateDate, OrderByType.Desc) // .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); // return (pageList, totalCount); //} public (List<QsQaItemXj> item, int TotalCount) getPage(XJPageResult queryObj) { var db = SqlSugarHelper.GetInstance(); var id = Convert.ToDecimal(queryObj.id); var totalCount = 0; string[]? lineNo = null; // if (StringUtil.IsNotNullOrEmpty(queryObj.createUser)) // lineNo = _baseService.getUserLineNo(queryObj.createUser); var pageList = db .Queryable<QsQaItemXj, Womdaa, MesItems>((s, a, b) => .Queryable<QsQaItemXj, Womdaa, MesItems>((s, a, b) => new JoinQueryInfos( JoinType.Inner, s.BillNo == a.Daa001, JoinType.Left, s.ItemId == b.Id ) ) // â æ¨¡ç³æç´¢ï¼BillNo æ ItemNo æ°å¢ .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.SearchValue), (s, a, b) => s.BillNo.Contains(queryObj.SearchValue) || s.ItemNo.Contains(queryObj.SearchValue) ) // â ç¶æçéï¼æªå®æ .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && "æªå®æ".Equals(queryObj.result), (s, a, b) => s.Fsubmit == null || s.Fsubmit == 0) // .WhereIF( // StringUtil.IsNotNullOrEmpty(queryObj.result) && // !"æªå®æ".Equals(queryObj.result), // (s, a, b) => s.FcheckResu != null) (s, a, b) => s.Fsubmit == null || s.Fsubmit == 0 ) // â ç¶æçéï¼å·²å®æ .WhereIF( StringUtil.IsNotNullOrEmpty(queryObj.result) && !"æªå®æ".Equals(queryObj.result), (s, a, b) => s.Fsubmit == 1) (s, a, b) => s.Fsubmit == 1 ) // â ID æ¥è¯¢ï¼åæ¡ï¼ .WhereIF(id > 0, (s, a, b) => s.Id == id) .Select((s, a, b) => new QsQaItemXj // â select å®ä½è¿å .Select((s, a, b) => new QsQaItemXj { Id = s.Id, PlanQty = a.Daa008, ReleaseNo = s.ReleaseNo, FcheckDate = s.FcheckDate, FcheckBy = s.FcheckBy, ItemNo = s.ItemNo, FcheckResu = s.FcheckResu, CreateBy = s.CreateBy, CreateDate = s.CreateDate, ReleaseNo = s.ReleaseNo, ItemNo = s.ItemNo, LastupdateBy = s.LastupdateBy, LastupdateDate = s.LastupdateDate, Modify1By = s.Modify1By, ItemUnit = s.ItemUnit, BillNo = s.BillNo, ItemName = b.ItemName, ItemModel = b.ItemModel, FcheckBy = s.FcheckBy, FcheckResu = s.FcheckResu, Remarks = s.Remarks, MoidNum = s.MoidNum, FsubmitBy = s.FsubmitBy, FsubmitDate = s.FsubmitDate, Fsubmit = s.Fsubmit, FcheckDate = s.FcheckDate, FsubmitBy = s.FsubmitBy }).OrderBy(s => s.CreateDate, OrderByType.Desc) Remarks = s.Remarks, ItemId = s.ItemId, // â é¢å¤åæ®µï¼æ¥èªè¿è¡¨ï¼ PlanQty = a.Daa008, ItemName = b.ItemName, ItemModel = b.ItemModel }) .OrderBy(s => s.CreateDate, OrderByType.Desc) .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); return (pageList, totalCount); } public object CloseInspection(XJCloseInspectionDto dto) { try { var db = SqlSugarHelper.GetInstance(); var sql = string.Format( @"UPDATE QS_QA_ITEM_XJ SET FSUBMIT = 1, FCHECK_RESU = 'æå¨å ³é' WHERE ID = '{0}'", dto.id); db.Ado.ExecuteCommand(sql); return new ResponseResult { status = 0, message = "OK", data = "å ³éæå" }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } public bool XJQaSubmit(LLJDto rkjDto) { @@ -311,36 +430,92 @@ return Convert.ToInt32(xj.Id); } //public int saveItem(XJDto xjDto) //{ // var items = xjDto.items; // var userNo = xjDto.userNo; // SqlSugarHelper.UseTransactionWithOracle(db => // { // foreach (var item in items) item.Pid = xjDto.gid; // return db.Insertable(items).ExecuteCommand(); // }); // xjDto.items = getJYItem(xjDto.gid, null); // xjDto.items.ForEach(s => // { // if (s.MaxValue != null || s.StandardValue != null || // s.MinValue != null) return; // var detail = new QsQaItemXj02(); // detail.Pid = s.Id; // detail.Gid = xjDto.gid; // detail.Fstand = "â"; // detail.FcheckResu = "1"; // detail.UpdateBy = xjDto.userNo; // detail.count = (int?)s.LevelNum; // SetQSItemDetail(detail); // }); // return Convert.ToInt32(xjDto.gid); //} public int saveItem(XJDto xjDto) { var items = xjDto.items; var userNo = xjDto.userNo; SqlSugarHelper.UseTransactionWithOracle(db => // â ä½¿ç¨ lambda è¿åæå ¥æ¡æ°ï¼ä¿è¯ Func<SqlSugarClient, int> æ¯æ¡è·¯å¾é½æè¿åå¼ int insertCount = SqlSugarHelper.UseTransactionWithOracle(db => { foreach (var item in items) item.Pid = xjDto.gid; // 1ï¸â£ æ£æ¥è¡¨éæ¯å¦åå¨ç¸å gid çæ°æ® var existingCount = db.Queryable<QsQaItemXj01>() .Count(s => s.Pid == xjDto.gid); // 2ï¸â£ 妿åå¨ï¼åå å é¤ if (existingCount > 0) { db.Deleteable<QsQaItemXj01>() .Where(s => s.Pid == xjDto.gid) .ExecuteCommand(); } // 3ï¸â£ ç»æ¯æ¡æç»è®¾ç½® Pid å¹¶æå ¥ï¼è¿åæå ¥æ¡æ° foreach (var item in items) { item.Pid = xjDto.gid; } return db.Insertable(items).ExecuteCommand(); }); // 4ï¸â£ éæ°è·åæå ¥åçæç» xjDto.items = getJYItem(xjDto.gid, null); xjDto.items.ForEach(s => // 5ï¸â£ 对没æ Max/Min/StandardValue çæç»çæé»è®¤æ£æµç»æ foreach (var s in xjDto.items) { if (s.MaxValue != null || s.StandardValue != null || s.MinValue != null) return; var detail = new QsQaItemXj02(); detail.Pid = s.Id; detail.Gid = xjDto.gid; detail.Fstand = "â"; detail.FcheckResu = "1"; detail.UpdateBy = xjDto.userNo; detail.count = (int?)s.LevelNum; SetQSItemDetail(detail); }); if (s.MaxValue != null || s.StandardValue != null || s.MinValue != null) continue; return Convert.ToInt32(xjDto.gid); var detail = new QsQaItemXj02 { Pid = s.Id, Gid = xjDto.gid, Fstand = "â", FcheckResu = "1", UpdateBy = xjDto.userNo, count = (int?)s.LevelNum }; SetQSItemDetail(detail); } // 6ï¸â£ è¿åæå ¥æ¡æ° return insertCount; } public XJDto getXjDetail02ById(decimal? id) @@ -539,6 +714,45 @@ }); } /// <summary> /// è·å馿£åææä¸è¯æè¿° /// </summary> /// <param name="id">æ£éªåID</param> /// <returns>ä¸è¯æè¿°æ°æ®è¡¨</returns> public DataTable getBlmsItem1(string id) { OracleSQLHelper SQLHelper = new(); // æ¥è¯¢é¦æ£æ£éªåçä¸è¯æè¿° var sql1 = string.Format( @"select PROJ_NAME, REMARKS from QS_QA_ITEM_XJ01 f where PID = '" + id + "' and REMARKS is not null order by PROJ_NAME"); return SQLHelper.ExecuteQuery(sql1); } /// <summary> /// è·åå·¡æ£æ£åææä¸è¯æè¿° /// </summary> /// <param name="id">æ£éªåID</param> /// <returns>ä¸è¯æè¿°æ°æ®è¡¨</returns> public DataTable ggetBlmsItem1(string id) { OracleSQLHelper SQLHelper = new(); // æ¥è¯¢é¦æ£æ£éªåçä¸è¯æè¿° var sql1 = string.Format( @"select PROJ_NAME, REMARKS from QS_QA_ITEM_XJ01 f where PID = '" + id + "' and REMARKS is not null order by PROJ_NAME"); return SQLHelper.ExecuteQuery(sql1); } //å表修æ¹å¤æ³¨å段 public int saveRemarksById(XJDto dto) { @@ -550,5 +764,10 @@ .Where(it => it.Id == dto.id) .ExecuteCommand(); }); } } StandardPda/MESApplication/Controllers/QC/BaseController.cs
@@ -139,4 +139,40 @@ return ResponseResult.ResponseError(ex); } } /// <summary> /// è·åå·¡æ£æ£å个æ£éªåä¸ä¼ çææå¾ç /// </summary> /// <param name="data"></param> /// <returns></returns> [HttpPost("getXjAllImgByFid")] public ResponseResult getXjAllImgByFid([FromBody] JObject data) { var id = int.Parse(data["id"].ToString()); var qsType = data["qsType"].ToString(); try { dynamic resultInfos = new ExpandoObject(); var tbBillList = new BaseService().getXjAllImgByFid(id, qsType); resultInfos.tbBillList = tbBillList; return new ResponseResult { status = 0, message = "OK", data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } } StandardPda/MESApplication/Controllers/QC/SJController.cs
@@ -6,9 +6,12 @@ using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using SixLabors.ImageSharp.Drawing; using SqlSugar; using System.Collections.Generic; using System.Data; using System.Dynamic; using DbType = System.Data.DbType; namespace MESApplication.Controllers.QC; @@ -447,7 +450,79 @@ dynamic resultInfos = new ExpandoObject(); var tbBillList = new SJService().SJQaSubmit(rkjDto); resultInfos.tbBillList = tbBillList; //================= 夿æ£éªåæ ¼çæå·¡æ£å ========= var sqlPass1 = $@" SELECT IS_PASS FROM QS_ITEM_IPI_REQ WHERE ID = '{rkjDto.gid}' "; var dtPass1 = SQLHelper.ExecuteQuery(sqlPass1); var sqlPass3 = $@"select C.ID from QS_ITEM_IPI_REQ A LEFT JOIN V_MES_SJ B on b.BILL_NO = A.BILL_NO LEFT JOIN WOMDAA C on C.DAA001 = B.DAA001 WHERE A.ID = '{rkjDto.gid}' "; var dtPass3 = SQLHelper.ExecuteQuery(sqlPass3); var value4 = dtPass3.Rows[0][0]; int sqlPass2 = Convert.ToInt32(value4); bool isPass = false; if (dtPass1 != null && dtPass1.Rows.Count > 0) { var value = dtPass1.Rows[0]["IS_PASS"]?.ToString(); // å¤æä¸ºåæ ¼ï¼IS_PASS = 1ï¼ if (value == "1") { isPass = true; } } // å¦æåæ ¼ï¼æ§è¡åå¨è¿ç¨ if (isPass) { var db = SqlSugarHelper.GetInstance(); // ===== è¾åºåæ° ===== var outFlag = new SugarParameter("P_FLAG", null, DbType.Int32, ParameterDirection.Output, 10); var outText = new SugarParameter("P_TEXT", null, DbType.String, ParameterDirection.Output, 4000); // ===== è¾å ¥åæ° ===== var parameters = new List<SugarParameter> { new SugarParameter("P_ID", sqlPass2, DbType.Int64, ParameterDirection.Input), new SugarParameter("P_USER", rkjDto.userNo, DbType.String, ParameterDirection.Input), new SugarParameter("P_ISH", 0, DbType.Int64, ParameterDirection.Input), // è¾åºåæ°å¿ é¡»å¸¦ä¸ outFlag, outText }; // ===== æ§è¡åå¨è¿ç¨ ===== db.Ado.ExecuteCommand( "BEGIN PRC_XJ_GENERATE(:P_ID, :P_USER, :P_ISH, :P_FLAG, :P_TEXT); END;", parameters); // ===== 读åè¾åºåæ°å¹¶è½¬æ¢æ ResponseResult ===== var result = new ResponseResult { status = outFlag.Value?.ToString() == "1" ? 1 : 0, // 0 表示æåï¼1 表示失败 message = outText.Value?.ToString() }; return result; } return new ResponseResult { status = 0, @@ -455,6 +530,7 @@ data = resultInfos }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); @@ -462,6 +538,15 @@ } /// <summary> /// è·åä¸è´æ§æ ¸å¯¹é¡¹ç® /// </summary> StandardPda/MESApplication/Controllers/QC/XJController.cs
@@ -1,10 +1,11 @@ using System.Dynamic; using MES.Service.Dto.service; using MES.Service.Dto.service; using MES.Service.Modes; using MES.Service.service.QC; using MES.Service.util; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json.Linq; using System.Dynamic; using static Microsoft.EntityFrameworkCore.DbLoggerCategory; namespace MESApplication.Controllers.QC; @@ -228,6 +229,38 @@ return ResponseResult.ResponseError(ex); } } [HttpPost("closeInspection")] public ResponseResult CloseInspection([FromBody] XJCloseInspectionDto dto) { try { var service = new XJService(); var result = service.CloseInspection(dto); return new ResponseResult { status = 0, message = "OK", data = result }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } [HttpPost("saveItem")] public ResponseResult saveItem([FromBody] XJDto xjDto) @@ -465,4 +498,43 @@ return ResponseResult.ResponseError(ex); } } } /// <summary> /// è·åå·¡æ£æ£åææä¸è¯æè¿° /// </summary> /// <param name="data"></param> /// <returns></returns> [HttpPost("getJYBlmsItem")] public ResponseResult getJYBlmsItem([FromBody] JObject data) { var id = data["id"]?.ToString(); try { var tbBillList = new XJService().getBlmsItem1(id); return new ResponseResult { status = 0, message = "OK", data = tbBillList }; } catch (Exception ex) { return ResponseResult.ResponseError(ex); } } }