whyclxw
2024-09-03 43fdc41b97982e062b10840bc89baf16e86576d2
批量设置参数修改
6个文件已修改
45 ■■■■ 已修改文件
src/main/java/com/whyc/controller/DevA200TestparamController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/DevActmTestparamController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/dto/A200ResDto.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/dto/ActmResDto.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/DevA200TestparamService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/DevActmTestparamService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/DevA200TestparamController.java
@@ -35,8 +35,8 @@
    @ApiOperation(value = "批量设置a200均衡仪参数")
    @PostMapping("setA200ParamPl")
    public Object setA200ParamPl(@RequestBody List<A200ResDto> params){
        return service.setA200ParamPl(params);
    public Object setA200ParamPl(@RequestBody A200ResDto param){
        return service.setA200ParamPl(param);
    }
    @ApiOperation(value = "启动a200均衡仪放电/充电")
src/main/java/com/whyc/controller/DevActmTestparamController.java
@@ -30,10 +30,11 @@
    public Object setActmParam(@RequestBody ActmResDto param){
        return service.setActmParam(param);
    }
    @ApiOperation(value = "批量设置actm均衡仪参数")
    @PostMapping("setActmParamPl")
    public Object setActmParamPl(@RequestBody List<ActmResDto> params){
        return service.setActmParamPl(params);
    public Object setActmParamPl(@RequestBody ActmResDto param){
        return service.setActmParamPl(param);
    }
    @ApiOperation(value = "启动,暂停,继续,停止actm均衡仪")
src/main/java/com/whyc/dto/A200ResDto.java
@@ -4,9 +4,13 @@
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.List;
public class A200ResDto implements Serializable {
    private int devId;
    private List<Integer> devIds;
    @ApiModelProperty(value = "pack/模组号")
    private String batteryName;
@@ -274,4 +278,12 @@
    public void setDevId(int devId) {
        this.devId = devId;
    }
    public List<Integer> getDevIds() {
        return devIds;
    }
    public void setDevIds(List<Integer> devIds) {
        this.devIds = devIds;
    }
}
src/main/java/com/whyc/dto/ActmResDto.java
@@ -3,11 +3,15 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class ActmResDto {
    private int devId;
    private List<Integer> devIds;
    @ApiModelProperty(value = "模组需要,从0开始")
    private Integer batteryStorageIndex;
src/main/java/com/whyc/service/DevA200TestparamService.java
@@ -77,13 +77,15 @@
    }
    //批量设置a200均衡仪参数
    public Object setA200ParamPl(List<A200ResDto> params) {
    public Object setA200ParamPl(A200ResDto param) {
        Map<Integer,Object> map=new HashMap<>();
        int size=param.getDevIds().size();
        try {
            ThreadPoolExecutor poolExecutor = ThreadPoolExecutorFactory.getPoolExecutor();
            CountDownLatch latch = new CountDownLatch(params.size());
            for (A200ResDto param:params) {
            CountDownLatch latch = new CountDownLatch(size);
            for (Integer devId:param.getDevIds()) {
                poolExecutor.execute(() -> {
                    param.setDevId(devId);
                    ResultA200Dto dto= (ResultA200Dto) setA200Param(param);
                    map.put(param.getDevId(),dto);
                    latch.countDown();
@@ -93,7 +95,7 @@
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        return new Response().set(1,true,"批量设置a200均衡仪参数");
        return new Response().setII(1,true,map,"批量设置a200均衡仪参数");
    }
    //启动a200均衡仪放电/充电
src/main/java/com/whyc/service/DevActmTestparamService.java
@@ -74,13 +74,15 @@
    }
    //批量设置Actm均衡仪参数
    public Object setActmParamPl(List<ActmResDto> params) {
    public Object setActmParamPl(ActmResDto param) {
        Map<Integer,Object> map=new HashMap<>();
        int size=param.getDevIds().size();
        try {
            ThreadPoolExecutor poolExecutor = ThreadPoolExecutorFactory.getPoolExecutor();
            CountDownLatch latch = new CountDownLatch(params.size());
            for (ActmResDto param:params) {
            CountDownLatch latch = new CountDownLatch(size);
            for (Integer devId:param.getDevIds()) {
                poolExecutor.execute(() -> {
                    param.setDevId(devId);
                    ResultA200Dto dto= (ResultA200Dto) setActmParam(param);
                    map.put(param.getDevId(),dto);
                    latch.countDown();
@@ -90,7 +92,7 @@
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        return new Response().set(1,true,"批量设置Actm均衡仪参数");
        return new Response().setII(1,true,map,"批量设置Actm均衡仪参数");
    }