添加物料编码字段并更新查询逻辑
- 添加多个二进制文件:`CodeChunks.db`、`CodeChunks.db-shm`、`CodeChunks.db-wal`、`SemanticSymbols.db`、`SemanticSymbols.db-shm` 和 `SemanticSymbols.db-wal`。
- 在 `Dt_BillGroupStock.jsx` 中新增 `materielCode` 字段的格式化逻辑。
- 在 `Dt_BillGroupStock.vue` 中移除 `出库时间` 字段,添加 `物料编码` 字段并调整 `库存类型` 字段宽度。
- 在 `StockInfoService.cs` 中新增对 `materielCode` 的查询条件,更新数据查询逻辑。
- 在 `Dt_TaskService.cs` 中移除对 `WIDESEA_Model.Models.Basic` 的引用。
| | |
| | | return row?.locationInfo?.roadwayNo |
| | | } |
| | | } |
| | | if (column.field == 'materielCode') { |
| | | column.formatter = (row) => { |
| | | // return '<span style="color: #2d8cf0;">' + row?.locationInfo?.roadwayNo + '</span>' |
| | | return row?.stockInfoDetails[0]?.materielCode |
| | | } |
| | | } |
| | | //格式化日期 |
| | | // 检查当前列的字段是否为 'locationStatus' |
| | | if (column.field == 'locationStatus') { |
| | |
| | | { "title": "库位号", "field": "locationCode", type: "text" }, |
| | | { "title": "巷道", "field": "roadwayNo", type: "text" }, |
| | | { "title": "货位状态", "field": "locationStatus", type: "select", dataKey: "LocationState", data: [] }, |
| | | { "title": "出库时间", "field": "outboundTime", type: "datetime"}, |
| | | { "title": "物料编码", "field": "materielCode", type: "text"}, |
| | | ] |
| | | ]); |
| | | const columns = ref( |
| | | [{ field: 'id', title: '库存ID', type: 'int', width: 110, hidden: true, readonly: true, require: true, align: 'left' }, |
| | | { field: 'locationCode', title: '库位', type: 'string', width: 100, align: 'left', }, |
| | | { field: 'palletCode', title: '托盘条码', type: 'string', width: 110, align: 'left', }, |
| | | { field: 'isFull', title: '库存类型', type: 'bool', width: 80, align: 'left', bind: { key: "isFull", data: [{ key: false, value: '空盘' }, { key: true, value: '实盘' }] }, }, |
| | | { field: 'isFull', title: '库存类型', type: 'bool', width: 60, align: 'left', bind: { key: "isFull", data: [{ key: false, value: '空盘' }, { key: true, value: '实盘' }] }, }, |
| | | { field: 'linedProcessFeedbackTime', title: '工艺开始时间', type: 'string', width: 110, align: 'left', }, |
| | | { field: 'roadwayNo', title: '巷道', type: 'string', width: 60, align: 'left', sort: true }, |
| | | { field: 'materielCode', title: '物料编码', type: 'string', width: 90, align: 'left', sort: true }, |
| | | { field: 'locationStatus', title: '货位状态', type: 'int', width: 60, align: 'left', bind: { key: "LocationState", data: [] } }, |
| | | { field: 'specialParameterDuration', title: '工艺时长', type: 'string', width: 60, align: 'left', sort: true }, |
| | | { field: 'outboundTime', title: '应出库时间', type: 'string', width: 110, align: 'left', sort: true }, |
| | |
| | | |
| | | Expression<Func<DtStockInfo, bool>> locationStatus = null; |
| | | Expression<Func<DtStockInfo, bool>> roadwayNo = null; |
| | | Expression<Func<DtStockInfo, bool>> materielCode = null; |
| | | foreach (var item in searchParametersList) |
| | | { |
| | | if (item.Name.Contains("locationStatus")) |
| | |
| | | { |
| | | roadwayNo = x => x.LocationInfo.RoadwayNo.Contains(item.Value); |
| | | } |
| | | else if (item.Name.Contains("materielCode")) |
| | | { |
| | | materielCode = x => x.StockInfoDetails.Any(d => d.MaterielCode.Contains(item.Value)); |
| | | } |
| | | } |
| | | |
| | | var data = BaseDal.Db.Queryable<DtStockInfo>().IncludesAllFirstLayer().WhereIF(!wheres.IsNullOrEmpty(), wheres).WhereIF(locationStatus != null, locationStatus).WhereIF(roadwayNo != null, roadwayNo).OrderBy(orderByModels).ToPageList(options.Page, options.Rows, ref totalCount); |
| | | //.IncludesAllFirstLayer() |
| | | var data = BaseDal.Db.Queryable<DtStockInfo>() |
| | | .Includes(x => x.StockInfoDetails) |
| | | .Includes(x => x.LocationInfo) |
| | | .WhereIF(!wheres.IsNullOrEmpty(), wheres) |
| | | .WhereIF(locationStatus != null, locationStatus) |
| | | .WhereIF(roadwayNo != null, roadwayNo) |
| | | .WhereIF(materielCode != null, materielCode) |
| | | .OrderBy(orderByModels) |
| | | .ToPageList(options.Page, options.Rows, ref totalCount); |
| | | new PageGridData<DtStockInfo>(totalCount, data); |
| | | return new PageGridData<DtStockInfo>(totalCount, data); |
| | | //var data = base.GetPageData(options); |
| | | //foreach (var item in data.Rows) |
| | | //{ |
| | | // if (item.IsFull) |
| | | // item.Remark = item.StockInfoDetails.Count().ToString(); |
| | | // else |
| | | // item.Remark = "0"; |
| | | //} |
| | | //return data; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | using WIDESEA_Core.Const; |
| | | using WIDESEA_DTO.MOM; |
| | | using WIDESEA_DTO.WMS; |
| | | using WIDESEA_Model.Models.Basic; |
| | | using WIDESEAWCS_Model.Models; |
| | | using WIDESEAWCS_QuartzJob.Models; |
| | | |