This commit is contained in:
张良(004796)
2024-03-12 18:38:33 +08:00
parent 7bc31dc69e
commit cbf8192a73
14 changed files with 148 additions and 82 deletions

View File

@@ -1,15 +1,10 @@
package com.ruoyi.xq.controller; package com.ruoyi.xq.controller;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController; 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.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.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.xq.domain.AgreementSetting; import com.ruoyi.xq.domain.AgreementSetting;
@@ -18,10 +13,6 @@ import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
/** /**
* 协议设置 * 协议设置
* *
@@ -36,37 +27,13 @@ public class AgreementSettingController extends BaseController {
private final AgreementSettingService agreementSettingService; private final AgreementSettingService agreementSettingService;
/**
* 查询协议设置列表
*/
@SaCheckPermission("xq:agreementSetting:list")
@GetMapping("/list")
public TableDataInfo<AgreementSetting> list(AgreementSetting bo, PageQuery pageQuery) {
Page<AgreementSetting> page = agreementSettingService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
return TableDataInfo.build(page);
}
/** /**
* 获取协议设置详细信息 * 获取协议设置详细信息
*
* @param id 主键
*/ */
@SaCheckPermission("xq:agreementSetting:query") @SaCheckPermission("xq:agreementSetting:query")
@GetMapping("/{id}") @GetMapping("/info")
public R<AgreementSetting> getInfo(@NotNull(message = "主键不能为空") public R<AgreementSetting> getInfo() {
@PathVariable Long id) { return R.ok(agreementSettingService.getAgreementSetting());
return R.ok(agreementSettingService.getById(id));
}
/**
* 新增协议设置
*/
@SaCheckPermission("xq:agreementSetting:add")
@Log(title = "协议设置", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody AgreementSetting bo) {
return toAjax(agreementSettingService.save(bo));
} }
/** /**
@@ -80,16 +47,4 @@ public class AgreementSettingController extends BaseController {
return toAjax(agreementSettingService.updateById(bo)); return toAjax(agreementSettingService.updateById(bo));
} }
/**
* 删除协议设置
*
* @param ids 主键串
*/
@SaCheckPermission("xq:agreementSetting:remove")
@Log(title = "协议设置", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(agreementSettingService.removeBatchByIds(Arrays.asList(ids)));
}
} }

View File

@@ -42,7 +42,7 @@ public class BannerController extends BaseController {
@SaCheckPermission("xq:banner:list") @SaCheckPermission("xq:banner:list")
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo<Banner> list(Banner bo, PageQuery pageQuery) { public TableDataInfo<Banner> list(Banner bo, PageQuery pageQuery) {
Page<Banner> page = bannerService.page(pageQuery.build(), Wrappers.lambdaQuery(bo)); Page<Banner> page = bannerService.page(pageQuery.build(), Wrappers.lambdaQuery(bo).orderByAsc(Banner::getSort));
return TableDataInfo.build(page); return TableDataInfo.build(page);
} }

View File

@@ -12,14 +12,24 @@ import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup; import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.helper.LoginHelper;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.domain.UserPictures; import com.ruoyi.xq.domain.UserPictures;
import com.ruoyi.xq.dto.admin.common.AuditFailReq;
import com.ruoyi.xq.dto.admin.user.UserPicturesAdminVo;
import com.ruoyi.xq.dto.app.common.IdsReq;
import com.ruoyi.xq.enums.common.AuditEnum;
import com.ruoyi.xq.service.UserPicturesService; import com.ruoyi.xq.service.UserPicturesService;
import com.ruoyi.xq.service.UserService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.Arrays; import java.util.Arrays;
/** /**
@@ -35,14 +45,15 @@ import java.util.Arrays;
public class UserPicturesController extends BaseController { public class UserPicturesController extends BaseController {
private final UserPicturesService userPicturesService; private final UserPicturesService userPicturesService;
private final UserService userService;
/** /**
* 查询用户相册管理列表 * 查询用户相册管理列表
*/ */
@SaCheckPermission("xq:userPictures:list") @SaCheckPermission("xq:userPictures:list")
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo<UserPictures> list(UserPictures bo, PageQuery pageQuery) { public TableDataInfo<UserPicturesAdminVo> list(UserPicturesAdminVo bo, PageQuery pageQuery) {
Page<UserPictures> page = userPicturesService.page(pageQuery.build(), Wrappers.lambdaQuery(bo)); Page<UserPicturesAdminVo> page = userPicturesService.pageApp(pageQuery, bo);
return TableDataInfo.build(page); return TableDataInfo.build(page);
} }
@@ -66,18 +77,43 @@ public class UserPicturesController extends BaseController {
@RepeatSubmit() @RepeatSubmit()
@PostMapping() @PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody UserPictures bo) { public R<Void> add(@Validated(AddGroup.class) @RequestBody UserPictures bo) {
return toAjax(userPicturesService.save(bo)); User user = userService.getByUsercode(bo.getUsercode());
if(user == null){
return R.fail("用户不存在");
}
String[] split = bo.getPicture().split(",");
for (String picture : split) {
UserPictures pictures = new UserPictures();
pictures.setUserId(user.getId());
pictures.setUsercode(user.getUsercode());
pictures.setPicture(picture);
pictures.setAuditStatus(AuditEnum.SUCCESS.getCode());
pictures.setAuditRemark("后台新增免审核");
pictures.setAuditTime(LocalDateTime.now());
pictures.setAuditOpId(LoginHelper.getUserId());
pictures.setAuditOpName(LoginHelper.getUsername());
pictures.setAuditIp(ServletUtils.getClientIP());
userPicturesService.save(pictures);
}
return R.ok();
} }
/**
* 修改用户相册管理
*/
@SaCheckPermission("xq:userPictures:edit") @SaCheckPermission("xq:userPictures:edit")
@Log(title = "用户相册管理", businessType = BusinessType.UPDATE) @Log(title = "用户相册审核成功", businessType = BusinessType.UPDATE)
@RepeatSubmit() @RepeatSubmit()
@PutMapping() @PostMapping("/audit/success")
public R<Void> edit(@Validated(EditGroup.class) @RequestBody UserPictures bo) { public R<Void> auditSuccess(@RequestBody IdsReq bo) {
return toAjax(userPicturesService.updateById(bo)); userPicturesService.auditSuccess(bo.getIds());
return R.ok();
}
@SaCheckPermission("xq:userPictures:edit")
@Log(title = "用户相册审核失败", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PostMapping("/audit/fail")
public R<Void> auditFail(@RequestBody AuditFailReq bo) {
userPicturesService.auditFail(bo.getId(),bo.getAuditRemark());
return R.ok();
} }
/** /**

View File

@@ -42,7 +42,7 @@ public class WithdrawSettingController extends BaseController {
@SaCheckPermission("xq:withdrawSetting:list") @SaCheckPermission("xq:withdrawSetting:list")
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo<WithdrawSetting> list(WithdrawSetting bo, PageQuery pageQuery) { public TableDataInfo<WithdrawSetting> list(WithdrawSetting bo, PageQuery pageQuery) {
Page<WithdrawSetting> page = withdrawSettingService.page(pageQuery.build(), Wrappers.lambdaQuery(bo)); Page<WithdrawSetting> page = withdrawSettingService.page(pageQuery.build(), Wrappers.lambdaQuery(bo).orderByDesc(WithdrawSetting::getCreateTime));
return TableDataInfo.build(page); return TableDataInfo.build(page);
} }

View File

@@ -39,7 +39,8 @@ public class HomeAppController {
@Log(title = "轮播图", businessType = BusinessType.OTHER, isSaveDb = false) @Log(title = "轮播图", businessType = BusinessType.OTHER, isSaveDb = false)
public R<List<Banner>> banner(){ public R<List<Banner>> banner(){
List<Banner> list = bannerService.list(Wrappers.lambdaQuery(Banner.class) List<Banner> list = bannerService.list(Wrappers.lambdaQuery(Banner.class)
.eq(Banner::getEnableStatus, 1)); .eq(Banner::getEnableStatus, 1)
.orderByAsc(Banner::getSort));
return R.ok(list); return R.ok(list);
} }
} }

View File

@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
/** /**
* 协议设置对象 xq_agreement_setting * 协议设置对象 xq_agreement_setting
@@ -37,8 +36,4 @@ public class AgreementSetting implements Serializable {
*/ */
private String privacyAgreement; private String privacyAgreement;
private LocalDateTime createTime;
private LocalDateTime updateTime;
} }

View File

@@ -36,6 +36,8 @@ public class Banner implements Serializable {
*/ */
private Integer enableStatus; private Integer enableStatus;
private Integer sort;
private LocalDateTime createTime; private LocalDateTime createTime;
private LocalDateTime updateTime; private LocalDateTime updateTime;

View File

@@ -51,7 +51,7 @@ public class UserPictures implements Serializable {
/** /**
* 审核人ID * 审核人ID
*/ */
private String auditOpId; private Long auditOpId;
/** /**
* 审核人名称 * 审核人名称
*/ */

View File

@@ -0,0 +1,9 @@
package com.ruoyi.xq.dto.admin.common;
import lombok.Data;
@Data
public class AuditFailReq {
private Long id;
private String auditRemark;
}

View File

@@ -0,0 +1,12 @@
package com.ruoyi.xq.dto.admin.user;
import com.ruoyi.xq.domain.UserPictures;
import lombok.Data;
@Data
public class UserPicturesAdminVo extends UserPictures {
private String nickname;
private String mobile;
private String avatar;
}

View File

@@ -1,7 +1,10 @@
package com.ruoyi.xq.mapper; package com.ruoyi.xq.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.xq.domain.UserPictures; import com.ruoyi.xq.domain.UserPictures;
import com.ruoyi.xq.dto.admin.user.UserPicturesAdminVo;
import org.apache.ibatis.annotations.Param;
/** /**
* 用户相册管理Mapper接口 * 用户相册管理Mapper接口
@@ -11,4 +14,5 @@ import com.ruoyi.xq.domain.UserPictures;
*/ */
public interface UserPicturesMapper extends BaseMapper<UserPictures> { public interface UserPicturesMapper extends BaseMapper<UserPictures> {
Page<UserPicturesAdminVo> pageApp(@Param("build") Page<Object> build, @Param("bo") UserPicturesAdminVo bo);
} }

View File

@@ -1,7 +1,10 @@
package com.ruoyi.xq.service; package com.ruoyi.xq.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.UserPictures; import com.ruoyi.xq.domain.UserPictures;
import com.ruoyi.xq.dto.admin.user.UserPicturesAdminVo;
import java.util.List; import java.util.List;
@@ -14,4 +17,10 @@ import java.util.List;
public interface UserPicturesService extends IService<UserPictures> { public interface UserPicturesService extends IService<UserPictures> {
List<UserPictures> listByUserId(Long userId); List<UserPictures> listByUserId(Long userId);
Page<UserPicturesAdminVo> pageApp(PageQuery pageQuery, UserPicturesAdminVo bo);
void auditSuccess(String ids);
void auditFail(Long id,String auditRemark);
} }

View File

@@ -1,12 +1,19 @@
package com.ruoyi.xq.service.impl; package com.ruoyi.xq.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.helper.LoginHelper;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.xq.domain.UserPictures; import com.ruoyi.xq.domain.UserPictures;
import com.ruoyi.xq.dto.admin.user.UserPicturesAdminVo;
import com.ruoyi.xq.enums.common.AuditEnum;
import com.ruoyi.xq.mapper.UserPicturesMapper; import com.ruoyi.xq.mapper.UserPicturesMapper;
import com.ruoyi.xq.service.UserPicturesService; import com.ruoyi.xq.service.UserPicturesService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
/** /**
@@ -23,4 +30,38 @@ public class UserPicturesServiceImpl extends ServiceImpl<UserPicturesMapper,User
return this.list(Wrappers.lambdaQuery(UserPictures.class) return this.list(Wrappers.lambdaQuery(UserPictures.class)
.eq(UserPictures::getUserId, userId)); .eq(UserPictures::getUserId, userId));
} }
@Override
public Page<UserPicturesAdminVo> pageApp(PageQuery pageQuery, UserPicturesAdminVo bo) {
return baseMapper.pageApp(pageQuery.build(),bo);
}
@Override
public void auditSuccess(String ids) {
String[] idArray = ids.split(",");
for (String id : idArray) {
this.update(Wrappers.lambdaUpdate(UserPictures.class)
.eq(UserPictures::getId, id)
.eq(UserPictures::getAuditStatus, AuditEnum.AUDITING.getCode())
.set(UserPictures::getAuditStatus, AuditEnum.SUCCESS.getCode())
.set(UserPictures::getAuditIp, ServletUtils.getClientIP())
.set(UserPictures::getAuditOpId, LoginHelper.getUserId())
.set(UserPictures::getAuditOpName, LoginHelper.getUsername())
.set(UserPictures::getAuditTime, LocalDateTime.now())
.set(UserPictures::getAuditRemark, "审核成功"));
}
}
@Override
public void auditFail(Long id,String auditRemark) {
this.update(Wrappers.lambdaUpdate(UserPictures.class)
.eq(UserPictures::getId, id)
.eq(UserPictures::getAuditStatus, AuditEnum.AUDITING.getCode())
.set(UserPictures::getAuditStatus, AuditEnum.FAIL.getCode())
.set(UserPictures::getAuditIp, ServletUtils.getClientIP())
.set(UserPictures::getAuditOpId, LoginHelper.getUserId())
.set(UserPictures::getAuditOpName, LoginHelper.getUsername())
.set(UserPictures::getAuditTime, LocalDateTime.now())
.set(UserPictures::getAuditRemark, auditRemark));
}
} }

View File

@@ -3,21 +3,23 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.xq.mapper.UserPicturesMapper"> <mapper namespace="com.ruoyi.xq.mapper.UserPicturesMapper">
<select id="pageApp" resultType="com.ruoyi.xq.dto.admin.user.UserPicturesAdminVo">
<resultMap type="com.ruoyi.xq.domain.UserPictures" id="UserPicturesResult"> select t1.*, t2.nickname, t2.mobile,t2.avatar
<result property="id" column="id"/> from xq_user_pictures t1
<result property="userId" column="user_id"/> left join xq_user t2 on t1.user_id = t2.id
<result property="usercode" column="usercode"/> <where>
<result property="picture" column="picture"/> <if test="bo.usercode != null and bo.usercode != ''">
<result property="auditStatus" column="audit_status"/> and t1.usercode = #{bo.usercode}
<result property="auditRemark" column="audit_remark"/> </if>
<result property="auditTime" column="audit_time"/> <if test="bo.nickname != null and bo.nickname != ''">
<result property="auditOpId" column="audit_op_id"/> and t2.nickname like concat('%',#{bo.nickname},'%')
<result property="auditOpName" column="audit_op_name"/> </if>
<result property="auditIp" column="audit_ip"/> <if test="bo.mobile != null and bo.mobile != ''">
<result property="createTime" column="create_time"/> and t2.mobile = #{bo.mobile}
<result property="updateTime" column="update_time"/> </if>
</resultMap> </where>
order by create_time desc
</select>
</mapper> </mapper>