@ -1,395 +1,417 @@ | |||
<template> | |||
<view class="registerShop"> | |||
<navbar :title="titleList[titleIndex]" leftClick @leftClick="$utils.navigateBack"/> | |||
<view class="frame"> | |||
<!--基本信息--> | |||
<view class="basicInfo"> | |||
<!--用户名--> | |||
<view class="item"> | |||
<view>{{ $t('components.username')}}</view> | |||
<view> | |||
<input v-model="form.userName" :placeholder="$t('components.enterUserName')" clearable></input> | |||
</view> | |||
</view> | |||
<!--密码--> | |||
<view class="item"> | |||
<view>{{ $t('components.password')}}</view> | |||
<view> | |||
<input v-model="form.password" password clearable :placeholder="$t('components.enterYourPassword')" clearable></input> | |||
</view> | |||
</view> | |||
<!--公司名称--> | |||
<view class="item"> | |||
<view>{{ $t('other.companyName')}}</view> | |||
<view> | |||
<input v-model="form.companyName" type="number" :placeholder="$t('other.enterCompanyName')" clearable></input> | |||
</view> | |||
</view> | |||
<!--税收编码--> | |||
<view class="item"> | |||
<view>{{ $t('other.taxCode')}}</view> | |||
<view> | |||
<input v-model="form.taxCode" :placeholder="$t('other.enterTaxCode')" clearable></input> | |||
</view> | |||
</view> | |||
<!--公司地址--> | |||
<view class="item"> | |||
<view>{{ $t('other.companyAddress')}}</view> | |||
<view> | |||
<input v-model="form.address" :placeholder="$t('other.enterCompanyAddress')" clearable></input> | |||
</view> | |||
</view> | |||
<!--联系电话--> | |||
<view class="item"> | |||
<view>{{ $t('components.lxPhone')}}</view> | |||
<view> | |||
<input v-model="form.phone" :placeholder="$t('components.plePhoneNumber')" clearable></input> | |||
</view> | |||
</view> | |||
<!----> | |||
<view class="item"> | |||
<view>{{ $t('other.companyAccount')}}</view> | |||
<view> | |||
<input v-model="form.bankAccount" :placeholder="$t('other.enterCompanyAccount')" clearable></input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view>{{ $t('components.bankName')}}</view> | |||
<view> | |||
<input v-model="form.bankNama" :placeholder="$t('components.enterBankName')" clearable></input> | |||
</view> | |||
</view> | |||
</view> | |||
<!--证件信息--> | |||
<view class="certificateInfo"> | |||
<!--营业执照--> | |||
<view class="certificateInfoItem"> | |||
<view class="title"> | |||
<span | |||
style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span> | |||
<span>{{ $t('components.businessLicense')}}</span> | |||
</view> | |||
<view class="upload"> | |||
<uv-upload | |||
:fileList="yyzzfileList" | |||
:maxCount="4" | |||
multiple | |||
width="150rpx" | |||
height="150rpx" | |||
@delete="(file) => deleteImage(0, file)" | |||
@afterRead="(file) => afterRead(0, file)" | |||
:previewFullImage="true"></uv-upload> | |||
</view> | |||
</view> | |||
<!--基本户信息--> | |||
<view class="certificateInfoItem"> | |||
<view class="title"> | |||
<span | |||
style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span> | |||
<span>{{ $t('components.basicAccountInfo')}}</span> | |||
</view> | |||
<view class="upload"> | |||
<uv-upload | |||
:fileList="jbhxxfileList" | |||
:maxCount="4" | |||
multiple | |||
width="150rpx" | |||
height="150rpx" | |||
@delete="(file) => deleteImage(1, file)" | |||
@afterRead="(file) => afterRead(1, file)" | |||
:previewFullImage="true"></uv-upload> | |||
</view> | |||
</view> | |||
<!--收款银行--> | |||
<view class="certificateInfoItem"> | |||
<view class="title"> | |||
<span | |||
style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span> | |||
<span>{{ $t('components.receivingBank')}}</span> | |||
</view> | |||
<view class="upload"> | |||
<uv-upload | |||
:fileList="skyhfileList" | |||
:maxCount="4" | |||
multiple | |||
width="150rpx" | |||
height="150rpx" | |||
@delete="(file) => deleteImage(2, file)" | |||
@afterRead="(file) => afterRead(2, file)" | |||
:previewFullImage="true"></uv-upload> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="bottom"> | |||
<view class="btns"> | |||
<!--申请审核--> | |||
<span @click="applyReview" class="sqsh"> | |||
{{ $t('components.submitReview') }} | |||
</span> | |||
<!--联系我们--> | |||
<span @click="contactUs" class="lxwm"> | |||
{{ $t('components.contactUs') }} | |||
</span> | |||
</view> | |||
<view class="others"> | |||
<!--注册须知--> | |||
<span @click="applyReview" class="zcxz"> | |||
{{ $t('components.registrationNotice') }} | |||
</span> | |||
<!--框架合同预览--> | |||
<span @click="contactUs" class="kjhtyl"> | |||
{{ $t('other.frameworkContractPreview') }} | |||
</span> | |||
</view> | |||
</view> | |||
<!-- 联系客服弹框 --> | |||
<customerServicePopup ref="customerServicePopup" /> | |||
</view> | |||
<view class="registerShop"> | |||
<navbar :title="titleList[titleIndex]" leftClick @leftClick="$utils.navigateBack" /> | |||
<view class="frame"> | |||
<!--基本信息--> | |||
<view class="basicInfo"> | |||
<!--用户名--> | |||
<view class="item"> | |||
<view>{{ $t('components.username')}}</view> | |||
<view> | |||
<input v-model="form.userName" :placeholder="$t('components.enterUserName')" clearable></input> | |||
</view> | |||
</view> | |||
<!--密码--> | |||
<view class="item"> | |||
<view>{{ $t('components.password')}}</view> | |||
<view> | |||
<input v-model="form.password" password clearable | |||
:placeholder="$t('components.enterYourPassword')" clearable></input> | |||
</view> | |||
</view> | |||
<!--公司名称--> | |||
<view class="item"> | |||
<view>{{ $t('other.companyName')}}</view> | |||
<view> | |||
<input v-model="form.companyName" type="number" :placeholder="$t('other.enterCompanyName')" | |||
clearable></input> | |||
</view> | |||
</view> | |||
<!--税收编码--> | |||
<view class="item"> | |||
<view>{{ $t('other.taxCode')}}</view> | |||
<view> | |||
<input v-model="form.taxCode" :placeholder="$t('other.enterTaxCode')" clearable></input> | |||
</view> | |||
</view> | |||
<!--公司地址--> | |||
<view class="item"> | |||
<view>{{ $t('other.companyAddress')}}</view> | |||
<view> | |||
<input v-model="form.address" :placeholder="$t('other.enterCompanyAddress')" clearable></input> | |||
</view> | |||
</view> | |||
<!--联系电话--> | |||
<view class="item"> | |||
<view>{{ $t('components.lxPhone')}}</view> | |||
<view> | |||
<input v-model="form.phone" :placeholder="$t('components.plePhoneNumber')" clearable></input> | |||
</view> | |||
</view> | |||
<!----> | |||
<view class="item"> | |||
<view>{{ $t('other.companyAccount')}}</view> | |||
<view> | |||
<input v-model="form.bankAccount" :placeholder="$t('other.enterCompanyAccount')" | |||
clearable></input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view>{{ $t('components.bankName')}}</view> | |||
<view> | |||
<input v-model="form.bankNama" :placeholder="$t('components.enterBankName')" clearable></input> | |||
</view> | |||
</view> | |||
</view> | |||
<!--证件信息--> | |||
<view class="certificateInfo"> | |||
<!--营业执照--> | |||
<view class="certificateInfoItem"> | |||
<view class="title"> | |||
<span | |||
style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span> | |||
<span>{{ $t('components.businessLicense')}}</span> | |||
</view> | |||
<view class="upload"> | |||
<uv-upload :fileList="yyzzfileList" :maxCount="4" multiple width="150rpx" height="150rpx" | |||
@delete="(file) => deleteImage(0, file)" @afterRead="(file) => afterRead(0, file)" | |||
:previewFullImage="true"></uv-upload> | |||
</view> | |||
</view> | |||
<!--基本户信息--> | |||
<view class="certificateInfoItem"> | |||
<view class="title"> | |||
<span | |||
style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span> | |||
<span>{{ $t('components.basicAccountInfo')}}</span> | |||
</view> | |||
<view class="upload"> | |||
<uv-upload :fileList="jbhxxfileList" :maxCount="4" multiple width="150rpx" height="150rpx" | |||
@delete="(file) => deleteImage(1, file)" @afterRead="(file) => afterRead(1, file)" | |||
:previewFullImage="true"></uv-upload> | |||
</view> | |||
</view> | |||
<!--收款银行--> | |||
<view class="certificateInfoItem"> | |||
<view class="title"> | |||
<span | |||
style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span> | |||
<span>{{ $t('components.receivingBank')}}</span> | |||
</view> | |||
<view class="upload"> | |||
<uv-upload :fileList="skyhfileList" :maxCount="4" multiple width="150rpx" height="150rpx" | |||
@delete="(file) => deleteImage(2, file)" @afterRead="(file) => afterRead(2, file)" | |||
:previewFullImage="true"></uv-upload> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="bottom"> | |||
<view class="btns"> | |||
<!--申请审核--> | |||
<span @click="applyReview" class="sqsh"> | |||
{{ $t('components.submitReview') }} | |||
</span> | |||
<!--联系我们--> | |||
<span @click="contactUs" class="lxwm"> | |||
{{ $t('components.contactUs') }} | |||
</span> | |||
</view> | |||
<view class="others"> | |||
<!--注册须知--> | |||
<span @click="applyReview" class="zcxz"> | |||
{{ $t('components.registrationNotice') }} | |||
</span> | |||
<!--框架合同预览--> | |||
<span @click="contactUs" class="kjhtyl"> | |||
{{ $t('other.frameworkContractPreview') }} | |||
</span> | |||
</view> | |||
</view> | |||
<!-- 联系客服弹框 --> | |||
<customerServicePopup ref="customerServicePopup" /> | |||
</view> | |||
</template> | |||
<script> | |||
import customerServicePopup from "@/components/config/customerServicePopup.vue"; | |||
export default { | |||
components: {customerServicePopup}, | |||
onLoad(option) { | |||
this.titleIndex = option.identity | |||
}, | |||
data() { | |||
return { | |||
titleIndex: 0, | |||
titleList: [ | |||
// 采购商注册 供应商注册 国内清关申请 | |||
this.$t('other.buyerRegistration'), | |||
this.$t('other.supplierRegistration'), | |||
this.$t('other.domesticCustomsClearanceApplication') | |||
], | |||
form: { | |||
"address": "", | |||
"auditStatus": 0, | |||
"bankAccount": "", | |||
"bankInfo": "", | |||
"bankNama": "", | |||
"basicAccount": "", | |||
"businessLicense": "", | |||
"companyName": "", | |||
"password": "", | |||
"phone": "", | |||
"role": 0, | |||
"taxCode": "", | |||
"userName": "" | |||
}, | |||
yyzzfileList: [], | |||
jbhxxfileList: [], | |||
skyhfileList: [], | |||
} | |||
}, | |||
methods: { | |||
// 申请审核 | |||
applyReview() { | |||
this.$api('roleOption',this.form, res => { | |||
if (res.code == 200) { | |||
uni.removeStorageSync('token') | |||
this.$store.state.userInfo = {} | |||
uni.redirectTo({ | |||
url: '/pages/index/index' | |||
}) | |||
} | |||
}) | |||
}, | |||
// 联系我们 | |||
contactUs() { | |||
console.log("打开客服弹框") | |||
this.$refs.customerServicePopup.open(); | |||
}, | |||
// 上传图片 | |||
afterRead(type, e) { | |||
let self = this | |||
e.file.forEach(file => { | |||
self.$Oss.ossUpload(file.url).then(url => { | |||
if (type == 0) { | |||
self.yyzzfileList.push({url}) | |||
} else if (type == 1) { | |||
self.jbhxxfileList.push({url}) | |||
} else if (type == 2) { | |||
self.skyhfileList.push({url}) | |||
} | |||
}) | |||
}) | |||
}, | |||
// 删除图片 | |||
deleteImage(type, e) { | |||
console.log(e, type, "===========") | |||
if (type == 0) { | |||
this.yyzzfileList.splice(e.index, 1) | |||
} else if (type == 1) { | |||
this.jbhxxfileList.splice(e.index, 1) | |||
} else if (type == 2) { | |||
this.skyhfileList.splice(e.index, 1) | |||
} | |||
}, | |||
} | |||
} | |||
import customerServicePopup from "@/components/config/customerServicePopup.vue"; | |||
export default { | |||
components: { | |||
customerServicePopup | |||
}, | |||
onLoad(option) { | |||
this.titleIndex = option.identity | |||
this.form.role = option.identity | |||
}, | |||
data() { | |||
return { | |||
titleIndex: 0, | |||
titleList: [ | |||
// 采购商注册 供应商注册 国内清关申请 | |||
this.$t('other.buyerRegistration'), | |||
this.$t('other.supplierRegistration'), | |||
this.$t('other.domesticCustomsClearanceApplication') | |||
], | |||
form: { | |||
"address": "", | |||
"auditStatus": 0, | |||
"bankAccount": "", | |||
"bankInfo": "", | |||
"bankNama": "", | |||
"basicAccount": "", | |||
"businessLicense": "", | |||
"companyName": "", | |||
"password": "", | |||
"phone": "", | |||
"role": 0, | |||
"taxCode": "", | |||
"userName": "" | |||
}, | |||
yyzzfileList: [],//营业执照 | |||
jbhxxfileList: [],//基本户信息 | |||
skyhfileList: [],//收款银行 | |||
} | |||
}, | |||
methods: { | |||
// 申请审核 | |||
applyReview() { | |||
let data = JSON.parse(JSON.stringify(this.form)) | |||
data.businessLicense = this.yyzzfileList.map((item) => item.url).join(",") | |||
data.basicAccount = this.jbhxxfileList.map((item) => item.url).join(",") | |||
data.bankInfo = this.skyhfileList.map((item) => item.url).join(",") | |||
if(this.$utils.verificationAll(data, { | |||
"userName": this.$t('components.enterUserName'), | |||
"password": this.$t('components.enterYourPassword'), | |||
"companyName": this.$t('other.enterCompanyName'), | |||
"taxCode": this.$t('other.enterTaxCode'), | |||
"address": this.$t('other.enterCompanyAddress'), | |||
"phone": this.$t('components.plePhoneNumber'), | |||
"bankAccount": this.$t('other.enterCompanyAccount'), | |||
"bankNama": this.$t('components.enterBankName'), | |||
"businessLicense": '请上传营业执照', | |||
"basicAccount": '请上传基本户信息照片', | |||
"bankInfo": '请上传收款银行照片', | |||
})){ | |||
return | |||
} | |||
this.$api(this.titleIndex == 2 ? | |||
'addCustoms' | |||
: 'roleOption', this.form, res => { | |||
if (res.code == 200) { | |||
uni.removeStorageSync('token') | |||
this.$store.state.userInfo = {} | |||
// uni.redirectTo({ | |||
// url: '/pages/index/index' | |||
// }) | |||
uni.showToast({ | |||
title: '提交成功!耐心等待审核', | |||
icon: 'none' | |||
}) | |||
} | |||
}) | |||
}, | |||
// 联系我们 | |||
contactUs() { | |||
console.log("打开客服弹框") | |||
this.$refs.customerServicePopup.open(); | |||
}, | |||
// 上传图片 | |||
afterRead(type, e) { | |||
let self = this | |||
e.file.forEach(file => { | |||
self.$Oss.ossUpload(file.url).then(url => { | |||
if (type == 0) { | |||
self.yyzzfileList.push({ | |||
url | |||
}) | |||
} else if (type == 1) { | |||
self.jbhxxfileList.push({ | |||
url | |||
}) | |||
} else if (type == 2) { | |||
self.skyhfileList.push({ | |||
url | |||
}) | |||
} | |||
}) | |||
}) | |||
}, | |||
// 删除图片 | |||
deleteImage(type, e) { | |||
console.log(e, type, "===========") | |||
if (type == 0) { | |||
this.yyzzfileList.splice(e.index, 1) | |||
} else if (type == 1) { | |||
this.jbhxxfileList.splice(e.index, 1) | |||
} else if (type == 2) { | |||
this.skyhfileList.splice(e.index, 1) | |||
} | |||
}, | |||
} | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.registerShop { | |||
.frame { | |||
height: 79vh; | |||
overflow: auto; | |||
.basicInfo { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 5rpx; | |||
background-color: #FFF; | |||
margin-top: 20rpx; | |||
padding: 20rpx; | |||
.item { | |||
display: flex; | |||
align-items: center; | |||
background-color: #FFF; | |||
height: 80rpx; | |||
// margin: 10rpx 0 0 0; | |||
padding: 10rpx 0 0 20rpx; | |||
> view:nth-of-type(1) { | |||
width: 30%; | |||
// font-weight: 700; | |||
} | |||
> view:nth-of-type(2) { | |||
width: 70%; | |||
border-radius: 10rpx; | |||
overflow: hidden; | |||
input { | |||
background-color: #f5f5f5; | |||
font-size: 28rpx; | |||
padding: 16rpx 8rpx 16rpx 15rpx; | |||
} | |||
} | |||
} | |||
} | |||
.certificateInfo { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 20rpx; | |||
background-color: #FFF; | |||
margin-top: 20rpx; | |||
padding: 20rpx; | |||
.certificateInfoItem { | |||
.title { | |||
display: flex; | |||
// padding-top: 40rpx; | |||
font-size: 30rpx; | |||
font-weight: 700; | |||
padding: 0 0 0 20rpx; | |||
> span:nth-of-type(1) { | |||
margin: 4rpx 0 0 8rpx; | |||
background-color: #FFF; | |||
} | |||
> span:nth-of-type(2) { | |||
margin: 0 0 0 8rpx; | |||
background-color: #FFF; | |||
} | |||
} | |||
.upload { | |||
margin: 5rpx 0 0 40rpx; | |||
} | |||
} | |||
} | |||
} | |||
.bottom { | |||
position: fixed; | |||
bottom: 10rpx; | |||
left: 0; | |||
right: 0; | |||
background-color: #FFF; | |||
.btns { | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
gap: 40rpx; | |||
.sqsh { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
width: 40%; | |||
height: 70rpx; | |||
border-radius: 40rpx; | |||
color: white; | |||
font-size: 28rpx; | |||
margin: 20rpx 10rpx 0 0; | |||
background: #293143; | |||
//margin-top: 20rpx; | |||
border-radius: 40rpx; | |||
} | |||
.lxwm { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
width: 40%; | |||
height: 70rpx; | |||
border-radius: 40rpx; | |||
color: #000000; | |||
font-size: 28rpx; | |||
margin: 20rpx 10rpx 0 0; | |||
background: #f2f2f2; | |||
//margin-top: 20rpx; | |||
border-radius: 40rpx; | |||
} | |||
} | |||
.others { | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
gap: 200rpx; | |||
color: #707070; | |||
font-size: 24rpx; | |||
.zcxz { | |||
text-decoration: underline; | |||
} | |||
.kjhtyl { | |||
text-decoration: underline; | |||
} | |||
} | |||
} | |||
} | |||
</style> | |||
.registerShop { | |||
.frame { | |||
height: 79vh; | |||
overflow: auto; | |||
.basicInfo { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 5rpx; | |||
background-color: #FFF; | |||
margin-top: 20rpx; | |||
padding: 20rpx; | |||
.item { | |||
display: flex; | |||
align-items: center; | |||
background-color: #FFF; | |||
height: 80rpx; | |||
// margin: 10rpx 0 0 0; | |||
padding: 10rpx 0 0 20rpx; | |||
>view:nth-of-type(1) { | |||
width: 30%; | |||
// font-weight: 700; | |||
} | |||
>view:nth-of-type(2) { | |||
width: 70%; | |||
border-radius: 10rpx; | |||
overflow: hidden; | |||
input { | |||
background-color: #f5f5f5; | |||
font-size: 28rpx; | |||
padding: 16rpx 8rpx 16rpx 15rpx; | |||
} | |||
} | |||
} | |||
} | |||
.certificateInfo { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 20rpx; | |||
background-color: #FFF; | |||
margin-top: 20rpx; | |||
padding: 20rpx; | |||
.certificateInfoItem { | |||
.title { | |||
display: flex; | |||
// padding-top: 40rpx; | |||
font-size: 30rpx; | |||
font-weight: 700; | |||
padding: 0 0 0 20rpx; | |||
>span:nth-of-type(1) { | |||
margin: 4rpx 0 0 8rpx; | |||
background-color: #FFF; | |||
} | |||
>span:nth-of-type(2) { | |||
margin: 0 0 0 8rpx; | |||
background-color: #FFF; | |||
} | |||
} | |||
.upload { | |||
margin: 5rpx 0 0 40rpx; | |||
} | |||
} | |||
} | |||
} | |||
.bottom { | |||
position: fixed; | |||
bottom: 10rpx; | |||
left: 0; | |||
right: 0; | |||
background-color: #FFF; | |||
.btns { | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
gap: 40rpx; | |||
.sqsh { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
width: 40%; | |||
height: 70rpx; | |||
border-radius: 40rpx; | |||
color: white; | |||
font-size: 28rpx; | |||
margin: 20rpx 10rpx 0 0; | |||
background: #293143; | |||
//margin-top: 20rpx; | |||
border-radius: 40rpx; | |||
} | |||
.lxwm { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
width: 40%; | |||
height: 70rpx; | |||
border-radius: 40rpx; | |||
color: #000000; | |||
font-size: 28rpx; | |||
margin: 20rpx 10rpx 0 0; | |||
background: #f2f2f2; | |||
//margin-top: 20rpx; | |||
border-radius: 40rpx; | |||
} | |||
} | |||
.others { | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
gap: 200rpx; | |||
color: #707070; | |||
font-size: 24rpx; | |||
.zcxz { | |||
text-decoration: underline; | |||
} | |||
.kjhtyl { | |||
text-decoration: underline; | |||
} | |||
} | |||
} | |||
} | |||
</style> |
@ -1,100 +1,107 @@ | |||
<template> | |||
<view> | |||
<view> | |||
<navbar :title="$t('pageTitle.selectIdentity')" | |||
:leftClick="!$route.query.back" @leftClick="$utils.navigateBack"/> | |||
<navbar :title="$t('pageTitle.selectIdentity')" :leftClick="!$route.query.back" | |||
@leftClick="$utils.navigateBack" /> | |||
<view class="container"> | |||
<view class="container"> | |||
<view class="title">{{ $t('components.selectIdentity') }}</view> | |||
<view class="button-group"> | |||
<!--供应商--> | |||
<view class="identity-button" @click="selectIdentity(0)"> | |||
<view class="identity-text"> {{ $t('other.iAmBuyer') }}</view> | |||
<view class="identity-icon"> | |||
<img src="../../static/image/index/5.png" style="width: 100%; height: 100%;"> | |||
</view> | |||
</view> | |||
<!--采购--> | |||
<view class="identity-button" @click="selectIdentity(1)"> | |||
<view class="identity-text"> {{ $t('other.iAmSupplier') }}</view> | |||
<view class="identity-icon"> | |||
<img src="../../static/image/index/6.png" style="width: 100%; height: 100%;"> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="title">{{ $t('components.selectIdentity') }}</view> | |||
<view class="button-group"> | |||
<!--供应商--> | |||
<view class="identity-button" @click="selectIdentity(0)"> | |||
<view class="identity-text"> {{ $t('other.iAmBuyer') }}</view> | |||
<view class="identity-icon"> | |||
<img src="../../static/image/index/5.png" style="width: 100%; height: 100%;"> | |||
</view> | |||
</view> | |||
<!--采购--> | |||
<view class="identity-button" @click="selectIdentity(1)"> | |||
<view class="identity-text"> {{ $t('other.iAmSupplier') }}</view> | |||
<view class="identity-icon"> | |||
<img src="../../static/image/index/6.png" style="width: 100%; height: 100%;"> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</template> | |||
<script> | |||
import {mapGetters} from 'vuex' | |||
import { | |||
mapGetters | |||
} from 'vuex' | |||
export default { | |||
computed: { | |||
...mapGetters(['userShop', "userInfo"]), | |||
}, | |||
methods: { | |||
selectIdentity(identity) { | |||
// if (userInfo) | |||
uni.navigateTo({ | |||
url: `/pages_order/auth/registerShop?identity=${identity}` | |||
}) | |||
}, | |||
} | |||
} | |||
export default { | |||
computed: { | |||
...mapGetters(['userShop', "userInfo", 'buy', 'shopData']), | |||
}, | |||
methods: { | |||
selectIdentity(identity) { | |||
// if (userInfo) | |||
if (identity == 0 && this.buy) { | |||
this.$store.commit('setShop', false) | |||
} else if (identity == 1 && this.shopData) { | |||
this.$store.commit('setShop', true) | |||
} else { | |||
uni.navigateTo({ | |||
url: `/pages_order/auth/registerShop?identity=${identity}` | |||
}) | |||
} | |||
}, | |||
} | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
* { | |||
box-sizing: border-box; | |||
} | |||
* { | |||
box-sizing: border-box; | |||
} | |||
.container { | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
//height: 100vh; | |||
background-color: #f5f5f5; | |||
.container { | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
//height: 100vh; | |||
background-color: #f5f5f5; | |||
.title { | |||
font-size: 40rpx; | |||
color: #333; | |||
margin: 80rpx 0; | |||
} | |||
.title { | |||
font-size: 40rpx; | |||
color: #333; | |||
margin: 80rpx 0; | |||
} | |||
.button-group { | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
.button-group { | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
width: 100vw; | |||
//padding: 0 20px; | |||
width: 100vw; | |||
//padding: 0 20px; | |||
.identity-button { | |||
display: flex; | |||
align-items: center; | |||
justify-content: space-between; | |||
width: 80%; | |||
margin-bottom: 40rpx; | |||
padding: 40rpx 50rpx; | |||
background-color: #2d2f59; | |||
border-radius: 20rpx; | |||
color: white; | |||
.identity-button { | |||
display: flex; | |||
align-items: center; | |||
justify-content: space-between; | |||
width: 80%; | |||
margin-bottom: 40rpx; | |||
padding: 40rpx 50rpx; | |||
background-color: #2d2f59; | |||
border-radius: 20rpx; | |||
color: white; | |||
.identity-text { | |||
font-size: 40rpx; | |||
} | |||
.identity-text { | |||
font-size: 40rpx; | |||
} | |||
.identity-icon { | |||
width: 130rpx; | |||
height: 130rpx; | |||
} | |||
} | |||
} | |||
} | |||
.identity-icon { | |||
width: 130rpx; | |||
height: 130rpx; | |||
} | |||
} | |||
} | |||
} | |||
</style> |
@ -1,221 +1,239 @@ | |||
<template> | |||
<view class="page"> | |||
<navbar :title="$t('components.helpFeedback')" leftClick @leftClick="$utils.navigateBack"/> | |||
<view class="frame"> | |||
<!--帮助与反馈--> | |||
<view class="helpFeedback"> | |||
<view class="title"> {{ $t('components.helpAndFeedback') }} <span style="color: red;">*</span></view> | |||
<view class="desc"> | |||
<textarea :placeholder="$t('components.pleaseSubmit')"/> | |||
</view> | |||
</view> | |||
<!--问题截图--> | |||
<view class="problemImg"> | |||
<view class="title">{{ $t('components.screenshot') }} <span style="color: red;">*</span></view> | |||
<view class="img"> | |||
<uv-upload | |||
:fileList="fileList" | |||
:maxCount="5" | |||
multiple | |||
width="150rpx" | |||
height="150rpx" | |||
@delete="deleteImage" | |||
@afterRead="afterRead" | |||
:previewFullImage="true"> | |||
</uv-upload> | |||
</view> | |||
</view> | |||
<!--联系方式--> | |||
<view class="name_phone"> | |||
<view class="title">{{ $t('components.contactInfo') }} <span style="color: red;">*</span></view> | |||
<view class="items"> | |||
<view class="item"> | |||
<view>{{ $t('components.contactName') }}</view> | |||
<view> | |||
<input :placeholder="$t('components.enterContactName')" clearable></input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view>{{ $t('components.lxPhone') }}</view> | |||
<view> | |||
<input :placeholder="$t('components.plePhoneNumber')" clearable></input> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!--提交反馈--> | |||
<view class="btns"> | |||
<view @click="submitFeedback" class="btn"> | |||
{{ $t('components.submitFeedback') }} | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<view class="page"> | |||
<navbar :title="$t('components.helpFeedback')" leftClick @leftClick="$utils.navigateBack" /> | |||
<view class="frame"> | |||
<!--帮助与反馈--> | |||
<view class="helpFeedback"> | |||
<view class="title"> {{ $t('components.helpAndFeedback') }} <span style="color: red;">*</span></view> | |||
<view class="desc"> | |||
<textarea :placeholder="$t('components.pleaseSubmit')" v-model="form.content"/> | |||
</view> | |||
</view> | |||
<!--问题截图--> | |||
<view class="problemImg"> | |||
<view class="title">{{ $t('components.screenshot') }} <span style="color: red;">*</span></view> | |||
<view class="img"> | |||
<uv-upload :fileList="fileList" :maxCount="5" multiple width="150rpx" height="150rpx" | |||
@delete="deleteImage" @afterRead="afterRead" :previewFullImage="true"> | |||
</uv-upload> | |||
</view> | |||
</view> | |||
<!--联系方式--> | |||
<view class="name_phone"> | |||
<view class="title">{{ $t('components.contactInfo') }} <span style="color: red;">*</span></view> | |||
<view class="items"> | |||
<view class="item"> | |||
<view>{{ $t('components.contactName') }}</view> | |||
<view> | |||
<input :placeholder="$t('components.enterContactName')" clearable v-model="form.userName"></input> | |||
</view> | |||
</view> | |||
<view class="item"> | |||
<view>{{ $t('components.lxPhone') }}</view> | |||
<view> | |||
<input :placeholder="$t('components.plePhoneNumber')" clearable v-model="form.userPhone"></input> | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!--提交反馈--> | |||
<view class="btns"> | |||
<view @click="submitFeedback" class="btn"> | |||
{{ $t('components.submitFeedback') }} | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
</template> | |||
<script> | |||
import topbar from "@/components/base/topbar.vue"; | |||
import tabber from "@/components/base/tabbar.vue"; | |||
export default { | |||
name: "helpFeedback", | |||
components: {tabber, topbar}, | |||
data() { | |||
return { | |||
fileList: [], | |||
form: { | |||
"content": "", | |||
"proofImg": "", | |||
"userName": "", | |||
"userPhone": "" | |||
} | |||
} | |||
}, | |||
methods: { | |||
// 提交反馈 | |||
submitFeedback() { | |||
this.form.proofImg = this.fileList.join(",") | |||
this.$api('addSuggest', this.form, res => { | |||
if (res.code === 200) { | |||
uni.showToast({ | |||
title: '', | |||
icon: 'success', | |||
duration: 2000 | |||
}) | |||
setTimeout(() => { | |||
uni.navigateBack(-1) | |||
}, 1000) | |||
} | |||
}) | |||
}, | |||
deleteImage(e) { | |||
this.fileList.splice(e.index, 1) | |||
}, | |||
afterRead(e) { | |||
let self = this | |||
e.file.forEach(file => { | |||
self.$Oss.ossUpload(file.url).then(url => { | |||
self.fileList.push({ | |||
url | |||
}) | |||
}) | |||
}) | |||
}, | |||
}, | |||
} | |||
import topbar from "@/components/base/topbar.vue"; | |||
import tabber from "@/components/base/tabbar.vue"; | |||
export default { | |||
name: "helpFeedback", | |||
components: { | |||
tabber, | |||
topbar | |||
}, | |||
data() { | |||
return { | |||
fileList: [], | |||
form: { | |||
"content": "", | |||
"proofImg": "", | |||
"userName": "", | |||
"userPhone": "" | |||
} | |||
} | |||
}, | |||
methods: { | |||
// 提交反馈 | |||
// submitFeedback() { | |||
// this.form.proofImg = this.fileList.join(",") | |||
// this.$api('addSuggest', this.form, res => { | |||
// if (res.code === 200) { | |||
// uni.showToast({ | |||
// title: '', | |||
// icon: 'success', | |||
// duration: 2000 | |||
// }) | |||
// setTimeout(() => { | |||
// uni.navigateBack(-1) | |||
// }, 1000) | |||
// } | |||
// }) | |||
// }, | |||
submitFeedback(){ | |||
let data = JSON.parse(JSON.stringify(this.form)) | |||
data.proofImg = this.fileList.map((item) => item.url).join(",") | |||
if(this.$utils.verificationAll(data, { | |||
content : this.$t('components.pleaseSubmit'),//问题和意见 | |||
proofImg : this.$t('components.screenshot'),// | |||
userName : this.$t('components.enterContactName'),// | |||
userPhone : this.$t('components.plePhoneNumber'),//手机号码 | |||
})){ | |||
return | |||
} | |||
this.$api('addSuggest', data, res => { | |||
if(res.code == 200){ | |||
uni.showToast({ | |||
title: res.message, | |||
icon:'none' | |||
}) | |||
setTimeout(uni.navigateBack, 800, -1) | |||
} | |||
}) | |||
}, | |||
deleteImage(e) { | |||
this.fileList.splice(e.index, 1) | |||
}, | |||
afterRead(e) { | |||
let self = this | |||
e.file.forEach(file => { | |||
self.$Oss.ossUpload(file.url).then(url => { | |||
self.fileList.push({ | |||
url | |||
}) | |||
}) | |||
}) | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.page { | |||
height: 100vh; | |||
background-color: #f2f5f5; | |||
.frame { | |||
padding: 40rpx; | |||
display: flex; | |||
flex-direction: column; | |||
justify-content: center; | |||
gap: 40rpx; | |||
.helpFeedback { | |||
.title { | |||
} | |||
.desc { | |||
margin-top: 20rpx; | |||
height: 300rpx; | |||
border-radius: 40rpx; | |||
overflow: hidden; | |||
padding: 20rpx; | |||
font-size: 28rpx; | |||
background-color: #fff; | |||
} | |||
} | |||
.problemImg { | |||
.img { | |||
margin-top: 20rpx; | |||
height: 150rpx; | |||
border-radius: 40rpx; | |||
overflow: hidden; | |||
padding: 20rpx; | |||
font-size: 28rpx; | |||
background-color: #fff; | |||
} | |||
} | |||
.name_phone { | |||
.title { | |||
} | |||
.items { | |||
margin-top: 20rpx; | |||
.item { | |||
display: flex; | |||
align-items: center; | |||
background-color: #FFF; | |||
height: 80rpx; | |||
padding: 10rpx 0 0 20rpx; | |||
border-bottom: 1px solid #efefef; | |||
> view:nth-of-type(1) { | |||
width: 30%; | |||
// font-weight: 700; | |||
} | |||
> view:nth-of-type(2) { | |||
width: 70%; | |||
border-radius: 10rpx; | |||
overflow: hidden; | |||
input { | |||
background-color: #FFF; | |||
font-size: 28rpx; | |||
padding: 16rpx 8rpx 16rpx 15rpx; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
.btns { | |||
width: 100%; | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
gap: 20rpx; | |||
.btn { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
width: 500rpx; | |||
height: 70rpx; | |||
border-radius: 40rpx; | |||
color: #FFF; | |||
font-size: 28rpx; | |||
margin: 20rpx 10rpx 0 0; | |||
background: $uni-color; | |||
//margin-top: 20rpx; | |||
border-radius: 40rpx; | |||
} | |||
} | |||
} | |||
} | |||
.page { | |||
height: 100vh; | |||
background-color: #f2f5f5; | |||
.frame { | |||
padding: 40rpx; | |||
display: flex; | |||
flex-direction: column; | |||
justify-content: center; | |||
gap: 40rpx; | |||
.helpFeedback { | |||
.title {} | |||
.desc { | |||
margin-top: 20rpx; | |||
height: 300rpx; | |||
border-radius: 40rpx; | |||
overflow: hidden; | |||
padding: 20rpx; | |||
font-size: 28rpx; | |||
background-color: #fff; | |||
} | |||
} | |||
.problemImg { | |||
.img { | |||
margin-top: 20rpx; | |||
height: 150rpx; | |||
border-radius: 40rpx; | |||
overflow: hidden; | |||
padding: 20rpx; | |||
font-size: 28rpx; | |||
background-color: #fff; | |||
} | |||
} | |||
.name_phone { | |||
.title {} | |||
.items { | |||
margin-top: 20rpx; | |||
.item { | |||
display: flex; | |||
align-items: center; | |||
background-color: #FFF; | |||
height: 80rpx; | |||
padding: 10rpx 0 0 20rpx; | |||
border-bottom: 1px solid #efefef; | |||
>view:nth-of-type(1) { | |||
width: 30%; | |||
// font-weight: 700; | |||
} | |||
>view:nth-of-type(2) { | |||
width: 70%; | |||
border-radius: 10rpx; | |||
overflow: hidden; | |||
input { | |||
background-color: #FFF; | |||
font-size: 28rpx; | |||
padding: 16rpx 8rpx 16rpx 15rpx; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
.btns { | |||
width: 100%; | |||
display: flex; | |||
flex-direction: column; | |||
align-items: center; | |||
justify-content: center; | |||
gap: 20rpx; | |||
.btn { | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
width: 500rpx; | |||
height: 70rpx; | |||
border-radius: 40rpx; | |||
color: #FFF; | |||
font-size: 28rpx; | |||
margin: 20rpx 10rpx 0 0; | |||
background: $uni-color; | |||
//margin-top: 20rpx; | |||
border-radius: 40rpx; | |||
} | |||
} | |||
} | |||
} | |||
</style> |
@ -1,138 +1,180 @@ | |||
<template> | |||
<view class="page"> | |||
<navbar :title="$t('pageTitle.systemSettings')" leftClick @leftClick="$utils.navigateBack"/> | |||
<view class="frame"> | |||
<view class="content" v-for="(item, index) in list" :key="index"> | |||
<view class="title">{{ item.title }}</view> | |||
<view class="item" v-for="(item2, index) in item.itemList" :key="index" @click="tapItem(item2, index)"> | |||
<view class="key"> | |||
<view class="img"> | |||
<img :src="item2.leftIcon" style="width: 100%; height: 100%;"/> | |||
</view> | |||
<view class="text"> | |||
{{ item2.text }} | |||
</view> | |||
</view> | |||
<view class="value"> | |||
{{ item.rightIcon }} | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 语言切换 --> | |||
<!--<view style="padding: 20rpx;"--> | |||
<!-- @click="$refs.changeLanguage.open()">--> | |||
<!-- {{ $t('pages.index.index.language') }}--> | |||
<!--</view>--> | |||
<changeLanguage ref="changeLanguage"/> | |||
</view> | |||
<view class="page"> | |||
<navbar :title="$t('pageTitle.systemSettings')" leftClick @leftClick="$utils.navigateBack" /> | |||
<view class="frame"> | |||
<view class="content" v-for="(item, index) in list" :key="index"> | |||
<view class="title">{{ item.title }}</view> | |||
<view class="item" v-for="(item2, index) in item.itemList" :key="index" @click="tapItem(item2, index)"> | |||
<view class="key"> | |||
<view class="img"> | |||
<img :src="item2.leftIcon" style="width: 100%; height: 100%;" /> | |||
</view> | |||
<view class="text"> | |||
{{ item2.text }} | |||
</view> | |||
</view> | |||
<view class="value"> | |||
{{ item.rightIcon }} | |||
</view> | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 语言切换 --> | |||
<!--<view style="padding: 20rpx;"--> | |||
<!-- @click="$refs.changeLanguage.open()">--> | |||
<!-- {{ $t('pages.index.index.language') }}--> | |||
<!--</view>--> | |||
<changeLanguage ref="changeLanguage" /> | |||
</view> | |||
</template> | |||
<script> | |||
import topbar from "@/components/base/topbar.vue"; | |||
import tabber from "@/components/base/tabbar.vue"; | |||
import ChangeLanguage from "@/components/base/changeLanguage.vue"; | |||
import {navigateTo} from "@/utils/utils"; | |||
export default { | |||
name: "systemSet", | |||
components: {ChangeLanguage, tabber, topbar}, | |||
data() { | |||
return { | |||
list: [ | |||
{ | |||
title: `${this.$t('pageTitle.accountSetting')}`, | |||
itemList: [ | |||
// text: `${this.$t('pageTitle.switchAccount')}` | |||
{leftIcon: "../../static/image/center/1.svg", text: `${this.$t('pageTitle.switchAccount')}`, rightIcon: ">"}, | |||
{leftIcon: "../../static/image/center/2.svg", text: `${this.$t('pageTitle.changePassword')}`, rightIcon: ">"}, | |||
{leftIcon: "../../static/image/center/3.svg", text: this.$t('pageTitle.logout'), rightIcon: ">"}, | |||
{leftIcon: "../../static/image/center/4.svg", text: this.$t('pageTitle.addressList'), rightIcon: ">",toUrl:'/pages_order/center/addressListManage'}, | |||
] | |||
}, | |||
{ | |||
title: `${this.$t('pageTitle.systemSetting')}`, | |||
itemList: [ | |||
{leftIcon: "../../static/image/center/1.svg", text: `${this.$t('pageTitle.languageSwitch')}`, rightIcon: ">"}, | |||
{leftIcon: "../../static/image/center/2.svg", text: `${this.$t('pageTitle.versionUpdate')}`, rightIcon: ">"}, | |||
{leftIcon: "../../static/image/center/3.svg", text: this.$t('pageTitle.clearCache'), rightIcon: ">"}, | |||
] | |||
}, | |||
{ | |||
title: `${this.$t('pageTitle.identitySetting')}`, | |||
itemList: [ | |||
{leftIcon: "../../static/image/center/1.svg", text: this.$t('pageTitle.switchIdentity'), rightIcon: ">"}, | |||
] | |||
} | |||
], | |||
} | |||
}, | |||
methods: { | |||
tapItem(item, index) { | |||
if (item.text === this.$t('pageTitle.languageSwitch')) { | |||
this.$refs.changeLanguage.open(); | |||
} | |||
uni.navigateTo({ | |||
url: item.toUrl | |||
}) | |||
} | |||
}, | |||
} | |||
import topbar from "@/components/base/topbar.vue"; | |||
import tabber from "@/components/base/tabbar.vue"; | |||
import ChangeLanguage from "@/components/base/changeLanguage.vue"; | |||
import { | |||
navigateTo | |||
} from "@/utils/utils"; | |||
export default { | |||
name: "systemSet", | |||
components: { | |||
ChangeLanguage, | |||
tabber, | |||
topbar | |||
}, | |||
data() { | |||
return { | |||
list: [{ | |||
title: `${this.$t('pageTitle.accountSetting')}`, | |||
itemList: [ | |||
// text: `${this.$t('pageTitle.switchAccount')}` | |||
{ | |||
leftIcon: "../../static/image/center/1.svg", | |||
text: `${this.$t('pageTitle.switchAccount')}`, | |||
rightIcon: ">" | |||
}, | |||
{ | |||
leftIcon: "../../static/image/center/2.svg", | |||
text: `${this.$t('pageTitle.changePassword')}`, | |||
rightIcon: ">" | |||
}, | |||
{ | |||
leftIcon: "../../static/image/center/3.svg", | |||
text: this.$t('pageTitle.logout'), | |||
rightIcon: ">", | |||
type : 'logout', | |||
}, | |||
{ | |||
leftIcon: "../../static/image/center/4.svg", | |||
text: this.$t('pageTitle.addressList'), | |||
rightIcon: ">", | |||
toUrl: '/pages_order/center/addressListManage' | |||
}, | |||
] | |||
}, | |||
{ | |||
title: `${this.$t('pageTitle.systemSetting')}`, | |||
itemList: [{ | |||
leftIcon: "../../static/image/center/1.svg", | |||
text: `${this.$t('pageTitle.languageSwitch')}`, | |||
rightIcon: ">" | |||
}, | |||
{ | |||
leftIcon: "../../static/image/center/2.svg", | |||
text: `${this.$t('pageTitle.versionUpdate')}`, | |||
rightIcon: ">" | |||
}, | |||
{ | |||
leftIcon: "../../static/image/center/3.svg", | |||
text: this.$t('pageTitle.clearCache'), | |||
rightIcon: ">" | |||
}, | |||
] | |||
}, | |||
{ | |||
title: `${this.$t('pageTitle.identitySetting')}`, | |||
itemList: [{ | |||
leftIcon: "../../static/image/center/1.svg", | |||
text: this.$t('pageTitle.switchIdentity'), | |||
rightIcon: ">" | |||
}, ] | |||
} | |||
], | |||
} | |||
}, | |||
methods: { | |||
tapItem(item, index) { | |||
if (item.text === this.$t('pageTitle.languageSwitch')) { | |||
this.$refs.changeLanguage.open(); | |||
}else if(item.type){ | |||
this[item.type]() | |||
}else{ | |||
uni.navigateTo({ | |||
url: item.toUrl | |||
}) | |||
} | |||
}, | |||
logout(){ | |||
this.$store.commit('logout') | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.page { | |||
background-color: #FFF; | |||
height: 100vh; | |||
.frame { | |||
padding: 40rpx; | |||
.content { | |||
margin-bottom: 40rpx; | |||
.title { | |||
font-size: 30rpx; | |||
color: #b0b0b0; | |||
} | |||
.item { | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
padding: 20rpx 40rpx; | |||
.key { | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
color: #333333; | |||
font-size: 32rpx; | |||
.img { | |||
width: 40rpx; | |||
height: 40rpx; | |||
} | |||
.text { | |||
margin-left: 20rpx; | |||
} | |||
} | |||
.value { | |||
color: #999999; | |||
font-size: 36rpx; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
.page { | |||
background-color: #FFF; | |||
height: 100vh; | |||
.frame { | |||
padding: 40rpx; | |||
.content { | |||
margin-bottom: 40rpx; | |||
.title { | |||
font-size: 30rpx; | |||
color: #b0b0b0; | |||
} | |||
.item { | |||
display: flex; | |||
justify-content: space-between; | |||
align-items: center; | |||
padding: 20rpx 40rpx; | |||
.key { | |||
display: flex; | |||
justify-content: center; | |||
align-items: center; | |||
color: #333333; | |||
font-size: 32rpx; | |||
.img { | |||
width: 40rpx; | |||
height: 40rpx; | |||
} | |||
.text { | |||
margin-left: 20rpx; | |||
} | |||
} | |||
.value { | |||
color: #999999; | |||
font-size: 36rpx; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
</style> |