二级评估接口开发

This commit is contained in:
2025-06-16 16:59:30 +08:00
parent 2694564444
commit 42db01446d
25 changed files with 553 additions and 318 deletions

View File

@@ -0,0 +1,20 @@
package com.njcn.advance.pojo.dto.assess;
import lombok.Data;
import java.util.List;
/**
* @Author: cdf
* @CreateTime: 2025-06-13
* @Description: 左侧树
*/
@Data
public class AssessTreeDTO {
private String treeId;
private String treeName;
private List<AssessTreeDTO> children;
}

View File

@@ -8,6 +8,7 @@ import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
import java.math.BigDecimal;
/**
@@ -21,7 +22,7 @@ import java.math.BigDecimal;
@Getter
@Setter
@TableName("assess_dic_harmonic_character")
public class AssessDicHarmonicCharacterQuery extends BaseParam {
public class AssessDicHarmonicCharacterQuery extends BaseParam implements Serializable {
private static final long serialVersionUID = 1L;

View File

@@ -10,6 +10,8 @@ import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
@@ -23,22 +25,22 @@ import java.math.BigDecimal;
*/
@Getter
@Setter
@TableName("assess_dic_shock_load")
@ApiModel(value = "AssessDicShockLoadQuery", description = "冲击负荷字典查询参数")
public class AssessDicShockLoadQuery extends BaseParam implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "冲击负荷类型IDd19c10178eeb4da2bca1df18a050524d", required = true)
private String inpactloadtypeId;
@ApiModelProperty(value = "冲击负荷类型名称,例:电机", required = true)
@NotBlank(message = "冲击负荷类型名称不可为空")
private String inpactloadtypeName;
@ApiModelProperty(value = "冲击负荷启动方式,例:直接启动")
@NotBlank(message = "冲击负荷启动方式不可为空")
private String inpactloadStartup;
@ApiModelProperty(value = "冲击负荷启动容量倍数4")
@NotNull(message = "冲击负荷启动容量倍数不可为空")
private BigDecimal inpactloadMultiple;
/**
@@ -50,6 +52,7 @@ public class AssessDicShockLoadQuery extends BaseParam implements Serializable {
public static class UpdateAssessDicShockLoadQuery extends AssessDicShockLoadQuery {
@ApiModelProperty(value = "冲击负荷类型ID更新时必填d19c10178eeb4da2bca1df18a050524d", required = true)
@NotBlank(message = "冲击负荷类型ID不可为空")
private String inpactloadtypeId;
}
}

View File

@@ -14,6 +14,7 @@ import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* <p>
@@ -31,9 +32,13 @@ public class AssessUserQuery extends BaseParam implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "评估用户名称", required = true)
@NotBlank(message = "所属部门名称不可为空")
@NotBlank(message = "评估用户名称不可为空")
private String assessName;
@ApiModelProperty(value = "所属部门id南京市供电公司", required = true)
@NotBlank(message = "所属部门id不可为空")
private String deptId;
@ApiModelProperty(value = "所属部门名称,例:南京市供电公司", required = true)
@NotBlank(message = "所属部门名称不可为空")
private String deptName;
@@ -66,6 +71,8 @@ public class AssessUserQuery extends BaseParam implements Serializable {
@NotBlank(message = "变电站电压等级不可为空")
private String powerstationScale;
private List<String> powerstationScaleList;
@ApiModelProperty(value = "母线ID0012030456")
private String busId;
@@ -75,6 +82,8 @@ public class AssessUserQuery extends BaseParam implements Serializable {
@ApiModelProperty(value = "母线电压等级32。与PMS3.0内电压等级编码保持一致。")
private String busScale;
private List<String> busScaleList;
@ApiModelProperty(value = "线路ID0012030456")
private String lineId;

View File

@@ -30,6 +30,17 @@ public class AssessUser extends BaseEntity implements Serializable {
@TableId(value = "assess_id",type = IdType.ASSIGN_UUID)
private String assessId;
/**
* 部门id
*/
private String deptId;
/**
* 评估用户名称
*/
private String assessName;
/**
* 所属部门名称,例:南京市供电公司
*/

View File

@@ -94,8 +94,8 @@ public class AssessCapacitorParamController extends BaseController {
@ApiOperation("删除评估电容器参数")
@ApiImplicitParam(name = "capacitorId", value = "电容器组ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("capacitorId") String capacitorId) {
boolean result = assessCapacitorParamService.removeById(capacitorId);
public HttpResult<Boolean> delete(@RequestBody List<String> capacitorId) {
boolean result = assessCapacitorParamService.removeByIds(capacitorId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -1,5 +1,6 @@
package com.njcn.advance.controller.assess;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -57,8 +58,8 @@ public class AssessDicCableTypeController extends BaseController {
PageFactory.getPageSize(query)
);
LambdaQueryWrapper<AssessDicCableType> wrapper = Wrappers.<AssessDicCableType>lambdaQuery()
.like(query.getLinetypeName() != null, AssessDicCableType::getLinetypeName, query.getLinetypeName())
.eq(query.getLinetypeType() != null, AssessDicCableType::getLinetypeType, query.getLinetypeType());
.like(StrUtil.isNotBlank(query.getSearchValue()), AssessDicCableType::getLinetypeName, query.getSearchValue())
.eq(StrUtil.isNotBlank(query.getLinetypeType()), AssessDicCableType::getLinetypeType, query.getLinetypeType());
Page<AssessDicCableType> pageData = assessDicCableTypeService.page(pageParam, wrapper);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), pageData,
CommonResponseEnum.SUCCESS.getMessage());
@@ -92,8 +93,8 @@ public class AssessDicCableTypeController extends BaseController {
@ApiOperation("删除线缆类型字典")
@ApiImplicitParam(name = "linetypeId", value = "线路线缆类型ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("linetypeId") String linetypeId) {
boolean result = assessDicCableTypeService.removeById(linetypeId);
public HttpResult<Boolean> delete(@RequestBody List<String> linetypeId) {
boolean result = assessDicCableTypeService.removeByIds(linetypeId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -1,5 +1,6 @@
package com.njcn.advance.controller.assess;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -56,7 +57,7 @@ public class AssessDicHarmonicCharacterController extends BaseController {
PageFactory.getPageSize(query)
);
LambdaQueryWrapper<AssessDicHarmonicCharacter> wrapper = Wrappers.<AssessDicHarmonicCharacter>lambdaQuery()
.like(query.getHarmName() != null, AssessDicHarmonicCharacter::getHarmName, query.getHarmName());
.like(StrUtil.isNotBlank(query.getSearchValue()), AssessDicHarmonicCharacter::getHarmName, query.getSearchValue());
Page<AssessDicHarmonicCharacter> pageData = assessDicHarmonicCharacterService.page(pageParam, wrapper);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), pageData,
CommonResponseEnum.SUCCESS.getMessage());
@@ -90,8 +91,8 @@ public class AssessDicHarmonicCharacterController extends BaseController {
@ApiOperation("删除谐波源特性字典")
@ApiImplicitParam(name = "harmId", value = "谐波源特性字典ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("harmId") String harmId) {
boolean result = assessDicHarmonicCharacterService.removeById(harmId);
public HttpResult<Boolean> delete(@RequestBody List<String> harmId) {
boolean result = assessDicHarmonicCharacterService.removeByIds(harmId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -1,5 +1,6 @@
package com.njcn.advance.controller.assess;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -57,8 +58,8 @@ public class AssessDicShockLoadController extends BaseController {
PageFactory.getPageSize(query)
);
LambdaQueryWrapper<AssessDicShockLoad> wrapper = Wrappers.<AssessDicShockLoad>lambdaQuery()
.like(query.getInpactloadtypeName() != null, AssessDicShockLoad::getInpactloadtypeName, query.getInpactloadtypeName())
.eq(query.getInpactloadStartup() != null, AssessDicShockLoad::getInpactloadStartup, query.getInpactloadStartup());
.like(StrUtil.isNotBlank(query.getSearchValue()), AssessDicShockLoad::getInpactloadtypeName, query.getSearchValue())
.eq(StrUtil.isNotBlank(query.getInpactloadStartup()), AssessDicShockLoad::getInpactloadStartup, query.getInpactloadStartup());
Page<AssessDicShockLoad> pageData = assessDicShockLoadService.page(pageParam, wrapper);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), pageData,
CommonResponseEnum.SUCCESS.getMessage());
@@ -92,8 +93,8 @@ public class AssessDicShockLoadController extends BaseController {
@ApiOperation("删除冲击负荷字典")
@ApiImplicitParam(name = "inpactloadtypeId", value = "冲击负荷类型ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("inpactloadtypeId") String inpactloadtypeId) {
boolean result = assessDicShockLoadService.removeById(inpactloadtypeId);
public HttpResult<Boolean> delete(@RequestBody List<String> inpactloadtypeId) {
boolean result = assessDicShockLoadService.removeByIds(inpactloadtypeId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -1,5 +1,6 @@
package com.njcn.advance.controller.assess;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -58,9 +59,8 @@ public class AssessDicTransformerController extends BaseController {
PageFactory.getPageSize(query)
);
LambdaQueryWrapper<AssessDicTransformer> wrapper = Wrappers.<AssessDicTransformer>lambdaQuery()
.like(query.getTranstypeName() != null, AssessDicTransformer::getTranstypeName, query.getTranstypeName())
.eq(query.getTranshighScale() != null, AssessDicTransformer::getTranshighScale, query.getTranshighScale())
.eq(query.getTranslowScale() != null, AssessDicTransformer::getTranslowScale, query.getTranslowScale());
.like(StrUtil.isNotBlank(query.getSearchValue()), AssessDicTransformer::getTranstypeName, query.getSearchValue())
.orderByDesc(AssessDicTransformer::getCreateTime);
Page<AssessDicTransformer> pageData = assessDicTransformerService.page(pageParam, wrapper);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), pageData,
CommonResponseEnum.SUCCESS.getMessage());
@@ -94,8 +94,8 @@ public class AssessDicTransformerController extends BaseController {
@ApiOperation("删除变压器参数字典")
@ApiImplicitParam(name = "transtypeId", value = "变压器类型ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("transtypeId") String transtypeId) {
boolean result = assessDicTransformerService.removeById(transtypeId);
public HttpResult<Boolean> delete(@RequestBody List<String> transtypeId) {
boolean result = assessDicTransformerService.removeByIds(transtypeId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -92,8 +92,8 @@ public class AssessLoadParamController extends BaseController {
@ApiOperation("删除评估用户负荷参数")
@ApiImplicitParam(name = "loadId", value = "用户负荷ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("loadId") String loadId) {
boolean result = assessLoadParamService.removeById(loadId);
public HttpResult<Boolean> delete(@RequestBody List<String> loadId) {
boolean result = assessLoadParamService.removeByIds(loadId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -94,8 +94,8 @@ public class AssessShockLoadParamController extends BaseController {
@ApiOperation("删除评估用户冲击负荷参数")
@ApiImplicitParam(name = "inpactloadId", value = "冲击负荷ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("inpactloadId") String inpactloadId) {
boolean result = assessShockLoadParamService.removeById(inpactloadId);
public HttpResult<Boolean> delete(@RequestBody List<String> inpactloadId) {
boolean result = assessShockLoadParamService.removeByIds(inpactloadId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -94,8 +94,8 @@ public class AssessTransformerParamController extends BaseController {
@ApiOperation("删除评估变压器参数")
@ApiImplicitParam(name = "transId", value = "变压器ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("transId") String transId) {
boolean result = assessTransformerParamService.removeById(transId);
public HttpResult<Boolean> delete(@RequestBody List<String> transId) {
boolean result = assessTransformerParamService.removeByIds(transId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -1,6 +1,7 @@
package com.njcn.advance.controller.assess;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -52,11 +53,7 @@ public class AssessUserController extends BaseController {
@ApiOperation("分页查询评估用户")
@PostMapping("/page")
public HttpResult<Page<AssessUser>> page(@RequestBody AssessUserQuery assessUserQuery) {
Page<AssessUser> pageParam = new Page<>(PageFactory.getPageNum(assessUserQuery), PageFactory.getPageSize(assessUserQuery));
LambdaQueryWrapper<AssessUser> wrapper = Wrappers.<AssessUser>lambdaQuery()
.like(assessUserQuery.getDeptName() != null, AssessUser::getDeptName, assessUserQuery.getDeptName())
.like(assessUserQuery.getUserScale() != null, AssessUser::getUserScale, assessUserQuery.getUserScale());
Page<AssessUser> pageData = assessUserService.page(pageParam, wrapper);
Page<AssessUser> pageData = assessUserService.page(assessUserQuery);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), pageData,CommonResponseEnum.SUCCESS.getMessage());
}
@@ -70,9 +67,13 @@ public class AssessUserController extends BaseController {
@ApiOperation("新增评估用户")
@PostMapping("add")
public HttpResult<Boolean> add(@RequestBody @Validated AssessUserQuery assessUser) {
boolean result = assessUserService.add(assessUser);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,CommonResponseEnum.SUCCESS.getMessage());
public HttpResult<String> add(@RequestBody @Validated AssessUserQuery assessUser) {
String result = assessUserService.add(assessUser);
if(StrUtil.isNotBlank(result)){
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,CommonResponseEnum.SUCCESS.getMessage());
}else {
return HttpResultUtil.assembleResult(CommonResponseEnum.FAIL.getCode(), null,CommonResponseEnum.FAIL.getMessage());
}
}
@ApiOperation("修改评估用户")

View File

@@ -92,8 +92,8 @@ public class AssessWindLoadParamController extends BaseController {
@ApiOperation("删除风电场类负荷参数")
@ApiImplicitParam(name = "windgeneratorId", value = "风力发电机ID", required = true, type = "String")
@PostMapping("/delete")
public HttpResult<Boolean> delete(@RequestParam("windgeneratorId") String windgeneratorId) {
boolean result = assessWindLoadParamService.removeById(windgeneratorId);
public HttpResult<Boolean> delete(@RequestBody List<String> windgeneratorId) {
boolean result = assessWindLoadParamService.removeByIds(windgeneratorId);
return HttpResultUtil.assembleResult(CommonResponseEnum.SUCCESS.getCode(), result,
CommonResponseEnum.SUCCESS.getMessage());
}

View File

@@ -2,6 +2,7 @@ package com.njcn.advance.controller.assess;
import com.njcn.advance.pojo.carrycapacity.param.CarryCapacityQueryDataParam;
import com.njcn.advance.pojo.carrycapacity.vo.CarryCapacityDataVO;
import com.njcn.advance.pojo.dto.assess.AssessTreeDTO;
import com.njcn.advance.service.assess.SecondaryEvaluationService;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
@@ -17,6 +18,8 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* Description:
* Date: 2025/06/06 下午 2:43【需求编号】
@@ -39,4 +42,15 @@ public class SecondaryEvaluationController extends BaseController {
secondaryEvaluationService.evaluation(assessId,file);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,true , methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/evaluationTree")
@ApiOperation("评估-树")
public HttpResult<Boolean> evaluationTree(@RequestParam("deptId")String deptId) {
String methodDescribe = getMethodDescribe("evaluationTree");
List<AssessTreeDTO> tree = secondaryEvaluationService.evaluationTree(deptId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,true , methodDescribe);
}
}

View File

@@ -1,5 +1,6 @@
package com.njcn.advance.service.assess;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.advance.pojo.param.assess.AssessUserQuery;
import com.njcn.advance.pojo.po.assess.AssessUser;
@@ -15,6 +16,13 @@ import java.util.List;
* @since 2025-06-06
*/
public interface IAssessUserService extends IService<AssessUser> {
/**
* 根据评估ID查询用户信息
*/
Page<AssessUser> page(AssessUserQuery assessUserQuery);
/**
* 根据评估ID查询用户信息
*
@@ -29,7 +37,7 @@ public interface IAssessUserService extends IService<AssessUser> {
* @param assessUserQuery 评估用户
* @return 是否插入成功
*/
boolean add(AssessUserQuery assessUserQuery);
String add(AssessUserQuery assessUserQuery);
/**
* 批量更新评估用户数据

View File

@@ -1,7 +1,10 @@
package com.njcn.advance.service.assess;
import com.njcn.advance.pojo.dto.assess.AssessTreeDTO;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* Description:
* Date: 2025/06/06 下午 3:22【需求编号】
@@ -11,4 +14,6 @@ import org.springframework.web.multipart.MultipartFile;
*/
public interface SecondaryEvaluationService {
void evaluation(String assessId, MultipartFile file);
List<AssessTreeDTO> evaluationTree(String deptId);
}

View File

@@ -1,11 +1,20 @@
package com.njcn.advance.service.assess.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.advance.mapper.assess.AssessUserMapper;
import com.njcn.advance.pojo.param.assess.AssessUserQuery;
import com.njcn.advance.pojo.po.assess.AssessUser;
import com.njcn.advance.service.assess.IAssessUserService;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.web.factory.PageFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
@@ -23,17 +32,32 @@ import java.util.List;
@Service
public class AssessUserServiceImpl extends ServiceImpl<AssessUserMapper, AssessUser> implements IAssessUserService {
@Override
public Page<AssessUser> page(AssessUserQuery assessUserQuery) {
Page<AssessUser> pageParam = new Page<>(PageFactory.getPageNum(assessUserQuery), PageFactory.getPageSize(assessUserQuery));
LambdaQueryWrapper<AssessUser> wrapper = Wrappers.<AssessUser>lambdaQuery()
.eq(StrUtil.isNotBlank(assessUserQuery.getDeptName()), AssessUser::getDeptName, assessUserQuery.getDeptName())
.in(CollUtil.isNotEmpty(assessUserQuery.getBusScaleList()),AssessUser::getBusId,assessUserQuery.getBusScaleList())
.in(CollUtil.isNotEmpty(assessUserQuery.getPowerstationScaleList()),AssessUser::getPowerstationScale,assessUserQuery.getPowerstationScaleList())
.like(StrUtil.isNotBlank(assessUserQuery.getSearchValue()), AssessUser::getAssessName, assessUserQuery.getSearchValue())
.like(StrUtil.isNotBlank(assessUserQuery.getSearchValue()), AssessUser::getPowerstationName, assessUserQuery.getSearchValue());
Page<AssessUser> pageData = this.page(pageParam, wrapper);
return pageData;
}
@Override
public AssessUser getByAssessId(String assessId) {
return this.getById(assessId);
}
@Override
public boolean add(AssessUserQuery assessUserQuery) {
public String add(AssessUserQuery assessUserQuery) {
AssessUser assessUser = new AssessUser();
BeanUtils.copyProperties(assessUserQuery,assessUser);
assessUser.setAssessId(IdUtil.simpleUUID());
this.save(assessUser);
return true;
return assessUser.getAssessId();
}
@Override

View File

@@ -1,5 +1,7 @@
package com.njcn.advance.service.assess.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.advance.pojo.dto.assess.AssessTreeDTO;
import com.njcn.advance.pojo.dto.assess.HarmonicsIAndZDTO;
import com.njcn.advance.pojo.po.assess.*;
import com.njcn.advance.service.assess.*;
@@ -11,6 +13,7 @@ import com.njcn.device.biz.utils.COverlimitUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import lombok.RequiredArgsConstructor;
import org.apache.commons.math3.complex.Complex;
import org.springframework.stereotype.Service;
@@ -38,7 +41,7 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
private final IAssessLoadParamService iAssessLoadParamService;
private final IAssessDicHarmonicCharacterService iAssessDicHarmonicCharacterService;
private final DicDataFeignClient dicDataFeignClient;
private final DicDataFeignClient dicDataFeignClient;
private final IAssessDicTransformerService iAssessDicTransformerService;
private final IAssessTransformerParamService iAssessTransformerParamService;
@@ -52,12 +55,15 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
private final IAssessDicShockLoadService iAssessDicShockLoadService;
private final IAssessWindLoadParamService iAssessWindLoadParamService;
private final DeptFeignClient deptFeignClient;
@Override
@Transactional(rollbackFor = Exception.class)
public void evaluation(String assessId, MultipartFile file) {
//解析文件取CP95值 2-50次谐波电流含有率电压含有率负序电流三项不平衡度A,B,C三项最大
List<Double> iMax ;
List<Double> iMax;
Double unbalance;
List<Double> uMax;
Double iNeg;
@@ -119,7 +125,7 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
AssessResultAddition assessResultAddition = new AssessResultAddition();
AssessOverlimit assessOverlimit = new AssessOverlimit();
//取出电压字典
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeName (DicDataTypeEnum.DEV_VOLTAGE_STAND.getName ( )).getData ( );
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName()).getData();
/*************************************谐波评估算法**********************************/
// 1. 计算单个负荷谐波阻抗和谐波电流
@@ -128,11 +134,11 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
List<HarmonicsIAndZDTO> loadList = new ArrayList<>();
List<AssessLoadParam> assessLoadParamLista = iAssessLoadParamService.lambdaQuery().eq(AssessLoadParam::getAssessId, assessId).list();
if(CollectionUtils.isEmpty(assessLoadParamLista)){
if (CollectionUtils.isEmpty(assessLoadParamLista)) {
throw new BusinessException("评估用户负荷参数缺失");
}else {
assessLoadParamLista.forEach(temp->{
HarmonicsIAndZDTO zuphAndi =new HarmonicsIAndZDTO();
} else {
assessLoadParamLista.forEach(temp -> {
HarmonicsIAndZDTO zuphAndi = new HarmonicsIAndZDTO();
String harmId = temp.getHarmId();
AssessDicHarmonicCharacter byId = iAssessDicHarmonicCharacterService.getById(harmId);
Double[] harmDict = changeAssessDicHarmonicCharacter(byId);
@@ -150,7 +156,7 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
for (int i = 0; i < 49; i++) {
Complex complex = zln.getZ()[i];
Complex complex2 = zph.getZ()[i];
zuph[i] = complex.add(complex2).multiply(uln*uln/(pln*pln));
zuph[i] = complex.add(complex2).multiply(uln * uln / (pln * pln));
}
zuphAndi.setI(zln.getI());
zuphAndi.setZ(zuph);
@@ -167,27 +173,27 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
Double transUh = null;
AssessDicTransformer assessDicTransformer = new AssessDicTransformer();
AssessTransformerParam assessTransformerParam = iAssessTransformerParamService.lambdaQuery().eq(AssessTransformerParam::getAssessId, assessId).one();
if(Objects.nonNull(assessTransformerParam)){
if (Objects.nonNull(assessTransformerParam)) {
assessDicTransformer = iAssessDicTransformerService.lambdaQuery().eq(AssessDicTransformer::getTranstypeId, assessTransformerParam.getTranstypeId()).one();
transUl = getVoltage(assessDicTransformer.getTranslowScale(), dictDataList);
transUh = getVoltage(assessDicTransformer.getTranshighScale(), dictDataList);
Double sRt = assessDicTransformer.getTransCapa().doubleValue();
Double uKr = assessDicTransformer.getShortCircuitImpedance().doubleValue();
Double uKr = assessDicTransformer.getShortCircuitImpedance().doubleValue();
Double pKrt = assessDicTransformer.getLoadLoss().doubleValue();
transIAndZDTO = PowerQualityAlgorithmUtil.transZCal(sRt, transUl, uKr, pKrt);
}
// 5. 电容器组阻抗串联叠加
AssessCapacitorParam assessCapacitorParam = iAssessCapacitorParamService.lambdaQuery().eq(AssessCapacitorParam::getAssessId, assessId).one();
HarmonicsIAndZDTO capIAndZDTO ;
if(Objects.isNull(assessTransformerParam)){
HarmonicsIAndZDTO capIAndZDTO;
if (Objects.isNull(assessTransformerParam)) {
throw new BusinessException("评估用户电容器参数缺失");
}else {
} else {
Integer capacitorNum = assessCapacitorParam.getCapacitorNum();
double capacitorCapacity = assessCapacitorParam.getCapacitorCapacity().doubleValue();
double capacitorReactance = assessCapacitorParam.getCapacitorReactance().doubleValue();
double capacitorScale = getVoltage(assessCapacitorParam.getCapacitorScale(), dictDataList);
double capacitorScale = getVoltage(assessCapacitorParam.getCapacitorScale(), dictDataList);
capIAndZDTO = PowerQualityAlgorithmUtil.capacitorZCal(capacitorScale, capacitorCapacity, capacitorReactance, capacitorNum);
@@ -197,9 +203,9 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
AssessUser assessUser = iAssessUserService.lambdaQuery().eq(AssessUser::getAssessId, assessId).one();
Double userScale = getVoltage(assessUser.getUserScale(), dictDataList);
AssessDicCableType assessDicCableType = iAssessDicCableTypeService.lambdaQuery().eq(AssessDicCableType::getLinetypeId, assessUser.getLinetypeId()).one();
Double r1=assessDicCableType.getPosR1().doubleValue();
Double x1=assessDicCableType.getPosX1().doubleValue();
Double lineLen=assessUser.getLineLen().doubleValue();
Double r1 = assessDicCableType.getPosR1().doubleValue();
Double x1 = assessDicCableType.getPosX1().doubleValue();
Double lineLen = assessUser.getLineLen().doubleValue();
HarmonicsIAndZDTO lineIAndZDTO = PowerQualityAlgorithmUtil.lineZCal(r1, x1, lineLen);
// 7. 背景谐波阻抗串联叠加
@@ -218,25 +224,24 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
Double[] uph = new Double[49];
if(Objects.nonNull(assessTransformerParam)){
Double m = transUh/transUl;
if (Objects.nonNull(assessTransformerParam)) {
Double m = transUh / transUl;
for (int h = 0; h < 49; h++) {
zcph[h] = loadIAndZDTO.getZ()[h].add(transIAndZDTO.getZ()[h]).multiply(m*m)
zcph[h] = loadIAndZDTO.getZ()[h].add(transIAndZDTO.getZ()[h]).multiply(m * m)
.add(capIAndZDTO.getZ()[h])
.add(lineIAndZDTO.getZ()[h])
.add(bHarmIAndZDTO.getZ()[h]);
zph[h] = loadIAndZDTO.getZ()[h].add(transIAndZDTO.getZ()[h]).multiply(m*m)
zph[h] = loadIAndZDTO.getZ()[h].add(transIAndZDTO.getZ()[h]).multiply(m * m)
.add(lineIAndZDTO.getZ()[h])
.add(bHarmIAndZDTO.getZ()[h]);
ipch[h] = (loadIAndZDTO.getI()[h]/m)*(dMod(loadIAndZDTO.getZ()[h].divide(zcph[h])));
iph[h] =(loadIAndZDTO.getI()[h]/m)*(dMod(loadIAndZDTO.getZ()[h].divide(zph[h])));
ipch[h] = (loadIAndZDTO.getI()[h] / m) * (dMod(loadIAndZDTO.getZ()[h].divide(zcph[h])));
iph[h] = (loadIAndZDTO.getI()[h] / m) * (dMod(loadIAndZDTO.getZ()[h].divide(zph[h])));
upch[h] = ipch[h] * dMod(zcph[h])/1000;
uph[h] = iph[h] * dMod(zph[h])/1000;
upch[h] = ipch[h] * dMod(zcph[h]) / 1000;
uph[h] = iph[h] * dMod(zph[h]) / 1000;
}
}else {
} else {
for (int h = 0; h < 49; h++) {
zcph[h] = loadIAndZDTO.getZ()[h].add(capIAndZDTO.getZ()[h])
.add(lineIAndZDTO.getZ()[h])
@@ -245,11 +250,11 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
.add(lineIAndZDTO.getZ()[h])
.add(bHarmIAndZDTO.getZ()[h]);
ipch[h] = loadIAndZDTO.getI()[h]*(dMod(loadIAndZDTO.getZ()[h].divide(zcph[h])));
iph[h] =loadIAndZDTO.getI()[h]*(dMod(loadIAndZDTO.getZ()[h].divide(zph[h])));
ipch[h] = loadIAndZDTO.getI()[h] * (dMod(loadIAndZDTO.getZ()[h].divide(zcph[h])));
iph[h] = loadIAndZDTO.getI()[h] * (dMod(loadIAndZDTO.getZ()[h].divide(zph[h])));
upch[h] = ipch[h] * dMod(zcph[h])/1000;
uph[h] = iph[h] * dMod(zph[h])/1000;
upch[h] = ipch[h] * dMod(zcph[h]) / 1000;
uph[h] = iph[h] * dMod(zph[h]) / 1000;
}
}
@@ -262,11 +267,11 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
Double[] urh = new Double[49];
for (int h = 0; h < 49; h++) {
ich[h] = Math.sqrt(ipch[h]*ipch[h] +iMax.get(h)*iMax.get(h) +PowerQualityAlgorithmUtil.getK(h)*ipch[h]*iMax.get(h));
ih[h] = Math.sqrt(iph[h]*iph[h] +iMax.get(h)*iMax.get(h) +PowerQualityAlgorithmUtil.getK(h)*iph[h]*iMax.get(h));
ich[h] = Math.sqrt(ipch[h] * ipch[h] + iMax.get(h) * iMax.get(h) + PowerQualityAlgorithmUtil.getK(h) * ipch[h] * iMax.get(h));
ih[h] = Math.sqrt(iph[h] * iph[h] + iMax.get(h) * iMax.get(h) + PowerQualityAlgorithmUtil.getK(h) * iph[h] * iMax.get(h));
urch[h] = Math.sqrt(upch[h]*upch[h] +uMax.get(h)*uMax.get(h) +PowerQualityAlgorithmUtil.getK(h)*upch[h]*uMax.get(h))*100*1.732/userScale;
urh[h] = Math.sqrt(uph[h]*uph[h] +uMax.get(h)*uMax.get(h) +PowerQualityAlgorithmUtil.getK(h)*uph[h]*uMax.get(h))*100*1.732/userScale;
urch[h] = Math.sqrt(upch[h] * upch[h] + uMax.get(h) * uMax.get(h) + PowerQualityAlgorithmUtil.getK(h) * upch[h] * uMax.get(h)) * 100 * 1.732 / userScale;
urh[h] = Math.sqrt(uph[h] * uph[h] + uMax.get(h) * uMax.get(h) + PowerQualityAlgorithmUtil.getK(h) * uph[h] * uMax.get(h)) * 100 * 1.732 / userScale;
}
@@ -280,9 +285,9 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
/************************************电压波动算法**********************************/
//非风电场取冲击负荷最大的哪个
List<AssessShockLoadParam> assessShockLoadParams = iAssessShockLoadParamService.lambdaQuery().eq(AssessShockLoadParam::getAssessId, assessId).list();
assessShockLoadParams.forEach(temp->{
assessShockLoadParams.forEach(temp -> {
AssessDicShockLoad byId = iAssessDicShockLoadService.getById(temp.getInpactloadtypeId());
if(Objects.isNull(byId)){
if (Objects.isNull(byId)) {
throw new BusinessException("冲击负荷字典缺失");
}
temp.setInpactloadMultiple(byId.getInpactloadMultiple());
@@ -291,7 +296,7 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
String isWindfarm = assessUser.getIsWindfarm();
Double dMax;
if(Objects.equals(isWindfarm,"01")){
if (Objects.equals(isWindfarm, "01")) {
//风电场
dMax = VoltageFluctuationUtil.calculateWindFarmVoltageFluctuation(0.95,
assessUser.getWindfarmCapacity().doubleValue(),
@@ -299,7 +304,7 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
assessUser.getLineGridreactance().doubleValue(),
un.doubleValue(),
true);
}else if(Objects.equals(isWindfarm,"02")){
} else if (Objects.equals(isWindfarm, "02")) {
//光伏
dMax = VoltageFluctuationUtil.calculateWindFarmVoltageFluctuation(0.95,
assessUser.getWindfarmCapacity().doubleValue(),
@@ -307,37 +312,37 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
assessUser.getLineGridreactance().doubleValue(),
un.doubleValue(),
false);
}else if(Objects.equals(isWindfarm,"03")){
} else if (Objects.equals(isWindfarm, "03")) {
dMax = VoltageFluctuationUtil.calculateImpactLoadVoltageFluctuation(assessShockLoadParam.getInpactloadPower().doubleValue(),
assessShockLoadParam.getInpactloadMultiple().doubleValue(), scc);
}else{
throw new BusinessException("用户负荷类型不正确");
} else {
throw new BusinessException("用户负荷类型不正确");
}
double dmaxLimit = VoltageFluctuationUtil.getVoltageFluctuationLimit(un.doubleValue(), assessShockLoadParam.getInpactloadFreq());
/************************************电压闪变算法**********************************/
Double plt;
if(Objects.equals(isWindfarm,"01")){
if (Objects.equals(isWindfarm, "01")) {
List<AssessWindLoadParam> assessWindLoadParams = iAssessWindLoadParamService.lambdaQuery().eq(AssessWindLoadParam::getAssessId, assessId).list();
List<VoltageFlickerUtil.WindFarmLoads> windFarmLoadsList = assessWindLoadParams.stream().map(temp -> {
VoltageFlickerUtil.WindFarmLoads windFarmLoads = new VoltageFlickerUtil.WindFarmLoads();
windFarmLoads.setFlickerCoefficient(temp.getFlickerCoeff().doubleValue());
return windFarmLoads;
}).collect(Collectors.toList());
plt = VoltageFlickerUtil.calculateWindFarmFlicker(scc,windFarmLoadsList);
}else {
plt = VoltageFlickerUtil.calculateWindFarmFlicker(scc, windFarmLoadsList);
} else {
plt = VoltageFlickerUtil.calculateNonWindFarmFlicker(0.30, dMax);
}
double flickerLimit = VoltageFlickerUtil.getFlickerLimit(un);
/************************************电压偏差算法**********************************/
Double transformerNoLoadCurrent,transformerShortCircuitVoltage,transformerRatedCapacity;
if(Objects.nonNull(assessTransformerParam)){
Double transformerNoLoadCurrent, transformerShortCircuitVoltage, transformerRatedCapacity;
if (Objects.nonNull(assessTransformerParam)) {
transformerNoLoadCurrent = assessDicTransformer.getNoloadCur().doubleValue();
transformerShortCircuitVoltage = assessDicTransformer.getShortCircuitImpedance().doubleValue();
transformerRatedCapacity = assessDicTransformer.getTransCapa().doubleValue();
} else {
} else {
transformerNoLoadCurrent = 0.0;
transformerShortCircuitVoltage = 0.0;
transformerRatedCapacity = 1.0;
@@ -427,7 +432,7 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
//限值
double voltageUnbalanceLimit = ThreePhaseUnbalanceUtil.getVoltageUnbalanceLimit();
//组装结果
assessResult = assembleRsult(assessResult,assessId,
assessResult = assembleRsult(assessResult, assessId,
ih,
urh,
dMax,
@@ -446,14 +451,37 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
capOffL0Deltav,
accurUnblance,
approUnblance);
assessResultAddition = assembleRsultAddition(assessResultAddition,assessId,ich,urch,plt);
assessOverlimit = assembleOverlimit(assessOverlimit,assessId,overlimit,dmaxLimit,flickerLimit,voltageDeviationLimits,voltageUnbalanceLimit);
assessResultAddition = assembleRsultAddition(assessResultAddition, assessId, ich, urch, plt);
assessOverlimit = assembleOverlimit(assessOverlimit, assessId, overlimit, dmaxLimit, flickerLimit, voltageDeviationLimits, voltageUnbalanceLimit);
iAssessResultService.saveOrUpdate(assessResult);
iAssessResultAdditionService.saveOrUpdate(assessResultAddition);
iAssessOverlimitService.saveOrUpdate(assessOverlimit);
}
@Override
public List<AssessTreeDTO> evaluationTree(String deptId) {
List<AssessTreeDTO> result = new ArrayList<>();
List<String> deptIds = deptFeignClient.getDepSonIdtByDeptId(deptId).getData();
List<AssessUser> assessUserList = iAssessUserService.list(new LambdaQueryWrapper<AssessUser>().in(AssessUser::getDeptId, deptIds));
Map<String, List<AssessUser>> listMap = assessUserList.stream().collect(Collectors.groupingBy(AssessUser::getDeptName));
listMap.forEach((deptName, list) -> {
AssessTreeDTO assessTreeDTO = new AssessTreeDTO();
assessTreeDTO.setTreeId(list.get(0).getDeptId());
assessTreeDTO.setTreeName(deptName);
List<AssessTreeDTO> childrenList = new ArrayList<>();
list.forEach(it -> {
AssessTreeDTO children = new AssessTreeDTO();
children.setTreeId(it.getAssessId());
children.setTreeName(it.getAssessName());
childrenList.add(children);
});
assessTreeDTO.setChildren(childrenList);
result.add(assessTreeDTO);
});
return result;
}
private AssessOverlimit assembleOverlimit(AssessOverlimit assessOverlimit, String assessId, Overlimit overlimit, double dmaxLimit, double flickerLimit, VoltageDeviationUtil.VoltageDeviationLimits voltageDeviationLimits, double voltageUnbalanceLimit) {
assessOverlimit.setAssessId(assessId);
assessOverlimit.setVodd(BigDecimal.valueOf(overlimit.getUharm3()).setScale(3, RoundingMode.HALF_UP));
@@ -517,242 +545,243 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
return assessOverlimit;
}
private AssessResultAddition assembleRsultAddition(AssessResultAddition assessResultAddition,String assessId, Double[] ich, Double[] urch, Double plt) {
private AssessResultAddition assembleRsultAddition(AssessResultAddition assessResultAddition, String assessId, Double[] ich, Double[] urch, Double plt) {
assessResultAddition.setAssessId(assessId);
assessResultAddition.setDateTime(LocalDateTime.now());
assessResultAddition.setV2(BigDecimal.valueOf(urch[0]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV3(BigDecimal.valueOf(urch[1]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV4(BigDecimal.valueOf(urch[2]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV5(BigDecimal.valueOf(urch[3]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV6(BigDecimal.valueOf(urch[4]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV7(BigDecimal.valueOf(urch[5]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV8(BigDecimal.valueOf(urch[6]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV9(BigDecimal.valueOf(urch[7]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV10(BigDecimal.valueOf(urch[8]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV11(BigDecimal.valueOf(urch[9]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV12(BigDecimal.valueOf(urch[10]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV13(BigDecimal.valueOf(urch[11]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV14(BigDecimal.valueOf(urch[12]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV15(BigDecimal.valueOf(urch[13]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV16(BigDecimal.valueOf(urch[14]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV17(BigDecimal.valueOf(urch[15]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV18(BigDecimal.valueOf(urch[16]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV19(BigDecimal.valueOf(urch[17]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV20(BigDecimal.valueOf(urch[18]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV21(BigDecimal.valueOf(urch[19]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV22(BigDecimal.valueOf(urch[20]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV23(BigDecimal.valueOf(urch[21]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV24(BigDecimal.valueOf(urch[22]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV25(BigDecimal.valueOf(urch[23]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV26(BigDecimal.valueOf(urch[24]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV27(BigDecimal.valueOf(urch[25]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV28(BigDecimal.valueOf(urch[26]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV29(BigDecimal.valueOf(urch[27]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV30(BigDecimal.valueOf(urch[28]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV31(BigDecimal.valueOf(urch[29]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV32(BigDecimal.valueOf(urch[30]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV33(BigDecimal.valueOf(urch[31]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV34(BigDecimal.valueOf(urch[32]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV35(BigDecimal.valueOf(urch[33]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV36(BigDecimal.valueOf(urch[34]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV37(BigDecimal.valueOf(urch[35]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV38(BigDecimal.valueOf(urch[36]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV39(BigDecimal.valueOf(urch[37]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV40(BigDecimal.valueOf(urch[38]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV41(BigDecimal.valueOf(urch[39]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV42(BigDecimal.valueOf(urch[40]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV43(BigDecimal.valueOf(urch[41]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV44(BigDecimal.valueOf(urch[42]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV45(BigDecimal.valueOf(urch[43]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV46(BigDecimal.valueOf(urch[44]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV47(BigDecimal.valueOf(urch[45]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV48(BigDecimal.valueOf(urch[46]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV49(BigDecimal.valueOf(urch[47]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV50(BigDecimal.valueOf(urch[48]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI2(BigDecimal.valueOf(ich[0]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI3(BigDecimal.valueOf(ich[1]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI4(BigDecimal.valueOf(ich[2]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI5(BigDecimal.valueOf(ich[3]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI6(BigDecimal.valueOf(ich[4]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI7(BigDecimal.valueOf(ich[5]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI8(BigDecimal.valueOf(ich[6]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI9(BigDecimal.valueOf(ich[7]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI10(BigDecimal.valueOf(ich[8]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI11(BigDecimal.valueOf(ich[9]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI12(BigDecimal.valueOf(ich[10]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI13(BigDecimal.valueOf(ich[11]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI14(BigDecimal.valueOf(ich[12]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI15(BigDecimal.valueOf(ich[13]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI16(BigDecimal.valueOf(ich[14]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI17(BigDecimal.valueOf(ich[15]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI18(BigDecimal.valueOf(ich[16]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI19(BigDecimal.valueOf(ich[17]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI20(BigDecimal.valueOf(ich[18]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI21(BigDecimal.valueOf(ich[19]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI22(BigDecimal.valueOf(ich[20]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI23(BigDecimal.valueOf(ich[21]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI24(BigDecimal.valueOf(ich[22]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI25(BigDecimal.valueOf(ich[23]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI26(BigDecimal.valueOf(ich[24]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI27(BigDecimal.valueOf(ich[25]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI28(BigDecimal.valueOf(ich[26]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI29(BigDecimal.valueOf(ich[27]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI30(BigDecimal.valueOf(ich[28]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI31(BigDecimal.valueOf(ich[29]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI32(BigDecimal.valueOf(ich[30]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI33(BigDecimal.valueOf(ich[31]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI34(BigDecimal.valueOf(ich[32]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI35(BigDecimal.valueOf(ich[33]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI36(BigDecimal.valueOf(ich[34]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI37(BigDecimal.valueOf(ich[35]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI38(BigDecimal.valueOf(ich[36]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI39(BigDecimal.valueOf(ich[37]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI40(BigDecimal.valueOf(ich[38]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI41(BigDecimal.valueOf(ich[39]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI42(BigDecimal.valueOf(ich[40]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI43(BigDecimal.valueOf(ich[41]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI44(BigDecimal.valueOf(ich[42]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI45(BigDecimal.valueOf(ich[43]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI46(BigDecimal.valueOf(ich[44]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI47(BigDecimal.valueOf(ich[45]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI48(BigDecimal.valueOf(ich[46]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI49(BigDecimal.valueOf(ich[47]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setI50(BigDecimal.valueOf(ich[48]).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setPlt(BigDecimal.valueOf(plt).setScale(3,RoundingMode.HALF_UP));
assessResultAddition.setV3(BigDecimal.valueOf(urch[1]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV4(BigDecimal.valueOf(urch[2]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV5(BigDecimal.valueOf(urch[3]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV6(BigDecimal.valueOf(urch[4]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV7(BigDecimal.valueOf(urch[5]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV8(BigDecimal.valueOf(urch[6]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV9(BigDecimal.valueOf(urch[7]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV10(BigDecimal.valueOf(urch[8]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV11(BigDecimal.valueOf(urch[9]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV12(BigDecimal.valueOf(urch[10]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV13(BigDecimal.valueOf(urch[11]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV14(BigDecimal.valueOf(urch[12]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV15(BigDecimal.valueOf(urch[13]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV16(BigDecimal.valueOf(urch[14]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV17(BigDecimal.valueOf(urch[15]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV18(BigDecimal.valueOf(urch[16]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV19(BigDecimal.valueOf(urch[17]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV20(BigDecimal.valueOf(urch[18]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV21(BigDecimal.valueOf(urch[19]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV22(BigDecimal.valueOf(urch[20]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV23(BigDecimal.valueOf(urch[21]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV24(BigDecimal.valueOf(urch[22]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV25(BigDecimal.valueOf(urch[23]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV26(BigDecimal.valueOf(urch[24]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV27(BigDecimal.valueOf(urch[25]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV28(BigDecimal.valueOf(urch[26]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV29(BigDecimal.valueOf(urch[27]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV30(BigDecimal.valueOf(urch[28]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV31(BigDecimal.valueOf(urch[29]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV32(BigDecimal.valueOf(urch[30]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV33(BigDecimal.valueOf(urch[31]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV34(BigDecimal.valueOf(urch[32]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV35(BigDecimal.valueOf(urch[33]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV36(BigDecimal.valueOf(urch[34]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV37(BigDecimal.valueOf(urch[35]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV38(BigDecimal.valueOf(urch[36]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV39(BigDecimal.valueOf(urch[37]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV40(BigDecimal.valueOf(urch[38]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV41(BigDecimal.valueOf(urch[39]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV42(BigDecimal.valueOf(urch[40]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV43(BigDecimal.valueOf(urch[41]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV44(BigDecimal.valueOf(urch[42]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV45(BigDecimal.valueOf(urch[43]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV46(BigDecimal.valueOf(urch[44]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV47(BigDecimal.valueOf(urch[45]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV48(BigDecimal.valueOf(urch[46]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV49(BigDecimal.valueOf(urch[47]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setV50(BigDecimal.valueOf(urch[48]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI2(BigDecimal.valueOf(ich[0]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI3(BigDecimal.valueOf(ich[1]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI4(BigDecimal.valueOf(ich[2]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI5(BigDecimal.valueOf(ich[3]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI6(BigDecimal.valueOf(ich[4]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI7(BigDecimal.valueOf(ich[5]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI8(BigDecimal.valueOf(ich[6]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI9(BigDecimal.valueOf(ich[7]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI10(BigDecimal.valueOf(ich[8]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI11(BigDecimal.valueOf(ich[9]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI12(BigDecimal.valueOf(ich[10]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI13(BigDecimal.valueOf(ich[11]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI14(BigDecimal.valueOf(ich[12]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI15(BigDecimal.valueOf(ich[13]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI16(BigDecimal.valueOf(ich[14]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI17(BigDecimal.valueOf(ich[15]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI18(BigDecimal.valueOf(ich[16]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI19(BigDecimal.valueOf(ich[17]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI20(BigDecimal.valueOf(ich[18]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI21(BigDecimal.valueOf(ich[19]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI22(BigDecimal.valueOf(ich[20]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI23(BigDecimal.valueOf(ich[21]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI24(BigDecimal.valueOf(ich[22]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI25(BigDecimal.valueOf(ich[23]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI26(BigDecimal.valueOf(ich[24]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI27(BigDecimal.valueOf(ich[25]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI28(BigDecimal.valueOf(ich[26]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI29(BigDecimal.valueOf(ich[27]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI30(BigDecimal.valueOf(ich[28]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI31(BigDecimal.valueOf(ich[29]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI32(BigDecimal.valueOf(ich[30]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI33(BigDecimal.valueOf(ich[31]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI34(BigDecimal.valueOf(ich[32]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI35(BigDecimal.valueOf(ich[33]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI36(BigDecimal.valueOf(ich[34]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI37(BigDecimal.valueOf(ich[35]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI38(BigDecimal.valueOf(ich[36]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI39(BigDecimal.valueOf(ich[37]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI40(BigDecimal.valueOf(ich[38]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI41(BigDecimal.valueOf(ich[39]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI42(BigDecimal.valueOf(ich[40]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI43(BigDecimal.valueOf(ich[41]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI44(BigDecimal.valueOf(ich[42]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI45(BigDecimal.valueOf(ich[43]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI46(BigDecimal.valueOf(ich[44]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI47(BigDecimal.valueOf(ich[45]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI48(BigDecimal.valueOf(ich[46]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI49(BigDecimal.valueOf(ich[47]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setI50(BigDecimal.valueOf(ich[48]).setScale(3, RoundingMode.HALF_UP));
assessResultAddition.setPlt(BigDecimal.valueOf(plt).setScale(3, RoundingMode.HALF_UP));
return assessResultAddition;
}
private AssessResult assembleRsult(AssessResult assessResult,String assessId, Double[] ih, Double[] urh, Double dMax, Double plt, double capOnH100Deltav, double capOnH60Deltav, double capOnH0Deltav, double capOffH100Deltav, double capOffH60Deltav, double capOffH0Deltav, double capOnL100Deltav, double capOnL60Deltav, double capOnL0Deltav, double capOffL100Deltav, double capOffL65Deltav, double capOffL0Deltav, double accurUnblance, double approUnblance) {
private AssessResult assembleRsult(AssessResult assessResult, String assessId, Double[] ih, Double[] urh, Double dMax, Double plt, double capOnH100Deltav, double capOnH60Deltav, double capOnH0Deltav, double capOffH100Deltav, double capOffH60Deltav, double capOffH0Deltav, double capOnL100Deltav, double capOnL60Deltav, double capOnL0Deltav, double capOffL100Deltav, double capOffL65Deltav, double capOffL0Deltav, double accurUnblance, double approUnblance) {
assessResult.setAssessId(assessId);
assessResult.setDateTime(LocalDateTime.now());
assessResult.setV2(BigDecimal.valueOf(urh[0]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV3(BigDecimal.valueOf(urh[1]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV4(BigDecimal.valueOf(urh[2]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV5(BigDecimal.valueOf(urh[3]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV6(BigDecimal.valueOf(urh[4]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV7(BigDecimal.valueOf(urh[5]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV8(BigDecimal.valueOf(urh[6]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV9(BigDecimal.valueOf(urh[7]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV10(BigDecimal.valueOf(urh[8]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV11(BigDecimal.valueOf(urh[9]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV12(BigDecimal.valueOf(urh[10]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV13(BigDecimal.valueOf(urh[11]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV14(BigDecimal.valueOf(urh[12]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV15(BigDecimal.valueOf(urh[13]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV16(BigDecimal.valueOf(urh[14]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV17(BigDecimal.valueOf(urh[15]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV18(BigDecimal.valueOf(urh[16]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV19(BigDecimal.valueOf(urh[17]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV20(BigDecimal.valueOf(urh[18]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV21(BigDecimal.valueOf(urh[19]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV22(BigDecimal.valueOf(urh[20]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV23(BigDecimal.valueOf(urh[21]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV24(BigDecimal.valueOf(urh[22]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV25(BigDecimal.valueOf(urh[23]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV26(BigDecimal.valueOf(urh[24]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV27(BigDecimal.valueOf(urh[25]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV28(BigDecimal.valueOf(urh[26]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV29(BigDecimal.valueOf(urh[27]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV30(BigDecimal.valueOf(urh[28]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV31(BigDecimal.valueOf(urh[29]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV32(BigDecimal.valueOf(urh[30]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV33(BigDecimal.valueOf(urh[31]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV34(BigDecimal.valueOf(urh[32]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV35(BigDecimal.valueOf(urh[33]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV36(BigDecimal.valueOf(urh[34]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV37(BigDecimal.valueOf(urh[35]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV38(BigDecimal.valueOf(urh[36]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV39(BigDecimal.valueOf(urh[37]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV40(BigDecimal.valueOf(urh[38]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV41(BigDecimal.valueOf(urh[39]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV42(BigDecimal.valueOf(urh[40]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV43(BigDecimal.valueOf(urh[41]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV44(BigDecimal.valueOf(urh[42]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV45(BigDecimal.valueOf(urh[43]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV46(BigDecimal.valueOf(urh[44]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV47(BigDecimal.valueOf(urh[45]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV48(BigDecimal.valueOf(urh[46]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV49(BigDecimal.valueOf(urh[47]).setScale(3,RoundingMode.HALF_UP));
assessResult.setV50(BigDecimal.valueOf(urh[48]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI2(BigDecimal.valueOf(ih[0]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI3(BigDecimal.valueOf(ih[1]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI4(BigDecimal.valueOf(ih[2]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI5(BigDecimal.valueOf(ih[3]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI6(BigDecimal.valueOf(ih[4]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI7(BigDecimal.valueOf(ih[5]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI8(BigDecimal.valueOf(ih[6]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI9(BigDecimal.valueOf(ih[7]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI10(BigDecimal.valueOf(ih[8]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI11(BigDecimal.valueOf(ih[9]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI12(BigDecimal.valueOf(ih[10]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI13(BigDecimal.valueOf(ih[11]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI14(BigDecimal.valueOf(ih[12]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI15(BigDecimal.valueOf(ih[13]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI16(BigDecimal.valueOf(ih[14]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI17(BigDecimal.valueOf(ih[15]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI18(BigDecimal.valueOf(ih[16]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI19(BigDecimal.valueOf(ih[17]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI20(BigDecimal.valueOf(ih[18]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI21(BigDecimal.valueOf(ih[19]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI22(BigDecimal.valueOf(ih[20]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI23(BigDecimal.valueOf(ih[21]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI24(BigDecimal.valueOf(ih[22]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI25(BigDecimal.valueOf(ih[23]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI26(BigDecimal.valueOf(ih[24]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI27(BigDecimal.valueOf(ih[25]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI28(BigDecimal.valueOf(ih[26]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI29(BigDecimal.valueOf(ih[27]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI30(BigDecimal.valueOf(ih[28]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI31(BigDecimal.valueOf(ih[29]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI32(BigDecimal.valueOf(ih[30]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI33(BigDecimal.valueOf(ih[31]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI34(BigDecimal.valueOf(ih[32]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI35(BigDecimal.valueOf(ih[33]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI36(BigDecimal.valueOf(ih[34]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI37(BigDecimal.valueOf(ih[35]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI38(BigDecimal.valueOf(ih[36]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI39(BigDecimal.valueOf(ih[37]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI40(BigDecimal.valueOf(ih[38]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI41(BigDecimal.valueOf(ih[39]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI42(BigDecimal.valueOf(ih[40]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI43(BigDecimal.valueOf(ih[41]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI44(BigDecimal.valueOf(ih[42]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI45(BigDecimal.valueOf(ih[43]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI46(BigDecimal.valueOf(ih[44]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI47(BigDecimal.valueOf(ih[45]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI48(BigDecimal.valueOf(ih[46]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI49(BigDecimal.valueOf(ih[47]).setScale(3,RoundingMode.HALF_UP));
assessResult.setI50(BigDecimal.valueOf(ih[48]).setScale(3,RoundingMode.HALF_UP));
assessResult.setPlt(BigDecimal.valueOf(plt).setScale(3,RoundingMode.HALF_UP));
assessResult.setApproFluc(BigDecimal.valueOf(dMax).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOnH100Deltav(BigDecimal.valueOf(capOnH100Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOnH60Deltav(BigDecimal.valueOf(capOnH60Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOnH0Deltav(BigDecimal.valueOf(capOnH0Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOffH100Deltav(BigDecimal.valueOf(capOffH100Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOffH60Deltav(BigDecimal.valueOf(capOffH60Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOffH0Deltav(BigDecimal.valueOf(capOffH0Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOnL100Deltav(BigDecimal.valueOf(capOnL100Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOnL60Deltav(BigDecimal.valueOf(capOnL60Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOnL0Deltav(BigDecimal.valueOf(capOnL0Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOffL100Deltav(BigDecimal.valueOf(capOffL100Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOffL60Deltav(BigDecimal.valueOf(capOffL65Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setCapOffL0Deltav(BigDecimal.valueOf(capOffL0Deltav).setScale(3,RoundingMode.HALF_UP));
assessResult.setApproUnblance(BigDecimal.valueOf(approUnblance).setScale(3,RoundingMode.HALF_UP));
assessResult.setAccurUnblance(BigDecimal.valueOf(accurUnblance).setScale(3,RoundingMode.HALF_UP));
assessResult.setV3(BigDecimal.valueOf(urh[1]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV4(BigDecimal.valueOf(urh[2]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV5(BigDecimal.valueOf(urh[3]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV6(BigDecimal.valueOf(urh[4]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV7(BigDecimal.valueOf(urh[5]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV8(BigDecimal.valueOf(urh[6]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV9(BigDecimal.valueOf(urh[7]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV10(BigDecimal.valueOf(urh[8]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV11(BigDecimal.valueOf(urh[9]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV12(BigDecimal.valueOf(urh[10]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV13(BigDecimal.valueOf(urh[11]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV14(BigDecimal.valueOf(urh[12]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV15(BigDecimal.valueOf(urh[13]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV16(BigDecimal.valueOf(urh[14]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV17(BigDecimal.valueOf(urh[15]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV18(BigDecimal.valueOf(urh[16]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV19(BigDecimal.valueOf(urh[17]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV20(BigDecimal.valueOf(urh[18]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV21(BigDecimal.valueOf(urh[19]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV22(BigDecimal.valueOf(urh[20]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV23(BigDecimal.valueOf(urh[21]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV24(BigDecimal.valueOf(urh[22]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV25(BigDecimal.valueOf(urh[23]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV26(BigDecimal.valueOf(urh[24]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV27(BigDecimal.valueOf(urh[25]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV28(BigDecimal.valueOf(urh[26]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV29(BigDecimal.valueOf(urh[27]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV30(BigDecimal.valueOf(urh[28]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV31(BigDecimal.valueOf(urh[29]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV32(BigDecimal.valueOf(urh[30]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV33(BigDecimal.valueOf(urh[31]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV34(BigDecimal.valueOf(urh[32]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV35(BigDecimal.valueOf(urh[33]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV36(BigDecimal.valueOf(urh[34]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV37(BigDecimal.valueOf(urh[35]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV38(BigDecimal.valueOf(urh[36]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV39(BigDecimal.valueOf(urh[37]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV40(BigDecimal.valueOf(urh[38]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV41(BigDecimal.valueOf(urh[39]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV42(BigDecimal.valueOf(urh[40]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV43(BigDecimal.valueOf(urh[41]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV44(BigDecimal.valueOf(urh[42]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV45(BigDecimal.valueOf(urh[43]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV46(BigDecimal.valueOf(urh[44]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV47(BigDecimal.valueOf(urh[45]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV48(BigDecimal.valueOf(urh[46]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV49(BigDecimal.valueOf(urh[47]).setScale(3, RoundingMode.HALF_UP));
assessResult.setV50(BigDecimal.valueOf(urh[48]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI2(BigDecimal.valueOf(ih[0]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI3(BigDecimal.valueOf(ih[1]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI4(BigDecimal.valueOf(ih[2]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI5(BigDecimal.valueOf(ih[3]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI6(BigDecimal.valueOf(ih[4]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI7(BigDecimal.valueOf(ih[5]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI8(BigDecimal.valueOf(ih[6]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI9(BigDecimal.valueOf(ih[7]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI10(BigDecimal.valueOf(ih[8]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI11(BigDecimal.valueOf(ih[9]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI12(BigDecimal.valueOf(ih[10]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI13(BigDecimal.valueOf(ih[11]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI14(BigDecimal.valueOf(ih[12]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI15(BigDecimal.valueOf(ih[13]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI16(BigDecimal.valueOf(ih[14]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI17(BigDecimal.valueOf(ih[15]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI18(BigDecimal.valueOf(ih[16]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI19(BigDecimal.valueOf(ih[17]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI20(BigDecimal.valueOf(ih[18]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI21(BigDecimal.valueOf(ih[19]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI22(BigDecimal.valueOf(ih[20]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI23(BigDecimal.valueOf(ih[21]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI24(BigDecimal.valueOf(ih[22]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI25(BigDecimal.valueOf(ih[23]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI26(BigDecimal.valueOf(ih[24]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI27(BigDecimal.valueOf(ih[25]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI28(BigDecimal.valueOf(ih[26]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI29(BigDecimal.valueOf(ih[27]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI30(BigDecimal.valueOf(ih[28]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI31(BigDecimal.valueOf(ih[29]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI32(BigDecimal.valueOf(ih[30]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI33(BigDecimal.valueOf(ih[31]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI34(BigDecimal.valueOf(ih[32]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI35(BigDecimal.valueOf(ih[33]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI36(BigDecimal.valueOf(ih[34]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI37(BigDecimal.valueOf(ih[35]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI38(BigDecimal.valueOf(ih[36]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI39(BigDecimal.valueOf(ih[37]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI40(BigDecimal.valueOf(ih[38]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI41(BigDecimal.valueOf(ih[39]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI42(BigDecimal.valueOf(ih[40]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI43(BigDecimal.valueOf(ih[41]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI44(BigDecimal.valueOf(ih[42]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI45(BigDecimal.valueOf(ih[43]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI46(BigDecimal.valueOf(ih[44]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI47(BigDecimal.valueOf(ih[45]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI48(BigDecimal.valueOf(ih[46]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI49(BigDecimal.valueOf(ih[47]).setScale(3, RoundingMode.HALF_UP));
assessResult.setI50(BigDecimal.valueOf(ih[48]).setScale(3, RoundingMode.HALF_UP));
assessResult.setPlt(BigDecimal.valueOf(plt).setScale(3, RoundingMode.HALF_UP));
assessResult.setApproFluc(BigDecimal.valueOf(dMax).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOnH100Deltav(BigDecimal.valueOf(capOnH100Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOnH60Deltav(BigDecimal.valueOf(capOnH60Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOnH0Deltav(BigDecimal.valueOf(capOnH0Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOffH100Deltav(BigDecimal.valueOf(capOffH100Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOffH60Deltav(BigDecimal.valueOf(capOffH60Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOffH0Deltav(BigDecimal.valueOf(capOffH0Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOnL100Deltav(BigDecimal.valueOf(capOnL100Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOnL60Deltav(BigDecimal.valueOf(capOnL60Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOnL0Deltav(BigDecimal.valueOf(capOnL0Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOffL100Deltav(BigDecimal.valueOf(capOffL100Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOffL60Deltav(BigDecimal.valueOf(capOffL65Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setCapOffL0Deltav(BigDecimal.valueOf(capOffL0Deltav).setScale(3, RoundingMode.HALF_UP));
assessResult.setApproUnblance(BigDecimal.valueOf(approUnblance).setScale(3, RoundingMode.HALF_UP));
assessResult.setAccurUnblance(BigDecimal.valueOf(accurUnblance).setScale(3, RoundingMode.HALF_UP));
return assessResult;
}
private Double[] changeAssessDicHarmonicCharacter(AssessDicHarmonicCharacter byId) {
Double[] doubles = new Double[49];
Double[] doubles = new Double[49];
for (int h = 0; h < 49; h++) {
doubles[h] =((BigDecimal) ReflectUtils.getValue(byId,"i"+(h+2))).doubleValue();
doubles[h] = ((BigDecimal) ReflectUtils.getValue(byId, "i" + (h + 2))).doubleValue();
}
return doubles;
}
/**
* @Description: 根据电压字典获取电压等级
* @Param: [id, dictDataList]
@@ -762,16 +791,16 @@ public class SecondaryEvaluationServiceImpl implements SecondaryEvaluationServic
*/
private Double getVoltage(String id, List<DictData> dictDataList) {
for (DictData dictData : dictDataList) {
if (dictData.getId ( ).equals (id)) {
Double result = Double.valueOf (dictData.getValue ( ));
if (dictData.getId().equals(id)) {
Double result = Double.valueOf(dictData.getValue());
return result;
}
}
throw new BusinessException("电压等级有误");
}
private double dMod(Complex complex){
return Math.sqrt(complex.getReal()*complex.getReal()+complex.getImaginary()*complex.getImaginary());
private double dMod(Complex complex) {
return Math.sqrt(complex.getReal() * complex.getReal() + complex.getImaginary() * complex.getImaginary());
}
}

View File

@@ -0,0 +1,19 @@
package com.njcn.device.pq.pojo.vo;
import lombok.Data;
/**
* @Author: cdf
* @CreateTime: 2025-06-16
* @Description:
*/
@Data
public class LedgerSelectVO {
private String id;
private String name;
private String voltageLevel;
private String voltageName;
}

View File

@@ -573,4 +573,7 @@ public class LineController extends BaseController {
List<PollutionSubstationDTO> list = lineService.getPowerStationByMonitorIds(ids);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
}

View File

@@ -11,6 +11,7 @@ import com.njcn.device.pq.pojo.param.AlarmStrategyParam;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.pq.pojo.vo.AlarmStrategyVO;
import com.njcn.device.pq.pojo.vo.LedgerSelectVO;
import com.njcn.device.pq.service.AlarmStrategyService;
import com.njcn.device.pq.service.ISubstationService;
import com.njcn.web.controller.BaseController;
@@ -53,9 +54,29 @@ public class SubstationController extends BaseController {
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("获取变电站列表")
@GetMapping("getSubstationSelect")
HttpResult<List<Line>> getSubstationSelect(){
HttpResult<List<LedgerSelectVO>> getSubstationSelect(){
String methodDescribe = getMethodDescribe("getSubstationSelect");
List<Line> substationDTOList = substationService.getSubstationSelect();
List<LedgerSelectVO> substationDTOList = substationService.getSubstationSelect();
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, substationDTOList, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("获取变电站下面监测点")
@GetMapping("getMonitorSelect")
HttpResult<List<Line>> getMonitorSelect(@RequestParam("stationId")String stationId){
String methodDescribe = getMethodDescribe("getMonitorSelect");
List<Line> substationDTOList = substationService.getMonitorSelect(stationId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, substationDTOList, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("获取变电站下面的母线列表")
@GetMapping("getBusBarSelect")
HttpResult<List<LedgerSelectVO>> getBusBarSelect(@RequestParam("stationId")String stationId){
String methodDescribe = getMethodDescribe("getBusBarSelect");
List<LedgerSelectVO> substationDTOList = substationService.getBusBarSelect(stationId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, substationDTOList, methodDescribe);
}

View File

@@ -5,6 +5,7 @@ import com.njcn.device.pq.pojo.dto.SubstationDTO;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.pq.pojo.po.Substation;
import com.njcn.device.pq.pojo.vo.LedgerSelectVO;
import java.util.List;
@@ -23,7 +24,11 @@ public interface ISubstationService extends IService<Substation> {
*/
List<SubstationDTO> getSubstationById(List<String> subId);
List<Line> getSubstationSelect();
List<LedgerSelectVO> getSubstationSelect();
List<LedgerSelectVO> getBusBarSelect(String stationId);
List<Line> getMonitorSelect(String stationId);
List<LineDetail> getPowerByStationId(String stationId,Integer powerFlag);
}

View File

@@ -1,5 +1,6 @@
package com.njcn.device.pq.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -9,12 +10,19 @@ import com.njcn.device.pq.enums.PowerFlagEnum;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.SubstationMapper;
import com.njcn.device.pq.mapper.VoltageMapper;
import com.njcn.device.pq.pojo.dto.SubstationDTO;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.pq.pojo.po.Substation;
import com.njcn.device.pq.pojo.po.Voltage;
import com.njcn.device.pq.pojo.vo.LedgerSelectVO;
import com.njcn.device.pq.pojo.vo.LineDetailVO;
import com.njcn.device.pq.service.ISubstationService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -35,17 +43,68 @@ public class SubstationServiceImpl extends ServiceImpl<SubstationMapper, Substat
private final LineDetailMapper lineDetailMapper;
private final VoltageMapper voltageMapper;
private final SubstationMapper substationMapper;
private final DicDataFeignClient dicDataFeignClient;
@Override
public List<SubstationDTO> getSubstationById(List<String> subId) {
return this.baseMapper.getSubstationById(subId);
}
@Override
public List<Line> getSubstationSelect() {
public List<LedgerSelectVO> getSubstationSelect() {
List<LedgerSelectVO> result = new ArrayList<>();
LambdaQueryWrapper<Line> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(Line::getLevel, LineBaseEnum.SUB_LEVEL.getCode())
.eq(Line::getState, DataStateEnum.ENABLE.getCode()).orderByAsc(Line::getCreateTime);
return lineMapper.selectList(lambdaQueryWrapper);
List<Line> stationList = lineMapper.selectList(lambdaQueryWrapper);
List<String> ids = stationList.stream().map(Line::getId).collect(Collectors.toList());
List<Substation> substationList = substationMapper.selectBatchIds(ids);
Map<String,Substation> stationMap = substationList.stream().collect(Collectors.toMap(Substation::getId,Function.identity()));
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE_STAND.getCode()).getData();
Map<String,DictData> dictDataMap = dictDataList.stream().collect(Collectors.toMap(DictData::getId,Function.identity()));
stationList.forEach(item->{
LedgerSelectVO ledgerSelectVO = new LedgerSelectVO();
BeanUtil.copyProperties(item,ledgerSelectVO);
ledgerSelectVO.setVoltageLevel(stationMap.get(item.getId()).getScale());
ledgerSelectVO.setVoltageName(dictDataMap.get(ledgerSelectVO.getVoltageLevel()).getName());
result.add(ledgerSelectVO);
});
return result;
}
@Override
public List<LedgerSelectVO> getBusBarSelect(String stationId) {
List<LedgerSelectVO> result = new ArrayList<>();
LambdaQueryWrapper<Line> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.like(Line::getPids,stationId).eq(Line::getLevel,LineBaseEnum.SUB_V_LEVEL);
List<Line> busBarList = lineMapper.selectList(lambdaQueryWrapper);
List<String> ids = busBarList.stream().map(Line::getId).collect(Collectors.toList());
List<Voltage> voltageList = voltageMapper.selectBatchIds(ids);
Map<String,Voltage> voltageMap = voltageList.stream().collect(Collectors.toMap(Voltage::getId,Function.identity()));
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE_STAND.getCode()).getData();
Map<String,DictData> dictDataMap = dictDataList.stream().collect(Collectors.toMap(DictData::getId,Function.identity()));
busBarList.forEach(item->{
LedgerSelectVO ledgerSelectVO = new LedgerSelectVO();
BeanUtil.copyProperties(item,ledgerSelectVO);
ledgerSelectVO.setVoltageLevel(voltageMap.get(item.getId()).getScale());
ledgerSelectVO.setVoltageName(dictDataMap.get(ledgerSelectVO.getVoltageLevel()).getName());
result.add(ledgerSelectVO);
});
return result;
}
@Override
public List<Line> getMonitorSelect(String stationId) {
LambdaQueryWrapper<Line> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.like(Line::getPids,stationId).eq(Line::getLevel,LineBaseEnum.LINE_LEVEL);
List<Line> lineList = lineMapper.selectList(lambdaQueryWrapper);
return lineList;
}
@Override