fix:重新报工,按Sn号查询

This commit is contained in:
zhaoyf
2026-08-05 19:30:10 +08:00
parent d26fb24ccb
commit b7e0c2b771
5 changed files with 70 additions and 10 deletions

View File

@@ -122,6 +122,9 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
throw new BadRequestException("MES推送需求单失败需求单已存在"); throw new BadRequestException("MES推送需求单失败需求单已存在");
} }
for (PmDemandParam pmDemandParam : param) { for (PmDemandParam pmDemandParam : param) {
if (Objects.equals(pmDemandParam.getStatus(), "1")){
pmDemandParam.setStatus(DemandStatus.CANCEL.getValue());
}
this.create(pmDemandParam); this.create(pmDemandParam);
} }
} }
@@ -173,6 +176,9 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
if (demand == null) { if (demand == null) {
throw new BadRequestException("需求单不存在"); throw new BadRequestException("需求单不存在");
} }
if (Objects.equals(demand.getStatus(), DemandStatus.FINISH.getValue())){
throw new BadRequestException("单据已完成不允许分配");
}
demand.setInventory_dis(inventoryDis); demand.setInventory_dis(inventoryDis);
demand.setStatus(DemandStatus.DIS.getValue()); demand.setStatus(DemandStatus.DIS.getValue());
this.updateById(demand); this.updateById(demand);

View File

@@ -22,7 +22,6 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@@ -151,7 +150,8 @@ public class ReceiveOutReturnController {
} }
@PostMapping("/reSubmit") @PostMapping("/reSubmit")
public ResponseEntity reSubmit(HashSet<String> ids){ @Log("重新提交报工")
public ResponseEntity reSubmit(@RequestBody Set<String> ids){
receiveOutReturnService.reSubmit(ids); receiveOutReturnService.reSubmit(ids);
return ResponseData.build(); return ResponseData.build();
} }

View File

@@ -2,12 +2,16 @@ package org.nl.wms.warehouse_manage.stockReturn.receiveOutRetur.dto;
import lombok.Data; import lombok.Data;
import java.util.List;
@Data @Data
public class ReceiveOutReturnQuery { public class ReceiveOutReturnQuery {
private String billno; private String billno;
private String orgno; private String orgno;
private String sn;
private String status; private String status;
private String requestId; private String requestId;
private String beginTime; private String beginTime;
private String endTime; private String endTime;
private List<String> workArea;
} }

View File

@@ -109,6 +109,12 @@ public class ReceiveOutReturnServiceImpl extends ServiceImpl<ReceiveOutReturnMap
if (StringUtils.hasText(query.getStatus())) { if (StringUtils.hasText(query.getStatus())) {
wrapper.lambda().eq(ReceiveOutReturn::getStatus, query.getStatus()); wrapper.lambda().eq(ReceiveOutReturn::getStatus, query.getStatus());
} }
if (query.getWorkArea() != null && !query.getWorkArea().isEmpty()) {
wrapper.lambda().in(ReceiveOutReturn::getWorkArea, query.getWorkArea());
}
if (StringUtils.hasText(query.getSn())) {
wrapper.lambda().eq(ReceiveOutReturn::getSn, query.getSn());
}
if (StringUtils.hasText(query.getRequestId())) { if (StringUtils.hasText(query.getRequestId())) {
wrapper.lambda().like(ReceiveOutReturn::getRequestId, query.getRequestId()); wrapper.lambda().like(ReceiveOutReturn::getRequestId, query.getRequestId());
} }

View File

@@ -9,14 +9,26 @@
<el-form-item label="出入库单号"> <el-form-item label="出入库单号">
<el-input v-model="query.requestId" clearable @keyup.enter.native="crud.toQuery" /> <el-input v-model="query.requestId" clearable @keyup.enter.native="crud.toQuery" />
</el-form-item> </el-form-item>
<el-form-item label="产线">
<el-select
v-model="query.workArea"
placeholder="请选择产线"
style="width: 200px"
clearable
multiple
>
<el-option
v-for="item in dict.work_code"
:key="item.id"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="序列码"> <el-form-item label="序列码">
<el-input v-model="query.sn" clearable @keyup.enter.native="crud.toQuery" /> <el-input v-model="query.sn" clearable @keyup.enter.native="crud.toQuery" />
</el-form-item> </el-form-item>
<el-form-item label="机构编号">
<el-input v-model="query.orgno" clearable placeholder="请输入机构编号" @keyup.enter.native="crud.toQuery" />
</el-form-item>
<el-form-item label="回传状态"> <el-form-item label="回传状态">
<el-select v-model="query.status" clearable placeholder="全部" @change="crud.toQuery"> <el-select v-model="query.status" clearable placeholder="全部" @change="crud.toQuery">
<el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value" />
@@ -115,23 +127,35 @@
</el-dialog> </el-dialog>
<el-dialog :visible.sync="viewShow" title="倒扣回传详情" width="1300px" :close-on-click-modal="false"> <el-dialog :visible.sync="viewShow" title="倒扣回传详情" width="1300px" :close-on-click-modal="false">
<el-descriptions :column="2" border size="mini"> <el-descriptions
:column="2"
border
size="mini"
class="custom-descriptions"
>
<el-descriptions-item label="工单">{{ currentRow.billno }}</el-descriptions-item> <el-descriptions-item label="工单">{{ currentRow.billno }}</el-descriptions-item>
<el-descriptions-item label="序列码">{{ currentRow.sn }}</el-descriptions-item> <el-descriptions-item label="序列码">{{ currentRow.sn }}</el-descriptions-item>
<el-descriptions-item label="产线">{{ currentRow.workArea }}</el-descriptions-item> <el-descriptions-item label="产线">{{ currentRow.workArea }}</el-descriptions-item>
<el-descriptions-item label="跟踪号">{{ currentRow.trackNo }}</el-descriptions-item> <el-descriptions-item label="跟踪号">{{ currentRow.trackNo }}</el-descriptions-item>
<el-descriptions-item label="备注">{{ currentRow.comment }}</el-descriptions-item> <el-descriptions-item label="备注">{{ currentRow.comment }}</el-descriptions-item>
<el-descriptions-item label="回传状态">{{ statusLabel(currentRow.status) }}</el-descriptions-item> <el-descriptions-item label="回传状态">{{ statusLabel(currentRow.status) }}</el-descriptions-item>
<el-descriptions-item label="回传备注" :span="2">{{ currentRow.remark }}</el-descriptions-item>
<el-descriptions-item :span="2" label="回传备注">{{ currentRow.remark }}</el-descriptions-item>
<el-descriptions-item label="机构">{{ currentRow.orgno }}</el-descriptions-item> <el-descriptions-item label="机构">{{ currentRow.orgno }}</el-descriptions-item>
<el-descriptions-item label="业务">{{ currentRow.biztype }}</el-descriptions-item> <el-descriptions-item label="业务">{{ currentRow.biztype }}</el-descriptions-item>
<el-descriptions-item label="库存方案">{{ currentRow.invscheme }}</el-descriptions-item> <el-descriptions-item label="库存方案">{{ currentRow.invscheme }}</el-descriptions-item>
<el-descriptions-item label="交易类型">{{ currentRow.transtype }}</el-descriptions-item> <el-descriptions-item label="交易类型">{{ currentRow.transtype }}</el-descriptions-item>
<el-descriptions-item label="业务时间">{{ currentRow.biztime }}</el-descriptions-item> <el-descriptions-item label="业务时间">{{ currentRow.biztime }}</el-descriptions-item>
<el-descriptions-item label="创建时间">{{ currentRow.createTime }}</el-descriptions-item> <el-descriptions-item label="创建时间">{{ currentRow.createTime }}</el-descriptions-item>
<el-descriptions-item label="更新时间">{{ currentRow.updateTime }}</el-descriptions-item> <el-descriptions-item label="更新时间">{{ currentRow.updateTime }}</el-descriptions-item>
<el-descriptions-item label="出入库单号" :span="2">{{ currentRow.requestId }}</el-descriptions-item>
<el-descriptions-item label="报工参数" :span="2">{{ currentRow.reportParam }}</el-descriptions-item> <el-descriptions-item label="出入库单号">{{ currentRow.requestId }}</el-descriptions-item>
<el-descriptions-item :span="2" label="报工参数">{{ currentRow.reportParam }}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<div style="margin-top: 12px;"> <div style="margin-top: 12px;">
<el-button size="mini" type="warning" plain :disabled="!canBatchIgnore" @click="handleBatchIgnore"> <el-button size="mini" type="warning" plain :disabled="!canBatchIgnore" @click="handleBatchIgnore">
@@ -214,6 +238,7 @@ const createDefaultForm = () => ({
export default { export default {
name: 'ReceiveOutReturn', name: 'ReceiveOutReturn',
dicts: ['work_code'],
components: { crudOperation, rrOperation, udOperation, pagination }, components: { crudOperation, rrOperation, udOperation, pagination },
mixins: [presenter(), header(), form(createDefaultForm()), crud()], mixins: [presenter(), header(), form(createDefaultForm()), crud()],
cruds() { cruds() {
@@ -278,6 +303,7 @@ export default {
}, },
methods: { methods: {
[CRUD.HOOK.beforeRefresh]() { [CRUD.HOOK.beforeRefresh]() {
console.log(this.query.workArea)
if (this.query.dateRange) { if (this.query.dateRange) {
this.query.beginTime = this.query.dateRange[0] this.query.beginTime = this.query.dateRange[0]
this.query.endTime = this.query.dateRange[1] || this.query.dateRange[0] this.query.endTime = this.query.dateRange[1] || this.query.dateRange[0]
@@ -467,4 +493,22 @@ export default {
</script> </script>
<style scoped> <style scoped>
.custom-descriptions {
width: 100%;
}
.custom-descriptions >>> table {
width: 100%;
table-layout: fixed;
}
.custom-descriptions >>> .el-descriptions-item__label {
width: 100px;
white-space: nowrap;
}
.custom-descriptions >>> .el-descriptions-item__content {
width: calc(50% - 100px);
word-break: break-all;
}
</style> </style>