邀请人员达标人员够?额外奖励
This commit is contained in:
parent
af6efd83be
commit
978c4ff5b6
|
|
@ -0,0 +1,65 @@
|
|||
package com.sqx.modules.complet.controller;
|
||||
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.sqx.modules.complet.entity.CompletAward;
|
||||
import com.sqx.modules.complet.service.CompletAwardService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.sqx.common.utils.DateUtils;
|
||||
import com.sqx.common.utils.Result;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@Api(value = "达标奖励", tags = {"达标奖励表(邀请人员 几个人达标后的额外奖励)"})
|
||||
@RequestMapping(value = "/completAward")
|
||||
public class CompletAwardController {
|
||||
/**
|
||||
* 服务对象
|
||||
*/
|
||||
@Autowired
|
||||
private CompletAwardService completAwardService;
|
||||
|
||||
@PostMapping("/insertCompletAward")
|
||||
@ApiOperation("添加达标奖励")
|
||||
public Result insertCompletAward(@RequestBody CompletAward completAward) {
|
||||
completAward.setCreateTime(DateUtil.now());
|
||||
completAwardService.save(completAward);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@GetMapping("/{id}")
|
||||
@ApiOperation("通过Id查询详情")
|
||||
public Result selectOne(@PathVariable Integer id) {
|
||||
return Result.success().put("data", completAwardService.getById(id));
|
||||
}
|
||||
|
||||
@PostMapping("/updateCompletAward")
|
||||
@ApiOperation("修改达标奖励")
|
||||
public Result updateCompletAward(@RequestBody CompletAward completAward) {
|
||||
completAward.setUpdateTime(DateUtil.now());
|
||||
completAwardService.updateById(completAward);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@PostMapping("/deleteCompletAward")
|
||||
@ApiOperation("删除达标奖励")
|
||||
public Result deleteCompletAward(Long id) {
|
||||
completAwardService.removeById(id);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@GetMapping("/selectCompletAward")
|
||||
@ApiOperation("查询达标奖励")
|
||||
public Result selectCompletAward(Integer page, Integer limit) {
|
||||
return Result.success().put("data", completAwardService.page(new Page<>(page, limit), new QueryWrapper<CompletAward>().orderByAsc("id")));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.sqx.modules.complet.dao;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.sqx.modules.complet.entity.CompletAward;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface CompletAwardDao extends BaseMapper<CompletAward> {
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
package com.sqx.modules.complet.entity;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 达标奖励表(邀请人员 几个人达标后的额外奖励)(CompletAward)表实体类
|
||||
*
|
||||
* @author ww
|
||||
* @since 2024-12-12 09:36:13
|
||||
*/
|
||||
@Data
|
||||
@TableName("complet_award")
|
||||
@ApiModel(value = "达标奖励表(邀请人员 几个人达标后的额外奖励) 实体类")
|
||||
public class CompletAward extends Model<CompletAward> {
|
||||
@ApiModelProperty("id")
|
||||
private Long id;
|
||||
@ApiModelProperty("人数")
|
||||
private Integer inviteCount;
|
||||
@ApiModelProperty("1 金豆 2 红包")
|
||||
private Integer type;
|
||||
@ApiModelProperty("奖励数量")
|
||||
private BigDecimal awardNumber;
|
||||
@ApiModelProperty("状态 0 关闭 1 开启")
|
||||
private Integer status;
|
||||
@ApiModelProperty("创建时间")
|
||||
private String createTime;
|
||||
@ApiModelProperty("更新时间")
|
||||
private String updateTime;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.sqx.modules.complet.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.sqx.modules.complet.entity.CompletAward;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public interface CompletAwardService extends IService<CompletAward> {
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
package com.sqx.modules.complet.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.sqx.modules.complet.dao.CompletAwardDao;
|
||||
import com.sqx.modules.complet.entity.CompletAward;
|
||||
import com.sqx.modules.complet.service.CompletAwardService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
public class CompletAwardServiceImpl extends ServiceImpl<CompletAwardDao, CompletAward> implements CompletAwardService {
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -3,6 +3,7 @@ package com.sqx.modules.pay.controller.app;
|
|||
import cn.hutool.core.date.DateUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.sqx.common.annotation.Debounce;
|
||||
import com.sqx.common.utils.DateUtils;
|
||||
import com.sqx.common.utils.Result;
|
||||
|
|
@ -12,6 +13,8 @@ import com.sqx.modules.app.service.UserMoneyDetailsService;
|
|||
import com.sqx.modules.app.service.UserMoneyService;
|
||||
import com.sqx.modules.app.service.UserService;
|
||||
import com.sqx.modules.common.service.CommonInfoService;
|
||||
import com.sqx.modules.complet.entity.CompletAward;
|
||||
import com.sqx.modules.complet.service.CompletAwardService;
|
||||
import com.sqx.modules.invite.dao.InviteDao;
|
||||
import com.sqx.modules.invite.entity.Invite;
|
||||
import com.sqx.modules.invite.service.InviteService;
|
||||
|
|
@ -58,12 +61,13 @@ public class WuyouController {
|
|||
private final UserMoneyDetailsService userMoneyDetailsService;
|
||||
private final CommonInfoService commonRepository;
|
||||
private final CashOutDao cashOutDao;
|
||||
private final CompletAwardService completAwardService;
|
||||
|
||||
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
WuyouController(OrdersService ordersService, PayDetailsDao payDetailsDao, UserService userService, InviteService inviteService, CashOutDao cashOutDao,
|
||||
UserMoneyService userMoneyService, UserMoneyDetailsService userMoneyDetailsService, CommonInfoService commonRepository,
|
||||
InviteDao inviteDao) {
|
||||
InviteDao inviteDao,CompletAwardService completAwardService) {
|
||||
this.ordersService = ordersService;
|
||||
this.payDetailsDao = payDetailsDao;
|
||||
this.userService = userService;
|
||||
|
|
@ -73,6 +77,7 @@ public class WuyouController {
|
|||
this.userMoneyDetailsService = userMoneyDetailsService;
|
||||
this.commonRepository = commonRepository;
|
||||
this.inviteDao = inviteDao;
|
||||
this.completAwardService = completAwardService;
|
||||
}
|
||||
|
||||
@Debounce(interval = 1000, value = "#orderId")
|
||||
|
|
@ -262,6 +267,32 @@ public class WuyouController {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
QueryWrapper<UserMoneyDetails> moneyDetailsQuery = new QueryWrapper<>();
|
||||
moneyDetailsQuery.eq("classify", 7);
|
||||
moneyDetailsQuery.eq("user_id", sourceUser.getUserId());
|
||||
//达标人数
|
||||
int completeCount = userMoneyDetailsService.count(moneyDetailsQuery);
|
||||
completAwardService.list(new QueryWrapper<CompletAward>().eq("invite_count", completeCount)).forEach(completAward -> {
|
||||
switch (completAward.getType()) {
|
||||
case 1:
|
||||
UserMoneyDetails userMoneyDetails1 = new UserMoneyDetails(
|
||||
sourceUser.getUserId(), null, null, "[分享达标额外奖励]", 8, 1, 2,
|
||||
completAward.getAwardNumber(), "邀请人员已有"+completAward.getInviteCount()+"人完成达标任务,额外奖励金豆" + completAward.getAwardNumber(), 2);
|
||||
|
||||
userMoneyService.updateMoney(1, sourceUser.getUserId(), completAward.getAwardNumber().doubleValue());
|
||||
userMoneyDetailsService.save(userMoneyDetails1);
|
||||
break;
|
||||
case 2:
|
||||
UserMoneyDetails userMoneyDetails2 = new UserMoneyDetails(
|
||||
sourceUser.getUserId(), null, null, "[分享达标额外奖励]", 8, 1, 2,
|
||||
completAward.getAwardNumber(), "邀请人员已有"+completAward.getInviteCount()+"人完成达标任务,额外奖励现金红包" + completAward.getAwardNumber(), 1);
|
||||
|
||||
userMoneyService.updateAmount(1, sourceUser.getUserId(), completAward.getAwardNumber().doubleValue());
|
||||
userMoneyDetailsService.save(userMoneyDetails2);
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue