干扰源功能

This commit is contained in:
qijian
2022-12-08 18:28:22 +08:00
parent f9733d0fe1
commit a1861c7599
12 changed files with 396 additions and 49 deletions

View File

@@ -23,7 +23,6 @@ public class LoadTypeUserAUploadParam {
private String id; private String id;
@ApiModelProperty(name = "file",value = "实测报告文件",required = true) @ApiModelProperty(name = "file",value = "实测报告文件",required = true)
@NotNull(message = "实测报告文件不可为空")
private MultipartFile file; private MultipartFile file;
@ApiModelProperty(name = "status",value = "数据状态1提交 2保存",required = true) @ApiModelProperty(name = "status",value = "数据状态1提交 2保存",required = true)

View File

@@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/** /**
* 未建档干扰源用户关联营销Param * 未建档干扰源用户关联营销Param
@@ -28,7 +27,11 @@ public class LoadTypeUserAssociateParam {
private String userLoadType; private String userLoadType;
@ApiModelProperty("关联干扰源用户编号") @ApiModelProperty("关联干扰源用户编号")
@NotNull(message = "关联干扰源用户编号不可为空") @NotBlank(message = "关联干扰源用户编号不可为空")
private String relationUserId; private String relationUserId;
@ApiModelProperty("关联干扰源用户名称")
@NotBlank(message = "关联干扰源用户名称不可为空")
private String relationUserName;
} }

View File

@@ -23,7 +23,6 @@ public class LoadTypeUserIUploadParam {
private String id; private String id;
@ApiModelProperty(name = "file",value = "入网报告文件",required = true) @ApiModelProperty(name = "file",value = "入网报告文件",required = true)
@NotNull(message = "入网报告文件不可为空")
private MultipartFile file; private MultipartFile file;
@ApiModelProperty(name = "status",value = "数据状态1提交 2保存",required = true) @ApiModelProperty(name = "status",value = "数据状态1提交 2保存",required = true)

View File

@@ -30,7 +30,10 @@ public class LoadTypeUserSearchParam {
@ApiModelProperty("关联干扰源用户名称") @ApiModelProperty("关联干扰源用户名称")
private String relationUserName; private String relationUserName;
@ApiModelProperty("是否上传报告(0:否 1:是)") @ApiModelProperty("是否上传入网报告(0:否 1:是)")
private Integer iIsFileUpload;
@ApiModelProperty("是否上传实测报告(0:否 1:是)")
private Integer aIsFileUpload; private Integer aIsFileUpload;
@ApiModelProperty("页码") @ApiModelProperty("页码")

View File

@@ -56,6 +56,10 @@ public class RLoadTypeUserManage implements Serializable {
* 用户类型,字典表 * 用户类型,字典表
*/ */
private String userLoadType; private String userLoadType;
/**
* 入网报告是否上传(0:否 1:是)
*/
private Integer iIsFileUpload;
/** /**
* 入网报告状态字典ID * 入网报告状态字典ID
*/ */

View File

@@ -0,0 +1,32 @@
package com.njcn.process.pojo.vo;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.io.Serializable;
/**
* @author qijian
* @version 1.0.0
* @createTime 2022/12/07 9:21
*/
@Data
public class LoadTypeRelationExcel implements Serializable {
@Excel(name = "单位名称", width = 15)
private String orgName;
@Excel(name = "干扰源类型", width = 15)
private String loadTypeName;
@Excel(name = "干扰源用户名称", width = 15)
private String userName;
@Excel(name = "关联干扰源用户名称", width = 15)
private String relationUserName;
@Excel(name = "实测报告状态", width = 15)
private String aStatusName;
}

View File

@@ -0,0 +1,38 @@
package com.njcn.process.pojo.vo;
import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @author qijian
* @version 1.0.0
* @createTime 2022/12/06 9:21
*/
@Data
public class LoadTypeUserExcel implements Serializable {
@Excel(name = "单位名称", width = 15)
private String orgName;
@Excel(name = "干扰源类型", width = 15)
private String loadTypeName;
@Excel(name = "干扰源用户名称", width = 15)
private String userName;
@Excel(name = "建档时间", format = "yyyy-MM-dd HH:mm:ss", width = 15)
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private Date recordTime;
@Excel(name = "报告是否上传", width = 15)
private String iIsFileUpload;
@Excel(name = "入网报告状态", width = 15)
private String iStatusName;
}

View File

@@ -1,5 +1,6 @@
package com.njcn.process.pojo.vo; package com.njcn.process.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@@ -17,103 +18,142 @@ public class RLoadTypeUserManageVO implements Serializable {
/** /**
* 主键 * 主键
*/ */
@ApiModelProperty("主键")
private String id; private String id;
/** /**
* 单位ID * 单位ID
*/ */
@ApiModelProperty("单位ID")
private String orgNo; private String orgNo;
/** /**
* 干扰源类型ID * 干扰源类型ID
*/ */
@ApiModelProperty("干扰源类型ID")
private String loadType; private String loadType;
/** /**
* 干扰源用户名称 * 干扰源用户名称
*/ */
@ApiModelProperty("干扰源用户名称")
private String userName; private String userName;
/** /**
* 关联干扰源用户编号ID * 关联干扰源用户编号ID
*/ */
@ApiModelProperty("关联干扰源用户编号ID")
private String relationUserId; private String relationUserId;
/** /**
* 关联干扰源用户名称 * 关联干扰源用户名称
*/ */
@ApiModelProperty("关联干扰源用户名称")
private String relationUserName; private String relationUserName;
/** /**
* 建档时间 * 建档时间
*/ */
@ApiModelProperty("建档时间")
private Date recordTime; private Date recordTime;
/** /**
* 送电日期(并网日期) * 送电日期(并网日期)
*/ */
@ApiModelProperty("送电日期(并网日期)")
private Date powerTransmissionDate; private Date powerTransmissionDate;
/** /**
* 合同容量(总装机容量) * 合同容量(总装机容量)
*/ */
@ApiModelProperty("合同容量(总装机容量)")
private Float userArgeementCapacity; private Float userArgeementCapacity;
/** /**
* 用户类型,字典表 * 用户类型,字典表
*/ */
@ApiModelProperty("用户类型,字典表")
private String userLoadType; private String userLoadType;
/**
* 入网报告是否上传(0:否 1:是)
*/
@ApiModelProperty("入网报告是否上传(0:否 1:是)")
private Integer iIsFileUpload;
/** /**
* 入网报告状态字典ID * 入网报告状态字典ID
*/ */
@ApiModelProperty("入网报告状态字典ID")
private String iStatus; private String iStatus;
/** /**
* 入网报告路径 * 入网报告路径
*/ */
@ApiModelProperty("入网报告路径")
private String iFilePath; private String iFilePath;
/** /**
* 入网报告上传时间 * 入网报告上传时间
*/ */
@ApiModelProperty("入网报告上传时间")
private Date iUploadTime; private Date iUploadTime;
/** /**
* 入网是否超标(0:否 1:是) * 入网是否超标(0:否 1:是)
*/ */
@ApiModelProperty("入网是否超标(0:否 1:是)")
private Integer iIsOverLimit; private Integer iIsOverLimit;
/** /**
* 入网超标指标 * 入网超标指标
*/ */
@ApiModelProperty("入网超标指标")
private String iOverLimitTarget; private String iOverLimitTarget;
/** /**
* 入网计划采取措施字典ID * 入网计划采取措施字典ID
*/ */
@ApiModelProperty("入网计划采取措施字典ID")
private String iPlanStep; private String iPlanStep;
/** /**
* 入网详情 * 入网详情
*/ */
@ApiModelProperty("入网详情")
private String iDescription; private String iDescription;
/** /**
* 实测报告是否上传(0:否 1:是) * 实测报告是否上传(0:否 1:是)
*/ */
@ApiModelProperty("实测报告是否上传(0:否 1:是)")
private Integer aIsFileUpload; private Integer aIsFileUpload;
/** /**
* 实测报告状态字典ID * 实测报告状态字典ID
*/ */
@ApiModelProperty("实测报告状态字典ID")
private String aStatus; private String aStatus;
/** /**
* 实测报告路径 * 实测报告路径
*/ */
@ApiModelProperty("实测报告路径")
private String aFilePath; private String aFilePath;
/** /**
* 实测报告上传时间 * 实测报告上传时间
*/ */
@ApiModelProperty("实测报告上传时间")
private Date aUploadTime; private Date aUploadTime;
/** /**
* 实测是否超标(0:否 1:是) * 实测是否超标(0:否 1:是)
*/ */
@ApiModelProperty("实测是否超标(0:否 1:是)")
private Integer aIsOverLimit; private Integer aIsOverLimit;
/** /**
* 实测超标指标 * 实测超标指标
*/ */
@ApiModelProperty("实测超标指标")
private String aOverLimitTarget; private String aOverLimitTarget;
/** /**
* 实测计划采取措施字典ID * 实测计划采取措施字典ID
*/ */
@ApiModelProperty("实测计划采取措施字典ID")
private String aPlanStep; private String aPlanStep;
/** /**
* 实测详情 * 实测详情
*/ */
@ApiModelProperty("实测详情")
private String aDescription; private String aDescription;
@ApiModelProperty("单位名称")
private String orgName;
@ApiModelProperty("入网报告文件地址")
private String iFile;
@ApiModelProperty("实测报告文件地址")
private String aFile;
} }

View File

@@ -1,5 +1,7 @@
package com.njcn.process.controller; 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.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.annotation.OperateInfo; import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType; import com.njcn.common.pojo.constant.OperateType;
@@ -7,8 +9,10 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.HttpResultUtil;
import com.njcn.poi.util.PoiUtil;
import com.njcn.process.pojo.param.*; 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.pojo.vo.RLoadTypeUserManageVO;
import com.njcn.process.service.LoadTypeUserManageService; import com.njcn.process.service.LoadTypeUserManageService;
import com.njcn.web.controller.BaseController; import com.njcn.web.controller.BaseController;
@@ -17,9 +21,13 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/** /**
* 干扰源用户管理 * 干扰源用户管理
* *
@@ -43,7 +51,7 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getLoadTypeUserList") @PostMapping("/getLoadTypeUserList")
@ApiOperation("查询所有干扰源用户") @ApiOperation("查询所有干扰源用户(未建档干扰源用户管理)")
@ApiImplicitParam(name = "loadTypeUserSearchParam", value = "干扰源用户入参", required = true) @ApiImplicitParam(name = "loadTypeUserSearchParam", value = "干扰源用户入参", required = true)
public HttpResult<Page<RLoadTypeUserManageVO>> getLoadTypeUserList(@RequestBody @Validated LoadTypeUserSearchParam loadTypeUserSearchParam){ public HttpResult<Page<RLoadTypeUserManageVO>> getLoadTypeUserList(@RequestBody @Validated LoadTypeUserSearchParam loadTypeUserSearchParam){
String methodDescribe = getMethodDescribe("getLoadTypeUserList"); String methodDescribe = getMethodDescribe("getLoadTypeUserList");
@@ -58,12 +66,12 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@GetMapping("/getLoadTypeUserById") @GetMapping("/getLoadTypeUserById")
@ApiOperation("根据id查询干扰源用户") @ApiOperation("根据id查询干扰源用户(通用)")
@ApiImplicitParam(name = "id", value = "id", required = true) @ApiImplicitParam(name = "id", value = "id", required = true)
public HttpResult<RLoadTypeUserManage> getLoadTypeUserById(@RequestParam("id") String id){ public HttpResult<RLoadTypeUserManageVO> getLoadTypeUserById(@RequestParam("id") String id){
String methodDescribe = getMethodDescribe("getLoadTypeUserById"); String methodDescribe = getMethodDescribe("getLoadTypeUserById");
RLoadTypeUserManage rLoadTypeUserManage = loadTypeUserManageService.getLoadTypeUserById(id); RLoadTypeUserManageVO rLoadTypeUserManageVO = loadTypeUserManageService.getLoadTypeUserById(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rLoadTypeUserManage, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rLoadTypeUserManageVO, methodDescribe);
} }
/** /**
@@ -73,7 +81,7 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.ADD) @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.ADD)
@PostMapping("/addLoadTypeUser") @PostMapping("/addLoadTypeUser")
@ApiOperation("新增干扰源用户") @ApiOperation("新增干扰源用户(未建档干扰源用户管理)")
@ApiImplicitParam(name = "loadTypeUserParam", value = "实体参数", required = true) @ApiImplicitParam(name = "loadTypeUserParam", value = "实体参数", required = true)
public HttpResult<Boolean> addLoadTypeUser(@RequestBody @Validated LoadTypeUserParam loadTypeUserParam){ public HttpResult<Boolean> addLoadTypeUser(@RequestBody @Validated LoadTypeUserParam loadTypeUserParam){
String methodDescribe = getMethodDescribe("addLoadTypeUser"); String methodDescribe = getMethodDescribe("addLoadTypeUser");
@@ -92,7 +100,7 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE) @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE)
@PostMapping("/uploadLoadTypeUserI") @PostMapping("/uploadLoadTypeUserI")
@ApiOperation("上传干扰源用户入网报告") @ApiOperation("上传干扰源用户入网报告(未建档干扰源用户管理)")
// @ApiImplicitParam(name = "loadTypeUserIUploadParam", value = "实体参数", required = true) // @ApiImplicitParam(name = "loadTypeUserIUploadParam", value = "实体参数", required = true)
public HttpResult<Boolean> uploadLoadTypeUserI(@Validated LoadTypeUserIUploadParam loadTypeUserIUploadParam){ public HttpResult<Boolean> uploadLoadTypeUserI(@Validated LoadTypeUserIUploadParam loadTypeUserIUploadParam){
String methodDescribe = getMethodDescribe("uploadLoadTypeUserI"); String methodDescribe = getMethodDescribe("uploadLoadTypeUserI");
@@ -112,7 +120,7 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE) @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE)
@PostMapping("/linkUser") @PostMapping("/linkUser")
@ApiOperation("关联营销用户") @ApiOperation("关联营销用户(未建档干扰源用户管理)")
@ApiImplicitParam(name = "loadTypeUserAssociateParam", value = "实体参数", required = true) @ApiImplicitParam(name = "loadTypeUserAssociateParam", value = "实体参数", required = true)
public HttpResult<Boolean> linkUser(@RequestBody @Validated LoadTypeUserAssociateParam loadTypeUserAssociateParam){ public HttpResult<Boolean> linkUser(@RequestBody @Validated LoadTypeUserAssociateParam loadTypeUserAssociateParam){
String methodDescribe = getMethodDescribe("linkUser"); String methodDescribe = getMethodDescribe("linkUser");
@@ -124,6 +132,32 @@ public class LoadTypeUserManageController extends BaseController {
} }
} }
/**
* 导出未建档干扰源用户管理信息
* @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 * @author qijian
@@ -131,7 +165,7 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getLoadTypeRelationList") @PostMapping("/getLoadTypeRelationList")
@ApiOperation("查询所有干扰源用户(与营销系统关联") @ApiOperation("查询所有干扰源用户(干扰源用户常态化管理")
@ApiImplicitParam(name = "loadTypeUserSearchParam", value = "干扰源用户入参", required = true) @ApiImplicitParam(name = "loadTypeUserSearchParam", value = "干扰源用户入参", required = true)
public HttpResult<Page<RLoadTypeUserManageVO>> getLoadTypeRelationList(@RequestBody @Validated LoadTypeUserSearchParam loadTypeUserSearchParam){ public HttpResult<Page<RLoadTypeUserManageVO>> getLoadTypeRelationList(@RequestBody @Validated LoadTypeUserSearchParam loadTypeUserSearchParam){
String methodDescribe = getMethodDescribe("getLoadTypeRelationList"); String methodDescribe = getMethodDescribe("getLoadTypeRelationList");
@@ -146,7 +180,7 @@ public class LoadTypeUserManageController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE) @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType= OperateType.UPDATE)
@PostMapping("/uploadLoadTypeUserA") @PostMapping("/uploadLoadTypeUserA")
@ApiOperation("上传干扰源用户实测报告") @ApiOperation("上传干扰源用户实测报告(干扰源用户常态化管理)")
// @ApiImplicitParam(name = "loadTypeUserAUploadParam", value = "实体参数", required = true) // @ApiImplicitParam(name = "loadTypeUserAUploadParam", value = "实体参数", required = true)
public HttpResult<Boolean> uploadLoadTypeUserA(@Validated LoadTypeUserAUploadParam loadTypeUserAUploadParam){ public HttpResult<Boolean> uploadLoadTypeUserA(@Validated LoadTypeUserAUploadParam loadTypeUserAUploadParam){
String methodDescribe = getMethodDescribe("uploadLoadTypeUserA"); String methodDescribe = getMethodDescribe("uploadLoadTypeUserA");
@@ -157,4 +191,30 @@ public class LoadTypeUserManageController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe); 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;
}
} }

View File

@@ -18,7 +18,7 @@
and r.user_name like CONCAT('%', #{loadTypeUserSearchParam.userName}, '%') and r.user_name like CONCAT('%', #{loadTypeUserSearchParam.userName}, '%')
</if> </if>
<if test="loadTypeUserSearchParam.aIsFileUpload != null and loadTypeUserSearchParam.aIsFileUpload != ''"> <if test="loadTypeUserSearchParam.aIsFileUpload != null and loadTypeUserSearchParam.aIsFileUpload != ''">
and r.a_is_file_upload = #{loadTypeUserSearchParam.aIsFileUpload} and r.i_is_file_upload = #{loadTypeUserSearchParam.iIsFileUpload}
</if> </if>
</select> </select>
@@ -38,7 +38,7 @@
and r.load_type = #{loadTypeUserSearchParam.loadType} and r.load_type = #{loadTypeUserSearchParam.loadType}
</if> </if>
<if test="loadTypeUserSearchParam.userName != null and loadTypeUserSearchParam.userName != ''"> <if test="loadTypeUserSearchParam.userName != null and loadTypeUserSearchParam.userName != ''">
and r.user_name like CONCAT('%', #{loadTypeUserSearchParam.relationUserName}, '%') and r.user_name like CONCAT('%', #{loadTypeUserSearchParam.userName}, '%')
</if> </if>
<if test="loadTypeUserSearchParam.relationUserName != null and loadTypeUserSearchParam.relationUserName != ''"> <if test="loadTypeUserSearchParam.relationUserName != null and loadTypeUserSearchParam.relationUserName != ''">
and r.relation_user_name like CONCAT('%', #{loadTypeUserSearchParam.relationUserName}, '%') and r.relation_user_name like CONCAT('%', #{loadTypeUserSearchParam.relationUserName}, '%')

View File

@@ -2,9 +2,12 @@ package com.njcn.process.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.process.pojo.param.*; 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.pojo.vo.RLoadTypeUserManageVO;
import java.util.List;
/** /**
* 干扰源用户管理 * 干扰源用户管理
* *
@@ -26,7 +29,7 @@ public interface LoadTypeUserManageService {
* @param id * @param id
* @return * @return
*/ */
RLoadTypeUserManage getLoadTypeUserById(String id); RLoadTypeUserManageVO getLoadTypeUserById(String id);
/** /**
* 新增干扰源用户 * 新增干扰源用户
@@ -62,4 +65,18 @@ public interface LoadTypeUserManageService {
* @return * @return
*/ */
boolean uploadLoadTypeUserA(LoadTypeUserAUploadParam loadTypeUserAUploadParam); boolean uploadLoadTypeUserA(LoadTypeUserAUploadParam loadTypeUserAUploadParam);
/**
* 导出未建档干扰源用户管理信息
* @param list
* @return
*/
List<LoadTypeUserExcel> exportLoadTypeUserList(List<String> list);
/**
* 导出干扰源用户常态化管理信息
* @param list
* @return
*/
List<LoadTypeRelationExcel> exportLoadTypeRelationList(List<String> list);
} }

View File

@@ -1,6 +1,7 @@
package com.njcn.process.service.impl; package com.njcn.process.service.impl;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.api.DistributionMonitorClient; import com.njcn.device.pms.api.DistributionMonitorClient;
@@ -12,10 +13,16 @@ import com.njcn.process.enums.ProcessResponseEnum;
import com.njcn.process.mapper.LoadTypeUserManageMapper; import com.njcn.process.mapper.LoadTypeUserManageMapper;
import com.njcn.process.pojo.param.*; import com.njcn.process.pojo.param.*;
import com.njcn.process.pojo.po.RLoadTypeUserManage; 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.pojo.vo.RLoadTypeUserManageVO;
import com.njcn.process.service.LoadTypeUserManageService; import com.njcn.process.service.LoadTypeUserManageService;
import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum; 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.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@@ -24,7 +31,10 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* 干扰源用户管理 * 干扰源用户管理
@@ -44,6 +54,8 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
private final DistributionMonitorClient distributionMonitorClient; private final DistributionMonitorClient distributionMonitorClient;
private final DeptFeignClient deptFeignClient;
@Resource @Resource
private MinIoUtils minIoUtils; private MinIoUtils minIoUtils;
@@ -58,7 +70,21 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
@Override @Override
public Page<RLoadTypeUserManageVO> getLoadTypeUserList(LoadTypeUserSearchParam loadTypeUserSearchParam){ public Page<RLoadTypeUserManageVO> getLoadTypeUserList(LoadTypeUserSearchParam loadTypeUserSearchParam){
Page<RLoadTypeUserManageVO> page = new Page<>(loadTypeUserSearchParam.getPageNum(), loadTypeUserSearchParam.getPageSize()); Page<RLoadTypeUserManageVO> page = new Page<>(loadTypeUserSearchParam.getPageNum(), loadTypeUserSearchParam.getPageSize());
return loadTypeUserManageMapper.getLoadTypeUserPage(page,loadTypeUserSearchParam); 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);
} }
/** /**
@@ -67,9 +93,20 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
* @return * @return
*/ */
@Override @Override
public RLoadTypeUserManage getLoadTypeUserById(String id) { public RLoadTypeUserManageVO getLoadTypeUserById(String id) {
RLoadTypeUserManage rLoadTypeUserManage = loadTypeUserManageMapper.selectById(id); RLoadTypeUserManage rLoadTypeUserManage = loadTypeUserManageMapper.selectById(id);
return rLoadTypeUserManage; 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;
} }
/** /**
@@ -82,7 +119,6 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
//参数转换 //参数转换
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage(); RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
BeanUtils.copyProperties(loadTypeUserParam, rLoadTypeUserManage); BeanUtils.copyProperties(loadTypeUserParam, rLoadTypeUserManage);
System.out.println(rLoadTypeUserManage);
//塞入建档时间 //塞入建档时间
Date date = DateUtil.parse(loadTypeUserParam.getRecordTime(), "yyyy-MM-dd HH:mm:ss"); Date date = DateUtil.parse(loadTypeUserParam.getRecordTime(), "yyyy-MM-dd HH:mm:ss");
@@ -100,21 +136,24 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
public boolean uploadLoadTypeUserI(LoadTypeUserIUploadParam loadTypeUserIUploadParam) { public boolean uploadLoadTypeUserI(LoadTypeUserIUploadParam loadTypeUserIUploadParam) {
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage(); RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
//文件上传到Minio服务器存入文件名
MinIoUploadResDTO minIoUploadResDTO = fileToMinio(loadTypeUserIUploadParam.getFile());
rLoadTypeUserManage.setIFilePath(minIoUploadResDTO.getMinFileName());
rLoadTypeUserManage.setIUploadTime(new Date());
//填入数据
BeanUtils.copyProperties(loadTypeUserIUploadParam, rLoadTypeUserManage); BeanUtils.copyProperties(loadTypeUserIUploadParam, rLoadTypeUserManage);
//提交:待审核/保存:新建 //文件上传到Minio服务器存入文件名
if(Objects.equals(Param.LOAD_TYPE_USER_SUBMIT,loadTypeUserIUploadParam.getStatus())){ if(loadTypeUserIUploadParam.getFile() != null){
rLoadTypeUserManage.setIStatus(DicDataEnum.AUDIT.getCode()); MinIoUploadResDTO minIoUploadResDTO = fileToMinio(loadTypeUserIUploadParam.getFile());
}else{ rLoadTypeUserManage.setIFilePath(minIoUploadResDTO.getMinFileName());
rLoadTypeUserManage.setIStatus(DicDataEnum.NEWLY.getCode()); 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); loadTypeUserManageMapper.updateById(rLoadTypeUserManage);
return true; return true;
@@ -142,7 +181,21 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
@Override @Override
public Page<RLoadTypeUserManageVO> getLoadTypeRelationList(LoadTypeUserSearchParam loadTypeUserSearchParam) { public Page<RLoadTypeUserManageVO> getLoadTypeRelationList(LoadTypeUserSearchParam loadTypeUserSearchParam) {
Page<RLoadTypeUserManageVO> page = new Page<>(loadTypeUserSearchParam.getPageNum(), loadTypeUserSearchParam.getPageSize()); Page<RLoadTypeUserManageVO> page = new Page<>(loadTypeUserSearchParam.getPageNum(), loadTypeUserSearchParam.getPageSize());
return loadTypeUserManageMapper.getLoadTypeRelationPage(page,loadTypeUserSearchParam); 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);
} }
/** /**
@@ -170,24 +223,123 @@ public class LoadTypeUserManageServiceImpl implements LoadTypeUserManageService
public boolean uploadLoadTypeUserA(LoadTypeUserAUploadParam loadTypeUserAUploadParam) { public boolean uploadLoadTypeUserA(LoadTypeUserAUploadParam loadTypeUserAUploadParam) {
RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage(); RLoadTypeUserManage rLoadTypeUserManage = new RLoadTypeUserManage();
//文件上传到Minio服务器存入文件名
MinIoUploadResDTO minIoUploadResDTO = fileToMinio(loadTypeUserAUploadParam.getFile());
rLoadTypeUserManage.setAFilePath(minIoUploadResDTO.getMinFileName());
rLoadTypeUserManage.setAUploadTime(new Date());
//填入数据
BeanUtils.copyProperties(loadTypeUserAUploadParam, rLoadTypeUserManage); BeanUtils.copyProperties(loadTypeUserAUploadParam, rLoadTypeUserManage);
//提交:待审核/保存:新建 //文件上传到Minio服务器存入文件名
if(Objects.equals(Param.LOAD_TYPE_USER_SUBMIT,loadTypeUserAUploadParam.getStatus())){ if(loadTypeUserAUploadParam.getFile() != null){
rLoadTypeUserManage.setAStatus(DicDataEnum.AUDIT.getCode()); MinIoUploadResDTO minIoUploadResDTO = fileToMinio(loadTypeUserAUploadParam.getFile());
}else{ rLoadTypeUserManage.setAFilePath(minIoUploadResDTO.getMinFileName());
rLoadTypeUserManage.setAStatus(DicDataEnum.NEWLY.getCode()); 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); loadTypeUserManageMapper.updateById(rLoadTypeUserManage);
return true; 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;
}
} }