zhangf
2024-08-08 71706ced3375f4c18148516d0477d8fd645de2ee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
package com.gkhy.huataiFourierSpecialGasMonitor.domain.account.converter;
 
import cn.hutool.core.util.ObjectUtil;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.account.entity.SysUserIdentityBind;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.account.entity.SysUserRoleBind;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.account.entity.User;
import com.gkhy.huataiFourierSpecialGasMonitor.application.account.dto.respDto.UserInfoAppRespDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.account.model.dto.SysUserIdentityBindDomainDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.account.model.dto.SysUserRoleBindDomainDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.account.model.dto.UserInfoDomainDTO;
import com.gkhy.huataiFourierSpecialGasMonitor.domain.attachment.dto.resp.AttachmentDomainDTO;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
 
import java.util.ArrayList;
import java.util.List;
 
@Service
public class UserInfoDomainConverter {
 
    public UserInfoAppRespDTO toUserInfoRespDTO(UserInfoDomainDTO userInfoDomainDTO){
        if(userInfoDomainDTO == null)
            return null;
        UserInfoAppRespDTO userInfoAppRespDTO = new UserInfoAppRespDTO();
        BeanUtils.copyProperties(userInfoDomainDTO, userInfoAppRespDTO);
        return userInfoAppRespDTO;
    }
 
    public UserInfoDomainDTO toUserInfoDTO(User user){
        if(user == null)
            return null;
        UserInfoDomainDTO userInfoDomainDTO = new UserInfoDomainDTO();
        BeanUtils.copyProperties(user, userInfoDomainDTO);
        if(user.getSysDepartment() != null){
            userInfoDomainDTO.setDepName(user.getSysDepartment().getDepName());
        }
        List<SysUserRoleBindDomainDTO> roleBindDomainDTOList = new ArrayList<>();
        if(ObjectUtil.isNotEmpty(user.getSysUserRoleBinds())){
            user.getSysUserRoleBinds().forEach(userRoleBind -> {
                roleBindDomainDTOList.add(toUserRoleDomainDTO(userRoleBind));
            });
        }
        userInfoDomainDTO.setRoles(roleBindDomainDTOList);
 
        //身份
        //List<SysUserIdentityBindDomainDTO> userIdentityBindDomainDTOS = new ArrayList<>();
        //if(user.getSysUserIdentityBinds() != null){
        //    user.getSysUserIdentityBinds().forEach(userIdentity ->{
        //        userIdentityBindDomainDTOS.add(toUserIndentityDomainDTO(userIdentity));
        //    });
        //}
        //userInfoDomainDTO.setUserIdentities(userIdentityBindDomainDTOS);
        //资质附件
        if(user.getQualificationAttachment() != null){
            AttachmentDomainDTO attachmentDomainDTO = new AttachmentDomainDTO();
            BeanUtils.copyProperties(user.getQualificationAttachment(),attachmentDomainDTO);
            userInfoDomainDTO.setQualificationAttDomainDTO(attachmentDomainDTO);
        }
        return userInfoDomainDTO;
    }
    public SysUserIdentityBindDomainDTO toUserIndentityDomainDTO(SysUserIdentityBind sysUserIdentityBind){
        if(sysUserIdentityBind == null)
            return null;
        SysUserIdentityBindDomainDTO sysUserRoleBindDomainDTO = new SysUserIdentityBindDomainDTO();
        BeanUtils.copyProperties(sysUserIdentityBind, sysUserRoleBindDomainDTO);
        if(sysUserIdentityBind.getUserIdentity() != null){
            sysUserRoleBindDomainDTO.setUserIdentity(sysUserIdentityBind.getUserIdentity().getIdentity());
        }
        return sysUserRoleBindDomainDTO;
    }
    public SysUserRoleBindDomainDTO toUserRoleDomainDTO(SysUserRoleBind sysUserRoleBind){
        if(sysUserRoleBind == null)
            return null;
        SysUserRoleBindDomainDTO sysUserRoleBindDomainDTO = new SysUserRoleBindDomainDTO();
        BeanUtils.copyProperties(sysUserRoleBind, sysUserRoleBindDomainDTO);
        sysUserRoleBindDomainDTO.setRoleName(sysUserRoleBind.getRole().getName());
        return sysUserRoleBindDomainDTO;
    }
    public List<UserInfoDomainDTO> toDomainUserInfoList(List<User> userList){
        if(userList == null || userList.isEmpty())
            return null;
        List<UserInfoDomainDTO> domainDTOList = new ArrayList<>();
        userList.forEach(u -> {
            domainDTOList.add(toUserInfoDTO(u));
        });
        return domainDTOList;
    }
 
 
}