rev:根据实际排产场景,修改销售订单内容

This commit is contained in:
2023-07-17 16:29:29 +08:00
parent a020439a97
commit 4a0a36c091
18 changed files with 365 additions and 256 deletions

View File

@@ -82,7 +82,7 @@
>
导入
</el-button>
<el-button
<!-- <el-button
slot="right"
class="filter-item"
type="success"
@@ -91,7 +91,7 @@
@click="importin"
>
同步
</el-button>
</el-button> -->
</crudOperation>
<!--表单组件-->
<el-dialog
@@ -101,12 +101,16 @@
:title="crud.status.title"
width="1200px"
>
<el-form ref="form" :inline="true" :model="form" label-width="160px" style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;">
<el-form-item label="车间" prop="product_area"> <!-- unit_list-->
<el-select
v-model="form.product_area"
placeholder=""
>
<el-form
ref="form"
:inline="true"
:model="form"
label-width="160px"
style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;"
>
<el-form-item label="车间" prop="product_area">
<!-- unit_list-->
<el-select v-model="form.product_area" placeholder="">
<el-option
v-for="item in dict.product_area"
:key="item.value"
@@ -116,28 +120,17 @@
</el-select>
</el-form-item>
<el-form-item label="销售单号" prop="sale_code">
<el-input
v-model="form.sale_code"
style="width: 200px;"
/>
<el-input v-model="form.sale_code" style="width: 200px;" />
</el-form-item>
<el-form-item label="销售单明细" prop="seq_no">
<el-input
v-model="form.seq_no"
style="width: 200px;"
/>
<el-input v-model="form.seq_no" style="width: 200px;" />
</el-form-item>
<el-form-item label="订单数量" prop="sale_qty">
<el-input-number
v-model="form.sale_qty"
style="width: 200px;"
/>
<el-input-number v-model="form.sale_qty" style="width: 200px;" />
</el-form-item>
<el-form-item label="计量单位" prop="unit_name"> <!-- unit_list-->
<el-select
v-model="form.qty_unit_id"
placeholder=""
>
<el-form-item label="计量单位" prop="unit_name">
<!-- unit_list-->
<el-select v-model="form.qty_unit_id" placeholder="">
<el-option
v-for="item in unit_list"
:key="item.value"
@@ -147,16 +140,10 @@
</el-select>
</el-form-item>
<el-form-item label="物料编码" prop="material_code">
<el-input
v-model="form.material_code"
style="width: 200px;"
/>
<el-input v-model="form.material_code" style="width: 200px;" />
</el-form-item>
<el-form-item label="客户名称" prop="cust_name">
<el-select
v-model="form.cust_code"
placeholder=""
>
<el-select v-model="form.cust_code" placeholder="">
<el-option
v-for="item in customer_list"
:key="item.label"
@@ -174,10 +161,7 @@
/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input
v-model="form.remark"
style="width: 200px;"
/>
<el-input v-model="form.remark" style="width: 200px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -205,7 +189,7 @@
min-width="100"
show-overflow-tooltip
/>
<el-table-column prop="seq_no" label="明细序号" />
<!-- <el-table-column prop="seq_no" label="明细序号" /> -->
<el-table-column
prop="sale_type"
label="销售单类型"
@@ -216,29 +200,78 @@
{{ dict.label.PCS_SAL_TYPE[scope.row.sale_type] }}
</template>
</el-table-column>
<el-table-column prop="material_code" label="物料编码" />
<el-table-column prop="contract_code" label="合同号" :min-width="flexWidth('contract_code', crud.data, '合同号')" />
<el-table-column prop="material_code" label="物料编码" :min-width="flexWidth('material_code', crud.data, '物料编码')" />
<el-table-column
prop="material_spec"
label="物料规格"
:min-width="flexWidth('material_spec', crud.data, '物料规格')"
/>
<el-table-column
prop="material_name"
label="物料名称"
min-width="100"
:min-width="flexWidth('material_name', crud.data, '物料名称')"
show-overflow-tooltip
/>
<el-table-column prop="material_spec" label="物料规格" :min-width="flexWidth('material_spec',crud.data,'物料规格')" />
<el-table-column prop="product_area" label="工段">
<template slot-scope="scope">
{{ dict.label.product_area[scope.row.product_area] }}
</template>
</el-table-column>
<el-table-column prop="sale_qty" label="订单数量" />
<el-table-column
prop="qty_unit_name"
label="计量单位"
show-overflow-tooltip
min-width="80"
/>
<el-table-column prop="status" label="状态">
<template slot-scope="scope">
{{ dict.label.PCS_SALE_STATUS[scope.row.status] }}
</template>
</el-table-column>
<el-table-column prop="sale_qty" label="订单数量" />
<el-table-column prop="qty_unit_name" label="计量单位" show-overflow-tooltip min-width="150" />
<el-table-column prop="produce_seq" label="生产顺序" />
<el-table-column prop="cust_code" label="客户编码" :min-width="flexWidth('cust_code',crud.data,'客户编码')" />
<el-table-column prop="cust_name" label="客户名称" :min-width="flexWidth('cust_name',crud.data,'cust_name')" />
<el-table-column prop="plandeliver_date" label="计划交期" min-width="100" show-overflow-tooltip />
<el-table-column prop="remark" label="备注" show-overflow-tooltip min-width="200" />
<el-table-column
prop="plandeliverDate"
label="计划交期"
min-width="100"
show-overflow-tooltip
/>
<el-table-column
prop="early_start_time"
label="最早开始时间"
min-width="100"
show-overflow-tooltip
/>
<el-table-column prop="create_name" label="创建人" />
<el-table-column prop="create_time" label="创建时间" :min-width="flexWidth('create_time',crud.data,'创建时间')" />
<el-table-column prop="update_time" label="修改时间" :min-width="flexWidth('update_time',crud.data,'修改时间')" />
<el-table-column
prop="createTime"
label="创建时间"
:min-width="flexWidth('createTime', crud.data, '创建时间')"
/>
<el-table-column prop="create_mode" label="生成方式" min-width="100">
<template slot-scope="scope">
{{ dict.label.ST_CREATE_MODE[scope.row.create_mode] }}
</template>
</el-table-column>
<el-table-column
prop="remark"
label="备注"
show-overflow-tooltip
min-width="200"
/>
<!-- <el-table-column prop="update_time" label="修改时间" :min-width="flexWidth('update_time',crud.data,'修改时间')" /> -->
<!-- <el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
<el-table-column
prop="create_time"
@@ -264,7 +297,10 @@
<!--分页组件-->
<pagination />
</div>
<UploadDialog :dialog-show.sync="uploadShow" @tableChanged3="tableChanged3" />
<UploadDialog
:dialog-show.sync="uploadShow"
@tableChanged3="tableChanged3"
/>
<Dialog :dialog-show.sync="dialogShow" />
</div>
</template>
@@ -305,8 +341,15 @@ const defaultForm = {
}
export default {
name: 'SaleOrder',
dicts: ['PCS_SALE_STATUS', 'PCS_SAL_TYPE', 'IS_OR_NOT', 'product_area'],
components: { pagination, crudOperation, rrOperation, Treeselect, UploadDialog, Dialog },
dicts: ['PCS_SALE_STATUS', 'PCS_SAL_TYPE', 'IS_OR_NOT', 'product_area', 'ST_CREATE_MODE'],
components: {
pagination,
crudOperation,
rrOperation,
Treeselect,
UploadDialog,
Dialog
},
mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() {
return CRUD({
@@ -326,10 +369,8 @@ export default {
},
data() {
return {
unit_list: [
{value: 16, label: '个\\只'}
],
customer_list:[],
unit_list: [{ value: 16, label: '个\\只' }],
customer_list: [],
classes3: [],
uploadShow: false,
dialogShow: false,
@@ -344,7 +385,7 @@ export default {
[CRUD.HOOK.beforeToAdd]() {
customerbase.selectList().then(res => {
this.customer_list = res.content
})
})
},
queryClassId() {
const param = {

View File

@@ -290,13 +290,13 @@
<el-form-item v-if="false" label="物料标识" prop="material_id">
<el-input v-model="form.material_id" style="width: 200px;" />
</el-form-item>
<el-form-item label="物料编码" prop="materialCode">
<el-form-item label="物料编码" prop="material_code">
<el-input
v-model="form.materialCode"
v-model="form.material_code"
style="width: 200px;"
clearable
@focus="materialShow=true"
@clear="form.material_id='',form.materialCode='',form.material_name='',form.material_spec=''"
@clear="form.material_id='',form.material_code='',form.material_name='',form.material_spec=''"
/>
</el-form-item>
<el-form-item label="物料名称" prop="material_name">
@@ -360,14 +360,18 @@
</el-form-item>
<el-form-item label="是否搬运" prop="is_needmove">
<el-select
v-model="form.is_needmove" style="width: 200px" >
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value"/>
v-model="form.is_needmove"
style="width: 200px"
>
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="修改报工数" prop="is_canupdate_update">
<el-select
v-model="form.is_canupdate_update" style="width: 200px" >
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value"/>
v-model="form.is_canupdate_update"
style="width: 200px"
>
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="是否启用封箱线" prop="is_used_fxx">
@@ -381,14 +385,18 @@
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="拆箱机" prop="unboxing_device_code">
<el-select
v-model="form.package_ext.unboxing_device_code" style="width: 200px" >
<el-option v-for="item in cxj" :key="item.value" :label="item.label" :value="item.value"/>
v-model="form.package_ext.unboxing_device_code"
style="width: 200px"
>
<el-option v-for="item in cxj" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="装箱机" prop="ealing_device_code">
<el-select
v-model="form.package_ext.ealing_device_code" style="width: 200px" >
<el-option v-for="item in zxj" :key="item.value" :label="item.label" :value="item.value"/>
v-model="form.package_ext.ealing_device_code"
style="width: 200px"
>
<el-option v-for="item in zxj" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="是否翻转" prop="is_foreward">
@@ -402,8 +410,10 @@
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="封箱机自动确认" prop="auto_confirm">
<el-select
v-model="form.package_ext.auto_confirm" style="width: 200px" >
<el-option v-for="item in auto_confirm" :key="item.value" :label="item.label" :value="item.value"/>
v-model="form.package_ext.auto_confirm"
style="width: 200px"
>
<el-option v-for="item in auto_confirm" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="封箱机确认时间" prop="time">
@@ -418,21 +428,21 @@
v-model="form.package_ext.package_model"
style="width: 200px;"
clearable
/>
/>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="总箱数" prop="demol_num">
<el-input-number
v-model="form.package_ext.demol_num"
style="width: 200px;"
clearable
/>
/>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="总袋量" prop="order_bag_num">
<el-input-number
v-model="form.package_ext.order_bag_num"
style="width: 200px;"
clearable
/>
/>
</el-form-item>
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="每袋重量(g)" prop="one_bag_weight">
<el-input-number
@@ -446,7 +456,7 @@
v-model="form.package_ext.stack_model"
style="width: 200px;"
clearable
/>
/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -465,8 +475,8 @@
>
<el-table-column type="selection" width="55" />
<el-table-column v-if="false" prop="workorder_id" label="生产班次工单标识" />
<el-table-column prop="workorder_id" label="工单id" width="160px"></el-table-column>
<el-table-column prop="workorder_code" label="工单编号" width="100px" >
<el-table-column prop="workorder_id" label="工单id" width="160px" />
<el-table-column prop="workorder_code" label="工单编号" width="100px">
<template slot-scope="scope">
<el-link type="warning" @click="toView(scope.row)">{{ scope.row.workorder_code }}</el-link>
</template>
@@ -482,7 +492,7 @@
<el-table-column prop="outupperlimit_qty" label="满筐数量" />
<el-table-column prop="dq_real_qty" label="电气实时数" width="100" show-overflow-tooltip />
<el-table-column prop="real_qty" label="报工总数" />
<el-table-column prop="materialCode" label="物料编码" :min-width="flexWidth('materialCode',crud.data,'物料编码')" />
<el-table-column prop="material_code" label="物料编码" :min-width="flexWidth('material_code',crud.data,'物料编码')" />
<el-table-column prop="material_spec" label="物料规格" :min-width="flexWidth('material_spec',crud.data,'物料规格')" />
<el-table-column prop="device_code" label="当前设备编码" :min-width="flexWidth('device_code',crud.data,'当前设备编码')" />
<el-table-column
@@ -585,12 +595,11 @@ import crudClassstandard from '@/api/wms/basedata/master/classstandard'
import AddDialog from '@/views/wms/product_manage/workorder/AddDialog'
import UploadDialog from '@/views/wms/product_manage/workorder/UploadDialog'
import ReplaceDeviceDialog from '@/views/wms/product_manage/workorder/ReplaceDeviceDialog'
import {openStart} from "./produceshiftorder";
const defaultForm = {
workorder_id: null,
workorder_code: null,
shift_type_scode: "1",
shift_type_scode: '1',
workprocedure_id: null,
product_area: 'A1',
plan_qty: null,
@@ -598,7 +607,7 @@ const defaultForm = {
person_real_qty: null,
dq_real_qty: null,
material_id: null,
materialCode: null,
material_code: null,
material_weight: null,
material_name: null,
material_spec: null,
@@ -662,10 +671,10 @@ export default {
},
data() {
return {
zxj: [ { value: 'A1_ZXJ_1', label: '一线1号装箱机' }, { value: 'A1_ZXJ_2', label: '一线2号装箱机' }],
auto_confirm: [ { value: '1', label: '自动确认' }, { value: '2', label: '定时确认' }, { value: '3', label: '人工确认' }],
cxj: [ { value: 'A1_KXJ_1', label: '一线1号拆箱机' }, { value: 'A1_KXJ_1', label: '一线2号拆箱机' }],
trueorfalse: [ { value: true, label: '是' }, { value: false, label: '否' }],
zxj: [{ value: 'A1_ZXJ_1', label: '一线1号装箱机' }, { value: 'A1_ZXJ_2', label: '一线2号装箱机' }],
auto_confirm: [{ value: '1', label: '自动确认' }, { value: '2', label: '定时确认' }, { value: '3', label: '人工确认' }],
cxj: [{ value: 'A1_KXJ_1', label: '一线1号拆箱机' }, { value: 'A1_KXJ_1', label: '一线2号拆箱机' }],
trueorfalse: [{ value: true, label: '是' }, { value: false, label: '否' }],
deviceList: [],
classes3: [],
materType: '01',
@@ -693,7 +702,7 @@ export default {
plan_qty: [
{ required: true, message: '计划数量不能为空', trigger: 'blur' }
],
materialCode: [
material_code: [
{ required: true, message: '物料编码不能为空', trigger: 'change' }
],
order_status: [
@@ -893,10 +902,10 @@ export default {
},
is_disopen(rows) {
var length = rows.length
if (length === 1 ) {
if (rows[0].workorder_status==='2'){
if (length === 1) {
if (rows[0].workorder_status === '2') {
return false
}else {
} else {
return true
}
} else {
@@ -927,7 +936,7 @@ export default {
// 新增编辑给form表单物料相关信息赋值
setMaterValue(row) {
this.form.material_id = row.material_id
this.form.materialCode = row.material_code
this.form.material_code = row.material_code
this.form.material_name = row.material_name
this.form.material_spec = row.material_spec
},
@@ -981,15 +990,14 @@ export default {
[CRUD.HOOK.beforeToEdit]() {
console.log(this.form.package_ext)
console.log(this.form)
if (this.form.package_ext != undefined && this.form.package_ext != null && JSON.stringify(this.form.package_ext).length>3){
if (this.form.package_ext !== undefined && this.form.package_ext !== null && JSON.stringify(this.form.package_ext).length > 3) {
this.form.package_ext = JSON.parse(this.form.package_ext)
}
},
[CRUD.HOOK.beforeSubmit]() {
if (JSON.stringify(this.form.package_ext).length>3){
if (JSON.stringify(this.form.package_ext).length > 3) {
this.form.package_ext = JSON.stringify(this.form.package_ext)
}else {
} else {
this.form.package_ext = ''
}
}