审计、时区

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,20 +52,20 @@ public class RecordServiceImpl implements RecordService {
@Value("${file.url}")
private String url;
@Override
public void reviewRecord(ReviewRecordDTO reviewRecordDTO) {
if (!userDao.existUser(reviewRecordDTO.getReviewerPhone())) {
throw new UserException(ResultEnum.NOT_EXIST_USER);
}
User user = userDao.selectUser(reviewRecordDTO.getReviewerPhone());
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();
@ -80,7 +81,7 @@ public class RecordServiceImpl implements RecordService {
throw new UserException(ResultEnum.NOT_EXIST_USER);
}
User user = userDao.selectUser(modifyRecordDTO.getUserPhone());
Record record = recordDao.getRecord(modifyRecordDTO.getUuid());
if (record == null) {
throw new RecordException(ResultEnum.NOT_EXIST_RECORD);
@ -106,7 +107,7 @@ public class RecordServiceImpl implements RecordService {
}
MetaData metaData = metaDataDao.selectMetaData(submitRecordDTO.getMetaDataName());
Record record = new Record();
record.setUser(user);
record.setValues(submitRecordDTO.getValues());
Operation submitOp = Operation.submitOp(user, submitRecordDTO.getMsg());
@ -123,24 +124,30 @@ public class RecordServiceImpl implements RecordService {
}
@Override
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);
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);
}
@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) {
List<Record> recordList = recordDao.listRecordLimit(idNumber, state, uuid, templateName, templateType, submitTimeGt, submitTimeLt, projectName, currentPage * pageSize, 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);
return recordList.stream().map(record -> {
RecordVO recordVO = new RecordVO();
recordVO.setIdNumber(record.getIdNumber());
recordVO.setUuid(record.getUuid());
recordVO.setTemplate(record.getMetaData().getName());
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
@ -210,7 +241,7 @@ public class RecordServiceImpl implements RecordService {
throw new UserException(ResultEnum.NOT_EXIST_USER);
}
User user = userDao.selectUser(deleteRecordDTO.getPhone());
Record record = recordDao.getRecord(deleteRecordDTO.getUuid());
if (record == null) {
throw new RecordException(ResultEnum.NOT_EXIST_RECORD);
@ -226,19 +257,19 @@ public class RecordServiceImpl implements RecordService {
@Override
public void record2word(String uuid, HttpServletResponse response) {
Record record = recordDao.getRecord(uuid);
}
@Override
public void modifyMetaData(ModifyMetaDataDTO modifyMetaDataDTO) {
if (!metaDataDao.existMetaData(modifyMetaDataDTO.getMetaDataName())) {
throw new MetaDataException(ResultEnum.NOT_EXIST_METADATA);
}
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;
/**