| | |
| | | using System.Data; |
| | | using Masuit.Tools; |
| | | using Masuit.Tools; |
| | | using MES.Service.DB; |
| | | using MES.Service.Dto.service; |
| | | using MES.Service.Modes; |
| | | using MES.Service.util; |
| | | using Newtonsoft.Json; |
| | | using SqlSugar; |
| | | using System.ComponentModel; |
| | | using System.Data; |
| | | using DbType = System.Data.DbType; |
| | | |
| | | |
| | |
| | | // itemIds is { Length: > 0 }, |
| | | // (a, b, c) => itemIds.Contains(a.ItemId)) |
| | | .WhereIF(id > 0, (a, b, d) => a.Id == id) |
| | | .WhereIF(queryObj.createUser!="PL017"&& queryObj.UserIndex=="0", (a, b, d, e, f, g,h, i) => (g.Fcode == queryObj.createUser || i.Fcode == queryObj.createUser))//判断此单的检验员,或者检验为空就显示此单据 |
| | | // .WhereIF(queryObj.createUser!="PL017"&& queryObj.UserIndex=="0", (a, b, d, e, f, g,h, i) => (g.Fcode == queryObj.createUser || i.Fcode == queryObj.createUser))//判断此单的检验员,或者检验为空就显示此单据 |
| | | //加筛选条件,根据供应商,物料编码,物料名称,项目搜索 |
| | | //.WhereIF(queryObj.SearchValue != null && queryObj.SearchValue != "", |
| | | //(a, b, d) => (a.SuppName.ToLower().Contains(queryObj.SearchValue.ToLower()) |
| | |
| | | |
| | | return SQLHelper.ExecuteQuery(sql1); |
| | | } |
| | | public DataTable getBlmsItem(string id) |
| | | { |
| | | OracleSQLHelper SQLHelper = new(); |
| | | //查不良描述 |
| | | var sql1 = string.Format( |
| | | @"select FCHECK_ITEM,FUNIT from mes_qa_items_detect_detail5 f where RELEASE_NO='" + |
| | | id + "' and FUNIT is not null order by FCHECK_ITEM"); |
| | | |
| | | return SQLHelper.ExecuteQuery(sql1); |
| | | } |
| | | private decimal[] GetQaItem(SqlSugarClient db, string? user) |
| | | { |
| | | var itemsId = db.Queryable<MesItems>() |
| | |
| | | return SqlSugarHelper.UseTransactionWithOracle(db => |
| | | { |
| | | return db.Updateable<MesQaItemsDetectDetail5>() |
| | | // .SetColumns(it => |
| | | // it.Remarks == dto.Remarks) //SetColumns是可以叠加的 写2个就2个字段赋值 |
| | | .SetColumns(it => |
| | | it.Funit == dto.Remarks) //SetColumns是可以叠加的 写2个就2个字段赋值 |
| | | .Where(it => it.Id == dto.pid) |
| | | .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_ck where PID='" + id + "' group by ITEMNAME order by ITEMNAME"); |
| | | //查明细 |
| | | var sql2 = |
| | | string.Format(@"select * from MES_IQC_CONSISTENCY_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_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_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 888||min(id) id,ITEMNAME from MES_IQC_CONSISTENCY_CK where pid='" + id.ToString() + "' and ITEMNAME not in(select ITEMNAME from MES_IQC_CONSISTENCY_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_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_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; |
| | | } |
| | | /// <summary> |
| | | /// 料号图纸接口返回对象 |
| | | /// </summary> |