新增接口邀请新用户获利
parent
04212d76f2
commit
57fdeaaf3d
|
@ -1,33 +1,40 @@
|
|||
//package com.ruoyi.mybasic.common.domain;
|
||||
//
|
||||
//import lombok.Data;
|
||||
//
|
||||
//import java.util.Date;
|
||||
//
|
||||
///**
|
||||
// * @ClassName Purse
|
||||
// * @Description 钱包列表
|
||||
// * @Author WenHao.Sao
|
||||
// */
|
||||
//@Data
|
||||
//public class Purse {
|
||||
//
|
||||
// private long purseId;//钱包主键自增id
|
||||
//
|
||||
// private long userId;//用户编号
|
||||
//
|
||||
// private Double walletIncome;//钱包总收入额
|
||||
//
|
||||
// private Double walletOutcome;//钱包总支出额
|
||||
//
|
||||
// private Double balanceFee;//钱包总可用余额
|
||||
//
|
||||
// private Date updateTime;//更新时间
|
||||
//
|
||||
// /***
|
||||
// * 新增添
|
||||
// */
|
||||
// private int amount;//获取前台输入的金额
|
||||
//
|
||||
//
|
||||
//}
|
||||
package com.ruoyi.mybasic.common.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 钱包表
|
||||
* @author Lou_Zs
|
||||
*/
|
||||
@Data
|
||||
public class Purse {
|
||||
|
||||
|
||||
/**
|
||||
* 钱包编号
|
||||
*/
|
||||
private Integer userId;
|
||||
/**
|
||||
* 钱包总收入
|
||||
*/
|
||||
private double walletIncome;
|
||||
/**
|
||||
* 钱包总支出
|
||||
*/
|
||||
private double walletOutcome;
|
||||
/**
|
||||
* 钱包可用余额
|
||||
*/
|
||||
private double balanceFee;
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
|
||||
private Date updateTime;
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
package com.ruoyi.mybasic.common.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 支出收入流水记录
|
||||
* @author Lou_Zs
|
||||
*/
|
||||
@Data
|
||||
public class UserMoneyLogs {
|
||||
|
||||
|
||||
/**
|
||||
* 记录主建
|
||||
*/
|
||||
private Integer id;
|
||||
/**
|
||||
* 状态
|
||||
* 1:支出
|
||||
* 2:收入
|
||||
*/
|
||||
private Integer status;
|
||||
/**
|
||||
* 详情
|
||||
*/
|
||||
private String moneyTypeId;
|
||||
/**
|
||||
* 钱包主建
|
||||
*/
|
||||
private Integer userId;
|
||||
/**
|
||||
* 具体金额
|
||||
*/
|
||||
private Integer amountIncome;
|
||||
|
||||
//审计字段
|
||||
|
||||
// private Integer del_flag;
|
||||
// private String create_user_id;
|
||||
// private Date create_time;
|
||||
// private String update_by;
|
||||
// private Date update_time;
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
package com.ruoyi.mybasic.common.domain.request;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 邀请记录参数
|
||||
* @author Lou_Zs
|
||||
*/
|
||||
@Data
|
||||
public class RequestInvitationRecord {
|
||||
|
||||
|
||||
/**
|
||||
* 邀请记录主建
|
||||
*/
|
||||
private Integer id;
|
||||
/**
|
||||
* 邀请人
|
||||
*/
|
||||
private Integer userId;
|
||||
/**
|
||||
* 被邀请人
|
||||
*/
|
||||
private Integer userPid;
|
||||
/**
|
||||
* 邀请时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
|
||||
private Date createTime;
|
||||
}
|
|
@ -1,15 +1,15 @@
|
|||
package com.ruoyi.mybasic.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.mybasic.common.domain.request.InvitationRecordRequest;
|
||||
import com.ruoyi.mybasic.common.domain.request.RequestInvitationRecord;
|
||||
import com.ruoyi.mybasic.service.InvitationService;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -24,6 +24,8 @@ public class InvitationController {
|
|||
|
||||
@Autowired
|
||||
private InvitationService invitationService;
|
||||
@Autowired
|
||||
private HttpServletRequest request;
|
||||
|
||||
/**
|
||||
* 当前用户查看自己的邀请记录表
|
||||
|
@ -34,4 +36,21 @@ public class InvitationController {
|
|||
return invitationService.show(userId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新用户注册邀请获利
|
||||
* @param requestInvitationRecord
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/UserInviteTask")
|
||||
public R UserInviteTask(@RequestBody RequestInvitationRecord requestInvitationRecord){
|
||||
log.info("功能介绍:新用户邀请,请求方式:{},请求路径:{},请求参数:{}",
|
||||
request.getMethod(),request.getRequestURI(), JSONObject.toJSONString(requestInvitationRecord));
|
||||
//邀请新用户
|
||||
R req = invitationService.UserInviteTask(requestInvitationRecord);
|
||||
log.info("功能介绍:新用户邀请,请求方式:{},请求路径:{},响应结果:{}",
|
||||
request.getMethod(),request.getRequestURI(),JSONObject.toJSONString(req));
|
||||
return req;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
package com.ruoyi.mybasic.mapper;
|
||||
|
||||
|
||||
import com.ruoyi.mybasic.common.domain.UserMoneyLogs;
|
||||
import com.ruoyi.mybasic.common.domain.request.InvitationRecordRequest;
|
||||
import com.ruoyi.mybasic.common.domain.request.PurseRequest;
|
||||
import com.ruoyi.mybasic.common.domain.request.RequestInvitationRecord;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
@ -20,4 +22,19 @@ public interface InvitationMapper {
|
|||
PurseRequest Inviteramount(long inviterId);
|
||||
|
||||
PurseRequest Inviteeamount(long inviteeId);
|
||||
|
||||
/**
|
||||
* 邀请记录新增
|
||||
* @param requestInvitationRecord
|
||||
*/
|
||||
void insertInvitationRecord(RequestInvitationRecord requestInvitationRecord);
|
||||
|
||||
/**
|
||||
* 修改钱包信息
|
||||
* @param userId
|
||||
*/
|
||||
void updateUserPurse(@Param("userId") Integer userId);
|
||||
|
||||
|
||||
void insertUserMoneyLogs(UserMoneyLogs userMoneyLogs);
|
||||
}
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
package com.ruoyi.mybasic.service.Impl;
|
||||
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
|
||||
import com.ruoyi.mybasic.common.domain.UserMoneyLogs;
|
||||
import com.ruoyi.mybasic.common.domain.emal.IncomeAmount;
|
||||
import com.ruoyi.mybasic.common.domain.request.InvitationRecordRequest;
|
||||
import com.ruoyi.mybasic.common.domain.request.PurseRequest;
|
||||
import com.ruoyi.mybasic.common.domain.request.RequestInvitationRecord;
|
||||
import com.ruoyi.mybasic.mapper.InvitationMapper;
|
||||
import com.ruoyi.mybasic.service.InvitationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -57,4 +59,43 @@ public class InvitationServiceImpl implements InvitationService {
|
|||
R<List<InvitationRecordRequest>> ok = R.ok(list);
|
||||
return ok;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新用户注册邀请获利
|
||||
* @param requestInvitationRecord
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@Transactional //事务
|
||||
public R UserInviteTask(RequestInvitationRecord requestInvitationRecord) {
|
||||
//新增一条邀请记录
|
||||
invitationMapper.insertInvitationRecord(requestInvitationRecord);
|
||||
//被邀请人id
|
||||
Integer userPid = requestInvitationRecord.getUserPid();
|
||||
//邀请人id
|
||||
Integer userId = requestInvitationRecord.getUserId();
|
||||
|
||||
//修改邀请人钱包 (1.可用余额+300 2.总计收入+300 3.修改时间)
|
||||
invitationMapper.updateUserPurse(userId);
|
||||
//同时添加钱包变更记录表
|
||||
UserMoneyLogs userMoneyLogs = new UserMoneyLogs();
|
||||
userMoneyLogs.setUserId(userId);
|
||||
userMoneyLogs.setMoneyTypeId("NEW_USER_INVITE");
|
||||
userMoneyLogs.setStatus(2);
|
||||
userMoneyLogs.setAmountIncome(300);
|
||||
invitationMapper.insertUserMoneyLogs(userMoneyLogs);
|
||||
|
||||
|
||||
//修改被邀请人钱包 (1.可用余额+300 2.总计收入+300 3.修改时间)
|
||||
invitationMapper.updateUserPurse(userPid);
|
||||
//同时添加钱包变更记录表
|
||||
UserMoneyLogs PuserMoneyLogs = new UserMoneyLogs();
|
||||
userMoneyLogs.setUserId(userPid);
|
||||
userMoneyLogs.setMoneyTypeId("NEW_USER_INVITE");
|
||||
userMoneyLogs.setStatus(2);
|
||||
userMoneyLogs.setAmountIncome(300);
|
||||
invitationMapper.insertUserMoneyLogs(PuserMoneyLogs);
|
||||
|
||||
return R.ok();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.ruoyi.mybasic.service;
|
|||
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.mybasic.common.domain.request.InvitationRecordRequest;
|
||||
import com.ruoyi.mybasic.common.domain.request.RequestInvitationRecord;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -13,4 +14,12 @@ import java.util.List;
|
|||
*/
|
||||
public interface InvitationService {
|
||||
R<List<InvitationRecordRequest>> show(@Param("userId") String userId);
|
||||
|
||||
/**
|
||||
* 新用户注册邀请获利
|
||||
* @param requestInvitationRecord
|
||||
* @return
|
||||
*/
|
||||
R UserInviteTask(RequestInvitationRecord requestInvitationRecord);
|
||||
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
<mapper namespace="com.ruoyi.mybasic.mapper.InvitationMapper">
|
||||
|
||||
|
||||
|
||||
<select id="show" resultType="com.ruoyi.mybasic.common.domain.request.InvitationRecordRequest">
|
||||
|
||||
</select>
|
||||
|
@ -22,4 +23,43 @@ FROM
|
|||
invitation_record ir
|
||||
LEFT JOIN t_user USER ON ir.inviter_id = USER.id
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<!-- 新增邀请记录-->
|
||||
<insert id="insertInvitationRecord">
|
||||
INSERT INTO invitation_record
|
||||
( user_id,
|
||||
user_pid,
|
||||
create_time)
|
||||
VALUES
|
||||
(#{userId},
|
||||
#{userPid},
|
||||
now()
|
||||
)
|
||||
</insert>
|
||||
<!-- 添加流水记录-->
|
||||
<insert id="insertUserMoneyLogs">
|
||||
INSERT INTO t_money_logs
|
||||
(status,
|
||||
money_type_id,
|
||||
user_id,
|
||||
amount_income
|
||||
)
|
||||
VALUES
|
||||
(#{status},
|
||||
#{moneyTypeId},
|
||||
#{userId},
|
||||
#{amountIncome}
|
||||
)
|
||||
</insert>
|
||||
<!-- 修改钱包信息-->
|
||||
<update id="updateUserPurse">
|
||||
UPDATE t_purse
|
||||
SET wallet_income = wallet_income + 300,
|
||||
balance_fee = balance_fee + 300,
|
||||
update_time = now()
|
||||
WHERE
|
||||
user_id = #{userId}
|
||||
</update>
|
||||
</mapper>
|
||||
|
|
Loading…
Reference in New Issue