| @@ -780,6 +780,22 @@ export function cbhtFirstSign(data,id) { | |||
| }) | |||
| } | |||
| // 签字流程归档 | |||
| export function signProcessArchive(id) { | |||
| return request({ | |||
| url: '/service/cbht/sign/archive/' + id, | |||
| method: 'get' | |||
| }); | |||
| } | |||
| // 签署合同下载 | |||
| export function signedContractDownload(id) { | |||
| return request({ | |||
| url: '/service/cbht/sign/download/' + id, | |||
| method: 'get' | |||
| }); | |||
| } | |||
| // 查询承包合同详细 | |||
| export function getCbht(query, id) { | |||
| return request({ | |||
| @@ -911,7 +927,22 @@ export function getMessage(id) { | |||
| method: 'get', | |||
| }) | |||
| } | |||
| //e签宝-发包方合同网签 | |||
| export function eqbFbfhtwq(data){ | |||
| return request({ | |||
| url: '/open/villageAffairs/public/eqbFbfhtwq', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| //e签宝-合同网签 | |||
| export function eqbCbfhtwq(data){ | |||
| return request({ | |||
| url: '/open/villageAffairs/public/eqbCbfhtwq', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| // 资源公开 | |||
| export function orcodeList(query) { | |||
| return request({ | |||
| @@ -74,4 +74,13 @@ export function examineSign(data){ | |||
| data: data | |||
| }) | |||
| } | |||
| //承包方e签宝授权 | |||
| export function eqbEmpower(data){ | |||
| return request({ | |||
| url:'/open/villageAffairs/public/eqbEmpower', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| @@ -44,6 +44,10 @@ | |||
| <img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35"> | |||
| <p>预览</p> | |||
| </div> --> | |||
| <div class="opera_btn" v-if="item.signingMode == '线上' && item.cbfqszt !='2'" @click="contractSign(item)"> | |||
| <img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35"> | |||
| <p>合同网签</p> | |||
| </div> | |||
| <div class="opera_btn" @click="openPopupGsjg(item.cbfbm)"> | |||
| <img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="30"> | |||
| <p>公示结果签名</p> | |||
| @@ -61,6 +65,9 @@ | |||
| </van-swipe-cell> | |||
| </van-list> | |||
| </div> | |||
| <van-dialog v-model="htqsShow" title="合同签署" confirmButtonText="关闭" @confirm="confirmn"> | |||
| <iframe width="100%" height="600px;" :src="noticeUrl"></iframe> | |||
| </van-dialog> | |||
| <van-popup v-model="show" closeable position="right" :style="{ height: '100%' }" > | |||
| <van-cell-group style="width: 100%;height:100%;overflow: hidden;padding-top: 10px;padding-bottom: 10px;"> | |||
| <div class="signature-box" @mousedown="canvasTTdown" @touchstart="canvasTTdown"> | |||
| @@ -95,7 +102,7 @@ | |||
| </template> | |||
| <script> | |||
| import { getCbf, getCbhtList, cbhtSecondSign,updateGsjgSign, attachmentQuery, attachmentUpload, attachmentRemove } from "@/api/sunVillage_info/fixedAssets"; | |||
| import { getCbf, eqbCbfhtwq,getCbhtList, cbhtSecondSign,updateGsjgSign, attachmentQuery, attachmentUpload, attachmentRemove } from "@/api/sunVillage_info/fixedAssets"; | |||
| import vueEsign from "vue-esign"; | |||
| import $ from "jquery"; | |||
| import Cookies from "js-cookie"; | |||
| @@ -110,6 +117,8 @@ | |||
| finished: false, | |||
| show: false, | |||
| showFile: false, | |||
| htqsShow:false, | |||
| noticeUrl:false, | |||
| fileList: [], | |||
| listLength: '0', | |||
| cbfbm:"", | |||
| @@ -191,6 +200,17 @@ | |||
| this.handleReset(); | |||
| }); | |||
| }, | |||
| contractSign(val){ | |||
| eqbCbfhtwq(val).then(response => { | |||
| this.noticeUrl = response.data; | |||
| this.htqsShow = true; | |||
| }); | |||
| }, | |||
| confirmn(){ | |||
| this.applicationList = []; | |||
| this.getList(); | |||
| }, | |||
| openPopupFile(id){ | |||
| this.fileList = []; | |||
| this.signaId = id; | |||
| @@ -83,16 +83,19 @@ | |||
| <van-field readonly v-model="isDepositName" label="是否纳入托管" placeholder="是否纳入托管" input-align="right" :border="false" /> | |||
| <van-field readonly v-model="form.tgmj" label="托管面积(亩)" placeholder="托管面积(亩)" input-align="right" :border="false" /> | |||
| <div style="margin: 30px auto 0;width: 50%;"> | |||
| <van-button round block type="primary" native-type="submit" > | |||
| <van-button round block type="primary" v-if="sqbutShow" @click="cbfsq"> | |||
| 授权 | |||
| </van-button> | |||
| <van-button round block type="primary" v-if="!sqbutShow" > | |||
| 授权完成 | |||
| </van-button> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| </template> | |||
| <script> | |||
| import { getCbfList} from "@/api/sunVillage_info/sysCbf"; | |||
| import { getCbfList,eqbEmpower} from "@/api/sunVillage_info/sysCbf"; | |||
| import FieldSelect from "@/components/form/FieldSelect"; | |||
| import Cookies from "js-cookie"; | |||
| import $ from "jquery"; | |||
| @@ -104,6 +107,7 @@ | |||
| form:{}, | |||
| showForm2:false, | |||
| showesign:false, | |||
| sqbutShow:false, | |||
| sysFarmer:JSON.parse(Cookies.get('user')), | |||
| zjlxName:"", | |||
| cbfTypeName:"", | |||
| @@ -124,7 +128,7 @@ | |||
| }; | |||
| }, | |||
| created() { | |||
| this.getSysFfb(); | |||
| this.getSysCfb(); | |||
| }, | |||
| methods: { | |||
| InitOptions() { | |||
| @@ -133,11 +137,24 @@ | |||
| this.getDicts(k).then((resp) => this.options[k] = resp.data); | |||
| } | |||
| }, | |||
| getSysFfb(){ | |||
| /*承包方授权*/ | |||
| cbfsq(){ | |||
| console.info(3333333333); | |||
| eqbEmpower(this.form).then(response => { | |||
| if(response.code === 200 ){ | |||
| this.sqbutShow = false; | |||
| } | |||
| }); | |||
| }, | |||
| getSysCfb(){ | |||
| getCbfList({deptId:this.sysFarmer.deptId,cbfzjhm:this.sysFarmer.idcard}).then(response => { | |||
| this.sqbutShow = true; | |||
| let _this = this; | |||
| if(response.rows.length > 0){ | |||
| this.form = response.rows[0]; | |||
| if(this.form.accountId != null && this.form.accountId !== ""){ | |||
| this.sqbutShow = false; | |||
| } | |||
| this.getDicts("zjlx").then(response => { | |||
| response.data.forEach(function (item) { | |||
| if (item.dictValue === _this.form.cbfzjlx) { | |||
| @@ -10,6 +10,15 @@ | |||
| </div> | |||
| <div class="list_main"> | |||
| <van-search | |||
| v-model="searchKeyword" | |||
| shape="round" | |||
| background="transparent" | |||
| placeholder="请输入承包方姓名搜索" | |||
| @search="onSearch" | |||
| @clear="onSearch" | |||
| ></van-search> | |||
| <van-list | |||
| v-model="loading" | |||
| :finished="finished" | |||
| @@ -46,6 +55,20 @@ | |||
| <img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35"> | |||
| <p>预览</p> | |||
| </div> --> | |||
| <div class="opera_btn" v-if="item.signingMode == '线上' && item.fbfqszt !='2'" @click="contractSign(item)"> | |||
| <img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35"> | |||
| <p>合同网签</p> | |||
| </div> | |||
| <div class="opera_btn" v-if="item.signingMode === '线上' && item.signingStatus === '签字完成'" | |||
| @click="handleArchive(item.id)"> | |||
| <img src="../../assets/images/sunVillage_info/archive.png" alt="" width="35"> | |||
| <p>归档</p> | |||
| </div> | |||
| <div class="opera_btn" v-if="item.signingMode === '线上' && item.signingStatus === '合同归档'" | |||
| @click="handleDownload(item.id)"> | |||
| <img src="../../assets/images/sunVillage_info/download.png" alt="" width="35"> | |||
| <p>下载合同</p> | |||
| </div> | |||
| <div class="opera_btn"> | |||
| <img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35"> | |||
| <p>预览</p> | |||
| @@ -59,7 +82,9 @@ | |||
| </van-swipe-cell> | |||
| </van-list> | |||
| </div> | |||
| <van-dialog v-model="htqsShow" title="合同签署" confirmButtonText="关闭" @confirm="confirmn"> | |||
| <iframe width="100%" height="600px;" :src="noticeUrl"></iframe> | |||
| </van-dialog> | |||
| <!-- 签字弹出层 --> | |||
| <van-popup v-model="show" closeable position="right" :style="{ height: '100%' }"> | |||
| <van-cell-group style="width: 100%;height:100%;overflow: hidden;padding-top: 10px;padding-bottom: 10px;"> | |||
| @@ -95,7 +120,7 @@ | |||
| </template> | |||
| <script> | |||
| import { listCbht, cbhtFirstSign, attachmentList, commonAttach, systemAttachment } from "@/api/sunVillage_info/fixedAssets"; | |||
| import { listCbht,eqbFbfhtwq, signProcessArchive, signedContractDownload, cbhtFirstSign, attachmentList, commonAttach, systemAttachment } from "@/api/sunVillage_info/fixedAssets"; | |||
| import vueEsign from "vue-esign"; | |||
| import $ from "jquery"; | |||
| @@ -109,11 +134,14 @@ | |||
| finished: false, | |||
| show: false, | |||
| showFile: false, | |||
| htqsShow:false, | |||
| noticeUrl:"", | |||
| fileList: [], | |||
| listLength: '0', | |||
| queryParams: { | |||
| pageNum: 1, | |||
| pageSize: 10, | |||
| pageSize: 15, | |||
| cbfmc: null, | |||
| translate_dict: 1, | |||
| // 查询排序 | |||
| orderByColumn: "id", | |||
| @@ -131,7 +159,9 @@ | |||
| isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分 | |||
| }, | |||
| signaId: '', | |||
| height: null | |||
| height: null, | |||
| // 查询关键字 | |||
| searchKeyword: null, | |||
| }; | |||
| }, | |||
| created() { | |||
| @@ -145,6 +175,7 @@ | |||
| $('#canvasTT').css('display', 'none'); | |||
| }, | |||
| getList() { | |||
| this.loading = true; | |||
| listCbht(this.queryParams).then(response => { | |||
| response.rows.forEach(item => { | |||
| this.applicationList.push(item); | |||
| @@ -210,11 +241,22 @@ | |||
| signaImgFun(url) { | |||
| this.signatureImg = url; | |||
| }, | |||
| confirmn(){ | |||
| this.applicationList = []; | |||
| this.getList(); | |||
| }, | |||
| // 清空画板 | |||
| handleReset() { | |||
| this.$refs.esign.reset(); | |||
| $('#canvasTT').css('display', 'block') | |||
| }, | |||
| contractSign(val){ | |||
| eqbFbfhtwq(val).then(response => { | |||
| this.noticeUrl = response.data; | |||
| this.htqsShow = true; | |||
| }); | |||
| }, | |||
| // 生成签字图 | |||
| handleGenerate() { | |||
| this.$refs.esign | |||
| @@ -252,6 +294,53 @@ | |||
| type: mime | |||
| }) | |||
| }, | |||
| // 签字流程归档 | |||
| handleArchive(id) { | |||
| this.$dialog.confirm({ | |||
| message: '是否确认归档?', | |||
| }).then(() => { | |||
| // on confirm | |||
| signProcessArchive(id).then(res => { | |||
| if (res.code === 200) { | |||
| this.$toast({ | |||
| icon: 'success', | |||
| message: '归档完成', | |||
| duration: "1000", | |||
| onClose: () => { | |||
| this.queryParams.pageNum = 1; | |||
| this.finished = false; | |||
| this.applicationList = []; | |||
| this.getList(); | |||
| } | |||
| }); | |||
| } | |||
| }); | |||
| }).catch(() => { | |||
| // on cancel | |||
| }); | |||
| }, | |||
| // 签署合同下载 | |||
| handleDownload(id) { | |||
| this.$dialog.confirm({ | |||
| message: '是否确认下载签署合同?', | |||
| }).then(() => { | |||
| // on confirm | |||
| signedContractDownload(id).then(res => { | |||
| if (res.code === 200) { | |||
| window.location.href = res.data; | |||
| } | |||
| }); | |||
| }).catch(() => { | |||
| // on cancel | |||
| }); | |||
| }, | |||
| onSearch(){ | |||
| this.queryParams.cbfmc = this.searchKeyword; | |||
| this.queryParams.pageNum = 1; | |||
| this.finished = false; | |||
| this.applicationList = []; | |||
| this.getList(); | |||
| } | |||
| }, | |||
| } | |||
| </script> | |||
| @@ -57,7 +57,6 @@ | |||
| listFbf({deptId: this.$store.state.user.loginDeptId, translate_dict: 1}).then(response => { | |||
| if (response.rows.length > 0) { | |||
| this.form = response.rows[0]; | |||
| console.log(this.form); | |||
| } | |||
| }); | |||
| }, | |||