Commit 5086d102 by liangjianmin

feat: 优化合同操作按钮逻辑,动态渲染电子签与人工签功能,提升用户体验

parent 3bc97465
Showing with 25 additions and 12 deletions
...@@ -63,28 +63,33 @@ ...@@ -63,28 +63,33 @@
</el-table-column> </el-table-column>
<el-table-column prop="expire_time_val" label="失效时间" width="145"></el-table-column> <el-table-column prop="expire_time_val" label="失效时间" width="145"></el-table-column>
<el-table-column prop="contract_type_val" label="类型" width="120"></el-table-column> <el-table-column prop="contract_type_val" label="类型" width="120"></el-table-column>
<el-table-column fixed="right" label="操作" width="200" align="center"> <el-table-column fixed="right" label="操作" width="120" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-row> <el-row>
<!-- 电子签 -->
<template v-if="scope.row.contract_type == 2">
<!-- 签署状态为待签署+状态为有效 -->
<el-button type="primary" @click="showSignDialog(scope.row)" v-if="scope.row.status == 1 && scope.row.sign_status == 1">签署合同</el-button>
</template>
<!-- 人工签 -->
<template v-else>
<!-- 深贸电子 -->
<template v-if="infos.company_id == 2 && infos.status != 4 && infos.status != -3 && scope.row.status == 1"> <template v-if="infos.company_id == 2 && infos.status != 4 && infos.status != -3 && scope.row.status == 1">
<el-button v-if="scope.row.contractFileUrl" type="primary" @click="delContract(scope.row)"> <el-button v-if="scope.row.contractFileUrl" type="primary" @click="delContract(scope.row)">删除</el-button>
<span>删除</span> <el-upload v-else-if="scope.row.languageType == '中文'" :headers="{ Authorization: 'Bearer ' + token }" :data="getUploadData(scope.row)" :action="uploadUrl" :on-success="handleUploadSuccess">
</el-button>
<el-upload v-else-if="scope.row.languageType == '中文'" :headers="{ Authorization: 'Bearer ' + token }" :data="{ supplier_id: supplier_id, contract_id: scope.row.contractId, type: 'upload' }" :action="uploadUrl" :on-success="handleUploadSuccess">
<el-button type="primary">上传PI</el-button> <el-button type="primary">上传PI</el-button>
</el-upload> </el-upload>
<el-upload v-else-if="scope.row.languageType == '英文'" :headers="{ Authorization: 'Bearer ' + token }" :data="{ supplier_id: supplier_id, contract_id: scope.row.contractId, type: 'upload' }" :action="uploadUrl" :on-success="handleUploadSuccess"> <el-upload v-else-if="scope.row.languageType == '英文'" :headers="{ Authorization: 'Bearer ' + token }" :data="getUploadData(scope.row)" :action="uploadUrl" :on-success="handleUploadSuccess">
<el-button type="primary">上传合同</el-button> <el-button type="primary">上传合同</el-button>
</el-upload> </el-upload>
</template> </template>
<template v-else> <!-- 猎芯科技 -->
<el-button v-if="scope.row.contractFileUrl" type="primary" @click="delContract(scope.row)"> <template v-else-if="infos.company_id == 1 && infos.status != 4 && infos.status != -3 && scope.row.status == 1">
<span>删除</span> <el-button v-if="scope.row.contractFileUrl" type="primary" @click="delContract(scope.row)">删除</el-button>
</el-button> <el-upload v-else-if="scope.row.languageType == '中文'" :headers="{ Authorization: 'Bearer ' + token }" :data="getUploadData(scope.row)" :action="uploadUrl" :on-success="handleUploadSuccess">
<el-upload v-else-if="scope.row.languageType == '中文'" :headers="{ Authorization: 'Bearer ' + token }" :data="{ supplier_id: supplier_id, contract_id: scope.row.contractId, type: 'upload' }" :action="uploadUrl" :on-success="handleUploadSuccess">
<el-button type="primary">上传合同</el-button> <el-button type="primary">上传合同</el-button>
</el-upload> </el-upload>
<el-button type="primary" @click="showSignDialog(scope.row)">签署合同</el-button> </template>
</template> </template>
</el-row> </el-row>
</template> </template>
...@@ -524,6 +529,14 @@ export default { ...@@ -524,6 +529,14 @@ export default {
if (contractContent.scrollHeight - contractContent.scrollTop === contractContent.clientHeight) { if (contractContent.scrollHeight - contractContent.scrollTop === contractContent.clientHeight) {
this.disabled = false; this.disabled = false;
} }
},
// 获取上传数据
getUploadData(row) {
return {
supplier_id: this.supplier_id,
contract_id: row.contractId,
type: 'upload'
};
} }
}, },
components: { components: {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment