feat(钢卷管理): 添加钢卷退货功能及相关界面

- 在coil.js中新增returnCoil接口用于处理钢卷退货
- 添加exit.vue作为退货钢卷管理页面
- 在base.vue中添加退货按钮及相关处理逻辑
- 新增仓库图标资源
- 调整报表页面日期选择器的时间格式
This commit is contained in:
砂糖
2026-02-28 13:59:52 +08:00
parent f6f1808a9b
commit 093d3ef2cb
5 changed files with 81 additions and 3 deletions

View File

@@ -305,3 +305,18 @@ export function cancelSpecialSplit(pendingActionId) {
})
}
/**
* 钢卷被退货,发给客户的钢卷被退货
*/
export function returnCoil(coilId) {
if (!coilId) {
return Promise.reject(new Error('coilId is required'))
}
return request({
url: '/wms/materialCoil/return',
method: 'post',
params: {
coilId
}
})
}

View File

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1772256771224" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5424" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M896 640h-42.666667v-89.6l-320-320L213.333333 550.4V810.666667h341.333334v42.666666H170.666667v-277.333333H128L533.333333 170.666667l405.333334 405.333333h-42.666667V640z m0 128v128h-128v-128h128z m-170.666667 0v128h-128v-128h128z m85.333334-170.666667v128h-128v-128h128z m-42.666667 42.666667h-42.666667v42.666667h42.666667v-42.666667z m-85.333333 170.666667h-42.666667v42.666666h42.666667v-42.666666z m170.666666 0h-42.666666v42.666666h42.666666v-42.666666z" fill="#444444" p-id="5425"></path></svg>

After

Width:  |  Height:  |  Size: 834 B

View File

@@ -173,6 +173,10 @@
<el-button size="mini" v-if="showExportTime" type="text" icon="el-icon-close"
@click="handleCancelExport(scope.row)">
撤回发货
</el-button>
<el-button size="mini" v-if="showExportTime" type="text" icon="el-icon-sold-out"
@click="handleReturnCoil(scope.row)">
退货钢卷
</el-button>
<el-button size="mini" v-if="showAbnormal" type="text" icon="el-icon-upload"
@click="handleAbnormal(scope.row)">查看异常</el-button>
@@ -325,7 +329,8 @@ import {
getMaterialCoilTrace,
exportCoil,
cancelExportCoil,
checkCoilNo
checkCoilNo,
returnCoil
} from "@/api/wms/coil";
import WarehouseSelect from "@/components/KLPService/WarehouseSelect";
import QRCode from "../../print/components/QRCode.vue";
@@ -943,6 +948,19 @@ export default {
}).catch(() => {
});
},
handleReturnCoil(row) {
this.$modal.confirm('是否确认退货钢卷编号为"' + row.currentCoilNo + '"的退货操作?').then(() => {
this.buttonLoading = true;
returnCoil(row.coilId).then(response => {
this.$modal.msgSuccess("退货成功");
this.getList();
}).catch(error => {
this.$modal.msgError("退货失败");
}).finally(() => {
this.buttonLoading = false;
});
})
},
handleExportTimeChange(row) {
if (row.exportTime) {
row.exportTime = row.exportTime.replace('T', ' ');

View File

@@ -0,0 +1,44 @@
<template>
<el-tabs class="app-container" v-model="activeTab">
<el-tab-pane label="待收卷" name="second">
<BasePage :qrcode="qrcode" :querys="querys2" :labelType="labelType" :hideWarehouseQuery="hideWarehouseQuery"
:hideType="hideType" />
</el-tab-pane>
<el-tab-pane label="已收卷" name="first">
<BasePage :qrcode="qrcode" :querys="querys" :labelType="labelType" :hideWarehouseQuery="hideWarehouseQuery"
:hideType="hideType" />
</el-tab-pane>
</el-tabs>
</template>
<script>
import BasePage from '../panels/base.vue';
export default {
components: {
BasePage
},
data() {
return {
qrcode: false,
activeTab: 'second',
querys: {
dataType: 1,
status: 0,
warehouseId: '2027614132626063361', // 退回仓逻辑库
// materialType: '废品'
},
querys2: {
dataType: 1,
status: 0,
nextWarehouseId: '2027614132626063361', // 退回仓逻辑库
// materialType: '废品'
},
hideWarehouseQuery: true,
showAbnormal: true,
labelType: '2',
hideType: false,
}
}
}
</script>

View File

@@ -4,11 +4,11 @@
<el-form label-width="80px" inline>
<el-form-item label="开始日期" prop="date">
<el-date-picker style="width: 200px;" v-model="queryParams.byCreateTimeStart" type="date"
value-format="yyyy-MM-dd" placeholder="选择日期"></el-date-picker>
value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="结束日期" prop="date">
<el-date-picker style="width: 200px;" v-model="queryParams.byCreateTimeEnd" type="date"
value-format="yyyy-MM-dd" placeholder="选择日期"></el-date-picker>
value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="班组" prop="team">
<el-select v-model="queryParams.team" placeholder="请选择班组" style="width: 200px;">