feat(钢卷调拨): 新增调拨类型列和改判功能
添加调拨类型列显示和钢卷改判功能,包括改判弹窗和重贴标签操作
This commit is contained in:
@@ -160,12 +160,12 @@
|
|||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
|
|
||||||
<el-table-column v-if="showGrade" label="质量状态" align="center" prop="qualityStatus">
|
<el-table-column v-if="showGrade" label="质量状态" align="center" prop="qualityStatus">
|
||||||
<template slot-scope="scope">
|
<!-- <template slot-scope="scope">
|
||||||
<el-select v-model="scope.row.qualityStatus" placeholder="请选择质量状态" @change="handleGradeChange(scope.row)">
|
<el-select v-model="scope.row.qualityStatus" placeholder="请选择质量状态" @change="handleGradeChange(scope.row)">
|
||||||
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :value="item.value"
|
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :value="item.value"
|
||||||
:label="item.label" />
|
:label="item.label" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template> -->
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="逻辑库位" align="center" prop="warehouseId" v-if="editWarehouse">
|
<el-table-column label="逻辑库位" align="center" prop="warehouseId" v-if="editWarehouse">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -175,6 +175,9 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" align="center" prop="remark" show-overflow-tooltip />
|
<el-table-column label="备注" align="center" prop="remark" show-overflow-tooltip />
|
||||||
|
|
||||||
|
<el-table-column v-if="hasTransferType" label="调拨类型" align="center" prop="transferType" />
|
||||||
|
|
||||||
<el-table-column label="钢卷去向" align="center" prop="nextWarehouseId" v-if="editNext" width="150">
|
<el-table-column label="钢卷去向" align="center" prop="nextWarehouseId" v-if="editNext" width="150">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-select v-model="scope.row.nextWarehouseId" placeholder="钢卷去向" filterable
|
<el-select v-model="scope.row.nextWarehouseId" placeholder="钢卷去向" filterable
|
||||||
@@ -313,6 +316,13 @@
|
|||||||
@click="handleRemoveFromWaybill(scope.row)">
|
@click="handleRemoveFromWaybill(scope.row)">
|
||||||
移出发货单
|
移出发货单
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button v-if="showGrade" size="mini" type="text" icon="el-icon-edit" @click="handleJudge(scope.row)">
|
||||||
|
改判
|
||||||
|
</el-button>
|
||||||
|
<el-button size="mini" v-if="hasTransferType" type="text" icon="el-icon-close"
|
||||||
|
@click="handleReplaceLabel(scope.row)">
|
||||||
|
重贴标签
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</KLPTable>
|
</KLPTable>
|
||||||
@@ -504,6 +514,70 @@
|
|||||||
<process-flow v-if="showProcessFlow" ref="processFlow"></process-flow>
|
<process-flow v-if="showProcessFlow" ref="processFlow"></process-flow>
|
||||||
</div>
|
</div>
|
||||||
</DragResizeBox>
|
</DragResizeBox>
|
||||||
|
|
||||||
|
<!-- 钢卷改判弹窗 -->
|
||||||
|
<el-dialog title="钢卷改判" :visible.sync="judgeDialogVisible" width="800px" append-to-body>
|
||||||
|
<el-descriptions :column="3" border>
|
||||||
|
<el-descriptions-item label="入场钢卷号">{{ judgeForm.enterCoilNo || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="当前钢卷号">{{ judgeForm.currentCoilNo || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="厂家原料卷号">{{ judgeForm.supplierCoilNo || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="逻辑库位">{{ judgeForm.warehouseName || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="实际库区">{{ judgeForm.actualWarehouseName || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="班组">{{ judgeForm.team || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="材料类型">{{ judgeForm.materialType || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="产品/原料">{{ judgeForm.itemName || '-' }}</el-descriptions-item>
|
||||||
|
|
||||||
|
<el-descriptions-item label="规格">{{ judgeForm.specification || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="材质">{{ judgeForm.material || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="厂家">{{ judgeForm.manufacturer || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="镀层质量">{{ judgeForm.zincLayer || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="表面处理">{{ judgeForm.surfaceTreatmentDesc || '-'
|
||||||
|
}}</el-descriptions-item>
|
||||||
|
|
||||||
|
|
||||||
|
<el-descriptions-item label="质量状态">{{ judgeForm.qualityStatus || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="切边要求">{{ judgeForm.trimmingRequirement || '-'
|
||||||
|
}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="原料材质">{{ judgeForm.packingStatus || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="包装要求">{{ judgeForm.packagingRequirement || '-'
|
||||||
|
}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="实测厚度(m)">{{ judgeForm.actualThickness || '-' }}
|
||||||
|
m</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="实测宽度(m)">{{ judgeForm.actualWidth || '-' }}
|
||||||
|
m</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="长度">{{ judgeForm.length || '-' }}
|
||||||
|
m</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="毛重">{{ judgeForm.grossWeight || '-' }} t</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="净重">{{ judgeForm.netWeight || '-' }} t</el-descriptions-item>
|
||||||
|
|
||||||
|
<el-descriptions-item label="生产开始时间">{{ judgeForm.productionStartTime || '-'
|
||||||
|
}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="生产结束时间">{{ judgeForm.productionEndTime || '-'
|
||||||
|
}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="调制度">{{ judgeForm.temperGrade || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="镀层种类">{{ judgeForm.coatingType || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="钢卷表面处理">{{ judgeForm.coilSurfaceTreatment || '-' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="备注" :span="2">{{ judgeForm.remark || '-' }}</el-descriptions-item>
|
||||||
|
</el-descriptions>
|
||||||
|
|
||||||
|
<div style="margin-top: 20px; padding: 15px; background-color: #f5f7fa; border-radius: 4px;">
|
||||||
|
<el-form :model="judgeForm" label-width="120px">
|
||||||
|
<el-form-item label="修改质量状态">
|
||||||
|
<el-select v-model="judgeForm.qualityStatus" placeholder="请选择质量状态" style="width: 200px">
|
||||||
|
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :value="item.value" :label="item.label" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="通知重贴标签">
|
||||||
|
<el-checkbox v-model="judgeForm.notifyReLabel">是否通知重贴标签</el-checkbox>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="judgeDialogVisible = false">取消</el-button>
|
||||||
|
<el-button :loading="buttonLoading" type="primary" @click="submitJudgeForm">确认</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -675,6 +749,10 @@ export default {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
|
hasTransferType: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -851,6 +929,22 @@ export default {
|
|||||||
shippedCount: 0,
|
shippedCount: 0,
|
||||||
unshippedCount: 0,
|
unshippedCount: 0,
|
||||||
statistics: {},
|
statistics: {},
|
||||||
|
// 钢卷改判弹窗
|
||||||
|
judgeDialogVisible: false,
|
||||||
|
judgeForm: {
|
||||||
|
coilId: undefined,
|
||||||
|
enterCoilNo: undefined,
|
||||||
|
currentCoilNo: undefined,
|
||||||
|
netWeight: undefined,
|
||||||
|
warehouseName: undefined,
|
||||||
|
actualWarehouseName: undefined,
|
||||||
|
qualityStatus: undefined,
|
||||||
|
itemName: undefined,
|
||||||
|
itemMaterial: undefined,
|
||||||
|
itemSpecification: undefined,
|
||||||
|
itemManufacturer: undefined,
|
||||||
|
notifyReLabel: false
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@@ -933,6 +1027,19 @@ export default {
|
|||||||
})
|
})
|
||||||
// 打开一个弹窗列出查询到的所有单据明细
|
// 打开一个弹窗列出查询到的所有单据明细
|
||||||
},
|
},
|
||||||
|
// 处理重贴标签
|
||||||
|
handleReplaceLabel(row) {
|
||||||
|
updateMaterialCoilSimple({
|
||||||
|
...row,
|
||||||
|
transferType: '',
|
||||||
|
}).then(res => {
|
||||||
|
this.$message({
|
||||||
|
message: '标签已重贴,记录移除',
|
||||||
|
type: 'success',
|
||||||
|
});
|
||||||
|
this.getList();
|
||||||
|
})
|
||||||
|
},
|
||||||
// 格式化毫秒值为xx天xx小时xx分钟
|
// 格式化毫秒值为xx天xx小时xx分钟
|
||||||
formatDuration(milliseconds) {
|
formatDuration(milliseconds) {
|
||||||
if (!milliseconds || milliseconds < 0) return '';
|
if (!milliseconds || milliseconds < 0) return '';
|
||||||
@@ -1413,6 +1520,39 @@ export default {
|
|||||||
this.buttonLoading = false;
|
this.buttonLoading = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
/** 改判按钮操作 */
|
||||||
|
handleJudge(row) {
|
||||||
|
// 填充改判表单数据
|
||||||
|
this.judgeForm = {
|
||||||
|
...row,
|
||||||
|
notifyReLabel: true
|
||||||
|
};
|
||||||
|
this.judgeDialogVisible = true;
|
||||||
|
},
|
||||||
|
/** 提交改判表单 */
|
||||||
|
submitJudgeForm() {
|
||||||
|
this.buttonLoading = true;
|
||||||
|
const submitData = {
|
||||||
|
...this.judgeForm,
|
||||||
|
// 如果通知重贴标签,则设置 transferType 为技术部改判
|
||||||
|
transferType: this.judgeForm.notifyReLabel ? '技术部改判' : null
|
||||||
|
};
|
||||||
|
updateMaterialCoilSimple(submitData).then(res => {
|
||||||
|
this.buttonLoading = false;
|
||||||
|
this.$message({
|
||||||
|
message: '改判成功',
|
||||||
|
type: 'success'
|
||||||
|
});
|
||||||
|
this.judgeDialogVisible = false;
|
||||||
|
this.getList();
|
||||||
|
}).catch(err => {
|
||||||
|
this.buttonLoading = false;
|
||||||
|
this.$message({
|
||||||
|
message: '改判失败',
|
||||||
|
type: 'error'
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
handleDelete(row) {
|
handleDelete(row) {
|
||||||
const coilIds = row.coilId || this.ids;
|
const coilIds = row.coilId || this.ids;
|
||||||
|
|||||||
27
klp-ui/src/views/wms/coil/views/base/tranfer.vue
Normal file
27
klp-ui/src/views/wms/coil/views/base/tranfer.vue
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<template>
|
||||||
|
<BasePage :qrcode="qrcode" :querys="querys" :hideWarehouseQuery="hideWarehouseQuery"
|
||||||
|
:hideType="hideType" :showControl="showControl" :hasTransferType="hasTransferType" />
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import BasePage from '../../panels/base.vue';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
BasePage
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
qrcode: false,
|
||||||
|
querys: {
|
||||||
|
hasTransferType: true,
|
||||||
|
// dataType: 1,
|
||||||
|
},
|
||||||
|
hideWarehouseQuery: true,
|
||||||
|
hasTransferType: true,
|
||||||
|
showControl: false,
|
||||||
|
hideType: false,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
Reference in New Issue
Block a user