|
|
@@ -5,402 +5,393 @@
|
|
|
width="70%"
|
|
|
:close-on-click-modal="false"
|
|
|
:visible.sync="visible"> -->
|
|
|
- <div class="my-title">{{ !id ? '发起评审': display ? '评审详情' : '修改' }}</div>
|
|
|
- <!-- 工作流 -->
|
|
|
- <div v-show="display && dataForm.workFlowBusinessExt">
|
|
|
- <el-steps :active="activeNo" finish-status="success" align-center style="margin-bottom: 20px">
|
|
|
- <template v-for="(item, i) in stepList">
|
|
|
- <el-step :icon="item.icon" :title="item.title" :description="item.description"></el-step>
|
|
|
+ <div class="my-title">{{ !id ? '发起评审' : display ? '评审详情' : '修改' }}</div>
|
|
|
+ <!-- 工作流 -->
|
|
|
+ <div v-show="display && dataForm.workFlowBusinessExt">
|
|
|
+ <el-steps :active="activeNo" finish-status="success" align-center style="margin-bottom: 20px">
|
|
|
+ <template v-for="(item, i) in stepList">
|
|
|
+ <el-step :icon="item.icon" :title="item.title" :description="item.description"></el-step>
|
|
|
+ </template>
|
|
|
+ </el-steps>
|
|
|
+ <el-collapse style="margin-bottom: 20px">
|
|
|
+ <el-collapse-item>
|
|
|
+ <template slot="title">
|
|
|
+ <span style="color: red">审批日志(展开查看更多):</span>
|
|
|
</template>
|
|
|
- </el-steps>
|
|
|
- <el-collapse style="margin-bottom: 20px">
|
|
|
- <el-collapse-item>
|
|
|
- <template slot="title">
|
|
|
- <span style="color: red">审批日志(展开查看更多):</span>
|
|
|
- </template>
|
|
|
- <template v-for="(item, i) in logList">
|
|
|
- <div>{{++i}}:{{item.approverName}} {{item.createTime}} {{item.approvalValue}}</div>
|
|
|
- </template>
|
|
|
- </el-collapse-item>
|
|
|
- </el-collapse>
|
|
|
- </div>
|
|
|
- <!-- 表单 -->
|
|
|
- <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="auto">
|
|
|
- <el-row class="my-row">
|
|
|
- <el-col :span="8" style="padding-left: 20px">
|
|
|
- <el-form-item label="合同名称" prop="protocolName">
|
|
|
- <el-input v-model="dataForm.protocolName" placeholder="合同名称"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8" style="padding-left: 20px">
|
|
|
- <el-form-item label="沟通编码" prop="coCode">
|
|
|
- <el-select
|
|
|
- v-model="dataForm.coCode"
|
|
|
- ref="coSelectRef"
|
|
|
- :disabled="display"
|
|
|
- remote
|
|
|
- placeholder="请选择"
|
|
|
- @change="coListSelected">
|
|
|
- <el-option
|
|
|
- v-for="item in options1"
|
|
|
- :key="item.value"
|
|
|
- :label="item.coCode + ' (' + item.customerName + ')'"
|
|
|
- :value="item">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8" style="padding-left: 20px">
|
|
|
- <el-form-item label="评审类别" prop="reType">
|
|
|
- <el-select
|
|
|
- v-model="dataForm.reType"
|
|
|
- :disabled="display"
|
|
|
- remote
|
|
|
- placeholder="请选择">
|
|
|
- <el-option
|
|
|
- v-for="item in options"
|
|
|
- :key="item.code"
|
|
|
- :label="item.value"
|
|
|
- :value="item.code">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="my-row">
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="客户名称" prop="name">
|
|
|
- <el-input v-model="dataForm.name" disabled placeholder="客户名称"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8" style="padding-left: 20px">
|
|
|
- <el-form-item label="联系人" prop="cellName">
|
|
|
- <el-input v-model="dataForm.cellName" disabled placeholder="联系人"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="评审编码" prop="reCode">
|
|
|
- <el-input v-model="dataForm.reCode" :disabled="true" placeholder="系统自动生成,无需填写"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row class="my-row">
|
|
|
- <el-col :span="8">
|
|
|
- <el-form-item label="合同号" prop="contractCode">
|
|
|
- <el-input v-model="dataForm.contractCode" placeholder="合同号"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="16">
|
|
|
- <el-form-item label="备注说明">
|
|
|
- <el-input v-model="dataForm.notes" :disabled="display" placeholder="备注说明"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
+ <template v-for="(item, i) in logList">
|
|
|
+ <div>{{+ + i }}:{{ item.approverName }} {{ item.createTime }} {{ item.approvalValue }}</div>
|
|
|
+ </template>
|
|
|
+ </el-collapse-item>
|
|
|
+ </el-collapse>
|
|
|
+ </div>
|
|
|
+ <!-- 表单 -->
|
|
|
+ <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="auto">
|
|
|
+ <el-row class="my-row">
|
|
|
+ <el-col :span="8" style="padding-left: 20px">
|
|
|
+ <el-form-item label="合同名称" prop="protocolName">
|
|
|
+ <el-input v-model="dataForm.protocolName" placeholder="合同名称"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" style="padding-left: 20px">
|
|
|
+ <el-form-item label="沟通编码" prop="coCode">
|
|
|
+ <el-select v-model="dataForm.coCode" ref="coSelectRef" :disabled="display" remote placeholder="请选择"
|
|
|
+ @change="coListSelected">
|
|
|
+ <el-option v-for="item in options1" :key="item.value"
|
|
|
+ :label="item.coCode + ' (' + item.customerName + ')'" :value="item">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" style="padding-left: 20px">
|
|
|
+ <el-form-item label="评审类别" prop="reType">
|
|
|
+ <el-select v-model="dataForm.reType" :disabled="display" remote placeholder="请选择">
|
|
|
+ <el-option v-for="item in options" :key="item.code" :label="item.value" :value="item.code">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="my-row">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="客户名称" prop="name">
|
|
|
+ <el-input v-model="dataForm.name" disabled placeholder="客户名称"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" style="padding-left: 20px">
|
|
|
+ <el-form-item label="联系人" prop="cellName">
|
|
|
+ <el-input v-model="dataForm.cellName" disabled placeholder="联系人"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="评审编码" prop="reCode">
|
|
|
+ <el-input v-model="dataForm.reCode" :disabled="true" placeholder="系统自动生成,无需填写"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="my-row">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="合同号" prop="contractCode">
|
|
|
+ <el-input v-model="dataForm.contractCode" :disabled="true" placeholder="由系统自动生成"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="16">
|
|
|
+ <el-form-item label="备注说明">
|
|
|
+ <el-input v-model="dataForm.notes" :disabled="display" placeholder="备注说明"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
|
|
|
- <el-row class="my-row my-bg">
|
|
|
- <div class="title">
|
|
|
- 与物料有关要求的明确性、符合性:
|
|
|
- </div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 1、顾客对物料的要求与潜在要求是否明确
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part11" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part11" :label="0">否</el-radio>
|
|
|
+ <el-row class="my-row my-bg">
|
|
|
+ <div class="title">
|
|
|
+ 与物料有关要求的明确性、符合性:
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 1、顾客对物料的要求与潜在要求是否明确
|
|
|
</div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 2、合同的合法性、完性整性、规范性
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part12" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part12" :label="0">否</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part11" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part11" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 2、合同的合法性、完性整性、规范性
|
|
|
</div>
|
|
|
- </el-row>
|
|
|
+ <el-radio v-model="dataForm.part12" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part12" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ </el-row>
|
|
|
|
|
|
- <el-row class="my-row my-bg">
|
|
|
- <div class="title">
|
|
|
- 风险控制能力:
|
|
|
- </div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 1、图样和技术要求能否满足生产要求,物料服务和培训能否满足要求
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part21" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part21" :label="0">否</el-radio>
|
|
|
- </div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 2、外购器材风险的控制情况,能否保障生产
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part22" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part22" :label="0">否</el-radio>
|
|
|
- </div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 3、质量控制情况能否满足要求(生产、检验和验收设备能否满足要求)
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part23" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part23" :label="0">否</el-radio>
|
|
|
- </div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 4、财务能否满足生产要求(成本、价格、结算方式与付款能否接受)
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part24" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part24" :label="0">否</el-radio>
|
|
|
- </div>
|
|
|
- <div class="item">
|
|
|
- <div class="msage">
|
|
|
- 5、规格数量能否满足,运输、交货方式能否满足,生产进度能否满足
|
|
|
- </div>
|
|
|
- <el-radio v-model="dataForm.part25" :label="1">是</el-radio>
|
|
|
- <el-radio v-model="dataForm.part25" :label="0">否</el-radio>
|
|
|
+ <el-row class="my-row my-bg">
|
|
|
+ <div class="title">
|
|
|
+ 风险控制能力:
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 1、图样和技术要求能否满足生产要求,物料服务和培训能否满足要求
|
|
|
</div>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-row class="my-row my-bg">
|
|
|
- <div class="title">
|
|
|
- 满足规定要求的能力:
|
|
|
+ <el-radio v-model="dataForm.part21" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part21" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 2、外购器材风险的控制情况,能否保障生产
|
|
|
</div>
|
|
|
- <div class="item">
|
|
|
- 项目组对履行承诺的风险(包括技术、质量、生产能力、进度、经费)识别:
|
|
|
- <el-radio v-model="dataForm.part31" :label="1">高</el-radio>
|
|
|
- <el-radio v-model="dataForm.part31" :label="2">中</el-radio>
|
|
|
- <el-radio v-model="dataForm.part31" :label="3">低</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part22" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part22" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 3、质量控制情况能否满足要求(生产、检验和验收设备能否满足要求)
|
|
|
</div>
|
|
|
- <div class="item">
|
|
|
- 控制能力:
|
|
|
- <el-radio v-model="dataForm.part32" :label="1">可控</el-radio>
|
|
|
- <el-radio v-model="dataForm.part32" :label="2">基本可控</el-radio>
|
|
|
- <el-radio v-model="dataForm.part32" :label="3">不可控</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part23" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part23" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 4、财务能否满足生产要求(成本、价格、结算方式与付款能否接受)
|
|
|
</div>
|
|
|
- <div class="item">
|
|
|
- <div class="label">采取措施:</div>
|
|
|
- <el-input v-model="dataForm.takeStep" style="display: inline-table; width: calc(100% - 200px);" placeholder="采取措施"></el-input>
|
|
|
+ <el-radio v-model="dataForm.part24" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part24" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ <div class="msage">
|
|
|
+ 5、规格数量能否满足,运输、交货方式能否满足,生产进度能否满足
|
|
|
</div>
|
|
|
- </el-row>
|
|
|
+ <el-radio v-model="dataForm.part25" :label="1">是</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part25" :label="0">否</el-radio>
|
|
|
+ </div>
|
|
|
+ </el-row>
|
|
|
|
|
|
-<!-- <el-row class="my-row">-->
|
|
|
-<!-- <upload-component :display="true" :title="'沟通信息表附件'" :accept="'*'" :file-obj-list="fileList1"/>-->
|
|
|
-<!-- </el-row>-->
|
|
|
- <el-row class="my-row">
|
|
|
- <upload-component :display-star="false" :display="display" :title="'合同评审表'" :accept="'*'" :file-obj-list="fileList" @uploadSuccess="uploadSuccess" templateCode="contract_review_htpsyjb"/>
|
|
|
- </el-row>
|
|
|
- <div style="margin-top: 20px" v-if="isCommVisible">
|
|
|
- <h3>合同沟通信息:</h3>
|
|
|
- <communicate-detail ref="commDetail"/>
|
|
|
+ <el-row class="my-row my-bg">
|
|
|
+ <div class="title">
|
|
|
+ 满足规定要求的能力:
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ 项目组对履行承诺的风险(包括技术、质量、生产能力、进度、经费)识别:
|
|
|
+ <el-radio v-model="dataForm.part31" :label="1">高</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part31" :label="2">中</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part31" :label="3">低</el-radio>
|
|
|
+ </div>
|
|
|
+ <div class="item">
|
|
|
+ 控制能力:
|
|
|
+ <el-radio v-model="dataForm.part32" :label="1">可控</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part32" :label="2">基本可控</el-radio>
|
|
|
+ <el-radio v-model="dataForm.part32" :label="3">不可控</el-radio>
|
|
|
</div>
|
|
|
- </el-form>
|
|
|
- <span slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="onChose">取消</el-button>
|
|
|
- <el-button v-if="!display" type="primary" @click="dataFormSubmit()" v-reClick>确定</el-button>
|
|
|
- </span>
|
|
|
+ <div class="item">
|
|
|
+ <div class="label">采取措施:</div>
|
|
|
+ <el-input v-model="dataForm.takeStep" style="display: inline-table; width: calc(100% - 200px);"
|
|
|
+ placeholder="采取措施"></el-input>
|
|
|
+ </div>
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+ <!-- <el-row class="my-row">-->
|
|
|
+ <!-- <upload-component :display="true" :title="'沟通信息表附件'" :accept="'*'" :file-obj-list="fileList1"/>-->
|
|
|
+ <!-- </el-row>-->
|
|
|
+ <el-row class="my-row">
|
|
|
+ <upload-component :display-star="false" :display="display" :title="'合同评审表'" :accept="'*'"
|
|
|
+ :file-obj-list="fileList" @uploadSuccess="uploadSuccess" templateCode="contract_review_htpsyjb" />
|
|
|
+ </el-row>
|
|
|
+ <div style="margin-top: 20px" v-if="isCommVisible">
|
|
|
+ <h3>合同沟通信息:</h3>
|
|
|
+ <communicate-detail ref="commDetail" />
|
|
|
+ </div>
|
|
|
+ </el-form>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="onChose">取消</el-button>
|
|
|
+ <el-button v-if="!display" type="primary" @click="dataFormSubmit()" v-reClick>确定</el-button>
|
|
|
+ </span>
|
|
|
<!-- </el-dialog> -->
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import { getCoCode, geTreDetail } from '@/api/cus'
|
|
|
- import { getDictList } from '@/api/dict'
|
|
|
- import { dealStepData, dealStepLogs } from '@/api/util'
|
|
|
- import UploadComponent from '../common/upload-component'
|
|
|
- import CommunicateDetail from '@/views/modules/cus/communicate-detail'
|
|
|
+import { getCoCode, geTreDetail } from '@/api/cus'
|
|
|
+import { getDictList } from '@/api/dict'
|
|
|
+import { dealStepData, dealStepLogs } from '@/api/util'
|
|
|
+import UploadComponent from '../common/upload-component'
|
|
|
+import CommunicateDetail from '@/views/modules/cus/communicate-detail'
|
|
|
export default {
|
|
|
- name: 'stock-order-inbound',
|
|
|
- components: {CommunicateDetail, UploadComponent},
|
|
|
- computed: {
|
|
|
- orgId: {
|
|
|
- get () { return this.$store.state.user.orgId }
|
|
|
- }
|
|
|
- },
|
|
|
- data () {
|
|
|
- return {
|
|
|
- visible: false,
|
|
|
- isCommVisible: false,
|
|
|
- dictType: 'material_type',
|
|
|
- options: [],
|
|
|
- options1: [],
|
|
|
- dataList: [],
|
|
|
- fileList: [],
|
|
|
- fileList1: [],
|
|
|
- activeNo: 0,
|
|
|
- stepList: [],
|
|
|
- logList: [],
|
|
|
- radio: '',
|
|
|
- id: 0,
|
|
|
- dataForm: {
|
|
|
- coCode: '',
|
|
|
- name: '',
|
|
|
- cellName: '',
|
|
|
- reType: '',
|
|
|
- notes: '',
|
|
|
- attachList: []
|
|
|
- },
|
|
|
- dataRule: {
|
|
|
- coCode: [{ required: true, message: '沟通编码不能为空', trigger: 'change' }],
|
|
|
- reType: [{ required: true, message: '评审类别不能为空', trigger: 'change' }],
|
|
|
- protocolName: [{ required: true, message: '合同名称不能为空', trigger: 'blur' }]
|
|
|
- // cellName: [{ required: true, message: '联系人不能为空', trigger: 'blur' }]
|
|
|
- },
|
|
|
- display: false
|
|
|
- }
|
|
|
- },
|
|
|
- watch: {
|
|
|
- 'dataForm.coCode' (value) {
|
|
|
- let v = this.options1.find((item) => { return item.coCode === value })
|
|
|
- if (v) {
|
|
|
- this.dataForm.name = v.customerName
|
|
|
- this.dataForm.cellName = v.contact
|
|
|
- if (v.attachList) {
|
|
|
- this.fileList1 = []
|
|
|
- v.attachList.forEach((item) => {
|
|
|
- this.fileList1.push({
|
|
|
- name: item.fileName,
|
|
|
- url: item.url,
|
|
|
- id: item.url
|
|
|
- })
|
|
|
+ name: 'stock-order-inbound',
|
|
|
+ components: { CommunicateDetail, UploadComponent },
|
|
|
+ computed: {
|
|
|
+ orgId: {
|
|
|
+ get() { return this.$store.state.user.orgId }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ visible: false,
|
|
|
+ isCommVisible: false,
|
|
|
+ dictType: 'material_type',
|
|
|
+ options: [],
|
|
|
+ options1: [],
|
|
|
+ dataList: [],
|
|
|
+ fileList: [],
|
|
|
+ fileList1: [],
|
|
|
+ activeNo: 0,
|
|
|
+ stepList: [],
|
|
|
+ logList: [],
|
|
|
+ radio: '',
|
|
|
+ id: 0,
|
|
|
+ dataForm: {
|
|
|
+ coCode: '',
|
|
|
+ name: '',
|
|
|
+ cellName: '',
|
|
|
+ reType: '',
|
|
|
+ notes: '',
|
|
|
+ attachList: []
|
|
|
+ },
|
|
|
+ dataRule: {
|
|
|
+ coCode: [{ required: true, message: '沟通编码不能为空', trigger: 'change' }],
|
|
|
+ reType: [{ required: true, message: '评审类别不能为空', trigger: 'change' }],
|
|
|
+ protocolName: [{ required: true, message: '合同名称不能为空', trigger: 'blur' }]
|
|
|
+ // cellName: [{ required: true, message: '联系人不能为空', trigger: 'blur' }]
|
|
|
+ },
|
|
|
+ display: false
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ 'dataForm.coCode'(value) {
|
|
|
+ let v = this.options1.find((item) => { return item.coCode === value })
|
|
|
+ if (v) {
|
|
|
+ this.dataForm.name = v.customerName
|
|
|
+ this.dataForm.cellName = v.contact
|
|
|
+ if (v.attachList) {
|
|
|
+ this.fileList1 = []
|
|
|
+ v.attachList.forEach((item) => {
|
|
|
+ this.fileList1.push({
|
|
|
+ name: item.fileName,
|
|
|
+ url: item.url,
|
|
|
+ id: item.url
|
|
|
})
|
|
|
- }
|
|
|
+ })
|
|
|
}
|
|
|
}
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ onChose() {
|
|
|
+ this.$emit('onChose')
|
|
|
},
|
|
|
- methods: {
|
|
|
- onChose () {
|
|
|
- this.$emit('onChose')
|
|
|
- },
|
|
|
- async init (id, disable) {
|
|
|
- this.dataForm = {
|
|
|
- part11: 1,
|
|
|
- part12: 1,
|
|
|
- part21: 1,
|
|
|
- part22: 1,
|
|
|
- part23: 1,
|
|
|
- part24: 1,
|
|
|
- part25: 1,
|
|
|
- part31: 3,
|
|
|
- part32: 1
|
|
|
+ async init(id, disable) {
|
|
|
+ this.dataForm = {
|
|
|
+ part11: 1,
|
|
|
+ part12: 1,
|
|
|
+ part21: 1,
|
|
|
+ part22: 1,
|
|
|
+ part23: 1,
|
|
|
+ part24: 1,
|
|
|
+ part25: 1,
|
|
|
+ part31: 3,
|
|
|
+ part32: 1
|
|
|
+ }
|
|
|
+ this.display = disable
|
|
|
+ this.fileList = []
|
|
|
+ this.stepList = []
|
|
|
+ this.logList = []
|
|
|
+ this.visible = true
|
|
|
+ this.id = id || 0
|
|
|
+ // 获取评审类别
|
|
|
+ await getDictList({ type: 'review_type' }).then(({ data }) => {
|
|
|
+ if (data) {
|
|
|
+ this.options = data
|
|
|
}
|
|
|
- this.display = disable
|
|
|
- this.fileList = []
|
|
|
- this.stepList = []
|
|
|
- this.logList = []
|
|
|
- this.visible = true
|
|
|
- this.id = id || 0
|
|
|
- // 获取评审类别
|
|
|
- await getDictList({type: 'review_type'}).then(({data}) => {
|
|
|
- if (data) {
|
|
|
- this.options = data
|
|
|
+ })
|
|
|
+ await getCoCode().then(({ data }) => {
|
|
|
+ if (data && data.code === '200') {
|
|
|
+ this.options1 = data.data
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (!id) return
|
|
|
+ await geTreDetail(id).then(({ data }) => {
|
|
|
+ if (data && data.code === '200') {
|
|
|
+ this.dataForm = data.data
|
|
|
+ // 流程图展示
|
|
|
+ if (data.data.workFlowBusinessExt) {
|
|
|
+ dealStepData(data.data.workFlowBusinessExt.workFlowProcessStepList, this.stepList)
|
|
|
+ dealStepLogs(data.data.workFlowBusinessExt.processLogList, this.logList)
|
|
|
}
|
|
|
- })
|
|
|
- await getCoCode().then(({data}) => {
|
|
|
- if (data && data.code === '200') {
|
|
|
- this.options1 = data.data
|
|
|
+ if (data.data.workFlowProcessStepList) {
|
|
|
+ this.activeNo = Number(data.data.workFlowProcessStepList.activeNo)
|
|
|
}
|
|
|
- })
|
|
|
- if (!id) return
|
|
|
- await geTreDetail(id).then(({data}) => {
|
|
|
- if (data && data.code === '200') {
|
|
|
- this.dataForm = data.data
|
|
|
- // 流程图展示
|
|
|
- if (data.data.workFlowBusinessExt) {
|
|
|
- dealStepData(data.data.workFlowBusinessExt.workFlowProcessStepList, this.stepList)
|
|
|
- dealStepLogs(data.data.workFlowBusinessExt.processLogList, this.logList)
|
|
|
- }
|
|
|
- if (data.data.workFlowProcessStepList) {
|
|
|
- this.activeNo = Number(data.data.workFlowProcessStepList.activeNo)
|
|
|
- }
|
|
|
- // 附件显示
|
|
|
- this.fileList = []
|
|
|
- data.data.attachList.forEach((item) => {
|
|
|
- this.fileList.push({
|
|
|
- name: item.fileName,
|
|
|
- url: item.url,
|
|
|
- id: item.url
|
|
|
- })
|
|
|
+ // 附件显示
|
|
|
+ this.fileList = []
|
|
|
+ data.data.attachList.forEach((item) => {
|
|
|
+ this.fileList.push({
|
|
|
+ name: item.fileName,
|
|
|
+ url: item.url,
|
|
|
+ id: item.url
|
|
|
})
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- uploadSuccess (fileList) {
|
|
|
- this.fileList = fileList
|
|
|
- },
|
|
|
- // 表单提交
|
|
|
- dataFormSubmit () {
|
|
|
- this.$refs['dataForm'].validate((valid) => {
|
|
|
- if (valid) {
|
|
|
- let fList = this.fileList
|
|
|
- if (fList.length > 0) {
|
|
|
- this.dataForm.attachList = []
|
|
|
- for (let i = 0; i < fList.length; i++) {
|
|
|
- this.dataForm.attachList.push({
|
|
|
- fileName: fList[i].name,
|
|
|
- url: fList[i].url
|
|
|
- })
|
|
|
- }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ uploadSuccess(fileList) {
|
|
|
+ this.fileList = fileList
|
|
|
+ },
|
|
|
+ // 表单提交
|
|
|
+ dataFormSubmit() {
|
|
|
+ this.$refs['dataForm'].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ let fList = this.fileList
|
|
|
+ if (fList.length > 0) {
|
|
|
+ this.dataForm.attachList = []
|
|
|
+ for (let i = 0; i < fList.length; i++) {
|
|
|
+ this.dataForm.attachList.push({
|
|
|
+ fileName: fList[i].name,
|
|
|
+ url: fList[i].url
|
|
|
+ })
|
|
|
}
|
|
|
- this.$http({
|
|
|
- url: this.$http.adornUrl(`/biz-service/flow/cusContractReview/submit`),
|
|
|
- method: 'post',
|
|
|
- data: this.$http.adornData({...this.dataForm, orgId: this.orgId})
|
|
|
- }).then(({data}) => {
|
|
|
- if (data && data.code === '200') {
|
|
|
- this.$message({
|
|
|
- message: '操作成功',
|
|
|
- type: 'success',
|
|
|
- duration: 1500,
|
|
|
- onClose: () => {
|
|
|
- this.onChose()
|
|
|
- this.$emit('refreshDataList')
|
|
|
- }
|
|
|
- })
|
|
|
- } else {
|
|
|
- this.$message.error(data.msg)
|
|
|
- }
|
|
|
- })
|
|
|
}
|
|
|
- })
|
|
|
- },
|
|
|
- validateField (type) {
|
|
|
- this.$refs.dataForm.validateField(type)
|
|
|
- },
|
|
|
- coListSelected (item) {
|
|
|
- this.dataForm.coCode = item.coCode
|
|
|
- this.dataForm.coId = item.coId
|
|
|
- this.showComm(item.coId)
|
|
|
- },
|
|
|
- showComm (id) {
|
|
|
- this.isCommVisible = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.commDetail.init(id, null, true)
|
|
|
- })
|
|
|
- }
|
|
|
+ this.$http({
|
|
|
+ url: this.$http.adornUrl(`/biz-service/flow/cusContractReview/submit`),
|
|
|
+ method: 'post',
|
|
|
+ data: this.$http.adornData({ ...this.dataForm, orgId: this.orgId })
|
|
|
+ }).then(({ data }) => {
|
|
|
+ if (data && data.code === '200') {
|
|
|
+ this.$message({
|
|
|
+ message: '操作成功',
|
|
|
+ type: 'success',
|
|
|
+ duration: 1500,
|
|
|
+ onClose: () => {
|
|
|
+ this.onChose()
|
|
|
+ this.$emit('refreshDataList')
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.$message.error(data.msg)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ validateField(type) {
|
|
|
+ this.$refs.dataForm.validateField(type)
|
|
|
+ },
|
|
|
+ coListSelected(item) {
|
|
|
+ this.dataForm.coCode = item.coCode
|
|
|
+ this.dataForm.coId = item.coId
|
|
|
+ this.showComm(item.coId)
|
|
|
+ },
|
|
|
+ showComm(id) {
|
|
|
+ this.isCommVisible = true
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.commDetail.init(id, null, true)
|
|
|
+ })
|
|
|
}
|
|
|
}
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
-.my-line{
|
|
|
+.my-line {
|
|
|
border-bottom: 1px solid #c0c4cc;
|
|
|
margin-bottom: 10px;
|
|
|
}
|
|
|
-.title{
|
|
|
- padding: 10px 0 ;
|
|
|
+
|
|
|
+.title {
|
|
|
+ padding: 10px 0;
|
|
|
font-weight: bold;
|
|
|
}
|
|
|
-.item{
|
|
|
+
|
|
|
+.item {
|
|
|
padding: 10px 20px;
|
|
|
}
|
|
|
-.msage{
|
|
|
+
|
|
|
+.msage {
|
|
|
display: inline-table;
|
|
|
min-width: 500px;
|
|
|
}
|
|
|
-.my-bg{
|
|
|
+
|
|
|
+.my-bg {
|
|
|
border-radius: 4px;
|
|
|
border: 1px solid #dcdfe6;
|
|
|
margin: 10px;
|
|
|
padding: 10px;
|
|
|
}
|
|
|
-.label{
|
|
|
+
|
|
|
+.label {
|
|
|
display: inline-table;
|
|
|
}
|
|
|
</style>
|