mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-06-10 10:19:54 +08:00
后管充值本金
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
package com.jsowell.web.controller.pile;
|
||||
|
||||
import cn.hutool.core.util.PageUtil;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.google.common.collect.Lists;
|
||||
@@ -27,6 +26,7 @@ import com.jsowell.pile.vo.uniapp.MemberVO;
|
||||
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
||||
import com.jsowell.pile.vo.web.MemberTransactionVO;
|
||||
import com.jsowell.pile.vo.web.PlatformTesterVO;
|
||||
import com.jsowell.pile.vo.web.UpdateMemberBalanceDTO;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
@@ -59,7 +59,7 @@ public class MemberBasicInfoController extends BaseController {
|
||||
@PreAuthorize("@ss.hasPermi('member:info:list')")
|
||||
@PostMapping("/list")
|
||||
public TableDataInfo list(@RequestBody QueryMemberInfoDTO dto) {
|
||||
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
|
||||
|
||||
// List<MemberVO> list = memberBasicInfoService.selectMemberList(memberBasicInfo.getMobileNumber(), memberBasicInfo.getNickName());
|
||||
List<MemberVO> list = memberBasicInfoService.selectMemberList(dto);
|
||||
return getDataTable(list);
|
||||
@@ -141,14 +141,14 @@ public class MemberBasicInfoController extends BaseController {
|
||||
/**
|
||||
* 充值/扣款余额
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('member:balance:update')")
|
||||
// @Log(title = "会员充值/扣款余额", businessType = BusinessType.UPDATE)
|
||||
// @PutMapping("/updateGiftBalance")
|
||||
// public AjaxResult updateGiftBalance(@RequestBody UpdateMemberBalanceDTO dto) {
|
||||
// logger.info("后管充值/扣款余额 param:{}", dto.toString());
|
||||
// // 判断入参
|
||||
// return toAjax(memberBasicInfoService.updateMemberBalance(dto));
|
||||
// }
|
||||
@PreAuthorize("@ss.hasPermi('member:balance:update')")
|
||||
@Log(title = "会员充值/扣款余额", businessType = BusinessType.UPDATE)
|
||||
@PutMapping("/updateMemberBalance")
|
||||
public AjaxResult updateMemberBalance(@RequestBody UpdateMemberBalanceDTO dto) {
|
||||
logger.info("后管充值/扣款余额 param:{}", dto.toString());
|
||||
// 判断入参
|
||||
return toAjax(memberBasicInfoService.updateMemberBalance(dto));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询会员钱包流水
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.jsowell.pile.service.impl;
|
||||
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.jsowell.common.constant.CacheConstants;
|
||||
import com.jsowell.common.constant.Constants;
|
||||
@@ -18,6 +19,7 @@ import com.jsowell.pile.mapper.MemberPlateNumberRelationMapper;
|
||||
import com.jsowell.pile.mapper.MemberWalletInfoMapper;
|
||||
import com.jsowell.pile.mapper.MemberWalletLogMapper;
|
||||
import com.jsowell.pile.service.IMemberBasicInfoService;
|
||||
import com.jsowell.pile.service.IMemberTransactionRecordService;
|
||||
import com.jsowell.pile.service.IPileBasicInfoService;
|
||||
import com.jsowell.pile.service.IPileMerchantInfoService;
|
||||
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
||||
@@ -31,6 +33,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StopWatch;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
@@ -66,6 +69,9 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
||||
@Autowired
|
||||
private IPileMerchantInfoService pileMerchantInfoService;
|
||||
|
||||
@Autowired
|
||||
private IMemberTransactionRecordService memberTransactionRecordService;
|
||||
|
||||
/**
|
||||
* 查询会员基础信息
|
||||
*
|
||||
@@ -249,6 +255,9 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
||||
if (CollectionUtils.isNotEmpty(logList)) {
|
||||
memberWalletLogMapper.batchInsert(logList);
|
||||
}
|
||||
|
||||
// 记录会员交易流水
|
||||
// memberTransactionRecordService.insertSelective(memberTransactionRecord);
|
||||
return i;
|
||||
}
|
||||
|
||||
@@ -308,6 +317,9 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
||||
*/
|
||||
@Override
|
||||
public List<MemberVO> selectMemberList(QueryMemberInfoDTO dto) {
|
||||
StopWatch sw = new StopWatch("查询会员列表");
|
||||
|
||||
sw.start("获取登录账号信息");
|
||||
// 获取登录账号信息
|
||||
AuthorizedDeptVO authorizedMap = SecurityUtils.getAuthorizedMap();
|
||||
if (authorizedMap == null) {
|
||||
@@ -317,14 +329,23 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
||||
if (CollectionUtils.isNotEmpty(merchantDeptIds)) {
|
||||
dto.setMerchantDeptIds(merchantDeptIds);
|
||||
}
|
||||
sw.stop();
|
||||
|
||||
sw.start("获取一级运营商信息");
|
||||
PileMerchantInfo pileMerchantInfo = pileMerchantInfoService.queryInfoByDeptId(authorizedMap.getDeptId());
|
||||
if (pileMerchantInfo != null) {
|
||||
String id = pileMerchantInfoService.getFirstLevelMerchantIdByMerchantId(pileMerchantInfo.getId() + "");
|
||||
dto.setMerchantId(id);
|
||||
}
|
||||
sw.stop();
|
||||
|
||||
return memberBasicInfoMapper.selectMemberList(dto);
|
||||
sw.start("查询数据库会员信息");
|
||||
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
|
||||
List<MemberVO> memberVOS = memberBasicInfoMapper.selectMemberList(dto);
|
||||
sw.stop();
|
||||
|
||||
log.info("查询耗时:{}", sw.prettyPrint());
|
||||
return memberVOS;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -210,7 +210,9 @@
|
||||
member_basic_info t1
|
||||
JOIN member_wallet_info t2 ON t1.member_id = t2.member_id and t2.del_flag = '0'
|
||||
JOIN pile_merchant_info t3 ON t1.merchant_id = t3.id and t3.del_flag = '0'
|
||||
left join member_plate_number_relation t4 on t4.member_id = t1.member_id and t4.del_flag = '0'
|
||||
<if test="dto.vinCode != null">
|
||||
join member_plate_number_relation t4 on t4.member_id = t1.member_id and t4.del_flag = '0'
|
||||
</if>
|
||||
where
|
||||
t1.del_flag = '0'
|
||||
<if test="dto.mobileNumber != null and dto.mobileNumber != ''">and t1.mobile_number like '%${dto.mobileNumber}%'</if>
|
||||
@@ -226,6 +228,7 @@
|
||||
<if test="dto.vinCode != null">
|
||||
and t4.vin_code like '%${dto.vinCode}%'
|
||||
</if>
|
||||
GROUP BY (t1.member_id)
|
||||
</select>
|
||||
|
||||
<select id="getMerchantListByAuth" resultType="com.jsowell.pile.vo.base.MerchantInfoVO">
|
||||
|
||||
@@ -52,9 +52,9 @@ export function delInfo(id) {
|
||||
}
|
||||
|
||||
// 修改会员基础信息
|
||||
export function updateGiftBalance(data) {
|
||||
export function updateMemberBalance(data) {
|
||||
return request({
|
||||
url: '/member/info/updateGiftBalance',
|
||||
url: '/member/info/updateMemberBalance',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
|
||||
label-width="68px">
|
||||
|
||||
<el-form-item label="运营商" prop="merchantId">
|
||||
<!-- <el-form-item label="运营商1" prop="merchantId">
|
||||
<el-select
|
||||
v-model="queryParams.merchantId"
|
||||
clearable placeholder="请选择运营商"
|
||||
@@ -15,12 +15,12 @@
|
||||
:value="item.merchantId">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form-item>-->
|
||||
|
||||
<el-form-item label="会员id" prop="memberId">
|
||||
<el-form-item label="会员ID" prop="memberId">
|
||||
<el-input
|
||||
v-model="queryParams.memberId"
|
||||
placeholder="请输入会员id"
|
||||
placeholder="请输入会员ID"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
@@ -142,21 +142,22 @@
|
||||
<el-table-column label="备注" align="center" prop="remark"/>
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
<!-- <el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['member:info:edit']"
|
||||
>修改
|
||||
</el-button>-->
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdateBalance(scope.row)"
|
||||
v-hasPermi="['member:balance:update']"
|
||||
>充值/扣款
|
||||
</el-button>
|
||||
<!-- <el-button-->
|
||||
<!-- size="mini"-->
|
||||
<!-- type="text"-->
|
||||
<!-- icon="el-icon-edit"-->
|
||||
<!-- @click="handleUpdateGiftBalance(scope.row)"-->
|
||||
<!-- v-hasPermi="['member:balance:update']"-->
|
||||
<!-- >充值/扣款</el-button>-->
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
@@ -195,12 +196,6 @@
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="form.remark" placeholder="请输入备注"/>
|
||||
</el-form-item>
|
||||
<!--<el-form-item label="本金余额" prop="principalBalance">
|
||||
<el-input v-model="form.principalBalance" placeholder="请输入本金余额" />
|
||||
</el-form-item>
|
||||
<el-form-item label="赠送余额" prop="giftBalance">
|
||||
<el-input v-model="form.giftBalance" placeholder="请输入赠送余额" />
|
||||
</el-form-item>-->
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
@@ -209,7 +204,7 @@
|
||||
</el-dialog>
|
||||
|
||||
<!-- 添加或修改会员余额对话框 -->
|
||||
<el-dialog title="会员充值/扣款" @close="closeUpdateGiftBalance" :visible.sync="openUpdateGiftBalance" width="500px"
|
||||
<el-dialog title="会员充值/扣款" @close="closeUpdateBalance" :visible.sync="openUpdateBalance" width="500px"
|
||||
append-to-body>
|
||||
<p>后管平台只能充值赠送余额,本金余额只能客户通过手机端充值</p>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
@@ -217,21 +212,29 @@
|
||||
<el-radio v-model="type" label="1" border>充值</el-radio>
|
||||
<el-radio v-model="type" label="2" border>扣款</el-radio>
|
||||
</el-form-item>
|
||||
<el-form-item label="金额" prop="giftBalance">
|
||||
<el-input-number v-model="updateGiftBalance" placeholder="请输入金额" :min="0" :controls="false"
|
||||
<el-form-item label="金额" prop="balance">
|
||||
<el-input-number v-model="updatePrincipalBalance" placeholder="请输入金额" :min="0" :controls="false"
|
||||
:precision="2"></el-input-number>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitUpdateGiftBalance">确 定</el-button>
|
||||
<el-button @click="resetGiftBalance">取 消</el-button>
|
||||
<el-button type="primary" @click="submitUpdateBalance">确 定</el-button>
|
||||
<el-button @click="resetBalance">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {listInfo, getInfo, delInfo, addInfo, updateInfo, updateGiftBalance, getMerchantList} from "@/api/member/info";
|
||||
import {
|
||||
listInfo,
|
||||
getInfo,
|
||||
delInfo,
|
||||
addInfo,
|
||||
updateInfo,
|
||||
updateMemberBalance,
|
||||
getMerchantList,
|
||||
} from "@/api/member/info";
|
||||
|
||||
export default {
|
||||
name: "Info",
|
||||
@@ -259,9 +262,9 @@ export default {
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
openUpdateGiftBalance: false, // 控制充值扣款对话框
|
||||
updateGiftBalance: "", // 充值扣款金额
|
||||
updateGiftBalanceMemberId: "", // 需要充值扣款的会员id
|
||||
openUpdateBalance: false, // 控制充值扣款对话框
|
||||
updatePrincipalBalance: "", // 充值扣款金额
|
||||
updateBalanceMemberId: "", // 需要充值扣款的会员id
|
||||
type: '1', // 操作类型 1-充值;2-扣款
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
@@ -317,10 +320,10 @@ export default {
|
||||
},
|
||||
// 获取运营商列表
|
||||
getMerchantList() {
|
||||
getMerchantList().then((response) =>{
|
||||
console.log("response", response)
|
||||
this.merchantList = response.obj
|
||||
})
|
||||
// getMerchantList().then((response) =>{
|
||||
// console.log("response", response)
|
||||
// this.merchantList = response.obj
|
||||
// })
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
@@ -379,44 +382,45 @@ export default {
|
||||
});
|
||||
},
|
||||
// 重置 充值赠送金额相关
|
||||
resetGiftBalance() {
|
||||
resetBalance() {
|
||||
console.log("重置 充值赠送金额相关");
|
||||
this.openUpdateGiftBalance = false;
|
||||
this.updateGiftBalance = "";
|
||||
this.updateGiftBalanceMemberId = "";
|
||||
this.openUpdateBalance = false;
|
||||
this.updateBalance = "";
|
||||
this.updateBalanceMemberId = "";
|
||||
this.type = "1";
|
||||
},
|
||||
// changeInput() {
|
||||
// const pattern = /^[1-9][0-9]*$/; // 正整数的正则表达式
|
||||
// // 不符合正整数时
|
||||
// if (!pattern.test(this.updateGiftBalance)) {
|
||||
// if (!pattern.test(this.updateBalance)) {
|
||||
// // input 框绑定的内容为空
|
||||
// this.updateGiftBalance = ''
|
||||
// this.updateBalance = ''
|
||||
// }
|
||||
// },
|
||||
|
||||
// 关闭赠送余额 对话框
|
||||
closeUpdateGiftBalance() {
|
||||
closeUpdateBalance() {
|
||||
console.log("关闭赠送余额 对话框");
|
||||
this.resetGiftBalance();
|
||||
this.resetBalance();
|
||||
},
|
||||
// 点击充值按钮
|
||||
handleUpdateGiftBalance(row) {
|
||||
this.openUpdateGiftBalance = true;
|
||||
this.updateGiftBalanceMemberId = row.memberId;
|
||||
handleUpdateBalance(row) {
|
||||
this.openUpdateBalance = true;
|
||||
this.updateBalanceMemberId = row.memberId;
|
||||
},
|
||||
// 点击对话框确认按钮
|
||||
submitUpdateGiftBalance() {
|
||||
submitUpdateBalance() {
|
||||
const param = {
|
||||
memberId: this.updateGiftBalanceMemberId,
|
||||
updateGiftBalance: this.updateGiftBalance,
|
||||
memberId: this.updateBalanceMemberId,
|
||||
updatePrincipalBalance: this.updatePrincipalBalance,
|
||||
type: this.type,
|
||||
subType: this.subType
|
||||
};
|
||||
console.log("修改会员赠送余额 param:", param);
|
||||
updateGiftBalance(param).then(response => {
|
||||
console.log("修改会员赠送余额 response:", response);
|
||||
console.log("修改会员本金余额 param:", param);
|
||||
updateMemberBalance(param).then(response => {
|
||||
console.log("修改会员本金余额 response:", response);
|
||||
this.$modal.msgSuccess("充值成功");
|
||||
this.openUpdateGiftBalance = false;
|
||||
this.openUpdateBalance = false;
|
||||
this.getList();
|
||||
});
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user