@@ -682,3 +682,19 @@ export function contractGet(query,id) { | |||||
params:query | params:query | ||||
}) | }) | ||||
} | } | ||||
//线下合同附件列表 | |||||
export function contractFileList(id) { | |||||
return request({ | |||||
url: '/transaction/website/contractFileList/id/'+id, | |||||
method: 'get', | |||||
}) | |||||
} | |||||
//线上合同预览 | |||||
export function previewContractFile(id) { | |||||
return request({ | |||||
url: '/transaction/website/previewContractFile/id/'+id, | |||||
method: 'get', | |||||
}) | |||||
} |
@@ -254,6 +254,15 @@ export const constantRoutes = [ | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/user/signature/signatureDetail'], resolve) | component: (resolve) => require(['@/views/user/signature/signatureDetail'], resolve) | ||||
}, | }, | ||||
{ | |||||
path: '/user/signature/signaturePdf', | |||||
name: 'userSignaturePdf', | |||||
meta: { | |||||
title: '合同预览', | |||||
hidden: true, | |||||
}, | |||||
component: (resolve) => require(['@/views/user/signature/signaturePdf'], resolve) | |||||
}, | |||||
{ | { | ||||
path: '/accountSetting', | path: '/accountSetting', | ||||
name: 'accountSetting', | name: 'accountSetting', | ||||
@@ -3812,6 +3821,15 @@ export const constantRoutes = [ | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/sunVillage_info/list_signature_add'], resolve) | component: (resolve) => require(['@/views/sunVillage_info/list_signature_add'], resolve) | ||||
}, | }, | ||||
{ ////阳光村务(新)-- 合同网签 | |||||
path: '/sunVillage_info/list_signature_pdf', | |||||
name: 'sunVillageInfoListSignaturePdf', | |||||
meta: { | |||||
title: '合同预览', | |||||
hidden: true, | |||||
}, | |||||
component: (resolve) => require(['@/views/sunVillage_info/list_signature_pdf'], resolve) | |||||
}, | |||||
{ ////阳光村务(新)-- 村级公章 | { ////阳光村务(新)-- 村级公章 | ||||
path: '/sunVillage_info/list_official', | path: '/sunVillage_info/list_official', | ||||
name: 'sunVillageInfoListOfficial', | name: 'sunVillageInfoListOfficial', | ||||
@@ -36,22 +36,21 @@ | |||||
<template #right> | <template #right> | ||||
<div class="operation"> | <div class="operation"> | ||||
<!-- delete 删除 edit编辑 view查看 list榜单 --> | <!-- delete 删除 edit编辑 view查看 list榜单 --> | ||||
<div class="opera_btn" v-if="item.signingMode == '线上' && item.firstIsSign =='否' " @click="openPopup(item.id)"> | <div class="opera_btn" v-if="item.signingMode == '线上' && item.firstIsSign =='否' " @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;" v-if="item.signingMode == '线上' && item.attachement != null "> | |||||
<div class="opera_btn" v-if="item.signingMode == '线上' && item.attachement != null " @click="$router.push({path:'/sunVillage_info/list_signature_pdf',query: {id:item.id,type:$route.query.type}})"> | |||||
<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> | ||||
<div class="opera_btn" v-if="item.signingMode == '线上' && item.isArchive == '是' "> | <div class="opera_btn" v-if="item.signingMode == '线上' && item.isArchive == '是' "> | ||||
<a :href="'/api'+item.contractPdf" style="color: #333333"> | |||||
<a :href="'/api/profile/download'+item.contractPdf" style="color: #333333"> | |||||
<img src="../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | <img src="../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | ||||
<p>电子合同</p> | <p>电子合同</p> | ||||
</a> | </a> | ||||
</div> | </div> | ||||
<div class="opera_btn" v-if="item.signingMode == '线下' " @click="openPopupFile(item.attachement)"> | |||||
<div class="opera_btn" v-if="item.signingMode == '线下' " @click="openPopupFile(item.id)"> | |||||
<img src="../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | <img src="../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | ||||
<p>线下合同</p> | <p>线下合同</p> | ||||
</div> | </div> | ||||
@@ -85,14 +84,15 @@ | |||||
</van-popup> | </van-popup> | ||||
<!-- 附件弹出层 --> | <!-- 附件弹出层 --> | ||||
<van-popup v-model="showFile" round closeable position="bottom" :style="{ height: '30%' }" > | |||||
<van-uploader v-model="fileList" multiple disabled :deletable="false" :show-upload="false" /> | |||||
<van-popup v-model="showFile" round closeable position="bottom" :style="{ height: '40%' , padding: '5vh 2vh' }" > | |||||
<van-uploader v-if="fileList.length>0" v-model="fileList" multiple :deletable="false" :show-upload="false" /> | |||||
<van-empty v-else description="暂无附件" /> | |||||
</van-popup> | </van-popup> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { contractFirstList , signFirst } from "@/api/sunVillage_info/fixedAssets"; | |||||
import { contractFirstList , signFirst , contractFileList , previewContractFile } from "@/api/sunVillage_info/fixedAssets"; | |||||
import vueEsign from "vue-esign"; | import vueEsign from "vue-esign"; | ||||
import signatureUploadSignature from "@/views/yinnong/signatureUploadSignature"; | import signatureUploadSignature from "@/views/yinnong/signatureUploadSignature"; | ||||
import $ from "jquery"; | import $ from "jquery"; | ||||
@@ -125,7 +125,7 @@ | |||||
isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分 | isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分 | ||||
}, | }, | ||||
signaId:'', | signaId:'', | ||||
height:null | |||||
height:null, | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
@@ -159,17 +159,17 @@ | |||||
this.show = true; | this.show = true; | ||||
this.signaId = id; | this.signaId = id; | ||||
}, | }, | ||||
openPopupFile(file){ | |||||
openPopupFile(id){ | |||||
this.fileList = []; | |||||
this.showFile = true; | this.showFile = true; | ||||
console.log(file) | |||||
if (!file) return; | |||||
let fileArray = file.split(','); | |||||
fileArray.map(res=>{ | |||||
this.fileList.push({ | |||||
url: '/api'+res, | |||||
isImage: true | |||||
contractFileList(id).then(response => { | |||||
response.data.map(res=>{ | |||||
this.fileList.push({ | |||||
url: '/api'+res.fileUrl, | |||||
isImage: true | |||||
}) | |||||
}) | }) | ||||
}) | |||||
}); | |||||
}, | }, | ||||
signaImgFun(url){ | signaImgFun(url){ | ||||
this.signatureImg = url; | this.signatureImg = url; | ||||
@@ -407,6 +407,8 @@ | |||||
margin-left: 10PX; | margin-left: 10PX; | ||||
.opera_btn{ | .opera_btn{ | ||||
border-radius: 50%; | border-radius: 50%; | ||||
margin-left: 10PX; | |||||
&:first-child{margin: 0;} | |||||
&.delete{ | &.delete{ | ||||
background:#df0707; | background:#df0707; | ||||
margin-left: 10PX; | margin-left: 10PX; | ||||
@@ -0,0 +1,223 @@ | |||||
<template> | |||||
<div class="app-container"> | |||||
<div | |||||
class="header_main" | |||||
:style="`background-image:url(${require(showBtn?'@/assets/images/sunVillage_info/list_head.png':'@/assets/images/sunVillage_info/list_head_red.png')})`" | |||||
> | |||||
合同预览 | |||||
<div class="return_btn" @click="onClickLeft"></div> | |||||
<!-- <div class="add_btn" @click="goAdd" v-show="showBtn"></div>--> | |||||
</div> | |||||
<pdf v-for="item in numPages" :key="item" :src="url" :page="item" ref="pdf"></pdf> | |||||
</div> | |||||
</template> | |||||
<script> | |||||
import { } from "@/api/lawEnforcement/index"; | |||||
import pdf from 'vue-pdf' | |||||
import {previewContractFile} from "@/api/sunVillage_info/fixedAssets"; | |||||
export default { | |||||
components:{ | |||||
}, | |||||
name: "programmeDetail", | |||||
data() { | |||||
return { | |||||
url:'', | |||||
numPages: null, // pdf 总页数 | |||||
showBtn:true, | |||||
}; | |||||
}, | |||||
created() { | |||||
if (this.$route.query.type == 'code'){ | |||||
this.showBtn = false; | |||||
} | |||||
const id = this.$route.query.id; | |||||
const baseURL = process.env.VUE_APP_BASE_API; | |||||
previewContractFile(id).then(response => { | |||||
this.url = baseURL + response.msg; | |||||
let loadingTask = pdf.createLoadingTask(this.url) | |||||
loadingTask.promise.then(pdf => { | |||||
this.numPages = pdf.numPages | |||||
}) | |||||
}); | |||||
}, | |||||
methods: { | |||||
goBack(){ | |||||
window.history.go(-1) | |||||
} | |||||
}, | |||||
} | |||||
</script> | |||||
<style scoped lang="scss"> | |||||
.app-container { | |||||
} | |||||
/deep/ .van-collapse-item__content{ | |||||
padding: 0; | |||||
} | |||||
.cf{ | |||||
padding: 0 3%; | |||||
margin-top: 20PX; | |||||
margin-bottom: 20PX; | |||||
.van-row{ | |||||
background: #F0F3F5; | |||||
display: flex; | |||||
align-items: center; | |||||
.van-col{ | |||||
padding: 5PX 0; | |||||
font-size: 12PX!important; | |||||
text-align: center; | |||||
p{ | |||||
color: #1D6FE9; | |||||
text-align: left; | |||||
font-size: .4rem; | |||||
} | |||||
} | |||||
&:first-child{ | |||||
background: transparent; | |||||
} | |||||
} | |||||
} | |||||
.header_main{ | |||||
height: 116px; | |||||
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||||
background-size: 100% 100%; | |||||
position: fixed; | |||||
top: 0; | |||||
left: 0; | |||||
width: 100%; | |||||
font-size: 36px; | |||||
line-height: 116px; | |||||
text-align: center; | |||||
color: #fff; | |||||
position: relative; | |||||
.return_btn{ | |||||
width: 24px; | |||||
height: 43.2px; | |||||
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||||
background-size: 20px 36px; | |||||
position: absolute; | |||||
left: 38px; | |||||
top: 36px; | |||||
} | |||||
.add_btn{ | |||||
width: 56.4px; | |||||
height: 40.8px; | |||||
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||||
background-size: 47px 34px; | |||||
position: absolute; | |||||
right: 38px; | |||||
top: 36px; | |||||
} | |||||
} | |||||
/deep/ .van-radio--horizontal{ | |||||
margin-left: 0.32rem; | |||||
margin-right: 0; | |||||
} | |||||
.peopleList{ | |||||
padding: 0 3%; | |||||
text-align: left; | |||||
.van-row{ | |||||
border-bottom: 1px solid #dddddd; | |||||
display: flex; | |||||
align-items: center; | |||||
&:last-child{ | |||||
border: none; | |||||
} | |||||
.van-col--17{ | |||||
display: flex; | |||||
align-items: center; | |||||
p{ | |||||
margin-left: 10PX; | |||||
} | |||||
} | |||||
.van-col--7{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
p{ | |||||
color: #1D6FE9; | |||||
border: 1px solid #1D6FE9; | |||||
text-align: center; | |||||
border-radius: 15PX; | |||||
display: inline-block; | |||||
padding: 5px 15px; | |||||
} | |||||
} | |||||
.van-col{ | |||||
text-align: left; | |||||
font-size: 14PX; | |||||
color: #333333; | |||||
padding: 15PX 0; | |||||
img{ | |||||
display: block; | |||||
} | |||||
} | |||||
} | |||||
} | |||||
.main_title{ | |||||
font-size: 0.4rem; | |||||
color: #1D6FE9; | |||||
margin: 0.2rem 6%; | |||||
margin-top: 0; | |||||
position: relative; | |||||
} | |||||
.main_box{ | |||||
width: 96%; | |||||
margin: 0 auto; | |||||
border-radius: 10PX; | |||||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||||
overflow: hidden; | |||||
background-color: #FFF; | |||||
.van-icon{ | |||||
vertical-align: middle; | |||||
} | |||||
.custom-title{ | |||||
font-size: 17PX; | |||||
color: #333333; | |||||
vertical-align: middle; | |||||
line-height: 1; | |||||
position: relative; | |||||
} | |||||
.tap{ | |||||
color: #1D6FE9; | |||||
} | |||||
.bgBlue{ | |||||
display: block; | |||||
position: absolute; | |||||
width: 17PX; | |||||
height: 17PX; | |||||
border-radius: 50%; | |||||
background-color: rgba(29,111,233,0.26); | |||||
top: -2PX; | |||||
right: -8PX; | |||||
} | |||||
} | |||||
.submitButton{ | |||||
width: 40%; | |||||
margin: 0 auto; | |||||
background-image: linear-gradient(to right, #77A6EF , #2E79E9); | |||||
text-align: center; | |||||
color: #ffffff; | |||||
height: 70px; | |||||
line-height: 70px; | |||||
border-radius: 8PX; | |||||
margin-top: 25PX; | |||||
&:first-child{ | |||||
background-image: linear-gradient(to right, #21CAC3 , #17A8A2); | |||||
} | |||||
} | |||||
.submit_box{ | |||||
display: flex; | |||||
align-items: center; | |||||
justify-content: space-around; | |||||
} | |||||
.addFamily{ | |||||
position: absolute; | |||||
top: -2px; | |||||
right: 0; | |||||
border-radius: 50%; | |||||
} | |||||
</style> |
@@ -39,15 +39,17 @@ | |||||
<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;" v-if="item.signingMode == '线上' && item.attachement != null "> | |||||
<div class="opera_btn" style="margin: 0 10px;" v-if="item.signingMode == '线上' && item.attachement != null " @click="$router.push({path:'/user/signature/signaturePdf',query: {id:item.id}})"> | |||||
<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> | ||||
<div class="opera_btn" v-if="item.signingMode == '线上' && item.isArchive == '是' "> | <div class="opera_btn" v-if="item.signingMode == '线上' && item.isArchive == '是' "> | ||||
<img src="../../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | |||||
<p>电子合同</p> | |||||
<a :href="'/api/profile/download'+item.contractPdf" style="color: #333333"> | |||||
<img src="../../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | |||||
<p>电子合同</p> | |||||
</a> | |||||
</div> | </div> | ||||
<div class="opera_btn" v-if="item.signingMode == '线下' "> | |||||
<div class="opera_btn" v-if="item.signingMode == '线下' " @click="openPopupFile(item.id)"> | |||||
<img src="../../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | <img src="../../../assets/images/sunVillage_info/signature_icon_04.png" alt="" width="35"> | ||||
<p>线下合同</p> | <p>线下合同</p> | ||||
</div> | </div> | ||||
@@ -77,11 +79,17 @@ | |||||
</div> | </div> | ||||
</van-cell-group> | </van-cell-group> | ||||
</van-popup> | </van-popup> | ||||
<!-- 附件弹出层 --> | |||||
<van-popup v-model="showFile" round closeable position="bottom" :style="{ height: '40%' , padding: '5vh 2vh' }" > | |||||
<van-uploader v-if="fileList.length>0" v-model="fileList" multiple :deletable="false" :show-upload="false" /> | |||||
<van-empty v-else description="暂无附件" /> | |||||
</van-popup> | |||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { contractSecondList , signSecond } from "@/api/sunVillage_info/fixedAssets"; | |||||
import {contractFileList, contractSecondList, signSecond} from "@/api/sunVillage_info/fixedAssets"; | |||||
import vueEsign from "vue-esign"; | import vueEsign from "vue-esign"; | ||||
import signatureUploadSignature from "@/views/yinnong/signatureUploadSignature"; | import signatureUploadSignature from "@/views/yinnong/signatureUploadSignature"; | ||||
import $ from 'jquery' | import $ from 'jquery' | ||||
@@ -94,6 +102,7 @@ | |||||
loading: false, | loading: false, | ||||
finished: false, | finished: false, | ||||
show: false, | show: false, | ||||
showFile: false, | |||||
fileList:[], | fileList:[], | ||||
listLength:'0', | listLength:'0', | ||||
queryParams:{ | queryParams:{ | ||||
@@ -147,6 +156,18 @@ | |||||
this.show = true; | this.show = true; | ||||
this.signaId = id; | this.signaId = id; | ||||
}, | }, | ||||
openPopupFile(id){ | |||||
this.fileList = []; | |||||
this.showFile = true; | |||||
contractFileList(id).then(response => { | |||||
response.data.map(res=>{ | |||||
this.fileList.push({ | |||||
url: '/api'+res.fileUrl, | |||||
isImage: true | |||||
}) | |||||
}) | |||||
}); | |||||
}, | |||||
signaImgFun(url){ | signaImgFun(url){ | ||||
this.signatureImg = url; | this.signatureImg = url; | ||||
// console.log(url) | // console.log(url) | ||||
@@ -0,0 +1,218 @@ | |||||
<template> | |||||
<div class="app-container"> | |||||
<van-nav-bar | |||||
title="合同预览" | |||||
left-arrow | |||||
fixed | |||||
placeholder | |||||
@click-left="onClickLeft" | |||||
/> | |||||
<pdf v-for="item in numPages" :key="item" :src="url" :page="item" ref="pdf"></pdf> | |||||
</div> | |||||
</template> | |||||
<script> | |||||
import { createAssistPDF,createSurveyPDF,createPutrecordPDF,createOnrecordPDF,createSamplingPDF,createTreatPDF,createDecisionPDF,createEvidencePDF,createExecutePDF,createEndingPDF,createBreakPDF,createResumePDF } from "@/api/lawEnforcement/index"; | |||||
import pdf from 'vue-pdf' | |||||
import {previewContractFile} from "@/api/sunVillage_info/fixedAssets"; | |||||
export default { | |||||
components:{ | |||||
}, | |||||
name: "programmeDetail", | |||||
data() { | |||||
return { | |||||
url:'', | |||||
numPages: null, // pdf 总页数 | |||||
}; | |||||
}, | |||||
created() { | |||||
const id = this.$route.query.id; | |||||
const baseURL = process.env.VUE_APP_BASE_API; | |||||
previewContractFile(id).then(response => { | |||||
this.url = baseURL + response.msg; | |||||
let loadingTask = pdf.createLoadingTask(this.url) | |||||
loadingTask.promise.then(pdf => { | |||||
this.numPages = pdf.numPages | |||||
}) | |||||
}); | |||||
}, | |||||
methods: { | |||||
goBack(){ | |||||
window.history.go(-1) | |||||
} | |||||
}, | |||||
} | |||||
</script> | |||||
<style scoped lang="scss"> | |||||
.app-container { | |||||
} | |||||
/deep/ .van-collapse-item__content{ | |||||
padding: 0; | |||||
} | |||||
.cf{ | |||||
padding: 0 3%; | |||||
margin-top: 20PX; | |||||
margin-bottom: 20PX; | |||||
.van-row{ | |||||
background: #F0F3F5; | |||||
display: flex; | |||||
align-items: center; | |||||
.van-col{ | |||||
padding: 5PX 0; | |||||
font-size: 12PX!important; | |||||
text-align: center; | |||||
p{ | |||||
color: #1D6FE9; | |||||
text-align: left; | |||||
font-size: .4rem; | |||||
} | |||||
} | |||||
&:first-child{ | |||||
background: transparent; | |||||
} | |||||
} | |||||
} | |||||
.header_main{ | |||||
height: 116px; | |||||
background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||||
background-size: 100% 100%; | |||||
position: fixed; | |||||
top: 0; | |||||
left: 0; | |||||
width: 100%; | |||||
font-size: 36px; | |||||
line-height: 116px; | |||||
text-align: center; | |||||
color: #fff; | |||||
position: relative; | |||||
.return_btn{ | |||||
width: 24px; | |||||
height: 43.2px; | |||||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||||
background-size: 20px 36px; | |||||
position: absolute; | |||||
left: 38px; | |||||
top: 36px; | |||||
} | |||||
.add_btn{ | |||||
width: 56.4px; | |||||
height: 40.8px; | |||||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||||
background-size: 47px 34px; | |||||
position: absolute; | |||||
right: 38px; | |||||
top: 36px; | |||||
} | |||||
} | |||||
/deep/ .van-radio--horizontal{ | |||||
margin-left: 0.32rem; | |||||
margin-right: 0; | |||||
} | |||||
.peopleList{ | |||||
padding: 0 3%; | |||||
text-align: left; | |||||
.van-row{ | |||||
border-bottom: 1px solid #dddddd; | |||||
display: flex; | |||||
align-items: center; | |||||
&:last-child{ | |||||
border: none; | |||||
} | |||||
.van-col--17{ | |||||
display: flex; | |||||
align-items: center; | |||||
p{ | |||||
margin-left: 10PX; | |||||
} | |||||
} | |||||
.van-col--7{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
p{ | |||||
color: #1D6FE9; | |||||
border: 1px solid #1D6FE9; | |||||
text-align: center; | |||||
border-radius: 15PX; | |||||
display: inline-block; | |||||
padding: 5px 15px; | |||||
} | |||||
} | |||||
.van-col{ | |||||
text-align: left; | |||||
font-size: 14PX; | |||||
color: #333333; | |||||
padding: 15PX 0; | |||||
img{ | |||||
display: block; | |||||
} | |||||
} | |||||
} | |||||
} | |||||
.main_title{ | |||||
font-size: 0.4rem; | |||||
color: #1D6FE9; | |||||
margin: 0.2rem 6%; | |||||
margin-top: 0; | |||||
position: relative; | |||||
} | |||||
.main_box{ | |||||
width: 96%; | |||||
margin: 0 auto; | |||||
border-radius: 10PX; | |||||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||||
overflow: hidden; | |||||
background-color: #FFF; | |||||
.van-icon{ | |||||
vertical-align: middle; | |||||
} | |||||
.custom-title{ | |||||
font-size: 17PX; | |||||
color: #333333; | |||||
vertical-align: middle; | |||||
line-height: 1; | |||||
position: relative; | |||||
} | |||||
.tap{ | |||||
color: #1D6FE9; | |||||
} | |||||
.bgBlue{ | |||||
display: block; | |||||
position: absolute; | |||||
width: 17PX; | |||||
height: 17PX; | |||||
border-radius: 50%; | |||||
background-color: rgba(29,111,233,0.26); | |||||
top: -2PX; | |||||
right: -8PX; | |||||
} | |||||
} | |||||
.submitButton{ | |||||
width: 40%; | |||||
margin: 0 auto; | |||||
background-image: linear-gradient(to right, #77A6EF , #2E79E9); | |||||
text-align: center; | |||||
color: #ffffff; | |||||
height: 70px; | |||||
line-height: 70px; | |||||
border-radius: 8PX; | |||||
margin-top: 25PX; | |||||
&:first-child{ | |||||
background-image: linear-gradient(to right, #21CAC3 , #17A8A2); | |||||
} | |||||
} | |||||
.submit_box{ | |||||
display: flex; | |||||
align-items: center; | |||||
justify-content: space-around; | |||||
} | |||||
.addFamily{ | |||||
position: absolute; | |||||
top: -2px; | |||||
right: 0; | |||||
border-radius: 50%; | |||||
} | |||||
</style> |