Files
klp-oa/klp-ui/src/views/wms/report/js/fetch.js
砂糖 a389a98664 feat(wms): 新增分条报表配置及功能优化
- 添加分条报表相关配置及视图组件
- 优化标签打印尺寸及布局
- 增加实测厚度字段及相关展示逻辑
- 重构报表数据获取逻辑,统一处理异常情况
- 完善分条操作表单,增加异常信息管理
2026-03-26 15:13:08 +08:00

81 lines
2.2 KiB
JavaScript

import { listCoilWithIds } from "@/api/wms/coil";
import {
listPendingAction,
} from '@/api/wms/pendingAction';
import { Message } from 'element-ui'
export async function fetchOutputList(queryParams) {
const resList = await Promise.all([
listCoilWithIds({
...queryParams,
selectType: 'raw_material',
itemType: 'raw_material',
pageSize: 99999,
pageNum: 1,
}),
listCoilWithIds({
...queryParams,
selectType: 'product',
itemType: 'product',
pageSize: 99999,
pageNum: 1,
}),
])
const list = resList.flatMap(res => res.rows)
// 按照createTime 降序排序
const sortedList = list.sort(
(a, b) => new Date(b.createTime) - new Date(a.createTime)
).map(item => {
// 计算宽度和厚度,将规格按照*分割,*前的是厚度,*后的是宽度
const [thickness, width] = item.specification?.split('*') || [0, 0]
return {
...item,
computedThickness: parseFloat(thickness),
computedWidth: parseFloat(width),
}
})
return sortedList
}
export async function fetchLossList(actionTypes, queryParams) {
const resultList = await Promise.all(actionTypes.map(actionType => {
return listPendingAction({
actionStatus: 2,
actionType,
createBy: queryParams.createBy,
startTime: queryParams.byCreateTimeStart,
endTime: queryParams.byCreateTimeEnd,
pageSize: 99999,
pageNum: 1,
})
}))
const actions = resultList.flatMap(item => item.rows)
const actionIds = actions.map(item => item.actionId).join(',')
console.log(actionIds)
if (!actionIds) {
Message({
message: '暂无数据',
type: 'warning',
})
return []
}
const res = await listCoilWithIds({
...queryParams,
byCreateTimeStart: undefined,
byCreateTimeEnd: undefined,
createBy: undefined,
actionIds: actionIds,
pageSize: 99999,
pageNum: 1,
})
const lossList = res.rows.map(item => {
// 计算宽度和厚度,将规格按照*分割,*前的是厚度,*后的是宽度
const [thickness, width] = item.specification?.split('*') || [0, 0]
return {
...item,
computedThickness: parseFloat(thickness),
computedWidth: parseFloat(width),
}
})
return lossList
}