This commit is contained in:
cun-nan 2024-09-20 17:52:19 +08:00
parent ca787cc874
commit f727da7ce3
6 changed files with 1115 additions and 897 deletions

View File

@ -51,7 +51,7 @@ public class Const {
//小程序异步通知(回调地址)
public static String notify_url = "https://oilapi.youkerr.com/oilAdmin/api/fyPay/notify";
// public static String notify_url = "http://k40180f897.goho.co/api/fyPay/notify";
// public static String notify_url = "https://8q4f124343.yicp.fun/api/fyPay/notify";
// public static String notify_url = "https://8q4f124343.yicp.fun/api/fyPay/notify";
//主扫异步通知(回调地址)
public static String notify_url_scan = "https://oilapi.youkerr.com/oilAdmin/api/fyPay/notifyScan";

View File

@ -29,6 +29,7 @@ import com.fuint.business.marketingActivity.cardValue.vo.CardValueAppletVO;
import com.fuint.business.marketingActivity.cardValue.vo.CardValueUniVo;
import com.fuint.business.marketingActivity.cardValue.vo.CardValueVO;
import com.fuint.business.marketingActivity.cardValue.vo.CardValueVOs;
import com.fuint.business.member.service.ILJStaffService;
import com.fuint.business.store.service.StoreService;
import com.fuint.business.storeInformation.service.ILJStoreService;
import com.fuint.business.userManager.service.LJUserGradeService;
@ -82,6 +83,9 @@ public class CardValueServiceImpl extends ServiceImpl<CardValueMapper, CardValue
@Autowired
private NewMtStaffMapper mtStaffMapper;
@Autowired
private ILJStaffService staffService;
/**
* 分页查询所有数据
* @param page
@ -139,12 +143,12 @@ public class CardValueServiceImpl extends ServiceImpl<CardValueMapper, CardValue
LambdaQueryWrapper<CardValue> queryWrapper = new LambdaQueryWrapper<>();
//构建查询条件
if (ObjectUtils.isNotEmpty(cardValue.getIsonline())){
// if (ObjectUtils.isNotEmpty(cardValue.getIsonline())){
queryWrapper.eq(CardValue::getIsonline,"0");
}
if (ObjectUtils.isNotEmpty(cardValue.getActiveStatus())){
// }
// if (ObjectUtils.isNotEmpty(cardValue.getActiveStatus())){
queryWrapper.eq(CardValue::getActiveStatus,"1");
}
// }
if (ObjectUtils.isNotEmpty(cardValue.getStoreId())){
queryWrapper.eq(CardValue::getStoreId,cardValue.getStoreId());
}
@ -194,6 +198,7 @@ public class CardValueServiceImpl extends ServiceImpl<CardValueMapper, CardValue
cardValueUniVo.setCardValueList(cardValueVOs);
cardValueUniVo.setStaffList(newMtStaffs);
cardValueUniVo.setStoreName(ljStoreService.queryStoreById(cardValue.getStoreId()).getName());
cardValueUniVo.setStaff(staffService.selectStaffByStoreId(cardValue.getStoreId()));
return cardValueUniVo;
}

View File

@ -1,5 +1,6 @@
package com.fuint.business.marketingActivity.cardValue.vo;
import com.fuint.business.member.entity.LJStaff;
import com.fuint.repository.model.MtStaff;
import com.fuint.repository.model.NewMtStaff;
import lombok.Data;
@ -14,4 +15,6 @@ public class CardValueUniVo {
private List<CardValueVOs> cardValueList;
//可以选择的员工
private List<NewMtStaff> staffList;
// 员工信息
private LJStaff staff;
}

View File

@ -1,388 +1,390 @@
<template>
<view class="content">
<view class="container">
<!-- <view class="my-header">
<view class="my-icons" @click="goback"> <uni-icons type="left" color="#ffffff" size="16"></uni-icons>
</view>
<view class="my-text">二维码</view>
<view class="my-icons"></view>
</view> -->
<!-- 顶部区域 -->
<view class="title_">付款码</view>
<view class="size_">结账时请出示</view>
<view class="cen-box">
<!-- <view class="box-top">
请出示此码给加油员
</view> -->
<view class="code-top">
<w-barcode :options="option"></w-barcode>
</view>
<view class="hui-size">
<!-- <text>2023 **** **** 5523</text> -->
<text>{{barCode}}</text>
<text @click="lookNumber">查看数字</text>
</view>
<view class="code-box">
<w-qrcode :options="options"></w-qrcode>
</view>
<view class="dis-size">
<u-icon name="reload" @click="refresh" color="#E02020" size="18"></u-icon>
<!-- <u-count-down :timestamp="timestamp"></u-count-down> -->
<text style="margin-left: 10px;">
{{timestamp}}刷新请勿截屏以免影响正常使用
</text>
</view>
<view class="bottom-box">
<view class="">
<view class="h_siz">储值卡</view>
<view class="">余额{{cardBalance.cardBalance}}</view>
</view>
<view class="button_c" @click="goMemberRecharge()">充值</view>
</view>
<view class="content">
<view class="container">
<!-- <view class="my-header">
<view class="my-icons" @click="goback"> <uni-icons type="left" color="#ffffff" size="16"></uni-icons>
</view>
<view class="my-text">二维码</view>
<view class="my-icons"></view>
</view> -->
<!-- 顶部区域 -->
<view class="title_">付款码</view>
<view class="size_">结账时请出示</view>
<view class="cen-box">
<!-- <view class="box-top">
请出示此码给加油员
</view> -->
<view class="code-top">
<w-barcode :options="option"></w-barcode>
</view>
<view class="hui-size">
<!-- <text>2023 **** **** 5523</text> -->
<text>{{barCode}}</text>
<text @click="lookNumber">查看数字</text>
</view>
<view class="code-box">
<w-qrcode :options="options"></w-qrcode>
</view>
<view class="dis-size">
<u-icon name="reload" @click="refresh" color="#E02020" size="18"></u-icon>
<!-- <u-count-down :timestamp="timestamp"></u-count-down> -->
<text style="margin-left: 10px;">
{{timestamp}}刷新请勿截屏以免影响正常使用
</text>
</view>
<view class="bottom-box" @click="show = !show">
<view class="">
<view class="h_siz">储值卡</view>
<view class="">余额{{cardBalance.cardBalance}}</view>
</view>
<view class="button_c" @click="goMemberRecharge()">充值</view>
</view>
</view>
</view>
<view class="v-bottom-box">
<u-icon name="warning-fill" size="20px"></u-icon>
<view style="width: 80%;margin-left: 10px;">付款码有效时长60秒切勿截屏使用</view>
</view>
</view>
<u-popup :show="show" :round="10" @close="close" @open="open">
<view class="box-popup">
<view class="popup-top">
<view class="title">请选择用户类型</view>
<view class="hui-size">如果付款失败尝试使用其他方式完成付款</view>
</view>
<view class="bottom-box" v-for="(item,index) in deduction" :key="index"
@click="choosePayMethod(item.value)">
<view style="display: flex;align-items: center;">
<uni-icons type="wallet-filled" color="#2979ff" size="30"></uni-icons>
<view style="margin-left: 10px;">
<view class="">{{item.value}}</view>
<!-- <view style="font-size: 14px; color: #666666;">根据账户自动识别的付款方式</view> -->
</view>
</view>
<view class="v-bottom-box">
<u-icon name="warning-fill" size="25px" color="#FF9655"></u-icon>
<view style="width: 80%;margin-left: 10px;">付款码有效时长60秒切勿截屏使用</view>
</view>
</view>
<u-popup :show="show" :round="10" @close="close" @open="open">
<view class="box-popup">
<view class="popup-top">
<view class="title">请选择用户类型</view>
<view class="hui-size">如果付款失败尝试使用其他方式完成付款</view>
</view>
<view class="bottom-box" v-for="(item,index) in deduction" :key="index"
@click="choosePayMethod(item.value)">
<view style="display: flex;align-items: center;">
<uni-icons type="wallet-filled" color="#2979ff" size="30"></uni-icons>
<view style="margin-left: 10px;">
<view class="">{{item.value}}</view>
<!-- <view style="font-size: 14px; color: #666666;">根据账户自动识别的付款方式</view> -->
</view>
</view>
<view class="">
<u-icon name="arrow-right"></u-icon>
</view>
</view>
<!-- <view class="bottom-box">
<view style="display: flex;align-items: center;">
<uni-icons type="wallet-filled" color="#2979ff" size="30"></uni-icons>
<view style="margin-left: 10px;">
<view class="">囤油卡</view>
<view style="font-size: 14px; color: #666666;">根据账户自动识别的付款方式</view>
</view>
</view>
<view class="">
<u-icon name="arrow-right"></u-icon>
</view>
</view> -->
<view class="">
<u-icon name="arrow-right"></u-icon>
</view>
</view>
<view class="bottom-box">
<view style="display: flex;align-items: center;">
<uni-icons type="wallet-filled" color="#2979ff" size="30"></uni-icons>
<view style="margin-left: 10px;">
<view class="">囤油卡</view>
<view style="font-size: 14px; color: #666666;">根据账户自动识别的付款方式</view>
</view>
</view>
<view class="">
<u-icon name="arrow-right"></u-icon>
</view>
</view>
</view>
</u-popup>
</view>
</view>
</u-popup>
</view>
</template>
<script>
import request from '../../utils/request'
export default {
data() {
return {
timestamp: 60,
title: '',
show: false,
option: {
width: 670, // rpx
height: 150, // rpx
code: 'E57890543271985', //
},
options: {
code: 'https://qm.qq.com/cgi-bin/qm/qr?k=LKqML292dD2WvwQfAJXBUmvgbiB_TZWF&noverify=0', //
size: 460, // 460460rpx
},
deduction: [{
key: "balance",
value: "储值卡扣款"
},
{
key: "oilStorageCard",
value: "囤油卡扣款"
},
],
value: "储值卡扣款",
barCode: "",
isLook: false,
timer: {},
cardBalance:{},
}
},
onLoad() {
this.getBarCode()
this.getQrCode()
this.countdown()
this.getUserInfo()
},
components: {
import request from '../../utils/request'
export default {
data() {
return {
timestamp: 60,
title: '',
show: false,
option: {
width: 670, // rpx
height: 150, // rpx
code: 'E57890543271985', //
},
options: {
code: 'https://qm.qq.com/cgi-bin/qm/qr?k=LKqML292dD2WvwQfAJXBUmvgbiB_TZWF&noverify=0', //
size: 460, // 460460rpx
},
deduction: [{
key: "oilStorageCard",
value: "优先使用囤油卡付款",
desc:"若囤油卡升数不足进行支付,则会与储值卡组合付款"
},
{
key: "balance",
value: "储值卡扣款",
desc:""
},
],
value: "oilStorageCard",
barCode: "",
isLook: false,
timer: {},
cardBalance:{},
}
},
onLoad() {
this.getBarCode()
this.getQrCode()
this.countdown()
this.getUserInfo()
},
components: {
},
methods: {
//
goMemberRecharge() {
uni.navigateTo({
url: '/pagesHome/memberRecharge/index'
})
},
//
getUserInfo(){
request({
url: '/business/userManager/user/getUserBalanceApplet',
method: 'get',
params: this.query
}).then(res => {
if (res.code == 200) {
this.cardBalance = res.data
}
})
},
//
lookNumber() {
if (this.isLook) {
this.barCode = this.option.code.slice(0, 4) + " **** **** " + this.option.code.slice(this.option.code
.length - 5, this.option.code.length - 1)
this.isLook = false
} else {
this.barCode = this.option.code.replace(/(.{4})/g, '$1 ')
this.isLook = true
}
},
//
countdown() {
let _this = this
_this.timer = setInterval(() => {
// countdown1
_this.timestamp--;
// 0
if (_this.timestamp === 0) {
_this.getBarCode()
_this.getQrCode()
_this.timestamp = 60
}
}, 1000);
},
//
refresh() {
this.getBarCode()
this.getQrCode()
this.timestamp = 60
},
//
choosePayMethod(val) {
this.value = val
this.show = false
},
//
getBarCode() {
request({
url: 'business/qrCode/createBarCode',
method: 'get',
}).then(res => {
this.option.code = res.data
this.barCode = res.data.slice(0, 4) + " **** **** " + res.data.slice(res.data.length - 5, res
.data.length - 1)
})
},
//
getQrCode() {
request({
url: 'business/qrCode/createQrCode',
method: 'get',
}).then(res => {
this.options.code = res.data
})
},
close() {
console.log('弹出层收起');
this.show = false
},
open() {
console.log('弹出层打开');
},
bottomShow() {
this.show = true
},
methods: {
//
goMemberRecharge() {
uni.navigateTo({
url: '/pagesHome/memberRecharge/index'
})
},
//
getUserInfo(){
request({
url: '/business/userManager/user/getUserBalanceApplet',
method: 'get',
params: this.query
}).then(res => {
if (res.code == 200) {
this.cardBalance = res.data
}
})
},
//
lookNumber() {
if (this.isLook) {
this.barCode = this.option.code.slice(0, 4) + " **** **** " + this.option.code.slice(this.option.code
.length - 5, this.option.code.length - 1)
this.isLook = false
} else {
this.barCode = this.option.code.replace(/(.{4})/g, '$1 ')
this.isLook = true
}
},
//
countdown() {
let _this = this
_this.timer = setInterval(() => {
// countdown1
_this.timestamp--;
// 0
if (_this.timestamp === 0) {
_this.getBarCode()
_this.getQrCode()
_this.timestamp = 60
}
}, 1000);
},
//
refresh() {
this.getBarCode()
this.getQrCode()
this.timestamp = 60
},
//
choosePayMethod(val) {
this.value = val
this.show = false
},
//
getBarCode() {
request({
url: 'business/qrCode/createBarCode',
method: 'get',
}).then(res => {
this.option.code = res.data
this.barCode = res.data.slice(0, 4) + " **** **** " + res.data.slice(res.data.length - 5, res
.data.length - 1)
})
},
//
getQrCode() {
request({
url: 'business/qrCode/createQrCode',
method: 'get',
}).then(res => {
this.options.code = res.data
})
},
close() {
console.log('弹出层收起');
this.show = false
},
open() {
console.log('弹出层打开');
},
bottomShow() {
this.show = true
},
goback() {
clearInterval(this.timer)
uni.navigateBack()
}
}
}
},
goback() {
clearInterval(this.timer)
uni.navigateBack()
}
}
}
</script>
<style scoped lang="scss">
.button_c{
width: 60px;
height: 30px;
line-height: 30px;
text-align: center;
border-radius: 5px;
background-color: #FA6400;
color: #FFFFFF;
}
.button_c{
width: 60px;
height: 30px;
line-height: 30px;
text-align: center;
border-radius: 5px;
background-color: #FF9655;
color: #FFFFFF;
}
.content {
background: #f4f5f6;
}
.content {
background: #f4f5f6;
}
.container {
width: 100%;
height: 100vh;
box-sizing: border-box;
// padding-top: 88px;
background-color: #FA6400;
}
.container {
width: 100%;
height: 100vh;
box-sizing: border-box;
// padding-top: 88px;
background-color: #ff9655;
}
.my-header {
width: 100%;
height: 88px;
background: #FA6400;
display: flex;
align-items: center;
justify-content: space-between;
color: #ffffff;
box-sizing: border-box;
padding: 0px 15px;
padding-top: 40px;
.my-header {
width: 100%;
height: 88px;
background: #ff9655;
display: flex;
align-items: center;
justify-content: space-between;
color: #ffffff;
box-sizing: border-box;
padding: 0px 15px;
padding-top: 40px;
.my-icons {
width: 20px;
.my-icons {
width: 20px;
}
}
position: fixed;
top: 0px;
}
position: fixed;
top: 0px;
}
.cen-box {
width: 95%;
background: #ffffff;
box-sizing: border-box;
padding: 15px;
border-radius: 8px;
margin: 10px auto;
}
.cen-box {
width: 95%;
background: #ffffff;
box-sizing: border-box;
padding: 15px;
border-radius: 8px;
margin: 10px auto;
}
.box-top {
width: 100%;
box-sizing: border-box;
// padding: 10px 0px;
padding-bottom: 10px;
border-bottom: 1px solid #f4f5f6;
text-align: center;
font-size: 18px;
font-weight: bold;
}
.box-top {
width: 100%;
box-sizing: border-box;
// padding: 10px 0px;
padding-bottom: 10px;
border-bottom: 1px solid #f4f5f6;
text-align: center;
font-size: 18px;
font-weight: bold;
}
.code-box {
display: flex;
align-items: center;
justify-content: center;
}
.code-box {
display: flex;
align-items: center;
justify-content: center;
}
.code-top {
margin: 10px auto;
display: flex;
align-items: center;
justify-content: center;
}
.code-top {
margin: 10px auto;
display: flex;
align-items: center;
justify-content: center;
}
.hui-size {
font-size: 14px;
width: 100%;
text-align: center;
color: #666666;
margin-bottom: 20px;
}
.hui-size {
font-size: 14px;
width: 100%;
text-align: center;
color: #666666;
margin-bottom: 20px;
}
.dis-size {
display: flex;
align-items: center;
justify-content: center;
color: #666666;
font-size: 14px;
margin: 20px 0px;
}
.dis-size {
display: flex;
align-items: center;
justify-content: center;
color: #666666;
font-size: 14px;
margin: 20px 0px;
}
.bottom-box {
width: 100%;
border-top: 1px solid #f4f5f6;
box-sizing: border-box;
padding-top: 15px;
display: flex;
align-items: center;
justify-content: space-between;
}
.bottom-box {
width: 100%;
border-top: 1px solid #f4f5f6;
box-sizing: border-box;
padding-top: 15px;
display: flex;
align-items: center;
justify-content: space-between;
}
.v-bottom-box {
width: 95%;
border-radius: 8px;
box-sizing: border-box;
padding: 15px 10px;
background: #ffffff;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
color: #666666;
margin: 10px auto;
}
.v-bottom-box {
width: 95%;
border-radius: 8px;
box-sizing: border-box;
padding: 15px 8px;
background: #ffffff;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
color: #666666;
margin: 10px auto;
}
.box-popup {
width: 100%;
box-sizing: border-box;
padding: 15px;
background-color: #ffffff;
.box-popup {
width: 100%;
box-sizing: border-box;
padding: 15px;
background-color: #ffffff;
}
}
.popup-top {
box-sizing: border-box;
.popup-top {
box-sizing: border-box;
}
}
.title {
width: 100%;
text-align: center;
font-size: 18px;
font-weight: bold;
color: #000000;
}
.title {
width: 100%;
text-align: center;
font-size: 18px;
font-weight: bold;
color: #000000;
}
.hui-size {
color: #666666;
font-size: 14px;
}
.hui-size {
color: #666666;
font-size: 14px;
}
.title_ {
font-size: 16px;
color: #fff;
text-align: center;
}
.title_ {
font-size: 16px;
color: #fff;
text-align: center;
}
.size_ {
font-size: 14px;
color: #FFFFFF;
text-align: center;
}
.size_ {
font-size: 14px;
color: #FFFFFF;
text-align: center;
}
.h_siz {
color: #666666;
}
.h_siz {
color: #666666;
}
.x_sz {
font-size: 14px;
color: #333333;
}
.x_sz {
font-size: 14px;
color: #333333;
}
</style>

View File

@ -1,322 +1,343 @@
<template>
<view class="centenr">
<view class="top-box">
<view class="t-db">
<view class="d-s">
<view style="margin-right: 10px;">储值卡</view>
<view class="icon_">主卡</view>
</view>
<image src="../../static/new/rwm.png" style="width: 25px; height: 25px; "></image>
</view>
<view class="on-title">可用余额</view>
<view class="on-num">¥{{cardBalance.cardBalance || 0}}</view>
<view class="d-a">
<view class="_dj">
<view class="" v-if="cardBalance.giveAmount">¥{{cardBalance.cardBalance - cardBalance.giveAmount}}</view>
<view class="" v-else>¥{{cardBalance.cardBalance || 0}}</view>
<view style="font-size: 14px;">本金金额</view>
</view>
<view class="_dj">
<view class="">¥{{cardBalance.giveAmount || 0}}</view>
<view style="font-size: 14px;">赠送金额</view>
</view>
</view>
</view>
<view class="bottom-box">
<view class="or-aniu" @click="goMemberRecharge()">立即充值</view>
</view>
<view class="b_box">
<view class="g-box" @click="godetail()">
<view class="d-s">
<image src="../../static/new/k1.png" style="width: 20px; height: 20px;margin-right: 5px; "></image>
<view class="">余额明细</view>
</view>
<u-icon name="arrow-right" color="#333"></u-icon>
</view>
<view class="g-box" @click="equityShow= true">
<view class="d-s">
<image src="../../static/new/k2.png" style="width: 20px; height: 20px;margin-right: 5px; "></image>
<view class="">权益说明</view>
</view>
<u-icon name="arrow-right" color="#333"></u-icon>
</view>
<view class="g-box" @click="ruleShow = true">
<view class="d-s">
<image src="../../static/new/k3.png" style="width: 20px; height: 20px;margin-right: 5px; "></image>
<view class="">规则说明</view>
</view>
<u-icon name="arrow-right" color="#333"></u-icon>
</view>
</view>
<u-popup :show="ruleShow" :closeable="true" :round="10" mode="bottom" @close="ruleclose">
<view class="_tbox">
<view class="_btop">规则说明</view>
<view class="_bbox">
<!-- <view class="b_title">获取您的位置信息</view> -->
<view class="">1开卡与充值
①开卡通常需要携带本人身份证原件到油站办理并支付一定的
工本费如15元左右部分站点首次充值达到一定金额如50
0元或1000元可以免除开卡费用
②充值可以通过线上APP或到加油站进行充值金额可自由选择
但一般会有一定的优惠活动如充值100元赠送3元等
2使用与管理
①储值卡按适用对象分为记名卡和不记名卡两种记名卡可以享
受积分回馈和其他增值服务不记名卡则不能
②加油时需将储值卡插入加油卡槽内按照提示选择加油金额并
输入密码如有设置即可完成加油加油后需妥善保管好加油
卡和加油小票
③储值卡应妥善保管如有丢失应及时挂失挂失前造成的经济
损失由持卡人承担
3积分管理
①积分累积和回馈政策根据油站的具体规定执行持卡人可通过
油站官网APP或客服热线查询积分情况
②积分有效期和兑换规则需根据油站的具体规定执行一般会有
一定的限制条件
4其他规定
①部分油站可能对储值卡的使用范围进行限制如仅限本油站或
特定品牌油站使用
②持卡人应遵守油站的相关规定和制度如不得使用储值卡进行
套现购买非油品等违规行为</view>
</view>
<view class="centenr">
<view class="top-box">
<view class="t-db">
<view class="d-s">
<view style="margin-right: 10px;">储值卡</view>
<view class="icon_">主卡</view>
</view>
<image src="../../static/new/rwm.png" style="width: 25px; height: 25px; "></image>
</view>
<view class="on-title">可用余额</view>
<view class="on-num">¥{{cardBalance.cardBalance || 0}}</view>
<view class="d-a">
<view class="_dj">
<view class="" v-if="cardBalance.giveAmount">¥{{cardBalance.cardBalance - cardBalance.giveAmount}}</view>
<view class="" v-else>¥{{cardBalance.cardBalance || 0}}</view>
<view style="font-size: 14px;">本金金额</view>
</view>
<view class="_dj">
<view class="">¥{{cardBalance.giveAmount || 0}}</view>
<view style="font-size: 14px;">赠送金额</view>
</view>
</view>
</view>
<view class="bottom-box">
<view class="or-aniu" @click="goMemberRecharge()">立即充值</view>
</view>
<view class="b_box">
<view class="g-box" @click="godetail()">
<view class="d-s">
<image src="../../static/new/k1.png" style="width: 20px; height: 20px;margin-right: 5px; "></image>
<view class="">余额明细</view>
</view>
<u-icon name="arrow-right" color="#333"></u-icon>
</view>
<view class="g-box" @click="equityShow= true">
<view class="d-s">
<image src="../../static/new/k2.png" style="width: 20px; height: 20px;margin-right: 5px; "></image>
<view class="">权益说明</view>
</view>
<u-icon name="arrow-right" color="#333"></u-icon>
</view>
<view class="g-box" @click="ruleShow = true">
<view class="d-s">
<image src="../../static/new/k3.png" style="width: 20px; height: 20px;margin-right: 5px; "></image>
<view class="">规则说明</view>
</view>
<u-icon name="arrow-right" color="#333"></u-icon>
</view>
</view>
<u-popup :show="ruleShow" :closeable="true" :round="10" mode="bottom" @close="ruleclose">
<view class="_tbox">
<view class="_btop">规则说明</view>
<view class="_bbox">
<!-- <view class="b_title">获取您的位置信息</view> -->
<view class="">
{{equity.gzDetail}}
<!-- 1开卡与充值
①开卡通常需要携带本人身份证原件到油站办理并支付一定的
工本费如15元左右部分站点首次充值达到一定金额如50
0元或1000元可以免除开卡费用
②充值可以通过线上APP或到加油站进行充值金额可自由选择
但一般会有一定的优惠活动如充值100元赠送3元等
2使用与管理
①储值卡按适用对象分为记名卡和不记名卡两种记名卡可以享
受积分回馈和其他增值服务不记名卡则不能
②加油时需将储值卡插入加油卡槽内按照提示选择加油金额并
输入密码如有设置即可完成加油加油后需妥善保管好加油
卡和加油小票
③储值卡应妥善保管如有丢失应及时挂失挂失前造成的经济
损失由持卡人承担
3积分管理
①积分累积和回馈政策根据油站的具体规定执行持卡人可通过
油站官网APP或客服热线查询积分情况
②积分有效期和兑换规则需根据油站的具体规定执行一般会有
一定的限制条件
4其他规定
①部分油站可能对储值卡的使用范围进行限制如仅限本油站或
特定品牌油站使用
②持卡人应遵守油站的相关规定和制度如不得使用储值卡进行
套现购买非油品等违规行为 -->
</view>
</view>
</view>
</u-popup>
<u-popup :show="equityShow" :closeable="true" :round="10" mode="bottom" @close="equityclose">
<view class="_tbox">
<view class="_btop">权益说明</view>
<view class="_bbox">
<!-- <view class="b_title">获取您的位置信息</view> -->
<view class="">1优惠加油
①使用储值卡在加油站加油通常可以享受一定的优惠如每升油
便宜0.1-0.8元不等具体优惠幅度根据地区时间段的促销活动
而定
②充值达到一定金额如1000元20005000还可
以享受一定期限如3到6个月的额外加油优惠如1%到2%
的优惠
2积分回馈
①使用储值卡加油可以累积积分积分可用于兑换不同面值的电
子充值卡视频网站的会员或日常生活用品等
②根据客户加油卡累计积分数值设置客户级别如标准卡
铂金卡钻石卡不同级别的客户享受不同的积分回馈政
积分积累速度更快回馈更多
3增值服务
②支持线上充值和查询方便持卡人随时掌握余额和积分
情况
4便利性
①储值卡具有极高的便利性可以实现无现金加油减少携带现
金的麻烦和风险
②支持线上充值和查询方便持卡人随时掌握余额和积分情况</view>
</view>
</view>
</u-popup>
<u-popup :show="equityShow" :closeable="true" :round="10" mode="bottom" @close="equityclose">
<view class="_tbox">
<view class="_btop">权益说明</view>
<view class="_bbox">
<!-- <view class="b_title">获取您的位置信息</view> -->
<view class="">
{{equity.qyDetail}}
<!-- 1优惠加油
①使用储值卡在加油站加油通常可以享受一定的优惠如每升油
便宜0.1-0.8元不等具体优惠幅度根据地区时间段的促销活动
而定
②充值达到一定金额如1000元20005000还可
以享受一定期限如3到6个月的额外加油优惠如1%到2%
的优惠
2积分回馈
①使用储值卡加油可以累积积分积分可用于兑换不同面值的电
子充值卡视频网站的会员或日常生活用品等
②根据客户加油卡累计积分数值设置客户级别如标准卡
铂金卡钻石卡不同级别的客户享受不同的积分回馈政
积分积累速度更快回馈更多
3增值服务
②支持线上充值和查询方便持卡人随时掌握余额和积分
情况
4便利性
①储值卡具有极高的便利性可以实现无现金加油减少携带现
金的麻烦和风险
②支持线上充值和查询方便持卡人随时掌握余额和积分情况 -->
</view>
</view>
</view>
</u-popup>
</view>
</u-popup>
</view>
</view>
</template>
<script>
import request from "../../utils/request";
export default {
data() {
return {
query: {
chainStoreId: '',
couponType: '',
useStatus: 0,
pageNo: 1,
pageSize: 10
},
ruleShow: false,
equityShow: false,
windex: 0,
cardBalance:{}
}
},
onShow() {
this.query.chainStoreId = uni.getStorageSync('chainStoreId');
this.getUserBalance()
},
methods: {
//
goMemberRecharge() {
uni.navigateTo({
url: '/pagesHome/memberRecharge/index'
})
},
getUserBalance() {
request({
url: '/business/userManager/user/getUserBalanceApplet',
method: 'get',
params: this.query
}).then(res => {
if (res.code == 200) {
this.cardBalance = res.data
}
})
},
ruleclose() {
this.ruleShow = false
},
equityclose() {
this.equityShow = false
},
setIndex(index) {
this.windex = index
},
godetail() {
uni.navigateTo({
url: '/pagesHome/cardDetails/detailed'
})
}
}
}
import request from "../../utils/request";
export default {
data() {
return {
query: {
chainStoreId: '',
couponType: '',
useStatus: 0,
pageNo: 1,
pageSize: 10
},
ruleShow: false,
equityShow: false,
windex: 0,
cardBalance:{},
equity:{}
}
},
onShow() {
this.query.chainStoreId = uni.getStorageSync('chainStoreId');
this.getUserBalance()
this.getEquity()
},
methods: {
//
getEquity(){
request({
url: '/cardValueRule/getQyAndGz',
method: 'get',
params: {storeId:uni.getStorageSync("storeId")}
}).then(res => {
if (res.code == 200) {
this.equity = res.data
console.log(res,'151');
}
})
},
//
goMemberRecharge() {
uni.navigateTo({
url: '/pagesHome/memberRecharge/index'
})
},
getUserBalance() {
request({
url: '/business/userManager/user/getUserBalanceApplet',
method: 'get',
params: this.query
}).then(res => {
if (res.code == 200) {
this.cardBalance = res.data
}
})
},
ruleclose() {
this.ruleShow = false
},
equityclose() {
this.equityShow = false
},
setIndex(index) {
this.windex = index
},
godetail() {
uni.navigateTo({
url: '/pagesHome/cardDetails/detailed'
})
}
}
}
</script>
<style scoped lang="scss">
.centenr {
background: #F9F9F9;
width: 100%;
height: 100vh;
}
.centenr {
background: #F9F9F9;
width: 100%;
height: 100vh;
}
.top-box {
width: 95%;
height: 150px;
background: linear-gradient(135deg, #F77955 0%, #FFA360 100%, #F9C58C 100%);
box-sizing: border-box;
padding: 10px;
margin: 0 auto;
color: #fff;
}
.top-box {
width: 95%;
height: 150px;
background: linear-gradient(135deg, #F77955 0%, #FFA360 100%, #F9C58C 100%);
box-sizing: border-box;
padding: 10px;
margin: 0 auto;
color: #fff;
}
.bottom-box {
width: 95%;
height: 70px;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto;
}
.bottom-box {
width: 95%;
height: 70px;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto;
}
.t-db {
width: 100%;
color: #fff;
display: flex;
align-items: center;
justify-content: space-between;
}
.t-db {
width: 100%;
color: #fff;
display: flex;
align-items: center;
justify-content: space-between;
}
.b_box {
width: 95%;
margin: 15px auto;
background: #fff;
.b_box {
width: 95%;
margin: 15px auto;
background: #fff;
}
}
.g-box {
width: 100%;
box-sizing: border-box;
padding: 15px 10px;
border-bottom: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: space-between;
}
.g-box {
width: 100%;
box-sizing: border-box;
padding: 15px 10px;
border-bottom: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: space-between;
}
.d-s {
display: flex;
align-items: center;
}
.d-s {
display: flex;
align-items: center;
}
.or-aniu {
font-size: 14px;
color: #FA6400;
width: 195px;
height: 30px;
border: 1px solid #FA6400;
display: flex;
align-items: center;
justify-content: center;
}
.or-aniu {
font-size: 14px;
color: #FA6400;
width: 195px;
height: 30px;
border: 1px solid #FA6400;
display: flex;
align-items: center;
justify-content: center;
}
.icon_ {
width: 30px;
height: 16px;
background: rgba(255, 255, 255, 0.48);
border-radius: 2px;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-weight: 500;
font-size: 10px;
}
.icon_ {
width: 30px;
height: 16px;
background: rgba(255, 255, 255, 0.48);
border-radius: 2px;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-weight: 500;
font-size: 10px;
}
.d-a {
width: 100%;
display: flex;
align-items: center;
justify-content: space-around;
}
.d-a {
width: 100%;
display: flex;
align-items: center;
justify-content: space-around;
}
.on-title {
font-size: 14px;
color: #FFFFFF;
width: 100%;
text-align: center;
.on-title {
font-size: 14px;
color: #FFFFFF;
width: 100%;
text-align: center;
}
}
.on-num {
font-size: 24px;
color: #FFFFFF;
width: 100%;
text-align: center;
margin: 10px auto;
}
.on-num {
font-size: 24px;
color: #FFFFFF;
width: 100%;
text-align: center;
margin: 10px auto;
}
._dj {
font-size: 14px;
}
._dj {
font-size: 14px;
}
._tbox {
border-radius: 10px;
background: #fff;
width: 100%;
._tbox {
border-radius: 10px;
background: #fff;
width: 100%;
}
}
._btop {
box-sizing: border-box;
padding: 15px;
border-bottom: 1px solid #EEEEEE;
text-align: center;
font-weight: 600;
font-size: 14px;
color: #333333;
}
._btop {
box-sizing: border-box;
padding: 15px;
border-bottom: 1px solid #EEEEEE;
text-align: center;
font-weight: 600;
font-size: 14px;
color: #333333;
}
._bbox {
box-sizing: border-box;
padding: 15px;
font-weight: 400;
font-size: 14px;
color: #333333;
line-height: 18px;
}
._bbox {
box-sizing: border-box;
padding: 15px;
font-weight: 400;
font-size: 14px;
color: #333333;
line-height: 18px;
}
.b_title {
font-weight: bold;
}
.b_title {
font-weight: bold;
}
.b-cen {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
.b-cen {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
}
}
</style>

View File

@ -1,288 +1,475 @@
<template>
<view class="centenr">
<view class="vip-top">
<view class="t-right">储值卡 <u-icon name="arrow-down-fill" color="#fff" size="12"></u-icon> </view>
<view class="t-title">当前余额</view>
<view class="t-num">123456.98</view>
</view>
<!-- <view class="vip-title">
<view class="">中建锦绣二期站</view>
<image src="../../static/new/qh.png" style="width: 18px; height: 18px;" @click="show = true"></image>
</view> -->
<view class="input-box">
<view class="i-title">充值金额</view>
<view class="n_input">
<input type="text">
<view class="r-title">
人名
</view>
</view>
</view>
<view class="wrap_box">
<view class="w_box" v-for="(item,index) in 4" :key="index" @click="setIndex(index)"
:class="{ 'acvit' :windex == index}">
<view class="">充5000元</view>
<view class="">赠400元</view>
</view>
</view>
<view class="input-box">
<view class="i-title">赠送金额</view>
<view class="n_input">
<input type="text">
</view>
</view>
<view class="input-box">
<view class="i-title">充值备注</view>
<view class="b_input">
<input type="text">
</view>
</view>
<view class="title-box">
<view class="i-title">充值备注</view>
<view class="i-text">充值10000元赠送1000元</view>
<view class="i-text">充值5000元赠送400元</view>
<view class="i-text">充值3000元赠送200元</view>
</view>
<view class="k-box">
<view class="i-title">充值规则</view>
</view>
<view class="centenr">
<view class="vip-top">
<view class="t-right">储值卡 <u-icon name="arrow-down-fill" color="#fff" size="12"></u-icon> </view>
<view class="t-title">当前余额</view>
<view class="t-num">{{cardBalance.cardBalance || 0}}</view>
</view>
<view class="vip-title">
<view class="">{{storeName || "--"}}</view>
<!-- <image src="../../static/new/qh.png" style="width: 18px; height: 18px;" @click="show = true"></image> -->
</view>
<view class="input-box">
<view class="i-title">充值金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.balance" :disabled="isEdit">
<view class="r-title">
{{staff.realName || "--"}}
</view>
</view>
</view>
<view class="wrap_box">
<view class="w_box" v-for="(item,index) in rechargeList" :key="index" @click="setIndex(index,item)"
:class="{ 'acvit' :windex == index}">
<view class="">{{item.rechargeBalance}}</view>
<view class="">{{item.giftBalance}}</view>
</view>
<view class="w_box" @click="setIndex(rechargeList.length)"
:class="{ 'acvit' :windex == rechargeList.length}">
<view class="" style="line-height: 40px;">自定义金额</view>
</view>
</view>
<view class="input-box">
<view class="i-title">赠送金额</view>
<view class="n_input">
<input type="text" v-model="rechargeOrder.giftBalance" disabled>
</view>
</view>
<view class="input-box">
<view class="i-title">充值备注</view>
<view class="b_input">
<input type="text" v-model="rechargeOrder.remark">
</view>
</view>
<view class="title-box">
<view class="i-title">充值有礼</view>
<view class="i-text" v-for="(item,index) in describe" :key="index">{{item.discountActiveDescribe}}</view>
</view>
<view class="k-box">
<view class="i-title">充值规则</view>
<view class="i-text" v-if="describe.length>0">活动时间{{describe[0].time}}</view>
<view class="i-text" v-else>暂无规则</view>
</view>
<view style="width: 100%; height: 88px; "></view>
<view class="bottom_">
<view class="anniu_">
立即充值10000
</view>
</view>
<u-popup :show="show" :closeable="true" :round="10" mode="bottom" @close="close">
<view class="_tbox">
<view class="_btop">选择油站</view>
<view class="input_sou">
<input type="text" placeholder="请输入油站" />
<u-icon name="search" size="18px"></u-icon>
</view>
<view class="h_box" v-for="(item,index) in 4" :key="index">
<view class="">测试A店</view>
<view class="">129.9km</view>
</view>
<view style="width: 100%; height: 88px; "></view>
<view class="bottom_">
<view class="anniu_" @click="goRecharge()">
立即充值{{rechargeOrder.balance}}
</view>
</view>
<u-popup :show="show" :closeable="true" :round="10" mode="bottom" @close="close">
<view class="_tbox">
<view class="_btop">选择油站</view>
<view class="input_sou">
<input type="text" placeholder="请输入油站" />
<u-icon name="search" size="18px"></u-icon>
</view>
<view class="h_box" v-for="(item,index) in 4" :key="index">
<view class="">测试A店</view>
<view class="">129.9km</view>
</view>
</view>
</u-popup>
</view>
</view>
</u-popup>
</view>
</template>
<script>
export default {
data() {
return {
show: false,
windex: 0
}
},
methods: {
close() {
this.show = false
},
setIndex(index) {
this.windex = index
}
}
}
import request from '../../utils/request'
export default {
data() {
return {
show: false,
windex: 0,
storeId: uni.getStorageSync("storeId"),
storeName: "",
//
rechargeList: [],
//
staffList: [],
staff: {},
query: {
chainStoreId: uni.getStorageSync("chainStoreId"),
couponType: '',
useStatus: 0,
pageNo: 1,
pageSize: 10
},
cardBalance: {},
rechargeOrder: {
payType: uni.getStorageSync("appltType"),
mtStaffId: '',
id: '',
storeId: uni.getStorageSync("storeId"),
chainStoreId: uni.getStorageSync("chainStoreId"),
cardRecordId: '',
balance: 0,
types: 0
},
isEdit: true,
describe: [],
// WECHAT ALIPAY
appltType: uni.getStorageSync("appltType"),
}
},
onShow() {
this.getList()
this.getUserBalance()
this.getDescribe()
},
methods: {
//
goRecharge() {
let _this = this
request({
url: 'business/marketingActivity/cardValueRecord',
method: 'post',
data: this.rechargeOrder,
}).then(res => {
if (res.code === 200) {
if (_this.appltType == "WECHAT") {
if (!res.data.reservedPayInfo) {
uni.showToast({
title: '支付失败,请联系商家',
icon: "none"
})
return;
}
let payProvider = "wxpay"
_this.orderInfo = JSON.parse(res.data.reservedPayInfo);
uni.requestPayment({
// provider: 'wxpay' 'alipay'
provider: payProvider,
timeStamp: _this.orderInfo.timeStamp,
nonceStr: _this.orderInfo.nonceStr,
package: _this.orderInfo.package,
signType: 'MD5',
paySign: _this.orderInfo.paySign,
success: function(res) {
console.log('success:', res);
uni.reLaunch({
url: '/pagesRefuel/orderSuccess/index'
})
},
fail: function(err) {
request({
url: "business/marketingActivity/cardValueRecord/changeOrderPayStatus",
method: 'post',
data: {
"orderNo": res.data.orderNo,
"status": "payFail"
},
}).then((res) => {})
uni.showToast({
title: "支付失败!",
icon: "error"
})
// console.log('fail:', err);
}
});
}
}
if (_this.appltType == "ALIPAY") {
if (!res.data.reservedTransactionId) {
uni.showToast({
title: '支付失败,请联系商家',
icon: "none"
})
return;
}
my.tradePay({
tradeNO: res.data.reservedTransactionId
}, function(resp) {
if (resp.resultCode == '9000') {
console.log("支付成功")
uni.reLaunch({
url: '/pagesRefuel/orderSuccess/index'
})
} else {
request({
url: "/business/marketingActivity/cardValueRecord/changeOrderPayStatus",
method: 'post',
data: {
"orderNo": res.data.orderNo,
"status": "payFail"
},
}).then((res) => {})
uni.showToast({
title: "支付失败!",
icon: "error"
})
console.log('支付失败,' + resp.resultCode);
}
});
}
})
},
//
getDescribe() {
request({
url: "/business/marketingActivity/cardValue/appletList",
method: 'get',
params: {
storeId: this.storeId,
isonline: '0',
activeStatus: "1"
},
}).then((res) => {
this.describe = res.data
})
},
//
getList() {
request({
url: "/business/marketingActivity/cardValue/appletL",
method: 'get',
params: {
storeId: this.storeId
},
}).then((res) => {
this.storeName = res.data.storeName
this.rechargeList = res.data.cardValueList
if (res.data.cardValueList && res.data.cardValueList.length > 0) {
this.rechargeOrder.balance = res.data.cardValueList[0].rechargeBalance
this.rechargeOrder.payAmount = res.data.cardValueList[0].rechargeBalance
this.rechargeOrder.bidBalance = res.data.cardValueList[0].bidBalance
this.rechargeOrder.rechargeBalance = res.data.cardValueList[0].rechargeBalance
this.rechargeOrder.giftBalance = res.data.cardValueList[0].giftBalance
this.rechargeOrder.id = res.data.cardValueList[0].id
}
this.staffList = res.data.staffList
this.staff = res.data.staff
})
},
getUserBalance() {
request({
url: '/business/userManager/user/getUserBalanceApplet',
method: 'get',
params: this.query
}).then(res => {
if (res.code == 200) {
this.cardBalance = res.data
}
})
},
close() {
this.show = false
},
setIndex(index, data) {
this.windex = index
if (index != this.rechargeList.length) {
this.rechargeOrder.balance = data.rechargeBalance
this.rechargeOrder.payAmount = data.rechargeBalance
this.rechargeOrder.bidBalance = data.bidBalance
this.rechargeOrder.rechargeBalance = data.rechargeBalance
this.rechargeOrder.giftBalance = data.giftBalance
this.rechargeOrder.id = data.id
} else {
this.rechargeOrder.balance = 0
this.rechargeOrder.payAmount = 0
this.rechargeOrder.bidBalance = 0
this.rechargeOrder.rechargeBalance = 0
this.rechargeOrder.giftBalance = 0
}
}
}
}
</script>
<style scoped lang="scss">
.centenr {}
.centenr {}
.vip-top {
width: 95%;
height: 90px;
background: url('../../static/imgs/topback.png') no-repeat;
background-size: 100% 100%;
margin: 15px auto;
overflow: hidden;
border-radius: 4px;
color: #fff;
box-sizing: border-box;
padding: 10px;
}
.vip-top {
width: 95%;
height: 90px;
background: url('../../static/imgs/topback.png') no-repeat;
background-size: 100% 100%;
margin: 15px auto;
overflow: hidden;
border-radius: 4px;
color: #fff;
box-sizing: border-box;
padding: 10px;
}
.t-right {
display: flex;
width: 100%;
align-items: center;
justify-content: flex-end;
font-size: 14px;
}
.t-right {
display: flex;
width: 100%;
align-items: center;
justify-content: flex-end;
font-size: 14px;
}
.t-title {
font-size: 14px;
color: #FFFFFF;
margin-bottom: 5px;
}
.t-title {
font-size: 14px;
color: #FFFFFF;
margin-bottom: 5px;
}
.t-num {
font-size: 20px;
color: #FFFFFF;
}
.t-num {
font-size: 20px;
color: #FFFFFF;
}
.vip-title {
width: 95%;
margin: 15px auto;
font-weight: bold;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 16px;
color: #333333;
}
.vip-title {
width: 95%;
margin: 15px auto;
font-weight: bold;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 16px;
color: #333333;
}
.n_input {
width: 95%;
height: 40px;
background: #FAFAFA;
border-radius: 4px;
border: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding-left: 10px;
}
.n_input {
width: 95%;
height: 40px;
background: #FAFAFA;
border-radius: 4px;
border: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding-left: 10px;
}
.b_input {
width: 95%;
height: 40px;
background: #fff;
border-radius: 4px;
border: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: space-between;
}
.b_input {
width: 95%;
height: 40px;
background: #fff;
border-radius: 4px;
border: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: space-between;
}
.input-box {
width: 95%;
margin: 15px auto;
}
.input-box {
width: 95%;
margin: 15px auto;
}
.title-box {
border-top: 1px solid #EEEEEE;
border-bottom: 1px solid #EEEEEE;
box-sizing: border-box;
padding: 15px 10px;
}
.title-box {
border-top: 1px solid #EEEEEE;
border-bottom: 1px solid #EEEEEE;
box-sizing: border-box;
padding: 15px 10px;
}
.bottom_ {
width: 100%;
position: fixed;
bottom: 0px;
left: 0px;
background: #fff;
height: 80px;
display: flex;
align-items: center;
justify-content: center;
}
.bottom_ {
width: 100%;
position: fixed;
bottom: 0px;
left: 0px;
background: #fff;
height: 80px;
display: flex;
align-items: center;
justify-content: center;
}
.wrap_box {
width: 95%;
margin: 15px auto;
display: flex;
flex-wrap: wrap;
.wrap_box {
width: 95%;
margin: 15px auto;
display: flex;
flex-wrap: wrap;
}
}
.w_box {
width: 31%;
border: 1px solid #EEEEEE;
border-radius: 4px;
text-align: center;
color: #333333;
box-sizing: border-box;
padding: 5px;
font-size: 14px;
margin-bottom: 15px;
margin-right: 1%;
}
.w_box {
width: 31%;
border: 1px solid #EEEEEE;
border-radius: 4px;
text-align: center;
color: #333333;
box-sizing: border-box;
padding: 5px;
font-size: 14px;
margin-bottom: 15px;
margin-right: 1%;
}
.anniu_ {
width: 80%;
height: 35px;
background: #FA6400;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 50px;
color: #fff;
}
.anniu_ {
width: 80%;
height: 35px;
background: #FF9655;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 50px;
color: #fff;
}
.i-title {
font-weight: 600;
font-size: 14px;
color: #333333;
margin-bottom: 15px;
}
.i-title {
font-weight: 600;
font-size: 14px;
color: #333333;
margin-bottom: 15px;
}
.k-box {
width: 100%;
box-sizing: border-box;
padding: 15px 10px;
}
.k-box {
width: 100%;
box-sizing: border-box;
padding: 15px 10px;
}
.acvit {
background: #FA6400 !important;
color: #fff !important;
}
.acvit {
background: #FF9655 !important;
color: #fff !important;
}
.r-title {
border-left: 1px solid #eee;
width: 60px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
color: #333333;
.r-title {
border-left: 1px solid #eee;
width: 60px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
color: #333333;
}
}
._tbox {
border-radius: 10px;
background: #fff;
width: 100%;
._tbox {
border-radius: 10px;
background: #fff;
width: 100%;
}
}
._btop {
box-sizing: border-box;
padding: 15px;
border-bottom: 1px solid #EEEEEE;
text-align: center;
font-weight: 600;
font-size: 14px;
color: #333333;
}
._btop {
box-sizing: border-box;
padding: 15px;
border-bottom: 1px solid #EEEEEE;
text-align: center;
font-weight: 600;
font-size: 14px;
color: #333333;
}
.input_sou {
width: 95%;
border: 1px solid #EEEEEE;
border-radius: 50px;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 5px 10px;
margin: 15px auto;
}
.input_sou {
width: 95%;
border: 1px solid #EEEEEE;
border-radius: 50px;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 5px 10px;
margin: 15px auto;
}
.h_box {
border-bottom: 1px solid #EEEEEE;
box-sizing: border-box;
padding: 5px 15px;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}
</style>
.h_box {
border-bottom: 1px solid #EEEEEE;
box-sizing: border-box;
padding: 5px 15px;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}
</style>