|
|
@ -1,16 +1,17 @@
|
|
|
|
<script setup>
|
|
|
|
<script setup>
|
|
|
|
|
|
|
|
import { showImagePreview } from 'vant';
|
|
|
|
import {ref,computed} from "vue";
|
|
|
|
import {ref,computed} from "vue";
|
|
|
|
import {useUserStore} from '@/stores/userStore.js'
|
|
|
|
import {useUserStore} from '@/stores/userStore.js'
|
|
|
|
import {storeToRefs} from "pinia";
|
|
|
|
import {storeToRefs} from "pinia";
|
|
|
|
import dayjs from "dayjs";
|
|
|
|
import dayjs from "dayjs";
|
|
|
|
import {showToast} from "vant";
|
|
|
|
import {showToast} from "vant";
|
|
|
|
import {save_register_info, send_code, upload_img} from "@/apis/index.js";
|
|
|
|
import {check_code, save_register_info, send_code, upload_img} from "@/apis/index.js";
|
|
|
|
import {areaList} from "@vant/area-data";
|
|
|
|
import {areaList} from "@vant/area-data";
|
|
|
|
import { cloneDeep } from 'lodash';
|
|
|
|
import { cloneDeep } from 'lodash';
|
|
|
|
import {useRouter} from "vue-router";
|
|
|
|
import {useRouter} from "vue-router";
|
|
|
|
const router = useRouter();
|
|
|
|
const router = useRouter();
|
|
|
|
const userStore = useUserStore()
|
|
|
|
const userStore = useUserStore()
|
|
|
|
const {submitReturnData,telNum,selectAddress,temSubmitReturnData} = storeToRefs(userStore);
|
|
|
|
const {submitReturnData,telNum,iDCardImage,temSubmitReturnData,idCardInfo} = storeToRefs(userStore);
|
|
|
|
const btnStatus=ref(0)
|
|
|
|
const btnStatus=ref(0)
|
|
|
|
const isCountingDown = ref(false);
|
|
|
|
const isCountingDown = ref(false);
|
|
|
|
const countdownInterval = ref(null);
|
|
|
|
const countdownInterval = ref(null);
|
|
|
@ -19,13 +20,13 @@ const timeLeft = ref(60);
|
|
|
|
const showBottom = ref(false)
|
|
|
|
const showBottom = ref(false)
|
|
|
|
const sendCodeApi=async ()=>{
|
|
|
|
const sendCodeApi=async ()=>{
|
|
|
|
const data={
|
|
|
|
const data={
|
|
|
|
TelNum:telNum.value
|
|
|
|
TelNum:submitReturnData.value.phoneNum
|
|
|
|
}
|
|
|
|
}
|
|
|
|
const res=await send_code(data)
|
|
|
|
const res=await send_code(data)
|
|
|
|
if (res.status===0){
|
|
|
|
if (res.status===0){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
const rightClick=async ()=>{
|
|
|
|
const saveInfo=async ()=>{
|
|
|
|
const res=await save_register_info(submitReturnData.value)
|
|
|
|
const res=await save_register_info(submitReturnData.value)
|
|
|
|
if (res.status===0){
|
|
|
|
if (res.status===0){
|
|
|
|
showToast({
|
|
|
|
showToast({
|
|
|
@ -34,6 +35,16 @@ const rightClick=async ()=>{
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
const rightClick=async ()=>{
|
|
|
|
|
|
|
|
const data={
|
|
|
|
|
|
|
|
telNum:submitReturnData.value.phoneNum,
|
|
|
|
|
|
|
|
code:code.value
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
const res=await check_code(data)
|
|
|
|
|
|
|
|
if (res.status===0){
|
|
|
|
|
|
|
|
saveInfo()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
const leftClick=()=>{
|
|
|
|
const leftClick=()=>{
|
|
|
|
switch (btnStatus.value){
|
|
|
|
switch (btnStatus.value){
|
|
|
|
case 0:
|
|
|
|
case 0:
|
|
|
@ -64,13 +75,20 @@ const afterRead = async (file) => {
|
|
|
|
submitReturnData.value.artistPhoto=res.data.ori_url
|
|
|
|
submitReturnData.value.artistPhoto=res.data.ori_url
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
const isWithinThreeMonths=(dateStr)=> {
|
|
|
|
|
|
|
|
const now = dayjs();
|
|
|
|
|
|
|
|
const targetDate = dayjs(dateStr);
|
|
|
|
|
|
|
|
const isEarlier = targetDate.isBefore(now);
|
|
|
|
|
|
|
|
const isWithinThreeMonths = now.diff(targetDate, 'month') < 3;
|
|
|
|
|
|
|
|
return isEarlier && isWithinThreeMonths;
|
|
|
|
|
|
|
|
}
|
|
|
|
const confirmAddress = (data) => {
|
|
|
|
const confirmAddress = (data) => {
|
|
|
|
submitReturnData.value.address=JSON.stringify(data.selectedOptions)
|
|
|
|
submitReturnData.value.address=JSON.stringify(data.selectedOptions)
|
|
|
|
showBottom.value = false
|
|
|
|
showBottom.value = false
|
|
|
|
}
|
|
|
|
}
|
|
|
|
const sendCode = async () => {
|
|
|
|
const sendCode = async () => {
|
|
|
|
if (!isCountingDown.value){
|
|
|
|
if (!isCountingDown.value){
|
|
|
|
if(!/^1[3-9]\d{9}$/.test(telNum.value)){
|
|
|
|
if(!/^1[3-9]\d{9}$/.test(submitReturnData.value.phoneNum)){
|
|
|
|
showToast({
|
|
|
|
showToast({
|
|
|
|
message:'请输入合规的手机号码',
|
|
|
|
message:'请输入合规的手机号码',
|
|
|
|
className:'particulars-detail-popup'
|
|
|
|
className:'particulars-detail-popup'
|
|
|
@ -91,7 +109,26 @@ const sendCode = async () => {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}, 1000);
|
|
|
|
}, 1000);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
const compareDate=(givenDate)=> {
|
|
|
|
|
|
|
|
const inputDate = dayjs(givenDate);
|
|
|
|
|
|
|
|
const now = dayjs();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (inputDate.isBefore(now)) {
|
|
|
|
|
|
|
|
return '*身份证已到期,请及时更换→→→';
|
|
|
|
|
|
|
|
} else if (inputDate.isBefore(now.add(3, 'month'))) {
|
|
|
|
|
|
|
|
return '*身份证即将到期,请及时更换→→→';
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
return ''
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
const goRouter=()=>{
|
|
|
|
const goRouter=()=>{
|
|
|
|
|
|
|
|
idCardInfo.value.realName=submitReturnData.value.artistName
|
|
|
|
|
|
|
|
idCardInfo.value.sex=submitReturnData.value.gender===1?'男':'女'
|
|
|
|
|
|
|
|
idCardInfo.value.iDNum=submitReturnData.value.idCard
|
|
|
|
|
|
|
|
idCardInfo.value.issueDate=submitReturnData.value.idCardStartDate
|
|
|
|
|
|
|
|
idCardInfo.value.expirationDate=submitReturnData.value.idCardEndDate
|
|
|
|
|
|
|
|
iDCardImage.value.front=submitReturnData.value.idCardPhoto
|
|
|
|
|
|
|
|
iDCardImage.value.back=submitReturnData.value.idCardBackPhoto
|
|
|
|
router.push(`/title-forward/replace-id-card`)
|
|
|
|
router.push(`/title-forward/replace-id-card`)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
</script>
|
|
|
@ -104,13 +141,13 @@ const goRouter=()=>{
|
|
|
|
<div class="wrap1">
|
|
|
|
<div class="wrap1">
|
|
|
|
<div class="wrap1_1">身份证人像面</div>
|
|
|
|
<div class="wrap1_1">身份证人像面</div>
|
|
|
|
<div class="wrap1_2"><img class="wrap1_2_1" :src="submitReturnData.idCardPhoto">
|
|
|
|
<div class="wrap1_2"><img class="wrap1_2_1" :src="submitReturnData.idCardPhoto">
|
|
|
|
<img class="wrap1_2_2" src="@/assets/images/zu1179@2x.png" alt="">
|
|
|
|
<img class="wrap1_2_2" @click="showImagePreview([submitReturnData.idCardPhoto])" src="@/assets/images/zu1179@2x.png" alt="">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="wrap1">
|
|
|
|
<div class="wrap1">
|
|
|
|
<div class="wrap1_1">身份证国徽面</div>
|
|
|
|
<div class="wrap1_1">身份证国徽面</div>
|
|
|
|
<div class="wrap1_2"><img class="wrap1_2_1" :src="submitReturnData.idCardBackPhoto">
|
|
|
|
<div class="wrap1_2"><img class="wrap1_2_1" :src="submitReturnData.idCardBackPhoto">
|
|
|
|
<img class="wrap1_2_2" src="@/assets/images/zu1179@2x.png" alt="">
|
|
|
|
<img class="wrap1_2_2" @click="showImagePreview([submitReturnData.idCardBackPhoto])" src="@/assets/images/zu1179@2x.png" alt="">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
@ -140,8 +177,8 @@ const goRouter=()=>{
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="content7">
|
|
|
|
<div class="content7" v-if="compareDate(submitReturnData.idCardEndDate)">
|
|
|
|
<div class="wrap1">*身份证即将到期/已到期,请及时更换→→→</div>
|
|
|
|
<div class="wrap1">{{compareDate(submitReturnData.idCardEndDate)}}</div>
|
|
|
|
<div class="wrap2" @click="goRouter">更换身份证</div>
|
|
|
|
<div class="wrap2" @click="goRouter">更换身份证</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="content4">
|
|
|
|
<div class="content4">
|
|
|
@ -151,7 +188,7 @@ const goRouter=()=>{
|
|
|
|
<img :src="submitReturnData.artistPhoto" alt="">
|
|
|
|
<img :src="submitReturnData.artistPhoto" alt="">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div v-show="btnStatus===0" class="wrap2_2">
|
|
|
|
<div v-show="btnStatus===0" class="wrap2_2">
|
|
|
|
<img src="@/assets/images/zu1181@2x.png" alt="">
|
|
|
|
<img src="@/assets/images/zu1181@2x.png" @click="showImagePreview([submitReturnData.artistPhoto])" alt="">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="wrap2_3" v-show="btnStatus===1">
|
|
|
|
<div class="wrap2_3" v-show="btnStatus===1">
|
|
|
|
<van-uploader :afterRead="afterRead">
|
|
|
|
<van-uploader :afterRead="afterRead">
|
|
|
|