This commit is contained in:
dute7liang
2024-01-02 02:01:53 +08:00
parent 59341aa956
commit 3569bad84e
7 changed files with 106 additions and 5 deletions

View File

@@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.domain.UserInvite;
import com.ruoyi.cai.dto.admin.vo.UserInviteAdminVo;
import com.ruoyi.cai.service.UserInviteService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
@@ -41,8 +42,8 @@ public class UserInviteController extends BaseController {
*/
@SaCheckPermission("cai:userInvite:list")
@GetMapping("/list")
public TableDataInfo<UserInvite> list(UserInvite bo, PageQuery pageQuery) {
Page<UserInvite> page = userInviteService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
public TableDataInfo<UserInviteAdminVo> list(UserInviteAdminVo bo, PageQuery pageQuery) {
Page<UserInviteAdminVo> page = userInviteService.pageAdmin(pageQuery, bo);
return TableDataInfo.build(page);
}
@@ -69,6 +70,14 @@ public class UserInviteController extends BaseController {
return toAjax(userInviteService.save(bo));
}
@SaCheckPermission("cai:userInvite:edit")
@Log(title = "用户邀请", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PostMapping("/updateUserInviteRate")
public R<Void> updateUserInviteRate(@RequestBody UserInvite bo) {
return toAjax(userInviteService.updateUserInviteRate(bo));
}
/**
* 修改用户邀请
*/

View File

@@ -14,6 +14,7 @@ import java.math.BigDecimal;
*/
@Data
@TableName("cai_user_info")
@Deprecated
public class UserInfo {
private static final long serialVersionUID=1L;

View File

@@ -0,0 +1,14 @@
package com.ruoyi.cai.dto.admin.vo;
import com.ruoyi.cai.domain.UserInvite;
import lombok.Data;
@Data
public class UserInviteAdminVo extends UserInvite {
private String usercode;
private String mobile;
private String inviteUsercode;
private String inviteMobile;
private Integer inviteIsUnion;
private String unionName;
}

View File

@@ -3,6 +3,7 @@ package com.ruoyi.cai.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.domain.UserInvite;
import com.ruoyi.cai.dto.admin.vo.UserInviteAdminVo;
import com.ruoyi.cai.dto.app.dto.InviteCountDTO;
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
import org.apache.ibatis.annotations.Param;
@@ -18,4 +19,6 @@ public interface UserInviteMapper extends BaseMapper<UserInvite> {
InviteCountDTO countInviteAndReward(@Param("userId") Long userId);
Page<UserListVo> inviteUserPage(@Param("build") Page<Object> build, @Param("userId") Long userId);
Page<UserInviteAdminVo> pageAdmin(@Param("build") Page<Object> build, @Param("bo") UserInviteAdminVo bo);
}

View File

@@ -3,6 +3,7 @@ package com.ruoyi.cai.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cai.domain.UserInvite;
import com.ruoyi.cai.dto.admin.vo.UserInviteAdminVo;
import com.ruoyi.cai.dto.app.vo.invite.InviteHomeVo;
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
import com.ruoyi.common.core.domain.PageQuery;
@@ -20,4 +21,8 @@ public interface UserInviteService extends IService<UserInvite> {
InviteHomeVo inviteHome(Long userId);
Page<UserListVo> inviteUserPage(PageQuery pageQuery, Long userId);
Page<UserInviteAdminVo> pageAdmin(PageQuery pageQuery, UserInviteAdminVo bo);
boolean updateUserInviteRate(UserInvite bo);
}

View File

@@ -3,16 +3,21 @@ package com.ruoyi.cai.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.cai.domain.UserInfo;
import com.ruoyi.cai.domain.UserInvite;
import com.ruoyi.cai.dto.admin.vo.UserInviteAdminVo;
import com.ruoyi.cai.dto.app.dto.InviteCountDTO;
import com.ruoyi.cai.dto.app.vo.invite.InviteHomeVo;
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
import com.ruoyi.cai.mapper.UserInviteMapper;
import com.ruoyi.cai.service.UserInfoService;
import com.ruoyi.cai.service.UserInviteService;
import com.ruoyi.cai.service.UserService;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.exception.ServiceException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
@@ -26,14 +31,16 @@ import java.util.List;
@Service
public class UserInviteServiceImpl extends ServiceImpl<UserInviteMapper, UserInvite> implements UserInviteService {
@Autowired
private UserService userService;
@Autowired
private UserInfoService userInfoService;
@Override
public UserInvite getByUserId(Long id) {
return this.getOne(Wrappers.lambdaQuery(UserInvite.class).eq(UserInvite::getUserId,id).last("limit 1"));
}
@Autowired
private UserService userService;
@Override
public InviteHomeVo inviteHome(Long userId) {
InviteHomeVo vo = new InviteHomeVo();
@@ -55,4 +62,38 @@ public class UserInviteServiceImpl extends ServiceImpl<UserInviteMapper, UserInv
public Page<UserListVo> inviteUserPage(PageQuery pageQuery, Long userId) {
return baseMapper.inviteUserPage(pageQuery.build(),userId);
}
@Override
public Page<UserInviteAdminVo> pageAdmin(PageQuery pageQuery, UserInviteAdminVo bo) {
return baseMapper.pageAdmin(pageQuery.build(), bo);
}
@Override
@Transactional(rollbackFor = Exception.class)
public boolean updateUserInviteRate(UserInvite bo) {
UserInvite userInvite = this.getById(bo.getId());
if(userInvite == null){
throw new ServiceException("数据不存在");
}
UserInvite update = new UserInvite();
update.setId(bo.getId());
update.setGiftIncomeRate(bo.getGiftIncomeRate());
update.setVideoIncomeRate(bo.getVideoIncomeRate());
update.setGuardIncomeRate(bo.getGuardIncomeRate());
update.setPayIncomeRate(bo.getPayIncomeRate());
boolean b = this.updateById(update);
if(b){
UserInfo userInfo = new UserInfo();
userInfo.setGiftIncomeRate(bo.getGiftIncomeRate());
userInfo.setVideoIncomeRate(bo.getVideoIncomeRate());
userInfo.setGuardIncomeRate(bo.getGuardIncomeRate());
userInfo.setPayIncomeRate(bo.getPayIncomeRate());
userInfoService.update(Wrappers.lambdaUpdate(UserInfo.class).eq(UserInfo::getUserId,userInvite.getUserId())
.set(UserInfo::getGiftIncomeRate,bo.getGiftIncomeRate())
.set(UserInfo::getVideoIncomeRate,bo.getVideoIncomeRate())
.set(UserInfo::getGuardIncomeRate,bo.getGuardIncomeRate())
.set(UserInfo::getPayIncomeRate,bo.getPayIncomeRate()));
}
return b;
}
}

View File

@@ -22,6 +22,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
join cai_user t2 on t1.user_id = t2.id
where t1.user_id = #{userId}
</select>
<select id="pageAdmin" resultType="com.ruoyi.cai.dto.admin.vo.UserInviteAdminVo">
select t1.*,
t2.usercode,t2.mobile,
t3.usercode as invite_usercode,t3.mobile as invite_mobile,t3.is_union as invite_is_union,
t5.name as union_name
from cai_user_invite t1
left join cai_user t2 on t1.user_id = t2.id
left join cai_user t3 on t1.invite_id = t3.id
left join cai_union_user t4 on t1.user_id = t4.user_id
left join cai_union t5 on t4.union_id = t5.id
<where>
<if test="bo.mobile != null and bo.mobile != ''">
and t2.mobile = #{bo.mobile}
</if>
<if test="bo.usercode != null and bo.usercode != ''">
and t2.usercode = #{bo.usercode}
</if>
<if test="bo.inviteMobile != null and bo.inviteMobile != ''">
and t3.mobile = #{bo.inviteMobile}
</if>
<if test="bo.inviteUsercode != null and bo.inviteUsercode != ''">
and t3.usercode = #{bo.inviteUsercode}
</if>
<if test="bo.unionName != null and bo.unionName != ''">
and t5.name like concat('%',#{bo.unionName},'%')
</if>
</where>
</select>
</mapper>