package com.moral.api.pojo.vo.manageLog; import com.fasterxml.jackson.annotation.JsonInclude; import com.moral.api.entity.ManageLog; import com.moral.api.pojo.dto.manageLog.ManageLogQueryDTO; import com.moral.constant.ResponseCodeEnum; import com.moral.util.DateUtils; import lombok.Data; import org.springframework.util.ObjectUtils; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.List; /** * @ClassName ManageLogQueryVO * @Description TODO * @Author 陈凯裕 * @Date 2021/4/12 16:30 * @Version TODO **/ @Data @JsonInclude(JsonInclude.Include.NON_EMPTY) public class ManageLogQueryVO { private long pages; private long total; private long current; private long size; private List manageLogs; public static ManageLogQueryVO convert(ManageLogQueryDTO dto){ if (dto.getCode() != ResponseCodeEnum.SUCCESS.getCode()) return null; ManageLogQueryVO vo = new ManageLogQueryVO(); long current = dto.getCurrent(); long size = dto.getSize(); long page = dto.getPage(); long total = dto.getTotal(); List managelogVOs = new ArrayList<>(); List manageLogs = dto.getManageLogs(); if(!ObjectUtils.isEmpty(manageLogs)){ for (ManageLog manageLog : manageLogs) { ManageLogVO manageLogVO = convertToQueryPage(manageLog); managelogVOs.add(manageLogVO); } } vo.setCurrent(current); vo.setManageLogs(managelogVOs); vo.setPages(page); vo.setSize(size); vo.setTotal(total); return vo; } private static ManageLogVO convertToQueryPage(ManageLog manageLog){ ManageLogVO vo = new ManageLogVO(); String account = manageLog.getAccount(); String userName = manageLog.getUserName(); String type = manageLog.getType(); String ip = manageLog.getIp(); Date createTime = manageLog.getCreateTime(); String content = manageLog.getContent(); //处理时间以及content String[] contentArray = content.split(";"); List contentList = Arrays.asList(contentArray); String createTimeStr = DateUtils.dateToDateString(createTime, "yyyy-MM-dd"); vo.setAccount(account); vo.setContent(contentList); vo.setCreateTime(createTimeStr); vo.setType(type); vo.setIp(ip); vo.setUserName(userName); return vo; } }