From 5a3f8fe4c563f26c745e70a1fcc000af78744d14 Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期日, 01 九月 2024 14:17:39 +0800 Subject: [PATCH] qq --- MES.Service/service/WomdaaManager.cs | 75 +++++++++++++++++++++++++++++++------ 1 files changed, 63 insertions(+), 12 deletions(-) diff --git a/MES.Service/service/WomdaaManager.cs b/MES.Service/service/WomdaaManager.cs index 255556a..bab21e5 100644 --- a/MES.Service/service/WomdaaManager.cs +++ b/MES.Service/service/WomdaaManager.cs @@ -1,25 +1,76 @@ 锘縰sing MES.Service.DB; +using MES.Service.Dto.service; using MES.Service.Modes; +using SqlSugar; namespace MES.Service.service; public class WomdaaManager : Repository<Womdaa> { //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉� + //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomdaaManager.cs - public int TestUpdate(Womdaa womdaa) + //鑾峰彇宸ュ崟鍙� + public List<string> GetProductionPickDaa001(WarehouseQuery query) { - return UseTransaction(db => - { - return db.Updateable<Womdaa>() - .SetColumns(a => a.Daa001 == womdaa.Daa001) - .SetColumns(a => a.Daa002 == womdaa.Daa002) - .SetColumns(a => a.Daa003 == womdaa.Daa003) - .SetColumns(a => a.Daa004 == womdaa.Daa004) - .Where(a => a.Id == womdaa.Id) - .ExecuteCommand(); - }); + string sql = + "SELECT DAA001 FROM WOMDAA A LEFT JOIN (SELECT COUNT(1) UN_NUM, PID FROM WOMDAB WHERE DAB006 > DAB007 GROUP BY PID) B ON A.ID = B.PID WHERE DAA001 LIKE '%" + + query.daa001 + + "%' and DAA018 != '瀹屽伐' AND DAA022 = 1 AND UN_NUM > 0 AND ROWNUM <= 10 order by a.id desc"; + + return Db.Ado.SqlQuery<string>(sql); } - //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomdaaManager.cs + //鏍规嵁宸ュ崟鍙疯繑鍥炰骇鍝佸瀷鍙峰拰寰呴鐗╂枡 + public ProductionPickDto GetItemsByDaa001(WarehouseQuery query) + { + if (string.IsNullOrEmpty(query.daa001)) + { + throw new Exception("宸ュ崟鍙蜂负绌�"); + } + + var womdaa = Db.Queryable<Womdaa, MesItems>((a, i) => + new JoinQueryInfos(JoinType.Left, + a.Daa002 == i.ItemId.ToString())) + .Where((a, i) => a.Daa001 == query.daa001) + .Select((a, i) => new + { + i.ItemModel + }).First(); + + if (womdaa?.ItemModel == null) + { + throw new Exception("宸ュ崟鍙蜂笉瀛樺湪"); + } + + var dto = new ProductionPickDto + { + ItemModel = womdaa.ItemModel + }; + + var womdabs = Db.Queryable<Womdaa, Womdab, MesItems>((a, b, c) => + new JoinQueryInfos( + JoinType.Left, + a.Id == b.Pid, // LEFT JOIN WOMDAB B ON A.ID = B.PID + JoinType.Inner, + c.Id.ToString() == + b.Dab003 // INNER JOIN MES_ITEMS C ON C.ID = B.DAB003 + )) + .Where((a, b, c) => + a.Daa001 == query.daa001) // WHERE DAA001 = 'SCDD003681-1' + .Select((a, b, c) => 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(); + + dto.Womdabs = womdabs; + return dto; + } } \ No newline at end of file -- Gitblit v1.9.3