feat(index): 首页改造
This commit is contained in:
parent
58b69b87bb
commit
9fd3979df9
|
|
@ -185,15 +185,6 @@ export function getAlertUserAgreementPost(data) {
|
|||
});
|
||||
}
|
||||
|
||||
// 获取抗衰达人
|
||||
export function repurchase(data) {
|
||||
return request({
|
||||
url: "/member/api/achieve/repurchase",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
//全球分布市场
|
||||
export function getGloableCompany(params) {
|
||||
return request({
|
||||
|
|
|
|||
235
src/api/pay.js
235
src/api/pay.js
|
|
@ -4,242 +4,227 @@
|
|||
* @Author: kBank
|
||||
* @Date: 2023-02-01 18:02:36
|
||||
*/
|
||||
import request from '@/util/request'
|
||||
import request from "@/util/request";
|
||||
|
||||
// 查询订单消费明细
|
||||
export function spendDetails(data) {
|
||||
return request({
|
||||
url: '/sale/api/order/query-spend-details',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/sale/api/order/query-spend-details",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 查询订单明细
|
||||
export function orderInfo(data) {
|
||||
return request({
|
||||
url: '/sale/api/order/query-order',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/sale/api/order/query-order",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 支付注册订单
|
||||
export function payRegOrder(data) {
|
||||
return request({
|
||||
url: '/sale/api/order/pay-reg-order',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/sale/api/order/pay-reg-order",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 支付其他订单
|
||||
export function payOthOrder(data) {
|
||||
return request({
|
||||
url: '/sale/api/order/pay-oth-order',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/sale/api/order/pay-oth-order",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 京东银行列表
|
||||
export function jdBankList(params) {
|
||||
return request({
|
||||
url: '/pay/jd-fast/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
url: "/pay/jd-fast/list",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
// 通联银行列表
|
||||
export function tlBankList(params) {
|
||||
return request({
|
||||
url: '/pay/all-in-fast/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
url: "/pay/all-in-fast/list",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
// 汇付银行列表
|
||||
export function hfBankList(params) {
|
||||
return request({
|
||||
url: '/pay/ada-fast/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
url: "/pay/ada-fast/list",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
// 京东绑卡
|
||||
export function bindJd(data) {
|
||||
return request({
|
||||
url: '/pay/jd-fast/bind',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/jd-fast/bind",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 通联绑卡
|
||||
export function bindTl(data) {
|
||||
return request({
|
||||
url: '/pay/all-in-fast/bind',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/all-in-fast/bind",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 京东绑卡
|
||||
export function bindJdConfirm(data) {
|
||||
return request({
|
||||
url: '/pay/jd-fast/bind-confirm',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/jd-fast/bind-confirm",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 通联绑卡
|
||||
export function bindTlConfirm(data) {
|
||||
return request({
|
||||
url: '/pay/all-in-fast/bind-confirm',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/all-in-fast/bind-confirm",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
//在线预充值
|
||||
export function preCharge(params) {
|
||||
return request({
|
||||
url: '/member/api/recharge/preCharge',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
url: "/member/api/recharge/preCharge",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
//支付配置
|
||||
export function payConfig(params) {
|
||||
return request({
|
||||
url: '/pay/config',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
url: "/pay/config",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
|
||||
// 汇付绑卡
|
||||
export function bindHf(data) {
|
||||
return request({
|
||||
url: '/pay/ada-fast/bind',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/ada-fast/bind",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 汇付绑卡确认
|
||||
export function bindHfConfirm(data) {
|
||||
return request({
|
||||
url: '/pay/ada-fast/bind-confirm',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/ada-fast/bind-confirm",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 银行卡支付获取验证码
|
||||
export function unifiedorder(data) {
|
||||
return request({
|
||||
url: '/pay/unifiedorder',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/unifiedorder",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 汇付银行卡确认
|
||||
export function payConfirmHf(data) {
|
||||
return request({
|
||||
url: '/pay/ada-fast/pay-confirm',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/ada-fast/pay-confirm",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 通联银行卡确认
|
||||
export function payConfirmTl(data) {
|
||||
return request({
|
||||
url: '/pay/all-in-fast/pay-confirm',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/all-in-fast/pay-confirm",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 京东银行卡确认
|
||||
export function payConfirmJd(data) {
|
||||
return request({
|
||||
url: '/pay/jd-fast/pay-confirm',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/jd-fast/pay-confirm",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 宝付确认支付h5
|
||||
export function baoFuPay(data) {
|
||||
return request({
|
||||
url: '/pay/baofu-code/order',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/baofu-code/order",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 汇付确认支付h5
|
||||
export function huiFuPay(data) {
|
||||
return request({
|
||||
url: '/pay/ada-code/order',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/ada-code/order",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
// 宝付微信支付
|
||||
export function payScanBf(data) {
|
||||
return request({
|
||||
url: '/baoFu/pay/createCode',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/baoFu/pay/createCode",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
// 汇付微信支付
|
||||
export function payScanHf(data) {
|
||||
return request({
|
||||
url: '/ada/pay/createCode',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/ada/pay/createCode",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
// 支付状态
|
||||
export function payStatus(params) {
|
||||
return request({
|
||||
url: '/pay/status',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
url: "/pay/status",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
|
||||
//抽奖下单
|
||||
export function payDrawGift(data) {
|
||||
return request({
|
||||
url: '/activity/api/draw/pay-draw-num',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
//植树活动
|
||||
export function shoppingTree(data){
|
||||
return request({
|
||||
url: 'activity/api/sa-tree-order/shoppingTree',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
//植树查看账户
|
||||
export function deductionAccount(data){
|
||||
return request({
|
||||
url: 'activity/api/sa-tree-order/deductionAccount',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/activity/api/draw/pay-draw-num",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
//解绑银行卡
|
||||
export function unBind(data){
|
||||
export function unBind(data) {
|
||||
return request({
|
||||
url: '/pay/ada-fast/un-bind',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
url: "/pay/ada-fast/un-bind",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
// 查询注册信息
|
||||
export function registerInfo(params) {
|
||||
return request({
|
||||
url: '/member/api/member/register-order/' + params,
|
||||
method: 'get',
|
||||
})
|
||||
url: "/member/api/member/register-order/" + params,
|
||||
method: "get",
|
||||
});
|
||||
}
|
||||
|
|
@ -17,33 +17,6 @@ export function marketList(params) {
|
|||
});
|
||||
}
|
||||
|
||||
//意见反馈类型
|
||||
export function getFeedbackType(params) {
|
||||
return request({
|
||||
url: "/system/pub/enums/feedback-type",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
|
||||
//提交意见反馈列表
|
||||
export function saveFeedBack(data) {
|
||||
return request({
|
||||
url: "/system/api/feedback/save",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
}
|
||||
|
||||
//意见列表
|
||||
export function getFeedbackList(params) {
|
||||
return request({
|
||||
url: "/system/api/feedback/index-list",
|
||||
method: "get",
|
||||
params,
|
||||
});
|
||||
}
|
||||
|
||||
//获取会员真实奖衔
|
||||
export function getUserAwards(params) {
|
||||
return request({
|
||||
|
|
|
|||
|
|
@ -1,342 +0,0 @@
|
|||
<!--
|
||||
* @Descripttion:
|
||||
* @version:
|
||||
* @Author: 王三华
|
||||
* @Date: 2023-06-21 18:11:14
|
||||
-->
|
||||
<!--
|
||||
* @Descripttion:
|
||||
* @version:
|
||||
* @Author: kBank
|
||||
* @Date: 2023-02-03 09:01:23
|
||||
-->
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog :title="'支付验证'"
|
||||
:visible.sync="pwShow"
|
||||
width="30%"
|
||||
center
|
||||
:before-close="handleClose">
|
||||
<div class="tit"
|
||||
v-show="this.whatBank == ''">{{'请输入6位数字支付密码'}}</div>
|
||||
<div class="tit"
|
||||
v-show="this.whatBank != ''">{{'请输入验证码'}}</div>
|
||||
<!-- <div class="input-box flexbox">
|
||||
<div class="code-item"
|
||||
:class="codeValue.length == 0 && inputFocus ? 'code-item-active' : ''">{{dianValue[0]}}</div>
|
||||
<div class="code-item"
|
||||
:class="codeValue.length == 1 && inputFocus ? 'code-item-active' : ''">{{dianValue[1]}}</div>
|
||||
<div class="code-item"
|
||||
:class="codeValue.length == 2 && inputFocus ? 'code-item-active' : ''">{{dianValue[2]}}</div>
|
||||
<div class="code-item"
|
||||
:class="codeValue.length == 3 && inputFocus ? 'code-item-active' : ''">{{dianValue[3]}}</div>
|
||||
<div class="code-item"
|
||||
:class="codeValue.length == 4 && inputFocus ? 'code-item-active' : ''">{{dianValue[4]}}</div>
|
||||
<div class="code-item"
|
||||
:class="codeValue.length >= 5 && inputFocus ? 'code-item-active' : ''">{{dianValue[5]}}</div>
|
||||
<el-input class="input-code"
|
||||
:value="codeValue"
|
||||
ref="input"
|
||||
:maxlength="6"
|
||||
@blur="codeInputBlur"
|
||||
@focus="codeInputFocus"
|
||||
@input="codeInputChange">
|
||||
</el-input>
|
||||
</div> -->
|
||||
<el-input v-model="codeValue"
|
||||
type="password"></el-input>
|
||||
<div class="btn"
|
||||
@click="payPw">{{ '立即支付' }}</div>
|
||||
</el-dialog>
|
||||
<successDialog @successClose="successClose"
|
||||
ref="successDialog"></successDialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import * as api from '@/api/pay.js'
|
||||
import successDialog from '@/components/successDialog.vue'
|
||||
export default {
|
||||
components: {
|
||||
successDialog,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
codeValue: '',
|
||||
inputFocus: false,
|
||||
pwShow: this.isPw,
|
||||
form: {},
|
||||
dianValue: [],
|
||||
whatBank: '',
|
||||
pkCountry: '',
|
||||
payTree: false,
|
||||
treeObj: '',
|
||||
}
|
||||
},
|
||||
props: {
|
||||
isPw: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
pwData: '',
|
||||
isBank: '',
|
||||
businessType: '',
|
||||
},
|
||||
watch: {
|
||||
isPw(val) {
|
||||
this.codeValue = ''
|
||||
this.pwShow = val
|
||||
this.dianValue = []
|
||||
// this.$nextTick(() => {
|
||||
// this.$refs.input.focus()
|
||||
// })
|
||||
},
|
||||
isBank(val) {
|
||||
this.whatBank = val
|
||||
},
|
||||
pwData: {
|
||||
handler(val) {
|
||||
this.pkCountry = parseInt(localStorage.getItem('pkCountry'))
|
||||
if (!val.specialArea) {
|
||||
val.specialArea = val.orderType
|
||||
}
|
||||
this.form = val
|
||||
},
|
||||
deep: true,
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
howMoney(obj) {
|
||||
this.payTree = true
|
||||
this.treeObj = obj
|
||||
},
|
||||
payPw() {
|
||||
if (this.payTree) {
|
||||
let obj = {
|
||||
pkBaseId: this.treeObj.pkBaseId,
|
||||
pkTreeRule: this.treeObj.pkTreeRule,
|
||||
shopQuantity: this.treeObj.quantity,
|
||||
payPwd: this.codeValue,
|
||||
}
|
||||
api.shoppingTree(obj).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
})
|
||||
this.successClose()
|
||||
}
|
||||
})
|
||||
} else {
|
||||
// 非银行卡支付
|
||||
if (this.whatBank == '') {
|
||||
if (this.form.specialArea == 4) {
|
||||
//抽奖
|
||||
let obj = {
|
||||
payPwd: this.codeValue,
|
||||
payNum: this.form.luckydrawData.payNum,
|
||||
pkBaseId: this.form.luckydrawData.pkBaseId,
|
||||
}
|
||||
api.payDrawGift(obj).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
})
|
||||
this.successClose()
|
||||
}
|
||||
})
|
||||
} else {
|
||||
//非抽奖
|
||||
let obj = Object.assign(
|
||||
{},
|
||||
{
|
||||
orderCode: this.form.orderCode,
|
||||
specialArea: this.form.specialArea,
|
||||
pkCountry: this.pkCountry,
|
||||
},
|
||||
{ payPwd: this.codeValue }
|
||||
)
|
||||
let url = ''
|
||||
if (
|
||||
this.form.specialArea == 1 ||
|
||||
this.form.specialArea == 7 ||
|
||||
this.form.specialArea == 24
|
||||
) {
|
||||
url = api.payRegOrder
|
||||
} else {
|
||||
url = api.payOthOrder
|
||||
}
|
||||
url(obj).then((res) => {
|
||||
if (res.code == 200) {
|
||||
if (
|
||||
this.form.specialArea == 1 ||
|
||||
this.form.specialArea == 7 ||
|
||||
this.form.specialArea == 24
|
||||
) {
|
||||
this.$refs.successDialog.showSuccess(res.data)
|
||||
} else {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
})
|
||||
this.successClose()
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
} else if (this.whatBank == 'jd') {
|
||||
let obj = Object.assign(
|
||||
{},
|
||||
{
|
||||
orderCode: this.form.orderCode,
|
||||
bindCode: this.form.bindCode,
|
||||
specialArea: this.form.specialArea,
|
||||
},
|
||||
{ smsCode: this.codeValue }
|
||||
)
|
||||
api.payConfirmJd(obj).then((res) => {
|
||||
if (res.code == 200) {
|
||||
if (
|
||||
this.form.specialArea == 1 ||
|
||||
this.form.specialArea == 7 ||
|
||||
this.form.specialArea == 24
|
||||
) {
|
||||
this.$refs.successDialog.showSuccess(res.data)
|
||||
} else {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
})
|
||||
this.successClose()
|
||||
}
|
||||
}
|
||||
})
|
||||
} else if (this.whatBank == 'hf') {
|
||||
let obj = Object.assign(
|
||||
{},
|
||||
{
|
||||
orderCode: this.form.orderCode,
|
||||
bindCode: this.form.bindCode,
|
||||
specialArea: this.form.specialArea,
|
||||
},
|
||||
{ smsCode: this.codeValue }
|
||||
)
|
||||
api.payConfirmHf(obj).then((res) => {
|
||||
if (res.code == 200) {
|
||||
if (
|
||||
this.form.specialArea == 1 ||
|
||||
this.form.specialArea == 7 ||
|
||||
this.form.specialArea == 24
|
||||
) {
|
||||
this.$refs.successDialog.showSuccess(res.data)
|
||||
} else {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
})
|
||||
this.successClose()
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
// 支付全关
|
||||
successClose() {
|
||||
this.$emit('closePwPay', 1)
|
||||
},
|
||||
// 只关闭输入密码
|
||||
handleClose() {
|
||||
this.$emit('closePwPay', 0)
|
||||
},
|
||||
// 验证码输入框
|
||||
codeInputChange(e) {
|
||||
this.dianValue = []
|
||||
if (e) {
|
||||
// 判断输入内容是否为数字
|
||||
if (/^\+?[0-9][0-9]*$/.test(e)) {
|
||||
this.codeValue = e
|
||||
for (let i = 0; i < e.length; i++) {
|
||||
this.dianValue.push('●')
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.codeValue = ''
|
||||
this.dianValue = []
|
||||
}
|
||||
},
|
||||
// 验证码输入框失去焦点
|
||||
codeInputBlur() {
|
||||
this.inputFocus = false
|
||||
},
|
||||
// 验证码输入框获取到焦点
|
||||
codeInputFocus() {
|
||||
this.inputFocus = true
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.input-box {
|
||||
margin-top: 30px;
|
||||
position: relative;
|
||||
}
|
||||
.input-code {
|
||||
position: absolute;
|
||||
}
|
||||
.code-item {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
text-align: center;
|
||||
line-height: 50px;
|
||||
border: 1px solid #cccccc;
|
||||
margin-right: 10px;
|
||||
box-shadow: 0px 0px 10px 0px #fff;
|
||||
}
|
||||
.code-item-active {
|
||||
box-shadow: 0px 0px 10px 0px #d5251d;
|
||||
border: 1px solid #d5251d;
|
||||
border-radius: 2px 2px 2px 2px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.tit {
|
||||
font-size: 12px;
|
||||
font-family: PingFang SC-Regular, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
text-align: center;
|
||||
margin: 10px 0;
|
||||
}
|
||||
.flexbox {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
// 隐藏input
|
||||
.input-box {
|
||||
::v-deep .el-input__inner {
|
||||
width: 100%;
|
||||
height: 42px;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
color: transparent;
|
||||
}
|
||||
}
|
||||
.btn {
|
||||
line-height: 50px;
|
||||
width: 180px;
|
||||
height: 50px;
|
||||
background: #d5251d;
|
||||
border-radius: 6px 6px 6px 6px;
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
font-weight: 500;
|
||||
color: #ffffff;
|
||||
margin: 25px auto;
|
||||
cursor: pointer;
|
||||
}
|
||||
::v-deep .el-dialog__wrapper{
|
||||
z-index: 300000!important;
|
||||
}
|
||||
</style>
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,51 +1,60 @@
|
|||
<template>
|
||||
<div class="contain">
|
||||
<div class="rightbox"
|
||||
style="width: 100%">
|
||||
|
||||
<div class="rightbox" style="width: 100%">
|
||||
<div class="top-lists">
|
||||
<div class="nav-view"
|
||||
@click="navTap(index)"
|
||||
:class="navIndex == index ? 'styles' : ''"
|
||||
v-for="(item, index) in navList"
|
||||
:key="index">
|
||||
<div
|
||||
class="nav-view"
|
||||
@click="navTap(index)"
|
||||
:class="navIndex == index ? 'styles' : ''"
|
||||
v-for="(item, index) in navList"
|
||||
:key="index"
|
||||
>
|
||||
{{ item.name }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="maincontent"
|
||||
v-show="navIndex == 0">
|
||||
<div class="actBox"
|
||||
@click="goDetail(item)"
|
||||
v-for="(item, index) in dataList"
|
||||
:key="index">
|
||||
<img class="actimg"
|
||||
:src="item.actCover"
|
||||
alt="" />
|
||||
<div class="afloat"
|
||||
:class="`ac${item.actStatus}`">
|
||||
<div class="maincontent" v-show="navIndex == 0">
|
||||
<div
|
||||
class="actBox"
|
||||
@click="goDetail(item)"
|
||||
v-for="(item, index) in dataList"
|
||||
:key="index"
|
||||
>
|
||||
<img class="actimg" :src="item.actCover" alt="" />
|
||||
<div class="afloat" :class="`ac${item.actStatus}`">
|
||||
{{ item.actStatusVal }}
|
||||
</div>
|
||||
<div class="activetext">
|
||||
<div class="acttitle">[{{ '活动' }}] {{ item.actName }}</div>
|
||||
<div class="acttitle">[{{ "活动" }}] {{ item.actName }}</div>
|
||||
<div class="acttime">
|
||||
{{ '活动时间' }}:{{ item.actStartDate }}-{{ item.actEndDate }}
|
||||
{{ "活动时间" }}:{{ item.actStartDate }}-{{ item.actEndDate }}
|
||||
</div>
|
||||
<!-- <div class="actremark">{{ item.actExplain }}</div> -->
|
||||
<div style="height: 40px">
|
||||
<div class="btnbox">
|
||||
<el-button class="actbtn"
|
||||
@click.prevent.stop="getGift(item)"
|
||||
v-if="item.existNewPeopleGift == 0">{{ '领取礼包' }}</el-button>
|
||||
<el-button class="actbtn"
|
||||
@click.prevent.stop="getGift(item)"
|
||||
v-if="item.existDrawNum == 0">{{ '抽奖' }}</el-button>
|
||||
<el-button class="actbtn"
|
||||
@click.prevent.stop="getTree()"
|
||||
v-if="item.actType == 19">{{ '种植' }}</el-button>
|
||||
<el-button
|
||||
class="actbtn"
|
||||
@click.prevent.stop="getGift(item)"
|
||||
v-if="item.existNewPeopleGift == 0"
|
||||
>{{ "领取礼包" }}</el-button
|
||||
>
|
||||
<el-button
|
||||
class="actbtn"
|
||||
@click.prevent.stop="getGift(item)"
|
||||
v-if="item.existDrawNum == 0"
|
||||
>{{ "抽奖" }}</el-button
|
||||
>
|
||||
<el-button
|
||||
class="actbtn"
|
||||
@click.prevent.stop="getTree()"
|
||||
v-if="item.actType == 19"
|
||||
>{{ "种植" }}</el-button
|
||||
>
|
||||
<!-- <el-button class="actbtn"
|
||||
v-if="item.actType == 22"></el-button> -->
|
||||
<div class="addCarImg"
|
||||
v-if="item.actType == 22&& item.actStatus == 1&&item.point">
|
||||
<div
|
||||
class="addCarImg"
|
||||
v-if="item.actType == 22 && item.actStatus == 1 && item.point"
|
||||
>
|
||||
积分:{{ item.point }}
|
||||
</div>
|
||||
<!-- v-if="item.existNewPeopleGift == 0" -->
|
||||
|
|
@ -54,93 +63,84 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<shajiList v-show="navIndex == 1"
|
||||
ref="shajiList"></shajiList>
|
||||
<shajiList v-show="navIndex == 1" ref="shajiList"></shajiList>
|
||||
</div>
|
||||
<newGift ref="newGift"></newGift>
|
||||
<giftDrwal ref="giftDrwal"></giftDrwal>
|
||||
<div class="goodsDiag_a">
|
||||
<!-- 植树 -->
|
||||
<el-dialog title=""
|
||||
:visible.sync="isGoods"
|
||||
width="25%"
|
||||
center
|
||||
:append-to-body="true"
|
||||
:before-close="closeGoods">
|
||||
<el-dialog
|
||||
title=""
|
||||
:visible.sync="isGoods"
|
||||
width="25%"
|
||||
center
|
||||
:append-to-body="true"
|
||||
:before-close="closeGoods"
|
||||
>
|
||||
<div class="goodsDiag">
|
||||
<div class="dis_t">{{ '种植' }}</div>
|
||||
<div class="dis_t">{{ "种植" }}</div>
|
||||
<div class="dis_a">
|
||||
<div class="disFlex">
|
||||
<div class="dis_l">{{ '数量' }}:</div>
|
||||
<el-input-number size="mini"
|
||||
@change="treePrice"
|
||||
v-model="treeObj.quantity"
|
||||
:min="treeMin"></el-input-number>
|
||||
<div class="dis_l">{{ "数量" }}:</div>
|
||||
<el-input-number
|
||||
size="mini"
|
||||
@change="treePrice"
|
||||
v-model="treeObj.quantity"
|
||||
:min="treeMin"
|
||||
></el-input-number>
|
||||
</div>
|
||||
<div class="disFlex">
|
||||
<div class="dis_l">{{ '公益金' }}:</div>
|
||||
<div class="dis_l">{{ "公益金" }}:</div>
|
||||
<div class="dis_r">¥{{ treeObj.amount | numberToCurrency }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<span slot="footer"
|
||||
class="treefooter">
|
||||
<el-button type="primary"
|
||||
class="delBtn"
|
||||
@click="payGoods">{{ '确定' }}</el-button>
|
||||
<span slot="footer" class="treefooter">
|
||||
<el-button type="primary" class="delBtn" @click="payGoods">{{
|
||||
"确定"
|
||||
}}</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
<PayTree :isPay="isPay"
|
||||
ref="payment"
|
||||
@closePay="closePay"></PayTree>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import sidebarUserInfo from '@/views/index/components/sidebarUserInfo.vue'
|
||||
import topBanner from '@/components/topBanner.vue'
|
||||
import navBar from '@/components/navBar.vue'
|
||||
import newGift from '@/components/newGift.vue'
|
||||
import giftDrwal from '@/components/giftDrwal/index.vue'
|
||||
import shajiList from '@/components/marketDynamics/shajiList.vue'
|
||||
import * as act from '@/api/bonus.js'
|
||||
import * as api from '@/api/index.js'
|
||||
<script>
|
||||
import newGift from "@/components/newGift.vue";
|
||||
import giftDrwal from "@/components/giftDrwal/index.vue";
|
||||
import shajiList from "@/components/marketDynamics/shajiList.vue";
|
||||
import * as act from "@/api/bonus.js";
|
||||
import * as api from "@/api/index.js";
|
||||
|
||||
import PayTree from '@/components/PayTree.vue'
|
||||
export default {
|
||||
name: 'Registration',
|
||||
name: "Registration",
|
||||
components: {
|
||||
navBar,
|
||||
sidebarUserInfo,
|
||||
topBanner,
|
||||
newGift,
|
||||
giftDrwal,
|
||||
shajiList,
|
||||
PayTree,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
marketList: [
|
||||
{
|
||||
text: '月度业绩',
|
||||
text: "月度业绩",
|
||||
id: 0,
|
||||
path: '/marketDynamics',
|
||||
path: "/marketDynamics",
|
||||
},
|
||||
{
|
||||
text: '活动专区',
|
||||
text: "活动专区",
|
||||
id: 7,
|
||||
path: '/activeZone',
|
||||
path: "/activeZone",
|
||||
},
|
||||
{
|
||||
text: '奖金明细',
|
||||
text: "奖金明细",
|
||||
id: 1,
|
||||
path: '/incomeDetail',
|
||||
path: "/incomeDetail",
|
||||
},
|
||||
{
|
||||
text: '奖金来源',
|
||||
text: "奖金来源",
|
||||
id: 3,
|
||||
path: '/bonusSource',
|
||||
path: "/bonusSource",
|
||||
},
|
||||
// {
|
||||
// text: "云代奖金",
|
||||
|
|
@ -149,19 +149,19 @@ export default {
|
|||
// },
|
||||
|
||||
{
|
||||
text: '考核明细',
|
||||
text: "考核明细",
|
||||
id: 4,
|
||||
path: '/appraisal',
|
||||
path: "/appraisal",
|
||||
},
|
||||
{
|
||||
text: '注册列表',
|
||||
text: "注册列表",
|
||||
id: 5,
|
||||
path: '/registration',
|
||||
path: "/registration",
|
||||
},
|
||||
{
|
||||
text: '招商列表',
|
||||
text: "招商列表",
|
||||
id: 6,
|
||||
path: '/investment',
|
||||
path: "/investment",
|
||||
},
|
||||
],
|
||||
dataList: [],
|
||||
|
|
@ -169,106 +169,106 @@ export default {
|
|||
isGoods: false,
|
||||
navList: [
|
||||
{
|
||||
name: '活动列表',
|
||||
name: "活动列表",
|
||||
},
|
||||
{
|
||||
name: '沙棘公益',
|
||||
name: "沙棘公益",
|
||||
},
|
||||
],
|
||||
treeObj: '',
|
||||
treeObj: "",
|
||||
treeMin: 0,
|
||||
isPay: false,
|
||||
}
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
$route(n, o) {
|
||||
this.specialArea = n.query.id
|
||||
this.specialArea = n.query.id;
|
||||
},
|
||||
},
|
||||
created() {},
|
||||
mounted() {
|
||||
this.specialArea = this.$route.query.id
|
||||
this.getSearch()
|
||||
this.specialArea = this.$route.query.id;
|
||||
this.getSearch();
|
||||
},
|
||||
methods: {
|
||||
closeGoods() {
|
||||
this.isGoods = false
|
||||
this.isGoods = false;
|
||||
},
|
||||
closePay(val) {
|
||||
if (val) {
|
||||
this.isPay = false
|
||||
this.isGoods = false
|
||||
this.isPay = false;
|
||||
this.isGoods = false;
|
||||
} else {
|
||||
this.$confirm('确认取消支付?')
|
||||
this.$confirm("确认取消支付?")
|
||||
.then((_) => {
|
||||
this.isPay = false
|
||||
this.isGoods = false
|
||||
this.isPay = false;
|
||||
this.isGoods = false;
|
||||
})
|
||||
.catch((_) => {})
|
||||
.catch((_) => {});
|
||||
}
|
||||
},
|
||||
payGoods() {
|
||||
this.$refs.payment.howMoney(this.treeObj)
|
||||
this.isPay = true
|
||||
this.$refs.payment.howMoney(this.treeObj);
|
||||
this.isPay = true;
|
||||
},
|
||||
treePrice(e) {
|
||||
let amount = e * Number(this.treeObj.price)
|
||||
this.$set(this.treeObj, 'amount', amount)
|
||||
let amount = e * Number(this.treeObj.price);
|
||||
this.$set(this.treeObj, "amount", amount);
|
||||
},
|
||||
getTree() {
|
||||
api.queryTreeActivity().then((res) => {
|
||||
if (res.data) {
|
||||
this.treeObj = res.data
|
||||
this.treeMin = res.data.quantity
|
||||
this.treeObj = res.data;
|
||||
this.treeMin = res.data.quantity;
|
||||
this.$set(
|
||||
this.treeObj,
|
||||
'amount',
|
||||
"amount",
|
||||
Number(res.data.quantity) * Number(res.data.price)
|
||||
)
|
||||
this.isGoods = true
|
||||
);
|
||||
this.isGoods = true;
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
navTap(index) {
|
||||
this.navIndex = index
|
||||
this.navIndex = index;
|
||||
if (index == 1) {
|
||||
this.$refs.shajiList.getList()
|
||||
this.$refs.shajiList.getList();
|
||||
}
|
||||
},
|
||||
//详情跳转
|
||||
goDetail(item) {
|
||||
console.log('🌈', item)
|
||||
console.log("🌈", item);
|
||||
|
||||
this.$router.push({
|
||||
path: '/activeDetail',
|
||||
path: "/activeDetail",
|
||||
query: { pkId: item.pkId },
|
||||
})
|
||||
});
|
||||
},
|
||||
getGift(item) {
|
||||
console.log('🌈', item)
|
||||
console.log("🌈", item);
|
||||
// 新人礼包;
|
||||
if (item.actType == 16) {
|
||||
this.$refs.newGift.getGiftList(item.pkId)
|
||||
this.$refs.newGift.getGiftList(item.pkId);
|
||||
} else if (item.actType == 17) {
|
||||
this.$refs.giftDrwal.getGiftList(item.pkId)
|
||||
this.$refs.giftDrwal.getGiftList(item.pkId);
|
||||
}
|
||||
},
|
||||
getSearch() {
|
||||
act.getActivityList().then((res) => {
|
||||
this.dataList = res.rows
|
||||
this.dataList = res.rows;
|
||||
this.dataList.forEach((item) => {
|
||||
if (item.actType == 22 && item.actStatus == 1) {
|
||||
act.tourismPoint(item.pkId).then((res) => {
|
||||
if (res.data != undefined) {
|
||||
this.$set(item, 'point', res.data)
|
||||
this.$set(item, "point", res.data);
|
||||
}
|
||||
})
|
||||
});
|
||||
}
|
||||
})
|
||||
})
|
||||
});
|
||||
});
|
||||
},
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,111 @@
|
|||
<template>
|
||||
<!-- 站内信 -->
|
||||
<div class="in-site-msg-wrapper">
|
||||
<div class="in-site-msg-header">
|
||||
<div class="in-site-msg-tit">站内信</div>
|
||||
<div class="in-site-msg-more" @click="goMore(2)">查看更多 》</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="in-site-msg-content">
|
||||
<vue-seamless-scroll
|
||||
v-if="listData.length > 0"
|
||||
:class-option="optionSingleHeightTime"
|
||||
:data="listData"
|
||||
class="seamless-warp"
|
||||
>
|
||||
<ul class="item">
|
||||
<li v-for="(item, index) in listData" :key="index">
|
||||
<span class="title" v-text="item.title"></span>
|
||||
</li>
|
||||
</ul>
|
||||
</vue-seamless-scroll>
|
||||
|
||||
<el-empty v-else :image-size="100" description="暂无站内信"></el-empty>
|
||||
</div>
|
||||
<div
|
||||
v-if="listData.length > 0"
|
||||
class="more"
|
||||
@click="goMore(2)"
|
||||
style="margin: 20px 0 0 0"
|
||||
>
|
||||
查看更多>>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getNoticeList } from "@/api/sidebaruserinfo.js";
|
||||
export default {
|
||||
name: "InSiteMessage",
|
||||
data() {
|
||||
return {
|
||||
listData: [],
|
||||
optionSingleHeightTime() {
|
||||
return {
|
||||
step: 0.6, // 数值越大速度滚动越快
|
||||
limitMoveNum: this.listData.length, // 开始无缝滚动的数据量 this.dataList.length
|
||||
hoverStop: true, // 是否开启鼠标悬停stop
|
||||
direction: 1, // 0向下 1向上 2向左 3向右
|
||||
openWatch: true, // 开启数据实时监控刷新dom
|
||||
singleHeight: 14, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
|
||||
singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
|
||||
waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
|
||||
};
|
||||
},
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
this.getListData();
|
||||
},
|
||||
methods: {
|
||||
goMore(index) {
|
||||
//1公告 2站内信
|
||||
this.$router.push({
|
||||
path: "/noticeLists",
|
||||
query: { index: index },
|
||||
});
|
||||
},
|
||||
getListData() {
|
||||
getNoticeList({ functionType: 2 }).then((res) => {
|
||||
this.listData = res.rows;
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.in-site-msg-wrapper {
|
||||
margin-top: 20px;
|
||||
box-shadow: 0px 2px 20px 0px rgba(135, 135, 135, 0.3);
|
||||
border-radius: 10px 10px 10px 10px;
|
||||
padding: 5px 10px 20px 10px;
|
||||
text-align: center;
|
||||
.in-site-msg-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding: 10px 0;
|
||||
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
|
||||
.in-site-msg-tit {
|
||||
font-size: 16px;
|
||||
font-family: PingFang SC-Semibold, PingFang SC;
|
||||
font-weight: 600;
|
||||
color: #333333;
|
||||
}
|
||||
.in-site-msg-more {
|
||||
font-size: 12px;
|
||||
font-family: PingFang SC-Regular, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #3499ff;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
.in-site-msg-content {
|
||||
height: 220px;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -24,6 +24,7 @@
|
|||
<el-empty description="暂无公告" />
|
||||
</div>
|
||||
</div>
|
||||
<InSiteMessage />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -31,9 +32,12 @@
|
|||
import * as sid from "@/api/sidebaruserinfo.js";
|
||||
import { mapGetters } from "vuex";
|
||||
import "swiper/dist/css/swiper.css";
|
||||
import InSiteMessage from "./in-site-message.vue";
|
||||
export default {
|
||||
name: "sidebarUserInfo",
|
||||
components: {},
|
||||
components: {
|
||||
InSiteMessage,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(["userInfo"]),
|
||||
},
|
||||
|
|
@ -110,15 +114,7 @@ export default {
|
|||
display: block !important;
|
||||
height: 300px !important;
|
||||
}
|
||||
.title2 {
|
||||
height: 17px;
|
||||
font-size: 16px;
|
||||
font-family: PingFang SC-Regular, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #3499ff;
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.swiper-pagination {
|
||||
top: 200px;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -119,42 +119,6 @@
|
|||
<div class="divs">{{ userSec }}</div>
|
||||
<div class="margin-s">秒</div>
|
||||
</div>
|
||||
|
||||
<!-- 站内信 -->
|
||||
<div class="znBox">
|
||||
<div class="zntitle">站内信</div>
|
||||
<div class="znCenter">
|
||||
<!-- <div class="znrightword" @click="goMore(2)">查看更多</div>-->
|
||||
<div class="znContent">
|
||||
<vue-seamless-scroll
|
||||
v-if="listData.length > 0"
|
||||
:class-option="optionSingleHeightTime"
|
||||
:data="listData"
|
||||
class="seamless-warp"
|
||||
>
|
||||
<ul class="item">
|
||||
<li v-for="(item, index) in listData" :key="index">
|
||||
<span class="title" v-text="item.title"></span>
|
||||
</li>
|
||||
</ul>
|
||||
</vue-seamless-scroll>
|
||||
|
||||
<el-empty
|
||||
v-else
|
||||
:image-size="100"
|
||||
description="暂无站内信"
|
||||
></el-empty>
|
||||
</div>
|
||||
<div
|
||||
v-if="listData.length > 0"
|
||||
class="more"
|
||||
@click="goMore(2)"
|
||||
style="margin: 20px 0 0 0"
|
||||
>
|
||||
查看更多>>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -162,7 +126,6 @@
|
|||
import * as sid from "@/api/sidebaruserinfo.js";
|
||||
import { mapGetters } from "vuex";
|
||||
import user from "@/store/modules/user";
|
||||
import { repurchase } from "@/api";
|
||||
export default {
|
||||
name: "sidebarUserInfo",
|
||||
computed: {
|
||||
|
|
@ -170,19 +133,6 @@ export default {
|
|||
return user;
|
||||
},
|
||||
...mapGetters(["userInfo"]),
|
||||
|
||||
optionSingleHeightTime() {
|
||||
return {
|
||||
step: 0.6, // 数值越大速度滚动越快
|
||||
limitMoveNum: this.listData.length, // 开始无缝滚动的数据量 this.dataList.length
|
||||
hoverStop: true, // 是否开启鼠标悬停stop
|
||||
direction: 1, // 0向下 1向上 2向左 3向右
|
||||
openWatch: true, // 开启数据实时监控刷新dom
|
||||
singleHeight: 14, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
|
||||
singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
|
||||
waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
|
||||
};
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
|
@ -190,29 +140,14 @@ export default {
|
|||
userDay: 0,
|
||||
userHr: 0,
|
||||
awards: {},
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 5,
|
||||
},
|
||||
userMin: 0,
|
||||
userSec: 0,
|
||||
_interval: "",
|
||||
toLiveBtn: "",
|
||||
isHandImg: true,
|
||||
listData: [], //站内信列表
|
||||
feedbackTypeList: [], //意见反馈类型列表
|
||||
feedbackForm: {
|
||||
type: "",
|
||||
idea: "",
|
||||
},
|
||||
ksList: [],
|
||||
userPrice: 0,
|
||||
awardPrice: 0,
|
||||
awardsList: [],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getData();
|
||||
this.countdown();
|
||||
this.getUserAwards();
|
||||
},
|
||||
|
|
@ -229,11 +164,6 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
getUserKs() {
|
||||
repurchase({ wallType: this.remIndex1 }).then((res) => {
|
||||
this.ksList = res.rows;
|
||||
});
|
||||
},
|
||||
|
||||
defaultSrc() {
|
||||
this.isHandImg = false;
|
||||
|
|
@ -273,52 +203,6 @@ export default {
|
|||
that.userSec = sec;
|
||||
}, 1000);
|
||||
},
|
||||
//跳转详情页
|
||||
goMore(index) {
|
||||
//1公告 2站内信
|
||||
this.$router.push({
|
||||
path: "/noticeLists",
|
||||
query: { index: index },
|
||||
});
|
||||
},
|
||||
//提交意见反馈
|
||||
submitFeed(formName) {
|
||||
if (this.feedbackForm.type == "" || this.feedbackForm.type == undefined) {
|
||||
this.$message({
|
||||
message: "请选择反馈类型",
|
||||
type: "error",
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (this.feedbackForm.idea == "" || this.feedbackForm.idea == undefined) {
|
||||
this.$message({
|
||||
message: "请输入反馈内容",
|
||||
type: "error",
|
||||
});
|
||||
return;
|
||||
}
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$confirm("是否确认提交意见反馈" + "?", "", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning",
|
||||
}).then((_) => {
|
||||
sid.saveFeedBack(this.feedbackForm).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.$message({
|
||||
message: "提交成功",
|
||||
type: "success",
|
||||
});
|
||||
this.$refs.feedbackForm.clearValidate();
|
||||
this.getFeedBackList();
|
||||
this.feedbackForm = { type: "", idea: "" };
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//获取用户真实奖衔
|
||||
getUserAwards() {
|
||||
|
|
@ -326,18 +210,6 @@ export default {
|
|||
this.awards = res.data;
|
||||
});
|
||||
},
|
||||
getData() {
|
||||
//functionType 公告1 站内信2
|
||||
sid.getNoticeList({ functionType: 2 }).then((res) => {
|
||||
this.listData = res.rows;
|
||||
});
|
||||
sid.getFeedbackType().then((res) => {
|
||||
this.feedbackTypeList = res.data;
|
||||
});
|
||||
sid.memberAwards().then((res) => {
|
||||
this.awardsList = res.data;
|
||||
});
|
||||
},
|
||||
goRouter(index) {
|
||||
//1等级2奖衔
|
||||
this.$router.push({
|
||||
|
|
@ -367,32 +239,7 @@ export default {
|
|||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.styleColors0 {
|
||||
color: #f64e49;
|
||||
font-size: 14px;
|
||||
}
|
||||
.styleColors1 {
|
||||
color: #85b9fe;
|
||||
font-size: 14px;
|
||||
}
|
||||
.styleColors2 {
|
||||
color: #6be8b0;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.title-con {
|
||||
color: #333;
|
||||
font-size: 24px;
|
||||
font-weight: 600;
|
||||
text-align: center;
|
||||
margin: 5px 0 15px 0;
|
||||
}
|
||||
|
||||
.more {
|
||||
color: #41b2ff;
|
||||
font-size: 16px;
|
||||
cursor: pointer;
|
||||
}
|
||||
::v-deep .el-input--suffix .el-input__inner {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
|
@ -494,33 +341,7 @@ export default {
|
|||
line-height: 40px;
|
||||
}
|
||||
}
|
||||
.celebrity {
|
||||
text-align: center;
|
||||
.celebrity-content {
|
||||
display: flex;
|
||||
height: 180px;
|
||||
flex-wrap: wrap;
|
||||
margin-left: -40px;
|
||||
// height: 135px;
|
||||
//padding: 0 30px 0 0;
|
||||
justify-content: center;
|
||||
//align-items: center;
|
||||
.celebrity-list {
|
||||
margin-bottom: 20px;
|
||||
img {
|
||||
width: 66px;
|
||||
height: 66px;
|
||||
margin-left: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.title {
|
||||
color: #333;
|
||||
font-size: 24px;
|
||||
font-weight: 600;
|
||||
margin: 30px 0 15px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.awardscard {
|
||||
width: 346px;
|
||||
margin: 0 auto;
|
||||
|
|
@ -547,41 +368,6 @@ export default {
|
|||
}
|
||||
}
|
||||
.user-cards-left {
|
||||
.rank {
|
||||
font-size: 14px;
|
||||
color: #fff;
|
||||
margin: 5px 10px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.lines {
|
||||
height: 1px;
|
||||
background: #ffffff;
|
||||
margin-top: 10px;
|
||||
}
|
||||
.experience {
|
||||
font-size: 8px;
|
||||
margin: 15px 0 0 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 0 0px;
|
||||
flex-wrap: wrap;
|
||||
color: #fff;
|
||||
span {
|
||||
font-size: 12px;
|
||||
}
|
||||
.ju_text1 {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.ju_text2 {
|
||||
color: #fb3024;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 0 3px;
|
||||
}
|
||||
}
|
||||
.schedule {
|
||||
// width: 149px;
|
||||
flex: 1;
|
||||
|
|
@ -640,36 +426,6 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
.znBox {
|
||||
margin-top: 20px;
|
||||
border-top: 5px solid rgba(0, 0, 0, 0.05);
|
||||
// border-bottom: 5px solid rgba(0, 0, 0, 0.05);
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
.zntitle {
|
||||
font-size: 24px;
|
||||
font-family: PingFang SC-Medium, PingFang SC;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
.znCenter {
|
||||
.znContent {
|
||||
height: 220px;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.yt1 {
|
||||
font-weight: 600;
|
||||
font-size: 18px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.hisImg {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.honor_wrapper {
|
||||
|
|
@ -691,17 +447,4 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .ideaselect .el-input__inner {
|
||||
width: 260px;
|
||||
border-radius: 6px 6px 6px 6px;
|
||||
//background: rgba(0, 0, 0, 0.05) !important;
|
||||
}
|
||||
|
||||
::v-deep .ideainput .el-textarea__inner {
|
||||
width: 260px;
|
||||
height: 160px;
|
||||
border-radius: 10px 10px 10px 10px;
|
||||
//background: rgba(0, 0, 0, 0.05) !important;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -189,69 +189,6 @@
|
|||
<!-- 直推排行弹窗 -->
|
||||
<directrank-popup @callznMethodTrigger="callznMethod"></directrank-popup>
|
||||
</div>
|
||||
|
||||
<div class="domTree">
|
||||
<el-dialog
|
||||
title=""
|
||||
width="35%"
|
||||
:visible.sync="isTree"
|
||||
:before-close="closeTree"
|
||||
:show-close="false"
|
||||
>
|
||||
<div
|
||||
class="shareClass"
|
||||
:style="{ backgroundImage: `url(${treeObj.cover})` }"
|
||||
>
|
||||
<div class="cha" @click="isTree = false">
|
||||
<i class="el-icon-close"></i>
|
||||
</div>
|
||||
<div class="titTre">{{ treeObj.actName }}</div>
|
||||
<img
|
||||
class="shareImg"
|
||||
@click="toPayTree"
|
||||
src="@/assets/images/zs.png"
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
<div class="goodsDiag_a">
|
||||
<!-- 植树 -->
|
||||
<el-dialog
|
||||
title=""
|
||||
:visible.sync="isGoods"
|
||||
width="25%"
|
||||
center
|
||||
:append-to-body="true"
|
||||
style="z-index: 30000"
|
||||
:before-close="closeGoods"
|
||||
>
|
||||
<div class="goodsDiag">
|
||||
<div class="dis_t">{{ "种植" }}</div>
|
||||
<div class="dis_a">
|
||||
<div class="disFlex">
|
||||
<div class="dis_l">{{ "数量" }}:</div>
|
||||
<el-input-number
|
||||
size="mini"
|
||||
@change="treePrice"
|
||||
v-model="treeObj.quantity"
|
||||
:min="treeMin"
|
||||
></el-input-number>
|
||||
</div>
|
||||
<div class="disFlex">
|
||||
<div class="dis_l">{{ "公益金" }}:</div>
|
||||
<div class="dis_r">¥{{ treeObj.amount | numberToCurrency }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<span slot="footer" class="treefooter">
|
||||
<el-button type="primary" class="delBtn" @click="payGoods">{{
|
||||
"确定"
|
||||
}}</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
<PayTree :isPay="isPay" ref="payment" @closePay="closePay"></PayTree>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
|
@ -267,7 +204,7 @@ import * as api from "@/api/index.js";
|
|||
import { mapGetters } from "vuex";
|
||||
import { getUserUpdatePWd } from "@/api/wallet";
|
||||
import { forgetPwd, forgetSms } from "@/api/login";
|
||||
import PayTree from "@/components/PayTree.vue";
|
||||
|
||||
import * as goods from "@/api/goods.js";
|
||||
import znNewsPopup from "@/components/znNewsPopup.vue";
|
||||
|
||||
|
|
@ -281,7 +218,6 @@ export default {
|
|||
deal,
|
||||
performance,
|
||||
noticePopup,
|
||||
PayTree,
|
||||
znNewsPopup,
|
||||
},
|
||||
computed: {
|
||||
|
|
@ -398,19 +334,7 @@ export default {
|
|||
});
|
||||
});
|
||||
},
|
||||
closePay(val) {
|
||||
if (val) {
|
||||
this.isPay = false;
|
||||
this.isGoods = false;
|
||||
} else {
|
||||
this.$confirm("确认取消支付" + "?")
|
||||
.then((_) => {
|
||||
this.isPay = false;
|
||||
this.isGoods = false;
|
||||
})
|
||||
.catch((_) => {});
|
||||
}
|
||||
},
|
||||
|
||||
closeTree() {
|
||||
this.isTree = false;
|
||||
},
|
||||
|
|
@ -421,18 +345,7 @@ export default {
|
|||
let amount = e * Number(this.treeObj.price);
|
||||
this.$set(this.treeObj, "amount", amount);
|
||||
},
|
||||
payGoods() {
|
||||
this.$refs.payment.howMoney(this.treeObj);
|
||||
this.isPay = true;
|
||||
// api
|
||||
// .shoppingTree({
|
||||
// pkBaseId: this.treeObj.pkBaseId,
|
||||
// pkTreeRule: this.treeObj.pkTreeRule,
|
||||
// shopQuantity: this.treeObj.quantity,
|
||||
// orderAmount: this.treeObj.amount,
|
||||
// })
|
||||
// .then((res) => {})
|
||||
},
|
||||
|
||||
toPayTree() {
|
||||
this.isGoods = true;
|
||||
this.isTree = false;
|
||||
|
|
|
|||
|
|
@ -1,49 +1,48 @@
|
|||
<template>
|
||||
<div class="contents">
|
||||
<div class="return" @click="returnTap">{{'返回'}}</div>
|
||||
<div class="content-width">
|
||||
<div class="marketList" v-for="item in bannerLists" @click="navTaps(item)">
|
||||
<div class="marketName">{{ item.storeName }}</div>
|
||||
<div class="market-info tops">
|
||||
<div class="market-icon">
|
||||
<img src="@/assets/images/markerSpace/user.png" />
|
||||
</div>
|
||||
<div class="name">
|
||||
联系人:{{item.storePerson}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="market-info">
|
||||
<div class="market-icon">
|
||||
<img src="@/assets/images/markerSpace/phone.png" />
|
||||
</div>
|
||||
<div class="name">
|
||||
联系方式:{{item.storePhone}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="market-info">
|
||||
<div class="market-icon">
|
||||
<img src="@/assets/images/markerSpace/address1.png" />
|
||||
</div>
|
||||
<div class="name">
|
||||
地址:{{item.storeProvinceVal}}{{item.storeCityVal}}{{item.storeCountyVal}}{{item.storeAddress}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="marketImg">
|
||||
<img :src="item.fileList[0]"/>
|
||||
</div>
|
||||
|
||||
<div class="return" @click="returnTap">{{ "返回" }}</div>
|
||||
<div class="content-width">
|
||||
<div
|
||||
class="marketList"
|
||||
v-for="item in bannerLists"
|
||||
@click="navTaps(item)"
|
||||
>
|
||||
<div class="marketName">{{ item.storeName }}</div>
|
||||
<div class="market-info tops">
|
||||
<div class="market-icon">
|
||||
<img src="@/assets/images/markerSpace/user.png" />
|
||||
</div>
|
||||
<div class="name">联系人:{{ item.storePerson }}</div>
|
||||
</div>
|
||||
<div class="market-info">
|
||||
<div class="market-icon">
|
||||
<img src="@/assets/images/markerSpace/phone.png" />
|
||||
</div>
|
||||
<div class="name">联系方式:{{ item.storePhone }}</div>
|
||||
</div>
|
||||
<div class="market-info">
|
||||
<div class="market-icon">
|
||||
<img src="@/assets/images/markerSpace/address1.png" />
|
||||
</div>
|
||||
<div class="name">
|
||||
地址:{{ item.storeProvinceVal }}{{ item.storeCityVal
|
||||
}}{{ item.storeCountyVal }}{{ item.storeAddress }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="marketImg">
|
||||
<img :src="item.fileList[0]" />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<pagination
|
||||
:total="total"
|
||||
:pageSizes="[15]"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getBankCardChoiceList"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<pagination
|
||||
:total="total"
|
||||
:pageSizes="[15]"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getBankCardChoiceList"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -58,113 +57,114 @@ import { getToken } from "@/util/auth";
|
|||
export default {
|
||||
data() {
|
||||
return {
|
||||
bannerLists:[],
|
||||
total:0,
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 15,
|
||||
},
|
||||
bannerLists: [],
|
||||
total: 0,
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 15,
|
||||
},
|
||||
};
|
||||
},
|
||||
components: { },
|
||||
components: {},
|
||||
watch: {},
|
||||
mounted() {
|
||||
this.getBankCardChoiceList();
|
||||
},
|
||||
methods: {
|
||||
getBankCardChoiceList() {
|
||||
sid.marketList(this.queryParams).then((res) => {
|
||||
let arr=[]
|
||||
res.rows.forEach((item)=>{
|
||||
if(item.fileList !=undefined){
|
||||
arr.push(item)
|
||||
}
|
||||
})
|
||||
this.bannerLists = arr;
|
||||
this.total = res.total;
|
||||
sid.marketList(this.queryParams).then((res) => {
|
||||
let arr = [];
|
||||
res.rows.forEach((item) => {
|
||||
if (item.fileList != undefined) {
|
||||
arr.push(item);
|
||||
}
|
||||
});
|
||||
this.bannerLists = arr;
|
||||
this.total = res.total;
|
||||
});
|
||||
},
|
||||
returnTap(){
|
||||
this.$router.go(-1)
|
||||
},
|
||||
navTaps(item){
|
||||
this.$router.push({
|
||||
path: '/makerspaceDetail',
|
||||
})
|
||||
localStorage.setItem("marketSpace",JSON.stringify(item))
|
||||
},
|
||||
}
|
||||
returnTap() {
|
||||
this.$router.go(-1);
|
||||
},
|
||||
navTaps(item) {
|
||||
this.$router.push({
|
||||
path: "/makerspaceDetail",
|
||||
});
|
||||
localStorage.setItem("marketSpace", JSON.stringify(item));
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.pagination-container{
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
background: #f9f9f9;
|
||||
.pagination-container {
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
background: #f9f9f9;
|
||||
}
|
||||
.tops{
|
||||
margin-top: 60px;
|
||||
.tops {
|
||||
margin-top: 60px;
|
||||
}
|
||||
.market-info {
|
||||
display: flex;
|
||||
line-height: 20px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
.name {
|
||||
color: #333;
|
||||
font-size: 16px;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.market-icon {
|
||||
img {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
}
|
||||
.market-info{
|
||||
display: flex;
|
||||
line-height: 20px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
.name{
|
||||
color: #333;
|
||||
font-size: 16px;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.market-icon{
|
||||
img{
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
}
|
||||
}
|
||||
.marketImg{
|
||||
position: absolute;
|
||||
right: 20px;
|
||||
top: 20px;
|
||||
img{
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
}
|
||||
}
|
||||
.marketName{
|
||||
color: #333;
|
||||
font-size: 28px;
|
||||
font-weight: 600;
|
||||
}
|
||||
.return{
|
||||
cursor: pointer;
|
||||
width: 98px;
|
||||
height: 48px;
|
||||
background: #B8B8B8;
|
||||
border-radius: 6px 6px 6px 6px;
|
||||
opacity: 1;
|
||||
color: #fff;
|
||||
font-size: 16px;
|
||||
margin-left: 60px;
|
||||
text-align: center;
|
||||
line-height: 48px;
|
||||
margin-top: 27px;
|
||||
}
|
||||
.content-width{
|
||||
padding: 20px 100px 20px 30px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.marketList{
|
||||
position: relative;
|
||||
width: 500px;
|
||||
//height: 205px;
|
||||
background: #FFFFFF;
|
||||
box-shadow: inset 0px 0px 40px 0px #DBDBDB, 0px 0px 10px 0px rgba(0,0,0,0.1);
|
||||
border-radius: 10px 10px 10px 10px;
|
||||
padding: 20px 25px;
|
||||
margin-left: 20px;
|
||||
cursor: pointer;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.marketImg {
|
||||
position: absolute;
|
||||
right: 20px;
|
||||
top: 20px;
|
||||
img {
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
}
|
||||
}
|
||||
.marketName {
|
||||
color: #333;
|
||||
font-size: 28px;
|
||||
font-weight: 600;
|
||||
}
|
||||
.return {
|
||||
cursor: pointer;
|
||||
width: 98px;
|
||||
height: 48px;
|
||||
background: #b8b8b8;
|
||||
border-radius: 6px 6px 6px 6px;
|
||||
opacity: 1;
|
||||
color: #fff;
|
||||
font-size: 16px;
|
||||
margin-left: 60px;
|
||||
text-align: center;
|
||||
line-height: 48px;
|
||||
margin-top: 27px;
|
||||
}
|
||||
.content-width {
|
||||
padding: 20px 100px 20px 30px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.marketList {
|
||||
position: relative;
|
||||
width: 500px;
|
||||
//height: 205px;
|
||||
background: #ffffff;
|
||||
box-shadow: inset 0px 0px 40px 0px #dbdbdb,
|
||||
0px 0px 10px 0px rgba(0, 0, 0, 0.1);
|
||||
border-radius: 10px 10px 10px 10px;
|
||||
padding: 20px 25px;
|
||||
margin-left: 20px;
|
||||
cursor: pointer;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
Loading…
Reference in New Issue