feat(wms): 在排产管理中新增工序类型字段

- 在排产单表格中添加工序类型列显示
- 在编辑表单中增加工序类型输入字段
- 在合并表单中添加工序类型字段配置
- 在后端实体类SchProdScheduleItem中新增actionType属性
- 在业务对象SchProdScheduleItemBo中添加actionType字段
- 在查询条件中加入工序类型过滤功能
- 在视图对象SchProdScheduleItemVo中添加工序类型映射
- 更新表单初始化时工序类型数据的处理逻辑
This commit is contained in:
2026-06-30 09:16:52 +08:00
parent 70ade4632e
commit 4a9d811592
5 changed files with 44 additions and 16 deletions

View File

@@ -131,6 +131,10 @@ public class SchProdScheduleItem extends BaseEntity {
* 排产明细关联主表ID逗号分隔未合并存单值合并后存多个 * 排产明细关联主表ID逗号分隔未合并存单值合并后存多个
*/ */
private String scheduleDetailIds; private String scheduleDetailIds;
/**
* 工序类型
*/
private String actionType;
/** /**
* 规格 例1.0X1250 * 规格 例1.0X1250
*/ */

View File

@@ -158,6 +158,11 @@ public class SchProdScheduleItemBo extends BaseEntity {
*/ */
private String scheduleDetailIds; private String scheduleDetailIds;
/**
* 工序类型
*/
private String actionType;
/** /**
* 规格 例1.0X1250 * 规格 例1.0X1250
*/ */

View File

@@ -189,6 +189,12 @@ public class SchProdScheduleItemVo {
@ExcelProperty(value = "排产明细关联主表ID") @ExcelProperty(value = "排产明细关联主表ID")
private String scheduleDetailIds; private String scheduleDetailIds;
/**
* 工序类型
*/
@ExcelProperty(value = "工序类型")
private String actionType;
/** /**
* 规格 例1.0X1250 * 规格 例1.0X1250
*/ */

View File

@@ -108,6 +108,8 @@ public class SchProdScheduleItemServiceImpl implements ISchProdScheduleItemServi
lqw.eq(bo.getScheduleWeight() != null, SchProdScheduleItem::getScheduleWeight, bo.getScheduleWeight()); lqw.eq(bo.getScheduleWeight() != null, SchProdScheduleItem::getScheduleWeight, bo.getScheduleWeight());
lqw.eq(StringUtils.isNotBlank(bo.getProductItem()), SchProdScheduleItem::getProductItem, bo.getProductItem()); lqw.eq(StringUtils.isNotBlank(bo.getProductItem()), SchProdScheduleItem::getProductItem, bo.getProductItem());
lqw.eq(StringUtils.isNotBlank(bo.getRowRemark()), SchProdScheduleItem::getRowRemark, bo.getRowRemark()); lqw.eq(StringUtils.isNotBlank(bo.getRowRemark()), SchProdScheduleItem::getRowRemark, bo.getRowRemark());
// actionType
lqw.eq(StringUtils.isNotBlank(bo.getActionType()), SchProdScheduleItem::getActionType, bo.getActionType());
return lqw; return lqw;
} }

View File

@@ -205,6 +205,7 @@
<el-table-column type="selection" width="45" align="center" /> <el-table-column type="selection" width="45" align="center" />
<el-table-column label="排产单号" prop="scheduleNo" min-width="140" show-overflow-tooltip /> <el-table-column label="排产单号" prop="scheduleNo" min-width="140" show-overflow-tooltip />
<el-table-column label="生产日期" prop="prodDate" width="110" align="center" show-overflow-tooltip /> <el-table-column label="生产日期" prop="prodDate" width="110" align="center" show-overflow-tooltip />
<el-table-column label="工序类型" prop="actionType" width="100" align="center" show-overflow-tooltip />
<el-table-column label="排产状态" prop="scheduleStatus" width="90" align="center"> <el-table-column label="排产状态" prop="scheduleStatus" width="90" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span class="aps-status-tag" :class="'status-' + (scope.row.scheduleStatus || 1)">{{ statusMap[scope.row.scheduleStatus] || '未知' }}</span> <span class="aps-status-tag" :class="'status-' + (scope.row.scheduleStatus || 1)">{{ statusMap[scope.row.scheduleStatus] || '未知' }}</span>
@@ -302,12 +303,17 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="订货单位"> <el-form-item label="工序类型">
<el-input v-model="editForm.customerName" /> <el-input v-model="editForm.actionType" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="12">
<el-form-item label="订货单位">
<el-input v-model="editForm.customerName" />
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="规格" prop="spec"> <el-form-item label="规格" prop="spec">
<el-input v-model="editForm.spec" /> <el-input v-model="editForm.spec" />
@@ -355,18 +361,18 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<!-- <el-row :gutter="16">--> <!-- <el-row :gutter="16">-->
<!-- <el-col :span="12">--> <!-- <el-col :span="12">-->
<!-- <el-form-item label="关联销售合同号">--> <!-- <el-form-item label="关联销售合同号">-->
<!-- <el-input v-model="editForm.relContractNo" />--> <!-- <el-input v-model="editForm.relContractNo" />-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- </el-col>--> <!-- </el-col>-->
<!-- <el-col :span="12">--> <!-- <el-col :span="12">-->
<!-- <el-form-item label="订单日期">--> <!-- <el-form-item label="订单日期">-->
<!-- <el-date-picker v-model="editForm.orderDate" type="date" value-format="yyyy-MM-dd" style="width:100%" />--> <!-- <el-date-picker v-model="editForm.orderDate" type="date" value-format="yyyy-MM-dd" style="width:100%" />-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- </el-col>--> <!-- </el-col>-->
<!-- </el-row>--> <!-- </el-row>-->
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="交货期(天)"> <el-form-item label="交货期(天)">
@@ -506,10 +512,13 @@
<el-form-item label="排产单号"><el-input v-model="mergeForm.scheduleNo" /></el-form-item> <el-form-item label="排产单号"><el-input v-model="mergeForm.scheduleNo" /></el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="订货单位"><el-input v-model="mergeForm.customerName" /></el-form-item> <el-form-item label="工序类型"><el-input v-model="mergeForm.actionType" /></el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="16"> <el-row :gutter="16">
<el-col :span="12">
<el-form-item label="订货单位"><el-input v-model="mergeForm.customerName" /></el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="规格"><el-input v-model="mergeForm.spec" /></el-form-item> <el-form-item label="规格"><el-input v-model="mergeForm.spec" /></el-form-item>
</el-col> </el-col>
@@ -657,7 +666,7 @@ export default {
mergeTemplateIndex: 0, mergeTemplateIndex: 0,
mergeSourceRows: [], mergeSourceRows: [],
mergeForm: { mergeForm: {
itemCount: 0, scheduleNo: '', customerName: '', spec: '', material: '', itemCount: 0, scheduleNo: '', actionType: '', customerName: '', spec: '', material: '',
scheduleWeight: 0, productType: '', productItem: '', businessUser: '', scheduleWeight: 0, productType: '', productItem: '', businessUser: '',
businessPhone: '', deliveryCycle: undefined, usePurpose: '', businessPhone: '', deliveryCycle: undefined, usePurpose: '',
thicknessTolerance: '', widthTolerance: '', surfaceQuality: '', thicknessTolerance: '', widthTolerance: '', surfaceQuality: '',
@@ -700,6 +709,7 @@ export default {
return { return {
scheduleId: undefined, scheduleId: undefined,
scheduleNo: '', scheduleNo: '',
actionType: '',
prodDate: '', prodDate: '',
scheduleStatus: undefined, scheduleStatus: undefined,
totalPlanWeight: undefined, totalPlanWeight: undefined,
@@ -938,6 +948,7 @@ export default {
this.mergeForm = { this.mergeForm = {
itemCount: this.mergeSourceRows.length, itemCount: this.mergeSourceRows.length,
scheduleNo: row.scheduleNo || '', scheduleNo: row.scheduleNo || '',
actionType: row.actionType || '',
customerName: row.customerName || '', customerName: row.customerName || '',
spec: row.spec || '', spec: row.spec || '',
material: row.material || '', material: row.material || '',