审计、时区

This commit is contained in:
copper 2021-05-22 14:00:16 +08:00
parent 2198654c13
commit d51b387712
8 changed files with 112 additions and 37 deletions

View File

@ -11,6 +11,8 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* @author Pope
@ -28,8 +30,13 @@ public class AuditController {
@RequestParam(value = "uri",required = false) String uri,
@RequestParam(value = "currentPage", defaultValue = "0") int currentPage,
@RequestParam(value = "pageSize", defaultValue = "30") int pageSize) {
Map<String, Object> resultMap = new HashMap<>(16,0.75F);
resultMap.put("totalCount", 100);
resultMap.put("currentPage", currentPage);
resultMap.put("pageSize", pageSize);
resultMap.put("data",auditService.listAuditLimit(beginTime, endTime, uri, currentPage, pageSize));
ResultVO resultVO = new ResultVO(ResultEnum.SUCCESS);
resultVO.setData(auditService.listAuditLimit(beginTime, endTime, uri, currentPage, pageSize));
resultVO.setData(resultMap);
return resultVO;
}

View File

@ -53,12 +53,16 @@ public class ProjectDaoImpl implements ProjectDao {
if (name != null) {
criteria.and("name").regex(name);
}
if (date_gt != 0) {
criteria.and("date").gt(date_gt);
if (date_gt != 0 && date_lt != 0) {
// criteria.and("date").gt(date_gt).lt(date_lt);
criteria.andOperator(Criteria.where("date").gt(date_gt), Criteria.where("date").lt(date_lt));
}
if(date_lt != 0) {
else if(date_lt != 0) {
criteria.and("date").lt(date_lt);
}
else if (date_gt != 0) {
criteria.and("date").gt(date_gt);
}
Query query = new Query(criteria).skip(offset).limit(pageSize);
return mongoTemplate.find(query, Project.class);
}

View File

@ -32,7 +32,7 @@ public enum AuthEnum {
add("/record/recordValues : GET");
add("/record/record : PUT");
add("/record/record : DELETE");
add("/record/underReviewRecord : PUT");
add("/record/review : PUT");
add("/record/file : POST");
add("/user/userList : GET");
@ -55,6 +55,8 @@ public enum AuthEnum {
add("/metaData/metaData : PUT");
add("/metaData/metaData : POST");
add("/metaData/wordTemplate : POST");
add("/audit/audit : GET");
}}),
/**
@ -109,7 +111,7 @@ public enum AuthEnum {
add("/record/record : DELETE");
}}),
EXAMINE_RECORD("审核流调记录的权限", new HashSet<String>() {{
add("/record/underReviewRecord : PUT");
add("/record/review : PUT");
}}),
UPLOAD_RECORD_FILE("上传流调记录相关文件的权限", new HashSet<String>() {{
add("/record/file : POST");
@ -164,7 +166,7 @@ public enum AuthEnum {
add("/metadata/metadata : PUT");
}}),
DELETE_METADATA("删除元数据的权限", new HashSet<String>() {{
add("/metadata/metadata : DELETE");
}}),
CREATE_METADATA("添加元数据的权限", new HashSet<String>() {{
add("/metadata/metadata : POST");
@ -177,7 +179,7 @@ public enum AuthEnum {
* 审计
*/
QUERY_AUDIT("查询审计记录", new HashSet<String>() {{
add("/audit/audit : GET");
}});
private String name;

View File

@ -1,6 +1,7 @@
package com.example.survey.service;
import com.example.survey.dto.record.*;
import com.example.survey.vo.RecordDetailVO;
import com.example.survey.vo.RecordVO;
import org.springframework.web.multipart.MultipartFile;
@ -74,7 +75,7 @@ public interface RecordService {
* @param version 版本号
* @return 流调记录的values
*/
Map<String,Object> getRecordValues(String uuid);
RecordDetailVO getRecordValues(String uuid);
/**
* 上传文件

View File

@ -10,6 +10,7 @@ import com.example.survey.enumeration.ResultEnum;
import com.example.survey.exception.*;
import com.example.survey.service.RecordService;
import com.example.survey.util.WordUtil;
import com.example.survey.vo.RecordDetailVO;
import com.example.survey.vo.RecordVO;
import com.example.survey.vo.inner.OperationInfo;
import lombok.extern.log4j.Log4j2;
@ -51,7 +52,6 @@ public class RecordServiceImpl implements RecordService {
@Value("${file.url}")
private String url;
@Override
public void reviewRecord(ReviewRecordDTO reviewRecordDTO) {
if (!userDao.existUser(reviewRecordDTO.getReviewerPhone())) {
@ -62,9 +62,10 @@ public class RecordServiceImpl implements RecordService {
if (!recordDao.existRecord(reviewRecordDTO.getUuid())) {
throw new RecordException(ResultEnum.NOT_EXIST_RECORD);
}
Record record = recordDao.getRecord( reviewRecordDTO.getUuid());
Record record = recordDao.getRecord(reviewRecordDTO.getUuid());
record.setState(reviewRecordDTO.getPass() ? RecordStateEnum.REVIEWED.getValue() : RecordStateEnum.NOT_PASS.getValue());
record.setState(
reviewRecordDTO.getPass() ? RecordStateEnum.REVIEWED.getValue() : RecordStateEnum.NOT_PASS.getValue());
// record.setVersion(UUID.randomUUID().toString());
Operation reviewOp = Operation.reviewOp(user, reviewRecordDTO.getMsg(), reviewRecordDTO.getPass());
List<Operation> opList = record.getOperationList();
@ -123,24 +124,30 @@ public class RecordServiceImpl implements RecordService {
}
@Override
public long countRecord(String idNumber, String state, String uuid,
String templateName, String templateType,
public long countRecord(String idNumber, String state, String uuid, String templateName, String templateType,
long submitTimeGt, long submitTimeLt, String projectName) {
return recordDao.countRecord(idNumber, state, uuid, templateName, templateType, submitTimeGt, submitTimeLt, projectName);
return recordDao.countRecord(idNumber, state, uuid, templateName, templateType, submitTimeGt, submitTimeLt,
projectName);
}
@Override
public List<RecordVO> listRecordLimit(String idNumber, String state, String uuid,
String templateName, String templateType,
long submitTimeGt, long submitTimeLt, String projectName, int currentPage, int pageSize) {
public List<RecordVO> listRecordLimit(String idNumber, String state, String uuid, String templateName,
String templateType, long submitTimeGt, long submitTimeLt, String projectName, int currentPage,
int pageSize) {
List<Record> recordList = recordDao.listRecordLimit(idNumber, state, uuid, templateName, templateType, submitTimeGt, submitTimeLt, projectName, currentPage * pageSize, pageSize);
List<Record> recordList = recordDao.listRecordLimit(idNumber, state, uuid, templateName, templateType,
submitTimeGt, submitTimeLt, projectName, currentPage * pageSize, pageSize);
return recordList.stream().map(record -> {
RecordVO recordVO = new RecordVO();
recordVO.setIdNumber(record.getIdNumber());
recordVO.setUuid(record.getUuid());
if (record.getMetaData() == null) {
recordVO.setTemplate(null);
} else {
recordVO.setTemplate(record.getMetaData().getName());
}
recordVO.setOperationInfoList(record.getOperationList().stream().map(op -> {
OperationInfo operationInfo = new OperationInfo();
operationInfo.setType(op.getType());
@ -151,6 +158,7 @@ public class RecordServiceImpl implements RecordService {
operationInfo.setResult(op.getResult());
return operationInfo;
}).collect(Collectors.toList()));
recordVO.setProjectList(record.getProjectList());
recordVO.setState(record.getState());
recordVO.setSubmitTime(record.getSubmitTime());
return recordVO;
@ -158,13 +166,36 @@ public class RecordServiceImpl implements RecordService {
}
@Override
public Map<String, Object> getRecordValues(String uuid) {
public RecordDetailVO getRecordValues(String uuid) {
Record record = recordDao.getRecord(uuid);
if (record == null) {
throw new RecordException(ResultEnum.NOT_EXIST_RECORD);
}
return record.getValues();
RecordDetailVO recordVO = new RecordDetailVO();
recordVO.setIdNumber(record.getIdNumber());
recordVO.setUuid(record.getUuid());
if (record.getMetaData() == null) {
recordVO.setTemplate(null);
} else {
recordVO.setTemplate(record.getMetaData().getName());
}
recordVO.setOperationInfoList(record.getOperationList().stream().map(op -> {
OperationInfo operationInfo = new OperationInfo();
operationInfo.setType(op.getType());
operationInfo.setTime(op.getTime());
operationInfo.setPersonId(op.getUser().getPhone());
operationInfo.setPersonName(op.getUser().getUsername());
operationInfo.setMsg(op.getMsg());
operationInfo.setResult(op.getResult());
return operationInfo;
}).collect(Collectors.toList()));
recordVO.setProjectList(record.getProjectList());
recordVO.setState(record.getState());
recordVO.setSubmitTime(record.getSubmitTime());
recordVO.setValues(record.getValues());
return recordVO;
}
@Override
@ -238,7 +269,7 @@ public class RecordServiceImpl implements RecordService {
MetaData metaData = metaDataDao.selectMetaData(modifyMetaDataDTO.getMetaDataName());
Record record = recordDao.getRecord(modifyMetaDataDTO.getUuid());
if(record == null) {
if (record == null) {
throw new RecordException(ResultEnum.NOT_EXIST_RECORD);
}
@ -248,7 +279,7 @@ public class RecordServiceImpl implements RecordService {
User user = userDao.selectUser(modifyMetaDataDTO.getPhone());
List<Operation> operationList = record.getOperationList();
String msg = record.getMetaData().getName() +"->" + modifyMetaDataDTO.getMetaDataName();
String msg = record.getMetaData().getName() + "->" + modifyMetaDataDTO.getMetaDataName();
Operation modifyMetaOp = Operation.modifyMetaOp(user, msg);
// modifyMetaOp.setMsg();
operationList.add(modifyMetaOp);

View File

@ -0,0 +1,30 @@
package com.example.survey.vo;
import com.example.survey.vo.inner.OperationInfo;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
* @author Pope
*/
@Data
public class RecordDetailVO {
private String idNumber;
private List<String> projectList;
private String template;
private String uuid;
private long submitTime;
private List<OperationInfo> operationInfoList;
private Map<String, Object> values;
private String state;
}

View File

@ -14,7 +14,7 @@ public class RecordVO {
private String idNumber;
// private List<String> projectList;
private List<String> projectList;
private String template;

View File

@ -19,7 +19,7 @@ public class OperationInfo {
/**
* 时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date time;
/**