jiangping
2023-08-18 34eb7308ab1cf704277b8ae869919c2be5dca6df
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
91
92
93
94
95
package doumeemes.service.ext.impl;
 
import doumeemes.core.constants.ResponseStatus;
import doumeemes.core.exception.BusinessException;
import doumeemes.core.model.LoginUserInfo;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.core.utils.Constants;
import doumeemes.core.utils.excel.EasyExcelUtil;
import doumeemes.dao.ext.dto.DeviceImportDTO;
import doumeemes.dao.ext.dto.QueryDeviceExtDTO;
import doumeemes.dao.ext.dto.QueryUserDeviceExtDTO;
import doumeemes.dao.ext.dto.SalaryParamImportDTO;
import doumeemes.dao.ext.vo.DeviceExtListVO;
import doumeemes.service.ext.DeviceExtService;
import doumeemes.dao.ext.DeviceExtMapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import doumeemes.service.ext.UserDeviceExtService;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
 
import java.util.List;
 
/**
 * 生产设备信息Service实现
 * @author 江蹄蹄
 * @date 2022/04/20 10:59
 */
@Service
public class DeviceExtServiceImpl implements DeviceExtService {
 
    @Autowired
    private DeviceExtMapper deviceExtMapper;
 
    @Autowired
    private UserDeviceExtService userDeviceExtService;
 
    @Override
    public PageData<DeviceExtListVO> findPage(PageWrap<QueryDeviceExtDTO> pageWrap) {
        PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity());
        List<DeviceExtListVO> result = deviceExtMapper.selectList(pageWrap.getModel());
        return PageData.from(new PageInfo<>(result));
    }
 
 
    @Override
    public PageData<DeviceExtListVO> getListByCondition(PageWrap<QueryDeviceExtDTO> pageWrap) {
        PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity());
        List<DeviceExtListVO> result = deviceExtMapper.selectList(pageWrap.getModel());
        QueryUserDeviceExtDTO queryUserDeviceExtDTO = new QueryUserDeviceExtDTO();
        result.forEach(i->{
            queryUserDeviceExtDTO.setDeviceId(i.getId());
            i.setUserDeviceExtListVOS(userDeviceExtService.getList(queryUserDeviceExtDTO));
        });
        return PageData.from(new PageInfo<>(result));
    }
 
    @Override
    public List<DeviceExtListVO> getListByCondition(QueryDeviceExtDTO dto) {
        List<DeviceExtListVO> result = deviceExtMapper.selectList(dto);
        return result;
    }
 
 
    @Override
    public List<DeviceExtListVO> getDeviceByCondition(QueryDeviceExtDTO dto) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(!Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对不起,您无权限进行该操作!");
        }
        //只能查看当前根组织的数据
        dto.setRootDepartId(user.getRootDepartment().getId());
        dto.setDepartId(user.getCurComDepartment().getId());
        //数据权限
        List<Integer> dataPermission = user.getDepartPermissionList();
        if(dataPermission!=null){
            if(dataPermission.size() == 0){
                //只能看自己的
                dto.setPmodelUserId(user.getId());
            }else{
                //否则走数据权限
                dto.setDepartIds(dataPermission);
            }
        }
        List<DeviceExtListVO> result = deviceExtMapper.getListByCondition(dto);
        return result;
    }
 
 
}