@@ -638,3 +638,20 @@ export function updateSeal2(data) { | |||||
}) | }) | ||||
} | } | ||||
//甲方合同网签 | |||||
export function contractFirstList(query) { | |||||
return request({ | |||||
url: '/transaction/contract/firstList', | |||||
method: 'get', | |||||
params: query | |||||
}) | |||||
} | |||||
//签名 | |||||
export function signFirst(data,id) { | |||||
return request({ | |||||
url: '/transaction/contract/sign/first/'+id, | |||||
method: 'post', | |||||
data: data | |||||
}) | |||||
} |
@@ -58,6 +58,7 @@ | |||||
:key="childrenItem.id" | :key="childrenItem.id" | ||||
:to="{name:childrenItem.menuUrl,query:{typeX:childrenItem.urlPara}}" | :to="{name:childrenItem.menuUrl,query:{typeX:childrenItem.urlPara}}" | ||||
class="nav_item n_13" | class="nav_item n_13" | ||||
v-if="childrenItem.menuIcon!=null" | |||||
:style="`background:url(${require('@/assets/images/sunVillage_info/' + childrenItem.menuIcon)}) no-repeat center top;background-size: 50%;`" | :style="`background:url(${require('@/assets/images/sunVillage_info/' + childrenItem.menuIcon)}) no-repeat center top;background-size: 50%;`" | ||||
> | > | ||||
{{childrenItem.menuName}} | {{childrenItem.menuName}} | ||||
@@ -69,27 +70,27 @@ | |||||
<div class="footer"> | <div class="footer"> | ||||
技术支持:北京农燊高科信息技术有限公司 | 技术支持:北京农燊高科信息技术有限公司 | ||||
</div> | </div> | ||||
<!-- <router-link :to="{name:'sunVillageInfoListContract',query:{typeX:'2'}}" class="nav_item n_13">党务公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListContract',query:{typeX:'3'}}" class="nav_item n_14">政务公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListFinance'}" class="nav_item n_1">财务公开榜</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListTourists'}" class="nav_item n_2">零工公开榜</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListRegister'}" class="nav_item n_8">零工登记</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoStatisticalReport'}" class="nav_item n_9">统计填报</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListIssues'}" class="nav_item n_3">重大事项</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListVote'}" class="nav_item n_5">发布投票</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListPhoto'}" class="nav_item n_11">村庄图公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListContract',query:{typeX:'1'}}" class="nav_item n_12">合同公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList'}" class="nav_item n_01">银行卡转账</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList2'}" class="nav_item n_02">信用卡还款</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList11'}" class="nav_item n_03">备付金支出</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList12'}" class="nav_item n_04">汇票支出</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageCollectionList'}" class="nav_item n_05">收款账户</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillagePaymentAccountList'}" class="nav_item n_06">付款账户</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageBankOfDepositList'}" class="nav_item n_07">开户行</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListBalanceRanking'}" class="nav_item n_4">余额表</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoDetailedLedger'}" class="nav_item n_10">明细账</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoFixedAssets'}" class="nav_item n_6">固定资产</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoInformation'}" class="nav_item n_7">合同信息</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListContract',query:{typeX:'2'}}" class="nav_item n_13">党务公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListContract',query:{typeX:'3'}}" class="nav_item n_14">政务公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListFinance'}" class="nav_item n_1">财务公开榜</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListTourists'}" class="nav_item n_2">零工公开榜</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListRegister'}" class="nav_item n_8">零工登记</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoStatisticalReport'}" class="nav_item n_9">统计填报</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListIssues'}" class="nav_item n_3">重大事项</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListVote'}" class="nav_item n_5">发布投票</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListPhoto'}" class="nav_item n_11">村庄图公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListContract',query:{typeX:'1'}}" class="nav_item n_12">合同公开</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList'}" class="nav_item n_01">银行卡转账</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList2'}" class="nav_item n_02">信用卡还款</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList11'}" class="nav_item n_03">备付金支出</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageApprovalList12'}" class="nav_item n_04">汇票支出</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageCollectionList'}" class="nav_item n_05">收款账户</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillagePaymentAccountList'}" class="nav_item n_06">付款账户</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageBankOfDepositList'}" class="nav_item n_07">开户行</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoListBalanceRanking'}" class="nav_item n_4">余额表</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoDetailedLedger'}" class="nav_item n_10">明细账</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoFixedAssets'}" class="nav_item n_6">固定资产</router-link>--> | |||||
<!-- <router-link :to="{name:'sunVillageInfoInformation'}" class="nav_item n_7">合同信息</router-link>--> | |||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
@@ -306,13 +307,10 @@ | |||||
margin:0 auto; | margin:0 auto; | ||||
} | } | ||||
.nav_list{ | .nav_list{ | ||||
margin-top: 3vh; | |||||
padding:0 38px; | |||||
&:nth-child(2){ | |||||
margin-top: 6vh; | margin-top: 6vh; | ||||
padding:0 38px; | |||||
&:nth-child(3){ | |||||
margin-top: 3vh; | |||||
} | |||||
&:nth-child(4){ | |||||
margin-top: 3vh; | |||||
} | } | ||||
.van-cell{ | .van-cell{ | ||||
background: transparent; | background: transparent; | ||||
@@ -23,13 +23,13 @@ | |||||
<div class="item"> | <div class="item"> | ||||
<div class="info"> | <div class="info"> | ||||
<div class="title"> | <div class="title"> | ||||
<i class="icon_box"></i> | |||||
<p class="news_title">居委会公章</p> | |||||
<img @click="deleteSeal" src="../../assets/images/sunVillage_info/signature_icon_07.png" width="30" alt="" style="margin-left: auto;display: block;"> | |||||
<!-- <img src="../../assets/images/sunVillage_info/signature_icon_08.png" width="30" alt="" style="margin-left: 5px;">--> | |||||
<van-uploader :after-read="addSeal"> | |||||
<img src="../../assets/images/sunVillage_info/signature_icon_09.png" width="30" alt="" style="margin-left: 5px;display: block;"> | |||||
</van-uploader> | |||||
<i class="icon_box"></i> | |||||
<p class="news_title">居委会公章</p> | |||||
<img v-if="seal!='/api'" @click="deleteSeal" src="../../assets/images/sunVillage_info/signature_icon_07.png" width="30" alt="" style="margin-left: auto;display: block;"> | |||||
<!-- <img src="../../assets/images/sunVillage_info/signature_icon_08.png" width="30" alt="" style="margin-left: 5px;">--> | |||||
<van-uploader :after-read="addSeal"> | |||||
<img src="../../assets/images/sunVillage_info/signature_icon_09.png" width="30" alt="" style="margin-left: 5px;display: block;"> | |||||
</van-uploader> | |||||
</div> | </div> | ||||
<div class="time"> | <div class="time"> | ||||
<img :src="seal" alt="" width="60%"> | <img :src="seal" alt="" width="60%"> | ||||
@@ -42,7 +42,7 @@ | |||||
<div class="title"> | <div class="title"> | ||||
<i class="icon_box"></i> | <i class="icon_box"></i> | ||||
<p class="news_title">经济组织公章</p> | <p class="news_title">经济组织公章</p> | ||||
<img @click="deleteSeal2" src="../../assets/images/sunVillage_info/signature_icon_07.png" width="30" alt="" style="margin-left: auto;display: block;"> | |||||
<img v-if="seal2!='/api'" @click="deleteSeal2" src="../../assets/images/sunVillage_info/signature_icon_07.png" width="30" alt="" style="margin-left: auto;display: block;"> | |||||
<!-- <img src="../../assets/images/sunVillage_info/signature_icon_08.png" width="30" alt="" style="margin-left: 5px;">--> | <!-- <img src="../../assets/images/sunVillage_info/signature_icon_08.png" width="30" alt="" style="margin-left: 5px;">--> | ||||
<van-uploader :after-read="addSeal2"> | <van-uploader :after-read="addSeal2"> | ||||
<img src="../../assets/images/sunVillage_info/signature_icon_09.png" width="30" alt="" style="margin-left: 5px;display: block;"> | <img src="../../assets/images/sunVillage_info/signature_icon_09.png" width="30" alt="" style="margin-left: 5px;display: block;"> | ||||
@@ -268,6 +268,7 @@ | |||||
font-size: 32px; | font-size: 32px; | ||||
align-items: center; | align-items: center; | ||||
height: 58px; | height: 58px; | ||||
justify-content: space-between; | |||||
.icon_box{ | .icon_box{ | ||||
width: 34px; | width: 34px; | ||||
display: block; | display: block; | ||||
@@ -8,16 +8,7 @@ | |||||
<div class="return_btn" @click="onClickLeft"></div> | <div class="return_btn" @click="onClickLeft"></div> | ||||
<!-- <div class="add_btn" @click="goAdd" v-show="showBtn"></div>--> | <!-- <div class="add_btn" @click="goAdd" v-show="showBtn"></div>--> | ||||
</div> | </div> | ||||
<!-- <div class="record_main">--> | |||||
<!-- <div class="record_det">--> | |||||
<!-- <div class="year_l" @click="tabShow"><i :class="{'icon':true , 'zk':!showTab , 'ss':showTab } "></i>{{queryParams.year == '' ? '全部': queryParams.year}}<span class="unit">{{queryParams.year == '' ? '': '年'}}</span></div>--> | |||||
<!-- <div class="total_r">共{{listLength}}条公告</div>--> | |||||
<!-- </div>--> | |||||
<!-- <div class="record_list" v-if="showTab">--> | |||||
<!-- <div :class="{'flex_block':true , 'current':queryParams.year == ''}" @click="tabClick('')">全部</div>--> | |||||
<!-- <div v-for="(item,index) in yearList" :key="index" :class="{'flex_block':true , 'current':queryParams.year == item}" @click="tabClick(item)">{{item}}</div>--> | |||||
<!-- </div>--> | |||||
<!-- </div>--> | |||||
<div class="list_main"> | <div class="list_main"> | ||||
<van-list | <van-list | ||||
v-model="loading" | v-model="loading" | ||||
@@ -26,30 +17,30 @@ | |||||
@load="getList" | @load="getList" | ||||
> | > | ||||
<!----1--> | <!----1--> | ||||
<van-swipe-cell v-for="(item,index) in 5" :key="index" > | |||||
<van-swipe-cell v-for="(item,index) in applicationList" :key="index" > | |||||
<div class="item" @click="goDetail(1)"> | <div class="item" @click="goDetail(1)"> | ||||
<div class="info"> | <div class="info"> | ||||
<div class="title"> | <div class="title"> | ||||
<i class="icon_box"></i> | |||||
<p class="news_title">ZC202306181836</p> | |||||
<p class="tips_mark">线上</p> | |||||
<p class="tips_mark2">双方待签</p> | |||||
<i class="icon_box" v-if="item.firstSigning==null"></i> | |||||
<i class="icon_box1" v-if="item.firstSigning!=null"></i> | |||||
<p class="news_title" :style="{'color': item.firstSigning!=null?'#2bc30c':'#eb1616'}">{{item.contractCode}}</p> | |||||
<p class="tips_mark" :style="{'color': item.firstSigning!=null?'#79bc29':'#f8a83d','background': item.firstSigning!=null?'#e8ffcd':'#ffedcd'}">{{item.signingMode}}</p> | |||||
<p class="tips_mark2" :style="{'background': item.firstSigning!=null?'#2bc30c':'#eb1616'}">{{item.signingStatus}}</p> | |||||
</div> | </div> | ||||
<div class="time"> | <div class="time"> | ||||
<p>张三租赁300亩土地合同</p> | |||||
<p style="color:#eb1616;font-weight: bold;"><span style="font-size: 12px;">¥</span>199.00</p> | |||||
<p>{{item.contractName}}</p> | |||||
<p style="color:#eb1616;font-weight: bold;"><span style="font-size: 12px;">¥</span>{{item.contractMoney.toFixed(2)}}</p> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<template #right> | <template #right> | ||||
<div class="operation"> | <div class="operation"> | ||||
<!-- delete 删除 edit编辑 view查看 list榜单 --> | <!-- delete 删除 edit编辑 view查看 list榜单 --> | ||||
<div class="opera_btn"> | |||||
<div class="opera_btn" style="margin-right: 10px;" v-if="!item.firstSigning" @click="openPopup(item.id)"> | |||||
<img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35"> | <img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35"> | ||||
<p>签名</p> | <p>签名</p> | ||||
</div> | </div> | ||||
<div class="opera_btn" style="margin: 0 10px;"> | |||||
<div class="opera_btn" style="margin-right: 10px;"> | |||||
<img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35"> | <img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35"> | ||||
<p>预览</p> | <p>预览</p> | ||||
</div> | </div> | ||||
@@ -60,82 +51,75 @@ | |||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-swipe-cell> | </van-swipe-cell> | ||||
<!-- <div class="operation">--> | |||||
<!-- <!– delete 删除 edit编辑 view查看 list榜单 –>--> | |||||
<!-- <div class="opera_btn edit">--> | |||||
<!-- <i class="icon "></i>--> | |||||
<!-- </div>--> | |||||
<!-- <div class="opera_btn delete">--> | |||||
<!-- <i class="icon"></i>--> | |||||
<!-- </div>--> | |||||
<!-- </div>--> | |||||
</van-list> | </van-list> | ||||
</div> | </div> | ||||
<!-- <div class="bottom_tips">--> | |||||
<!-- <span class="xs">已经到底啦</span>--> | |||||
<!-- </div>--> | |||||
<van-popup v-model="show" closeable round position="bottom" > | |||||
<van-cell-group style="width: 100%;overflow: hidden;padding-top: 10px;padding-bottom: 5%;"> | |||||
<div class="signature-box"> | |||||
<vue-esign | |||||
ref="esign" | |||||
class="mySign" | |||||
:width="500" | |||||
:height="225" | |||||
:isCrop="signature.isCrop" | |||||
:lineWidth="signature.lineWidth" | |||||
:lineColor="signature.lineColor" | |||||
:bgColor.sync="signature.bgColor" | |||||
/> | |||||
</div> | |||||
<div class="signature-footer"> | |||||
<van-button @click="handleGenerate" type="info" size="small">保存签字</van-button> | |||||
<van-button @click="handleReset" class="clearBtn" type="info" plain size="small">清空画板</van-button> | |||||
</div> | |||||
</van-cell-group> | |||||
</van-popup> | |||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { otherPublicList , otherRemove } from "@/api/sunVillage_info/fixedAssets"; | |||||
import Cookies from "js-cookie"; | |||||
import request from '@/utils/request' | |||||
import { contractFirstList , signFirst } from "@/api/sunVillage_info/fixedAssets"; | |||||
import vueEsign from "vue-esign"; | |||||
import signatureUploadSignature from "@/views/yinnong/signatureUploadSignature"; | |||||
export default { | export default { | ||||
name: "certificateList", | |||||
name: "sunVillageInfoListSignature", | |||||
components:{vueEsign,signatureUploadSignature}, | |||||
data() { | data() { | ||||
return { | return { | ||||
applicationList:[], | applicationList:[], | ||||
applicationListSecond:[], | |||||
assetStatusOptions:[], | |||||
otherGkTypeOptions:[], | |||||
auditStatus:[], | |||||
loading: false, | loading: false, | ||||
finished: false, | finished: false, | ||||
show: false, | show: false, | ||||
showTab: false, | |||||
fileList:[], | fileList:[], | ||||
listLength:'0', | listLength:'0', | ||||
searchInput:'', | |||||
queryParams:{ | queryParams:{ | ||||
pageNum:1, | pageNum:1, | ||||
pageSize:10, | pageSize:10, | ||||
orderByColumn:'openAt', | |||||
isAsc:'desc', | |||||
translate_dict:1, | translate_dict:1, | ||||
otherType:'' | |||||
}, | }, | ||||
uploadFiles1:[], | |||||
projectId:'', | |||||
projectIndex:'', | |||||
showBtn:true, | showBtn:true, | ||||
nowYear:new Date().getFullYear(), | |||||
yearList:[] | |||||
signatureImg:'', | |||||
//电子签名 | |||||
signature:{ | |||||
lineWidth: 6, // 画笔的线条粗细 | |||||
lineColor: "#000000", // 画笔的颜色 | |||||
bgColor: "", // 画布的背景颜色 | |||||
resultImg: "", // 最终画布生成的base64图片 | |||||
isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分 | |||||
}, | |||||
signaId:'', | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.houseGetDicts("other_gk_type").then((response) => { | |||||
this.otherGkTypeOptions = response.data; | |||||
}); | |||||
this.queryParams.bookId = Cookies.get('bookId'); | |||||
this.queryParams.deptId = Cookies.get('deptId'); | |||||
this.queryParams.otherType = this.$route.query.typeX; | |||||
if (this.$route.query.type == 'code'){ | if (this.$route.query.type == 'code'){ | ||||
this.showBtn = false; | this.showBtn = false; | ||||
} | } | ||||
document.title = this.$route.query.typeX=='1'?'合同公开':this.$route.query.typeX=='2'?'党务公开':this.$route.query.typeX=='3'?'政务公开':''; | |||||
}, | }, | ||||
methods: { | methods: { | ||||
getList(){ | getList(){ | ||||
var _this = this; | var _this = this; | ||||
console.log(_this.queryParams) | |||||
otherPublicList(_this.queryParams).then(response => { | |||||
_this.listLength = response.total; | |||||
response.rows.map(res=>{ | |||||
// res.pictureType = this.selectDictLabel(this.pictureTypeOptions, res.pictureType); | |||||
_this.applicationList.push(res); | |||||
}) | |||||
contractFirstList(_this.queryParams).then(response => { | |||||
_this.applicationList = response.rows; | |||||
if(_this.applicationList.length >= response.total){ | if(_this.applicationList.length >= response.total){ | ||||
_this.finished = true; | _this.finished = true; | ||||
@@ -146,79 +130,59 @@ | |||||
} | } | ||||
}); | }); | ||||
}, | }, | ||||
tabClick(year){ | |||||
this.queryParams.year = year ; | |||||
this.applicationList = []; | |||||
this.getList(); | |||||
}, | |||||
tabShow(){ | |||||
this.showTab = !this.showTab; | |||||
}, | |||||
/** 删除按钮操作 */ | |||||
handleDelete(row,index) { | |||||
let assetStatus = row.assetStatus ? row.assetStatus : data[0].assetStatus; | |||||
if (assetStatus === '2' || assetStatus === '3') { | |||||
this.$notify({ | |||||
message: "不允许删除已出售或已报废的资产", | |||||
type: "warning", | |||||
}); | |||||
return; | |||||
} | |||||
let useType = row.useType; | |||||
if(useType == 3) { | |||||
this.$notify({ | |||||
message: "出租或出借的资产不允许删除", | |||||
type: "warning", | |||||
}); | |||||
return ; | |||||
} | |||||
const ids = row.id || this.ids; | |||||
this.$dialog.alert( | |||||
{ | |||||
message:'是否确认删除固定资产?', | |||||
title:"警告", | |||||
confirmButtonText: "确定", | |||||
cancelButtonText: "取消", | |||||
} | |||||
) | |||||
.then(function () { | |||||
return delPermanent(ids); | |||||
}) | |||||
.then(() => { | |||||
this.applicationList.splice(index, 1); | |||||
this.$notify({ type: 'success', message: '删除成功' }); | |||||
}); | |||||
}, | |||||
goAdd(){ | |||||
this.$router.push({path: '/sunVillage_info/list_contract_add', query: {type: this.$route.query.typeX}}) | |||||
}, | |||||
goDetail(id){ | goDetail(id){ | ||||
this.$router.push({path:'/sunVillage_info/list_signature_add',query: {id:id,type:this.$route.query.typeX,showBtn:this.showBtn}}) | this.$router.push({path:'/sunVillage_info/list_signature_add',query: {id:id,type:this.$route.query.typeX,showBtn:this.showBtn}}) | ||||
}, | }, | ||||
goEdit(id){ | |||||
this.$router.push({path:'/sunVillage_info/list_contract_edit',query: {id:id,type:this.$route.query.typeX}}) | |||||
openPopup(id,url){ | |||||
this.show = true; | |||||
this.signaId = id; | |||||
}, | }, | ||||
goRanking(id,time){ | |||||
this.$router.push({path:'/sunVillage_info/list_tourists_ranking',query: {id:id,time:time}}) | |||||
signaImgFun(url){ | |||||
this.signatureImg = url; | |||||
// console.log(url) | |||||
}, | }, | ||||
goRemove(id,index){ | |||||
this.$dialog.alert({ | |||||
title: '提示', | |||||
message: '确认删除?', | |||||
showCancelButton:true, | |||||
}) | |||||
.then(() => { | |||||
otherRemove(id).then(response => { | |||||
this.$notify({ type: 'success', message: '删除成功' }); | |||||
this.applicationList.splice(index,1); | |||||
// 清空画板 | |||||
handleReset() { | |||||
this.$refs.esign.reset(); | |||||
}, | |||||
// 生成签字图 | |||||
handleGenerate() { | |||||
this.$refs.esign | |||||
.generate() // 使用生成器调用把签字的图片转换成为base64图片格式 | |||||
.then((res) => { | |||||
console.log(res) | |||||
this.signature.resultImg = res; | |||||
let wj = this.dataURLtoBlob(res); | |||||
let param = new FormData() // 创建form对象 | |||||
param.append('file', wj) // 通过append向form对象添加数据 | |||||
param.append('date', this.format(new Date(),'yyyy-MM-dd')) // 通过append向form对象添加数据 | |||||
signFirst(param,this.signaId).then(response => { | |||||
this.$notify({ type: 'success', message: '签字成功' }); | |||||
this.show = false; | |||||
}); | }); | ||||
}) | }) | ||||
.catch(() => { | |||||
// on cancel | |||||
}); | |||||
.catch((err) => { | |||||
// 画布没有签字时会执行这里提示一下 | |||||
this.$toast.fail('请签名后再保存签字'); | |||||
} | |||||
}); | |||||
}, | |||||
dataURLtoBlob (dataurl, filename = 'file') { | |||||
let arr = dataurl.split(',') | |||||
let mime = arr[0].match(/:(.*?);/)[1] | |||||
let suffix = mime.split('/')[1] | |||||
let bstr = atob(arr[1]) | |||||
let n = bstr.length | |||||
let u8arr = new Uint8Array(n) | |||||
while (n--) { | |||||
u8arr[n] = bstr.charCodeAt(n) | |||||
} | |||||
return new File([u8arr], `${filename}.${suffix}`, { | |||||
type: mime | |||||
}) | |||||
}, | |||||
}, | }, | ||||
} | } | ||||
</script> | </script> | ||||
@@ -337,13 +301,21 @@ | |||||
margin-right: 10px; | margin-right: 10px; | ||||
flex-shrink: 0; | flex-shrink: 0; | ||||
} | } | ||||
.icon_box1{ | |||||
width: 34px; | |||||
display: block; | |||||
height: 30px; | |||||
background: url('../../assets/images/sunVillage_info/signature_icon_01g.png') no-repeat; | |||||
background-size: 100% 100%; | |||||
margin-right: 10px; | |||||
flex-shrink: 0; | |||||
} | |||||
.news_title{ | .news_title{ | ||||
display: -webkit-box; | display: -webkit-box; | ||||
-webkit-box-orient: vertical; | -webkit-box-orient: vertical; | ||||
-webkit-line-clamp: 1; | -webkit-line-clamp: 1; | ||||
word-break: break-all; | word-break: break-all; | ||||
overflow: hidden; | overflow: hidden; | ||||
color: #eb1616; | |||||
} | } | ||||
.tips_mark{ | .tips_mark{ | ||||
background: #ffedcd; | background: #ffedcd; | ||||
@@ -458,5 +430,26 @@ | |||||
background: #e9e9e9; | background: #e9e9e9; | ||||
} | } | ||||
} | } | ||||
.signature-box{ | |||||
border:1px dashed #666; | |||||
margin:2px 20px; | |||||
} | |||||
.signature-footer{ | |||||
margin:15px 20px 0; | |||||
display: flex; | |||||
.clearBtn{ | |||||
margin-left: 15px; | |||||
} | |||||
} | |||||
.esigh-result{ | |||||
margin:15px 20px; | |||||
// height: 110px; | |||||
border:1px solid #666; | |||||
font-size: 0; | |||||
.imgs{ | |||||
width: 100%; | |||||
} | |||||
} | |||||
} | } | ||||
</style> | </style> |
@@ -6,23 +6,30 @@ | |||||
<div class="add_btn"></div> | <div class="add_btn"></div> | ||||
</div> | </div> | ||||
<div class="list_main"> | <div class="list_main"> | ||||
<van-field label="合同编号" placeholder="请输入合同编号" input-align="right" :border="false" /> | |||||
<van-field label="合同名称" placeholder="请输入合同名称" input-align="right" :border="false" /> | |||||
<van-field label="合同类别" placeholder="请输入合同类别" input-align="right" :border="false" /> | |||||
<van-field label="有效状态" placeholder="请输入有效状态" input-align="right" :border="false" /> | |||||
<van-field label="签订方式" placeholder="请输入签订方式" input-align="right" :border="false" /> | |||||
<van-field label="签订状态" placeholder="请输入签订状态" input-align="right" :border="false" /> | |||||
<van-field label="甲方" placeholder="请输入甲方" input-align="right" :border="false" /> | |||||
<van-field label="甲方签订日期" placeholder="请输入甲方签订日期" input-align="right" :border="false" /> | |||||
<van-field label="甲方签名" placeholder="请输入甲方签名" input-align="right" :border="false" /> | |||||
<van-field label="乙方" placeholder="请输入乙方" input-align="right" :border="false" /> | |||||
<van-field label="乙方签订日期" placeholder="请输入乙方签订日期" input-align="right" :border="false" /> | |||||
<van-field label="乙方签名" placeholder="请输入乙方签名" input-align="right" :border="false" /> | |||||
<van-field label="合同金额" placeholder="请输入合同金额" input-align="right" :border="false" /> | |||||
<van-field label="部署日期" placeholder="请输入部署日期" input-align="right" :border="false" /> | |||||
<van-field label="开始日期" placeholder="请输入开始日期" input-align="right" :border="false" /> | |||||
<van-field label="结束日期" placeholder="请输入结束日期" input-align="right" :border="false" /> | |||||
<van-field label="备注" placeholder="请输入备注" input-align="right" :border="false" /> | |||||
<van-divider>合同信息</van-divider> | |||||
<van-field label="合同编号" placeholder="合同编号" input-align="right" :border="false" /> | |||||
<van-field label="合同名称" placeholder="合同名称" input-align="right" :border="false" /> | |||||
<van-field label="合同类别" placeholder="合同类别" input-align="right" :border="false" /> | |||||
<van-field label="甲方" placeholder="甲方" input-align="right" :border="false" /> | |||||
<van-field label="乙方" placeholder="乙方" input-align="right" :border="false" /> | |||||
<van-field label="合同金额" placeholder="合同金额" input-align="right" :border="false" /> | |||||
<van-field label="登记日期" placeholder="登记日期" input-align="right" :border="false" /> | |||||
<van-field label="开始日期" placeholder="开始日期" input-align="right" :border="false" /> | |||||
<van-field label="结束日期" placeholder="结束日期" input-align="right" :border="false" /> | |||||
<van-field label="合同备注" placeholder="合同备注" input-align="right" :border="false" /> | |||||
<van-field label="是否有效" placeholder="是否有效" input-align="right" :border="false" /> | |||||
<van-field label="签订方式" placeholder="签订方式" input-align="right" :border="false" /> | |||||
<van-field label="签订状态" placeholder="签订状态" input-align="right" :border="false" /> | |||||
<van-divider>甲方信息</van-divider> | |||||
<van-field label="甲方已签" placeholder="甲方已签" input-align="right" :border="false" /> | |||||
<van-field label="甲方签字日期" placeholder="甲方签字日期" input-align="right" :border="false" /> | |||||
<van-field label="甲方签字" placeholder="甲方签字" input-align="right" :border="false" /> | |||||
<van-divider>乙方信息</van-divider> | |||||
<van-field label="乙方已签" placeholder="乙方已签" input-align="right" :border="false" /> | |||||
<van-field label="乙方签字日期" placeholder="乙方签字日期" input-align="right" :border="false" /> | |||||
<van-field label="乙方签字" placeholder="乙方签字" input-align="right" :border="false" /> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
@@ -65,8 +65,8 @@ export default { | |||||
}, | }, | ||||
methods:{ | methods:{ | ||||
getUser(){ | getUser(){ | ||||
getUserProfile().then(response => { | |||||
getUserProfile().then(response => { | |||||
const baseImgUrl = this.$store.getters.baseRoutingUrl; | const baseImgUrl = this.$store.getters.baseRoutingUrl; | ||||
this.signatureImg = baseImgUrl+response.data.electronicSignature | this.signatureImg = baseImgUrl+response.data.electronicSignature | ||||
if(baseImgUrl==''){ | if(baseImgUrl==''){ | ||||
@@ -109,12 +109,12 @@ export default { | |||||
this.signatureImg = baseImgUrl+content.esUrl; | this.signatureImg = baseImgUrl+content.esUrl; | ||||
} | } | ||||
}) | }) | ||||
}) | }) | ||||
.catch((err) => { | .catch((err) => { | ||||
// 画布没有签字时会执行这里提示一下 | // 画布没有签字时会执行这里提示一下 | ||||
this.$toast.fail('请签名后再生成签字图片'); | this.$toast.fail('请签名后再生成签字图片'); | ||||
}); | }); | ||||
}, | }, | ||||
dataURLtoBlob (dataurl, filename = 'file') { | dataURLtoBlob (dataurl, filename = 'file') { | ||||
@@ -130,7 +130,7 @@ export default { | |||||
return new File([u8arr], `${filename}.${suffix}`, { | return new File([u8arr], `${filename}.${suffix}`, { | ||||
type: mime | type: mime | ||||
}) | }) | ||||
}, | |||||
}, | |||||
} | } | ||||
} | } | ||||
@@ -158,4 +158,4 @@ export default { | |||||
width: 100%; | width: 100%; | ||||
} | } | ||||
} | } | ||||
</style> | |||||
</style> |