init
This commit is contained in:
@@ -13,6 +13,9 @@ import com.ruoyi.common.core.validate.AddGroup;
|
||||
import com.ruoyi.common.core.validate.EditGroup;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.xq.domain.Dynamic;
|
||||
import com.ruoyi.xq.dto.admin.common.AuditFailReq;
|
||||
import com.ruoyi.xq.dto.admin.dynamic.DynamicAdminVo;
|
||||
import com.ruoyi.xq.dto.app.common.IdsReq;
|
||||
import com.ruoyi.xq.service.DynamicService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@@ -41,8 +44,8 @@ public class DynamicController extends BaseController {
|
||||
*/
|
||||
@SaCheckPermission("xq:dynamic:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<Dynamic> list(Dynamic bo, PageQuery pageQuery) {
|
||||
Page<Dynamic> page = dynamicService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
|
||||
public TableDataInfo<DynamicAdminVo> list(DynamicAdminVo bo, PageQuery pageQuery) {
|
||||
Page<DynamicAdminVo> page = dynamicService.pageAdmin(pageQuery, bo);
|
||||
return TableDataInfo.build(page);
|
||||
}
|
||||
|
||||
@@ -58,35 +61,43 @@ public class DynamicController extends BaseController {
|
||||
return R.ok(dynamicService.getById(id));
|
||||
}
|
||||
|
||||
|
||||
@SaCheckPermission("xq:dynamic:edit")
|
||||
@Log(title = "动态审核成功", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PostMapping("/audit/success")
|
||||
public R<Void> auditSuccess(@RequestBody IdsReq bo) {
|
||||
dynamicService.auditSuccess(bo.getIds());
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@SaCheckPermission("xq:dynamic:edit")
|
||||
@Log(title = "动态审核失败", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PostMapping("/audit/fail")
|
||||
public R<Void> auditFail(@RequestBody AuditFailReq bo) {
|
||||
dynamicService.auditFail(bo.getId(), bo.getAuditRemark());
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增动态审核
|
||||
*/
|
||||
@SaCheckPermission("xq:dynamic:add")
|
||||
@Log(title = "动态审核", businessType = BusinessType.INSERT)
|
||||
@Log(title = "动态", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody Dynamic bo) {
|
||||
return toAjax(dynamicService.save(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改动态审核
|
||||
*/
|
||||
@SaCheckPermission("xq:dynamic:edit")
|
||||
@Log(title = "动态审核", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody Dynamic bo) {
|
||||
return toAjax(dynamicService.updateById(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除动态审核
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("xq:dynamic:remove")
|
||||
@Log(title = "动态审核", businessType = BusinessType.DELETE)
|
||||
@Log(title = "动态", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.ruoyi.xq.dto.admin.dynamic;
|
||||
|
||||
import com.ruoyi.xq.domain.Dynamic;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class DynamicAdminVo extends Dynamic {
|
||||
/**
|
||||
* 昵称
|
||||
*/
|
||||
private String nickname;
|
||||
private String mobile;
|
||||
|
||||
private String avatar;
|
||||
|
||||
private List<String> imageList;
|
||||
}
|
||||
@@ -41,7 +41,7 @@ public class DynamicListVo {
|
||||
* 职业
|
||||
*/
|
||||
@Schema(description = "职业")
|
||||
private Integer profession;
|
||||
private String profession;
|
||||
|
||||
@Schema(description = "内容")
|
||||
private String content;
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.ruoyi.xq.mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.xq.domain.Dynamic;
|
||||
import com.ruoyi.xq.dto.admin.dynamic.DynamicAdminVo;
|
||||
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
||||
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
@@ -16,4 +17,6 @@ import org.apache.ibatis.annotations.Param;
|
||||
public interface DynamicMapper extends BaseMapper<Dynamic> {
|
||||
|
||||
Page<DynamicListVo> pageApp(@Param("build") Page<Object> build, @Param("query") DynamicQuery query);
|
||||
|
||||
Page<DynamicAdminVo> pageAdmin(@Param("build") Page<Object> build, @Param("bo") DynamicAdminVo bo);
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.xq.domain.Dynamic;
|
||||
import com.ruoyi.xq.dto.admin.dynamic.DynamicAdminVo;
|
||||
import com.ruoyi.xq.dto.app.dynamic.AddDynamicReq;
|
||||
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
||||
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
||||
@@ -19,4 +20,10 @@ public interface DynamicService extends IService<Dynamic> {
|
||||
void push(AddDynamicReq req);
|
||||
|
||||
Page<DynamicListVo> pageApp(PageQuery pageQuery, DynamicQuery dynamicQuery);
|
||||
|
||||
Page<DynamicAdminVo> pageAdmin(PageQuery pageQuery, DynamicAdminVo bo);
|
||||
|
||||
void auditSuccess(String ids);
|
||||
|
||||
void auditFail(Long id, String auditRemark);
|
||||
}
|
||||
|
||||
@@ -4,13 +4,18 @@ 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.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import com.ruoyi.common.utils.ServletUtils;
|
||||
import com.ruoyi.xq.domain.Dynamic;
|
||||
import com.ruoyi.xq.domain.DynamicImage;
|
||||
import com.ruoyi.xq.domain.User;
|
||||
import com.ruoyi.xq.domain.UserInfoAudit;
|
||||
import com.ruoyi.xq.dto.admin.dynamic.DynamicAdminVo;
|
||||
import com.ruoyi.xq.dto.app.dynamic.AddDynamicReq;
|
||||
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
||||
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
||||
import com.ruoyi.xq.enums.common.AuditEnum;
|
||||
import com.ruoyi.xq.enums.user.UserInfoAuditTypeEnum;
|
||||
import com.ruoyi.xq.mapper.DynamicMapper;
|
||||
import com.ruoyi.xq.service.DynamicImageService;
|
||||
import com.ruoyi.xq.service.DynamicService;
|
||||
@@ -22,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -83,4 +89,53 @@ public class DynamicServiceImpl extends ServiceImpl<DynamicMapper,Dynamic> imple
|
||||
}
|
||||
return page;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<DynamicAdminVo> pageAdmin(PageQuery pageQuery, DynamicAdminVo bo) {
|
||||
Page<DynamicAdminVo> page = baseMapper.pageAdmin(pageQuery.build(), bo);
|
||||
List<DynamicAdminVo> records = page.getRecords();
|
||||
if(CollectionUtils.isEmpty(records)){
|
||||
return page;
|
||||
}
|
||||
List<Long> dynamicIds = records.stream().map(DynamicAdminVo::getId).collect(Collectors.toList());
|
||||
List<DynamicImage> list = dynamicImageService.list(Wrappers.lambdaQuery(DynamicImage.class).in(DynamicImage::getDynamicId, dynamicIds));
|
||||
Map<Long, List<DynamicImage>> map = list.stream().collect(Collectors.groupingBy(DynamicImage::getDynamicId));
|
||||
for (DynamicAdminVo record : records) {
|
||||
List<DynamicImage> images = map.get(record.getId());
|
||||
if(images == null){
|
||||
images = new ArrayList<>();
|
||||
}
|
||||
record.setImageList(images.stream().map(DynamicImage::getUrl).collect(Collectors.toList()));
|
||||
}
|
||||
return page;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void auditSuccess(String ids) {
|
||||
String[] idArray = ids.split(",");
|
||||
for (String id : idArray) {
|
||||
this.update(Wrappers.lambdaUpdate(Dynamic.class)
|
||||
.eq(Dynamic::getId, id)
|
||||
.eq(Dynamic::getAuditStatus, AuditEnum.AUDITING.getCode())
|
||||
.set(Dynamic::getAuditStatus, AuditEnum.SUCCESS.getCode())
|
||||
.set(Dynamic::getAuditIp, ServletUtils.getClientIP())
|
||||
.set(Dynamic::getAuditOpId, LoginHelper.getUserId())
|
||||
.set(Dynamic::getAuditOpName, LoginHelper.getUsername())
|
||||
.set(Dynamic::getAuditTime, LocalDateTime.now())
|
||||
.set(Dynamic::getAuditRemark, "审核成功"));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void auditFail(Long id, String auditRemark) {
|
||||
this.update(Wrappers.lambdaUpdate(Dynamic.class)
|
||||
.eq(Dynamic::getId, id)
|
||||
.eq(Dynamic::getAuditStatus, AuditEnum.AUDITING.getCode())
|
||||
.set(Dynamic::getAuditStatus, AuditEnum.FAIL.getCode())
|
||||
.set(Dynamic::getAuditIp, ServletUtils.getClientIP())
|
||||
.set(Dynamic::getAuditOpId, LoginHelper.getUserId())
|
||||
.set(Dynamic::getAuditOpName, LoginHelper.getUsername())
|
||||
.set(Dynamic::getAuditTime, LocalDateTime.now())
|
||||
.set(Dynamic::getAuditRemark, auditRemark));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,6 +34,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
<select id="pageAdmin" resultType="com.ruoyi.xq.dto.admin.dynamic.DynamicAdminVo">
|
||||
select t1.*, t2.nickname, t2.mobile,t2.avatar
|
||||
from xq_dynamic t1
|
||||
left join xq_user t2 on t1.user_id = t2.id
|
||||
<where>
|
||||
<if test="bo.usercode != null and bo.usercode != ''">
|
||||
and t1.usercode = #{bo.usercode}
|
||||
</if>
|
||||
<if test="bo.nickname != null and bo.nickname != ''">
|
||||
and t2.nickname like concat('%',#{bo.nickname},'%')
|
||||
</if>
|
||||
<if test="bo.mobile != null and bo.mobile != ''">
|
||||
and t2.mobile = #{bo.mobile}
|
||||
</if>
|
||||
</where>
|
||||
order by create_time desc
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user