```txtfeat(user): 实现用户充值功能
新增一个用户充值功能,用户可以通过POST请求向其账户内余额进行充值。 在SysUserController中添加了addUserMoney接口,通过调用UserService中的addUserMoney服务来实现。 同时,更新了SysUserMapper及SysUserMapper.xml以支持数据库中用户余额的增加。 ```master
parent
71ead9ebfd
commit
49d185e7a6
|
@ -257,20 +257,6 @@ public class SysUserController extends BaseController {
|
|||
}
|
||||
|
||||
|
||||
//TODO 用户充值
|
||||
/**
|
||||
* 用户充值
|
||||
*/
|
||||
@Log(title = "用户充值", businessType = BusinessType.INSERT)
|
||||
@PostMapping ("/alipay/recharge")
|
||||
public Result userBalance(@RequestBody SysUser user){
|
||||
userService.checkUserAllowed(user);
|
||||
userService.checkUserDataScope(user.getUserId());
|
||||
user.setCreateBy(SecurityUtils.getUsername());
|
||||
return toAjax(userService.insertBalance(user));
|
||||
}
|
||||
|
||||
|
||||
//TODO
|
||||
// 查询当前用户的余额
|
||||
@GetMapping("/balance/{userId}")
|
||||
|
|
|
@ -76,7 +76,7 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
|
|||
*/
|
||||
public int updateUser (SysUser user);
|
||||
|
||||
public int updateUserBalance (SysUser user);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
|
|
|
@ -227,7 +227,7 @@ public interface SysUserService extends IService<SysUser> {
|
|||
*/
|
||||
public String importUser (List<SysUser> userList, Boolean isUpdateSupport, String operName);
|
||||
|
||||
int insertBalance(SysUser user);
|
||||
|
||||
|
||||
|
||||
BigDecimal selectBalance(Long userId);
|
||||
|
|
|
@ -275,38 +275,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|||
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public int insertBalance(SysUser user) {
|
||||
// 创建支付宝客户端
|
||||
AlipayClient alipayClient = new DefaultAlipayClient(URL, APPID, RSA_PRIVATE_KEY, FORMAT, CHARSET, ALIPAY_PUBLIC_KEY, SIGNTYPE);
|
||||
AlipayTradePagePayRequest alipayRequest = new AlipayTradePagePayRequest();
|
||||
|
||||
|
||||
|
||||
// 发起支付请求
|
||||
try {
|
||||
//TODO 调用支付宝接口
|
||||
AlipayTradePagePayResponse response = alipayClient.pageExecute(alipayRequest);
|
||||
if (response.isSuccess()) {
|
||||
// 支付成功,更新用户余额
|
||||
SysUser sysUser = userMapper.selectUserById(user.getUserId());
|
||||
sysUser.setUserBalance(user.getUserBalance());
|
||||
// double currentBalance = sysUser.getUserBalance();
|
||||
// double newPaymentAmount = user.getPaymentAmount();
|
||||
// double newBalance = currentBalance + newPaymentAmount;
|
||||
// sysUser.setUserBalance(newBalance);
|
||||
userMapper.updateUserBalance(sysUser);
|
||||
} else {
|
||||
throw new RuntimeException("充值失败");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 注册用户信息
|
||||
|
|
|
@ -250,28 +250,7 @@
|
|||
</update>
|
||||
|
||||
|
||||
<update id="updateUserBalance" parameterType="com.muyu.common.system.domain.SysUser">
|
||||
update sys_user
|
||||
<set>
|
||||
<if test="deptId != null and deptId != 0">dept_id = #{deptId},</if>
|
||||
<if test="userName != null and userName != ''">user_name = #{userName},</if>
|
||||
<if test="nickName != null and nickName != ''">nick_name = #{nickName},</if>
|
||||
<if test="email != null ">email = #{email},</if>
|
||||
<if test="phonenumber != null ">phonenumber = #{phonenumber},</if>
|
||||
<if test="sex != null and sex != ''">sex = #{sex},</if>
|
||||
<if test="avatar != null and avatar != ''">avatar = #{avatar},</if>
|
||||
<if test="password != null and password != ''">password = #{password},</if>
|
||||
<if test="status != null and status != ''">status = #{status},</if>
|
||||
<if test="loginIp != null and loginIp != ''">login_ip = #{loginIp},</if>
|
||||
<if test="loginDate != null">login_date = #{loginDate},</if>
|
||||
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
|
||||
<if test="userBalance != null">user_balance = #{userBalance},</if>
|
||||
<if test="paymentAmount != null">payment_amount = #{paymentAmount},</if>
|
||||
<if test="remark != null">remark = #{remark},</if>
|
||||
update_time = sysdate()
|
||||
</set>
|
||||
where user_id = #{userId}
|
||||
</update>
|
||||
|
||||
|
||||
<update id="updateUserStatus" parameterType="com.muyu.common.system.domain.SysUser">
|
||||
update sys_user
|
||||
|
|
Loading…
Reference in New Issue