Commit d760de49 authored by jiawei's avatar jiawei

提交 审核管理分页查询与审核修改代码

parent a542b4dc
...@@ -69,6 +69,11 @@ public class Asset implements Serializable { ...@@ -69,6 +69,11 @@ public class Asset implements Serializable {
@TableField("is_published") @TableField("is_published")
private Boolean published; private Boolean published;
@ApiModelProperty("是否已删除")
@TableField("is_deleted")
private Boolean isDeleted;
@ApiModelProperty("创建日期") @ApiModelProperty("创建日期")
@TableField(value = "create_time", fill = FieldFill.INSERT) @TableField(value = "create_time", fill = FieldFill.INSERT)
private LocalDateTime createTime; private LocalDateTime createTime;
......
package cn.wisenergy.chnmuseum.party.model; package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add; import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Update;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
...@@ -62,10 +63,12 @@ public class Audit implements Serializable { ...@@ -62,10 +63,12 @@ public class Audit implements Serializable {
@ApiModelProperty("操作类型") @ApiModelProperty("操作类型")
@TableField("operation") @TableField("operation")
@NotBlank(message = "操作类型不能为空", groups = {Update.class})
private String operation; private String operation;
@ApiModelProperty(value = "审核状态", allowableValues = "TBC,REFUSED,TBCA,APPROVED_FINAL") @ApiModelProperty(value = "审核状态", allowableValues = "TBC,REFUSED,TBCA,APPROVED_FINAL")
@TableField("status") @TableField("status")
@NotBlank(message = "审核状态不能为空", groups = {Update.class})
private String status; private String status;
@ApiModelProperty("创建日期") @ApiModelProperty("创建日期")
...@@ -94,6 +97,7 @@ public class Audit implements Serializable { ...@@ -94,6 +97,7 @@ public class Audit implements Serializable {
private String secondRemarks; private String secondRemarks;
@ApiModelProperty(value = "审核层级", allowableValues = "TBC,TBCA") @ApiModelProperty(value = "审核层级", allowableValues = "TBC,TBCA")
@NotBlank(message = "审核层级不能为空", groups = {Update.class})
@TableField("level") @TableField("level")
private String level; private String level;
......
...@@ -100,6 +100,10 @@ public class ExhibitionBoard implements Serializable { ...@@ -100,6 +100,10 @@ public class ExhibitionBoard implements Serializable {
@TableField("is_published") @TableField("is_published")
private Boolean published; private Boolean published;
@ApiModelProperty("是否已删除")
@TableField("is_deleted")
private Boolean isDeleted;
@ApiModelProperty("创建日期") @ApiModelProperty("创建日期")
@TableField(value = "create_time", fill = FieldFill.INSERT) @TableField(value = "create_time", fill = FieldFill.INSERT)
private LocalDateTime createTime; private LocalDateTime createTime;
......
...@@ -24,9 +24,18 @@ public interface AuditService extends IService<Audit> { ...@@ -24,9 +24,18 @@ public interface AuditService extends IService<Audit> {
* *
* @param name * @param name
* @param status * @param status
* @param auditStatusLevel
* @param type * @param type
* @param page * @param page
* @return * @return
*/ */
Page<Audit> pageList(String name, AuditStatusEnum status, AuditTypeEnum type, Page<Object> page); Page<Audit> pageList(String name, AuditStatusEnum status, AuditStatusEnum auditStatusLevel, AuditTypeEnum type, Page<Object> page);
/**
* 根据id更新审核信息
*
* @param audit
* @return
*/
boolean updateAuditAllById(Audit audit);
} }
package cn.wisenergy.chnmuseum.party.service.impl; package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.common.enums.AuditOperationEnum;
import cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum; import cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum;
import cn.wisenergy.chnmuseum.party.common.enums.AuditTypeEnum; import cn.wisenergy.chnmuseum.party.common.enums.AuditTypeEnum;
import cn.wisenergy.chnmuseum.party.common.mvc.InterfaceException;
import cn.wisenergy.chnmuseum.party.mapper.AuditMapper; import cn.wisenergy.chnmuseum.party.mapper.AuditMapper;
import cn.wisenergy.chnmuseum.party.model.Audit; import cn.wisenergy.chnmuseum.party.model.*;
import cn.wisenergy.chnmuseum.party.model.TUser;
import cn.wisenergy.chnmuseum.party.service.AssetService; import cn.wisenergy.chnmuseum.party.service.AssetService;
import cn.wisenergy.chnmuseum.party.service.AuditService; import cn.wisenergy.chnmuseum.party.service.AuditService;
import cn.wisenergy.chnmuseum.party.service.ExhibitionBoardService; import cn.wisenergy.chnmuseum.party.service.ExhibitionBoardService;
...@@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime;
/** /**
* <pre> * <pre>
...@@ -62,13 +64,14 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements ...@@ -62,13 +64,14 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
* @return * @return
*/ */
@Override @Override
public Page<Audit> pageList(String name, AuditStatusEnum status, AuditTypeEnum type, Page<Object> page) { public Page<Audit> pageList(String name, AuditStatusEnum status, AuditStatusEnum auditStatusLevel, AuditTypeEnum type, Page<Object> page) {
//分页 //分页
Page<Audit> auditPage = new Page<>(); Page<Audit> auditPage = new Page<>();
auditPage.setCurrent(page.getCurrent()); auditPage.setCurrent(page.getCurrent());
auditPage.setSize(page.getSize()); auditPage.setSize(page.getSize());
//条件 //条件
QueryWrapper<Audit> ew = new QueryWrapper<Audit>() QueryWrapper<Audit> ew = new QueryWrapper<Audit>()
.eq("a.level", auditStatusLevel.name())
.eq("a.type", type.name()) .eq("a.type", type.name())
.orderByDesc("a.create_time", "a.id"); .orderByDesc("a.create_time", "a.id");
// //
...@@ -111,4 +114,200 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements ...@@ -111,4 +114,200 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
return selectPage; return selectPage;
} }
/**
* 根据id更新审核信息
*
* @param audit
* @return
*/
@Override
public boolean updateAuditAllById(Audit audit) {
//审核层级,初审 和 复审
AuditStatusEnum auditStatusLevel = AuditStatusEnum.valueOf(audit.getLevel());
boolean update;
switch (auditStatusLevel) {
case TBC:
update = updateOnTBC(audit);
return update;
case TBCA:
update = updateOnTBCA(audit);
return update;
default:
throw new InterfaceException("level参数不正确");
}
}
/**
* 初审级别的修改情况
*
* @return
*/
private boolean updateOnTBC(Audit audit) {
audit.setFirstTime(LocalDateTime.now());
String status = audit.getStatus();
AuditStatusEnum auditStatusEnum = AuditStatusEnum.valueOf(status);
//初审 通过时,修改状态为待复审
if (AuditStatusEnum.APPROVED_FINAL.equals(auditStatusEnum)) {
audit.setStatus(AuditStatusEnum.TBCA.name());
audit.setLevel(AuditStatusEnum.TBCA.name());
}
if (!AuditStatusEnum.REFUSED.equals(auditStatusEnum)) {
audit.setFirstRemarks("");
}
//初审驳回时,不做状态修改
int update = auditMapper.updateById(audit);
return update >= 1;
}
/**
* 复审级别的修改情况
*
* @return
*/
private boolean updateOnTBCA(Audit audit) {
audit.setSecondTime(LocalDateTime.now());
String status = audit.getStatus();
AuditStatusEnum auditStatusEnum = AuditStatusEnum.valueOf(status);
if (!AuditStatusEnum.REFUSED.equals(auditStatusEnum)) {
audit.setSecondRemarks("");
}
//复审通过时,
boolean updateRefItemByRefItemId = true;
if (AuditStatusEnum.APPROVED_FINAL.equals(auditStatusEnum)) {
//修改对应审核项中的信息
updateRefItemByRefItemId = updateRefItemByRefItemId(audit);
}
//复审不通过时,不做状态修改
int update = auditMapper.updateById(audit);
return updateRefItemByRefItemId && update >= 1;
}
/**
* 根据审核项ID 修改 审核项表中的信息
*/
private boolean updateRefItemByRefItemId(Audit audit) {
//
String type = audit.getType();
AuditTypeEnum auditTypeEnum = AuditTypeEnum.valueOf(type);
//
boolean update;
switch (auditTypeEnum) {
case ASSET:
Asset asset = fillAssetByAudit(audit);
update = assetService.updateById(asset);
break;
// case ACCOUNT:
// break;
case EXHIBITION_BOARD:
ExhibitionBoard exhibitionBoard = fillAssetByExhibitionBoard(audit);
update = exhibitionBoardService.updateById(exhibitionBoard);
break;
case LEARNING_CONTENT:
LearningContent learningContent = fillAssetByLearningContent(audit);
update = learningContentService.updateById(learningContent);
break;
default:
throw new InterfaceException("type参数不正确");
}
return update;
}
/**
* 根据审核操作 填充Asset属性用于更改
*
* @param audit
* @return
*/
public Asset fillAssetByAudit(Audit audit) {
Asset asset = new Asset();
asset.setId(audit.getRefItemId());
asset.setAuditStatus(audit.getStatus());
//
String operation = audit.getOperation();
AuditOperationEnum auditOperationEnum = AuditOperationEnum.valueOf(operation);
switch (auditOperationEnum) {
case ADD:
asset.setIsDeleted(false);
break;
case UNABLE:
case EDIT:
break;
case DISABLE:
asset.setIsDeleted(true);
break;
case REMOVE:
asset.setPublished(false);
break;
default:
}
return asset;
}
/**
* 根据审核操作 填充ExhibitionBoard属性用于更改
*
* @param audit
* @return
*/
public ExhibitionBoard fillAssetByExhibitionBoard(Audit audit) {
ExhibitionBoard exhibitionBoard = new ExhibitionBoard();
exhibitionBoard.setId(audit.getRefItemId());
exhibitionBoard.setAuditStatus(audit.getStatus());
//
String operation = audit.getOperation();
AuditOperationEnum auditOperationEnum = AuditOperationEnum.valueOf(operation);
switch (auditOperationEnum) {
case ADD:
exhibitionBoard.setIsDeleted(false);
break;
case UNABLE:
case EDIT:
break;
case DISABLE:
exhibitionBoard.setIsDeleted(true);
break;
case REMOVE:
exhibitionBoard.setPublished(false);
break;
default:
}
return exhibitionBoard;
}
/**
* 根据审核操作 填充LearningContent属性用于更改
*
* @param audit
* @return
*/
public LearningContent fillAssetByLearningContent(Audit audit) {
LearningContent learningContent = new LearningContent();
learningContent.setAuditStatus(audit.getStatus());
learningContent.setId(audit.getRefItemId());
//
String operation = audit.getOperation();
AuditOperationEnum auditOperationEnum = AuditOperationEnum.valueOf(operation);
switch (auditOperationEnum) {
case ADD:
learningContent.setIsDeleted(false);
break;
case UNABLE:
case EDIT:
break;
case DISABLE:
learningContent.setIsDeleted(true);
break;
case REMOVE:
learningContent.setIsPublished(false);
break;
default:
}
return learningContent;
}
} }
...@@ -88,7 +88,7 @@ public class AuditController extends BaseController { ...@@ -88,7 +88,7 @@ public class AuditController extends BaseController {
@ApiOperation(value = "修改禁用审核信息", notes = "修改禁用审核信息") @ApiOperation(value = "修改禁用审核信息", notes = "修改禁用审核信息")
public Map<String, Object> updateAudit(@RequestBody @Validated(value = {Update.class}) Audit audit) { public Map<String, Object> updateAudit(@RequestBody @Validated(value = {Update.class}) Audit audit) {
boolean flag; boolean flag;
if (AuditStatusEnum.APPROVED_FINAL.name().equals(audit.getStatus())&&AuditStatusEnum.TBC.name().equals(audit.getLevel())) { if (AuditStatusEnum.APPROVED_FINAL.name().equals(audit.getStatus()) && AuditStatusEnum.TBC.name().equals(audit.getLevel())) {
audit.setLevel(AuditStatusEnum.TBCA.name()); audit.setLevel(AuditStatusEnum.TBCA.name());
audit.setStatus(AuditStatusEnum.TBCA.name()); audit.setStatus(AuditStatusEnum.TBCA.name());
} }
...@@ -97,7 +97,7 @@ public class AuditController extends BaseController { ...@@ -97,7 +97,7 @@ public class AuditController extends BaseController {
if (!AuditStatusEnum.REFUSED.name().equals(audit.getStatus())) { if (!AuditStatusEnum.REFUSED.name().equals(audit.getStatus())) {
audit.setFirstRemarks(""); audit.setFirstRemarks("");
} }
}else{ } else {
audit.setSecondTime(LocalDateTime.now()); audit.setSecondTime(LocalDateTime.now());
if (!AuditStatusEnum.REFUSED.name().equals(audit.getStatus())) { if (!AuditStatusEnum.REFUSED.name().equals(audit.getStatus())) {
audit.setSecondRemarks(""); audit.setSecondRemarks("");
...@@ -206,30 +206,33 @@ public class AuditController extends BaseController { ...@@ -206,30 +206,33 @@ public class AuditController extends BaseController {
//=================审核管理接口================= //=================审核管理接口=================
@GetMapping("/getPageAllList") @GetMapping("/getPageAllList")
// @RequiresPermissions("/audit/getUserList")
@ApiOperation(value = "审核管理=========分页查询", notes = "审核管理=========分页查询") @ApiOperation(value = "审核管理=========分页查询", notes = "审核管理=========分页查询")
@ApiImplicitParams(value = { @ApiImplicitParams(value = {
@ApiImplicitParam(name = "_index", value = "分页起始偏移量", paramType = "query", dataType = "Integer"), @ApiImplicitParam(name = "_index", value = "分页起始偏移量", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "_size", value = "返回条数", paramType = "query", dataType = "Integer"), @ApiImplicitParam(name = "_size", value = "返回条数", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "name", value = "账号名称或提交人", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "name", value = "账号名称或提交人", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "status", value = "待初审 TBC, 驳回 REFUSED,待复审 TBCA, 通过APPROVED_FINAL", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "status", value = "待初审:TBC, 驳回:REFUSED,待复审:TBCA, 通过:APPROVED_FINAL", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "type", value = "视频内容 ASSET,展板内容 EXHIBITION_BOARD,学习内容 LEARNING_CONTENT", paramType = "query", dataType = "String", required = true) @ApiImplicitParam(name = "level", value = "审核级别:TBC,TBCA", paramType = "query", dataType = "String", required = true),
@ApiImplicitParam(name = "type", value = "视频内容:ASSET,展板内容:EXHIBITION_BOARD,学习内容:LEARNING_CONTENT", paramType = "query", dataType = "String", required = true)
}) })
public Map<String, Object> getPageAllList(String name, String status, public Map<String, Object> getPageAllList(String name, String status,
@NotBlank(message = "level参数不能为空") String level,
@NotBlank(message = "type参数不能为空") String type) { @NotBlank(message = "type参数不能为空") String type) {
//分页
Page<Object> page = getPage(); Page<Object> page = getPage();
AuditStatusEnum auditStatusEnum = null; AuditStatusEnum auditStatus = null;
AuditStatusEnum auditStatusLevel = AuditStatusEnum.valueOf(level);
AuditTypeEnum auditTypeEnum = AuditTypeEnum.valueOf(type); AuditTypeEnum auditTypeEnum = AuditTypeEnum.valueOf(type);
if (auditTypeEnum == null) {
return getFailResult("type参数不正确"); if (auditTypeEnum == null || auditStatusLevel == null) {
return getFailResult("type或level参数不正确");
} }
if (StringUtils.isNotBlank(status)) { if (StringUtils.isNotBlank(status)) {
auditStatusEnum = AuditStatusEnum.valueOf(status); auditStatus = AuditStatusEnum.valueOf(status);
} }
// //
try { try {
Page<Audit> auditList = auditService.pageList(name, auditStatusEnum, auditTypeEnum, page); Page<Audit> auditList = auditService.pageList(name, auditStatus, auditStatusLevel, auditTypeEnum, page);
return getResult(auditList); return getResult(auditList);
} catch ( } catch (
...@@ -239,5 +242,17 @@ public class AuditController extends BaseController { ...@@ -239,5 +242,17 @@ public class AuditController extends BaseController {
return getFailResult(); return getFailResult();
} }
@PutMapping("/updateAuditAllById")
@RequiresPermissions("/audit/update")
@ApiOperation(value = "审核管理===根据id修改审核信息", notes = "审核管理===根据id修改审核信息")
public Map<String, Object> updateAuditAllById(@RequestBody @Validated(value = {Update.class}) Audit audit) {
boolean update = auditService.updateAuditAllById(audit);
return update ? getSuccessResult() : getFailResult();
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment