diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorApplyController.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorApplyController.java index b6374fdd..11152348 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorApplyController.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorApplyController.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.cai.domain.AnchorApply; import com.ruoyi.cai.dto.admin.vo.AnchorApplyAdminVo; +import com.ruoyi.cai.dto.app.query.IdRes; import com.ruoyi.cai.service.AnchorApplyService; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; @@ -58,26 +59,20 @@ public class AnchorApplyController extends BaseController { return R.ok(anchorApplyService.getById(id)); } - /** - * 新增播主申请管理 - */ - @SaCheckPermission("cai:anchorApply:add") - @Log(title = "播主申请管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody AnchorApply bo) { - return toAjax(anchorApplyService.save(bo)); + @SaCheckPermission("cai:anchorApply:audit") + @Log(title = "播主申请管理", businessType = BusinessType.UPDATE) + @PostMapping("/auditAnchorSuccess") + public R auditAnchorSuccess(@RequestBody IdRes id) { + anchorApplyService.auditAnchorSuccess(id.getId()); + return R.ok(); } - /** - * 修改播主申请管理 - */ - @SaCheckPermission("cai:anchorApply:edit") + @SaCheckPermission("cai:anchorApply:audit") @Log(title = "播主申请管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody AnchorApply bo) { - return toAjax(anchorApplyService.updateById(bo)); + @PostMapping("/auditAnchorFail") + public R auditAnchorFail(@RequestBody IdRes id) { + anchorApplyService.auditAnchorFail(id.getId()); + return R.ok(); } /** diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorController.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorController.java index 3a911911..4b12f0b0 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorController.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/controller/admin/AnchorController.java @@ -4,8 +4,12 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import com.baomidou.mybatisplus.core.metadata.IPage; import com.ruoyi.cai.domain.Anchor; import com.ruoyi.cai.domain.User; +import com.ruoyi.cai.domain.UserOnline; import com.ruoyi.cai.dto.admin.vo.AnchorAdminVo; +import com.ruoyi.cai.dto.admin.vo.AnchorFullAdminVo; import com.ruoyi.cai.service.AnchorService; +import com.ruoyi.cai.service.UserInfoService; +import com.ruoyi.cai.service.UserOnlineService; import com.ruoyi.cai.service.UserService; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; @@ -33,8 +37,10 @@ import javax.validation.constraints.NotNull; @RequestMapping("/cai/anchor") public class AnchorController extends BaseController { - private final AnchorService caiAnchorService; + private final AnchorService anchorService; private final UserService userService; + private final UserInfoService userInfoService; + private final UserOnlineService userOnlineService; /** * 查询女神列表列表 @@ -42,7 +48,7 @@ public class AnchorController extends BaseController { @SaCheckPermission("cai:anchor:list") @GetMapping("/list") public TableDataInfo list(AnchorAdminVo bo, PageQuery pageQuery) { - IPage page = caiAnchorService.pageAdmin(pageQuery, bo); + IPage page = anchorService.pageAdmin(pageQuery, bo); return TableDataInfo.build(page); } @@ -56,7 +62,18 @@ public class AnchorController extends BaseController { @GetMapping("/{id}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Integer id) { - return R.ok(caiAnchorService.getById(id)); + return R.ok(anchorService.getById(id)); + } + + @GetMapping("/full") + public R getInfo(@NotNull(message = "主键不能为空") + Long userId) { + AnchorFullAdminVo vo = new AnchorFullAdminVo(); + vo.setUser(userService.getById(userId)); + vo.setAnchor(anchorService.getByUserId(userId)); + vo.setUserOnline(userOnlineService.getByUserId(userId)); + vo.setUserInfo(userInfoService.getByUserId(userId)); + return R.ok(vo); } @SaCheckPermission("cai:anchor:add") @@ -68,7 +85,7 @@ public class AnchorController extends BaseController { if(user == null){ return R.fail("用户不存在"); } - caiAnchorService.joinAnchor(user.getId()); + anchorService.joinAnchor(user.getId()); return R.ok(); } @@ -77,7 +94,7 @@ public class AnchorController extends BaseController { @RepeatSubmit() @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody Anchor bo) { - return toAjax(caiAnchorService.updateById(bo)); + return toAjax(anchorService.updateById(bo)); } @SaCheckPermission("cai:anchor:remove") @@ -86,7 +103,7 @@ public class AnchorController extends BaseController { public R remove(@NotNull(message = "主键不能为空") @PathVariable Long userId) { - caiAnchorService.closeAnchor(userId); + anchorService.closeAnchor(userId); return R.ok(); } } diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AnchorApply.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AnchorApply.java index 56d34a5d..33c0b13f 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AnchorApply.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AnchorApply.java @@ -28,15 +28,11 @@ public class AnchorApply implements Serializable { /** * 用户ID */ - private Integer userId; + private Long userId; /** - * 审核状态 0 未申请 1 审核中 2 审核不通过 3 审核通过 + * 审核状态 */ - private Integer status; - /** - * - */ - private Integer auditCount; + private Integer auditStatus; /** * 审核时间 */ diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/UserInfo.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/UserInfo.java index 2f03c914..9fd60ef7 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/UserInfo.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/UserInfo.java @@ -14,7 +14,6 @@ import java.math.BigDecimal; */ @Data @TableName("cai_user_info") -@Deprecated public class UserInfo { private static final long serialVersionUID=1L; diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/AnchorFullAdminVo.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/AnchorFullAdminVo.java new file mode 100644 index 00000000..0e497802 --- /dev/null +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/AnchorFullAdminVo.java @@ -0,0 +1,15 @@ +package com.ruoyi.cai.dto.admin.vo; + +import com.ruoyi.cai.domain.Anchor; +import com.ruoyi.cai.domain.User; +import com.ruoyi.cai.domain.UserInfo; +import com.ruoyi.cai.domain.UserOnline; +import lombok.Data; + +@Data +public class AnchorFullAdminVo { + private User user; + private Anchor anchor; + private UserOnline userOnline; + private UserInfo userInfo; +} diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AnchorApplyService.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AnchorApplyService.java index 7c5e6ee2..da26ccb9 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AnchorApplyService.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AnchorApplyService.java @@ -22,4 +22,8 @@ public interface AnchorApplyService extends IService { AnchorJoinHomeVo joinHome(Long userId); boolean joinAnchor(Long userId); + + void auditAnchorSuccess(Long id); + + void auditAnchorFail(Long id); } diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AnchorApplyServiceImpl.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AnchorApplyServiceImpl.java index bea0aa43..4f433f08 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AnchorApplyServiceImpl.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AnchorApplyServiceImpl.java @@ -3,17 +3,24 @@ 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.Anchor; import com.ruoyi.cai.domain.AnchorApply; import com.ruoyi.cai.domain.User; import com.ruoyi.cai.dto.admin.vo.AnchorApplyAdminVo; import com.ruoyi.cai.dto.app.vo.AnchorJoinHomeVo; +import com.ruoyi.cai.enums.AuditStatusEnum; +import com.ruoyi.cai.enums.GenderEnum; +import com.ruoyi.cai.enums.SystemConfigEnum; +import com.ruoyi.cai.manager.SystemConfigManager; import com.ruoyi.cai.mapper.AnchorApplyMapper; import com.ruoyi.cai.service.AnchorApplyService; +import com.ruoyi.cai.service.AnchorService; 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.time.LocalDateTime; @@ -28,6 +35,10 @@ public class AnchorApplyServiceImpl extends ServiceImpl impleme private SystemConfigManager systemConfigManager; @Override + @Transactional(rollbackFor = Exception.class) public void joinAnchor(Long userId){ User user = userService.getById(userId); Anchor anchor = this.getByUserId(userId); @@ -72,6 +74,7 @@ public class AnchorServiceImpl extends ServiceImpl impleme } @Override + @Transactional(rollbackFor = Exception.class) public void closeAnchor(Long userId){ User user = userService.getById(userId); Anchor anchor = this.getByUserId(userId); diff --git a/ruoyi-cai/src/main/resources/mapper/cai/AnchorApplyMapper.xml b/ruoyi-cai/src/main/resources/mapper/cai/AnchorApplyMapper.xml index 85677f67..c9a8fd08 100644 --- a/ruoyi-cai/src/main/resources/mapper/cai/AnchorApplyMapper.xml +++ b/ruoyi-cai/src/main/resources/mapper/cai/AnchorApplyMapper.xml @@ -7,7 +7,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - @@ -18,6 +17,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select t1.*,t2.age,t2.avatar,t2.usercode,t2.nickname,t2.mobile,t2.gender from cai_anchor_apply t1 left join cai_user t2 on t1.user_id = t2.id + + + and t2.mobile = #{bo.mobile} + + + and t2.usercode = #{bo.usercode} + + + and t1.audit_status = #{bo.auditStatus} + + + order by t2.create_time desc