10.9
This commit is contained in:
parent
6341a4b932
commit
94fb9e5b34
@ -4,60 +4,120 @@
|
||||
<div class="center-left">
|
||||
<div class="center-vh">
|
||||
<div class="center-left-top">
|
||||
<div class="vip-bottom" v-if="isMember == false" @click="dialogVisiblevip = true">
|
||||
<div>会员搜索</div>
|
||||
</div>
|
||||
<div v-else style="width: 96%;margin: 0 auto;display: flex;justify-content: space-between">
|
||||
<div
|
||||
style="display: flex;color: white;justify-content: space-around;width: 55%;
|
||||
height: 90%;border-radius: 10px;
|
||||
padding-top: 10px;
|
||||
background-color: rgb(67,119,204)">
|
||||
<div>
|
||||
<template>
|
||||
<img v-if="member.avatar" class="list-avatar" :src="baseUrl + member.avatar">
|
||||
<img v-else class="list-avatar" src="@/assets/images/avatar.png">
|
||||
</template>
|
||||
</div>
|
||||
<div style="text-align: center">
|
||||
<span style="margin-bottom: 10px">{{ member.name }}</span><br/>
|
||||
<span>{{ member.mobile }}</span>
|
||||
</div>
|
||||
<div style="background-color: rgba(46,82,142,0.65);width: 50px;height: 45px;padding-top: 5px;
|
||||
border-radius: 5px;text-align: center">
|
||||
<el-tooltip placement="top">
|
||||
<div slot="content">
|
||||
<p>会员储值账户余额:{{ member.cardBalance }}</p>
|
||||
<p>积分余额:{{ member.points }}</p>
|
||||
</div>
|
||||
<i class="el-icon-bank-card" style="font-size: 35px"></i>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
<div style="background-color: rgba(46,82,142,0.65);width: 50px;height: 45px;padding-top: 5px;
|
||||
border-radius: 5px;text-align: center">
|
||||
<el-tooltip placement="top">
|
||||
<div slot="content">
|
||||
会员等级:{{ gradeName }}
|
||||
</div>
|
||||
<i class="el-icon-medal" style="font-size: 35px"></i>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
</div>
|
||||
<div class="vip-bottom" style="height: 40px;margin-top: 10px" @click="resetMember">
|
||||
<div>重置会员</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="vip-bottom" v-if="isMember == false" @click="dialogVisiblevip = true">-->
|
||||
<!-- <div>会员搜索</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div v-else style="width: 96%;margin: 0 auto;display: flex;justify-content: space-between">-->
|
||||
<!-- <div-->
|
||||
<!-- style="display: flex;color: white;justify-content: space-around;width: 55%;-->
|
||||
<!-- height: 90%;border-radius: 10px;-->
|
||||
<!-- padding-top: 10px;-->
|
||||
<!-- background-color: rgb(67,119,204)">-->
|
||||
<!-- <div>-->
|
||||
<!-- <template>-->
|
||||
<!-- <img v-if="member.avatar" class="list-avatar" :src="baseUrl + member.avatar">-->
|
||||
<!-- <img v-else class="list-avatar" src="@/assets/images/avatar.png">-->
|
||||
<!-- </template>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div style="text-align: center">-->
|
||||
<!-- <span style="margin-bottom: 10px">{{ member.name }}</span><br/>-->
|
||||
<!-- <span>{{ member.mobile }}</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div style="background-color: rgba(46,82,142,0.65);width: 50px;height: 45px;padding-top: 5px;-->
|
||||
<!-- border-radius: 5px;text-align: center">-->
|
||||
<!-- <el-tooltip placement="top">-->
|
||||
<!-- <div slot="content">-->
|
||||
<!-- <p>会员储值账户余额:{{ member.cardBalance }}</p>-->
|
||||
<!-- <p>积分余额:{{ member.points }}</p>-->
|
||||
<!-- </div>-->
|
||||
<!-- <i class="el-icon-bank-card" style="font-size: 35px"></i>-->
|
||||
<!-- </el-tooltip>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div style="background-color: rgba(46,82,142,0.65);width: 50px;height: 45px;padding-top: 5px;-->
|
||||
<!-- border-radius: 5px;text-align: center">-->
|
||||
<!-- <el-tooltip placement="top">-->
|
||||
<!-- <div slot="content">-->
|
||||
<!-- 会员等级:{{ gradeName }}-->
|
||||
<!-- </div>-->
|
||||
<!-- <i class="el-icon-medal" style="font-size: 35px"></i>-->
|
||||
<!-- </el-tooltip>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="vip-bottom" style="height: 40px;margin-top: 10px" @click="resetMember">-->
|
||||
<!-- <div>重置会员</div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
|
||||
<!---->
|
||||
<div class="o-top" v-if="userInfo">
|
||||
<div style="width: 50%">
|
||||
<div class="d-s">
|
||||
<img src="./imgs/new_user.png" style="width: 32px;height: 32px;margin-right: 10px">
|
||||
<div >
|
||||
<div style="font-weight: bold;margin-bottom: 2px">{{chooseVipUser.name||'匿名'}}</div>
|
||||
<div class="d-s">
|
||||
<span>{{chooseVipUser.mobile}}</span>
|
||||
<sapn style="margin: 0px 5px">普通会员</sapn>
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
trigger="hover">
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
<img slot="reference" src="./imgs/kbao.png" style="width: 24px;height: 24px;margin-right: 10px">
|
||||
|
||||
</el-popover>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="d-s" >-->
|
||||
<!-- <div style="font-size: 12px;margin-right: 5px">储值卡:¥{{chooseVipUser.cardBalance}} </div>-->
|
||||
<!-- <div style="font-size: 12px">囤油卡:¥1000.000</div>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
<div class="d-s" style="width: 50%">
|
||||
<div class="an_bor" @click="addMemberRecharge()">会员充值</div>
|
||||
<div class="an_bor" @click="restVipUser">重置会员</div>
|
||||
<div class="an_bor" @click="addFreeTicket()" >赠送优惠券</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="o-top" v-if="!userInfo">
|
||||
<div class="left_input">
|
||||
<el-autocomplete
|
||||
v-model="userMobile"
|
||||
style="width: 95%; "
|
||||
:fetch-suggestions="getUsers"
|
||||
placeholder="请输入会员手机号"
|
||||
>
|
||||
<template slot-scope="{ item }">
|
||||
<div class="name" @click="chooseUser(item)">{{ item.name+" "+item.mobile }}</div>
|
||||
</template>
|
||||
</el-autocomplete>
|
||||
<i class="el-icon-search" style="font-size: 18px;margin-right: 10px" ></i>
|
||||
</div>
|
||||
<div class="d-s">
|
||||
<div class="an_bor" @click="addVip()">新增会员</div>
|
||||
</div>
|
||||
|
||||
<!-- 渲染会员列表 -->
|
||||
<div class="taber-box" v-for="(item,index) in vipUserList" :key="index">
|
||||
<div class="goods_name">
|
||||
<!-- <img src="../../../assets/images/goods.png" style="width: 30px;height: 30px">-->
|
||||
{{ item.name }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="center-left-hj">
|
||||
<div>使用积分</div>
|
||||
<div>-{{allPoints}}</div>
|
||||
</div>
|
||||
<div class="center-left-hj">
|
||||
<div>积分余额(账户余额:318积分)</div>
|
||||
<div>-{{allPoints}}</div>
|
||||
</div>
|
||||
|
||||
<div class="center-left-hj" v-show="isMember">
|
||||
<div>
|
||||
积分余额
|
||||
@ -72,7 +132,7 @@
|
||||
<div class="bule">{{allPoints}}</div>
|
||||
</div>
|
||||
<div class="th-box">
|
||||
<div @click="dialogVisible = true">加油员</div>
|
||||
<div @click="dialogVisible = true">操作员</div>
|
||||
<div style="cursor: pointer;color: crimson" @click="dialogVisible = true" >{{ staff.realName }}</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -105,13 +165,13 @@
|
||||
</div>
|
||||
<!-- 右侧-->
|
||||
<div class="center-right">
|
||||
<div class="center-right-top">
|
||||
<el-tabs v-model="queryParams.categoryId" @tab-click="handleClick">
|
||||
<div class="center-right-top" style="margin-left: 25px;">
|
||||
<el-tabs v-model="queryParams.categoryId" style="width: 100%" @tab-click="handleClick">
|
||||
<el-tab-pane label="全部" name='first'></el-tab-pane>
|
||||
<el-tab-pane v-for="(item,index) in giftCategoryList" :label="item.categoryName" :name='item.id.toString()'></el-tab-pane>
|
||||
</el-tabs>
|
||||
</div>
|
||||
<div style="width: 200px;margin-left: 2%; ">
|
||||
<div style="width: 200px;margin-left: 30px; ">
|
||||
<el-input v-model="queryParams.giftName" @input="getGift()" placeholder="请输入内容"></el-input>
|
||||
</div>
|
||||
<div class="wrap-right">
|
||||
@ -152,7 +212,7 @@
|
||||
<div class="ddjil" @click="orderHistoryMethod">订单记录</div>
|
||||
<div class="gwuc" @click="shoppingCartMethod()">
|
||||
<el-badge :hidden="markPurchasesAll<1" :value="markPurchasesAll" class="item">
|
||||
<i class="el-icon-shopping-cart-2"></i> <span style="margin-left: 5px">购物车1</span>
|
||||
<i class="el-icon-shopping-cart-2"></i> <span style="margin-left: 5px">购物车</span>
|
||||
</el-badge>
|
||||
</div>
|
||||
</div>
|
||||
@ -450,7 +510,7 @@ import {
|
||||
import BigNumber from 'bignumber.js';
|
||||
import PointsCashier from "@/views/cashier/NewComponents/integralOrder/pointsCashier";
|
||||
import {getDicts} from "@/api/dict/data";
|
||||
import {getUserInfoMobile, getUserVoMobile, getUserVoName} from "@/api/cashier/user";
|
||||
import {getUserInfoMobile, getUserVoMobile, getUserVoName, userListByPhone} from "@/api/cashier/user";
|
||||
import {getUserGrade, listUserGrade} from "@/api/cashier/usergrade";
|
||||
import {queryStaffs, staffInfo} from "@/api/cashier/staff";
|
||||
import {connectFlag, getLodop} from "@/api/LodopFuncs";
|
||||
@ -463,8 +523,9 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
dict: [],
|
||||
data(){
|
||||
return{
|
||||
userMobile:null,
|
||||
seekZero :0,
|
||||
|
||||
userInfo: false,
|
||||
baseUrl:process.env.VUE_APP_BASE_API,
|
||||
shoppingCart:[],
|
||||
giftList:'',
|
||||
@ -708,6 +769,16 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
this.dialogVisibleMember = true;
|
||||
}
|
||||
},
|
||||
getUsers(queryString, cb){
|
||||
userListByPhone({mobile:queryString}).then( response => {
|
||||
if (response.data){
|
||||
cb(response.data)
|
||||
console.log(response.data,608)
|
||||
}else {
|
||||
this.$modal.msgError("会员信息不存在")
|
||||
}
|
||||
})
|
||||
},
|
||||
// 获取会员等级信息
|
||||
// getGrade(id){
|
||||
// getUserGrade(id).then( response => {
|
||||
@ -1342,7 +1413,9 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
display: flex;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
padding-top: 20px;
|
||||
height: 100vh;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.center-left{
|
||||
width: 33%;
|
||||
@ -1350,6 +1423,7 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
overflow: hidden;
|
||||
height: 98vh;
|
||||
position: relative;
|
||||
margin-left: 15px;
|
||||
}
|
||||
.bottom-posi{
|
||||
width: 100%;
|
||||
@ -1364,7 +1438,7 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
|
||||
}
|
||||
.center-right{
|
||||
width: 65%;
|
||||
width: 64%;
|
||||
border-radius: 8px;
|
||||
overflow: hidden;
|
||||
margin: 0px 10px;
|
||||
@ -1535,27 +1609,14 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
width: 31%;
|
||||
background: #ffffff;
|
||||
border-radius: 8px;
|
||||
height: 80px;
|
||||
height: 44px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-bottom: 10px;
|
||||
|
||||
border: 1px solid #00afff;
|
||||
}
|
||||
.wrap-box :hover{
|
||||
/*background: #00afff !important;*/
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
|
||||
border-radius: 8px;
|
||||
height: 80px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border: 1px solid #00afff;
|
||||
cursor: pointer;
|
||||
/*color: white;*/
|
||||
}
|
||||
.wrap-box2{
|
||||
background: #30a1ff !important;
|
||||
color: white;
|
||||
@ -1666,6 +1727,8 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
overflow: auto;
|
||||
}
|
||||
.ts-box{
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
@ -1776,4 +1839,68 @@ import {getReturnCode, printIntegralReport, sendPrintIndex} from "@/api/print";
|
||||
height: 98vh;
|
||||
position: relative;
|
||||
}
|
||||
.o-top {
|
||||
width: 100%;
|
||||
height: 80px;
|
||||
background: #FF9655;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
color: #fff;
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.d-s {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.left_input {
|
||||
width: 80%;
|
||||
overflow: hidden;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
border-radius: 8px;
|
||||
color: white;
|
||||
border: 1px solid #fff;
|
||||
::v-deep.el-input__inner {
|
||||
background: transparent !important;
|
||||
border: transparent 1px solid;
|
||||
color: #fff;
|
||||
.el-input__placeholder{
|
||||
color: #fff !important;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep input:-moz-placeholder,
|
||||
::v-deep textarea:-moz-placeholder {
|
||||
color: #fff;
|
||||
}
|
||||
::v-deep input:-ms-input-placeholder,
|
||||
::v-deep textarea:-ms-input-placeholder {
|
||||
color: #fff;
|
||||
}
|
||||
::v-deep input::-webkit-input-placeholder,
|
||||
::v-deep textarea::-webkit-input-placeholder {
|
||||
color: #fff ;
|
||||
}
|
||||
}
|
||||
.an_bor {
|
||||
box-sizing: border-box;
|
||||
padding: 5px;
|
||||
border: 1px solid #fff;
|
||||
border-radius: 50px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
color: #FFFFFF;
|
||||
justify-content: center;
|
||||
margin: 0px 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
|
@ -3,17 +3,17 @@
|
||||
<div class="app-containers">
|
||||
<div class="top_new">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="100px">
|
||||
<el-form-item label="" prop="giftName">
|
||||
<el-form-item label="" prop="giftName">
|
||||
<el-input
|
||||
v-model="queryParams.orderNumber"
|
||||
placeholder="交易单号1"
|
||||
placeholder="交易单号"
|
||||
clearable
|
||||
style="width: 220px;"
|
||||
style="width: 170px;"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="">
|
||||
<el-select v-model="queryParams.status" style="width: 220px" placeholder="兑换状态" clearable>
|
||||
<el-select v-model="queryParams.status" style="width: 170px" placeholder="兑换状态" clearable>
|
||||
<el-option label="未支付" value="unpaid">未支付</el-option>
|
||||
<el-option label="付款成功" value="paid">付款成功</el-option>
|
||||
<el-option label="付款失败" value="payFail">付款失败</el-option>
|
||||
@ -24,31 +24,33 @@
|
||||
v-model="queryParams.mobile"
|
||||
placeholder="手机号码"
|
||||
clearable
|
||||
style="width: 220px;"
|
||||
style="width: 170px;"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="">
|
||||
<el-date-picker
|
||||
v-model="beginTime"
|
||||
style="width: 220px"
|
||||
style="width: 170px"
|
||||
type="date"
|
||||
placeholder="开始日期">
|
||||
</el-date-picker>
|
||||
至
|
||||
<el-date-picker
|
||||
v-model="endTime"
|
||||
style="width: 220px"
|
||||
style="width: 170px"
|
||||
type="date"
|
||||
placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
<div style="display: flex;align-items: center;">
|
||||
<div style="display: flex; height: 32px">
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
<el-button type="primary" @click="exportExcelVip()">导出</el-button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
@ -329,9 +331,7 @@ export default {
|
||||
text-align: left;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
.nei {
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
}
|
||||
.size-bole{
|
||||
height: 31px;
|
||||
@ -364,6 +364,7 @@ export default {
|
||||
height: 60px;
|
||||
background: rgba(255,150,85,0.05);
|
||||
border-radius: 6px 6px 6px 6px;
|
||||
|
||||
border: 1px solid #FF9655;
|
||||
}
|
||||
.top_new{
|
||||
@ -371,11 +372,13 @@ export default {
|
||||
justify-content: space-between;
|
||||
background: #fff;
|
||||
width: 98%;
|
||||
margin: 5px auto;
|
||||
margin: 0px auto;
|
||||
border-radius: 8px;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
height: 64px;
|
||||
padding: 0px 15px;
|
||||
border-bottom: 1px solid #eceff1;
|
||||
padding-bottom: 0px;
|
||||
|
||||
}
|
||||
.cont_box{
|
||||
background: #fff;
|
||||
|
@ -11,12 +11,8 @@
|
||||
<div class="d-s">
|
||||
<span>{{chooseVipUser.mobile}}</span>
|
||||
<sapn style="margin: 0px 5px">普通会员</sapn>
|
||||
|
||||
|
||||
<el-popover
|
||||
placement="bottom"
|
||||
|
||||
|
||||
trigger="hover">
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
<div> 储值卡:¥1000.00 </div>
|
||||
@ -29,10 +25,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-s" >
|
||||
<div style="font-size: 12px;margin-right: 5px">储值卡:¥{{chooseVipUser.cardBalance}} </div>
|
||||
<div style="font-size: 12px">囤油卡:¥1000.000</div>
|
||||
</div>
|
||||
<!-- <div class="d-s" >-->
|
||||
<!-- <div style="font-size: 12px;margin-right: 5px">储值卡:¥{{chooseVipUser.cardBalance}} </div>-->
|
||||
<!-- <div style="font-size: 12px">囤油卡:¥1000.000</div>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
<div class="d-s" style="width: 50%">
|
||||
@ -2164,8 +2160,6 @@ input {
|
||||
border-radius: 8px;
|
||||
color: white;
|
||||
border: 1px solid #fff;
|
||||
|
||||
|
||||
::v-deep.el-input__inner {
|
||||
background: transparent !important;
|
||||
border: transparent 1px solid;
|
||||
|
Loading…
Reference in New Issue
Block a user