| | |
| | | using MES.Service.Modes; |
| | | using MES.Service.util; |
| | | using SqlSugar; |
| | | using System.Data; |
| | | |
| | | namespace MES.Service.service.QC; |
| | | |
| | |
| | | }).ToList(); |
| | | } |
| | | |
| | | public List<QsQaItemXj> getPage(XJPageResult queryObj) |
| | | 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); |
| | | // if (StringUtil.IsNotNullOrEmpty(queryObj.createUser)) |
| | | // lineNo = _baseService.getUserLineNo(queryObj.createUser); |
| | | |
| | | return db |
| | | .Queryable<QsQaItemXj, Womdaa, MesLine, |
| | | MesItems>((s, a, c, b) => |
| | | var pageList = db |
| | | .Queryable<QsQaItemXj, Womdaa, |
| | | MesItems>((s, a, b) => |
| | | new JoinQueryInfos( |
| | | JoinType.Inner, s.BillNo == a.Daa001, |
| | | JoinType.Left, a.Daa015 == c.LineNo, |
| | | JoinType.Left, s.ItemId == b.Id |
| | | ) |
| | | ) |
| | | .WhereIF(lineNo != null && lineNo.Length > 0, |
| | | (s, a, c, b) => lineNo.Contains(c.LineNo)) |
| | | |
| | | .WhereIF( |
| | | StringUtil.IsNotNullOrEmpty(queryObj.result) && |
| | | "未完成".Equals(queryObj.result), |
| | | (s, a, c, 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.FcheckResu != null) |
| | | .WhereIF( |
| | | StringUtil.IsNotNullOrEmpty(queryObj.result) && |
| | | !"未完成".Equals(queryObj.result), |
| | | (s, a, c, b) => s.FcheckResu != null) |
| | | .WhereIF(id > 0, (s, a, c, b) => s.Id == id) |
| | | .Select((s, a, c, b) => new QsQaItemXj |
| | | (s, a, b) => s.Fsubmit == 1) |
| | | .WhereIF(id > 0, (s, a, b) => s.Id == id) |
| | | .Select((s, a, b) => new QsQaItemXj |
| | | { |
| | | Daa020 = c.LineNo, |
| | | Id = s.Id, |
| | | PlanQty = a.Daa008, |
| | | CreateBy = s.CreateBy, |
| | |
| | | ItemModel = b.ItemModel, |
| | | FcheckBy = s.FcheckBy, |
| | | FcheckResu = s.FcheckResu, |
| | | Remarks = s.Remarks |
| | | Remarks = s.Remarks, |
| | | Fsubmit = s.Fsubmit, |
| | | FcheckDate = s.FcheckDate, |
| | | FsubmitBy = s.FsubmitBy |
| | | }).OrderBy(s => s.CreateDate, OrderByType.Desc) |
| | | .ToPageList(queryObj.PageIndex, queryObj.Limit); |
| | | .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); |
| | | |
| | | return (pageList, totalCount); |
| | | } |
| | | |
| | | public bool XJQaSubmit(LLJDto rkjDto) |
| | | { |
| | | var useTransactionWithOracle = |
| | | SqlSugarHelper.UseTransactionWithOracle(db => |
| | | { |
| | | return db.Updateable<QsQaItemXj>() |
| | | .SetColumns(s => s.Fsubmit == 1) |
| | | .SetColumns(s => s.FsubmitBy == rkjDto.userNo) |
| | | .SetColumns(s => s.FsubmitDate == DateTime.Now) |
| | | .Where(s => s.Id == rkjDto.gid) |
| | | .ExecuteCommand(); |
| | | }); |
| | | |
| | | return useTransactionWithOracle > 0; |
| | | } |
| | | |
| | | public List<QsQaItemXj01> setJYItem(string itemNo) |
| | | { |
| | |
| | | .ExecuteCommand(); |
| | | }); |
| | | } |
| | | public List<Component> getYzxBDlist(string id) |
| | | { |
| | | OracleSQLHelper SQLHelper = new(); |
| | | //查元器件 |
| | | //var sql1 = |
| | | // string.Format( |
| | | // @"select ITEMNAME from MES_IQC_CONSISTENCY_ck where PID='" + |
| | | // id + "' group by ITEMNAME order by ITEMNAME"); |
| | | |
| | | var sql1 = |
| | | string.Format( |
| | | @"select CASE WHEN max(MULTI_SELECT) is null THEN ''ELSE '【'||max(MULTI_SELECT)||'】' END as A,ITEMNAME as ITEMNAME from MES_IQC_CONSISTENCY_XJ_ck where PID='" + id + "' group by ITEMNAME order by ITEMNAME"); |
| | | //查明细 |
| | | var sql2 = |
| | | string.Format(@"select * from MES_IQC_CONSISTENCY_XJ_ck where PID='" + |
| | | id + "' order by ITEMNAME,ITEMMODE,SUPPNAME"); |
| | | var dataTable1 = SQLHelper.ExecuteQuery(sql1); |
| | | var dataTable2 = SQLHelper.ExecuteQuery(sql2); |
| | | var Components = new List<Component>(); |
| | | |
| | | |
| | | for (var i = 0; i < dataTable1.Rows.Count; i++) |
| | | { |
| | | var component = new Component(); |
| | | component.Name = dataTable1.Rows[i]["A"].ToString() + dataTable1.Rows[i]["ITEMNAME"].ToString(); |
| | | component.Specs = new List<string>(); |
| | | component.Manufacturers = new List<string>(); |
| | | component.Id = new List<string>(); |
| | | component.SelectedSpec = -1; |
| | | component.SelectedMfg = -1; |
| | | var index = 0; |
| | | for (var j = 0; j < dataTable2.Rows.Count; j++) |
| | | if (dataTable2.Rows[j]["ITEMNAME"].ToString() == |
| | | dataTable1.Rows[i]["ITEMNAME"].ToString()) |
| | | { |
| | | component.Specs.Add(dataTable2.Rows[j]["ITEMMODE"] |
| | | .ToString()); |
| | | component.Manufacturers.Add(dataTable2.Rows[j]["SUPPNAME"] |
| | | .ToString()); |
| | | component.Id.Add(dataTable2.Rows[j]["ID"].ToString()); |
| | | if (dataTable2.Rows[j]["ISCHACK"].ToString() == "1") |
| | | { |
| | | component.SelectedSpec = index; |
| | | component.SelectedMfg = index; |
| | | } |
| | | |
| | | index++; |
| | | } |
| | | |
| | | Components.Add(component); |
| | | } |
| | | |
| | | return Components; |
| | | } |
| | | /// <summary> |
| | | /// 一致性项目 |
| | | /// </summary> |
| | | public class Component |
| | | { |
| | | public string Name { get; set; } |
| | | public List<string> Specs { get; set; } |
| | | public List<string> Manufacturers { get; set; } |
| | | public List<string> Id { get; set; } |
| | | public int SelectedSpec { get; set; } |
| | | public int SelectedMfg { get; set; } |
| | | } |
| | | public void saveYzxBDlist(string id, DataTable DB) |
| | | { |
| | | OracleSQLHelper SQLHelper = new(); |
| | | //先把结果清空 |
| | | var sql1 = |
| | | string.Format( |
| | | @"update MES_IQC_CONSISTENCY_XJ_ck set ISCHACK=0 where PID='" + |
| | | id + "' "); |
| | | SQLHelper.ExecuteQuery(sql1); |
| | | var rowId = ""; |
| | | for (var i = 0; i < DB.Rows.Count; i++) |
| | | rowId += "'" + DB.Rows[i]["id"] + "',"; |
| | | rowId = rowId.Substring(0, rowId.Length - 1); |
| | | |
| | | |
| | | //修改结果 |
| | | var sql2 = |
| | | string.Format( |
| | | @"update MES_IQC_CONSISTENCY_XJ_ck set ISCHACK=1 where PID='" + |
| | | id + "'and id in(" + rowId + ") "); |
| | | SQLHelper.ExecuteQuery(sql2); |
| | | } |
| | | public string[] YzxImgVerify(string id) |
| | | { |
| | | var msgStr = new string[2]; |
| | | |
| | | OracleSQLHelper SQLHelper = new(); |
| | | //修改结果 |
| | | //var sql2 = string.Format( |
| | | // @"select A.ITEMNAME from ( select 888||min(id) id,ITEMNAME from MES_IQC_CONSISTENCY_CK where pid='" + |
| | | // id + "' group by ITEMNAME) A " + |
| | | // "left join MES_QS_IMAGE b on a.id=b.fid where B.id is null order by ITEMNAME"); |
| | | |
| | | |
| | | var sql2 = string.Format( |
| | | @"select A.ITEMNAME from ( select 777||min(id) id,ITEMNAME from MES_IQC_CONSISTENCY_XJ_CK where pid='" + id.ToString() + "' and ITEMNAME not in(select ITEMNAME from MES_IQC_CONSISTENCY_XJ_CK where PID='" + id.ToString() + "' and MULTI_SELECT is not null)" + |
| | | "group by ITEMNAME) A" + |
| | | " left join MES_QS_IMAGE b on a.id=b.fid where B.id is null" + |
| | | " union" + |
| | | " select '分组:' || MULTI_SELECT as ITEMNAME from MES_IQC_CONSISTENCY_XJ_CK where pid = '" + id.ToString() + "' and MULTI_SELECT is not null and MULTI_SELECT not in(select A.MULTI_SELECT as ITEMNAME from (select 888 || min(id) id, MULTI_SELECT from MES_IQC_CONSISTENCY_XJ_CK where pid = '" + id.ToString() + "' and MULTI_SELECT is not null group by MULTI_SELECT,ITEMNAME) A left join MES_QS_IMAGE b on a.id = b.fid where B.id is not null) group by MULTI_SELECT"); |
| | | |
| | | var db = SQLHelper.ExecuteQuery(sql2); |
| | | if (db.Rows.Count > 0) |
| | | { |
| | | msgStr[1] = "元器件:"; |
| | | for (var i = 0; i < db.Rows.Count; i++) |
| | | msgStr[1] += db.Rows[i]["ITEMNAME"] + ","; |
| | | msgStr[1] += "未完成图片上传,请上传!"; |
| | | msgStr[0] = "1"; |
| | | } |
| | | else |
| | | { |
| | | msgStr[0] = "0"; |
| | | msgStr[1] = "ok"; |
| | | } |
| | | |
| | | return msgStr; |
| | | } |
| | | } |