From ca46c59e66ab37c12d4770f46aff8c631743f28c Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期二, 03 九月 2024 09:44:38 +0800 Subject: [PATCH] actm --- src/main/java/com/whyc/service/DevActmTestparamService.java | 108 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 96 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/whyc/service/DevActmTestparamService.java b/src/main/java/com/whyc/service/DevActmTestparamService.java index cbae424..e9ffa04 100644 --- a/src/main/java/com/whyc/service/DevActmTestparamService.java +++ b/src/main/java/com/whyc/service/DevActmTestparamService.java @@ -1,11 +1,24 @@ package com.whyc.service; +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.whyc.dto.ActmResDto; import com.whyc.dto.Response; +import com.whyc.dto.ResultActmDto; import com.whyc.mapper.DevActmTestparamMapper; +import com.whyc.mapper.DevInfMapper; import com.whyc.pojo.db_lithium_ram_db.DevActmTestparam; +import com.whyc.pojo.db_lithium_ram_db.DevInf; +import com.whyc.util.ActionUtil; +import com.whyc.util.TestparamHttpUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; +import javax.annotation.Resource; import java.util.List; @@ -14,22 +27,93 @@ @Autowired(required = false) private DevActmTestparamMapper mapper; - //璇诲彇actm鍧囪 浠弬鏁� - public Response getActmParam(int devId) { + @Autowired(required = false) + private DevInfMapper dinfMapper; - return new Response().set(1,new DevActmTestparam(),"璇诲彇actm鍧囪 浠弬鏁�"); - } - //璁剧疆actm鍧囪 浠弬鏁� - public Response setActmParam(DevActmTestparam param) { - return new Response().set(1,true,"璁剧疆actm鍧囪 浠弬鏁�"); + @Resource + private RestTemplate restTemplate; + + //璇诲彇Actm涓�浣撴満鍙傛暟 + public Object getActmParam(int devId) { + QueryWrapper wrapper=new QueryWrapper(); + wrapper.eq("dev_id",devId); + wrapper.last("limit 1"); + DevInf dinf=dinfMapper.selectOne(wrapper); + String url="http://"+dinf.getDevIp()+":8080/webService/getTestParameter"; + String results = restTemplate.postForObject(url, null, String.class); + ResultActmDto dto= ActionUtil.getGson().fromJson(results, ResultActmDto.class); + if(dto.getCode().equals("200")){ + DevActmTestparam actmParam=new DevActmTestparam(); + copyActmDTO(dto.getData(),actmParam); + actmParam.setDevId(devId); + //actmParam.setReturnCode(Integer.parseInt(dto.getCode())); + UpdateWrapper updateWrapper=new UpdateWrapper(); + updateWrapper.eq("dev_id",devId); + mapper.update(actmParam,updateWrapper); + } + return dto; } - //鎺у埗actm鍧囪 浠� - public Response controllActmParam(int devId) { - return new Response().set(1,true,"鎺у埗actm鍧囪 浠�"); + + //璁剧疆Actm鍧囪 浠弬鏁� + public Object setActmParam(ActmResDto param, int devId) { + QueryWrapper wrapper=new QueryWrapper(); + wrapper.eq("dev_id",devId); + wrapper.last("limit 1"); + DevInf dinf=dinfMapper.selectOne(wrapper); + String url="http://"+dinf.getDevIp()+":8080/webService/setTestParameter"; + //灏嗚姹傚ご閮ㄥ拰鍙傛暟鍚堟垚涓�涓姹� + MultiValueMap<String, Object> paramMap = new LinkedMultiValueMap<>(); + String paramJson= JSONObject.toJSONString(param); + paramMap.add("testParameter",paramJson); + ResultActmDto dto= (ResultActmDto) TestparamHttpUtil.postforform_data(restTemplate,url,paramMap); + return dto; } - //鎵归噺鎺у埗actm鍧囪 浠� + + //鍚姩Actm鍧囪 浠斁鐢�/鍏呯數 + public Object startActmParam(int devId,int type) { + QueryWrapper wrapper=new QueryWrapper(); + wrapper.eq("dev_id",devId); + wrapper.last("limit 1"); + DevInf dinf=dinfMapper.selectOne(wrapper); + String url="http://"+dinf.getDevIp()+":8080/webService/startTest"; + //灏嗚姹傚ご閮ㄥ拰鍙傛暟鍚堟垚涓�涓姹� + MultiValueMap<String, Object> paramMap = new LinkedMultiValueMap<>(); + paramMap.add("testType",type); + ResultActmDto dto= (ResultActmDto) TestparamHttpUtil.postforform_data(restTemplate,url,paramMap); + return dto; + } + //鍋滄Actm鍧囪 浠斁鐢�/鍏呯數 + public Object stopActmParam(int devId) { + QueryWrapper wrapper=new QueryWrapper(); + wrapper.eq("dev_id",devId); + wrapper.last("limit 1"); + DevInf dinf=dinfMapper.selectOne(wrapper); + String url="http://"+dinf.getDevIp()+":8080/webService/stopTest"; + String results = restTemplate.postForObject(url, null, String.class); + ResultActmDto dto= ActionUtil.getGson().fromJson(results, ResultActmDto.class); + return dto; + } + + //鎵归噺鎺у埗Actm鍧囪 浠� public Response controllActmParamPl(List<Integer> devIds) { - return new Response().set(1,true,"鎵归噺鎺у埗actm鍧囪 浠�"); + return new Response().set(1,true,"鎵归噺鎺у埗Actm鍧囪 浠�"); } + + //灏哾to鎷疯礉鑷硃aram + private void copyActmDTO(Object data, DevActmTestparam actmParam) { + ActmResDto dto= (ActmResDto) data; + actmParam.setBatteryStorageIndex(dto.getBatteryStorageIndex()); + actmParam.setModuleCode(dto.getModuleCode()); + actmParam.setWorkMode(dto.getWorkMode()); + actmParam.setBatteryType(dto.getBatteryType()); + actmParam.setBatteryNumber(dto.getBatteryNumber()); + actmParam.setNtcCount(dto.getNtcCount()); + actmParam.setTestBatteryArray(dto.getTestBatteryArray()); + actmParam.setVoltage(dto.getVoltage()); + actmParam.setCurrent(dto.getCurrent()); + actmParam.setMaxBatteryNumber(dto.getMaxBatteryNumber()); + actmParam.setMaxNtcCount(dto.getMaxNtcCount()); + } + } \ No newline at end of file -- Gitblit v1.9.1