Commit d760de49 authored by jiawei's avatar jiawei

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

parent a542b4dc
......@@ -69,6 +69,11 @@ public class Asset implements Serializable {
@TableField("is_published")
private Boolean published;
@ApiModelProperty("是否已删除")
@TableField("is_deleted")
private Boolean isDeleted;
@ApiModelProperty("创建日期")
@TableField(value = "create_time", fill = FieldFill.INSERT)
private LocalDateTime createTime;
......
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Update;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -62,10 +63,12 @@ public class Audit implements Serializable {
@ApiModelProperty("操作类型")
@TableField("operation")
@NotBlank(message = "操作类型不能为空", groups = {Update.class})
private String operation;
@ApiModelProperty(value = "审核状态", allowableValues = "TBC,REFUSED,TBCA,APPROVED_FINAL")
@TableField("status")
@NotBlank(message = "审核状态不能为空", groups = {Update.class})
private String status;
@ApiModelProperty("创建日期")
......@@ -94,6 +97,7 @@ public class Audit implements Serializable {
private String secondRemarks;
@ApiModelProperty(value = "审核层级", allowableValues = "TBC,TBCA")
@NotBlank(message = "审核层级不能为空", groups = {Update.class})
@TableField("level")
private String level;
......
......@@ -100,6 +100,10 @@ public class ExhibitionBoard implements Serializable {
@TableField("is_published")
private Boolean published;
@ApiModelProperty("是否已删除")
@TableField("is_deleted")
private Boolean isDeleted;
@ApiModelProperty("创建日期")
@TableField(value = "create_time", fill = FieldFill.INSERT)
private LocalDateTime createTime;
......
......@@ -24,9 +24,18 @@ public interface AuditService extends IService<Audit> {
*
* @param name
* @param status
* @param auditStatusLevel
* @param type
* @param page
* @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;
import cn.wisenergy.chnmuseum.party.common.enums.AuditOperationEnum;
import cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum;
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.model.Audit;
import cn.wisenergy.chnmuseum.party.model.TUser;
import cn.wisenergy.chnmuseum.party.model.*;
import cn.wisenergy.chnmuseum.party.service.AssetService;
import cn.wisenergy.chnmuseum.party.service.AuditService;
import cn.wisenergy.chnmuseum.party.service.ExhibitionBoardService;
......@@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDateTime;
/**
* <pre>
......@@ -62,13 +64,14 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
* @return
*/
@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<>();
auditPage.setCurrent(page.getCurrent());
auditPage.setSize(page.getSize());
//条件
QueryWrapper<Audit> ew = new QueryWrapper<Audit>()
.eq("a.level", auditStatusLevel.name())
.eq("a.type", type.name())
.orderByDesc("a.create_time", "a.id");
//
......@@ -111,4 +114,200 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
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 {
@ApiOperation(value = "修改禁用审核信息", notes = "修改禁用审核信息")
public Map<String, Object> updateAudit(@RequestBody @Validated(value = {Update.class}) Audit audit) {
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.setStatus(AuditStatusEnum.TBCA.name());
}
......@@ -97,7 +97,7 @@ public class AuditController extends BaseController {
if (!AuditStatusEnum.REFUSED.name().equals(audit.getStatus())) {
audit.setFirstRemarks("");
}
}else{
} else {
audit.setSecondTime(LocalDateTime.now());
if (!AuditStatusEnum.REFUSED.name().equals(audit.getStatus())) {
audit.setSecondRemarks("");
......@@ -206,30 +206,33 @@ public class AuditController extends BaseController {
//=================审核管理接口=================
@GetMapping("/getPageAllList")
// @RequiresPermissions("/audit/getUserList")
@ApiOperation(value = "审核管理=========分页查询", notes = "审核管理=========分页查询")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "_index", value = "分页起始偏移量", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "_size", value = "返回条数", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "name", value = "账号名称或提交人", 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 = "status", value = "待初审:TBC, 驳回:REFUSED,待复审:TBCA, 通过:APPROVED_FINAL", paramType = "query", dataType = "String"),
@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,
@NotBlank(message = "level参数不能为空") String level,
@NotBlank(message = "type参数不能为空") String type) {
//分页
Page<Object> page = getPage();
AuditStatusEnum auditStatusEnum = null;
AuditStatusEnum auditStatus = null;
AuditStatusEnum auditStatusLevel = AuditStatusEnum.valueOf(level);
AuditTypeEnum auditTypeEnum = AuditTypeEnum.valueOf(type);
if (auditTypeEnum == null) {
return getFailResult("type参数不正确");
if (auditTypeEnum == null || auditStatusLevel == null) {
return getFailResult("type或level参数不正确");
}
if (StringUtils.isNotBlank(status)) {
auditStatusEnum = AuditStatusEnum.valueOf(status);
auditStatus = AuditStatusEnum.valueOf(status);
}
//
try {
Page<Audit> auditList = auditService.pageList(name, auditStatusEnum, auditTypeEnum, page);
Page<Audit> auditList = auditService.pageList(name, auditStatus, auditStatusLevel, auditTypeEnum, page);
return getResult(auditList);
} catch (
......@@ -239,5 +242,17 @@ public class AuditController extends BaseController {
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