add:半成品入库功能

This commit is contained in:
zhangzhiqiang
2023-05-11 11:17:34 +08:00
parent c91a5f86e7
commit eb7d4a2b40
19 changed files with 470 additions and 212 deletions

View File

@@ -210,7 +210,7 @@ export default {
},
// 新增编辑给form表单物料相关信息赋值
setMaterValue(row) {
this.form.material_uuid = row.material_id
this.form.material_id = row.material_id
this.form.material_code = row.material_code
this.form.material_name = row.material_name
this.form.material_spec = row.material_spec

View File

@@ -43,6 +43,23 @@
/>
</el-select>
</el-form-item>
<el-form-item label="入库点" prop="point_code">
<label slot="label">入库点:</label>
<el-select
v-model="form.point_code"
clearable
class="filter-item"
style="width: 210px"
:disabled="crud.status.view > 0"
>
<el-option
v-for="item in storlist"
:key="item.stor_id"
:label="item.stor_name"
:value="item.stor_id"
/>
</el-select>
</el-form-item>
<el-form-item label="业务类型" prop="bill_type">
<el-select
v-model="form.bill_type"
@@ -131,10 +148,10 @@
<el-table-column show-overflow-tooltip prop="material_code" label="物料编码" />
<el-table-column show-overflow-tooltip prop="material_name" label="物料名称" />
<el-table-column show-overflow-tooltip prop="material_spec" label="物料规格" />
<el-table-column show-overflow-tooltip prop="pcsn" label="订单号">
<el-table-column show-overflow-tooltip prop="base_bill_code" label="订单号">
<template slot-scope="scope">
<el-input
v-model="form.tableData[scope.$index].pcsn"
v-model="form.tableData[scope.$index].base_bill_code"
clearable
:controls="false"
controls-position="right"
@@ -155,6 +172,29 @@
/>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip prop="unit_weight" label="单重">
<template slot-scope="scope">
<el-input-number
v-model="form.tableData[scope.$index].unit_weight"
size="small"
:controls="false"
controls-position="right"
precision="3"
:min="0"
/>
</template>
</el-table-column>
<el-table-column show-overflow-tooltip prop="storagevehicle_code" label="载具号">
<template slot-scope="scope">
<el-input
v-model="form.tableData[scope.$index].storagevehicle_code"
clearable
:controls="false"
controls-position="right"
size="small"
/>
</template>
</el-table-column>
<el-table-column v-if="crud.status.cu > 0" align="center" label="操作" width="170" fixed="right">
<template scope="scope">
<el-button
@@ -253,7 +293,7 @@ export default {
},
[CRUD.HOOK.afterToEdit]() {
// 获取入库单明细
crudsemiproductIn.getIODtl({ 'bill_code': this.form.bill_code }).then(res => {
crudsemiproductIn.getIODtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => {
this.form.tableData = res
// 将明细变成不可编辑
for (let i = 0; i < this.form.tableData.length; i++) {
@@ -264,7 +304,8 @@ export default {
},
[CRUD.HOOK.afterToView]() {
crudsemiproductIn.getIODtl({ 'bill_code': this.form.bill_code }).then(res => {
this.form.tableData = res
this.form.tableData = res.content
debugger
// 将明细变成不可编辑
for (let i = 0; i < this.form.tableData.length; i++) {
const row = this.form.tableData[i]
@@ -282,8 +323,21 @@ export default {
for (let i = 0; i < this.form.tableData.length; i++) {
const row = this.form.tableData[i]
if (!row.pcsn || !row.plan_qty) {
this.crud.notify('订单号、数量不能为空', CRUD.NOTIFICATION_TYPE.INFO)
debugger
if (!row.base_bill_code) {
this.crud.notify('订单号', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
if (!row.plan_qty) {
this.crud.notify('数量不能为空', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
if (!row.storagevehicle_code) {
this.crud.notify('载具不能为空', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
if (!row.unit_weight) {
this.crud.notify('单重不能为空', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
}

View File

@@ -15,7 +15,7 @@
</el-form-item>
<el-form-item label="生产车间">
<el-select
v-model="form.product_code"
v-model="form.product_area"
clearable
size="mini"
placeholder="全部"
@@ -91,7 +91,7 @@
</el-form-item>
</el-form>
<div class="crud-opts2">
<span class="role-span2">入库明细</span>
<span class="role-span2">入库作业明细</span>
</div>
<el-card class="box-card" shadow="never" :body-style="{padding:'0'}">
<!--表格渲染-->
@@ -104,43 +104,19 @@
border
:highlight-current-row="true"
:header-cell-style="{background:'#f5f7fa',color:'#606266'}"
@current-change="handleDtlCurrentChange"
>
<el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column min-width="120" show-overflow-tooltip prop="material_code" label="物料编码" align="center" />
<el-table-column min-width="120" show-overflow-tooltip prop="material_name" label="物料名称" align="center" />
<el-table-column min-width="120" show-overflow-tooltip prop="material_spec" label="物料规格" align="center" />
<el-table-column prop="pcsn" label="订单号" width="150" align="center" />
<el-table-column prop="plan_qty" :formatter="crud.formatNum3" label="量" align="center" />
<el-table-column prop="plan_qty" :formatter="crud.formatNum3" label="量" align="center" />
<el-table-column prop="qty_unit_name" label="单位" align="center" />
<el-table-column show-overflow-tooltip prop="remark" label="明细备注" align="center" />
</el-table>
</el-card>
<div class="crud-opts2">
<span class="role-span">作业明细</span>
</div>
<el-card class="box-card" shadow="never" :body-style="{padding:'0'}">
<!--表格渲染-->
<el-table
ref="table2"
:data="tabledis"
style="width: 100%;"
max-height="300"
size="mini"
border
:highlight-current-row="true"
:header-cell-style="{background:'#f5f7fa',color:'#606266'}"
@current-change="handleDisCurrentChange"
>
<el-table-column min-width="120" show-overflow-tooltip prop="material_code" label="物料编码" align="center" />
<el-table-column min-width="120" show-overflow-tooltip prop="material_name" label="物料名称" align="center" />
<el-table-column min-width="120" show-overflow-tooltip prop="material_spec" label="物料规格" align="center" />
<el-table-column prop="pcsn" label="订单号" align="center" width="150" />
<el-table-column prop="plan_qty" :formatter="crud.formatNum3" label="重量" align="center" />
<el-table-column prop="point_code1" label="起始位置" align="center" />
<el-table-column prop="point_code2" label="目的位置" align="center" />
<el-table-column prop="task_code" label="任务号" align="center" />
<el-table-column prop="task_type_name" label="任务类型" align="center" width="150px" />
<el-table-column prop="storagevehicle_code" label="载具号" align="center" />
<el-table-column prop="point_code" label="入库点" align="center" />
<el-table-column prop="struct_code" label="分配货位" align="center" />
<el-table-column prop="task_id" label="任务号" align="center" />
<el-table-column prop="work_status" label="任务状态" align="center" />
</el-table>
</el-card>
</el-dialog>

View File

@@ -139,7 +139,7 @@
size="mini"
@click="divOpen"
>
分配
下发执行
</el-button>
<el-button
slot="right"
@@ -173,7 +173,7 @@
</template>fileinput_name
</el-table-column>
<el-table-column show-overflow-tooltip :formatter="stateFormat" prop="bill_status" label="单据状态" />
<el-table-column prop="product_name" label="生产车间" width="130" show-overflow-tooltip />
<el-table-column prop="product_area" label="生产车间" width="130" show-overflow-tooltip />
<el-table-column show-overflow-tooltip prop="bill_type" min-width="120" label="业务类型" :formatter="bill_typeFormat" />
<el-table-column show-overflow-tooltip min-width="120" prop="biz_date" label="业务日期" />
<el-table-column label="明细数" align="center" prop="detail_count" />
@@ -276,7 +276,7 @@ export default {
return Number(val).toFixed(3)
},
canUd(row) {
return row.bill_status !== '10'
return row.bill_status == '1002'
},
handleSelectionChange(val, row) {
if (val.length > 1) {
@@ -301,7 +301,7 @@ export default {
} else {
this.dis_flag = true
}
if (currentRow.bill_status === '30') {
if (currentRow.bill_status === '1') {
this.confirm_flag = false
} else {
this.confirm_flag = true

View File

@@ -2,7 +2,7 @@ import request from '@/utils/request'
export function add(data) {
return request({
url: '/api/in/semiproductIn',
url: '/api/in/semiproductIn/create',
method: 'post',
data
})
@@ -10,16 +10,16 @@ export function add(data) {
export function del(ids) {
return request({
url: '/api/in/semiproductIn',
method: 'delete',
url: '/api/in/semiproductIn/delete',
method: 'post',
data: ids
})
}
export function edit(data) {
return request({
url: '/api/in/semiproductIn',
method: 'put',
url: '/api/in/semiproductIn/update',
method: 'post',
data
})
}