| | |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using Masuit.Tools; |
| | | using Microsoft.SqlServer.Server; |
| | | using NewPdaSqlServer.DB; |
| | | using NewPdaSqlServer.Dto.service; |
| | | using NewPdaSqlServer.entity; |
| | | using NewPdaSqlServer.entity.Base; |
| | | using SqlSugar; |
| | | |
| | | namespace NewPdaSqlServer.service.Wom; |
| | |
| | | |
| | | if (womdaa?.Daa001 == null) throw new Exception("工单号不存在"); |
| | | |
| | | var womdabs = Db.Queryable<Womdaa, Womdab, MesItems, Womcab>( |
| | | (a, b, c, d) => |
| | | new JoinQueryInfos( |
| | | JoinType.Left, |
| | | a.Guid == b.DaaGuid, |
| | | JoinType.Inner, |
| | | c.Id.ToString() == |
| | | b.Dab003, |
| | | JoinType.Inner, b.Erpid == d.Erpid |
| | | )) |
| | | .Where((a, b, c, d) => |
| | | a.Daa001 == query.daa001 && d.IssueType == "1") |
| | | .Select((a, b, c, d) => new Womdab |
| | | { |
| | | //Pid = b.Pid, |
| | | Dab003 = b.Dab003, |
| | | Dab006 = b.Dab006, |
| | | Dab007 = b.Dab007, |
| | | wNum = b.Dab006 - b.Dab007, // 计算字段 W_NUM |
| | | ItemName = c.ItemName, // 动态字段 ITEM_NAME |
| | | ItemNo = c.ItemNo // 动态字段 ITEM_NO |
| | | }) |
| | | .ToList(); |
| | | //var womdabs = Db.Queryable<Womdaa, Womdab, MesItems, Womcab>( |
| | | // (a, b, c, d) => |
| | | // new JoinQueryInfos( |
| | | // JoinType.Left, |
| | | // a.Guid == b.DaaGuid, |
| | | // JoinType.Inner, |
| | | // c.Id.ToString() == |
| | | // b.Dab003, |
| | | // JoinType.Inner, b.Erpid == d.Erpid |
| | | // )) |
| | | // .Where((a, b, c, d) => |
| | | // a.Daa001 == query.daa001 && d.Iss1ueType == "1") |
| | | // .Select((a, b, c, d) => new ItemDetailModel |
| | | // { |
| | | // ItemNo = c.ItemNo, |
| | | // ItemName = c.ItemName, |
| | | // ItemModel = c.ItemModel, |
| | | // FQty = b.Dab006, // 申请数量 |
| | | // SQty = b.Dab007, // 已扫数量 |
| | | // DSQty = b.Dab006 - b.Dab007, // 已扫数量 |
| | | // }) |
| | | // .ToList(); |
| | | |
| | | var list = womdabs.Where(s => s.wNum > 0).ToList(); |
| | | var sql =string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,b.dab006 FQty,b.dab007 SQty,b.dab006 - b.dab007 DSQty , |
| | | dbo.F_QX_GETRECODEPOTSE(B.dab003) as RecoKw |
| | | FROM WOMDAB B |
| | | LEFT JOIN WOMDAA A ON A.guid = B.daaGuid |
| | | LEFT JOIN MES_ITEMS C ON B.dab003 = C.item_id |
| | | LEFT JOIN WOMCAB D ON B.erpid = D.ERPID |
| | | WHERE daa001 = '{0}' AND ISSUE_TYPE = 1 ORDER BY DAB002", query.daa001); |
| | | |
| | | var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql); |
| | | |
| | | |
| | | var DS_list = womdabs.Where(s => s.DSQty > 0).ToList(); |
| | | |
| | | var YS_list = womdabs.Where(s => s.SQty > 0).ToList(); |
| | | |
| | | var mesInvItemOutCDetailsList = Db |
| | | .Queryable<MesInvItemOutCDetails, MesItems, MesDepots> |
| | |
| | | { |
| | | daa001 = womdaa.Daa001, |
| | | PlanNo = womcaa.Caa020, |
| | | totals = womdabs, |
| | | daisao = list, |
| | | yisao = mesInvItemOutCDetailsList |
| | | items = DS_list, |
| | | Ysitems = YS_list |
| | | // yisao = mesInvItemOutCDetailsList |
| | | }; |
| | | |
| | | return dto; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取工单条码信息 |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getZsBarInfo(dynamic query) |
| | | { |
| | | |
| | | var sql = string.Format(@"SELECT TOP 1 A.barCode AS zsBarcode, |
| | | D.name AS lineName, |
| | | D.line_no, |
| | | B.daa001, |
| | | C.item_no, |
| | | C.item_name, |
| | | C.item_model, |
| | | A.quantity as barQty, |
| | | B.daa008 as sumQty, |
| | | isnull((SELECT count(1) FROM WORK_COLLECT WHERE processNo = '{0}' AND ABOUT_GUID = A.ABOUT_GUID),0) AS finQty, |
| | | isnull((SELECT TOP 1 processNo FROM WORK_COLLECT WHERE WORK_COLLECT.barCode = '{1}' AND checkResult = '√' ORDER BY WORK_COLLECT.createDate DESC ),'') AS lastGx |
| | | FROM WORK_TRAC_CODE A |
| | | LEFT JOIN WOMDAA B ON A.ABOUT_GUID = B.guid |
| | | LEFT JOIN MES_ITEMS C ON B.daa002 = C.item_id |
| | | LEFT JOIN MES_WORKSHOP_LINE D ON A.lineId = D.id |
| | | WHERE A.barCode = '{1}'", query.GX, query.Zsbarcode); |
| | | |
| | | var ZsBarInfo = Db.Ado.SqlQuery<dynamic>(sql); |
| | | |
| | | if (ZsBarInfo.Count < 1) |
| | | { |
| | | throw new Exception($"该追溯码{query.Zsbarcode}不存在不存在"); |
| | | } |
| | | |
| | | return ZsBarInfo; |
| | | } |
| | | |
| | | //获取生产 |
| | | public dynamic getTraceability(dynamic query) |
| | | { |
| | | var sql = string.Format(@"SELECT processNo, A.barCode, B.lineId, line_no, name AS lineName, checkResult, C.USER_NAME |
| | | FROM WORK_COLLECT A |
| | | LEFT JOIN WORK_TRAC_CODE B ON A.barCode = B.barCode |
| | | LEFT JOIN SYS_USER C ON C.ACCOUNT = A.createBy |
| | | LEFT JOIN MES_WORKSHOP_LINE D ON B.lineId = D.id |
| | | WHERE A.barCode = '{0}'", query.Zsbarcode); |
| | | |
| | | var Traceability = Db.Ado.SqlQuery<dynamic>(sql); |
| | | |
| | | return Traceability; |
| | | } |
| | | } |