| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.LinkedMultiValueMap; |
| | | import org.springframework.util.MultiValueMap; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | import org.springframework.web.client.RestTemplate; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | @Autowired(required = false) |
| | | private DevInfMapper dinfMapper; |
| | | |
| | | @Resource |
| | | private RestTemplate restTemplate; |
| | | private final RestTemplate restTemplate; |
| | | |
| | | @Autowired |
| | | public DevActmTestparamService(RestTemplate restTemplate) { |
| | | this.restTemplate = restTemplate; |
| | | } |
| | | |
| | | //读取Actm一体机参数 |
| | | public Object getActmParam(int devId,int index) { |
| | |
| | | for (Integer devId:param.getDevIds()) { |
| | | poolExecutor.execute(() -> { |
| | | param.setDevId(devId); |
| | | ResultA200Dto dto= (ResultA200Dto) setActmParam(param); |
| | | ResultActmDto dto= (ResultActmDto) setActmParam(param); |
| | | map.put(devId,dto); |
| | | latch.countDown(); |
| | | }); |
| | |
| | | int size=param.getDevIds().size(); |
| | | for (Integer devId:param.getDevIds()) { |
| | | param.setDevId(devId); |
| | | ResultA200Dto dto= (ResultA200Dto) setActmParam(param); |
| | | ResultActmDto dto= (ResultActmDto) setActmParam(param); |
| | | map.put(devId,dto); |
| | | } |
| | | return new Response().setII(1,true,map,"批量设置Actm均衡仪参数"); |
| | |
| | | } |
| | | |
| | | //批量控制Actm均衡仪 |
| | | public Response controllActmParamPl(List<ActmPlContDto> actmPlContDtos) { |
| | | public Response controllActmParamPl(List<Integer> devIds, int index, int type) { |
| | | Map<Integer,Object> map=new HashMap<>(); |
| | | for (ActmPlContDto actmPlContDto:actmPlContDtos) { |
| | | ResultActmDto dto= (ResultActmDto) controllerActmParam(actmPlContDto.getDevId(),actmPlContDto.getIndex(),actmPlContDto.getType()); |
| | | map.put(actmPlContDto.getDevId(),dto); |
| | | for (Integer devId:devIds) { |
| | | ResultActmDto dto= (ResultActmDto) controllerActmParam(devId,index,type); |
| | | if(type==1){ |
| | | UpdateWrapper wrapper=new UpdateWrapper(); |
| | | wrapper.eq("dev_id",devId); |
| | | wrapper.set("batch_state",1); |
| | | dinfMapper.update(null,wrapper); |
| | | } |
| | | map.put(devId,dto); |
| | | } |
| | | return new Response().set(1,true,"批量设置Actm均衡仪参数"); |
| | | return new Response().setII(1,true,map,"批量控制Actm均衡仪"); |
| | | } |
| | | |
| | | //将dto拷贝至param |
| | |
| | | actmParam.setMaxBatteryNumber(dto.getMaxBatteryNumber()); |
| | | actmParam.setMaxNtcCount(dto.getMaxNtcCount()); |
| | | } |
| | | |
| | | //设置电池组数与电池节数 |
| | | public Object setActmBatteryStorageNumber(ActmResDto param) { |
| | | QueryWrapper wrapper=new QueryWrapper(); |
| | | wrapper.eq("dev_id",param.getDevId()); |
| | | wrapper.last("limit 1"); |
| | | DevInf dinf=dinfMapper.selectOne(wrapper); |
| | | String url="http://"+dinf.getDevIp()+":8080/webService/setBatteryStorageNumber"; |
| | | //将请求头部和参数合成一个请求 |
| | | MultiValueMap<String, Object> paramMap = new LinkedMultiValueMap<>(); |
| | | paramMap.add("batteryStorageNumber",param.getBatteryStorageNumber()); |
| | | paramMap.add("batteryNumber",param.getBatteryNumber()); |
| | | ResultActmDto dto= (ResultActmDto) TestparamHttpUtil.postforform_dataActm(restTemplate,url,paramMap); |
| | | return dto; |
| | | } |
| | | //批量设设置电池组数与电池节数 |
| | | public Object setActmBatteryStorageNumberPl(ActmResDto param) { |
| | | Map<Integer,Object> map=new HashMap<>(); |
| | | int size=param.getDevIds().size(); |
| | | for (Integer devId:param.getDevIds()) { |
| | | param.setDevId(devId); |
| | | ResultActmDto dto= (ResultActmDto) setActmBatteryStorageNumber(param); |
| | | map.put(devId,dto); |
| | | } |
| | | return new Response().setII(1,true,map,"批量设设置电池组数与电池节数"); |
| | | } |
| | | } |