From 68defbe491894e01c4402922de33c39633fca091 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 29 Mar 2022 14:25:54 +0800
Subject: [PATCH] 系统名称
---
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html | 246 +++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 235 insertions(+), 11 deletions(-)
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html
index 60178c4..ace7138 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/vip.html
@@ -124,9 +124,12 @@
</el-col>
</el-col>
<el-col :span="8" style="float: right; margin-right: 20px;">
+
<el-button type="primary" plain @click="recharge">充值</el-button>
<el-button type="warning" plain @click="addOrder">开单</el-button>
<el-button type="success" plain @click="addServiceOrder">开服务单</el-button>
+ <el-button type="info" plain @click="exportExcel">导出项目</el-button>
+ <el-button type="primary" plain @click="openAdd">会员注册</el-button>
</el-col>
</el-header>
<el-container>
@@ -149,6 +152,7 @@
<el-row style="padding: 10px 20px;">
<p>余额:<span v-if="vipInfo.balance != null">{{vipInfo.balance}}元</span></p>
<p>积分:<span v-if="vipInfo.pointAll != null">{{vipInfo.pointAll}}</span></p>
+ <p>欠款金额:<span v-if="vipInfo.arrears != null">{{vipInfo.arrears}} 元</span></p>
<p>累计消费金额:<span v-if="vipInfo.totalMoney != null">{{vipInfo.totalMoney.toFixed(2)}} 元</span></p>
<p>累计消费次数:<span v-if="vipInfo.totalTimes != null">{{vipInfo.totalTimes}} 次</span></p>
<p>上次消费时间:<span v-if="vipInfo.payTime">{{vipInfo.payTime}}</span></p>
@@ -195,7 +199,7 @@
</el-col>
<el-col :span="10">
<p>会员卡类型 : {{vipInfo.vipType}}</p>
- <p>会员等级 : {{vipInfo.levelName}}</p>
+ <p>会员等级 : {{vipInfo.vipLevel == null ? "" : vipInfo.vipLevel.levelName}}</p>
<p>生肖/星座 : {{vipInfo.constell}}</p>
<p>地址 : {{vipInfo.addr}}</p>
<p>健康顾问 : {{vipInfo.staffName}}</p>
@@ -253,12 +257,16 @@
prop="failTime"
label="到期时间">
</el-table-column>
+ <el-table-column
+ prop="createTime"
+ label="创建时间">
+ </el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
- <el-button matrix:btn="vipInfo-youxiao" v-if="scope.row.status!='有效'" type="text" size="small" @click="tabProjValid(scope.$index, scope.row)">有效</el-button>
- <el-button matrix:btn="vipInfo-wuxiao" v-if="scope.row.status!='无效'" type="text" size="small" @click="tabProjInvalid(scope.$index, scope.row)">无效</el-button>
- <el-button matrix:btn="vipInfo-dongjie" v-if="scope.row.status!='冻结'" type="text" size="small" @click="tabProjCold(scope.$index, scope.row)">冻结</el-button>
- <el-button matrix:btn="vipInfo-cardEdit" type="text" size="small" @click="tabProjEdit(scope.$index, scope.row)">编辑</el-button>
+ <el-button matrix:btn="vipinfoClub-youxiao" v-if="scope.row.status!='有效'" type="text" size="small" @click="tabProjValid(scope.$index, scope.row)">有效</el-button>
+ <el-button matrix:btn="vipinfoClub-wuxiao" v-if="scope.row.status!='无效'" type="text" size="small" @click="tabProjInvalid(scope.$index, scope.row)">无效</el-button>
+ <el-button matrix:btn="vipinfoClub-dongjie" v-if="scope.row.status!='冻结'" type="text" size="small" @click="tabProjCold(scope.$index, scope.row)">冻结</el-button>
+ <el-button matrix:btn="vipinfoClub-cardEdit" type="text" size="small" @click="tabProjEdit(scope.$index, scope.row)">编辑</el-button>
<el-button type="text" @click="openOrder(scope.$index, scope.row)" size="small">订单</el-button>
<el-button type="text" size="small" @click="openProjUseFlow(scope.$index, scope.row)">操作记录</el-button>
</template>
@@ -274,6 +282,11 @@
<template slot-scope="scope">
<span >{{scope.row.projName}}({{scope.row.projInfo.code}})</span>
</template>
+ </el-table-column>
+ <el-table-column
+ prop="source"
+ label="来源"
+ width="180">
</el-table-column>
<el-table-column
prop="status"
@@ -292,10 +305,15 @@
prop="failTime"
label="到期时间">
</el-table-column>
+
+ <el-table-column
+ prop="createTime"
+ label="创建时间">
+ </el-table-column>
<el-table-column label="操作" fixed="right" width="160">
<template slot-scope="scope">
- <el-button matrix:btn="vipInfo-youxiao" v-if="scope.row.status!='有效' && scope.row.taocanId == null" type="text" size="small" @click="tabProjValid(scope.$index, scope.row)">有效</el-button>
- <el-button matrix:btn="vipInfo-wuxiao" v-if="scope.row.status!='无效' && scope.row.taocanId == null" type="text" size="small" @click="tabProjInvalid(scope.$index, scope.row)">无效</el-button>
+ <el-button matrix:btn="vipInfo-youxiao" v-if="scope.row.status!='有效'" type="text" size="small" @click="tabProjValid(scope.$index, scope.row)">有效</el-button>
+ <el-button matrix:btn="vipInfo-wuxiao" v-if="scope.row.status!='无效'" type="text" size="small" @click="tabProjInvalid(scope.$index, scope.row)">无效</el-button>
<el-button matrix:btn="vipInfo-dongjie" v-if="scope.row.status!='冻结' && scope.row.taocanId == null" type="text" size="small" @click="tabProjCold(scope.$index, scope.row)">冻结</el-button>
<el-button matrix:btn="vipInfo-cardEdit" v-if="scope.row.taocanId == null" type="text" size="small" @click="tabProjEdit(scope.$index, scope.row)">编辑</el-button>
<el-button type="text" v-if="scope.row.orderId != null" @click="openOrder(scope.$index, scope.row)" size="small">订单</el-button>
@@ -345,6 +363,10 @@
<el-table-column
prop="failTime"
label="到期时间" width="160">
+ </el-table-column>
+ <el-table-column
+ prop="createTime"
+ label="创建时间">
</el-table-column>
<el-table-column
prop="remark"
@@ -568,6 +590,69 @@
</el-pagination>
</el-row>
</el-tab-pane>
+ <el-tab-pane label="积分记录" name="scoreTab">
+ <el-row style="line-height: 40px;">
+ <el-col :span="8">
+ <el-date-picker v-model="scoreTab.selectTime"
+ type="daterange"
+ range-separator="至"
+ format="yyyy-MM-dd"
+ start-placeholder="开始日期"
+ end-placeholder="结束日期">
+ </el-date-picker>
+ </el-col>
+ <el-col :span="8"> <el-input v-model="scoreTab.remarks" placeholder="请输入备注查询" ></el-input></el-col>
+ <el-col :span="6" style="margin-left: 5px;">
+ <el-button type="primary" @click="scoreCheckQuery">查询</el-button>
+ <el-button type="primary" @click="changeScore">调整</el-button>
+ </el-col>
+ </el-row>
+ <el-row class="table-style">
+ <el-table :data="scoreTab.scoreTableDate"
+ style="width: 100%;">
+ <el-table-column
+ type="index"
+ width="50">
+ </el-table-column>
+ <el-table-column
+ prop="createTime"
+ label="时间">
+ </el-table-column>
+ <el-table-column
+ prop="optionName"
+ label="操作人员">
+ </el-table-column>
+ <el-table-column
+ prop="shopName"
+ label="门店">
+ </el-table-column>
+ <el-table-column
+ prop="recNum"
+ label="修改数量">
+ </el-table-column>
+ <el-table-column
+ prop="nowScore"
+ label="余额">
+ </el-table-column>
+ <el-table-column
+ prop="remarks"
+ label="备注">
+ </el-table-column>
+ </el-table>
+ </el-row>
+ <el-row>
+ <el-pagination
+ background
+ @size-change="scoreCheckSizeChange"
+ @current-change="scoreCheckCurrentChange"
+ :current-page="scoreTab.page.currentPage"
+ :page-sizes="[10, 20, 30, 50]"
+ :page-size="scoreTab.page.pageSize"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="scoreTab.page.total">
+ </el-pagination>
+ </el-row>
+ </el-tab-pane>
<el-tab-pane label="皮肤检测" name="skinCheck">
<el-row style="line-height: 40px;">
<el-col :span="11">
@@ -624,10 +709,31 @@
</el-pagination>
</el-row>
</el-tab-pane>
+
+
</el-tabs>
</el-main>
</el-container>
</el-container>
+
+ <el-dialog title="积分调整" :visible.sync="scoreTab.showChangePaln">
+ <el-form :model="scoreTab.form">
+ <h3>可用积分:{{vipInfo.pointAll}}</h3>
+ <el-form-item label="调整数量" >
+ <el-input v-model="scoreTab.form.amount" autocomplete="off"></el-input>
+ </el-form-item>
+ <el-form-item label="调整备注" >
+ <el-input v-model="scoreTab.form.remarks" autocomplete="off"></el-input>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="scoreTab.showChangePaln = false">取 消</el-button>
+ <el-button type="primary" @click="submitChangeScore" >确 定</el-button>
+ </div>
+ </el-dialog>
+
+
+
</div>
</body>
<script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script>
@@ -692,6 +798,23 @@
total : 0
}
},
+ //用户积分tab
+ scoreTab : {
+ scoreTableDate : [],
+ selectTime : '',
+ remarks:'',
+ showChangePaln:false,
+ page : {
+ currentPage : 1,
+ pageSize : 10,
+ total : 0
+ },
+ form:{
+ amount:'',
+ remarks:'',
+ }
+
+ },
// 皮肤检测tab
skinTab : {
skinTableDate : [],
@@ -712,6 +835,14 @@
}
},
methods : {
+ openAdd(){
+ layer.full(layer.open({
+ type : 2,
+ title : "添加会员信息",
+ area : [ MUI.SIZE_L, '450px' ],
+ content : [ basePath+'/admin/vipInfo/editForm' ]
+ }));
+ },
//打开订单详情页面
openOrder(index,row){
layer.full(layer.open({
@@ -740,6 +871,7 @@
},
handleSelect(row) {
this.vipInfoFn(row.key);
+ this.searchValue=row.key;
},
// 请求会员信息
vipInfoFn(key) {
@@ -998,7 +1130,7 @@
title : "充值卡变更记录",
area : MUI.SIZE_M,
maxmin : true,
- content : [ basePath + "/admin/redirect/hive/vip/moneyCardUseFlow-list?vipId=" + row.vipId ]
+ content : [ basePath + "/admin/redirect/hive/vip/moneyCardUseFlow-list?vipId=" + row.vipId + "&cardId=" + row.id ]
});
},
@@ -1125,7 +1257,7 @@
},
// 取消
cancelServiceOrder(index, row) {
- MTools.handleItem(basePath + "/admin/projService/cancelOrder?id=" + row.row, "确定取消订单吗?", this.serviceOrderQuery);
+ MTools.handleItem(basePath + "/admin/projService/cancelOrder?id=" + row.id, "确定取消订单吗?", this.serviceOrderQuery);
},
// 修改时间
modifyTime(index, row) {
@@ -1134,7 +1266,7 @@
title: "修改订单时间",
maxmin: true,
area: [MUI.SIZE_L, '500px'],
- content: [basePath + '/admin/projService/toServiceOrderUpdateTime?id=' + row.id]
+ content: [basePath + '/admin/redirect/hive/beautySalon/updateServiceOrderTimeV2?id=' + row.id]
});
},
/********* 服务单tab end ***********/
@@ -1214,6 +1346,85 @@
});
},
/********* 订单Tab end ***********/
+
+ /************** 积分tab start **************/
+ submitChangeScore(){
+ let _this=this;
+
+ var params={
+ amount:this.scoreTab.form.amount,
+ remarks:this.scoreTab.form.remarks,
+ vipId:this.vipInfo.id
+ };
+
+
+
+ $.AjaxProxy({
+ p:params,
+ json:"json"
+ }).invoke(basePath + "/admin/score/changeUserScore", function (loj) {
+ _this.$message.success('调整成功');
+ _this.scoreTab.showChangePaln=false;
+ _this.scoreTab.form={
+ amount:'',
+ remarks:''
+ }
+ _this.vipInfoFn(_this.searchValue);
+ _this.scoreCheckQuery();
+
+ });
+
+ },
+ changeScore(){
+ if (!this.vipInfo.id) {
+ this.$message.error('请选择用户');
+ return;
+ }else {
+ this.scoreTab.showChangePaln=true;
+ }
+
+ },
+
+ scoreCheckQuery() {
+ this.scoreCheckTableDataQueryFn();
+ },
+ scoreCheckTableDataQueryFn() {
+ let _this = this;
+ let scoreTab = _this.scoreTab;
+ let page = scoreTab.page;
+ var params = {};
+
+ if (!_this.vipInfo.id) {
+ return;
+ }
+
+ params.pageSize = page.pageSize;
+ params.pageNum =page.currentPage ;
+ params.vipId = _this.vipInfo.id;
+ params.remarks = scoreTab.remarks;
+ if (scoreTab.selectTime) {
+ params.beginTime = scoreTab.selectTime?moment(scoreTab.selectTime[0]).format("YYYY-MM-DD"):'';
+ params.endTime = scoreTab.selectTime?moment(scoreTab.selectTime[1]).format("YYYY-MM-DD"):'';
+ }
+ $.AjaxProxy({
+ p:params,
+ json:"json"
+ }).invoke(basePath + "/admin/score/getFlowList", function (loj) {
+ scoreTab.page.total = loj.getResult().total;
+ scoreTab.scoreTableDate = loj.getValue("rows");
+ });
+ },
+ scoreCheckSizeChange(val) {
+ this.scoreTab.page.pageSize = val;
+ this.scoreCheckTableDataQueryFn()
+ },
+ scoreCheckCurrentChange(val) {
+ this.scoreTab.page.currentPage = val;
+ this.scoreCheckTableDataQueryFn()
+ },
+ /************** 积分tab end **************/
+
+
/************** 皮肤检测tab start **************/
skinCheckQuery() {
@@ -1304,6 +1515,11 @@
this.skinCheckTableDataQueryFn();
}
}
+ if (tab.name === "scoreTab") {
+ if (_this.scoreTab.scoreTableDate.length <= 0) {
+ this.scoreCheckTableDataQueryFn();
+ }
+ }
},
/********** 标签代码 start ************/
@@ -1349,7 +1565,15 @@
return;
}
vipId = this.vipInfo.id;
- openAddService();
+ openAddService(vipId);
+ },
+ exportExcel(){
+ if (!this.vipInfo.id) {
+ this.$message.error('请选择用户');
+ return;
+ }
+ vipId = this.vipInfo.id;
+ window.location.href=basePath+"/admin/vipInfo/exportExcel/"+vipId;
},
// 开订单
addOrder() {
--
Gitblit v1.9.1