feat(harmonic): 添加稳态指标方案与监测点关联功能
- 新增根据名称查询稳态指标方案的接口和实现 - 添加方案与监测点关联的保存和删除接口 - 在设备交付服务中集成稳态指标方案配置功能 - 实现监测点创建时自动关联默认方案 - 完善相关Feign客户端和服务降级处理 - 优化方法命名规范统一小写开头
This commit is contained in:
@@ -9,6 +9,8 @@ import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author xy
|
||||
*/
|
||||
@@ -19,4 +21,8 @@ public interface CsHarmonicPlanFeignClient {
|
||||
@ApiOperation("根据ID查询稳态指标方案")
|
||||
HttpResult<CsHarmonicPlan> getById(@RequestParam("id") String id);
|
||||
|
||||
@GetMapping("/getByName")
|
||||
@ApiOperation("根据名称查询稳态指标方案")
|
||||
HttpResult<List<CsHarmonicPlan>> getByName(@RequestParam("name") String name);
|
||||
|
||||
}
|
||||
|
||||
@@ -3,11 +3,17 @@ package com.njcn.csharmonic.api;
|
||||
import com.njcn.common.pojo.constant.ServerInfo;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.csharmonic.api.fallback.CsHarmonicPlanLineFeignClientFallbackFactory;
|
||||
import com.njcn.csharmonic.param.CsHarmonicPlanLineParam;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author xy
|
||||
*/
|
||||
@@ -18,4 +24,12 @@ public interface CsHarmonicPlanLineFeignClient {
|
||||
@ApiOperation("根据监测点ID查询方案ID")
|
||||
HttpResult<String> getPlanIdByLineId(@RequestParam("lineId") String lineId);
|
||||
|
||||
@PostMapping("/savePlanLines")
|
||||
@ApiOperation("新增方案与监测点关联")
|
||||
HttpResult<Boolean> savePlanLines(@RequestBody @Validated CsHarmonicPlanLineParam param);
|
||||
|
||||
@PostMapping("/deleteByLineIds")
|
||||
@ApiOperation("根据监测点ID集合删除关联")
|
||||
HttpResult<Boolean> deleteByLineIds(@RequestBody List<String> lineIds);
|
||||
|
||||
}
|
||||
|
||||
@@ -3,9 +3,7 @@ package com.njcn.csharmonic.api.fallback;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.csharmonic.api.CsHarmonicFeignClient;
|
||||
import com.njcn.csharmonic.api.CsHarmonicPlanFeignClient;
|
||||
import com.njcn.csharmonic.pojo.po.CsHarmonic;
|
||||
import com.njcn.csharmonic.pojo.po.CsHarmonicPlan;
|
||||
import feign.hystrix.FallbackFactory;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -34,6 +32,12 @@ public class CsHarmonicPlanFeignClientFallbackFactory implements FallbackFactory
|
||||
log.error("{}异常,降级处理,异常为:{}","根据ID查询稳态指标方案异常",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<List<CsHarmonicPlan>> getByName(String name) {
|
||||
log.error("{}异常,降级处理,异常为:{}","根据名称查询稳态指标方案异常",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,10 +4,13 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.csharmonic.api.CsHarmonicPlanLineFeignClient;
|
||||
import com.njcn.csharmonic.param.CsHarmonicPlanLineParam;
|
||||
import feign.hystrix.FallbackFactory;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author xy
|
||||
*/
|
||||
@@ -28,6 +31,18 @@ public class CsHarmonicPlanLineFeignClientFallbackFactory implements FallbackFac
|
||||
log.error("{}异常,降级处理,异常为:{}","根据监测点ID查询方案ID异常",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<Boolean> savePlanLines(CsHarmonicPlanLineParam param) {
|
||||
log.error("{}异常,降级处理,异常为:{}","新增方案与监测点关联异常",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
|
||||
@Override
|
||||
public HttpResult<Boolean> deleteByLineIds(List<String> lineIds) {
|
||||
log.error("{}异常,降级处理,异常为:{}","根据监测点ID集合删除关联异常",cause.toString());
|
||||
throw new BusinessException(finalExceptionEnum);
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -112,4 +112,17 @@ public class CsHarmonicPlanController extends BaseController {
|
||||
List<CsHarmonicPlan> list = csHarmonicPlanService.listAllOrderBySort();
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据ID查询稳态指标方案(包含监测点列表)
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@GetMapping("/getByName")
|
||||
@ApiOperation("根据名称查询稳态指标方案")
|
||||
@ApiImplicitParam(name = "name", value = "name", required = true)
|
||||
public HttpResult<List<CsHarmonicPlan>> getByName(@RequestParam("name") String name) {
|
||||
String methodDescribe = getMethodDescribe("getByName");
|
||||
List<CsHarmonicPlan> plan = csHarmonicPlanService.getByName(name);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, plan, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,4 +60,6 @@ public interface ICsHarmonicPlanService extends IService<CsHarmonicPlan> {
|
||||
* @return 方案详情
|
||||
*/
|
||||
CsHarmonicPlan getByIdWithLines(String id);
|
||||
|
||||
List<CsHarmonicPlan> getByName(String name);
|
||||
}
|
||||
|
||||
@@ -131,4 +131,11 @@ public class CsHarmonicPlanServiceImpl extends ServiceImpl<CsHarmonicPlanMapper,
|
||||
}
|
||||
return plan;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CsHarmonicPlan> getByName(String name) {
|
||||
LambdaQueryWrapper<CsHarmonicPlan> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(CsHarmonicPlan::getName, name);
|
||||
return this.list(wrapper);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user