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.core.validate.EditGroup;
|
||||||
import com.ruoyi.common.enums.BusinessType;
|
import com.ruoyi.common.enums.BusinessType;
|
||||||
import com.ruoyi.xq.domain.Dynamic;
|
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 com.ruoyi.xq.service.DynamicService;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
@@ -41,8 +44,8 @@ public class DynamicController extends BaseController {
|
|||||||
*/
|
*/
|
||||||
@SaCheckPermission("xq:dynamic:list")
|
@SaCheckPermission("xq:dynamic:list")
|
||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
public TableDataInfo<Dynamic> list(Dynamic bo, PageQuery pageQuery) {
|
public TableDataInfo<DynamicAdminVo> list(DynamicAdminVo bo, PageQuery pageQuery) {
|
||||||
Page<Dynamic> page = dynamicService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
|
Page<DynamicAdminVo> page = dynamicService.pageAdmin(pageQuery, bo);
|
||||||
return TableDataInfo.build(page);
|
return TableDataInfo.build(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -58,35 +61,43 @@ public class DynamicController extends BaseController {
|
|||||||
return R.ok(dynamicService.getById(id));
|
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")
|
@SaCheckPermission("xq:dynamic:add")
|
||||||
@Log(title = "动态审核", businessType = BusinessType.INSERT)
|
@Log(title = "动态", businessType = BusinessType.INSERT)
|
||||||
@RepeatSubmit()
|
@RepeatSubmit()
|
||||||
@PostMapping()
|
@PostMapping()
|
||||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody Dynamic bo) {
|
public R<Void> add(@Validated(AddGroup.class) @RequestBody Dynamic bo) {
|
||||||
return toAjax(dynamicService.save(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 主键串
|
* @param ids 主键串
|
||||||
*/
|
*/
|
||||||
@SaCheckPermission("xq:dynamic:remove")
|
@SaCheckPermission("xq:dynamic:remove")
|
||||||
@Log(title = "动态审核", businessType = BusinessType.DELETE)
|
@Log(title = "动态", businessType = BusinessType.DELETE)
|
||||||
@DeleteMapping("/{ids}")
|
@DeleteMapping("/{ids}")
|
||||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||||
@PathVariable Long[] ids) {
|
@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 = "职业")
|
@Schema(description = "职业")
|
||||||
private Integer profession;
|
private String profession;
|
||||||
|
|
||||||
@Schema(description = "内容")
|
@Schema(description = "内容")
|
||||||
private String content;
|
private String content;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ 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.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.ruoyi.xq.domain.Dynamic;
|
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.DynamicListVo;
|
||||||
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
@@ -16,4 +17,6 @@ import org.apache.ibatis.annotations.Param;
|
|||||||
public interface DynamicMapper extends BaseMapper<Dynamic> {
|
public interface DynamicMapper extends BaseMapper<Dynamic> {
|
||||||
|
|
||||||
Page<DynamicListVo> pageApp(@Param("build") Page<Object> build, @Param("query") DynamicQuery query);
|
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.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.ruoyi.common.core.domain.PageQuery;
|
import com.ruoyi.common.core.domain.PageQuery;
|
||||||
import com.ruoyi.xq.domain.Dynamic;
|
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.AddDynamicReq;
|
||||||
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
||||||
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
||||||
@@ -19,4 +20,10 @@ public interface DynamicService extends IService<Dynamic> {
|
|||||||
void push(AddDynamicReq req);
|
void push(AddDynamicReq req);
|
||||||
|
|
||||||
Page<DynamicListVo> pageApp(PageQuery pageQuery, DynamicQuery dynamicQuery);
|
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.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.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.Dynamic;
|
||||||
import com.ruoyi.xq.domain.DynamicImage;
|
import com.ruoyi.xq.domain.DynamicImage;
|
||||||
import com.ruoyi.xq.domain.User;
|
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.AddDynamicReq;
|
||||||
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
import com.ruoyi.xq.dto.app.dynamic.DynamicListVo;
|
||||||
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
import com.ruoyi.xq.dto.app.dynamic.DynamicQuery;
|
||||||
import com.ruoyi.xq.enums.common.AuditEnum;
|
import com.ruoyi.xq.enums.common.AuditEnum;
|
||||||
|
import com.ruoyi.xq.enums.user.UserInfoAuditTypeEnum;
|
||||||
import com.ruoyi.xq.mapper.DynamicMapper;
|
import com.ruoyi.xq.mapper.DynamicMapper;
|
||||||
import com.ruoyi.xq.service.DynamicImageService;
|
import com.ruoyi.xq.service.DynamicImageService;
|
||||||
import com.ruoyi.xq.service.DynamicService;
|
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.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -83,4 +89,53 @@ public class DynamicServiceImpl extends ServiceImpl<DynamicMapper,Dynamic> imple
|
|||||||
}
|
}
|
||||||
return page;
|
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>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</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>
|
</mapper>
|
||||||
|
|||||||
Reference in New Issue
Block a user