福利、签字

This commit is contained in:
Paidax
2024-12-26 08:30:06 +08:00
parent 0f6787c0cd
commit d6c4f48afc
56 changed files with 266 additions and 158 deletions
@@ -36,10 +36,6 @@ layout("/mobile/platform.html"){
align-items: baseline;
}
.van-empty {
position: absolute;
}
.van-collapse-item .van-collapse-item__title {
}
@@ -220,11 +216,10 @@ layout("/mobile/platform.html"){
<div style="display: flex;width: 100%;padding: 10px 0;flex-wrap: wrap"
v-for="(option, oidx) in subject.options">
<div style="width: 120px;height: 100px;display: flex;justify-content: center;align-items: center;position:relative;">
<div v-if="[1,2,3].includes(option.rank)">
<div class="top-text" :style="'color:' + getRankColor(option.rank)">TOP{{option.rank}}</div>
</div>
<van-image src="https://s21.ax1x.com/2024/12/24/pAjYEGT.png"
asrc="FILE_STREAM_PREVIEW_ADDRESS+'?id='+option.imgUrl"
<!-- <div v-if="[1,2,3].includes(option.rank)">-->
<!-- <div class="top-text" :style="'color:' + getRankColor(option.rank)">TOP{{option.rank}}</div>-->
<!-- </div>-->
<van-image :src="FILE_STREAM_PREVIEW_ADDRESS+'?id='+option.imgUrl"
fit="contain"
style="width: 100px;height: 100px;border-radius: 10px"></van-image>
<span style="position: absolute; bottom: 0;left: 10px;right: 10px;height: 20px;background: rgb(0 0 0 / 50%);text-align:center;color: #FFF;">{{option.selectCount}}人已选</span>
@@ -282,19 +277,21 @@ layout("/mobile/platform.html"){
<van-popup :style="{ height: '70%' }" closeable position="bottom" safe-area-inset-bottom
v-model="selectAddressPopup">
<div style="height: 100%">
<div style="font-size: 15px;font-weight: bold;text-align: center;padding-top: 16px;">
<div style="font-size: 16px;font-weight: bold;text-align: center;padding-top: 16px;">
配送至
</div>
<template v-if="addressList && addressList.length>0">
<van-cell @click="addressClick(item);selectAddressPopup=false" clickable icon="location-o"
v-for="item in addressList">
<template #title>
{{item.address}}
<span style="font-size: 15px">{{item.address}}</span>
</template>
<template #label>
<div>{{"地区:" + item.province + item.city + item.county}}</div>
<div>{{"收件人:" + item.name}}</div>
<div>{{"联系方式" + item.tel}}</div>
<div style="font-size: 14px;line-height: 1.5rem">
<div>{{"地区:" + item.province + item.city + item.county}}</div>
<div>{{"收件人" + item.name}}</div>
<div>{{"联系方式:" + item.tel}}</div>
</div>
</template>
</van-cell>
</template>
@@ -305,7 +302,7 @@ layout("/mobile/platform.html"){
<van-button @click="openAddressManage" block round
style="height: 40px;margin: 5px 0"
type="danger">
地址管理
新增地址
</van-button>
</div>
</div>
@@ -372,7 +369,9 @@ layout("/mobile/platform.html"){
<div class="van-cell-group--inset" v-if="projectInfo.signMode===2">
<van-cell>
<template #title>
<div style="font-weight: bold;font-size: 15px">电子签名</div>
<div style="font-weight: bold;font-size: 15px">
<van-icon class="van-cell__left-icon" color="red" name="location"
slot="icon"></van-icon>电子签名</div>
</template>
</van-cell>
<van-cell title="">
@@ -535,12 +534,24 @@ layout("/mobile/platform.html"){
this.$toast('一共可以选择' + multiSelectNum + '份,您目前只选择了' + this.sumSelectNum + '份,快去选择吧!')
return
}
} else {
if (this.sumSelectNum === 0) {
//用户选择了多份
this.$toast('您还没有选择福利套餐,快去选择吧!')
return
}
}
this.confirmPopup = true
await this.selectAddressList()
//回显用户的地址
if (this.projectInfo.provideMode === 3 && this.isSelect && this.userSelection) {
this.selectAddress = this.userSelection[0].receiveAddress
} else if (this.projectInfo.provideMode === 3 && !this.isSelect){
if (this.addressList && this.addressList.length > 0) {
const resp = this.addressList.find(v=> v.isDefault)
this.addressClick(resp)
}
}
//回显用户签名
@@ -612,12 +623,18 @@ layout("/mobile/platform.html"){
//地址管理
openAddressManage() {
pjaxReplace('/mobile/welfare/mine/address?projectId=' + this.projectId)
pjaxReplace('/mobile/welfare/mine/addressEdit?projectId=' + this.projectId)
window.sessionStorage.setItem('welfareProjectId', this.projectId)
const formData = {
projectInfo: this.projectInfo,
signData: this.signData || null
}
window.sessionStorage.setItem('welfareProjectSelectInfo' + "${@shiro.getPrincipalProperty('loginname')}", JSON.stringify(formData))
},
clickSelectAddressPopup() {
this.selectAddressList()
// this.selectAddressList()
this.selectAddressPopup = true
},
@@ -657,7 +674,7 @@ layout("/mobile/platform.html"){
const id = GetQueryString("projectId")
if (!id) return
this.projectId = id
this.getProjectInfo()
// this.getChoice()
getEnumOptions("WelfareProvideMode").then(res => {
this.welfareProvideMode = res
@@ -665,9 +682,21 @@ layout("/mobile/platform.html"){
getEnumOptions("WelfareSignMode").then(res => {
this.welfareSignMode = res
})
const loginname = "${@shiro.getPrincipalProperty('loginname')}"
const formData = window.sessionStorage.getItem('welfareProjectSelectInfo' + loginname);
if (formData) {
const resp = JSON.parse(formData)
this.projectInfo = resp.projectInfo
this.signData = resp.signData
this.confirmSelect()
window.sessionStorage.removeItem('welfareProjectSelectInfo' + loginname)
// this.selectAddressPopup = true
} else {
this.getProjectInfo()
}
},
})
</script>
<!--#
}
@@ -51,7 +51,8 @@ layout("/mobile/platform.html"){
methods: {
back() {
if (this.projectId) {
pjaxReplace("/mobile/welfare/mine/address?projectId=" + this.projectId)
// pjaxReplace("/mobile/welfare/mine/address?projectId=" + this.projectId)
pjaxReplace("/mobile/welfare/list/receive?projectId=" + this.projectId)
} else {
pjaxReplace("/mobile/welfare/mine/address")
}