This commit is contained in:
parent
862dc4fdc7
commit
740ccd452e
|
|
@ -115,7 +115,7 @@ export default {
|
|||
items: [
|
||||
{ field: 'code', title: '编码', span: 12, itemRender: { name: '$input' } },
|
||||
{ field: 'name', title: '名称', span: 12, itemRender: { name: '$input' } },
|
||||
|
||||
/*
|
||||
{
|
||||
title: '分类', span: 12,
|
||||
field: 'mold_component_category',
|
||||
|
|
@ -135,7 +135,7 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
|
||||
*/
|
||||
]
|
||||
},
|
||||
// 新增模式表单项
|
||||
|
|
|
|||
|
|
@ -1,67 +1,80 @@
|
|||
<template>
|
||||
<div class="page-body">
|
||||
|
||||
<div class="approvedbg" v-if="pageStatus == 'approved'"></div>
|
||||
|
||||
<div class="voucher-toolbar">
|
||||
<div class="voucher-toolbar-left">
|
||||
|
||||
|
||||
|
||||
<a-button type="primary" @click="ok" :disabled="pageStatus == 'approved'">保存</a-button>
|
||||
<a-button @click="pageApproved" type="primary" :disabled="!this.getDataId() || pageStatus == 'approved'">审批
|
||||
</a-button>
|
||||
|
||||
<a-button @click="back">关闭</a-button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<vxe-form :data="formOptions.data" ref="xForm" :title-width="formOptions.titleWidth"
|
||||
:title-align="formOptions.titleAlign" :rules="formOptions.rules" :items="formOptions.items" titleColon>
|
||||
</vxe-form>
|
||||
|
||||
<a-tabs>
|
||||
<a-tab-pane key="1" tab="订单明细">
|
||||
<a-tab-pane key="1" tab="订单明细">
|
||||
|
||||
<vxe-table border show-overflow keep-source ref="xTable" :height="table1Height" :data="detailsData"
|
||||
@pulldownSelected="onPulldownSelected" @popupSelected="onPopupSelected" :export-config="{}"
|
||||
@edit-closed="afterEditEvent" @edit-actived="beforeEditEvent"
|
||||
:edit-config="{ trigger: 'click', mode: 'cell', icon: 'vxe-icon-edit', showStatus: false, beforeEditMethod: beforeEditMethod }">
|
||||
<vxe-column width="60">
|
||||
<template #default="{ row }">
|
||||
<div class="oplinks2">
|
||||
<a @click.stop="pageAdd(row)" title="新增">
|
||||
<a-icon class="icon" type="plus-circle" />
|
||||
</a>
|
||||
<a @click.stop="pageDelete(row)" title="删除">
|
||||
<a-icon class="icon" type="delete" />
|
||||
</a>
|
||||
</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="mold_scheme" title="模型" width="160" :params="editor_scheme" formatter="formatRef"
|
||||
:edit-render="{ name: 'MkGridDataSelector' }"></vxe-column>
|
||||
<vxe-column field="production_type" title="布产类型" width="160" :params="options_production_type" formatter = 'formatEnum'
|
||||
:edit-render="{ name: '$select',props:{options:options_production_type} }"></vxe-column>
|
||||
<vxe-table border show-overflow keep-source ref="xTable" :height="table1Height" :data="detailsData"
|
||||
@pulldownSelected="onPulldownSelected" @popupSelected="onPopupSelected" :export-config="{}"
|
||||
@edit-closed="afterEditEvent" @edit-actived="beforeEditEvent"
|
||||
:edit-config="{ trigger: 'click', mode: 'cell', icon: 'vxe-icon-edit', showStatus: false, beforeEditMethod: beforeEditMethod }">
|
||||
<vxe-column width="60" v-if="pageStatus != 'approved'">
|
||||
<template #default="{ row }">
|
||||
<div class="oplinks2">
|
||||
<a @click.stop="pageAdd(row)" title="新增">
|
||||
<a-icon class="icon" type="plus-circle" />
|
||||
</a>
|
||||
<a @click.stop="pageDelete(row)" title="删除">
|
||||
<a-icon class="icon" type="delete" />
|
||||
</a>
|
||||
</div>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="mold_scheme" title="模型" width="160" :params="editor_scheme" formatter="formatRef"
|
||||
:edit-render="{ name: 'MkGridDataSelector' }"></vxe-column>
|
||||
<vxe-column field="production_type" title="布产类型" width="160" :params="options_production_type"
|
||||
formatter='formatEnum'
|
||||
:edit-render="{ name: '$select', props: { options: options_production_type } }"></vxe-column>
|
||||
|
||||
<vxe-column field="mold_master_user_detail" title="师傅" width="160" :params="editor_staff" formatter="formatRef"
|
||||
:edit-render="{ name: 'MkGridDataSelector' }"></vxe-column>
|
||||
|
||||
<vxe-column field="manufacture_cycle" title="制作周期" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="draw_start_time" title="预计开始画图时间" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="split_design_time" title="分模设计时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="draw_time" title="出图时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="draw2D_time" title="出2D时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="draw3D_time" title="出3D时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="horizontal_frame_time" title="横架到厂日期预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
<vxe-column field="inlay_deep_hole_time" title="镶件深孔钻到厂日期预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input',props:{type:'date'} }"></vxe-column>
|
||||
</vxe-table>
|
||||
</a-tab-pane>
|
||||
<vxe-column field="mold_master_user_detail" title="师傅" width="160" :params="editor_staff" formatter="formatRef"
|
||||
:edit-render="{ name: 'MkGridDataSelector' }"></vxe-column>
|
||||
|
||||
</a-tabs>
|
||||
<vxe-column field="manufacture_cycle" title="制作周期" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="draw_start_time" title="预计开始画图时间" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="split_design_time" title="分模设计时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="draw_time" title="出图时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="draw2D_time" title="出2D时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="draw3D_time" title="出3D时间预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="horizontal_frame_time" title="横架到厂日期预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
<vxe-column field="inlay_deep_hole_time" title="镶件深孔钻到厂日期预计" width="160" formatter="formatDate"
|
||||
:edit-render="{ name: '$input', props: { type: 'date' } }"></vxe-column>
|
||||
</vxe-table>
|
||||
</a-tab-pane>
|
||||
|
||||
</a-tabs>
|
||||
|
||||
|
||||
<div class="mk-toolbar" v-if="isEdit">
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footerbar">
|
||||
<a-button type="primary" @click="ok">确定</a-button>
|
||||
<a-button @click="cancel">取消</a-button>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
|
@ -84,21 +97,23 @@ export default {
|
|||
},
|
||||
|
||||
data() {
|
||||
//收款状态 0未收款 1已收款
|
||||
//收款状态 0未收款 1已收款
|
||||
|
||||
const options_paid_status = [{ value: 0, label: '未收款' }, { value: 1, label: '已收款' }];
|
||||
|
||||
//let _this = this;
|
||||
// 页面数据变量
|
||||
var pageData = {
|
||||
|
||||
options_paid_status:options_paid_status,
|
||||
options_production_type:[{value:'1',label:'正常布产'},{value:'2',label:'委托布产'}],
|
||||
var pageData = {
|
||||
|
||||
options_paid_status: options_paid_status,
|
||||
options_production_type: [{ value: '1', label: '正常布产' }, { value: '2', label: '委托布产' }],
|
||||
// 当前项目名称
|
||||
currentConfigName: "",
|
||||
// 当前项目ID
|
||||
currentBeid: 0,
|
||||
|
||||
pageStatus: '',
|
||||
|
||||
uploadDefaultImg: null,
|
||||
detailDataFieldName: "mold_order",
|
||||
|
||||
|
|
@ -118,7 +133,7 @@ export default {
|
|||
warehouse_id: 0,
|
||||
version: '',
|
||||
is_default: 0,
|
||||
paid_status:0
|
||||
paid_status: 0
|
||||
},
|
||||
// 标题宽度
|
||||
titleWidth: 100,
|
||||
|
|
@ -137,28 +152,28 @@ export default {
|
|||
},
|
||||
// 表单项
|
||||
items: [
|
||||
{ field: 'code', title: '订单编码', span: 6, itemRender: { name: '$input' } },
|
||||
{ field: 'name', title: '客户名称', span: 6, itemRender: { name: '$input' } },
|
||||
{ field: 'contact', title: '联系人', span: 6, itemRender: { name: '$input' } },
|
||||
{ field: 'phone', title: '联系电话', span: 6, itemRender: { name: '$input' } },
|
||||
{ field: 'code', title: '订单编码', span: 6, itemRender: { name: '$input', props: { } } },
|
||||
{ field: 'name', title: '客户名称', span: 6, itemRender: { name: '$input', props: { } } },
|
||||
{ field: 'contact', title: '联系人', span: 6, itemRender: { name: '$input', props: { } } },
|
||||
{ field: 'phone', title: '联系电话', span: 6, itemRender: { name: '$input', props: { } } },
|
||||
|
||||
{ field: 'salesman', title: '业务员姓名', span: 6, itemRender: { name: '$input' } },
|
||||
{ field: 'contract_no', title: '合同号', span: 6, itemRender: { name: '$input' } },
|
||||
{ field: 'salesman', title: '业务员姓名', span: 6, itemRender: { name: '$input', props: { } } },
|
||||
{ field: 'contract_no', title: '合同号', span: 6, itemRender: { name: '$input' , props: { }} },
|
||||
{ field: 'contract_start_time', dataRule: { type: "timestamp" }, title: '合同开始日期', span: 6, itemRender: { name: '$input', props: { type: "date" } } },
|
||||
{ field: 'contract_end_time', dataRule: { type: "timestamp" }, title: '合同结束日期', span: 6, itemRender: { name: '$input', props: { type: "date" } } },
|
||||
|
||||
{ field: 'amount',dataRule: { type: 'number' }, title: '订单金额', span: 6, itemRender: { name: '$input',props:{type:'number'} } },
|
||||
{ field: 'paid_amount',dataRule: { type: 'number' }, title: '付款金额', span: 6, itemRender: { name: '$input',props:{type:'number'} } },
|
||||
{ field: 'paid_ratio', dataRule: { type: 'number' },title: '付款比例', span: 6, itemRender: { name: '$input',props:{type:'number'} } },
|
||||
|
||||
{ field: 'paid_status', dataRule: { type: 'integer' }, title: '付款状态', span: 6, itemRender: { name: '$select', props: { options: options_paid_status } } },
|
||||
{ field: 'amount', dataRule: { type: 'number' }, title: '订单金额', span: 6, itemRender: { name: '$input', props: { type: 'number' } } },
|
||||
{ field: 'paid_amount', dataRule: { type: 'number' }, title: '付款金额', span: 6, itemRender: { name: '$input', props: { type: 'number' } } },
|
||||
{ field: 'paid_ratio', dataRule: { type: 'number' }, title: '付款比例', span: 6, itemRender: { name: '$input', props: { type: 'number' } } },
|
||||
|
||||
{ field: 'paid_status', dataRule: { type: 'integer' }, title: '付款状态', span: 6, itemRender: { name: '$select', props: { options: options_paid_status } } },
|
||||
|
||||
|
||||
|
||||
|
||||
{ field: 'remark', title: '备注', span: 24, itemRender: { name: '$input', props: { } } },
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{ field: 'remark', title: '备注', span: 24, itemRender: { name: '$input' } },
|
||||
|
||||
|
||||
]
|
||||
},
|
||||
// 新增模式表单项
|
||||
|
|
@ -216,39 +231,7 @@ export default {
|
|||
created() {
|
||||
|
||||
|
||||
// 获取路由的id参数
|
||||
let dataId = this.getDataId();
|
||||
|
||||
// 如果有id参数,说明是编辑模式
|
||||
if (dataId) {
|
||||
this.$mk.post({
|
||||
url: this.actions.get,
|
||||
loading: "加载中...",
|
||||
data: { id: this.$mk.toBigInt(dataId) },
|
||||
useBigInt: true
|
||||
}).then(a => {
|
||||
|
||||
|
||||
this.formOptions.data = this.$mk.formatDetailData({ data: a.data[this.detailDataFieldName],rules:this.formOptions.items });
|
||||
console.log(this.formOptions.data)
|
||||
this.detailsData = JSON.parse(JSON.stringify(a.data[this.detailDataFieldName].order_molds || []));
|
||||
|
||||
this.detailsDataInit();
|
||||
|
||||
});
|
||||
|
||||
this.isEdit = true;
|
||||
|
||||
|
||||
} else {
|
||||
// 如果没有id参数,说明是新增模式
|
||||
this.addModeItems.forEach(item => {
|
||||
this.formOptions.items.push(item);
|
||||
})
|
||||
|
||||
this.detailsDataInit();
|
||||
}
|
||||
|
||||
this.pageInit();
|
||||
|
||||
|
||||
this.heightInit();
|
||||
|
|
@ -256,6 +239,59 @@ export default {
|
|||
},
|
||||
// 函数
|
||||
methods: {
|
||||
pageInit() {
|
||||
|
||||
// 获取路由的id参数
|
||||
let dataId = this.getDataId();
|
||||
|
||||
// 如果有id参数,说明是编辑模式
|
||||
if (dataId) {
|
||||
this.$mk.post({
|
||||
url: this.actions.get,
|
||||
loading: "加载中...",
|
||||
data: { id: this.$mk.toBigInt(dataId) },
|
||||
useBigInt: true
|
||||
}).then(a => {
|
||||
|
||||
|
||||
this.formOptions.data = this.$mk.formatDetailData({ data: a.data[this.detailDataFieldName], rules: this.formOptions.items });
|
||||
console.log(this.formOptions.data)
|
||||
this.detailsData = JSON.parse(JSON.stringify(a.data[this.detailDataFieldName].order_molds || []));
|
||||
if (a.data[this.detailDataFieldName].auditor_uid) {
|
||||
this.pageStatus = 'approved';
|
||||
}
|
||||
this.setPageReadonly(this.pageStatus == 'approved');
|
||||
this.detailsDataInit();
|
||||
|
||||
});
|
||||
|
||||
this.isEdit = true;
|
||||
|
||||
|
||||
} else {
|
||||
// 如果没有id参数,说明是新增模式
|
||||
this.addModeItems.forEach(item => {
|
||||
this.formOptions.items.push(item);
|
||||
})
|
||||
this.setPageReadonly(this.pageStatus == 'approved');
|
||||
this.detailsDataInit();
|
||||
}
|
||||
|
||||
|
||||
|
||||
},
|
||||
|
||||
setPageReadonly(readonly) {
|
||||
this.formOptions.items.forEach(item => {
|
||||
if (item.itemRender && item.itemRender.name == "$select") {
|
||||
item.itemRender.props.disabled = readonly;
|
||||
}
|
||||
if (item.itemRender && item.itemRender.props) {
|
||||
item.itemRender.props.readonly = readonly;
|
||||
}
|
||||
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
|
@ -264,6 +300,9 @@ export default {
|
|||
|
||||
this.$nextTick(() => {
|
||||
let h = this.$mk.getWindowSize().height - this.$mk.getOffsetTop(this.$refs.xTable.$el) - 300;
|
||||
if (h < 300) {
|
||||
h = 300;
|
||||
}
|
||||
|
||||
this.table1Height = h;
|
||||
});
|
||||
|
|
@ -313,7 +352,7 @@ export default {
|
|||
// 保存
|
||||
ok() {
|
||||
|
||||
|
||||
|
||||
|
||||
let save = () => {
|
||||
|
||||
|
|
@ -330,23 +369,23 @@ export default {
|
|||
list: this.detailsData,
|
||||
deletedList: this.deletedDetailsData,
|
||||
fieldName: 'order_id',
|
||||
dataRule:[
|
||||
{field:'id',type:'bigint'} ,
|
||||
{field:'production_type',type:'integer'},
|
||||
{field:'manufacture_cycle',type:'timestamp'},
|
||||
{field:'draw_start_time',type:'timestamp'},
|
||||
{field:'split_design_time',type:'timestamp'},
|
||||
{field:'draw_time',type:'timestamp'},
|
||||
{field:'draw2D_time',type:'timestamp'},
|
||||
{field:'draw3D_time',type:'timestamp'},
|
||||
{field:'horizontal_frame_time',type:'timestamp'},
|
||||
{field:'inlay_deep_hole_time',type:'timestamp'} ,
|
||||
{field:'update_uid',type:'bigint'} ,
|
||||
{field:'mold_id',type:'bigint'} ,
|
||||
{field:'mold_master_uid',type:'bigint'} ,
|
||||
dataRule: [
|
||||
{ field: 'id', type: 'bigint' },
|
||||
{ field: 'production_type', type: 'integer' },
|
||||
{ field: 'manufacture_cycle', type: 'timestamp' },
|
||||
{ field: 'draw_start_time', type: 'timestamp' },
|
||||
{ field: 'split_design_time', type: 'timestamp' },
|
||||
{ field: 'draw_time', type: 'timestamp' },
|
||||
{ field: 'draw2D_time', type: 'timestamp' },
|
||||
{ field: 'draw3D_time', type: 'timestamp' },
|
||||
{ field: 'horizontal_frame_time', type: 'timestamp' },
|
||||
{ field: 'inlay_deep_hole_time', type: 'timestamp' },
|
||||
{ field: 'update_uid', type: 'bigint' },
|
||||
{ field: 'mold_id', type: 'bigint' },
|
||||
{ field: 'mold_master_uid', type: 'bigint' },
|
||||
|
||||
|
||||
{field:'create_uid',type:'bigint'}
|
||||
|
||||
{ field: 'create_uid', type: 'bigint' }
|
||||
]
|
||||
});
|
||||
|
||||
|
|
@ -421,6 +460,9 @@ export default {
|
|||
this.detailsData.splice($table.getRowSeq(row) - 1, 1);
|
||||
},
|
||||
beforeEditMethod({ column, row }) {
|
||||
if (this.pageStatus == "approved") {
|
||||
return false;
|
||||
}
|
||||
console.log(column, row);
|
||||
return true;
|
||||
},
|
||||
|
|
@ -438,6 +480,35 @@ export default {
|
|||
console.log(rows, name, params);
|
||||
},
|
||||
|
||||
pageApproved() {
|
||||
let dataId = this.getDataId();
|
||||
if (!dataId) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
let sendApproved = () => {
|
||||
this.$mk.post({
|
||||
url: `${BASE_URL.BASE_URL}/MoldOrder/v1/mold/order/audit`,
|
||||
loading: '审批中...',
|
||||
data: {
|
||||
id: this.getDataId_BigInt()
|
||||
},
|
||||
useBigInt: true
|
||||
}).then(a => {
|
||||
if (a.code == "200") {
|
||||
this.$mk.success("审批成功");
|
||||
this.pageInit();
|
||||
}
|
||||
else {
|
||||
this.$mk.error(a.msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
sendApproved("");
|
||||
|
||||
},
|
||||
|
||||
},
|
||||
// 监听属性
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ export default {
|
|||
children: [
|
||||
{ field: 'code', title: '模型编码', span: 12, itemRender: { name: '$input' } },
|
||||
{ field: 'name', title: '模型名称', span: 12, itemRender: { name: '$input' } },
|
||||
|
||||
/*
|
||||
{
|
||||
title: '分类', span: 12,
|
||||
field: 'mold_scheme_category',
|
||||
|
|
@ -171,6 +171,8 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
*/
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue