package com.moral.api.pojo.vo.account;
|
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
import com.moral.api.entity.ManageAccount;
|
import com.moral.api.entity.ManageRole;
|
import com.moral.api.pojo.dto.account.AccountDTO;
|
import com.moral.api.pojo.dto.account.AccountQueryDTO;
|
import com.moral.constant.ResponseCodeEnum;
|
import lombok.Data;
|
import org.springframework.util.ObjectUtils;
|
|
import java.text.SimpleDateFormat;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @ClassName AccountPageVO
|
* @Description TODO
|
* @Author 陈凯裕
|
* @Date 2021/3/15 13:25
|
* @Version TODO
|
**/
|
@Data
|
@JsonInclude(JsonInclude.Include.NON_EMPTY)
|
public class AccountQueryVO {
|
|
private long pages;
|
|
private long total;
|
|
private long current;
|
|
private long size;
|
|
private List<AccountVO> accountVOs;
|
|
public static AccountQueryVO convert(AccountQueryDTO dto) {
|
if (dto.getCode() != ResponseCodeEnum.SUCCESS.getCode())
|
return null;
|
|
long total = dto.getTotal();
|
long current = dto.getCurrent();
|
long pages = dto.getPages();
|
long size = dto.getSize();
|
List<AccountVO> accountVOs = new ArrayList<>();
|
List<AccountDTO> accountDTOs = dto.getAccountDTOS();
|
if (!ObjectUtils.isEmpty(accountDTOs)) {
|
for (AccountDTO accountDTO : accountDTOs) {
|
AccountVO vo = convertToQueryPage(accountDTO);
|
accountVOs.add(vo);
|
}
|
}
|
AccountQueryVO vo = new AccountQueryVO();
|
vo.setTotal(total);
|
vo.setAccountVOs(accountVOs);
|
vo.setCurrent(current);
|
vo.setPages(pages);
|
vo.setSize(size);
|
return vo;
|
}
|
|
public static AccountVO convertToQueryPage(AccountDTO dto) {
|
if (dto.getAccount() == null)
|
return null;
|
AccountVO vo = new AccountVO();
|
ManageAccount account = dto.getAccount();
|
List<ManageRole> roles = dto.getRoles();
|
if(!ObjectUtils.isEmpty(roles)){
|
roles.forEach(value-> {
|
value.setIsDelete(null);
|
value.setCreateTime(null);
|
value.setUpdateTime(null);
|
value.setDesc(null);
|
});
|
}
|
vo.setId(account.getId());
|
vo.setAccount(account.getAccount());
|
vo.setUserName(account.getUserName());
|
vo.setEmail(account.getEmail());
|
vo.setMobile(account.getMobile());
|
vo.setWechat(account.getWechat());
|
vo.setRoles(roles);
|
//Date转换String
|
Date createTime = account.getCreateTime();
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
String createTimeStr = sdf.format(createTime);
|
vo.setCreateTime(createTimeStr);
|
return vo;
|
}
|
}
|