dongyukun
2025-02-20 8b43a1a91c37676e6a1e506e211f60e3e238f669
提交 | 用户 | 时间
cf757d 1 package com.iailab.module.data.api.ind;
2
3 import com.iailab.framework.common.util.object.ConvertUtils;
808189 4 import com.iailab.module.data.api.ind.dto.ApiIndItemDTO;
cf757d 5 import com.iailab.module.data.api.ind.dto.ApiIndItemQueryDTO;
6 import com.iailab.module.data.api.ind.dto.ApiIndItemValueDTO;
7 import com.iailab.module.data.ind.collection.IndItemCollector;
2cb72f 8 import com.iailab.module.data.ind.item.entity.IndItemEntity;
808189 9 import com.iailab.module.data.ind.item.service.IndItemService;
cf757d 10 import com.iailab.module.data.ind.item.vo.IndItemValueVO;
11 import org.springframework.beans.factory.annotation.Autowired;
2cb72f 12 import org.springframework.util.CollectionUtils;
cf757d 13 import org.springframework.validation.annotation.Validated;
14 import org.springframework.web.bind.annotation.RestController;
15
2cb72f 16 import java.util.ArrayList;
cf757d 17 import java.util.List;
2cb72f 18 import java.util.Set;
cf757d 19
20 /**
21  * @author PanZhibao
22  * @Description
23  * @createTime 2024年10月04日
24  */
25 @RestController // 提供 RESTful API 接口,给 Feign 调用
26 @Validated
27 public class IndItemApiImpl implements IndItemApi {
28
29     @Autowired
30     private IndItemCollector indItemCollector;
31
808189 32     @Autowired
33     private IndItemService indItemService;
34
35     @Override
cf757d 36     public List<ApiIndItemValueDTO> queryIndItemDefaultValue(String itemNo){
37         List<IndItemValueVO> list = indItemCollector.queryValue(itemNo);
2cb72f 38         List<ApiIndItemValueDTO> result = new ArrayList<>(list.size());
D 39         list.forEach(item -> {
40             if (item != null) {
41                 ApiIndItemValueDTO indItemValueDTO = new ApiIndItemValueDTO();
42                 indItemValueDTO.setDataTime(item.getDataTime());
d6606a 43                 indItemValueDTO.setDataValue(item.getDataValue());
2cb72f 44                 result.add(indItemValueDTO);
D 45             }
46         });
47         return result;
cf757d 48     }
49
50     @Override
51     public List<ApiIndItemValueDTO> queryIndItemHistoryValue(ApiIndItemQueryDTO dto) {
52         List<IndItemValueVO> list = indItemCollector.queryValue(dto.getItemNo(), dto.getStart(), dto.getEnd());
2cb72f 53         List<ApiIndItemValueDTO> result = new ArrayList<>(list.size());
D 54         list.forEach(item -> {
55             if (item != null) {
56                 ApiIndItemValueDTO indItemValueDTO = new ApiIndItemValueDTO();
57                 indItemValueDTO.setDataTime(item.getDataTime());
d6606a 58                 indItemValueDTO.setDataValue(item.getDataValue());
2cb72f 59                 result.add(indItemValueDTO);
D 60             }
61         });
62         return result;
cf757d 63     }
808189 64
65     @Override
66     public ApiIndItemDTO getInfoById(String id) {
67         return ConvertUtils.sourceToTarget(indItemService.get(id), ApiIndItemDTO.class);
68     }
2cb72f 69
D 70     @Override
71     public List<ApiIndItemDTO> getInfoByIds(Set<String> indIds) {
72         if (CollectionUtils.isEmpty(indIds)) {
73             return new ArrayList<>();
74         }
75         List<IndItemEntity> inds = indItemService.getInfoByIds(indIds);
76         return ConvertUtils.sourceToTarget(inds,ApiIndItemDTO.class);
77     }
cf757d 78 }