init
This commit is contained in:
@@ -0,0 +1,95 @@
|
|||||||
|
package com.ruoyi.cai.controller;
|
||||||
|
|
||||||
|
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.CaiUserCameraAudit;
|
||||||
|
import com.ruoyi.cai.service.CaiUserCameraAuditService;
|
||||||
|
import com.ruoyi.common.annotation.Log;
|
||||||
|
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||||
|
import com.ruoyi.common.core.controller.BaseController;
|
||||||
|
import com.ruoyi.common.core.domain.PageQuery;
|
||||||
|
import com.ruoyi.common.core.domain.R;
|
||||||
|
import com.ruoyi.common.core.page.TableDataInfo;
|
||||||
|
import com.ruoyi.common.core.validate.AddGroup;
|
||||||
|
import com.ruoyi.common.core.validate.EditGroup;
|
||||||
|
import com.ruoyi.common.enums.BusinessType;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自拍认证
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
@Validated
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/cai/userCameraAudit")
|
||||||
|
public class CaiUserCameraAuditController extends BaseController {
|
||||||
|
|
||||||
|
private final CaiUserCameraAuditService caiUserCameraAuditService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询自拍认证列表
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cai:userCameraAudit:list")
|
||||||
|
@GetMapping("/list")
|
||||||
|
public TableDataInfo<CaiUserCameraAudit> list(CaiUserCameraAudit bo, PageQuery pageQuery) {
|
||||||
|
Page<CaiUserCameraAudit> page = caiUserCameraAuditService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
|
||||||
|
return TableDataInfo.build(page);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取自拍认证详细信息
|
||||||
|
*
|
||||||
|
* @param id 主键
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cai:userCameraAudit:query")
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public R<CaiUserCameraAudit> getInfo(@NotNull(message = "主键不能为空")
|
||||||
|
@PathVariable Integer id) {
|
||||||
|
return R.ok(caiUserCameraAuditService.getById(id));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增自拍认证
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cai:userCameraAudit:add")
|
||||||
|
@Log(title = "自拍认证", businessType = BusinessType.INSERT)
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PostMapping()
|
||||||
|
public R<Void> add(@Validated(AddGroup.class) @RequestBody CaiUserCameraAudit bo) {
|
||||||
|
return toAjax(caiUserCameraAuditService.save(bo));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改自拍认证
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cai:userCameraAudit:edit")
|
||||||
|
@Log(title = "自拍认证", businessType = BusinessType.UPDATE)
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PutMapping()
|
||||||
|
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CaiUserCameraAudit bo) {
|
||||||
|
return toAjax(caiUserCameraAuditService.updateById(bo));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除自拍认证
|
||||||
|
*
|
||||||
|
* @param ids 主键串
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cai:userCameraAudit:remove")
|
||||||
|
@Log(title = "自拍认证", businessType = BusinessType.DELETE)
|
||||||
|
@DeleteMapping("/{ids}")
|
||||||
|
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||||
|
@PathVariable Integer[] ids) {
|
||||||
|
return toAjax(caiUserCameraAuditService.removeBatchByIds(Arrays.asList(ids), true));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,15 +1,24 @@
|
|||||||
package com.ruoyi.cai.controller.app;
|
package com.ruoyi.cai.controller.app;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import com.ruoyi.cai.domain.CaiReportCate;
|
||||||
|
import com.ruoyi.cai.domain.CaiSkill;
|
||||||
import com.ruoyi.cai.dto.app.query.AnchorUpdateReq;
|
import com.ruoyi.cai.dto.app.query.AnchorUpdateReq;
|
||||||
import com.ruoyi.cai.dto.app.vo.AnchorVo;
|
import com.ruoyi.cai.dto.app.vo.AnchorVo;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.CameraAuditVo;
|
||||||
import com.ruoyi.cai.manager.CurrentUserManager;
|
import com.ruoyi.cai.manager.CurrentUserManager;
|
||||||
|
import com.ruoyi.cai.service.CaiAnchorService;
|
||||||
|
import com.ruoyi.cai.service.CaiUserCameraAuditService;
|
||||||
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.R;
|
||||||
|
import com.ruoyi.common.helper.LoginHelper;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/anchor")
|
@RequestMapping("/api/anchor")
|
||||||
@@ -18,6 +27,10 @@ public class CaiAnchorAppController {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private CurrentUserManager currentUserManager;
|
private CurrentUserManager currentUserManager;
|
||||||
|
@Autowired
|
||||||
|
private CaiUserCameraAuditService userCameraAuditService;
|
||||||
|
@Autowired
|
||||||
|
private CaiAnchorService anchorService;
|
||||||
|
|
||||||
@GetMapping("/info")
|
@GetMapping("/info")
|
||||||
@Operation(summary = "当前用户的主播信息")
|
@Operation(summary = "当前用户的主播信息")
|
||||||
@@ -32,5 +45,20 @@ public class CaiAnchorAppController {
|
|||||||
return R.ok(currentUserManager.anchorUpdate(anchorUpdate));
|
return R.ok(currentUserManager.anchorUpdate(anchorUpdate));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/cameraAudit")
|
||||||
|
@Operation(summary = "主播自拍认证")
|
||||||
|
public R<CameraAuditVo> cameraAudit(){
|
||||||
|
Long userId = LoginHelper.getUserId();
|
||||||
|
return R.ok(userCameraAuditService.cameraAudit(userId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/uploadCameraAudit")
|
||||||
|
@Operation(summary = "上传自拍认证")
|
||||||
|
public R<Boolean> uploadCameraAudit(@RequestBody CameraAuditVo vo){
|
||||||
|
Long userId = LoginHelper.getUserId();
|
||||||
|
vo.setUserId(userId);
|
||||||
|
return R.ok(userCameraAuditService.uploadCameraAudit(vo));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.ruoyi.cai.controller.app;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import com.ruoyi.cai.domain.CaiGoods;
|
import com.ruoyi.cai.domain.CaiGoods;
|
||||||
import com.ruoyi.cai.domain.CaiReportCate;
|
import com.ruoyi.cai.domain.CaiReportCate;
|
||||||
|
import com.ruoyi.cai.domain.CaiSkill;
|
||||||
import com.ruoyi.cai.domain.CaiWithdrawExchange;
|
import com.ruoyi.cai.domain.CaiWithdrawExchange;
|
||||||
import com.ruoyi.cai.service.CaiGoodsService;
|
import com.ruoyi.cai.service.CaiGoodsService;
|
||||||
import com.ruoyi.cai.service.CaiReportCateService;
|
import com.ruoyi.cai.service.CaiReportCateService;
|
||||||
|
|||||||
@@ -6,9 +6,14 @@ import com.ruoyi.cai.domain.CaiAccountBankcard;
|
|||||||
import com.ruoyi.cai.domain.CaiAccountCash;
|
import com.ruoyi.cai.domain.CaiAccountCash;
|
||||||
import com.ruoyi.cai.domain.CaiAccountRecharge;
|
import com.ruoyi.cai.domain.CaiAccountRecharge;
|
||||||
import com.ruoyi.cai.dto.app.query.*;
|
import com.ruoyi.cai.dto.app.query.*;
|
||||||
import com.ruoyi.cai.dto.app.vo.*;
|
import com.ruoyi.cai.dto.app.vo.AccountCashVo;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.AccountRechargeVo;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.CurrentUserInfoVo;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.UserAccountVo;
|
||||||
import com.ruoyi.cai.manager.CurrentUserManager;
|
import com.ruoyi.cai.manager.CurrentUserManager;
|
||||||
import com.ruoyi.cai.service.*;
|
import com.ruoyi.cai.service.CaiAccountCashService;
|
||||||
|
import com.ruoyi.cai.service.CaiAccountRechargeService;
|
||||||
|
import com.ruoyi.cai.service.CaiUserAlbumService;
|
||||||
import com.ruoyi.common.core.domain.PageQuery;
|
import com.ruoyi.common.core.domain.PageQuery;
|
||||||
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.R;
|
||||||
import com.ruoyi.common.core.page.TableDataInfo;
|
import com.ruoyi.common.core.page.TableDataInfo;
|
||||||
@@ -32,8 +37,6 @@ public class CaiUserAppController {
|
|||||||
private CaiAccountCashService accountCashService;
|
private CaiAccountCashService accountCashService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private CaiUserAlbumService userAlbumService;
|
private CaiUserAlbumService userAlbumService;
|
||||||
@Autowired
|
|
||||||
private CaiReportService reportService;
|
|
||||||
|
|
||||||
@GetMapping("/aliInfo")
|
@GetMapping("/aliInfo")
|
||||||
@Operation(summary = "获取绑定支付宝信息")
|
@Operation(summary = "获取绑定支付宝信息")
|
||||||
@@ -75,6 +78,12 @@ public class CaiUserAppController {
|
|||||||
return R.ok(currentUserManager.userUpdate(res));
|
return R.ok(currentUserManager.userUpdate(res));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/album/update")
|
||||||
|
@Operation(summary = "修改相册")
|
||||||
|
public R<Boolean> userAlbumDel(@RequestBody AlbumAddReq userAlbumList){
|
||||||
|
return R.ok(userAlbumService.updateAlbum(userAlbumList));
|
||||||
|
}
|
||||||
|
|
||||||
@PostMapping("/album/del")
|
@PostMapping("/album/del")
|
||||||
@Operation(summary = "删除相册")
|
@Operation(summary = "删除相册")
|
||||||
public R<Boolean> userAlbumDel(@RequestBody IdRes res){
|
public R<Boolean> userAlbumDel(@RequestBody IdRes res){
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ public class CaiUserDynamicAppController {
|
|||||||
private CaiUserFollowDynamicService userFollowDynamicService;
|
private CaiUserFollowDynamicService userFollowDynamicService;
|
||||||
|
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@Operation(summary = "广场动态查询")
|
@Operation(summary = "动态查询")
|
||||||
public TableDataInfo<DynamicListVo> page(PageQuery pageQuery, DynamicQuery query){
|
public TableDataInfo<DynamicListVo> page(PageQuery pageQuery, DynamicQuery query){
|
||||||
Page<DynamicListVo> resp = dynamicService.pageApp(pageQuery,query);
|
Page<DynamicListVo> resp = dynamicService.pageApp(pageQuery,query);
|
||||||
return TableDataInfo.build(resp);
|
return TableDataInfo.build(resp);
|
||||||
|
|||||||
@@ -29,12 +29,6 @@ public class CaiAnchor implements Serializable{
|
|||||||
* 用户ID
|
* 用户ID
|
||||||
*/
|
*/
|
||||||
private Long userId;
|
private Long userId;
|
||||||
/**
|
|
||||||
* 技能ID
|
|
||||||
*/
|
|
||||||
private Integer skillId;
|
|
||||||
private String skillName;
|
|
||||||
private String skillIcon;
|
|
||||||
/**
|
/**
|
||||||
* 价格,默认50彩币
|
* 价格,默认50彩币
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -0,0 +1,47 @@
|
|||||||
|
package com.ruoyi.cai.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员技能对象 cai_member_skill
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("cai_member_skill")
|
||||||
|
public class CaiMemberSkill implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID=1L;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@TableId(value = "id")
|
||||||
|
private Integer id;
|
||||||
|
/**
|
||||||
|
* 类型 0 普通 1 超级
|
||||||
|
*/
|
||||||
|
private Integer memberType;
|
||||||
|
/**
|
||||||
|
* 名称
|
||||||
|
*/
|
||||||
|
private String name;
|
||||||
|
/**
|
||||||
|
* 描述
|
||||||
|
*/
|
||||||
|
private String desc;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private String icon;
|
||||||
|
/**
|
||||||
|
* 状态 0 可用 1 不可用
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -97,10 +97,6 @@ public class CaiUser implements Serializable {
|
|||||||
* 资料是否完成 0 未完成 1已完成
|
* 资料是否完成 0 未完成 1已完成
|
||||||
*/
|
*/
|
||||||
private Integer finishStatus;
|
private Integer finishStatus;
|
||||||
/**
|
|
||||||
* 技能状态 0 未开启 1 已开启
|
|
||||||
*/
|
|
||||||
private Integer skillStatus;
|
|
||||||
/**
|
/**
|
||||||
* 相册上传状态 0 未上传 1 已上传
|
* 相册上传状态 0 未上传 1 已上传
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -0,0 +1,63 @@
|
|||||||
|
package com.ruoyi.cai.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自拍认证对象 cai_user_camera_audit
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("cai_user_camera_audit")
|
||||||
|
public class CaiUserCameraAudit implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID=1L;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@TableId(value = "id")
|
||||||
|
private Integer id;
|
||||||
|
/**
|
||||||
|
* 用户ID
|
||||||
|
*/
|
||||||
|
private Long userId;
|
||||||
|
/**
|
||||||
|
* 动作类型 0
|
||||||
|
*/
|
||||||
|
private Integer actionType;
|
||||||
|
/**
|
||||||
|
* 动作类型图片
|
||||||
|
*/
|
||||||
|
private String actionImage;
|
||||||
|
/**
|
||||||
|
* 头像地址
|
||||||
|
*/
|
||||||
|
private String photo;
|
||||||
|
/**
|
||||||
|
* 审核状态 0未提交 1审核中 2 审核通过 3 审核不通过
|
||||||
|
*/
|
||||||
|
private Integer auditStatus;
|
||||||
|
/**
|
||||||
|
* 审核时间
|
||||||
|
*/
|
||||||
|
private Long auditTime;
|
||||||
|
/**
|
||||||
|
* 审核次数
|
||||||
|
*/
|
||||||
|
private Integer auditCount;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private String auditRemark;
|
||||||
|
/**
|
||||||
|
* 操作ip
|
||||||
|
*/
|
||||||
|
private String operateIp;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -7,6 +7,8 @@ import lombok.Data;
|
|||||||
public class AlbumAddReq {
|
public class AlbumAddReq {
|
||||||
@Schema(description = "用户ID",accessMode = Schema.AccessMode.READ_ONLY)
|
@Schema(description = "用户ID",accessMode = Schema.AccessMode.READ_ONLY)
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
@Schema(description = "id")
|
||||||
|
private Long id;
|
||||||
@Schema(description = "url")
|
@Schema(description = "url")
|
||||||
private String url;
|
private String url;
|
||||||
@Schema(description = "排序")
|
@Schema(description = "排序")
|
||||||
|
|||||||
@@ -15,4 +15,6 @@ public class UserUpdateReq {
|
|||||||
private String nickname;
|
private String nickname;
|
||||||
@Schema(description = "生日")
|
@Schema(description = "生日")
|
||||||
private LocalDateTime birthday;
|
private LocalDateTime birthday;
|
||||||
|
@Schema(description = "头像")
|
||||||
|
private String avatar;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,11 +13,6 @@ public class AnchorVo {
|
|||||||
*/
|
*/
|
||||||
@Schema(description = "用户ID")
|
@Schema(description = "用户ID")
|
||||||
private Long userId;
|
private Long userId;
|
||||||
/**
|
|
||||||
* 技能ID
|
|
||||||
*/
|
|
||||||
@Schema(description = "技能ID")
|
|
||||||
private Integer skillId;
|
|
||||||
/**
|
/**
|
||||||
* 价格,默认50彩币
|
* 价格,默认50彩币
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
package com.ruoyi.cai.dto.app.vo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class CameraAuditVo {
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private Integer id;
|
||||||
|
/**
|
||||||
|
* 用户ID
|
||||||
|
*/
|
||||||
|
private Long userId;
|
||||||
|
/**
|
||||||
|
* 动作类型 0
|
||||||
|
*/
|
||||||
|
private Integer actionType;
|
||||||
|
/**
|
||||||
|
* 动作类型图片
|
||||||
|
*/
|
||||||
|
private String actionImage;
|
||||||
|
/**
|
||||||
|
* 头像地址
|
||||||
|
*/
|
||||||
|
private String photo;
|
||||||
|
/**
|
||||||
|
* 审核状态 0未提交 1审核中 2 审核通过 3 审核不通过
|
||||||
|
*/
|
||||||
|
private Integer auditStatus;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private String auditRemark;
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
package com.ruoyi.cai.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.ruoyi.cai.domain.CaiMemberSkill;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员技能Mapper接口
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
public interface CaiMemberSkillMapper extends BaseMapper<CaiMemberSkill> {
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
package com.ruoyi.cai.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.ruoyi.cai.domain.CaiUserCameraAudit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自拍认证Mapper接口
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
public interface CaiUserCameraAuditMapper extends BaseMapper<CaiUserCameraAudit> {
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
package com.ruoyi.cai.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.ruoyi.cai.domain.CaiMemberSkill;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员技能Service接口
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
public interface CaiMemberSkillService extends IService<CaiMemberSkill> {
|
||||||
|
|
||||||
|
}
|
||||||
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||||||
import com.ruoyi.cai.domain.CaiUserAlbum;
|
import com.ruoyi.cai.domain.CaiUserAlbum;
|
||||||
import com.ruoyi.cai.dto.app.query.AlbumAddReq;
|
import com.ruoyi.cai.dto.app.query.AlbumAddReq;
|
||||||
import com.ruoyi.cai.dto.app.query.AlbumResetReq;
|
import com.ruoyi.cai.dto.app.query.AlbumResetReq;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.UserAlbumDTO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -22,6 +23,8 @@ public interface CaiUserAlbumService extends IService<CaiUserAlbum> {
|
|||||||
|
|
||||||
boolean addAlbum(AlbumAddReq res);
|
boolean addAlbum(AlbumAddReq res);
|
||||||
|
|
||||||
|
boolean updateAlbum(AlbumAddReq res);
|
||||||
|
|
||||||
boolean removeAlbum(Long id);
|
boolean removeAlbum(Long id);
|
||||||
|
|
||||||
boolean resetAlbum(List<AlbumResetReq> res, Long userId);
|
boolean resetAlbum(List<AlbumResetReq> res, Long userId);
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package com.ruoyi.cai.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.ruoyi.cai.domain.CaiUserCameraAudit;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.CameraAuditVo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自拍认证Service接口
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
public interface CaiUserCameraAuditService extends IService<CaiUserCameraAudit> {
|
||||||
|
|
||||||
|
CaiUserCameraAudit getByUserId(Long userId);
|
||||||
|
|
||||||
|
CameraAuditVo cameraAudit(Long userId);
|
||||||
|
|
||||||
|
Boolean uploadCameraAudit(CameraAuditVo vo);
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
package com.ruoyi.cai.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.ruoyi.cai.domain.CaiMemberSkill;
|
||||||
|
import com.ruoyi.cai.mapper.CaiMemberSkillMapper;
|
||||||
|
import com.ruoyi.cai.service.CaiMemberSkillService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员技能Service业务层处理
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class CaiMemberSkillServiceImpl extends ServiceImpl<CaiMemberSkillMapper,CaiMemberSkill> implements CaiMemberSkillService {
|
||||||
|
}
|
||||||
@@ -7,9 +7,11 @@ import com.ruoyi.cai.domain.CaiUser;
|
|||||||
import com.ruoyi.cai.domain.CaiUserAlbum;
|
import com.ruoyi.cai.domain.CaiUserAlbum;
|
||||||
import com.ruoyi.cai.dto.app.query.AlbumAddReq;
|
import com.ruoyi.cai.dto.app.query.AlbumAddReq;
|
||||||
import com.ruoyi.cai.dto.app.query.AlbumResetReq;
|
import com.ruoyi.cai.dto.app.query.AlbumResetReq;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.UserAlbumDTO;
|
||||||
import com.ruoyi.cai.mapper.CaiUserAlbumMapper;
|
import com.ruoyi.cai.mapper.CaiUserAlbumMapper;
|
||||||
import com.ruoyi.cai.service.CaiUserAlbumService;
|
import com.ruoyi.cai.service.CaiUserAlbumService;
|
||||||
import com.ruoyi.cai.service.CaiUserService;
|
import com.ruoyi.cai.service.CaiUserService;
|
||||||
|
import com.ruoyi.common.helper.LoginHelper;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@@ -57,14 +59,20 @@ public class CaiUserAlbumServiceImpl extends ServiceImpl<CaiUserAlbumMapper, Cai
|
|||||||
album.setIsAnchor(user.getIsAnchor());
|
album.setIsAnchor(user.getIsAnchor());
|
||||||
album.setOrderBy(res.getOrderBy());
|
album.setOrderBy(res.getOrderBy());
|
||||||
this.save(album);
|
this.save(album);
|
||||||
if(user.getIsAnchor() == 1 && res.getOrderBy() == 0){
|
|
||||||
userService.update(Wrappers.lambdaUpdate(CaiUser.class)
|
|
||||||
.eq(CaiUser::getId,res.getUserId())
|
|
||||||
.set(CaiUser::getAvatar,res.getUrl()));
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean updateAlbum(AlbumAddReq res) {
|
||||||
|
CaiUserAlbum album = new CaiUserAlbum();
|
||||||
|
album.setId(res.getId());
|
||||||
|
album.setUrl(res.getUrl());
|
||||||
|
album.setOrderBy(res.getOrderBy());
|
||||||
|
this.updateById(album);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean removeAlbum(Long id){
|
public boolean removeAlbum(Long id){
|
||||||
return this.removeById(id);
|
return this.removeById(id);
|
||||||
@@ -72,27 +80,15 @@ public class CaiUserAlbumServiceImpl extends ServiceImpl<CaiUserAlbumMapper, Cai
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean resetAlbum(List<AlbumResetReq> res, Long userId) {
|
public boolean resetAlbum(List<AlbumResetReq> res, Long userId) {
|
||||||
CaiUser user = userService.getById(userId);
|
|
||||||
List<CaiUserAlbum> update = new ArrayList<>();
|
List<CaiUserAlbum> update = new ArrayList<>();
|
||||||
Long id = null;
|
|
||||||
for (AlbumResetReq re : res) {
|
for (AlbumResetReq re : res) {
|
||||||
CaiUserAlbum album = new CaiUserAlbum();
|
CaiUserAlbum album = new CaiUserAlbum();
|
||||||
album.setId(re.getId());
|
album.setId(re.getId());
|
||||||
album.setOrderBy(re.getOrderBy());
|
album.setOrderBy(re.getOrderBy());
|
||||||
update.add(album);
|
update.add(album);
|
||||||
if(re.getOrderBy() == 0){
|
|
||||||
id = re.getId();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
this.updateBatchById(update);
|
this.updateBatchById(update);
|
||||||
if(id != null){
|
|
||||||
CaiUserAlbum album = this.getById(id);
|
|
||||||
if(album != null && (album.getIsAnchor() == 1 || album.getStatus() == 1)){
|
|
||||||
userService.update(Wrappers.lambdaUpdate(CaiUser.class)
|
|
||||||
.eq(CaiUser::getId,album.getUserId())
|
|
||||||
.set(CaiUser::getAvatar,album.getUrl()));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,96 @@
|
|||||||
|
package com.ruoyi.cai.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.RandomUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.ruoyi.cai.domain.CaiUser;
|
||||||
|
import com.ruoyi.cai.domain.CaiUserCameraAudit;
|
||||||
|
import com.ruoyi.cai.dto.app.vo.CameraAuditVo;
|
||||||
|
import com.ruoyi.cai.mapper.CaiUserCameraAuditMapper;
|
||||||
|
import com.ruoyi.cai.service.CaiUserCameraAuditService;
|
||||||
|
import com.ruoyi.cai.service.CaiUserService;
|
||||||
|
import com.ruoyi.common.exception.ServiceException;
|
||||||
|
import com.ruoyi.common.utils.BeanConvertUtil;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自拍认证Service业务层处理
|
||||||
|
*
|
||||||
|
* @author 77
|
||||||
|
* @date 2023-12-30
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class CaiUserCameraAuditServiceImpl extends ServiceImpl<CaiUserCameraAuditMapper,CaiUserCameraAudit> implements CaiUserCameraAuditService {
|
||||||
|
|
||||||
|
public static final Map<Integer,String> ACTION_TYPES = new HashMap<>();
|
||||||
|
|
||||||
|
static {
|
||||||
|
ACTION_TYPES.put(1,"123");
|
||||||
|
ACTION_TYPES.put(2,"123");
|
||||||
|
ACTION_TYPES.put(3,"123");
|
||||||
|
ACTION_TYPES.put(4,"123");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CaiUserService userService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CaiUserCameraAudit getByUserId(Long userId){
|
||||||
|
return this.getOne(Wrappers.lambdaQuery(CaiUserCameraAudit.class).eq(CaiUserCameraAudit::getUserId,userId).last("limit 1"));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CameraAuditVo cameraAudit(Long userId) {
|
||||||
|
CaiUserCameraAudit userCameraAudit = this.getByUserId(userId);
|
||||||
|
CameraAuditVo vo;
|
||||||
|
if(userCameraAudit != null){
|
||||||
|
vo = BeanConvertUtil.convertTo(userCameraAudit, CameraAuditVo::new);
|
||||||
|
} else {
|
||||||
|
int actionType = RandomUtil.randomInt(0, 4);
|
||||||
|
vo = new CameraAuditVo();
|
||||||
|
vo.setUserId(userId);
|
||||||
|
vo.setActionType(actionType);
|
||||||
|
vo.setActionImage(ACTION_TYPES.get(actionType));
|
||||||
|
vo.setAuditStatus(0);
|
||||||
|
}
|
||||||
|
CaiUser user = userService.getById(userId);
|
||||||
|
if(user.getCameraStatus() == 1){
|
||||||
|
vo.setAuditStatus(2);
|
||||||
|
vo.setAuditRemark(null);
|
||||||
|
}
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean uploadCameraAudit(CameraAuditVo vo) {
|
||||||
|
if(vo.getActionType() == null || ACTION_TYPES.get(vo.getActionType()) == null){
|
||||||
|
throw new ServiceException("动作类型参数错误");
|
||||||
|
}
|
||||||
|
CaiUser user = userService.getById(vo.getUserId());
|
||||||
|
if (user.getCameraStatus() == 1) {
|
||||||
|
throw new ServiceException("您已经通过自拍认证,不能重复认证!");
|
||||||
|
}
|
||||||
|
CaiUserCameraAudit userCameraAudit = this.getByUserId(vo.getUserId());
|
||||||
|
if(userCameraAudit != null && userCameraAudit.getAuditStatus() == 2){
|
||||||
|
throw new ServiceException("您的提交的自拍认证正在审核中请耐心等待!");
|
||||||
|
}
|
||||||
|
|
||||||
|
CaiUserCameraAudit update = new CaiUserCameraAudit();
|
||||||
|
update.setUserId(vo.getUserId());
|
||||||
|
update.setAuditStatus(1);
|
||||||
|
update.setActionType(vo.getActionType());
|
||||||
|
update.setActionImage(vo.getActionImage());
|
||||||
|
if(userCameraAudit != null){
|
||||||
|
update.setId(userCameraAudit.getId());
|
||||||
|
update.setAuditCount(userCameraAudit.getAuditCount()+1);
|
||||||
|
}
|
||||||
|
return this.saveOrUpdate(update);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.ruoyi.cai.mapper.CaiMemberSkillMapper">
|
||||||
|
|
||||||
|
<resultMap type="com.ruoyi.cai.domain.CaiMemberSkill" id="CaiMemberSkillResult">
|
||||||
|
<result property="id" column="id"/>
|
||||||
|
<result property="memberType" column="member_type"/>
|
||||||
|
<result property="name" column="name"/>
|
||||||
|
<result property="desc" column="desc"/>
|
||||||
|
<result property="icon" column="icon"/>
|
||||||
|
<result property="status" column="status"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
||||||
15
ruoyi-cai/src/main/resources/mapper/cai/CaiSkillMapper.xml
Normal file
15
ruoyi-cai/src/main/resources/mapper/cai/CaiSkillMapper.xml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.ruoyi.cai.mapper.CaiSkillMapper">
|
||||||
|
|
||||||
|
<resultMap type="com.ruoyi.cai.domain.CaiSkill" id="CaiSkillResult">
|
||||||
|
<result property="id" column="id"/>
|
||||||
|
<result property="name" column="name"/>
|
||||||
|
<result property="icon" column="icon"/>
|
||||||
|
<result property="status" column="status"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.ruoyi.cai.mapper.CaiUserCameraAuditMapper">
|
||||||
|
|
||||||
|
<resultMap type="com.ruoyi.cai.domain.CaiUserCameraAudit" id="CaiUserCameraAuditResult">
|
||||||
|
<result property="id" column="id"/>
|
||||||
|
<result property="userId" column="user_id"/>
|
||||||
|
<result property="actionType" column="action_type"/>
|
||||||
|
<result property="actionImage" column="action_image"/>
|
||||||
|
<result property="photo" column="photo"/>
|
||||||
|
<result property="auditStatus" column="audit_status"/>
|
||||||
|
<result property="auditTime" column="audit_time"/>
|
||||||
|
<result property="auditCount" column="audit_count"/>
|
||||||
|
<result property="auditRemark" column="audit_remark"/>
|
||||||
|
<result property="createTime" column="create_time"/>
|
||||||
|
<result property="operateIp" column="operate_ip"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
||||||
Reference in New Issue
Block a user