|
@@ -47,7 +47,8 @@
|
|
|
<el-form ref="assetsForm" :model="assetsForm" :rules="assetsFormRules" :disabled="disabledStatus">
|
|
|
<div class="createMajor-main-container">
|
|
|
<div class="postInfo-container">
|
|
|
- <el-row v-if="canUpdateOrderBaseInfoNode.includes(currentNode.nodeCode)" class="row-style" style="margin-top: 20px; float: right; position: relative; z-index: 2;">
|
|
|
+ <el-row v-if="canUpdateOrderBaseInfoNode.includes(currentNode.nodeCode)" class="row-style"
|
|
|
+ style="margin-top: 20px; float: right; position: relative; z-index: 2;">
|
|
|
<el-col :xs="24" :sm="12" :lg="23" :span="12">
|
|
|
<el-button type="danger" @click="updateOrderBaseInfo()" round>更新基本信息</el-button>
|
|
|
</el-col>
|
|
@@ -719,8 +720,8 @@
|
|
|
</el-form>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="id" label="id" width="120" align="center">
|
|
|
- </el-table-column>
|
|
|
+ <!-- <el-table-column prop="id" label="id" width="120" align="center">
|
|
|
+ </el-table-column> -->
|
|
|
<el-table-column prop="productionNo" label="产品号" align="center" show-overflow-tooltip>
|
|
|
<template slot-scope="{row}">
|
|
|
<el-tag type="success"><span>{{ row.productionNo }}</span></el-tag>
|
|
@@ -901,7 +902,8 @@
|
|
|
</el-row>
|
|
|
<el-row class="row-style">
|
|
|
<el-col :xs="24" :sm="12" :lg="12" :span="6"">
|
|
|
- <el-form-item label=" 产权持有人:" prop="theHolder" label-width="200px" class="postInfo-container-item">
|
|
|
+ <el-form-item label=" 产权持有人:" prop="theHolder" label-width="200px"
|
|
|
+ class="postInfo-container-item">
|
|
|
<el-input v-model="targetForm.theHolder" class="filter-item" style="width: 100%" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -1083,7 +1085,8 @@
|
|
|
</el-form>
|
|
|
</el-dialog>
|
|
|
|
|
|
- <el-dialog :visible.sync="productionWriteDialogVisible" @open="clearassetsProductionFormValidate()" @close="resetProductionForm()">
|
|
|
+ <el-dialog :visible.sync="productionWriteDialogVisible" @open="clearassetsProductionFormValidate()"
|
|
|
+ @close="resetProductionForm()">
|
|
|
<el-form ref="assetsProductionForm" :model="assetsProductionForm" :rules="assetsProductionFormRules"
|
|
|
:disabled="productionDisabledStatus">
|
|
|
<div class="createMajor-main-container">
|
|
@@ -1244,24 +1247,24 @@
|
|
|
<div class="createMajor-main-container">
|
|
|
<div class="postInfo-container">
|
|
|
<el-row>
|
|
|
- <el-col :xs="12" :sm="12" :lg="12" :span="12">
|
|
|
- <el-form-item label="评估方法:" prop="evaluationMethodId" label-width="120px" class="postInfo-container-item">
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
+ <el-form-item label="评估方法:" prop="evaluationMethodId" label-width="190px" class="postInfo-container-item">
|
|
|
<el-select v-model="targetForm.evaluationMethodId" multiple style="width: 100%;">
|
|
|
<el-option v-for="(m, id) in assetsEvaluationMethod" :label="m.methodName" :value="m.id"
|
|
|
:key="m.id"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :xs="12" :sm="12" :lg="12" :span="12" v-if="targetForm.evaluationMethodId.includes(7)">
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6" v-if="targetForm.evaluationMethodId.includes(7)">
|
|
|
<el-form-item prop="definedEvaluationMethod" label-width="20px" class="postInfo-container-item">
|
|
|
<el-input v-model="targetForm.definedEvaluationMethod" multiple style="width: 50%;">
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <el-row class="row-style">
|
|
|
- <el-col :xs="12" :sm="12" :lg="12" :span="12">
|
|
|
- <el-form-item label="最终选择的评估方法:" prop="choiceEvaluationMethodId" label-width="200px"
|
|
|
+ <el-row>
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
+ <el-form-item label="最终选择的评估方法:" prop="choiceEvaluationMethodId" label-width="190px"
|
|
|
class="postInfo-container-item">
|
|
|
<el-select v-model="targetForm.choiceEvaluationMethodId" multiple style="width: 100%;">
|
|
|
<el-option v-for="(m, id) in assetsEvaluationMethod" :label="m.methodName" :value="m.id"
|
|
@@ -1269,7 +1272,7 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :xs="12" :sm="12" :lg="12" :span="12" v-if="targetForm.choiceEvaluationMethodId.includes(7)">
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6" v-if="targetForm.choiceEvaluationMethodId.includes(7)">
|
|
|
<el-form-item prop="choiceDefinedEvaluationMethod" label-width="20px" class="postInfo-container-item">
|
|
|
<el-input v-model="targetForm.choiceDefinedEvaluationMethod" multiple style="width: 50%;">
|
|
|
</el-input>
|
|
@@ -1278,7 +1281,7 @@
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col>
|
|
|
- <el-form-item label="审核价格:" prop="checkValue" label-width="140px" class="postInfo-container-item">
|
|
|
+ <el-form-item label="审核价格:" prop="checkValue" label-width="190px" class="postInfo-container-item">
|
|
|
<el-input-number v-model="targetForm.checkValue" controls-position="right" :precision="2" :step="0.1"
|
|
|
:min="0"></el-input-number>
|
|
|
<span>(万)</span>
|
|
@@ -1450,6 +1453,7 @@
|
|
|
import YDetailPageLayout from '@/components/YDetailPageLayout/index_detail'
|
|
|
import WorkflowBoard from '@/components/workflowBoard'
|
|
|
import ScanEntry from '@/components/ScanEntry'
|
|
|
+import { isNumber, phoneNumber, postiveInteger, isIdNumber } from '@/utils/validate'
|
|
|
|
|
|
export default {
|
|
|
name: 'AssetsOrderDetail',
|
|
@@ -1487,9 +1491,6 @@ export default {
|
|
|
fileList: [],
|
|
|
// 资产业务下单表单校验规则
|
|
|
assetsFormRules: {
|
|
|
- clientManager: [
|
|
|
- { required: true, message: '客户经理不能为空', trigger: 'blur' }
|
|
|
- ],
|
|
|
departmentId: [
|
|
|
{ required: true, message: '请选择接单部门', trigger: 'change' }
|
|
|
],
|
|
@@ -1537,6 +1538,9 @@ export default {
|
|
|
],
|
|
|
terminalClienteleContactId: [
|
|
|
{ required: true, message: '终端联系人不能为空', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ bailorContactTel: [
|
|
|
+ { required: false, validator: phoneNumber, trigger: 'blur' }
|
|
|
]
|
|
|
},
|
|
|
workflowLogs: [],
|
|
@@ -1948,10 +1952,10 @@ export default {
|
|
|
]
|
|
|
},
|
|
|
showDistributionButton: null,
|
|
|
- canUpdateOrderBaseInfoNode:[
|
|
|
- 'DEPARTMENT_ALLOCATION','SPOT_RECONNAISSANCE_DETERMINE_PRICE','QUOTATION_FEEDBACK',
|
|
|
- 'PRODUCT_CHOICE','GENERATE_STATEMENT','REVIEW_STATEMENT','REEXAMINE_STATEMENT',
|
|
|
- 'WRITE_REPORT','CHECK_REPORT','RECHECK_REPORT','FOURTH_CHECK_REPORT'
|
|
|
+ canUpdateOrderBaseInfoNode: [
|
|
|
+ 'DEPARTMENT_ALLOCATION', 'SPOT_RECONNAISSANCE_DETERMINE_PRICE', 'QUOTATION_FEEDBACK',
|
|
|
+ 'PRODUCT_CHOICE', 'GENERATE_STATEMENT', 'REVIEW_STATEMENT', 'REEXAMINE_STATEMENT',
|
|
|
+ 'WRITE_REPORT', 'CHECK_REPORT', 'RECHECK_REPORT', 'FOURTH_CHECK_REPORT'
|
|
|
]
|
|
|
}
|
|
|
},
|
|
@@ -1959,31 +1963,26 @@ export default {
|
|
|
|
|
|
},
|
|
|
created() {
|
|
|
- this.disabledStatus = this.$route.query.disabledStatus === 'true';
|
|
|
- this.couldEdit = this.$route.query.couldEdit === 'true';
|
|
|
- this.couldBack = this.$route.query.couldBack === 'true';
|
|
|
- if (this.$route.query.activeTabName !== null && this.$route.query.activeTabName !== undefined) {
|
|
|
- this.activeTabName = this.$route.query.activeTabName;
|
|
|
- }
|
|
|
- this.nodeBusinessInfo.doWorkflow = true;
|
|
|
// 获取页面参数
|
|
|
this.pageParams.back = this.$route.query.back;
|
|
|
this.pageParams.row = JSON.parse(this.$route.query.row);
|
|
|
- this.getProductionTypes(this.pageParams.row.assetsId);
|
|
|
+ this.nodeBusinessInfo.doWorkflow = true;
|
|
|
this.nodeBusinessInfo.mainBusiness = 'ASSET_BUSINESS';
|
|
|
this.nodeBusinessInfo.businessId = this.pageParams.row.assetsId;
|
|
|
this.nodeBusinessInfo.businessSubId = this.pageParams.row.statementNo;
|
|
|
this.nodeBusinessInfo.businessMinId = this.pageParams.row.reportNo;
|
|
|
+ this.nodeBusinessInfo.reportNos.push(this.pageParams.row.statementNo);
|
|
|
+ this.disabledStatus = this.$route.query.disabledStatus === 'true';
|
|
|
+ this.couldEdit = this.$route.query.couldEdit === 'true';
|
|
|
+ this.couldBack = this.$route.query.couldBack === 'true';
|
|
|
+ if (this.$route.query.activeTabName !== null && this.$route.query.activeTabName !== undefined) {
|
|
|
+ this.activeTabName = this.$route.query.activeTabName;
|
|
|
+ }
|
|
|
this.getCurrentNodeInfo();
|
|
|
this.getAllotDepartment();
|
|
|
- // this.getCustomerCompany(0);
|
|
|
- // this.getCustomerCompany(1);
|
|
|
- // this.getCustomerContract(0);
|
|
|
- // this.getCustomerContract(1);
|
|
|
+ this.getProductionTypes(this.pageParams.row.assetsId);
|
|
|
this.getAssetsDetailById(this.pageParams.row.assetsId);
|
|
|
- // this.getProductionByBusinessId(this.pageParams.row.assetsId);
|
|
|
this.getAETargetListByAssetsId();
|
|
|
- this.nodeBusinessInfo.reportNos.push(this.pageParams.row.statementNo);
|
|
|
},
|
|
|
methods: {
|
|
|
// 根据业务id获取资产业务详情
|
|
@@ -2102,28 +2101,6 @@ export default {
|
|
|
}
|
|
|
callback(verify);
|
|
|
}
|
|
|
- let specialNodesForReverse = ["GENERATE_STATEMENT", "WRITE_REPORT", "WRITE_LETTER"];
|
|
|
- if (commit.state === 'REVERSE' && specialNodesForReverse.includes(this.currentNode.nodeCode)) {
|
|
|
- this.$refs.board.getPreviousNode();
|
|
|
- let reportNos = this.assetsEvaluationTarget.map(item => item.reportNo);
|
|
|
- //取了子号不能退回节点
|
|
|
- if (this.pNode.nodeCode === "QUOTATION_FEEDBACK" && reportNos[0].includes("-")) {
|
|
|
- this.$notify({
|
|
|
- title: '提示',
|
|
|
- message: '该订单已取了其他子号,不能退回节点。',
|
|
|
- type: 'info',
|
|
|
- duration: 3000
|
|
|
- });
|
|
|
- verify.state = false;
|
|
|
- verify.cleanReport = false;
|
|
|
- callback(verify);
|
|
|
- }
|
|
|
- if (this.pNode.nodeCode === "QUOTATION_FEEDBACK" && !reportNos[0].includes("-")) {
|
|
|
- verify.cleanReport = true;
|
|
|
- callback(verify);
|
|
|
- }
|
|
|
- callback(verify);
|
|
|
- }
|
|
|
},
|
|
|
goBack() {
|
|
|
const back = this.$route.query.back
|
|
@@ -3519,38 +3496,42 @@ export default {
|
|
|
},
|
|
|
// 更新资产订单基本信息
|
|
|
updateOrderBaseInfo() {
|
|
|
- this.$confirm('是否确定要修改订单基本信息?', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning'
|
|
|
- }).then(() => {
|
|
|
- if (this.assetsForm.members) {
|
|
|
- this.assetsForm.members = JSON.stringify(this.assetsForm.members);
|
|
|
- }
|
|
|
- this.$api.assets.updateOrderBaseInfo(this.assetsForm).then(res => {
|
|
|
- if (res.code === 200 && res.data) {
|
|
|
- this.$notify({
|
|
|
- title: '成功',
|
|
|
- message: '订单基本信息更新成功!',
|
|
|
- type: 'success',
|
|
|
- duration: 3000
|
|
|
- });
|
|
|
- this.getAssetsDetailById(this.pageParams.row.assetsId);
|
|
|
- } else {
|
|
|
- this.$notify({
|
|
|
- title: '失败',
|
|
|
- message: '订单基本信息更新失败!请稍后重试!',
|
|
|
- type: 'warning',
|
|
|
- duration: 3000
|
|
|
+ this.$refs.assetsForm.validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ this.$confirm('是否确定要修改订单基本信息?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+ if (this.assetsForm.members) {
|
|
|
+ this.assetsForm.members = JSON.stringify(this.assetsForm.members);
|
|
|
+ }
|
|
|
+ this.$api.assets.updateOrderBaseInfo(this.assetsForm).then(res => {
|
|
|
+ if (res.code === 200 && res.data) {
|
|
|
+ this.$notify({
|
|
|
+ title: '成功',
|
|
|
+ message: '订单基本信息更新成功!',
|
|
|
+ type: 'success',
|
|
|
+ duration: 3000
|
|
|
+ });
|
|
|
+ this.getAssetsDetailById(this.pageParams.row.assetsId);
|
|
|
+ } else {
|
|
|
+ this.$notify({
|
|
|
+ title: '失败',
|
|
|
+ message: '订单基本信息更新失败!请稍后重试!',
|
|
|
+ type: 'warning',
|
|
|
+ duration: 3000
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }).catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: 'info',
|
|
|
+ message: '已取消更新'
|
|
|
});
|
|
|
- }
|
|
|
- })
|
|
|
- }).catch(() => {
|
|
|
- this.$message({
|
|
|
- type: 'info',
|
|
|
- message: '已取消更新'
|
|
|
- });
|
|
|
- });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
}
|
|
|
|