¶Ô±ÈÐÂÎļþ |
| | |
| | | using MES.Service.DB; |
| | | using MES.Service.Modes; |
| | | using SqlSugar; |
| | | |
| | | namespace MES.Service.service.QC; |
| | | |
| | | public class SuspendService |
| | | { |
| | | private readonly string[] statusArray = ["å¼å·¥", "å¾
å¼å·¥"]; |
| | | |
| | | public List<SysDepartment> getDept() |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | //return db.Queryable<SysDepartment>().ToList(); |
| | | return db |
| | | .Queryable<Womdaa, MesLine, QsQaItemXj, SysDepartment>( |
| | | (a, b, c, d) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.Daa002 == b.Id.ToString(), |
| | | JoinType.Inner, a.Daa001 == c.BillNo, |
| | | JoinType.Left, b.Departmentcode == d.Departmentcode)) |
| | | .Where((a, b, c, d) => b.LineName != null && |
| | | statusArray.Contains(a.Daa018)) |
| | | .GroupBy((a, b, c, d) => new |
| | | { |
| | | b.Departmentcode, d.Departmentname |
| | | }) |
| | | .Select((a, b, c, d) => new SysDepartment |
| | | { |
| | | Departmentcode = b.Departmentcode, |
| | | Departmentname = d.Departmentname |
| | | }).ToList(); |
| | | } |
| | | |
| | | public List<MesLine> GetLines(string deptCode) |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | var mesLines = db.Queryable<Womdaa, MesLine, QsQaItemXj>( |
| | | (a, b, c) => |
| | | new JoinQueryInfos(JoinType.Left, |
| | | a.Daa002 == b.Id.ToString(), |
| | | JoinType.Inner, a.Daa001 == c.BillNo)) |
| | | .Where((a, b, c) => b.LineName != null && |
| | | statusArray.Contains(a.Daa018) |
| | | && b.Departmentcode == deptCode) |
| | | .GroupBy((a, b, c) => new |
| | | { |
| | | b.LineNo, b.LineName |
| | | }) |
| | | .Select((a, b, c) => new MesLine |
| | | { |
| | | LineNo = b.LineNo, |
| | | LineName = b.LineName |
| | | }).ToList(); |
| | | |
| | | var mesQsSuspends = db.Queryable<MesQsSuspend>() |
| | | .Where(s => s.IsSuspend == 0).ToList(); |
| | | |
| | | return mesLines.Where(p => mesQsSuspends.All(e => e.LineNo != p.LineNo)) |
| | | .ToList(); |
| | | } |
| | | |
| | | public int save(MesQsSuspend entity) |
| | | { |
| | | entity.CreateDate = DateTime.Now; |
| | | return SqlSugarHelper.UseTransactionWithOracle(db => |
| | | db.Insertable(entity).ExecuteCommand()); |
| | | } |
| | | |
| | | public List<MesQsSuspend> getAllByDeptNo(string deptNo) |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | return db.Queryable<MesQsSuspend>() |
| | | .Where(a => a.DeptNo == deptNo && a.IsSuspend == 0).ToList(); |
| | | } |
| | | |
| | | public List<MesQsSuspend> getOpenDept() |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | return db.Queryable<MesQsSuspend>().GroupBy(a => new |
| | | { |
| | | a.DeptNo, |
| | | a.DeptName |
| | | }).Select<MesQsSuspend>(a => new MesQsSuspend |
| | | { |
| | | DeptNo = a.DeptNo, |
| | | DeptName = a.DeptName |
| | | }).ToList(); |
| | | } |
| | | |
| | | public List<MesQsSuspend> getOpenLine(string deptNo) |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | return db.Queryable<MesQsSuspend>() |
| | | .Where(a => a.DeptNo == deptNo && a.IsSuspend == 0) |
| | | .GroupBy(a => new |
| | | { |
| | | a.LineNo, |
| | | a.LineName |
| | | }).Select<MesQsSuspend>(a => new MesQsSuspend |
| | | { |
| | | LineNo = a.LineNo, |
| | | LineName = a.LineName |
| | | }).ToList(); |
| | | } |
| | | |
| | | public int UpdateById(MesQsSuspend entity) |
| | | { |
| | | return SqlSugarHelper.UseTransactionWithOracle(db => |
| | | { |
| | | return db.Updateable<MesQsSuspend>() |
| | | .SetColumns(a => a.IsSuspend == entity.IsSuspend) |
| | | .SetColumns(a => a.OpenDate == DateTime.Now) |
| | | .SetColumns(a => a.TimeDifference == entity.TimeDifference) |
| | | .Where(a => a.Id == entity.Id) |
| | | .ExecuteCommand(); |
| | | }); |
| | | } |
| | | } |