代码合并
This commit is contained in:
5
pqs-process/process-boot/Dockerfile
Normal file
5
pqs-process/process-boot/Dockerfile
Normal file
@@ -0,0 +1,5 @@
|
||||
FROM openjdk:8-jdk-alpine
|
||||
ADD target/processboot.jar processboot.jar
|
||||
ENTRYPOINT ["java","-jar","/processboot.jar"]
|
||||
EXPOSE 10222
|
||||
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo 'Asia/Shanghai' >/etc/timezone
|
||||
@@ -21,7 +21,7 @@
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.njcn</groupId>
|
||||
<artifactId>prepare-api</artifactId>
|
||||
<artifactId>process-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
@@ -60,11 +60,48 @@
|
||||
<artifactId>event-api</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<!--调用minio服务器-->
|
||||
<dependency>
|
||||
<groupId>com.njcn</groupId>
|
||||
<artifactId>common-minio</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>me.tongfei</groupId>
|
||||
<artifactId>progressbar</artifactId>
|
||||
<version>0.5.3</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.squareup.okhttp3</groupId>
|
||||
<artifactId>okhttp</artifactId>
|
||||
<version>4.8.1</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.minio</groupId>
|
||||
<artifactId>minio</artifactId>
|
||||
<version>8.2.1</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>com.squareup.okhttp3</groupId>
|
||||
<artifactId>okhttp</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.jeffreyning</groupId>
|
||||
<artifactId>mybatisplus-plus</artifactId>
|
||||
<version>1.5.1-RELEASE</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.belerweb</groupId>
|
||||
<artifactId>pinyin4j</artifactId>
|
||||
<version>2.5.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
@@ -91,38 +128,38 @@
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<!-- <plugin>-->
|
||||
<!-- <groupId>com.spotify</groupId>-->
|
||||
<!-- <artifactId>docker-maven-plugin</artifactId>-->
|
||||
<!-- <version>1.0.0</version>-->
|
||||
<!-- <executions>-->
|
||||
<!-- <execution>-->
|
||||
<!-- <id>build-image</id>-->
|
||||
<!-- <phase>${docker.operate}</phase>-->
|
||||
<!-- <goals>-->
|
||||
<!-- <goal>build</goal>-->
|
||||
<!-- </goals>-->
|
||||
<!-- </execution>-->
|
||||
<!-- </executions>-->
|
||||
<!-- <configuration>-->
|
||||
<!-- <!–<serverId>36dockerHarbor</serverId>–>-->
|
||||
<!-- <registryUrl>http://${docker.repostory}</registryUrl>-->
|
||||
<!-- <!– 镜像名称 –>-->
|
||||
<!-- <imageName>${docker.repostory}/${docker.registry.name}/${project.artifactId}</imageName>-->
|
||||
<!-- <imageTags>-->
|
||||
<!-- <imageTag>latest</imageTag>-->
|
||||
<!-- </imageTags>-->
|
||||
<!-- <dockerHost>${docker.url}</dockerHost>-->
|
||||
<!-- <dockerDirectory>${basedir}/</dockerDirectory>-->
|
||||
<!-- <resources>-->
|
||||
<!-- <resource>-->
|
||||
<!-- <targetPath>/ROOT</targetPath>-->
|
||||
<!-- <directory>${project.build.directory}</directory>-->
|
||||
<!-- <include>${project.build.finalName}.jar</include>-->
|
||||
<!-- </resource>-->
|
||||
<!-- </resources>-->
|
||||
<!-- </configuration>-->
|
||||
<!-- </plugin>-->
|
||||
<plugin>
|
||||
<groupId>com.spotify</groupId>
|
||||
<artifactId>docker-maven-plugin</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>build-image</id>
|
||||
<phase>${docker.operate}</phase>
|
||||
<goals>
|
||||
<goal>build</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<!--<serverId>36dockerHarbor</serverId>-->
|
||||
<registryUrl>http://${docker.repostory}</registryUrl>
|
||||
<!-- 镜像名称 -->
|
||||
<imageName>${docker.repostory}/${docker.registry.name}/${project.artifactId}</imageName>
|
||||
<imageTags>
|
||||
<imageTag>latest</imageTag>
|
||||
</imageTags>
|
||||
<dockerHost>${docker.url}</dockerHost>
|
||||
<dockerDirectory>${basedir}/</dockerDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<targetPath>/ROOT</targetPath>
|
||||
<directory>${project.build.directory}</directory>
|
||||
<include>${project.build.finalName}.jar</include>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.njcn.process;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.conf.EnableMPP;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
@@ -16,6 +17,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||
@MapperScan("com.njcn.**.mapper")
|
||||
@EnableFeignClients(basePackages = "com.njcn")
|
||||
@SpringBootApplication(scanBasePackages = "com.njcn")
|
||||
@EnableMPP
|
||||
public class ProcessApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
@@ -0,0 +1,215 @@
|
||||
package com.njcn.process.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.constant.OperateType;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.vo.*;
|
||||
import com.njcn.process.service.IssuesService;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
* 电能质量问题
|
||||
* @author xiaoyao
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/14 9:18
|
||||
*/
|
||||
@Slf4j
|
||||
@Api(tags = "电能质量问题")
|
||||
@RestController
|
||||
@RequestMapping("/electricityQuality")
|
||||
@RequiredArgsConstructor
|
||||
public class ElectricityQualityIssuesController extends BaseController {
|
||||
|
||||
private final IssuesService issuesService;
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
|
||||
@PostMapping("/addExcessiveIssues")
|
||||
@ApiOperation("填报在线监测超标问题")
|
||||
@ApiImplicitParam(name = "excessiveParam", value = "参数", required = true)
|
||||
public HttpResult<String> addExcessiveIssues(@RequestBody @Validated ExcessiveParam excessiveParam){
|
||||
String methodDescribe = getMethodDescribe("addExcessiveIssues");
|
||||
issuesService.addExcessiveIssues(excessiveParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
|
||||
@PostMapping("/addGeneralSurveyIssues")
|
||||
@ApiOperation("填报普测超标问题")
|
||||
@ApiImplicitParam(name = "generalSurveyParam", value = "参数", required = true)
|
||||
public HttpResult<String> addGeneralSurveyIssues(@RequestBody @Validated GeneralSurveyParam generalSurveyParam){
|
||||
String methodDescribe = getMethodDescribe("addGeneralSurveyIssues");
|
||||
issuesService.addGeneralSurveyIssues(generalSurveyParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
|
||||
@PostMapping("/addComplaintIssues")
|
||||
@ApiOperation("填报用户投诉问题")
|
||||
@ApiImplicitParam(name = "complaintParam", value = "参数", required = true)
|
||||
public HttpResult<String> addComplaintIssues(@RequestBody @Validated ComplaintParam complaintParam){
|
||||
String methodDescribe = getMethodDescribe("addComplaintIssues");
|
||||
issuesService.addComplaintIssues(complaintParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
|
||||
@PostMapping("/addAbnormalIssues")
|
||||
@ApiOperation("填报运维监控异常问题")
|
||||
@ApiImplicitParam(name = "abnormalParam", value = "参数", required = true)
|
||||
public HttpResult<String> addAbnormalIssues(@RequestBody @Validated AbnormalParam abnormalParam){
|
||||
String methodDescribe = getMethodDescribe("addAbnormalIssues");
|
||||
issuesService.addAbnormalIssues(abnormalParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getIssues")
|
||||
@ApiOperation("查询问题列表")
|
||||
@ApiImplicitParam(name = "queryIssuesParam", value = "参数", required = true)
|
||||
public HttpResult<IPage<IssuesVO>> getIssues(@RequestBody @Validated QueryIssuesParam queryIssuesParam){
|
||||
String methodDescribe = getMethodDescribe("getIssues");
|
||||
Page<IssuesVO> out = issuesService.getIssues(queryIssuesParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getExcessiveDetail")
|
||||
@ApiOperation("查询在线监测超标问题详情")
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true)
|
||||
public HttpResult<ExcessiveDetailVO> getExcessiveDetail(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
|
||||
String methodDescribe = getMethodDescribe("getExcessiveDetail");
|
||||
ExcessiveDetailVO out = issuesService.getExcessiveDetail(powerQualityProblemNo);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getGeneralSurveyDetail")
|
||||
@ApiOperation("查询普测超标问题详情")
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true)
|
||||
public HttpResult<GeneralSurveyVO> getGeneralSurveyDetail(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
|
||||
String methodDescribe = getMethodDescribe("getGeneralSurveyDetail");
|
||||
GeneralSurveyVO out = issuesService.getGeneralSurveyDetail(powerQualityProblemNo);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getComplaintDetail")
|
||||
@ApiOperation("查询用户投诉问题详情")
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true)
|
||||
public HttpResult<ComplaintVO> getComplaintDetail(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
|
||||
String methodDescribe = getMethodDescribe("getComplaintDetail");
|
||||
ComplaintVO out = issuesService.getComplaintDetail(powerQualityProblemNo);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getAbnormalDetail")
|
||||
@ApiOperation("查询运维异常问题详情")
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true)
|
||||
public HttpResult<AbnormalVO> getAbnormalDetail(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
|
||||
String methodDescribe = getMethodDescribe("getAbnormalDetail");
|
||||
AbnormalVO out = issuesService.getAbnormalDetail(powerQualityProblemNo);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
|
||||
@PostMapping("/reasonAnalysis")
|
||||
@ApiOperation("原因分析")
|
||||
@ApiImplicitParam(name = "processParam", value = "参数", required = true)
|
||||
public HttpResult<String> reasonAnalysis(@RequestBody @Validated ProcessParam processParam){
|
||||
String methodDescribe = getMethodDescribe("reasonAnalysis");
|
||||
issuesService.reasonAnalysis(processParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE)
|
||||
@PostMapping("/correctiveAction")
|
||||
@ApiOperation("计划整改措施")
|
||||
@ApiImplicitParam(name = "processParam", value = "参数", required = true)
|
||||
public HttpResult<String> correctiveAction(@RequestBody @Validated ProcessParam processParam){
|
||||
String methodDescribe = getMethodDescribe("correctiveAction");
|
||||
issuesService.process(processParam, DicDataEnum.PLAN_MEASURES.getCode());
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE)
|
||||
@PostMapping("/takeAction")
|
||||
@ApiOperation("实际采取措施")
|
||||
@ApiImplicitParam(name = "processParam", value = "参数", required = true)
|
||||
public HttpResult<String> takeAction(@RequestBody @Validated ProcessParam processParam){
|
||||
String methodDescribe = getMethodDescribe("takeAction");
|
||||
issuesService.process(processParam, DicDataEnum.ACTUAL_MEASURES.getCode());
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE)
|
||||
@PostMapping("/effectAnalysis")
|
||||
@ApiOperation("成效分析")
|
||||
@ApiImplicitParam(name = "processParam", value = "参数", required = true)
|
||||
public HttpResult<String> effectAnalysis(@RequestBody @Validated ProcessParam processParam){
|
||||
String methodDescribe = getMethodDescribe("effectAnalysis");
|
||||
issuesService.process(processParam, DicDataEnum.INSIGHTS.getCode());
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE)
|
||||
@PostMapping("/archive")
|
||||
@ApiOperation("问题归档")
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true)
|
||||
public HttpResult<String> archive(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
|
||||
String methodDescribe = getMethodDescribe("archive");
|
||||
issuesService.archive(powerQualityProblemNo);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPLOAD)
|
||||
@PostMapping("/uploadFile")
|
||||
@ApiOperation("上传文件")
|
||||
@ApiImplicitParam(name = "file", value = "填报进度文件", required = true)
|
||||
public HttpResult<MinIoUploadResDTO> uploadFile(@RequestParam("file") MultipartFile issuesFile){
|
||||
String methodDescribe = getMethodDescribe("uploadFile");
|
||||
MinIoUploadResDTO out = issuesService.uploadFile(issuesFile);
|
||||
out.setMinFileName(issuesFile.getOriginalFilename());
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.DOWNLOAD)
|
||||
@PostMapping("/downloadFile")
|
||||
@ApiOperation("下载文件")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true),
|
||||
@ApiImplicitParam(name = "reportProcess", value = "填报进度", required = true)
|
||||
})
|
||||
public HttpResult<String> downloadFile(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo,@RequestParam("reportProcess") String reportProcess){
|
||||
String methodDescribe = getMethodDescribe("downloadFile");
|
||||
String out = issuesService.downloadFile(powerQualityProblemNo, reportProcess);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.DELETE)
|
||||
@PostMapping("/deleteIssues")
|
||||
@ApiOperation("删除问题")
|
||||
@ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true)
|
||||
public HttpResult<String> deleteIssues(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
|
||||
String methodDescribe = getMethodDescribe("deleteIssues");
|
||||
issuesService.deleteIssues(powerQualityProblemNo);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,220 @@
|
||||
package com.njcn.process.controller;
|
||||
|
||||
import cn.afterturn.easypoi.excel.ExcelExportUtil;
|
||||
import cn.afterturn.easypoi.excel.entity.ExportParams;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.constant.OperateType;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.poi.util.PoiUtil;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.vo.LoadTypeRelationExcel;
|
||||
import com.njcn.process.pojo.vo.LoadTypeUserExcel;
|
||||
import com.njcn.process.pojo.vo.RLoadTypeUserManageVO;
|
||||
import com.njcn.process.service.LoadTypeUserManageService;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 干扰源用户管理
|
||||
*
|
||||
* @author qijian
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/11 - 9:20
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/loadTypeUserManage")
|
||||
@Api(tags = "干扰源用户管理")
|
||||
@AllArgsConstructor
|
||||
public class LoadTypeUserManageController extends BaseController {
|
||||
|
||||
private final LoadTypeUserManageService loadTypeUserManageService;
|
||||
|
||||
/**
|
||||
* 查询所有干扰源用户
|
||||
* @author qijian
|
||||
* @date 2022/11/11
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getLoadTypeUserList")
|
||||
@ApiOperation("查询所有干扰源用户(未建档干扰源用户管理)")
|
||||
@ApiImplicitParam(name = "loadTypeUserSearchParam", value = "干扰源用户入参", required = true)
|
||||
public HttpResult<Page<RLoadTypeUserManageVO>> getLoadTypeUserList(@RequestBody @Validated LoadTypeUserSearchParam loadTypeUserSearchParam){
|
||||
String methodDescribe = getMethodDescribe("getLoadTypeUserList");
|
||||
Page<RLoadTypeUserManageVO> list = loadTypeUserManageService.getLoadTypeUserList(loadTypeUserSearchParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据id查询干扰源用户
|
||||
* @author qijian
|
||||
* @date 2022/11/14
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@GetMapping("/getLoadTypeUserById")
|
||||
@ApiOperation("根据id查询干扰源用户(通用)")
|
||||
@ApiImplicitParam(name = "id", value = "id", required = true)
|
||||
public HttpResult<RLoadTypeUserManageVO> getLoadTypeUserById(@RequestParam("id") String id){
|
||||
String methodDescribe = getMethodDescribe("getLoadTypeUserById");
|
||||
RLoadTypeUserManageVO rLoadTypeUserManageVO = loadTypeUserManageService.getLoadTypeUserById(id);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rLoadTypeUserManageVO, methodDescribe);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增干扰源用户
|
||||
* @author qijian
|
||||
* @date 2022/11/14
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.ADD)
|
||||
@PostMapping("/addLoadTypeUser")
|
||||
@ApiOperation("新增干扰源用户(未建档干扰源用户管理)")
|
||||
@ApiImplicitParam(name = "loadTypeUserParam", value = "实体参数", required = true)
|
||||
public HttpResult<Boolean> addLoadTypeUser(@RequestBody @Validated LoadTypeUserParam loadTypeUserParam){
|
||||
String methodDescribe = getMethodDescribe("addLoadTypeUser");
|
||||
boolean res = loadTypeUserManageService.addLoadTypeUser(loadTypeUserParam);
|
||||
if(res){
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传干扰源用户入网报告
|
||||
* @author qijian
|
||||
* @date 2022/11/14
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE)
|
||||
@PostMapping("/uploadLoadTypeUserI")
|
||||
@ApiOperation("上传干扰源用户入网报告(未建档干扰源用户管理)")
|
||||
// @ApiImplicitParam(name = "loadTypeUserIUploadParam", value = "实体参数", required = true)
|
||||
public HttpResult<Boolean> uploadLoadTypeUserI(@Validated LoadTypeUserIUploadParam loadTypeUserIUploadParam){
|
||||
String methodDescribe = getMethodDescribe("uploadLoadTypeUserI");
|
||||
boolean res = loadTypeUserManageService.uploadLoadTypeUserI(loadTypeUserIUploadParam);
|
||||
if(res){
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 关联营销用户
|
||||
* @author qijian
|
||||
* @date 2022/11/16
|
||||
*
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE)
|
||||
@PostMapping("/linkUser")
|
||||
@ApiOperation("关联营销用户(未建档干扰源用户管理)")
|
||||
@ApiImplicitParam(name = "loadTypeUserAssociateParam", value = "实体参数", required = true)
|
||||
public HttpResult<Boolean> linkUser(@RequestBody @Validated LoadTypeUserAssociateParam loadTypeUserAssociateParam){
|
||||
String methodDescribe = getMethodDescribe("linkUser");
|
||||
boolean res = loadTypeUserManageService.linkUser(loadTypeUserAssociateParam);
|
||||
if(res){
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出未建档干扰源用户管理信息
|
||||
* @author qijian
|
||||
* @date 2022/12/06
|
||||
*/
|
||||
@ResponseBody
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.DOWNLOAD)
|
||||
@ApiOperation("导出未建档干扰源用户管理信息")
|
||||
@PostMapping(value = "exportLoadTypeUserList")
|
||||
@ApiImplicitParam(name = "list", value = "导出勾选主键参数", required = true)
|
||||
public HttpResult<String> exportLoadTypeUserList(HttpServletResponse response, @RequestBody List<String> list) {
|
||||
String methodDescribe = getMethodDescribe("exportLoadTypeUserList");
|
||||
String fileName = "未建档干扰源用户管理信息.xls";
|
||||
List<LoadTypeUserExcel> excelList = null;
|
||||
try {
|
||||
excelList = loadTypeUserManageService.exportLoadTypeUserList(list);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
ExportParams exportExcel = new ExportParams("未建档干扰源用户管理信息", "未建档干扰源用户");
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportExcel, LoadTypeUserExcel.class, excelList);
|
||||
PoiUtil.exportFileByWorkbook(workbook, fileName, response);
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有干扰源用户(与营销系统关联)
|
||||
* @author qijian
|
||||
* @date 2022/11/17
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/getLoadTypeRelationList")
|
||||
@ApiOperation("查询所有干扰源用户(干扰源用户常态化管理)")
|
||||
@ApiImplicitParam(name = "loadTypeUserSearchParam", value = "干扰源用户入参", required = true)
|
||||
public HttpResult<Page<RLoadTypeUserManageVO>> getLoadTypeRelationList(@RequestBody @Validated LoadTypeUserSearchParam loadTypeUserSearchParam){
|
||||
String methodDescribe = getMethodDescribe("getLoadTypeRelationList");
|
||||
Page<RLoadTypeUserManageVO> list = loadTypeUserManageService.getLoadTypeRelationList(loadTypeUserSearchParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传干扰源用户实测报告
|
||||
* @author qijian
|
||||
* @date 2022/11/14
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE)
|
||||
@PostMapping("/uploadLoadTypeUserA")
|
||||
@ApiOperation("上传干扰源用户实测报告(干扰源用户常态化管理)")
|
||||
// @ApiImplicitParam(name = "loadTypeUserAUploadParam", value = "实体参数", required = true)
|
||||
public HttpResult<Boolean> uploadLoadTypeUserA(@Validated LoadTypeUserAUploadParam loadTypeUserAUploadParam){
|
||||
String methodDescribe = getMethodDescribe("uploadLoadTypeUserA");
|
||||
boolean res = loadTypeUserManageService.uploadLoadTypeUserA(loadTypeUserAUploadParam);
|
||||
if(res){
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出干扰源用户常态化管理信息
|
||||
* @author qijian
|
||||
* @date 2022/12/07
|
||||
*/
|
||||
@ResponseBody
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.DOWNLOAD)
|
||||
@ApiOperation("导出干扰源用户常态化管理信息")
|
||||
@PostMapping(value = "exportLoadTypeRelationList")
|
||||
@ApiImplicitParam(name = "list", value = "导出勾选主键参数", required = true)
|
||||
public HttpResult<String> exportLoadTypeRelationList(HttpServletResponse response, @RequestBody List<String> list) {
|
||||
String methodDescribe = getMethodDescribe("exportLoadTypeRelationList");
|
||||
String fileName = "导出干扰源用户常态化管理信息.xls";
|
||||
List<LoadTypeRelationExcel> excelList = null;
|
||||
try {
|
||||
excelList = loadTypeUserManageService.exportLoadTypeRelationList(list);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
ExportParams exportExcel = new ExportParams("干扰源用户常态化管理信息", "干扰源用户常态化管理");
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportExcel, LoadTypeRelationExcel.class, excelList);
|
||||
PoiUtil.exportFileByWorkbook(workbook, fileName, response);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,197 @@
|
||||
package com.njcn.process.controller;
|
||||
|
||||
import cn.afterturn.easypoi.excel.ExcelExportUtil;
|
||||
import cn.afterturn.easypoi.excel.entity.ExportParams;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.constant.OperateType;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.poi.util.PoiUtil;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanPO;
|
||||
import com.njcn.process.pojo.vo.SurveyPlanExcel;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanDetailOnQuestionVO;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanVO;
|
||||
import com.njcn.process.service.RGeneralSurveyPlanDetailService;
|
||||
import com.njcn.process.service.RGeneralSurveyPlanPOService;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 14:50【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/rGeneralSurveyPlan")
|
||||
@Api(tags = "普测计划管理")
|
||||
@AllArgsConstructor
|
||||
public class RGeneralSurveyPlanController extends BaseController {
|
||||
|
||||
private final RGeneralSurveyPlanPOService rGeneralSurveyPlanPOService;
|
||||
|
||||
private @Autowired
|
||||
RGeneralSurveyPlanDetailService rGeneralSurveyPlanDetailService;
|
||||
/**
|
||||
* @Description: 新增/修改普测计划
|
||||
* @Param: [rGeneralSurveyPlanAddParm]
|
||||
* @return: com.njcn.common.pojo.response.HttpResult<java.lang.Boolean>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/22
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/addPlan")
|
||||
@ApiOperation("新增/修改普测计划")
|
||||
@ApiImplicitParam(name = "rGeneralSurveyPlanAddParm", value = "新增普测计划参数", required = true)
|
||||
public HttpResult<Boolean> addPlan(@RequestBody RGeneralSurveyPlanAddParm rGeneralSurveyPlanAddParm){
|
||||
String methodDescribe = getMethodDescribe("addPlan");
|
||||
|
||||
Boolean addFlag = rGeneralSurveyPlanPOService.addPlan(rGeneralSurveyPlanAddParm);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, addFlag, methodDescribe);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/queryPlan")
|
||||
@ApiOperation("查询普测计划-新建页面")
|
||||
@ApiImplicitParam(name = "rGeneralSurveyPlanQueryParm", value = "普测计划查询参数", required = true)
|
||||
public HttpResult<IPage<RGeneralSurveyPlanVO>> queryPlan(@Validated @RequestBody RGeneralSurveyPlanQueryParm rGeneralSurveyPlanQueryParm){
|
||||
String methodDescribe = getMethodDescribe("queryPlan");
|
||||
|
||||
IPage<RGeneralSurveyPlanVO> rGeneralSurveyPlanVOS = rGeneralSurveyPlanPOService.query (rGeneralSurveyPlanQueryParm, Stream.of ("0","1","2","3").collect (Collectors.toList ()));
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rGeneralSurveyPlanVOS, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/queryPlanAudit")
|
||||
@ApiOperation("查询普测计划-审核页面")
|
||||
@ApiImplicitParam(name = "rGeneralSurveyPlanQueryParm", value = "普测计划查询参数", required = true)
|
||||
public HttpResult<IPage<RGeneralSurveyPlanVO>> queryPlanAudit(@Validated @RequestBody RGeneralSurveyPlanQueryParm rGeneralSurveyPlanQueryParm){
|
||||
String methodDescribe = getMethodDescribe("queryPlanAudit");
|
||||
|
||||
IPage<RGeneralSurveyPlanVO> rGeneralSurveyPlanVOS = rGeneralSurveyPlanPOService.query (rGeneralSurveyPlanQueryParm, Stream.of ("1").collect (Collectors.toList ()));
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rGeneralSurveyPlanVOS, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/queryPlanResult")
|
||||
@ApiOperation("查询普测计划-结果页面")
|
||||
@ApiImplicitParam(name = "rGeneralSurveyPlanQueryParm", value = "普测计划查询参数", required = true)
|
||||
public HttpResult<IPage<RGeneralSurveyPlanVO>> queryPlanResult(@Validated @RequestBody RGeneralSurveyPlanQueryParm rGeneralSurveyPlanQueryParm){
|
||||
String methodDescribe = getMethodDescribe("queryPlanResult");
|
||||
|
||||
IPage<RGeneralSurveyPlanVO> rGeneralSurveyPlanVOS = rGeneralSurveyPlanPOService.query (rGeneralSurveyPlanQueryParm, Stream.of ("3","4").collect (Collectors.toList ()));
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rGeneralSurveyPlanVOS, methodDescribe);
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@PostMapping("/queryPlandetail")
|
||||
@ApiOperation("根据planNO查询普测计划详情")
|
||||
@ApiImplicitParam(name = "rGeneralSurveyPlandetailQueryParm", value = "普测计划详情查询参数", required = true)
|
||||
public HttpResult<IPage<RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO>> queryPlandetail(@Validated @RequestBody RGeneralSurveyPlandetailQueryParm rGeneralSurveyPlandetailQueryParm){
|
||||
String methodDescribe = getMethodDescribe("queryPlandetail");
|
||||
|
||||
IPage<RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO> rGeneralSurveyPlanDetailVOIPage = rGeneralSurveyPlanDetailService.queryPlandetail (rGeneralSurveyPlandetailQueryParm);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rGeneralSurveyPlanDetailVOIPage, methodDescribe);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPLOAD)
|
||||
@PostMapping("/surveyResultUpload")
|
||||
@ApiOperation("上传普测结果报告")
|
||||
// @ApiImplicitParam(name = "surveyResultUploadParam", value = "实体参数", required = true)
|
||||
public HttpResult<Boolean> surveyResultUpload( @Validated SurveyResultUploadParam surveyResultUploadParam){
|
||||
String methodDescribe = getMethodDescribe("surveyResultUpload");
|
||||
boolean res = rGeneralSurveyPlanPOService.surveyResultUpload(surveyResultUploadParam);
|
||||
if(res){
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.DOWNLOAD)
|
||||
@PostMapping("/surveyResultDownload")
|
||||
@ApiOperation("下载普测结果报告")
|
||||
@ApiImplicitParam(name = "planNo", value = "计划号", required = true)
|
||||
public HttpResult<List<MinIoUploadResDTO>> surveyResultDownload(@RequestParam("planNo") String planNo ){
|
||||
String methodDescribe = getMethodDescribe("surveyResultDownload");
|
||||
List<MinIoUploadResDTO> downloadUrls = rGeneralSurveyPlanPOService.surveyResultDownload(planNo);
|
||||
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, downloadUrls, methodDescribe);
|
||||
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@ApiOperation("导出普测计划信息")
|
||||
@PostMapping(value = "exportSurveyPlan")
|
||||
@ApiImplicitParam(name = "planIdList", value = "普测计划详情查询参数", required = true)
|
||||
public HttpResult<String> exportSurveyPlan(HttpServletResponse response,@RequestBody List<String> planIdList) {
|
||||
String methodDescribe = getMethodDescribe("exportSurveyPlan");
|
||||
String fileName = "普测计划信息.xls";
|
||||
List<SurveyPlanExcel> baseExcelList = null;
|
||||
try {
|
||||
baseExcelList = rGeneralSurveyPlanPOService.exportSurveyPlan(planIdList);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
ExportParams exportExcel = new ExportParams("普测计划信息", "普测计划信息");
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportExcel, SurveyPlanExcel.class, baseExcelList);
|
||||
PoiUtil.exportFileByWorkbook(workbook, fileName, response);
|
||||
return null;
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@ApiOperation("普测计划信息问题件新增查询")
|
||||
@PostMapping(value = "querySurveyPlanOnQuestion")
|
||||
@ApiImplicitParam(name = "questionQueryParm", value = "普测计划信息问题件查询参数", required = true)
|
||||
public HttpResult<List<RGeneralSurveyPlanDetailOnQuestionVO>> querySurveyPlanOnQuestion(@Validated @RequestBody SurveyPlanQuestionQueryParm questionQueryParm) {
|
||||
String methodDescribe = getMethodDescribe("querySurveyPlanOnQuestion");
|
||||
|
||||
List<RGeneralSurveyPlanDetailOnQuestionVO> list= rGeneralSurveyPlanPOService.querySurveyPlanOnQuestion(questionQueryParm);
|
||||
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@ApiOperation("普测计划名称查询")
|
||||
@PostMapping(value = "querySurveyPlanName")
|
||||
@ApiImplicitParam(name = "questionQueryParm", value = "普测计划名称查询参数", required = true)
|
||||
public HttpResult<List<RGeneralSurveyPlanPO>> querySurveyPlanName(@Validated @RequestBody SurveyPlanQuestionQueryParm questionQueryParm) {
|
||||
String methodDescribe = getMethodDescribe("querySurveyPlanName");
|
||||
|
||||
List<RGeneralSurveyPlanPO> list= rGeneralSurveyPlanPOService.querySurveyPlanName(questionQueryParm);
|
||||
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.process.pojo.param.LoadTypeUserSearchParam;
|
||||
import com.njcn.process.pojo.po.RLoadTypeUserManage;
|
||||
import com.njcn.process.pojo.vo.RLoadTypeUserManageVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 干扰源用户管理Mapper
|
||||
*
|
||||
* @author qijian
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/11 - 9:24
|
||||
*/
|
||||
public interface LoadTypeUserManageMapper extends BaseMapper<RLoadTypeUserManage> {
|
||||
|
||||
/**
|
||||
* 干扰源用户分页查询
|
||||
* @param page 分页参数
|
||||
* @param loadTypeUserSearchParam 入参
|
||||
* @return 结果
|
||||
*/
|
||||
Page<RLoadTypeUserManageVO> getLoadTypeUserPage(IPage<RLoadTypeUserManageVO> page, @Param("loadTypeUserSearchParam") LoadTypeUserSearchParam loadTypeUserSearchParam);
|
||||
|
||||
/**
|
||||
* 干扰源用户分页查询
|
||||
* @param page 分页参数
|
||||
* @param loadTypeUserSearchParam 入参
|
||||
* @return 结果
|
||||
*/
|
||||
Page<RLoadTypeUserManageVO> getLoadTypeRelationPage(IPage<RLoadTypeUserManageVO> page, @Param("loadTypeUserSearchParam") LoadTypeUserSearchParam loadTypeUserSearchParam);
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.process.pojo.param.SurveyPlanQuestionQueryParm;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanDetail;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanDetailOnQuestionVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 11:28【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
public interface RGeneralSurveyPlanDetailMapper extends MppBaseMapper<RGeneralSurveyPlanDetail> {
|
||||
@Select ({"<script>",
|
||||
"SELECT\n" +
|
||||
"\ta.plan_name as planName,\n" +
|
||||
"\tb.voltage_level as voltageLevel,\n" +
|
||||
"\tb.sub_id as subId,\n" +
|
||||
"\tb.sub_name as subName,\n" +
|
||||
"\tb.busbar_id as busbarId,\n" +
|
||||
"\tb.busbar_name as busbarName, b.measurement_point_id as measurementPointId\n" +
|
||||
"FROM\n" +
|
||||
"\tr_general_survey_plan a\n" +
|
||||
"INNER JOIN r_general_survey_plan_detail b ON a.plan_no = b.plan_no\n" +
|
||||
"WHERE\n" +
|
||||
"\ta.org_no = #{questionQueryParm.orgNo} " +
|
||||
"<when test='questionQueryParm.planName!=null and questionQueryParm.planName!=\"\"'>",
|
||||
"and a.plan_name = #{questionQueryParm.planName}\n" +
|
||||
"</when>",
|
||||
"AND DATE_FORMAT(a.upload_time, '%Y%m') = DATE_FORMAT(#{questionQueryParm.planStartTime}, '%Y%m')",
|
||||
"</script>"})
|
||||
List<RGeneralSurveyPlanDetailOnQuestionVO> querySurveyPlanOnQuestion(@Param("questionQueryParm") SurveyPlanQuestionQueryParm questionQueryParm);
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanPO;
|
||||
|
||||
/**
|
||||
*
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 11:24【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
public interface RGeneralSurveyPlanPOMapper extends MppBaseMapper<RGeneralSurveyPlanPO> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.njcn.process.pojo.po.RMpElectricQualityProblemFlowDetails;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 电能质量问题流程详情表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author xiaoyao
|
||||
* @since 2022-11-14
|
||||
*/
|
||||
public interface RMpElectricQualityProblemFlowDetailsMapper extends BaseMapper<RMpElectricQualityProblemFlowDetails> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.njcn.process.pojo.po.RMpGeneralSurveyOverproofProblem;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 普测超标问题详情表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author xiaoyao
|
||||
* @since 2022-11-14
|
||||
*/
|
||||
public interface RMpGeneralSurveyOverproofProblemMapper extends BaseMapper<RMpGeneralSurveyOverproofProblem> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.njcn.process.pojo.po.RMpOnlineMonitorOverproofProblem;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 在线监测超标问题详情表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author xiaoyao
|
||||
* @since 2022-11-14
|
||||
*/
|
||||
public interface RMpOnlineMonitorOverproofProblemMapper extends BaseMapper<RMpOnlineMonitorOverproofProblem> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.njcn.process.pojo.po.RMpOperationMonitorAbnormal;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 运维监控异常详情表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author xiaoyao
|
||||
* @since 2022-11-14
|
||||
*/
|
||||
public interface RMpOperationMonitorAbnormalMapper extends BaseMapper<RMpOperationMonitorAbnormal> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.njcn.process.pojo.po.RMpUserComplaint;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 用户投诉详情表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author xiaoyao
|
||||
* @since 2022-11-14
|
||||
*/
|
||||
public interface RMpUserComplaintMapper extends BaseMapper<RMpUserComplaint> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.njcn.process.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.process.pojo.param.QueryIssuesParam;
|
||||
import com.njcn.process.pojo.po.RStatElectricQualityProblemFlow;
|
||||
import com.njcn.process.pojo.vo.IssuesVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 电能质量问题流程表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author xiaoyao
|
||||
* @since 2022-11-14
|
||||
*/
|
||||
public interface RStatElectricQualityProblemFlowMapper extends BaseMapper<RStatElectricQualityProblemFlow> {
|
||||
|
||||
List<IssuesVO> getIssues(@Param("param") QueryIssuesParam param, @Param("dateBegin") String dateBegin, @Param("dateEnd") String dateEnd);
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.LoadTypeUserManageMapper">
|
||||
|
||||
<select id="getLoadTypeUserPage" resultType="RLoadTypeUserManageVO">
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
r_load_type_user_manage r
|
||||
where 1=1
|
||||
<if test="loadTypeUserSearchParam.orgNo != null and loadTypeUserSearchParam.orgNo != ''">
|
||||
and r.org_no = #{loadTypeUserSearchParam.orgNo}
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.loadType != null and loadTypeUserSearchParam.loadType != ''">
|
||||
and r.load_type = #{loadTypeUserSearchParam.loadType}
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.userName != null and loadTypeUserSearchParam.userName != ''">
|
||||
and r.user_name like CONCAT('%', #{loadTypeUserSearchParam.userName}, '%')
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.aIsFileUpload != null and loadTypeUserSearchParam.aIsFileUpload != ''">
|
||||
and r.i_is_file_upload = #{loadTypeUserSearchParam.iIsFileUpload}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getLoadTypeRelationPage" resultType="RLoadTypeUserManageVO">
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
r_load_type_user_manage r
|
||||
where 1=1
|
||||
AND ISNULL( relation_user_id )= 0
|
||||
AND LENGTH(
|
||||
trim( relation_user_id ))> 0
|
||||
<if test="loadTypeUserSearchParam.orgNo != null and loadTypeUserSearchParam.orgNo != ''">
|
||||
and r.org_no = #{loadTypeUserSearchParam.orgNo}
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.loadType != null and loadTypeUserSearchParam.loadType != ''">
|
||||
and r.load_type = #{loadTypeUserSearchParam.loadType}
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.userName != null and loadTypeUserSearchParam.userName != ''">
|
||||
and r.user_name like CONCAT('%', #{loadTypeUserSearchParam.userName}, '%')
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.relationUserName != null and loadTypeUserSearchParam.relationUserName != ''">
|
||||
and r.relation_user_name like CONCAT('%', #{loadTypeUserSearchParam.relationUserName}, '%')
|
||||
</if>
|
||||
<if test="loadTypeUserSearchParam.aIsFileUpload != null and loadTypeUserSearchParam.aIsFileUpload != ''">
|
||||
and r.a_is_file_upload = #{loadTypeUserSearchParam.aIsFileUpload}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RGeneralSurveyPlanDetailMapper">
|
||||
<resultMap id="BaseResultMap" type="com.njcn.process.pojo.po.RGeneralSurveyPlanDetail">
|
||||
<!--@mbg.generated-->
|
||||
<!--@Table r_general_survey_plan_detail-->
|
||||
<id column="plan_no" jdbcType="VARCHAR" property="planNo" />
|
||||
<result column="general_survey_start_time" jdbcType="DATE" property="generalSurveyStartTime" />
|
||||
<result column="general_survey_end_time" jdbcType="DATE" property="generalSurveyEndTime" />
|
||||
<result column="general_survey_time" jdbcType="DATE" property="generalSurveyTime" />
|
||||
<result column="general_survey_leader" jdbcType="VARCHAR" property="generalSurveyLeader" />
|
||||
<result column="sub_id" jdbcType="VARCHAR" property="subId" />
|
||||
<result column="sub_name" jdbcType="VARCHAR" property="subName" />
|
||||
<result column="voltage_level" jdbcType="VARCHAR" property="voltageLevel" />
|
||||
<result column="busbar_id" jdbcType="VARCHAR" property="busbarId" />
|
||||
<result column="busbar_name" jdbcType="VARCHAR" property="busbarName" />
|
||||
<result column="measurement_point_id" jdbcType="VARCHAR" property="measurementPointId" />
|
||||
<result column="is_problem" jdbcType="TINYINT" property="isProblem" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--@mbg.generated-->
|
||||
plan_no, general_survey_start_time, general_survey_end_time, general_survey_time,
|
||||
general_survey_leader, sub_id, sub_name, voltage_level, busbar_id, busbar_name, measurement_point_id,
|
||||
is_problem
|
||||
</sql>
|
||||
</mapper>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RGeneralSurveyPlanPOMapper">
|
||||
<resultMap id="BaseResultMap" type="com.njcn.process.pojo.po.RGeneralSurveyPlanPO">
|
||||
<!--@mbg.generated-->
|
||||
<!--@Table r_general_survey_plan-->
|
||||
<id column="org_no" jdbcType="VARCHAR" property="orgNo" />
|
||||
<id column="plan_no" jdbcType="VARCHAR" property="planNo" />
|
||||
<result column="plan_name" jdbcType="VARCHAR" property="planName" />
|
||||
<result column="plan_create_time" jdbcType="DATE" property="planCreateTime" />
|
||||
<result column="plan_start_time" jdbcType="DATE" property="planStartTime" />
|
||||
<result column="plan_end_time" jdbcType="DATE" property="planEndTime" />
|
||||
<result column="plan_complate_time" jdbcType="DATE" property="planComplateTime" />
|
||||
<result column="leader" jdbcType="VARCHAR" property="leader" />
|
||||
<result column="status" jdbcType="TINYINT" property="status" />
|
||||
<result column="description" jdbcType="VARCHAR" property="description" />
|
||||
<result column="is_file_upload" jdbcType="TINYINT" property="isFileUpload" />
|
||||
<result column="file_count" jdbcType="INTEGER" property="fileCount" />
|
||||
<result column="file_path" jdbcType="VARCHAR" property="filePath" />
|
||||
<result column="upload_time" jdbcType="DATE" property="uploadTime" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--@mbg.generated-->
|
||||
org_no, plan_no, plan_name, plan_create_time, plan_start_time, plan_end_time, plan_complate_time,
|
||||
leader, `status`, description, is_file_upload, file_count, file_path, upload_time
|
||||
</sql>
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RMpElectricQualityProblemFlowDetailsMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RMpGeneralSurveyOverproofProblemMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RMpOnlineMonitorOverproofProblemMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RMpOperationMonitorAbnormalMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RMpUserComplaintMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.process.mapper.RStatElectricQualityProblemFlowMapper">
|
||||
|
||||
<select id="getIssues" resultType="com.njcn.process.pojo.vo.IssuesVO">
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
r_stat_electric_quality_problem_flow
|
||||
WHERE
|
||||
data_date between #{dateBegin} AND #{dateEnd}
|
||||
<if test="param.orgNo !=null and param.orgNo !=''">
|
||||
AND org_no = #{param.orgNo}
|
||||
</if>
|
||||
<if test="param.problemSources !=null and param.problemSources !=''">
|
||||
AND problem_sources = #{param.problemSources}
|
||||
</if>
|
||||
<if test="param.reportProcess !=null and param.reportProcess !=''">
|
||||
AND report_process = #{param.reportProcess}
|
||||
</if>
|
||||
<if test="param.reportProcessStatus !=null and param.reportProcessStatus !=''">
|
||||
AND report_process_status = #{param.reportProcessStatus}
|
||||
</if>
|
||||
<if test="param.problemName !=null and param.problemName !=''">
|
||||
AND problem_name like CONCAT(CONCAT('%', #{param.problemName}), '%')
|
||||
</if>
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -0,0 +1,91 @@
|
||||
package com.njcn.process.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.vo.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
* 电能质量问题接口类
|
||||
* @author xiaoyao
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/14 10:59
|
||||
*/
|
||||
public interface IssuesService {
|
||||
|
||||
/**
|
||||
* 填报在线监测超标问题
|
||||
*/
|
||||
void addExcessiveIssues(ExcessiveParam excessiveParam);
|
||||
|
||||
/**
|
||||
* 填报普测超标问题
|
||||
*/
|
||||
void addGeneralSurveyIssues(GeneralSurveyParam generalSurveyParam);
|
||||
|
||||
/**
|
||||
* 填报用户投诉问题
|
||||
*/
|
||||
void addComplaintIssues(ComplaintParam complaintParam);
|
||||
|
||||
/**
|
||||
* 填报运维监控异常问题
|
||||
*/
|
||||
void addAbnormalIssues(AbnormalParam abnormalParam);
|
||||
|
||||
/**
|
||||
* 查询问题列表
|
||||
*/
|
||||
Page<IssuesVO> getIssues(QueryIssuesParam queryIssuesParam);
|
||||
|
||||
/**
|
||||
* 查询在线监测超标问题详情
|
||||
*/
|
||||
ExcessiveDetailVO getExcessiveDetail(String powerQualityProblemNo);
|
||||
|
||||
/**
|
||||
* 查询普测超标问题详情
|
||||
*/
|
||||
GeneralSurveyVO getGeneralSurveyDetail(String powerQualityProblemNo);
|
||||
|
||||
/**
|
||||
* 查询用户投诉问题详情
|
||||
*/
|
||||
ComplaintVO getComplaintDetail(String powerQualityProblemNo);
|
||||
|
||||
/**
|
||||
* 查询运维异常问题详情
|
||||
*/
|
||||
AbnormalVO getAbnormalDetail(String powerQualityProblemNo);
|
||||
|
||||
/**
|
||||
* 原因分析
|
||||
*/
|
||||
void reasonAnalysis(ProcessParam processParam);
|
||||
|
||||
/**
|
||||
* 计划整改措施、实际采取措施、成效分析
|
||||
*/
|
||||
void process(ProcessParam processParam, String code);
|
||||
|
||||
/**
|
||||
* 问题归档
|
||||
*/
|
||||
void archive(String powerQualityProblemNo);
|
||||
|
||||
/**
|
||||
* 上传文件
|
||||
*/
|
||||
MinIoUploadResDTO uploadFile(MultipartFile issuesFile);
|
||||
|
||||
/**
|
||||
* 下载文件
|
||||
*/
|
||||
String downloadFile(String powerQualityProblemNo, String reportProcess);
|
||||
|
||||
/**
|
||||
* 删除问题
|
||||
*/
|
||||
void deleteIssues(String powerQualityProblemNo);
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
package com.njcn.process.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.vo.LoadTypeRelationExcel;
|
||||
import com.njcn.process.pojo.vo.LoadTypeUserExcel;
|
||||
import com.njcn.process.pojo.vo.RLoadTypeUserManageVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 干扰源用户管理
|
||||
*
|
||||
* @author qijian
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/11 - 9:20
|
||||
*/
|
||||
public interface LoadTypeUserManageService {
|
||||
|
||||
/**
|
||||
* 干扰源用户分页查询
|
||||
* @param loadTypeUserSearchParam
|
||||
* @return
|
||||
*/
|
||||
Page<RLoadTypeUserManageVO> getLoadTypeUserList(LoadTypeUserSearchParam loadTypeUserSearchParam);
|
||||
|
||||
/**
|
||||
* 根据id查询干扰源用户
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
RLoadTypeUserManageVO getLoadTypeUserById(String id);
|
||||
|
||||
/**
|
||||
* 新增干扰源用户
|
||||
* @param loadTypeUserParam
|
||||
* @return
|
||||
*/
|
||||
boolean addLoadTypeUser(LoadTypeUserParam loadTypeUserParam);
|
||||
|
||||
/**
|
||||
* 上传干扰源用户入网报告
|
||||
* @param loadTypeUserIUploadParam
|
||||
* @return
|
||||
*/
|
||||
boolean uploadLoadTypeUserI(LoadTypeUserIUploadParam loadTypeUserIUploadParam);
|
||||
|
||||
/**
|
||||
* 关联营销用户
|
||||
* @param loadTypeUserAssociateParam
|
||||
* @return
|
||||
*/
|
||||
boolean linkUser(LoadTypeUserAssociateParam loadTypeUserAssociateParam);
|
||||
|
||||
/**
|
||||
* 查询所有干扰源用户(与营销系统关联)
|
||||
* @param loadTypeUserSearchParam
|
||||
* @return
|
||||
*/
|
||||
Page<RLoadTypeUserManageVO> getLoadTypeRelationList(LoadTypeUserSearchParam loadTypeUserSearchParam);
|
||||
|
||||
/**
|
||||
* 上传干扰源用户实测报告
|
||||
* @param loadTypeUserAUploadParam
|
||||
* @return
|
||||
*/
|
||||
boolean uploadLoadTypeUserA(LoadTypeUserAUploadParam loadTypeUserAUploadParam);
|
||||
|
||||
/**
|
||||
* 导出未建档干扰源用户管理信息
|
||||
* @param list
|
||||
* @return
|
||||
*/
|
||||
List<LoadTypeUserExcel> exportLoadTypeUserList(List<String> list);
|
||||
|
||||
/**
|
||||
* 导出干扰源用户常态化管理信息
|
||||
* @param list
|
||||
* @return
|
||||
*/
|
||||
List<LoadTypeRelationExcel> exportLoadTypeRelationList(List<String> list);
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.njcn.process.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.process.pojo.param.RGeneralSurveyPlandetailQueryParm;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanDetail;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanVO;
|
||||
|
||||
/**
|
||||
*
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 11:28【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
|
||||
public interface RGeneralSurveyPlanDetailService extends IMppService<RGeneralSurveyPlanDetail> {
|
||||
|
||||
/**
|
||||
* @Description: 根据planNO查询普测计划详情
|
||||
* @Param: [rGeneralSurveyPlandetailQueryParm]
|
||||
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.njcn.process.pojo.vo.RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/15
|
||||
*/
|
||||
IPage<RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO> queryPlandetail(RGeneralSurveyPlandetailQueryParm rGeneralSurveyPlandetailQueryParm);
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
package com.njcn.process.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.process.pojo.param.RGeneralSurveyPlanAddParm;
|
||||
import com.njcn.process.pojo.param.RGeneralSurveyPlanQueryParm;
|
||||
import com.njcn.process.pojo.param.SurveyPlanQuestionQueryParm;
|
||||
import com.njcn.process.pojo.param.SurveyResultUploadParam;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanPO;
|
||||
import com.njcn.process.pojo.vo.SurveyPlanExcel;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanDetailOnQuestionVO;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 11:24【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
public interface RGeneralSurveyPlanPOService extends IMppService<RGeneralSurveyPlanPO>{
|
||||
|
||||
/**
|
||||
* @Description: addPlan
|
||||
* @Param: [rGeneralSurveyPlanAddParm]
|
||||
* @return: java.lang.Boolean
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/14
|
||||
*/
|
||||
Boolean addPlan(RGeneralSurveyPlanAddParm rGeneralSurveyPlanAddParm);
|
||||
/**
|
||||
* @Description: query
|
||||
* @Param: [rGeneralSurveyPlanQueryParm]
|
||||
* @return: java.util.List<com.njcn.process.pojo.vo.RGeneralSurveyPlanVO>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/15
|
||||
*/
|
||||
IPage<RGeneralSurveyPlanVO> query(RGeneralSurveyPlanQueryParm rGeneralSurveyPlanQueryParm,List<String> statusList);
|
||||
/**
|
||||
* @Description: surveyResultUpload
|
||||
* @Param: [surveyResultUploadParam]
|
||||
* @return: boolean
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/18
|
||||
*/
|
||||
boolean surveyResultUpload(SurveyResultUploadParam surveyResultUploadParam);
|
||||
/**
|
||||
* @Description: surveyResultDownload
|
||||
* @Param: [planNo]
|
||||
* @return: java.util.List<java.lang.String>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/18
|
||||
*/
|
||||
List<MinIoUploadResDTO> surveyResultDownload(String planNo);
|
||||
/**
|
||||
* @Description: exportSurveyPlan
|
||||
* @Param: []
|
||||
* @return: java.util.List<com.njcn.process.pojo.vo.SurveyPlanExcel>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/21
|
||||
*/
|
||||
List<SurveyPlanExcel> exportSurveyPlan(List<String> planIdList);
|
||||
/**
|
||||
* @Description: querySurveyPlanOnQuestion
|
||||
* @Param: [questionQueryParm]
|
||||
* @return: java.util.List<com.njcn.process.pojo.vo.RGeneralSurveyPlanDetailOnQuestionVO>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/30
|
||||
*/
|
||||
List<RGeneralSurveyPlanDetailOnQuestionVO> querySurveyPlanOnQuestion(SurveyPlanQuestionQueryParm questionQueryParm);
|
||||
/**
|
||||
* @Description: 更具questionQueryParm查计划名称
|
||||
* @Param: [questionQueryParm]
|
||||
* @return: java.util.List<com.njcn.process.pojo.param.SurveyPlanQuestionQueryParm>
|
||||
* @Author: clam
|
||||
* @Date: 2022/12/1
|
||||
*/
|
||||
List<RGeneralSurveyPlanPO> querySurveyPlanName(SurveyPlanQuestionQueryParm questionQueryParm);
|
||||
}
|
||||
@@ -0,0 +1,532 @@
|
||||
package com.njcn.process.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.extra.pinyin.PinyinUtil;
|
||||
import com.alibaba.nacos.shaded.com.google.common.collect.Lists;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.common.pojo.constant.BizParamConstant;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.minio.config.MinIoProperties;
|
||||
import com.njcn.minio.utils.MinIoUtils;
|
||||
import com.njcn.process.enums.ProcessResponseEnum;
|
||||
import com.njcn.process.mapper.*;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.po.*;
|
||||
import com.njcn.process.pojo.vo.*;
|
||||
import com.njcn.process.service.IssuesService;
|
||||
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 com.njcn.user.api.DeptFeignClient;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 电能质量问题实现类
|
||||
* @author xiaoyao
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/14 11:03
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class IssuesServiceImpl implements IssuesService {
|
||||
|
||||
private final DeptFeignClient deptFeignClient;
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
|
||||
private final RStatElectricQualityProblemFlowMapper issuesMapper;
|
||||
|
||||
private final RMpOnlineMonitorOverproofProblemMapper excessiveMapper;
|
||||
|
||||
private final RMpGeneralSurveyOverproofProblemMapper generalSurveyMapper;
|
||||
|
||||
private final RMpUserComplaintMapper complaintMapper;
|
||||
|
||||
private final RMpOperationMonitorAbnormalMapper abnormalMapper;
|
||||
|
||||
private final RMpElectricQualityProblemFlowDetailsMapper flowDetailsMapper;
|
||||
|
||||
@Resource
|
||||
private MinIoUtils minIoUtils;
|
||||
|
||||
@Resource
|
||||
private MinIoProperties minIoProperties;
|
||||
|
||||
/**
|
||||
* 新增电能质量问题流程表信息
|
||||
*/
|
||||
private LocalDateTime addIssues(IssuesParam issuesParam,String powerQualityProblemNo){
|
||||
RStatElectricQualityProblemFlow issues = new RStatElectricQualityProblemFlow();
|
||||
LocalDateTime local = LocalDateTimeUtil.now();
|
||||
BeanUtil.copyProperties(issuesParam,issues);
|
||||
issues.setPowerQualityProblemNo(powerQualityProblemNo);
|
||||
issues.setDataDate(local);
|
||||
issues.setStartTime(null);
|
||||
issues.setUpdateTime(null);
|
||||
issues.setReportProcess(DicDataEnum.NOT_REPORTED.getCode());
|
||||
issues.setReportProcessStatus(DicDataEnum.AUDITT.getCode());
|
||||
issuesMapper.insert(issues);
|
||||
return local;
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成问题编号
|
||||
*/
|
||||
private String getPowerQualityProblemNo(IssuesParam issuesParam){
|
||||
StringBuilder powerQualityProblemNo = new StringBuilder();
|
||||
powerQualityProblemNo.append(PinyinUtil.getFirstLetter(issuesParam.getOrgName(),"").toUpperCase()).append("-");
|
||||
if (DicDataEnum.ONLINE.getCode().equals(issuesParam.getProblemSources())){
|
||||
powerQualityProblemNo.append("ZXJC");
|
||||
}else if (DicDataEnum.GENERAL.getCode().equals(issuesParam.getProblemSources())){
|
||||
powerQualityProblemNo.append("PCCB");
|
||||
}else if (DicDataEnum.USER_COMPLAINTS.getCode().equals(issuesParam.getProblemSources())){
|
||||
powerQualityProblemNo.append("YHTS");
|
||||
}else if (DicDataEnum.DEV_EXCEPTION.getCode().equals(issuesParam.getProblemSources())){
|
||||
powerQualityProblemNo.append("YWYC");
|
||||
}
|
||||
String nowDate = DateUtil.format(new Date(), "yyyyMMdd");
|
||||
String processDate = DateUtil.format(new Date(), "yyyy-MM-dd");
|
||||
powerQualityProblemNo.append(nowDate);
|
||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> issuesQuery = new LambdaQueryWrapper<>();
|
||||
LocalDateTime local = LocalDateTimeUtil.parse(processDate + "T00:00:00");
|
||||
LocalDateTime localEnd = LocalDateTimeUtil.parse(processDate + "T23:59:59");
|
||||
issuesQuery.ge(RStatElectricQualityProblemFlow::getDataDate, local).le(RStatElectricQualityProblemFlow::getDataDate,localEnd);
|
||||
Integer count = issuesMapper.selectCount(issuesQuery);
|
||||
powerQualityProblemNo.append(StrUtil.padPre(String.valueOf(count + 1),5, '0'));
|
||||
return powerQualityProblemNo.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 填报在线监测超标问题
|
||||
*/
|
||||
@Override
|
||||
public void addExcessiveIssues(ExcessiveParam excessiveParam) {
|
||||
IssuesParam issuesParam = new IssuesParam();
|
||||
BeanUtil.copyProperties(excessiveParam,issuesParam);
|
||||
String powerQualityProblemNo = getPowerQualityProblemNo(issuesParam);
|
||||
LocalDateTime localDateTime = addIssues(issuesParam,powerQualityProblemNo);
|
||||
RMpOnlineMonitorOverproofProblem excessive = new RMpOnlineMonitorOverproofProblem();
|
||||
BeanUtil.copyProperties(excessiveParam,excessive);
|
||||
excessive.setPowerQualityProblemNo(powerQualityProblemNo);
|
||||
excessive.setDataDate(localDateTime);
|
||||
excessiveMapper.insert(excessive);
|
||||
}
|
||||
|
||||
/**
|
||||
* 填报普测超标问题
|
||||
*/
|
||||
@Override
|
||||
public void addGeneralSurveyIssues(GeneralSurveyParam generalSurveyParam) {
|
||||
IssuesParam issuesParam = new IssuesParam();
|
||||
BeanUtil.copyProperties(generalSurveyParam,issuesParam);
|
||||
String powerQualityProblemNo = getPowerQualityProblemNo(issuesParam);
|
||||
LocalDateTime localDateTime = addIssues(issuesParam,powerQualityProblemNo);
|
||||
RMpGeneralSurveyOverproofProblem generalSurvey = new RMpGeneralSurveyOverproofProblem();
|
||||
BeanUtil.copyProperties(generalSurveyParam,generalSurvey);
|
||||
generalSurvey.setOverLimitTarget(ArrayUtil.toString(generalSurveyParam.getSteadyState())+ArrayUtil.toString(generalSurveyParam.getTransientIndicators()));
|
||||
generalSurvey.setPowerQualityProblemNo(powerQualityProblemNo);
|
||||
generalSurvey.setDataDate(localDateTime);
|
||||
generalSurveyMapper.insert(generalSurvey);
|
||||
}
|
||||
|
||||
/**
|
||||
* 填报用户投诉问题
|
||||
*/
|
||||
@Override
|
||||
public void addComplaintIssues(ComplaintParam complaintParam) {
|
||||
IssuesParam issuesParam = new IssuesParam();
|
||||
BeanUtil.copyProperties(complaintParam,issuesParam);
|
||||
String powerQualityProblemNo = getPowerQualityProblemNo(issuesParam);
|
||||
LocalDateTime localDateTime = addIssues(issuesParam,powerQualityProblemNo);
|
||||
RMpUserComplaint complaint = new RMpUserComplaint();
|
||||
BeanUtil.copyProperties(complaintParam,complaint);
|
||||
complaint.setAbnormalTarget(ArrayUtil.toString(complaintParam.getSteadyState())+ArrayUtil.toString(complaintParam.getTransientIndicators()));
|
||||
complaint.setPowerQualityProblemNo(powerQualityProblemNo);
|
||||
complaint.setDataDate(localDateTime);
|
||||
complaintMapper.insert(complaint);
|
||||
}
|
||||
|
||||
/**
|
||||
* 填报运维监控异常问题
|
||||
*/
|
||||
@Override
|
||||
public void addAbnormalIssues(AbnormalParam abnormalParam) {
|
||||
IssuesParam issuesParam = new IssuesParam();
|
||||
BeanUtil.copyProperties(abnormalParam,issuesParam);
|
||||
String powerQualityProblemNo = getPowerQualityProblemNo(issuesParam);
|
||||
LocalDateTime localDateTime = addIssues(issuesParam,powerQualityProblemNo);
|
||||
RMpOperationMonitorAbnormal abnormal = new RMpOperationMonitorAbnormal();
|
||||
BeanUtil.copyProperties(abnormalParam,abnormal);
|
||||
abnormal.setAbnormalTarget(ArrayUtil.toString(abnormalParam.getSteadyState())+ArrayUtil.toString(abnormalParam.getTransientIndicators()));
|
||||
abnormal.setPowerQualityProblemNo(powerQualityProblemNo);
|
||||
abnormal.setDataDate(localDateTime);
|
||||
abnormalMapper.insert(abnormal);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询问题列表
|
||||
*/
|
||||
@Override
|
||||
public Page<IssuesVO> getIssues(QueryIssuesParam param) {
|
||||
Page<IssuesVO> page = new Page<>(param.getPageNum(), param.getPageSize());
|
||||
Date dateOut = DateUtil.parse(param.getDataDate());
|
||||
Date dateBegin = new Date();
|
||||
Date dateEnd = new Date();
|
||||
if (Integer.valueOf(BizParamConstant.STAT_BIZ_YEAR).equals(param.getDataType())){
|
||||
dateBegin = DateUtil.beginOfYear(dateOut);
|
||||
dateEnd = DateUtil.endOfYear(dateOut);
|
||||
}else if (Integer.valueOf(BizParamConstant.STAT_BIZ_QUARTER).equals(param.getDataType())){
|
||||
dateBegin = DateUtil.beginOfQuarter(dateOut);
|
||||
dateEnd = DateUtil.endOfQuarter(dateOut);
|
||||
}else if (Integer.valueOf(BizParamConstant.STAT_BIZ_MONTH).equals(param.getDataType())){
|
||||
dateBegin = DateUtil.beginOfMonth(dateOut);
|
||||
dateEnd = DateUtil.endOfMonth(dateOut);
|
||||
}
|
||||
List<IssuesVO> out = issuesMapper.getIssues(param,DateUtil.formatDateTime(dateBegin), DateUtil.formatDateTime(dateEnd));
|
||||
if (!CollectionUtils.isEmpty(out)) {
|
||||
out.forEach(data -> data.setOrgName((deptFeignClient.getDeptById(data.getOrgNo()).getData().getName())));
|
||||
/*问题来源*/
|
||||
List<DictData> problemSourcesDictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.PROBLEM_SOURCES.getCode()).getData();
|
||||
problemSourcesDictData.forEach(dict -> out.stream().filter(data -> dict.getCode().equals(data.getProblemSources())).forEach(data -> data.setProblemSources(dict.getName())));
|
||||
page.setTotal(out.size());
|
||||
int pages = (int)Math.ceil(out.size()*1.0/param.getPageSize());
|
||||
page.setPages(pages);
|
||||
List<List<IssuesVO>> partition = Lists.partition(out, param.getPageSize());
|
||||
List<IssuesVO> issuesVOS = partition.get(param.getPageNum() - 1);
|
||||
page.setRecords(issuesVOS);
|
||||
}
|
||||
return page;
|
||||
}
|
||||
|
||||
/**
|
||||
* 问题基本信息查询
|
||||
*/
|
||||
private RStatElectricQualityProblemFlow issuesSelectOne(String powerQualityProblemNo){
|
||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
return issuesMapper.selectOne(issuesQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 填报流程详情查询
|
||||
*/
|
||||
private RMpElectricQualityProblemFlowDetails flowDetailSelectOne(String powerQualityProblemNo){
|
||||
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> flowQuery = new LambdaQueryWrapper<>();
|
||||
flowQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
return flowDetailsMapper.selectOne(flowQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理填报信息
|
||||
*/
|
||||
private FlowDetailVO processFlowDetail(RMpElectricQualityProblemFlowDetails details){
|
||||
FlowDetailVO process = new FlowDetailVO();
|
||||
BeanUtil.copyProperties(details,process);
|
||||
if (!StrUtil.isEmpty(details.getReportProcessContentYyfx())){
|
||||
process.setReportProcessContentYyfx(StrUtil.removeSuffix(StrUtil.removePrefix(details.getReportProcessContentYyfx(),"["),"]").split(","));
|
||||
StrUtil.trim(process.getReportProcessContentYyfx());
|
||||
}
|
||||
if (!StrUtil.isEmpty(details.getUserReportProcessContentYyfx())){
|
||||
process.setUserReportProcessContentYyfx(StrUtil.removeSuffix(StrUtil.removePrefix(details.getUserReportProcessContentYyfx(),"["),"]").split(","));
|
||||
StrUtil.trim(process.getUserReportProcessContentYyfx());
|
||||
}
|
||||
if (!StrUtil.isEmpty(details.getReportProcessContentJhzg())){
|
||||
process.setReportProcessContentJhzg(StrUtil.removeSuffix(StrUtil.removePrefix(details.getReportProcessContentJhzg(),"["),"]").split(","));
|
||||
StrUtil.trim(process.getReportProcessContentJhzg());
|
||||
}
|
||||
if (!StrUtil.isEmpty(details.getUserReportProcessContentJhzg())){
|
||||
process.setUserReportProcessContentJhzg(StrUtil.removeSuffix(StrUtil.removePrefix(details.getUserReportProcessContentJhzg(),"["),"]").split(","));
|
||||
StrUtil.trim(process.getUserReportProcessContentJhzg());
|
||||
}
|
||||
if (!StrUtil.isEmpty(details.getReportProcessContentSjcq())){
|
||||
process.setReportProcessContentSjcq(StrUtil.removeSuffix(StrUtil.removePrefix(details.getReportProcessContentSjcq(),"["),"]").split(","));
|
||||
StrUtil.trim(process.getReportProcessContentSjcq());
|
||||
}
|
||||
if (!StrUtil.isEmpty(details.getUserReportProcessContentSjcq())){
|
||||
process.setUserReportProcessContentSjcq(StrUtil.removeSuffix(StrUtil.removePrefix(details.getUserReportProcessContentSjcq(),"["),"]").split(","));
|
||||
StrUtil.trim(process.getUserReportProcessContentSjcq());
|
||||
}
|
||||
return process;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询在线监测超标问题详情
|
||||
*/
|
||||
@Override
|
||||
public ExcessiveDetailVO getExcessiveDetail(String powerQualityProblemNo) {
|
||||
ExcessiveDetailVO detail = new ExcessiveDetailVO();
|
||||
BeanUtil.copyProperties(issuesSelectOne(powerQualityProblemNo),detail);
|
||||
detail.setOrgName(deptFeignClient.getDeptById(detail.getOrgNo()).getData().getName());
|
||||
LambdaQueryWrapper<RMpOnlineMonitorOverproofProblem> excessiveQuery = new LambdaQueryWrapper<>();
|
||||
excessiveQuery.eq(RMpOnlineMonitorOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RMpOnlineMonitorOverproofProblem excessiveOut = excessiveMapper.selectOne(excessiveQuery);
|
||||
BeanUtil.copyProperties(excessiveOut,detail);
|
||||
RMpElectricQualityProblemFlowDetails flowDetails = flowDetailSelectOne(powerQualityProblemNo);
|
||||
BeanUtil.copyProperties(processFlowDetail(flowDetails),detail);
|
||||
return detail;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询用户投诉问题详情
|
||||
*/
|
||||
@Override
|
||||
public GeneralSurveyVO getGeneralSurveyDetail(String powerQualityProblemNo) {
|
||||
GeneralSurveyVO detail = new GeneralSurveyVO();
|
||||
BeanUtil.copyProperties(issuesSelectOne(powerQualityProblemNo),detail);
|
||||
detail.setOrgName(deptFeignClient.getDeptById(detail.getOrgNo()).getData().getName());
|
||||
LambdaQueryWrapper<RMpGeneralSurveyOverproofProblem> generalSurveyQuery = new LambdaQueryWrapper<>();
|
||||
generalSurveyQuery.eq(RMpGeneralSurveyOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RMpGeneralSurveyOverproofProblem generalSurveyOut = generalSurveyMapper.selectOne(generalSurveyQuery);
|
||||
BeanUtil.copyProperties(generalSurveyOut,detail);
|
||||
detail.setSteadyIndicator(steadyIndicator(generalSurveyOut.getOverLimitTarget()));
|
||||
detail.setTransientIndicators(transientIndicators(generalSurveyOut.getOverLimitTarget()));
|
||||
RMpElectricQualityProblemFlowDetails flowDetails = flowDetailSelectOne(powerQualityProblemNo);
|
||||
BeanUtil.copyProperties(processFlowDetail(flowDetails),detail);
|
||||
return detail;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询用户投诉问题详情
|
||||
*/
|
||||
@Override
|
||||
public ComplaintVO getComplaintDetail(String powerQualityProblemNo) {
|
||||
ComplaintVO detail = new ComplaintVO();
|
||||
BeanUtil.copyProperties(issuesSelectOne(powerQualityProblemNo),detail);
|
||||
detail.setOrgName(deptFeignClient.getDeptById(detail.getOrgNo()).getData().getName());
|
||||
LambdaQueryWrapper<RMpUserComplaint> complaintQuery = new LambdaQueryWrapper<>();
|
||||
complaintQuery.eq(RMpUserComplaint::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RMpUserComplaint complaintOut = complaintMapper.selectOne(complaintQuery);
|
||||
BeanUtil.copyProperties(complaintOut,detail);
|
||||
detail.setSteadyIndicator(steadyIndicator(complaintOut.getAbnormalTarget()));
|
||||
detail.setTransientIndicators(transientIndicators(complaintOut.getAbnormalTarget()));
|
||||
RMpElectricQualityProblemFlowDetails flowDetails = flowDetailSelectOne(powerQualityProblemNo);
|
||||
BeanUtil.copyProperties(processFlowDetail(flowDetails),detail);
|
||||
if (!StrUtil.isEmpty(complaintOut.getPowerGridAffectDev())){
|
||||
detail.setPowerGridAffectDev(StrUtil.removeSuffix(StrUtil.removePrefix(complaintOut.getPowerGridAffectDev(),"["),"]").split(","));
|
||||
StrUtil.trim(detail.getPowerGridAffectDev());
|
||||
}
|
||||
if (!StrUtil.isEmpty(complaintOut.getUserAffectDev())){
|
||||
detail.setUserAffectDev(StrUtil.removeSuffix(StrUtil.removePrefix(complaintOut.getUserAffectDev(),"["),"]").split(","));
|
||||
StrUtil.trim(detail.getUserAffectDev());
|
||||
}
|
||||
return detail;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询运维异常问题详情
|
||||
*/
|
||||
@Override
|
||||
public AbnormalVO getAbnormalDetail(String powerQualityProblemNo) {
|
||||
AbnormalVO detail = new AbnormalVO();
|
||||
BeanUtil.copyProperties(issuesSelectOne(powerQualityProblemNo),detail);
|
||||
detail.setOrgName(deptFeignClient.getDeptById(detail.getOrgNo()).getData().getName());
|
||||
LambdaQueryWrapper<RMpOperationMonitorAbnormal> abnormalQuery = new LambdaQueryWrapper<>();
|
||||
abnormalQuery.eq(RMpOperationMonitorAbnormal::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RMpOperationMonitorAbnormal abnormalOut = abnormalMapper.selectOne(abnormalQuery);
|
||||
BeanUtil.copyProperties(abnormalOut,detail);
|
||||
detail.setSteadyIndicator(steadyIndicator(abnormalOut.getAbnormalTarget()));
|
||||
detail.setTransientIndicators(transientIndicators(abnormalOut.getAbnormalTarget()));
|
||||
RMpElectricQualityProblemFlowDetails flowDetails = flowDetailSelectOne(powerQualityProblemNo);
|
||||
BeanUtil.copyProperties(processFlowDetail(flowDetails),detail);
|
||||
if (!StrUtil.isEmpty(abnormalOut.getPowerGridAffectDev())){
|
||||
detail.setPowerGridAffectDev(StrUtil.removeSuffix(StrUtil.removePrefix(abnormalOut.getPowerGridAffectDev(),"["),"]").split(","));
|
||||
StrUtil.trim(detail.getPowerGridAffectDev());
|
||||
}
|
||||
if (!StrUtil.isEmpty(abnormalOut.getUserAffectDev())){
|
||||
detail.setUserAffectDev(StrUtil.removeSuffix(StrUtil.removePrefix(abnormalOut.getUserAffectDev(),"["),"]").split(","));
|
||||
StrUtil.trim(detail.getUserAffectDev());
|
||||
}
|
||||
return detail;
|
||||
}
|
||||
|
||||
/**
|
||||
* 稳态指标处理
|
||||
*/
|
||||
private String[] steadyIndicator(String target){
|
||||
String[] process = StrUtil.removePrefix(target.split("]\\[")[0],"\\[").split(",");
|
||||
StrUtil.trim(process);
|
||||
return process;
|
||||
}
|
||||
|
||||
/**
|
||||
* 暂态指标处理
|
||||
*/
|
||||
private String[] transientIndicators(String target){
|
||||
String[] process = StrUtil.removeSuffix(target.split("]\\[")[1],"]").split(",");
|
||||
StrUtil.trim(process);
|
||||
return process;
|
||||
}
|
||||
|
||||
/**
|
||||
* 原因分析
|
||||
*/
|
||||
@Override
|
||||
public void reasonAnalysis(ProcessParam processParam) {
|
||||
LocalDateTime local = LocalDateTimeUtil.now();
|
||||
RMpElectricQualityProblemFlowDetails details = new RMpElectricQualityProblemFlowDetails();
|
||||
BeanUtil.copyProperties(processParam,details);
|
||||
details.setDataDateYyfx(local);
|
||||
details.setReportProcessContentYyfx(ArrayUtil.toString(processParam.getReportProcessContentYyfx()));
|
||||
details.setUserReportProcessContentYyfx(ArrayUtil.toString(processParam.getUserReportProcessContentYyfx()));
|
||||
flowDetailsMapper.insert(details);
|
||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,processParam.getPowerQualityProblemNo());
|
||||
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(issuesQuery);
|
||||
issuesOut.setReportProcess(DicDataEnum.CAUSE_ANALYSIS.getCode());
|
||||
issuesMapper.update(issuesOut,issuesQuery);
|
||||
if (DicDataEnum.USER_COMPLAINTS.getCode().equals(issuesOut.getProblemSources())){
|
||||
LambdaQueryWrapper<RMpUserComplaint> complaintQuery = new LambdaQueryWrapper<>();
|
||||
complaintQuery.eq(RMpUserComplaint::getPowerQualityProblemNo,processParam.getPowerQualityProblemNo());
|
||||
RMpUserComplaint complaintOut = complaintMapper.selectOne(complaintQuery);
|
||||
complaintOut.setPowerGridAffectDev(ArrayUtil.toString(processParam.getPowerGridAffectDev()));
|
||||
complaintOut.setUserAffectDev(ArrayUtil.toString(processParam.getUserAffectDev()));
|
||||
complaintMapper.update(complaintOut,complaintQuery);
|
||||
}else if (DicDataEnum.DEV_EXCEPTION.getCode().equals(issuesOut.getProblemSources())){
|
||||
LambdaQueryWrapper<RMpOperationMonitorAbnormal> abnormalQuery = new LambdaQueryWrapper<>();
|
||||
abnormalQuery.eq(RMpOperationMonitorAbnormal::getPowerQualityProblemNo,processParam.getPowerQualityProblemNo());
|
||||
RMpOperationMonitorAbnormal abnormalOut = abnormalMapper.selectOne(abnormalQuery);
|
||||
abnormalOut.setPowerGridAffectDev(ArrayUtil.toString(processParam.getPowerGridAffectDev()));
|
||||
abnormalOut.setUserAffectDev(ArrayUtil.toString(processParam.getUserAffectDev()));
|
||||
abnormalMapper.update(abnormalOut,abnormalQuery);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 计划整改措施、实际采取措施、成效分析
|
||||
*/
|
||||
@Override
|
||||
public void process(ProcessParam processParam, String code) {
|
||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,processParam.getPowerQualityProblemNo());
|
||||
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(issuesQuery);
|
||||
if (DicDataEnum.SUCCESS.getCode().equals(issuesOut.getReportProcessStatus())){
|
||||
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> query = new LambdaQueryWrapper<>();
|
||||
query.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,processParam.getPowerQualityProblemNo());
|
||||
RMpElectricQualityProblemFlowDetails details = flowDetailsMapper.selectOne(query);
|
||||
LocalDateTime local = LocalDateTimeUtil.now();
|
||||
if (DicDataEnum.PLAN_MEASURES.getCode().equals(code)){
|
||||
details.setDataDateJhzg(local);
|
||||
details.setReportProcessContentJhzg(ArrayUtil.toString(processParam.getReportProcessContentJhzg()));
|
||||
details.setUserReportProcessContentJhzg(ArrayUtil.toString(processParam.getUserReportProcessContentJhzg()));
|
||||
details.setFileNameJhzg(processParam.getFileNameJhzg());
|
||||
details.setFilePathJhzg(processParam.getFilePathJhzg());
|
||||
}else if (DicDataEnum.ACTUAL_MEASURES.getCode().equals(code)){
|
||||
details.setDataDateSjcq(local);
|
||||
details.setReportProcessContentSjcq(ArrayUtil.toString(processParam.getReportProcessContentSjcq()));
|
||||
details.setUserReportProcessContentSjcq(ArrayUtil.toString(processParam.getUserReportProcessContentSjcq()));
|
||||
details.setFileNameSjcq(processParam.getFileNameSjcq());
|
||||
details.setFilePathSjcq(processParam.getFilePathSjcq());
|
||||
}else if (DicDataEnum.INSIGHTS.getCode().equals(code)){
|
||||
details.setDataDateZlxg(local);
|
||||
details.setDescriptionZlxg(processParam.getDescriptionZlxg());
|
||||
details.setFileNameZlxg(processParam.getFileNameZlxg());
|
||||
details.setFilePathZlxg(processParam.getFilePathZlxg());
|
||||
}
|
||||
flowDetailsMapper.update(details, query);
|
||||
issuesOut.setReportProcess(code);
|
||||
issuesOut.setReportProcessStatus(DicDataEnum.AUDITT.getCode());
|
||||
issuesMapper.update(issuesOut,issuesQuery);
|
||||
}else {
|
||||
throw new BusinessException(ProcessResponseEnum.PROCESS_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 问题归档
|
||||
*/
|
||||
@Override
|
||||
public void archive(String powerQualityProblemNo) {
|
||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> query = new LambdaQueryWrapper<>();
|
||||
query.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(query);
|
||||
if (DicDataEnum.INSIGHTS.getCode().equals(issuesOut.getReportProcess())
|
||||
&& DicDataEnum.SUCCESS.getCode().equals(issuesOut.getReportProcessStatus())){
|
||||
issuesOut.setReportProcess(DicDataEnum.ARCHIVED.getCode());
|
||||
issuesMapper.update(issuesOut,query);
|
||||
}else {
|
||||
throw new BusinessException(ProcessResponseEnum.ARCHIVE_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传文件
|
||||
*/
|
||||
@Override
|
||||
public MinIoUploadResDTO uploadFile(MultipartFile issuesFile) {
|
||||
try {
|
||||
return minIoUtils.upload(issuesFile, minIoProperties.getBucket(), "electricityQuality/");
|
||||
} catch (Exception e) {
|
||||
throw new BusinessException(ProcessResponseEnum.UPLOAD_FILE_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 下载文件
|
||||
*/
|
||||
@Override
|
||||
public String downloadFile(String powerQualityProblemNo,String reportProcess) {
|
||||
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RMpElectricQualityProblemFlowDetails details = flowDetailsMapper.selectOne(issuesQuery);
|
||||
String filePath = null;
|
||||
if (DicDataEnum.CAUSE_ANALYSIS.getName().equals(reportProcess)){
|
||||
filePath = details.getFilePathYyfx();
|
||||
}else if (DicDataEnum.PLAN_MEASURES.getName().equals(reportProcess)){
|
||||
filePath = details.getFilePathJhzg();
|
||||
}else if (DicDataEnum.ACTUAL_MEASURES.getName().equals(reportProcess)){
|
||||
filePath = details.getFilePathSjcq();
|
||||
}else if (DicDataEnum.INSIGHTS.getName().equals(reportProcess)){
|
||||
filePath = details.getFilePathZlxg();
|
||||
}
|
||||
return filePath;
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除问题
|
||||
*/
|
||||
@Override
|
||||
public void deleteIssues(String powerQualityProblemNo) {
|
||||
LambdaQueryWrapper<RStatElectricQualityProblemFlow> query = new LambdaQueryWrapper<>();
|
||||
query.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(query);
|
||||
if (DicDataEnum.ONLINE.getCode().equals(issuesOut.getProblemSources())){
|
||||
LambdaQueryWrapper<RMpOnlineMonitorOverproofProblem> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RMpOnlineMonitorOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
excessiveMapper.delete(issuesQuery);
|
||||
}else if (DicDataEnum.GENERAL.getCode().equals(issuesOut.getProblemSources())){
|
||||
LambdaQueryWrapper<RMpGeneralSurveyOverproofProblem> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RMpGeneralSurveyOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
generalSurveyMapper.delete(issuesQuery);
|
||||
}else if (DicDataEnum.USER_COMPLAINTS.getCode().equals(issuesOut.getProblemSources())){
|
||||
LambdaQueryWrapper<RMpUserComplaint> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RMpUserComplaint::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
complaintMapper.delete(issuesQuery);
|
||||
}else if (DicDataEnum.DEV_EXCEPTION.getCode().equals(issuesOut.getProblemSources())){
|
||||
LambdaQueryWrapper<RMpOperationMonitorAbnormal> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RMpOperationMonitorAbnormal::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
abnormalMapper.delete(issuesQuery);
|
||||
}
|
||||
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> issuesQuery = new LambdaQueryWrapper<>();
|
||||
issuesQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,powerQualityProblemNo);
|
||||
flowDetailsMapper.delete(issuesQuery);
|
||||
issuesMapper.delete(query);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,345 @@
|
||||
package com.njcn.process.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.device.pms.api.DistributionMonitorClient;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.minio.config.MinIoProperties;
|
||||
import com.njcn.minio.utils.MinIoUtils;
|
||||
import com.njcn.process.constant.Param;
|
||||
import com.njcn.process.enums.ProcessResponseEnum;
|
||||
import com.njcn.process.mapper.LoadTypeUserManageMapper;
|
||||
import com.njcn.process.pojo.param.*;
|
||||
import com.njcn.process.pojo.po.RLoadTypeUserManage;
|
||||
import com.njcn.process.pojo.vo.LoadTypeRelationExcel;
|
||||
import com.njcn.process.pojo.vo.LoadTypeUserExcel;
|
||||
import com.njcn.process.pojo.vo.RLoadTypeUserManageVO;
|
||||
import com.njcn.process.service.LoadTypeUserManageService;
|
||||
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 com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.user.pojo.vo.PvTerminalTreeVO;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 干扰源用户管理
|
||||
*
|
||||
* @author qijian
|
||||
* @version 1.0.0
|
||||
* @createTime 2022/11/11 - 9:20
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService {
|
||||
|
||||
private final LoadTypeUserManageMapper loadTypeUserManageMapper;
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
|
||||
private final DistributionMonitorClient distributionMonitorClient;
|
||||
|
||||
private final DeptFeignClient deptFeignClient;
|
||||
|
||||
@Resource
|
||||
private MinIoUtils minIoUtils;
|
||||
|
||||
@Resource
|
||||
private MinIoProperties minIoProperties;
|
||||
|
||||
/**
|
||||
* 干扰源用户分页查询
|
||||
* @param loadTypeUserSearchParam
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Page<RLoadTypeUserManageVO> getLoadTypeUserList(LoadTypeUserSearchParam loadTypeUserSearchParam){
|
||||
Page<RLoadTypeUserManageVO> page = new Page<>(loadTypeUserSearchParam.getPageNum(), loadTypeUserSearchParam.getPageSize());
|
||||
Page<RLoadTypeUserManageVO> loadTypeUserPage = loadTypeUserManageMapper.getLoadTypeUserPage(page, loadTypeUserSearchParam);
|
||||
|
||||
//部门处理:根据部门code取名称
|
||||
List<RLoadTypeUserManageVO> list = loadTypeUserPage.getRecords();
|
||||
List<PvTerminalTreeVO> dept = deptFeignClient.allDeptList().getData();
|
||||
Map<String, PvTerminalTreeVO> pvTerminalTreeVOMap = dept.stream().collect(Collectors.toMap(PvTerminalTreeVO::getId, pvTerminalTreeVO -> pvTerminalTreeVO));
|
||||
List<RLoadTypeUserManageVO> resultList = list.stream().map(item -> {
|
||||
RLoadTypeUserManageVO rLoadTypeUserManageVO = new RLoadTypeUserManageVO();
|
||||
BeanUtils.copyProperties(item, rLoadTypeUserManageVO);
|
||||
rLoadTypeUserManageVO.setOrgName(pvTerminalTreeVOMap.get(item.getOrgNo()).getName()); //单位名称
|
||||
return rLoadTypeUserManageVO;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
//返回新的数据组
|
||||
return loadTypeUserPage.setRecords(resultList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据id查询干扰源用户
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public RLoadTypeUserManageVO getLoadTypeUserById(String id) {
|
||||
RLoadTypeUserManage rLoadTypeUserManage = loadTypeUserManageMapper.selectById(id);
|
||||
RLoadTypeUserManageVO rLoadTypeUserManageVO = new RLoadTypeUserManageVO();
|
||||
BeanUtils.copyProperties(rLoadTypeUserManage, rLoadTypeUserManageVO);
|
||||
//文件
|
||||
if (rLoadTypeUserManageVO.getIFilePath() != null){
|
||||
String iFile = minIoUtils.getObjectUrl(minIoProperties.getBucket(), rLoadTypeUserManageVO.getIFilePath(), 7 * 24 * 60 * 60);
|
||||
rLoadTypeUserManageVO.setIFile(iFile);
|
||||
}
|
||||
if (rLoadTypeUserManageVO.getAFilePath() != null){
|
||||
String aFile = minIoUtils.getObjectUrl(minIoProperties.getBucket(), rLoadTypeUserManageVO.getAFilePath(), 7 * 24 * 60 * 60);
|
||||
rLoadTypeUserManageVO.setIFile(aFile);
|
||||
}
|
||||
return rLoadTypeUserManageVO;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增干扰源用户
|
||||
* @param loadTypeUserParam
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean addLoadTypeUser(LoadTypeUserParam loadTypeUserParam) {
|
||||
//参数转换
|
||||
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
|
||||
BeanUtils.copyProperties(loadTypeUserParam, rLoadTypeUserManage);
|
||||
|
||||
//塞入建档时间
|
||||
Date date = DateUtil.parse(loadTypeUserParam.getRecordTime(), "yyyy-MM-dd HH:mm:ss");
|
||||
rLoadTypeUserManage.setRecordTime(date);
|
||||
loadTypeUserManageMapper.insert(rLoadTypeUserManage);
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传干扰源用户入网报告
|
||||
* @param loadTypeUserIUploadParam
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean uploadLoadTypeUserI(LoadTypeUserIUploadParam loadTypeUserIUploadParam) {
|
||||
|
||||
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
|
||||
BeanUtils.copyProperties(loadTypeUserIUploadParam, rLoadTypeUserManage);
|
||||
|
||||
//文件上传到Minio服务器,存入文件名
|
||||
if(loadTypeUserIUploadParam.getFile() != null){
|
||||
MinIoUploadResDTO minIoUploadResDTO = fileToMinio(loadTypeUserIUploadParam.getFile());
|
||||
rLoadTypeUserManage.setIFilePath(minIoUploadResDTO.getMinFileName());
|
||||
rLoadTypeUserManage.setIUploadTime(new Date());
|
||||
}
|
||||
|
||||
//提交:待审核/保存:新建
|
||||
DictData dictData;
|
||||
if(Objects.equals(Param.LOAD_TYPE_USER_SUBMIT,loadTypeUserIUploadParam.getStatus())){
|
||||
dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.AUDIT.getCode()).getData();
|
||||
}else{
|
||||
dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.NEWLY.getCode()).getData();
|
||||
}
|
||||
rLoadTypeUserManage.setIStatus(dictData.getId());
|
||||
rLoadTypeUserManage.setIIsFileUpload(1);
|
||||
loadTypeUserManageMapper.updateById(rLoadTypeUserManage);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 关联营销用户
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean linkUser(LoadTypeUserAssociateParam loadTypeUserAssociateParam) {
|
||||
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
|
||||
//填入数据修改
|
||||
BeanUtils.copyProperties(loadTypeUserAssociateParam, rLoadTypeUserManage);
|
||||
loadTypeUserManageMapper.updateById(rLoadTypeUserManage);
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有干扰源用户(与营销系统关联)
|
||||
* @param loadTypeUserSearchParam
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Page<RLoadTypeUserManageVO> getLoadTypeRelationList(LoadTypeUserSearchParam loadTypeUserSearchParam) {
|
||||
Page<RLoadTypeUserManageVO> page = new Page<>(loadTypeUserSearchParam.getPageNum(), loadTypeUserSearchParam.getPageSize());
|
||||
Page<RLoadTypeUserManageVO> loadTypeUserPage = loadTypeUserManageMapper.getLoadTypeRelationPage(page,loadTypeUserSearchParam);
|
||||
|
||||
//部门处理:根据部门code取名称
|
||||
List<RLoadTypeUserManageVO> list = loadTypeUserPage.getRecords();
|
||||
List<PvTerminalTreeVO> dept = deptFeignClient.allDeptList().getData();
|
||||
Map<String, PvTerminalTreeVO> pvTerminalTreeVOMap = dept.stream().collect(Collectors.toMap(PvTerminalTreeVO::getId, pvTerminalTreeVO -> pvTerminalTreeVO));
|
||||
List<RLoadTypeUserManageVO> resultList = list.stream().map(item -> {
|
||||
RLoadTypeUserManageVO rLoadTypeUserManageVO = new RLoadTypeUserManageVO();
|
||||
BeanUtils.copyProperties(item, rLoadTypeUserManageVO);
|
||||
rLoadTypeUserManageVO.setOrgName(pvTerminalTreeVOMap.get(item.getOrgNo()).getName()); //单位名称
|
||||
return rLoadTypeUserManageVO;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
//返回新的数据组
|
||||
return loadTypeUserPage.setRecords(resultList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传文件到Minio
|
||||
*
|
||||
* @param file 文件
|
||||
* @return 成功标记
|
||||
*/
|
||||
private MinIoUploadResDTO fileToMinio(MultipartFile file) {
|
||||
try {
|
||||
//把名称存入数据
|
||||
MinIoUploadResDTO upload = minIoUtils.upload(file, minIoProperties.getBucket(), "loadTypeUser/");
|
||||
return upload;
|
||||
} catch (Exception e) {
|
||||
throw new BusinessException(ProcessResponseEnum.UPLOAD_FILE_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传干扰源用户入网报告
|
||||
* @param loadTypeUserAUploadParam
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean uploadLoadTypeUserA(LoadTypeUserAUploadParam loadTypeUserAUploadParam) {
|
||||
|
||||
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
|
||||
BeanUtils.copyProperties(loadTypeUserAUploadParam, rLoadTypeUserManage);
|
||||
|
||||
//文件上传到Minio服务器,存入文件名
|
||||
if(loadTypeUserAUploadParam.getFile() != null){
|
||||
MinIoUploadResDTO minIoUploadResDTO = fileToMinio(loadTypeUserAUploadParam.getFile());
|
||||
rLoadTypeUserManage.setAFilePath(minIoUploadResDTO.getMinFileName());
|
||||
rLoadTypeUserManage.setAUploadTime(new Date());
|
||||
}
|
||||
|
||||
//提交:待审核/保存:新建
|
||||
DictData dictData;
|
||||
if(Objects.equals(Param.LOAD_TYPE_USER_SUBMIT,loadTypeUserAUploadParam.getStatus())){
|
||||
dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.AUDIT.getCode()).getData();
|
||||
}else{
|
||||
dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.NEWLY.getCode()).getData();
|
||||
}
|
||||
rLoadTypeUserManage.setAStatus(dictData.getId());
|
||||
loadTypeUserManageMapper.updateById(rLoadTypeUserManage);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出未建档干扰源用户管理信息
|
||||
* @param list
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<LoadTypeUserExcel> exportLoadTypeUserList(List<String> list) {
|
||||
//数据处理
|
||||
LambdaQueryWrapper<RLoadTypeUserManage> queryWrapper = new LambdaQueryWrapper<> ();
|
||||
queryWrapper.in(RLoadTypeUserManage::getId, list);
|
||||
List<RLoadTypeUserManage> rLoadTypeUserManages = loadTypeUserManageMapper.selectList(queryWrapper);
|
||||
//1、部门数据
|
||||
List<PvTerminalTreeVO> dept = deptFeignClient.allDeptList().getData();
|
||||
Map<String, PvTerminalTreeVO> pvTerminalTreeVOMap = dept.stream().collect(Collectors.toMap(PvTerminalTreeVO::getId, pvTerminalTreeVO -> pvTerminalTreeVO));
|
||||
|
||||
//2、取干扰源类型
|
||||
List<DictData> loadTypeList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.INTERFERENCE_SOURCE.getCode()).getData();
|
||||
Map<String, DictData> loadTypeMap = loadTypeList.stream().collect(Collectors.toMap(DictData::getId, dictData -> dictData));
|
||||
|
||||
//3、取入网报告状态
|
||||
List<DictData> iStatusList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.ON_NETWORK_STATUS.getCode()).getData();
|
||||
Map<String, DictData> iStatusMap = iStatusList.stream().collect(Collectors.toMap(DictData::getId, dictData -> dictData));
|
||||
|
||||
List<LoadTypeUserExcel> resultList = rLoadTypeUserManages.stream().map(item -> {
|
||||
LoadTypeUserExcel loadTypeUserExcel = new LoadTypeUserExcel();
|
||||
if (item.getUserName() != null){
|
||||
loadTypeUserExcel.setUserName(item.getUserName());
|
||||
}
|
||||
if (item.getRecordTime() != null){
|
||||
loadTypeUserExcel.setRecordTime(item.getRecordTime());
|
||||
}
|
||||
if (item.getAIsFileUpload() != null){
|
||||
loadTypeUserExcel.setIIsFileUpload(item.getIIsFileUpload() == 0 ? "否" : "是"); //实测报告是否上传
|
||||
}
|
||||
if (item.getOrgNo() != null){
|
||||
loadTypeUserExcel.setOrgName(pvTerminalTreeVOMap.get(item.getOrgNo()).getName()); //单位
|
||||
}
|
||||
if (item.getLoadType() != null){
|
||||
loadTypeUserExcel.setLoadTypeName(loadTypeMap.get(item.getLoadType()).getName()); //入网报告状态
|
||||
}
|
||||
if (item.getIStatus() != null){
|
||||
loadTypeUserExcel.setIStatusName(iStatusMap.get(item.getIStatus()).getName()); //入网报告状态
|
||||
}
|
||||
if (item.getAIsFileUpload() != null){
|
||||
loadTypeUserExcel.setIIsFileUpload(item.getIIsFileUpload() == 0 ? "否" : "是"); //实测报告是否上传
|
||||
}
|
||||
return loadTypeUserExcel;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
return resultList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出干扰源用户常态化管理信息
|
||||
* @param list
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<LoadTypeRelationExcel> exportLoadTypeRelationList(List<String> list) {
|
||||
//数据处理
|
||||
LambdaQueryWrapper<RLoadTypeUserManage> queryWrapper = new LambdaQueryWrapper<> ();
|
||||
queryWrapper.in(RLoadTypeUserManage::getId, list);
|
||||
List<RLoadTypeUserManage> rLoadTypeUserManages = loadTypeUserManageMapper.selectList(queryWrapper);
|
||||
//1、部门数据
|
||||
List<PvTerminalTreeVO> dept = deptFeignClient.allDeptList().getData();
|
||||
Map<String, PvTerminalTreeVO> pvTerminalTreeVOMap = dept.stream().collect(Collectors.toMap(PvTerminalTreeVO::getId, pvTerminalTreeVO -> pvTerminalTreeVO));
|
||||
|
||||
//2、取干扰源类型
|
||||
List<DictData> loadTypeList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.INTERFERENCE_SOURCE.getCode()).getData();
|
||||
Map<String, DictData> loadTypeMap = loadTypeList.stream().collect(Collectors.toMap(DictData::getId, dictData -> dictData));
|
||||
|
||||
//3、取实测报告状态
|
||||
List<DictData> aStatusList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.ON_NETWORK_STATUS.getCode()).getData();
|
||||
Map<String, DictData> aStatusMap = aStatusList.stream().collect(Collectors.toMap(DictData::getId, dictData -> dictData));
|
||||
|
||||
List<LoadTypeRelationExcel> resultList = rLoadTypeUserManages.stream().map(item -> {
|
||||
LoadTypeRelationExcel loadTypeRelationExcel = new LoadTypeRelationExcel();
|
||||
if (item.getOrgNo() != null){
|
||||
loadTypeRelationExcel.setOrgName(pvTerminalTreeVOMap.get(item.getOrgNo()).getName());
|
||||
}
|
||||
if (item.getLoadType() != null){
|
||||
loadTypeRelationExcel.setLoadTypeName(loadTypeMap.get(item.getLoadType()).getName());
|
||||
}
|
||||
if (item.getUserName() != null){
|
||||
loadTypeRelationExcel.setUserName(item.getUserName());
|
||||
}
|
||||
if (item.getRelationUserName() != null){
|
||||
loadTypeRelationExcel.setRelationUserName(item.getRelationUserName());
|
||||
}
|
||||
if (item.getAStatus() != null){
|
||||
loadTypeRelationExcel.setAStatusName(aStatusMap.get(item.getIStatus()).getName());
|
||||
}
|
||||
return loadTypeRelationExcel;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
return resultList;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
package com.njcn.process.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.process.mapper.RGeneralSurveyPlanDetailMapper;
|
||||
import com.njcn.process.pojo.param.RGeneralSurveyPlandetailQueryParm;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanDetail;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanVO;
|
||||
import com.njcn.process.service.RGeneralSurveyPlanDetailService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
*
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 11:28【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Service
|
||||
public class RGeneralSurveyPlanDetailServiceImpl extends MppServiceImpl<RGeneralSurveyPlanDetailMapper, RGeneralSurveyPlanDetail> implements RGeneralSurveyPlanDetailService{
|
||||
|
||||
|
||||
private @Autowired
|
||||
RGeneralSurveyPlanDetailMapper rGeneralSurveyPlanDetailMapper;
|
||||
/**
|
||||
* @param rGeneralSurveyPlandetailQueryParm
|
||||
* @Description: 根据planNO查询普测计划详情
|
||||
* @Param: [rGeneralSurveyPlandetailQueryParm]
|
||||
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.njcn.process.pojo.vo.RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/15
|
||||
*/
|
||||
@Override
|
||||
public IPage<RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO> queryPlandetail(RGeneralSurveyPlandetailQueryParm rGeneralSurveyPlandetailQueryParm) {
|
||||
|
||||
IPage<RGeneralSurveyPlanDetail> page = new Page<> (rGeneralSurveyPlandetailQueryParm.getCurrentPage(), rGeneralSurveyPlandetailQueryParm.getPageSize());
|
||||
|
||||
LambdaQueryWrapper<RGeneralSurveyPlanDetail> lambdaQueryWrapper = new LambdaQueryWrapper<> ();
|
||||
lambdaQueryWrapper.eq (RGeneralSurveyPlanDetail::getPlanNo, rGeneralSurveyPlandetailQueryParm.getPlanNo ());
|
||||
IPage<RGeneralSurveyPlanDetail> rGeneralSurveyPlanDetailIPage = rGeneralSurveyPlanDetailMapper.selectPage (page, lambdaQueryWrapper);
|
||||
|
||||
return rGeneralSurveyPlanDetailIPage.convert (temp-> BeanUtil.copyProperties (temp, RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO.class));
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,345 @@
|
||||
package com.njcn.process.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.minio.bo.MinIoUploadResDTO;
|
||||
import com.njcn.minio.config.MinIoProperties;
|
||||
import com.njcn.minio.utils.MinIoUtils;
|
||||
import com.njcn.process.enums.ProcessResponseEnum;
|
||||
import com.njcn.process.mapper.RGeneralSurveyPlanDetailMapper;
|
||||
import com.njcn.process.mapper.RGeneralSurveyPlanPOMapper;
|
||||
import com.njcn.process.pojo.param.RGeneralSurveyPlanAddParm;
|
||||
import com.njcn.process.pojo.param.RGeneralSurveyPlanQueryParm;
|
||||
import com.njcn.process.pojo.param.SurveyPlanQuestionQueryParm;
|
||||
import com.njcn.process.pojo.param.SurveyResultUploadParam;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanDetail;
|
||||
import com.njcn.process.pojo.po.RGeneralSurveyPlanPO;
|
||||
import com.njcn.process.pojo.vo.SurveyPlanExcel;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanDetailOnQuestionVO;
|
||||
import com.njcn.process.pojo.vo.RGeneralSurveyPlanVO;
|
||||
import com.njcn.process.service.RGeneralSurveyPlanDetailService;
|
||||
import com.njcn.process.service.RGeneralSurveyPlanPOService;
|
||||
import com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.user.pojo.vo.PvTerminalTreeVO;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
*
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/11/11 11:24【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Service
|
||||
public class RGeneralSurveyPlanPOServiceImpl extends MppServiceImpl<RGeneralSurveyPlanPOMapper, RGeneralSurveyPlanPO> implements RGeneralSurveyPlanPOService{
|
||||
|
||||
|
||||
private @Autowired
|
||||
RGeneralSurveyPlanDetailService rGeneralSurveyPlanDetailService;
|
||||
|
||||
private @Autowired
|
||||
RGeneralSurveyPlanPOMapper rGeneralSurveyPlanPOMapper;
|
||||
|
||||
private @Autowired
|
||||
RGeneralSurveyPlanDetailMapper rGeneralSurveyPlanDetailMapper;
|
||||
|
||||
@Resource
|
||||
private MinIoUtils minIoUtils;
|
||||
|
||||
private @Autowired
|
||||
DeptFeignClient deptFeignClient;
|
||||
|
||||
|
||||
@Resource
|
||||
private MinIoProperties minIoProperties;
|
||||
/**
|
||||
* @param rGeneralSurveyPlanAddParm
|
||||
* @Description: addPlan
|
||||
* @Param: [rGeneralSurveyPlanAddParm]
|
||||
* @return: java.lang.Boolean
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/14
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean addPlan(RGeneralSurveyPlanAddParm rGeneralSurveyPlanAddParm) {
|
||||
|
||||
RGeneralSurveyPlanPO rGeneralSurveyPlanPO = new RGeneralSurveyPlanPO ();
|
||||
BeanUtils.copyProperties (rGeneralSurveyPlanAddParm,rGeneralSurveyPlanPO);
|
||||
/*todo 后期与工作流绑定*/
|
||||
rGeneralSurveyPlanPO.setStatus (0);
|
||||
boolean b = this.saveOrUpdateByMultiId (rGeneralSurveyPlanPO);
|
||||
|
||||
List<RGeneralSurveyPlanAddParm.RGeneralSurveyPlanDetailAddParm> rGeneralSurveyPlanDetailAddParm = rGeneralSurveyPlanAddParm.getRGeneralSurveyPlanDetailAddParm ( );
|
||||
QueryWrapper<RGeneralSurveyPlanDetail> queryWrapper = new QueryWrapper ();
|
||||
queryWrapper.lambda ().eq (RGeneralSurveyPlanDetail::getPlanNo, rGeneralSurveyPlanAddParm.getPlanNo ());
|
||||
rGeneralSurveyPlanDetailService.remove (queryWrapper);
|
||||
List<RGeneralSurveyPlanDetail> rGeneralSurveyPlanDetailList = new ArrayList<> ();
|
||||
rGeneralSurveyPlanDetailAddParm.forEach (temp->{
|
||||
RGeneralSurveyPlanDetail rGeneralSurveyPlanDetail = new RGeneralSurveyPlanDetail();
|
||||
BeanUtils.copyProperties (temp, rGeneralSurveyPlanDetail);
|
||||
/*目前时间与计划开始时间,结束时间一致*/
|
||||
rGeneralSurveyPlanDetail.setGeneralSurveyStartTime (rGeneralSurveyPlanAddParm.getPlanStartTime ());
|
||||
rGeneralSurveyPlanDetail.setGeneralSurveyTime (rGeneralSurveyPlanAddParm.getPlanStartTime ());
|
||||
rGeneralSurveyPlanDetail.setGeneralSurveyEndTime (rGeneralSurveyPlanAddParm.getPlanEndTime ());
|
||||
rGeneralSurveyPlanDetail.setPlanNo (rGeneralSurveyPlanAddParm.getPlanNo ());
|
||||
rGeneralSurveyPlanDetail.setGeneralSurveyLeader(rGeneralSurveyPlanAddParm.getLeader ());
|
||||
rGeneralSurveyPlanDetailList.add (rGeneralSurveyPlanDetail);
|
||||
});
|
||||
boolean b1 = rGeneralSurveyPlanDetailService.saveOrUpdateBatchByMultiId (rGeneralSurveyPlanDetailList, 5);
|
||||
|
||||
return b&&b1;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param rGeneralSurveyPlanQueryParm
|
||||
* @Description: query
|
||||
* @Param: [rGeneralSurveyPlanQueryParm]
|
||||
* @return: java.util.List<com.njcn.process.pojo.vo.RGeneralSurveyPlanVO>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/15
|
||||
*/
|
||||
@Override
|
||||
public IPage<RGeneralSurveyPlanVO> query(RGeneralSurveyPlanQueryParm rGeneralSurveyPlanQueryParm,List<String> statusList ) {
|
||||
IPage<RGeneralSurveyPlanPO> page = new Page<> (rGeneralSurveyPlanQueryParm.getCurrentPage(), rGeneralSurveyPlanQueryParm.getPageSize());
|
||||
IPage<RGeneralSurveyPlanVO> returnpage = new Page<> (rGeneralSurveyPlanQueryParm.getCurrentPage(), rGeneralSurveyPlanQueryParm.getPageSize());
|
||||
|
||||
LambdaQueryWrapper<RGeneralSurveyPlanPO> queryWrapper = new LambdaQueryWrapper<> ();
|
||||
if (!StringUtils.isEmpty (rGeneralSurveyPlanQueryParm.getOrgNo ())) {
|
||||
List<String> data = deptFeignClient.getDepSonIdtByDeptId (rGeneralSurveyPlanQueryParm.getOrgNo ()).getData ( );
|
||||
|
||||
queryWrapper.in (RGeneralSurveyPlanPO::getOrgNo, data);
|
||||
}
|
||||
if (!StringUtils.isEmpty (rGeneralSurveyPlanQueryParm. getStatus ())) {
|
||||
queryWrapper.eq (RGeneralSurveyPlanPO::getStatus, rGeneralSurveyPlanQueryParm.getStatus ());
|
||||
}
|
||||
if (!StringUtils.isEmpty (rGeneralSurveyPlanQueryParm.getIsFileUpload ())) {
|
||||
queryWrapper.eq (RGeneralSurveyPlanPO::getIsFileUpload, rGeneralSurveyPlanQueryParm.getIsFileUpload ());
|
||||
}
|
||||
if (!Objects.isNull (rGeneralSurveyPlanQueryParm.getPlanStartTime ())) {
|
||||
queryWrapper.ge (RGeneralSurveyPlanPO::getPlanStartTime, rGeneralSurveyPlanQueryParm.getPlanStartTime ());
|
||||
}
|
||||
if (!Objects.isNull (rGeneralSurveyPlanQueryParm.getPlanEndTime ())) {
|
||||
queryWrapper.le (RGeneralSurveyPlanPO::getPlanEndTime, rGeneralSurveyPlanQueryParm.getPlanEndTime ());
|
||||
}
|
||||
queryWrapper.in (RGeneralSurveyPlanPO::getStatus, statusList);
|
||||
queryWrapper.orderByAsc (RGeneralSurveyPlanPO::getStatus).orderByDesc (RGeneralSurveyPlanPO::getPlanCreateTime);
|
||||
|
||||
List<RGeneralSurveyPlanPO> rGeneralSurveyPlanPOS = rGeneralSurveyPlanPOMapper.selectPage (page,queryWrapper).getRecords ();
|
||||
if(CollectionUtils.isEmpty (rGeneralSurveyPlanPOS)){
|
||||
return returnpage;
|
||||
}
|
||||
|
||||
//部门处理:根据部门code取名称
|
||||
List<PvTerminalTreeVO> dept = deptFeignClient.allDeptList().getData();
|
||||
Map<String, String> pvTerminalTreeVOMap = dept.stream().
|
||||
collect(Collectors.
|
||||
toMap(PvTerminalTreeVO::getId,
|
||||
PvTerminalTreeVO::getName));
|
||||
|
||||
|
||||
List<String> collect = rGeneralSurveyPlanPOS.stream ( ).map (RGeneralSurveyPlanPO::getPlanNo).collect (Collectors.toList ( ));
|
||||
LambdaQueryWrapper<RGeneralSurveyPlanDetail> lambdaQueryWrapper = new LambdaQueryWrapper<> ();
|
||||
lambdaQueryWrapper.in (RGeneralSurveyPlanDetail::getPlanNo, collect);
|
||||
List<RGeneralSurveyPlanDetail> rGeneralSurveyPlanDetails = rGeneralSurveyPlanDetailMapper.selectList (lambdaQueryWrapper);
|
||||
List<RGeneralSurveyPlanVO> rGeneralSurveyPlanVOList = new ArrayList<> ();
|
||||
rGeneralSurveyPlanPOS.forEach (temp ->{
|
||||
RGeneralSurveyPlanVO rGeneralSurveyPlanVO = new RGeneralSurveyPlanVO();
|
||||
BeanUtils.copyProperties (temp, rGeneralSurveyPlanVO);
|
||||
long Busbarcount = rGeneralSurveyPlanDetails.stream ( ).
|
||||
filter (surveyPlanDetail -> Objects.equals (surveyPlanDetail.getPlanNo ( ), temp.getPlanNo ( ))).
|
||||
map (RGeneralSurveyPlanDetail::getBusbarId).distinct ( ).count ( );
|
||||
|
||||
long Subcount = rGeneralSurveyPlanDetails.stream ( ).
|
||||
filter (surveyPlanDetail -> Objects.equals (surveyPlanDetail.getPlanNo ( ), temp.getPlanNo ( ))).
|
||||
map (RGeneralSurveyPlanDetail::getSubId).distinct ( ).count ( );
|
||||
rGeneralSurveyPlanVO.setBusCount (Busbarcount);
|
||||
rGeneralSurveyPlanVO.setSubCount (Subcount);
|
||||
List<RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO> collect1 = rGeneralSurveyPlanDetails.stream ( ).
|
||||
filter (surveyPlanDetail -> Objects.equals (surveyPlanDetail.getPlanNo ( ), temp.getPlanNo ( ))).
|
||||
map (surveyPlanDetail -> {
|
||||
RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO rGeneralSurveyPlanDetailVO = new RGeneralSurveyPlanVO.RGeneralSurveyPlanDetailVO ( );
|
||||
BeanUtils.copyProperties (surveyPlanDetail, rGeneralSurveyPlanDetailVO);
|
||||
return rGeneralSurveyPlanDetailVO;
|
||||
}).collect (Collectors.toList ( ));
|
||||
rGeneralSurveyPlanVO.setOrgName(pvTerminalTreeVOMap.get(temp.getOrgNo())); //单位名称
|
||||
|
||||
rGeneralSurveyPlanVO.setRGeneralSurveyPlanDetailVOList (collect1);
|
||||
rGeneralSurveyPlanVOList.add (rGeneralSurveyPlanVO);
|
||||
});
|
||||
returnpage.setRecords (rGeneralSurveyPlanVOList);
|
||||
return returnpage;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param surveyResultUploadParam
|
||||
* @Description: surveyResultUpload
|
||||
* @Param: [surveyResultUploadParam]
|
||||
* @return: boolean
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/18
|
||||
*/
|
||||
@Override
|
||||
public boolean surveyResultUpload(SurveyResultUploadParam surveyResultUploadParam) {
|
||||
boolean result = true;
|
||||
RGeneralSurveyPlanPO rGeneralSurveyPlanPO = new RGeneralSurveyPlanPO();
|
||||
rGeneralSurveyPlanPO.setPlanNo (surveyResultUploadParam.getPlanId ());
|
||||
rGeneralSurveyPlanPO = this.selectByMultiId (rGeneralSurveyPlanPO);
|
||||
String filePath =rGeneralSurveyPlanPO.getFilePath ();
|
||||
Integer fileCount = rGeneralSurveyPlanPO.getFileCount ( );
|
||||
fileCount = Optional.ofNullable (fileCount).orElse (0);
|
||||
for (int i = 0; i < surveyResultUploadParam.getFile ( ).length; i++) {
|
||||
MinIoUploadResDTO minIoUploadResDTO = fileToMinio(surveyResultUploadParam.getFile ( )[i]);
|
||||
filePath=filePath+minIoUploadResDTO.getMinFileName ()+";";
|
||||
fileCount++;
|
||||
}
|
||||
rGeneralSurveyPlanPO.setStatus (4);
|
||||
rGeneralSurveyPlanPO.setFileCount (fileCount);
|
||||
rGeneralSurveyPlanPO.setFilePath (filePath);
|
||||
rGeneralSurveyPlanPO.setIsFileUpload (1);
|
||||
rGeneralSurveyPlanPO.setUploadTime (new Date ());
|
||||
this.saveOrUpdateByMultiId (rGeneralSurveyPlanPO);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param planNo
|
||||
* @Description: surveyResultDownload
|
||||
* @Param: [surveyResultUploadParam]
|
||||
* @return: java.util.List<java.lang.String>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/18
|
||||
*/
|
||||
@Override
|
||||
public List<MinIoUploadResDTO> surveyResultDownload(String planNo) {
|
||||
RGeneralSurveyPlanPO rGeneralSurveyPlanPO = new RGeneralSurveyPlanPO();
|
||||
rGeneralSurveyPlanPO.setPlanNo (planNo);
|
||||
rGeneralSurveyPlanPO = this.selectByMultiId (rGeneralSurveyPlanPO);
|
||||
String filePath = rGeneralSurveyPlanPO.getFilePath ( );
|
||||
if(StringUtils.isEmpty (filePath)){
|
||||
throw new BusinessException(ProcessResponseEnum.DOWNLOAD_FILE_ERROR);
|
||||
}
|
||||
String[] split = filePath.substring (0, filePath.length ( ) - 1).split (";");
|
||||
List<MinIoUploadResDTO> collect = Stream.of (split).map (temp -> {
|
||||
MinIoUploadResDTO dto = new MinIoUploadResDTO("",minIoUtils.getObjectUrl (minIoProperties.getBucket ( ), temp, 7 * 24 * 60 * 60));
|
||||
return dto ;
|
||||
}).collect (Collectors.toList ( ));
|
||||
return collect;
|
||||
}
|
||||
|
||||
/**
|
||||
* @Description: exportSurveyPlan
|
||||
* @Param: []
|
||||
* @return: java.util.List<com.njcn.process.pojo.vo.SurveyPlanExcel>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/21
|
||||
*/
|
||||
@Override
|
||||
public List<SurveyPlanExcel> exportSurveyPlan(List<String> planIdList) {
|
||||
List<SurveyPlanExcel> surveyPlanExcels = new ArrayList<> ();
|
||||
LambdaQueryWrapper<RGeneralSurveyPlanPO> queryWrapper = new LambdaQueryWrapper<> ();
|
||||
queryWrapper.in (RGeneralSurveyPlanPO::getPlanNo,planIdList);
|
||||
List<RGeneralSurveyPlanPO> rGeneralSurveyPlanPOS = rGeneralSurveyPlanPOMapper.selectList (queryWrapper);
|
||||
LambdaQueryWrapper<RGeneralSurveyPlanDetail> lambdaQueryWrapper = new LambdaQueryWrapper<> ();
|
||||
lambdaQueryWrapper.in (RGeneralSurveyPlanDetail::getPlanNo, planIdList);
|
||||
List<RGeneralSurveyPlanDetail> rGeneralSurveyPlanDetails = rGeneralSurveyPlanDetailMapper.selectList (lambdaQueryWrapper);
|
||||
|
||||
//部门处理:根据部门code取名称
|
||||
List<PvTerminalTreeVO> dept = deptFeignClient.allDeptList().getData();
|
||||
Map<String, String> pvTerminalTreeVOMap = dept.stream().
|
||||
collect(Collectors.
|
||||
toMap(PvTerminalTreeVO::getId,
|
||||
PvTerminalTreeVO::getName));
|
||||
rGeneralSurveyPlanPOS.forEach (temp->{
|
||||
SurveyPlanExcel surveyPlanExcel = new SurveyPlanExcel();
|
||||
BeanUtils.copyProperties (temp, surveyPlanExcel);
|
||||
|
||||
long Busbarcount = rGeneralSurveyPlanDetails.stream ( ).
|
||||
filter (surveyPlanDetail -> Objects.equals (surveyPlanDetail.getPlanNo ( ), temp.getPlanNo ( ))).
|
||||
map (RGeneralSurveyPlanDetail::getBusbarId).distinct ( ).count ( );
|
||||
|
||||
long Subcount = rGeneralSurveyPlanDetails.stream ( ).
|
||||
filter (surveyPlanDetail -> Objects.equals (surveyPlanDetail.getPlanNo ( ), temp.getPlanNo ( ))).
|
||||
map (RGeneralSurveyPlanDetail::getSubId).distinct ( ).count ( );
|
||||
surveyPlanExcel.setBusCount (Busbarcount);
|
||||
surveyPlanExcel.setSubCount (Subcount);
|
||||
surveyPlanExcel.setOrgNo (pvTerminalTreeVOMap.get (surveyPlanExcel.getOrgNo ()));
|
||||
surveyPlanExcels.add (surveyPlanExcel);
|
||||
});
|
||||
|
||||
return surveyPlanExcels;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param questionQueryParm
|
||||
* @Description: querySurveyPlanOnQuestion
|
||||
* @Param: [questionQueryParm]
|
||||
* @return: java.util.List<com.njcn.process.pojo.vo.RGeneralSurveyPlanDetailOnQuestionVO>
|
||||
* @Author: clam
|
||||
* @Date: 2022/11/30
|
||||
*/
|
||||
@Override
|
||||
public List<RGeneralSurveyPlanDetailOnQuestionVO> querySurveyPlanOnQuestion(SurveyPlanQuestionQueryParm questionQueryParm) {
|
||||
List<RGeneralSurveyPlanDetailOnQuestionVO> rGeneralSurveyPlanDetailOnQuestionVOS = new ArrayList<> ();
|
||||
rGeneralSurveyPlanDetailOnQuestionVOS =rGeneralSurveyPlanDetailMapper.querySurveyPlanOnQuestion(questionQueryParm);
|
||||
|
||||
return rGeneralSurveyPlanDetailOnQuestionVOS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param questionQueryParm
|
||||
* @Description: 更具questionQueryParm查计划名称
|
||||
* @Param: [questionQueryParm]
|
||||
* @return: java.util.List<com.njcn.process.pojo.param.SurveyPlanQuestionQueryParm>
|
||||
* @Author: clam
|
||||
* @Date: 2022/12/1
|
||||
*/
|
||||
@Override
|
||||
public List<RGeneralSurveyPlanPO> querySurveyPlanName(SurveyPlanQuestionQueryParm questionQueryParm) {
|
||||
|
||||
List<String> data = deptFeignClient.getDepSonIdtByDeptId (questionQueryParm.getOrgNo ()).getData ( );
|
||||
|
||||
QueryWrapper<RGeneralSurveyPlanPO> queryWrapper = new QueryWrapper<> ();
|
||||
queryWrapper.select ("plan_name").
|
||||
in ("org_no", data).
|
||||
eq ("DATE_FORMAT(upload_time, '%Y-%m')", new SimpleDateFormat ("yyyy-MM").
|
||||
format (questionQueryParm.getPlanStartTime ()));
|
||||
List<RGeneralSurveyPlanPO> list = this.list (queryWrapper);
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传文件到Minio
|
||||
*
|
||||
* @param file 文件
|
||||
* @return 成功标记
|
||||
*/
|
||||
private MinIoUploadResDTO fileToMinio(MultipartFile file) {
|
||||
try {
|
||||
//把名称存入数据
|
||||
MinIoUploadResDTO upload = minIoUtils.upload(file, minIoProperties.getBucket(), "surveyresult/");
|
||||
return upload;
|
||||
} catch (Exception e) {
|
||||
throw new BusinessException (ProcessResponseEnum.UPLOAD_FILE_ERROR);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -30,7 +30,7 @@ spring:
|
||||
shared-configs:
|
||||
- data-id: share-config.yaml
|
||||
refresh: true
|
||||
- data-Id: share-config-datasource-db.yaml
|
||||
- data-Id: process-config.yaml
|
||||
refresh: true
|
||||
main:
|
||||
allow-bean-definition-overriding: true
|
||||
|
||||
Reference in New Issue
Block a user