| | |
| | | } |
| | | |
| | | |
| | | public List<QsItemOqcReq> getPage(XJPageResult queryObj) |
| | | public (List<QsItemOqcReq> items, int TotalCount) GetPage(XJPageResult queryObj) |
| | | { |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | var totalCount = 0; |
| | | |
| | | return db |
| | | .Queryable<QsItemOqcReq, Womdaa, MesItems, MesInvItemIns, Womdab, |
| | | MesInvTransaction, RKJDaa001>( |
| | | (a, da, b, c, d, ca, m) => new JoinQueryInfos( |
| | | JoinType.Left, da.Daa001 == a.BillNo, |
| | | JoinType.Left, a.ItemId == b.Id, |
| | | JoinType.Left, a.BillNo == c.BillNo, |
| | | JoinType.Left, c.CbillNo == d.Dab001, |
| | | JoinType.Left, |
| | | c.TransctionNo == ca.TransactionNo.ToString() && |
| | | c.Company == ca.Company && c.Factory == ca.Factory, |
| | | JoinType.Left, c.Id == m.ItemInId && a.ItemNo == m.ItemNo |
| | | )) |
| | | .Select((a, da, b, c, d, ca, m) => new QsItemOqcReq |
| | | // 获取用户关联的线体编号 |
| | | string[] lineNo = null; |
| | | if (!string.IsNullOrEmpty(queryObj.createUser)) |
| | | { |
| | | BillNo = a.BillNo, |
| | | Remarks = a.Remarks, |
| | | lineNo = _baseService.getUserLineNo(queryObj.createUser); |
| | | } |
| | | |
| | | var query = db.Queryable<QsItemOqcReq, MesItems, Womdaa>((a, b, da) => |
| | | new JoinQueryInfos( |
| | | JoinType.Left, a.ItemNo == b.ItemNo, // 关联物料信息 |
| | | JoinType.Left, a.BillNo == da.Daa001 // 关联工单信息 |
| | | )) |
| | | // 用户线体过滤条件 |
| | | //.WhereIF(lineNo != null && lineNo.Length > 0 && !"PL017".Equals(queryObj.createUser), |
| | | // (a, b, da) => lineNo.Contains(da.Daa015)) |
| | | // ID精确查询 |
| | | .WhereIF(!string.IsNullOrEmpty(queryObj.id), |
| | | (a, b, da) => a.Id.ToString() == queryObj.id) |
| | | // 完成状态过滤 |
| | | .WhereIF("未完成".Equals(queryObj.result), (a, b, da) => a.FcheckResu == null) |
| | | .WhereIF(!"未完成".Equals(queryObj.result), (a, b, da) => a.FcheckResu != null) |
| | | // 搜索条件(物料名称/编号) |
| | | .WhereIF(!string.IsNullOrEmpty(queryObj.SearchValue), |
| | | (a, b, da) => b.ItemName.ToLower().Contains(queryObj.SearchValue.ToLower()) || |
| | | a.ItemNo.ToLower().Contains(queryObj.SearchValue.ToLower())) |
| | | // 查询字段 |
| | | .Select((a, b, da) => new QsItemOqcReq |
| | | { |
| | | Id = a.Id, |
| | | BillNo = a.BillNo, |
| | | ItemNo = a.ItemNo, |
| | | ItemName = b.ItemName, |
| | | ItemModel = b.ItemModel, |
| | | CreateDate = a.CreateDate, |
| | | CreateBy = a.CreateBy, |
| | | FcheckResu = a.FcheckResu, |
| | | ItemNo = a.ItemNo, |
| | | FcheckBy = a.FcheckBy, |
| | | FcheckDate = a.FcheckDate, |
| | | ReleaseNo = a.ReleaseNo, |
| | | // 添加其他字段 |
| | | // 如果在 QsItemOqcReq 中定义了额外字段,则需要将它们赋值 |
| | | // 例如: |
| | | ItemName = b.ItemName, |
| | | ItemModel = b.ItemModel, |
| | | TaskNo = c.TaskNo, |
| | | CbillNo = c.CbillNo, |
| | | Dab001 = d.Dab001, |
| | | Daa015 = da.Daa015, |
| | | LineNo = c.LineNo, |
| | | Quantity = m.Quantity |
| | | }).OrderBy(a => a.CreateDate, OrderByType.Desc) |
| | | .ToPageList(queryObj.PageIndex, queryObj.Limit); |
| | | Remarks = a.Remarks, |
| | | Daa015 = da.Daa015, // 工单线体 |
| | | Fsubmit = a.Fsubmit |
| | | }) |
| | | // 排序 |
| | | .OrderBy(a => a.CreateDate, OrderByType.Desc); |
| | | |
| | | // 分页查询 |
| | | var result = query.ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount); |
| | | |
| | | return (result, totalCount); |
| | | } |
| | | |
| | | //删除主表并且连级删除子表和孙表 |