From 2bb3aab2e0b0015e556909e2ba29726c9aedf59f Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 17 Jun 2021 11:20:10 +0800 Subject: [PATCH 01/57] =?UTF-8?q?=E6=9C=AA=E7=AC=A6=E5=90=88=E9=A1=B9/?= =?UTF-8?q?=E9=87=8D=E7=82=B9=E9=97=AE=E9=A2=98=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-slrs/pom.xml | 1 + .../SarStandIssueControlCauseController.java | 121 +++++++++++++++ .../dao/SarStandIssueControlCauseDao.java | 16 ++ .../entity/SarStandIssueControlCause.java | 116 ++++++++++++++ .../entity/SarStandIssueControlCausePage.java | 69 +++++++++ .../entity/StandIssueControlCauseExcelVO.java | 16 ++ .../entity/StandIssueControlCauseListVO.java | 12 ++ .../ISarStandIssueControlCauseService.java | 49 ++++++ .../SarStandIssueControlCauseServiceImpl.java | 145 ++++++++++++++++++ ...SarStandIssueControlProductController.java | 122 +++++++++++++++ .../dao/SarStandIssueControlProductDao.java | 16 ++ .../entity/SarStandIssueControlProduct.java | 121 +++++++++++++++ .../SarStandIssueControlProductPage.java | 91 +++++++++++ .../StandIssueControlProductExcelVO.java | 16 ++ .../StandIssueControlProductListVO.java | 12 ++ .../ISarStandIssueControlProductService.java | 51 ++++++ ...arStandIssueControlProductServiceImpl.java | 135 ++++++++++++++++ .../ISarStandProjectLibraryService.java | 12 +- .../SarStandUnqualifiedController.java | 102 +++++++++++- .../entity/SarStandUnqualified.java | 32 +++- .../entity/SarStandUnqualifiedPage.java | 88 +++++++++++ .../entity/StandUnqualifiedExcelVO.java | 16 ++ .../entity/StandUnqualifiedListVO.java | 12 ++ .../service/ISarStandUnqualifiedService.java | 33 ++++ .../impl/SarStandUnqualifiedServiceImpl.java | 119 ++++++++++++++ .../utils/ProductTypeConverter.java | 47 ++++++ .../utils/TimestampConverter.java | 42 +++++ .../java/com/adc/da/utils/util/DateUtil.java | 30 ++++ .../SarStandIssueControlCauseMapper.xml | 5 + .../SarStandIssueControlProductMapper.xml | 5 + pom.xml | 6 + 31 files changed, 1641 insertions(+), 17 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/dao/SarStandIssueControlCauseDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCausePage.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseExcelVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseListVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/ISarStandIssueControlCauseService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/controller/SarStandIssueControlProductController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/dao/SarStandIssueControlProductDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProductPage.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductExcelVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductListVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/ISarStandIssueControlProductService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualifiedPage.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedExcelVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedListVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/ProductTypeConverter.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/TimestampConverter.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlCause/SarStandIssueControlCauseMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlProduct/SarStandIssueControlProductMapper.xml diff --git a/adc-da-slrs/pom.xml b/adc-da-slrs/pom.xml index 5219d792..149c579f 100644 --- a/adc-da-slrs/pom.xml +++ b/adc-da-slrs/pom.xml @@ -35,5 +35,6 @@ 3.1.0 compile + \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java new file mode 100644 index 00000000..3ad6a625 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java @@ -0,0 +1,121 @@ +package com.adc.da.slrs.sarStandIssueControlCause.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.ResponseMessageCodeEnum; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCausePage; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseExcelVO; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseListVO; +import com.adc.da.slrs.sarStandIssueControlCause.service.ISarStandIssueControlCauseService; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualified; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualifiedPage; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedExcelVO; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedListVO; +import com.adc.da.slrs.sarStandUnqualified.service.ISarStandUnqualifiedService; +import com.adc.da.slrs.sarStandardsInfo.controller.SarStandardsInfoController; +import com.alibaba.excel.EasyExcel; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +import javax.servlet.http.HttpServletResponse; +import java.net.URLEncoder; +import java.util.List; + +/** +*

+ * 前端控制器 + *

+* +* @author super_liu +* @since 2021-06-16 +*/ +@RestController +@Api(tags = "|重点问题项管控模块-事业部|") +@RequestMapping("/sarStandIssueControlCause/sar-stand-issue-control-cause") +public class SarStandIssueControlCauseController extends BaseController { + + private static final Logger logger = LoggerFactory.getLogger(SarStandardsInfoController.class); + + @Autowired + private ISarStandIssueControlCauseService sarStandIssueControlCauseService; + + + /** + * 分页查询 + * @param sarStandIssueControlCausePage:筛选、分页信息 + * @return ResponseMessage> + */ + @ApiOperation("分页查询") + @GetMapping + public ResponseMessage> getSarStandIssueControlCausePage(SarStandIssueControlCausePage sarStandIssueControlCausePage){ + IPage sarStandIssueControlCauseIPage=sarStandIssueControlCauseService.getSarStandIssueControlCausePage(sarStandIssueControlCausePage); + return Result.success(sarStandIssueControlCauseIPage); + } + + /** + * 分页查询历史数据 + * @param sarStandIssueControlCausePage:筛选、分页信息 + * @return ResponseMessage> + */ + @ApiOperation("分页查询历史数据") + @GetMapping("/history") + public ResponseMessage> getSarStandIssueControlCauseHistoryPage(SarStandIssueControlCausePage sarStandIssueControlCausePage){ + IPage sarStandIssueControlCauseIPage=sarStandIssueControlCauseService.getSarStandIssueControlCauseHistoryPage(sarStandIssueControlCausePage); + return Result.success(sarStandIssueControlCauseIPage); + } + + /** + * 批量关闭 + * @param standIssueControlCauseListVO:事业部重大问题ID列表 + * @return ResponseMessage>:关闭失败的事业部重大问题ID列表 + */ + @ApiOperation("批量关闭") + @PostMapping("/close") + public ResponseMessage> closeSarStandIssueControlCause(@RequestBody StandIssueControlCauseListVO standIssueControlCauseListVO){ + if(standIssueControlCauseListVO==null||standIssueControlCauseListVO.getIds().size()==0){ + return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"未传入ID",null); + } + List failIds=sarStandIssueControlCauseService.closeSarStandIssueControlCauseList(standIssueControlCauseListVO); + if(failIds==null||failIds.size()==0){ + return Result.success(null); + }else { + return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"部分关闭失败",null); + } + } + + @ApiOperation("导出Excel表") + @GetMapping(value = "/exportStandUnqulifiedExcel") + public void exportStandardsInfoExcel(StandIssueControlCauseExcelVO standIssueControlCauseExcelVO, HttpServletResponse response) throws Exception { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + try { + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + if(standIssueControlCauseExcelVO.getExportName()==null){ + standIssueControlCauseExcelVO.setExportName("事业部重点问题项管控"); + } + String fileName = URLEncoder.encode(standIssueControlCauseExcelVO.getExportName(), "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List data=sarStandIssueControlCauseService.getStandIssueControlCauseExcelData(standIssueControlCauseExcelVO); + // 这里需要设置不关闭流 + EasyExcel.write(response.getOutputStream(), SarStandIssueControlCause.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") + .doWrite(data); + } catch (Exception e) { + System.out.println(e); + // 重置response + response.reset(); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().println(JSON.toJSONString(Result.error())); + } + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/dao/SarStandIssueControlCauseDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/dao/SarStandIssueControlCauseDao.java new file mode 100644 index 00000000..a305a3e7 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/dao/SarStandIssueControlCauseDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarStandIssueControlCause.dao; + +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author super_liu + * @since 2021-06-16 + */ +public interface SarStandIssueControlCauseDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java new file mode 100644 index 00000000..4e10aa51 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java @@ -0,0 +1,116 @@ +package com.adc.da.slrs.sarStandIssueControlCause.entity; + +import com.adc.da.base.entity.BaseEntity; + +import java.sql.Timestamp; +import java.time.LocalDateTime; + +import com.adc.da.slrs.sarStandUnqualified.utils.TimestampConverter; +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-06-16 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarStandIssueControlCause对象", description="") +public class SarStandIssueControlCause extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ExcelProperty("创建部门") + @ApiModelProperty(value = "创建部门") + @TableField("CREATE_DEPT_ID") + private String createDeptId; + + @ExcelProperty("创建人") + @ApiModelProperty(value = "创建人") + @TableField("CREATE_BY_ID") + private String createById; + + @ExcelProperty(value = "创建时间",converter = TimestampConverter.class) + @ApiModelProperty(value = "创建时间") + @TableField("CREATE_TIME") + private Timestamp createTime; + + @ExcelProperty("关闭状态") + @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") + @TableField("CLOSE_STATE") + private Integer closeState; + + @ExcelIgnore + @ApiModelProperty(value = "实际关闭时间") + @TableField("ACTUAL_CLOSE_TIME") + private Timestamp actualCloseTime; + + @ExcelProperty(value = "要求关闭时间",converter = TimestampConverter.class) + @ApiModelProperty(value = "要求关闭时间") + @TableField("REQUIRE_CLOSE_TIME") + private Timestamp requireCloseTime; + + @ExcelProperty("质量工程师") + @ApiModelProperty(value = "质量工程师") + @TableField("QA_ENGINEER") + private String qaEngineer; + + @ExcelProperty("认证工程师") + @ApiModelProperty(value = "认证工程师") + @TableField("AUTH_ENGINEER") + private String authEngineer; + + @ExcelProperty("责任工程师") + @ApiModelProperty(value = "责任工程师") + @TableField("DUTY_ENGINEER") + private String dutyEngineer; + + @ExcelProperty("责任部门") + @ApiModelProperty(value = "责任部门") + @TableField("RESPONSIBLE_UNIT") + private String responsibleUnit; + + @ExcelProperty("项目名称") + @ApiModelProperty(value = "项目名称") + @TableField("PRODUCT_NAME") + private String productName; + + @ExcelProperty("产品线") + @ApiModelProperty(value = "产品线") + @TableField("PRODUCT_LINE") + private String productLine; + + @ExcelProperty("当前节点") + @ApiModelProperty(value = "当前节点") + @TableField("CURRENT_NODE") + private String currentNode; + + @ExcelProperty("标准名称") + @ApiModelProperty(value = "标准名称") + @TableField("STAND_NAME") + private String standName; + + @ExcelProperty("标准编号") + @ApiModelProperty(value = "标准编号") + @TableField("STAND_ID") + private String standId; + + @ExcelIgnore + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCausePage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCausePage.java new file mode 100644 index 00000000..26ea6e80 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCausePage.java @@ -0,0 +1,69 @@ +package com.adc.da.slrs.sarStandIssueControlCause.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.sql.Timestamp; + +@Data + +@ApiModel(value="SarStandIssueControlCausePage对象", description="") +public class SarStandIssueControlCausePage{ + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "创建部门") + private String createDeptId; + + @ApiModelProperty(value = "创建人") + private String createById; + + @ApiModelProperty(value = "创建时间") + private Timestamp createTime; + + @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") + private Integer closeState; + + @ApiModelProperty(value = "实际关闭时间") + private Timestamp actualCloseTime; + + @ApiModelProperty(value = "要求关闭时间") + private Timestamp requireCloseTime; + + @ApiModelProperty(value = "质量工程师") + private String qaEngineer; + + @ApiModelProperty(value = "认证工程师") + private String authEngineer; + + @ApiModelProperty(value = "责任工程师") + private String dutyEngineer; + + @ApiModelProperty(value = "责任部门") + private String responsibleUnit; + + @ApiModelProperty(value = "项目名称") + private String productName; + + @ApiModelProperty(value = "产品线") + private String productLine; + + @ApiModelProperty(value = "当前节点") + private String currentNode; + + @ApiModelProperty(value = "标准名称") + private String standName; + + @ApiModelProperty(value = "标准编号") + private String standId; + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty("当前页") + private Integer current; + + @ApiModelProperty("每页条数") + private Integer size; +} \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseExcelVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseExcelVO.java new file mode 100644 index 00000000..fcf9e88b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseExcelVO.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarStandIssueControlCause.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel(description = "ExcelVO类") +public class StandIssueControlCauseExcelVO { + @ApiModelProperty("文件名") + String exportName; + @ApiModelProperty("导出的ID列表") + List ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseListVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseListVO.java new file mode 100644 index 00000000..55f03312 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/StandIssueControlCauseListVO.java @@ -0,0 +1,12 @@ +package com.adc.da.slrs.sarStandIssueControlCause.entity; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class StandIssueControlCauseListVO { + @ApiModelProperty("ID列表") + private List Ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/ISarStandIssueControlCauseService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/ISarStandIssueControlCauseService.java new file mode 100644 index 00000000..6cf43e82 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/ISarStandIssueControlCauseService.java @@ -0,0 +1,49 @@ +package com.adc.da.slrs.sarStandIssueControlCause.service; + +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCausePage; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseExcelVO; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseListVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author super_liu + * @since 2021-06-16 + */ +public interface ISarStandIssueControlCauseService extends IService { + + /** + * 分页查询 + * @param sarStandIssueControlCausePage:筛选信息、分页信息 + * @return IPage + */ + IPage getSarStandIssueControlCausePage(SarStandIssueControlCausePage sarStandIssueControlCausePage); + + /** + * 分页查询历史数据 + * @param sarStandIssueControlCausePage:筛选信息、分页信息 + * @return IPage + */ + IPage getSarStandIssueControlCauseHistoryPage(SarStandIssueControlCausePage sarStandIssueControlCausePage); + + /** + * 批量关闭 + * @param standIssueControlCauseListVO:问题ID列表 + * @return List:关闭失败的ID列表 + */ + List closeSarStandIssueControlCauseList(StandIssueControlCauseListVO standIssueControlCauseListVO); + + /** + * 获得excel导出的数据 + * @param standIssueControlCauseExcelVO :筛选ID + * @return List + */ + List getStandIssueControlCauseExcelData(StandIssueControlCauseExcelVO standIssueControlCauseExcelVO); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java new file mode 100644 index 00000000..3f2b3fe6 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java @@ -0,0 +1,145 @@ +package com.adc.da.slrs.sarStandIssueControlCause.service.impl; + +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import com.adc.da.slrs.sarStandIssueControlCause.dao.SarStandIssueControlCauseDao; +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCausePage; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseExcelVO; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseListVO; +import com.adc.da.slrs.sarStandIssueControlCause.service.ISarStandIssueControlCauseService; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualified; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedExcelVO; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author super_liu + * @since 2021-06-16 + */ +@Service +public class SarStandIssueControlCauseServiceImpl extends ServiceImpl implements ISarStandIssueControlCauseService { + @Autowired + private SarStandIssueControlCauseDao sarStandIssueControlCauseDao; + + /** + * 分页查询 + * @param sarStandIssueControlCausePage:筛选信息、分页信息 + * @return SarStandIssueControlCause + */ + @Override + public IPage getSarStandIssueControlCausePage(SarStandIssueControlCausePage sarStandIssueControlCausePage) { + QueryWrapper sarStandIssueControlCauseQueryWrapper=new QueryWrapper<>(); + //仅查询未关闭的 + sarStandIssueControlCauseQueryWrapper.eq("close_state",1); + if(sarStandIssueControlCausePage.getStandId()!=null){ + sarStandIssueControlCauseQueryWrapper.eq("stand_id",sarStandIssueControlCausePage.getStandId()).or().like("stand_name","%"+sarStandIssueControlCausePage.getStandName()+"%"); + } + if(sarStandIssueControlCausePage.getProductName()!=null){ + sarStandIssueControlCauseQueryWrapper.like("product_name","%"+sarStandIssueControlCausePage.getProductName()+"%"); + } + if(sarStandIssueControlCausePage.getResponsibleUnit()!=null){ + sarStandIssueControlCauseQueryWrapper.eq("responsible_unit",sarStandIssueControlCausePage.getResponsibleUnit()); + } + Page standIssueControlCausePage=new Page<>(); + //判断前端是否提供页码和每页条数 + if(sarStandIssueControlCausePage.getCurrent()!=null&&sarStandIssueControlCausePage.getSize()!=null){ + standIssueControlCausePage=new Page<>(sarStandIssueControlCausePage.getCurrent(),sarStandIssueControlCausePage.getSize()); + } + return sarStandIssueControlCauseDao.selectPage(standIssueControlCausePage,sarStandIssueControlCauseQueryWrapper); + + } + + /** + * 分页查询历史数据 + * @param sarStandIssueControlCausePage:筛选信息、分页信息 + * @return IPage + */ + @Override + public IPage getSarStandIssueControlCauseHistoryPage(SarStandIssueControlCausePage sarStandIssueControlCausePage) { + QueryWrapper sarStandIssueControlCauseQueryWrapper=new QueryWrapper<>(); + //仅查询关闭的 + sarStandIssueControlCauseQueryWrapper.eq("close_state",2); + if(sarStandIssueControlCausePage.getStandId()!=null){ + sarStandIssueControlCauseQueryWrapper.eq("stand_id",sarStandIssueControlCausePage.getStandId()).or().like("stand_name","%"+sarStandIssueControlCausePage.getStandName()+"%"); + } + if(sarStandIssueControlCausePage.getProductName()!=null){ + sarStandIssueControlCauseQueryWrapper.like("product_name","%"+sarStandIssueControlCausePage.getProductName()+"%"); + } + if(sarStandIssueControlCausePage.getResponsibleUnit()!=null){ + sarStandIssueControlCauseQueryWrapper.eq("responsible_unit",sarStandIssueControlCausePage.getResponsibleUnit()); + } + Page standIssueControlCausePage=new Page<>(); + //判断前端是否提供页码和每页条数 + if(sarStandIssueControlCausePage.getCurrent()!=null&&sarStandIssueControlCausePage.getSize()!=null){ + standIssueControlCausePage=new Page<>(sarStandIssueControlCausePage.getCurrent(),sarStandIssueControlCausePage.getSize()); + } + return sarStandIssueControlCauseDao.selectPage(standIssueControlCausePage,sarStandIssueControlCauseQueryWrapper); + } + + /** + * 批量关闭 + * @param standIssueControlCauseListVO:问题ID列表 + * @return List:关闭失败的ID列表 + */ + @Override + public List closeSarStandIssueControlCauseList(StandIssueControlCauseListVO standIssueControlCauseListVO) { + List failIds=new ArrayList<>(); + for(String id:standIssueControlCauseListVO.getIds()){ + boolean success=closeSarStandIssueControlCause(id); + if(!success){ + failIds.add(id); + } + } + return failIds; + } + + /** + * 获得excel导出的数据 + * @param standIssueControlCauseExcelVO :筛选ID + * @return List + */ + @Override + public List getStandIssueControlCauseExcelData(StandIssueControlCauseExcelVO standIssueControlCauseExcelVO) { + QueryWrapper sarStandIssueControlCauseQueryWrapper=new QueryWrapper<>(); + sarStandIssueControlCauseQueryWrapper.eq("close_state",1); + if(standIssueControlCauseExcelVO.getIds()!=null&&standIssueControlCauseExcelVO.getIds().size()>0){ + sarStandIssueControlCauseQueryWrapper.in("id",standIssueControlCauseExcelVO.getIds()); + } + return sarStandIssueControlCauseDao.selectList(sarStandIssueControlCauseQueryWrapper); + } + + /** + * 问题关闭 + * @param standIssueControlCauseId:ID + * @return boolean + */ + private boolean closeSarStandIssueControlCause(String standIssueControlCauseId){ + SarStandIssueControlCause sarStandIssueControlCause=sarStandIssueControlCauseDao.selectById(standIssueControlCauseId); + //判断是否存在 + if(sarStandIssueControlCause==null){ + return false; + } + //判断是否已关闭 + if(sarStandIssueControlCause.getCloseState()==2){ + return false; + } + sarStandIssueControlCause.setCloseState(2); + sarStandIssueControlCause.setActualCloseTime(new Timestamp(new Date().getTime())); + sarStandIssueControlCauseDao.updateById(sarStandIssueControlCause); + return true; + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/controller/SarStandIssueControlProductController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/controller/SarStandIssueControlProductController.java new file mode 100644 index 00000000..db459598 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/controller/SarStandIssueControlProductController.java @@ -0,0 +1,122 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.ResponseMessageCodeEnum; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCausePage; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseExcelVO; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseListVO; +import com.adc.da.slrs.sarStandIssueControlCause.service.ISarStandIssueControlCauseService; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProductPage; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.StandIssueControlProductExcelVO; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.StandIssueControlProductListVO; +import com.adc.da.slrs.sarStandIssueControlProduct.service.ISarStandIssueControlProductService; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualified; +import com.adc.da.slrs.sarStandardsInfo.controller.SarStandardsInfoController; +import com.alibaba.excel.EasyExcel; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProduct; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +import javax.servlet.http.HttpServletResponse; +import java.net.URLEncoder; +import java.util.List; + +/** +*

+ * 前端控制器 + *

+* +* @author zxy +* @since 2021-06-17 +*/ +@RestController +@Api(tags = "|重点问题项管控-产品规划部|") +@RequestMapping("/sarStandIssueControlProduct/sar-stand-issue-control-product") +public class SarStandIssueControlProductController extends BaseController { + + private static final Logger logger = LoggerFactory.getLogger(SarStandardsInfoController.class); + + @Autowired + private ISarStandIssueControlProductService sarStandIssueControlProductService; + + + /** + * 分页查询 + * @param sarStandIssueControlProductPage:筛选、分页信息 + * @return ResponseMessage> + */ + @ApiOperation("分页查询") + @GetMapping + public ResponseMessage> getSarStandIssueControlProductPage(SarStandIssueControlProductPage sarStandIssueControlProductPage){ + IPage sarStandIssueControlCauseIPage=sarStandIssueControlProductService.getSarStandIssueControlProductPage(sarStandIssueControlProductPage); + return Result.success(sarStandIssueControlCauseIPage); + } + + /** + * 分页查询历史数据 + * @param sarStandIssueControlProductPage:筛选、分页信息 + * @return ResponseMessage> + */ + @ApiOperation("分页查询历史数据") + @GetMapping("/history") + public ResponseMessage> getSarStandIssueControlProductHistoryPage(SarStandIssueControlProductPage sarStandIssueControlProductPage){ + IPage sarStandIssueControlProductIPage=sarStandIssueControlProductService.getSarStandIssueControlProductHistoryPage(sarStandIssueControlProductPage); + return Result.success(sarStandIssueControlProductIPage); + } + + /** + * 批量关闭 + * @param standIssueControlProductListVO:重大问题ID列表 + * @return ResponseMessage>:关闭失败的重大问题ID列表 + */ + @ApiOperation("批量关闭") + @PostMapping("/close") + public ResponseMessage> closeSarStandIssueControlCause(@RequestBody StandIssueControlProductListVO standIssueControlProductListVO){ + if(standIssueControlProductListVO==null||standIssueControlProductListVO.getIds().size()==0){ + return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"未传入ID",null); + } + List failIds=sarStandIssueControlProductService.closeSarStandIssueControlProductList(standIssueControlProductListVO); + if(failIds==null||failIds.size()==0){ + return Result.success(null); + }else { + return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"部分关闭失败",null); + } + } + + @ApiOperation("导出Excel表") + @GetMapping(value = "/exportStandUnqulifiedExcel") + public void exportStandardsInfoExcel(StandIssueControlProductExcelVO standIssueControlProductExcelVO, HttpServletResponse response) throws Exception { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + try { + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + if(standIssueControlProductExcelVO.getExportName()==null){ + standIssueControlProductExcelVO.setExportName("产品规划部重点问题项管控"); + } + String fileName = URLEncoder.encode(standIssueControlProductExcelVO.getExportName(), "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List data=sarStandIssueControlProductService.getStandIssueControlProductExcelData(standIssueControlProductExcelVO); + // 这里需要设置不关闭流 + EasyExcel.write(response.getOutputStream(), SarStandIssueControlProduct.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") + .doWrite(data); + } catch (Exception e) { + System.out.println(e); + // 重置response + response.reset(); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().println(JSON.toJSONString(Result.error())); + } + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/dao/SarStandIssueControlProductDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/dao/SarStandIssueControlProductDao.java new file mode 100644 index 00000000..e317ffc3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/dao/SarStandIssueControlProductDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.dao; + +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProduct; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author super_liu + * @since 2021-06-17 + */ +public interface SarStandIssueControlProductDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java new file mode 100644 index 00000000..f5591fd3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java @@ -0,0 +1,121 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.entity; + +import com.adc.da.base.entity.BaseEntity; + +import java.sql.Timestamp; +import java.time.LocalDateTime; + +import com.adc.da.slrs.sarStandUnqualified.utils.TimestampConverter; +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-06-17 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarStandIssueControlProduct对象", description="产品规划部重大问题管控") +public class SarStandIssueControlProduct extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ExcelProperty("创建部门") + @ApiModelProperty(value = "创建部门") + @TableField("CREATE_DEPT_ID") + private String createDeptId; + + @ExcelProperty("创建人") + @ApiModelProperty(value = "创建人") + @TableField("CREATE_BY_ID") + private String createById; + + @ExcelProperty(value = "创建时间",converter = TimestampConverter.class) + @ApiModelProperty(value = "创建时间") + @TableField("CREATE_TIME") + private Timestamp createTime; + + @ExcelIgnore + @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") + @TableField("CLOSE_STATE") + private Integer closeState; + + @ExcelIgnore + @ApiModelProperty(value = "实际关闭时间") + @TableField("ACTUAL_CLOSE_TIME") + private Timestamp actualCloseTime; + + @ExcelProperty(value = "要求关闭时间",converter = TimestampConverter.class) + @ApiModelProperty(value = "要求关闭时间") + @TableField("REQUIRE_CLOSE_TIME") + private Timestamp requireCloseTime; + + @ExcelProperty("平台") + @ApiModelProperty(value = "平台") + @TableField("PLATFORM") + private String platform; + + @ExcelProperty("业务") + @ApiModelProperty(value = "业务") + @TableField("BUSINESS") + private String business; + + @ExcelProperty("符合性状态") + @ApiModelProperty(value = "符合性状态") + @TableField("CONFORMANCE_STATE") + private String conformanceState; + + @ExcelProperty("责任工程师") + @ApiModelProperty(value = "责任工程师") + @TableField("DUTY_ENGINEER") + private String dutyEngineer; + + @ExcelProperty("责任部门") + @ApiModelProperty(value = "责任部门") + @TableField("RESPONSIBLE_UNIT") + private String responsibleUnit; + + @ExcelProperty("实施要求") + @ApiModelProperty(value = "实施要求") + @TableField("IMPLEMENT_DEMAND") + private String implementDemand; + + @ExcelProperty(value = "实施时间",converter = TimestampConverter.class) + @ApiModelProperty(value = "实施时间") + @TableField("IMPLEMENT_TIME") + private Timestamp implementTime; + + @ExcelProperty("当前节点") + @ApiModelProperty(value = "当前节点") + @TableField("CURRENT_NODE") + private String currentNode; + + @ExcelProperty(value = "标准名称/政策名称") + @ApiModelProperty(value = "标准名称/政策名称") + @TableField("STAND_NAME") + private String standName; + + @ExcelProperty("标准编号/政策编号") + @ApiModelProperty(value = "标准编号/政策编号") + @TableField("STAND_ID") + private String standId; + + @ExcelIgnore + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProductPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProductPage.java new file mode 100644 index 00000000..eec3a722 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProductPage.java @@ -0,0 +1,91 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.sql.Timestamp; +import java.time.LocalDateTime; + +@Data +@ApiModel(description = "产品规划部重大问题管控分页") +public class SarStandIssueControlProductPage { + + @ApiModelProperty(value = "创建部门") + @TableField("CREATE_DEPT_ID") + private String createDeptId; + + @ApiModelProperty(value = "创建人") + @TableField("CREATE_BY_ID") + private String createById; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATE_TIME") + private Timestamp createTime; + + @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") + @TableField("CLOSE_STATE") + private Integer closeState; + + @ApiModelProperty(value = "实际关闭时间") + @TableField("ACTUAL_CLOSE_TIME") + private Timestamp actualCloseTime; + + @ApiModelProperty(value = "要求关闭时间") + @TableField("REQUIRE_CLOSE_TIME") + private Timestamp requireCloseTime; + + @ApiModelProperty(value = "平台") + @TableField("PLANTFORM") + private String plantform; + + @ApiModelProperty(value = "业务") + @TableField("BUSINESS") + private String business; + + @ApiModelProperty(value = "符合性状态") + @TableField("CONFORMANCE_STATE") + private String conformanceState; + + @ApiModelProperty(value = "责任工程师") + @TableField("DUTY_ENGINEER") + private String dutyEngineer; + + @ApiModelProperty(value = "责任部门") + @TableField("RESPONSIBLE_UNIT") + private String responsibleUnit; + + @ApiModelProperty(value = "实施要求") + @TableField("IMPLEMEN_DEMAND") + private String implemenDemand; + + @ApiModelProperty(value = "实施时间") + @TableField("IMPLEMENT_TIME") + private Timestamp implementTime; + + @ApiModelProperty(value = "当前节点") + @TableField("CURRENT_NODE") + private String currentNode; + + @ApiModelProperty(value = "标准名称/政策名称") + @TableField("STAND_NAME") + private String standName; + + @ApiModelProperty(value = "标准编号/政策编号") + @TableField("STAND_ID") + private String standId; + + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + + @ApiModelProperty("当前页") + private Integer current; + + @ApiModelProperty("每页条数") + private Integer size; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductExcelVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductExcelVO.java new file mode 100644 index 00000000..4b91393d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductExcelVO.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel(description = "ExcelVO类") +public class StandIssueControlProductExcelVO { + @ApiModelProperty("文件名") + String exportName; + @ApiModelProperty("导出的ID列表") + List ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductListVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductListVO.java new file mode 100644 index 00000000..ee0b3e5b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/StandIssueControlProductListVO.java @@ -0,0 +1,12 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.entity; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class StandIssueControlProductListVO { + @ApiModelProperty("ID列表") + private List Ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/ISarStandIssueControlProductService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/ISarStandIssueControlProductService.java new file mode 100644 index 00000000..d08b48f4 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/ISarStandIssueControlProductService.java @@ -0,0 +1,51 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.service; + +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import com.adc.da.slrs.sarStandIssueControlCause.entity.StandIssueControlCauseExcelVO; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProduct; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProductPage; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.StandIssueControlProductExcelVO; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.StandIssueControlProductListVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author zxy + * @since 2021-06-17 + */ +public interface ISarStandIssueControlProductService extends IService { + + /** + * 分页查询 + * @param sarStandIssueControlProductPage:筛选、分页信息 + * @return IPage + */ + IPage getSarStandIssueControlProductPage(SarStandIssueControlProductPage sarStandIssueControlProductPage); + + /** + * 分页查询 + * @param sarStandIssueControlProductPage:筛选、分页信息 + * @return IPage + */ + IPage getSarStandIssueControlProductHistoryPage(SarStandIssueControlProductPage sarStandIssueControlProductPage); + + /** + * 批量关闭 + * @param standIssueControlProductListVO:关闭ID列表 + * @return List:关闭失败的ID + */ + List closeSarStandIssueControlProductList(StandIssueControlProductListVO standIssueControlProductListVO); + + /** + * 获得导出excel的数据 + * @param standIssueControlProductExcelVO:导出的数据ID + * @return List + */ + List getStandIssueControlProductExcelData(StandIssueControlProductExcelVO standIssueControlProductExcelVO); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java new file mode 100644 index 00000000..840c6fed --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java @@ -0,0 +1,135 @@ +package com.adc.da.slrs.sarStandIssueControlProduct.service.impl; + +import com.adc.da.slrs.sarStandIssueControlCause.entity.SarStandIssueControlCause; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProduct; +import com.adc.da.slrs.sarStandIssueControlProduct.dao.SarStandIssueControlProductDao; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.SarStandIssueControlProductPage; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.StandIssueControlProductExcelVO; +import com.adc.da.slrs.sarStandIssueControlProduct.entity.StandIssueControlProductListVO; +import com.adc.da.slrs.sarStandIssueControlProduct.service.ISarStandIssueControlProductService; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author super_liu + * @since 2021-06-17 + */ +@Service +public class SarStandIssueControlProductServiceImpl extends ServiceImpl implements ISarStandIssueControlProductService { + @Autowired + private SarStandIssueControlProductDao sarStandIssueControlProductDao; + /** + * 分页查询 + * @param sarStandIssueControlProductPage:筛选、分页信息 + * @return IPage + */ + @Override + public IPage getSarStandIssueControlProductPage(SarStandIssueControlProductPage sarStandIssueControlProductPage) { + QueryWrapper sarStandIssueControlProductQueryWrapper=new QueryWrapper<>(); + //仅查询未关闭的 + sarStandIssueControlProductQueryWrapper.eq("close_state",1); + if(sarStandIssueControlProductPage.getStandId()!=null){ + sarStandIssueControlProductQueryWrapper.eq("stand_id",sarStandIssueControlProductPage.getStandId()).or().like("stand_name","%"+sarStandIssueControlProductPage.getStandName()+"%"); + } + if(sarStandIssueControlProductPage.getResponsibleUnit()!=null){ + sarStandIssueControlProductQueryWrapper.eq("responsible_unit",sarStandIssueControlProductPage.getResponsibleUnit()); + } + Page standIssueControlCausePage=new Page<>(); + //判断前端是否提供页码和每页条数 + if(sarStandIssueControlProductPage.getCurrent()!=null&&sarStandIssueControlProductPage.getSize()!=null){ + standIssueControlCausePage=new Page<>(sarStandIssueControlProductPage.getCurrent(),sarStandIssueControlProductPage.getSize()); + } + return sarStandIssueControlProductDao.selectPage(standIssueControlCausePage,sarStandIssueControlProductQueryWrapper); + } + + /** + * 分页查询 + * @param sarStandIssueControlProductPage:筛选、分页信息 + * @return IPage + */ + @Override + public IPage getSarStandIssueControlProductHistoryPage(SarStandIssueControlProductPage sarStandIssueControlProductPage) { + QueryWrapper sarStandIssueControlProductQueryWrapper=new QueryWrapper<>(); + //仅查询关闭的 + sarStandIssueControlProductQueryWrapper.eq("close_state",2); + if(sarStandIssueControlProductPage.getStandId()!=null){ + sarStandIssueControlProductQueryWrapper.eq("stand_id",sarStandIssueControlProductPage.getStandId()).or().like("stand_name","%"+sarStandIssueControlProductPage.getStandName()+"%"); + } + if(sarStandIssueControlProductPage.getResponsibleUnit()!=null){ + sarStandIssueControlProductQueryWrapper.eq("responsible_unit",sarStandIssueControlProductPage.getResponsibleUnit()); + } + Page standIssueControlCausePage=new Page<>(); + //判断前端是否提供页码和每页条数 + if(sarStandIssueControlProductPage.getCurrent()!=null&&sarStandIssueControlProductPage.getSize()!=null){ + standIssueControlCausePage=new Page<>(sarStandIssueControlProductPage.getCurrent(),sarStandIssueControlProductPage.getSize()); + } + return sarStandIssueControlProductDao.selectPage(standIssueControlCausePage,sarStandIssueControlProductQueryWrapper); + + } + + /** + * 批量关闭 + * @param standIssueControlProductListVO:关闭ID列表 + * @return List:关闭失败的ID + */ + @Override + public List closeSarStandIssueControlProductList(StandIssueControlProductListVO standIssueControlProductListVO) { + List failIds=new ArrayList<>(); + for(String id:standIssueControlProductListVO.getIds()){ + boolean success=closeSarStandIssueControlProduct(id); + if(!success){ + failIds.add(id); + } + } + return failIds; + } + + /** + * 获得导出excel的数据 + * @param standIssueControlProductExcelVO:导出的数据ID + * @return List + */ + @Override + public List getStandIssueControlProductExcelData(StandIssueControlProductExcelVO standIssueControlProductExcelVO) { + QueryWrapper sarStandIssueControlProductQueryWrapper=new QueryWrapper<>(); + sarStandIssueControlProductQueryWrapper.eq("close_state",1); + if(standIssueControlProductExcelVO.getIds()!=null&&standIssueControlProductExcelVO.getIds().size()>0){ + sarStandIssueControlProductQueryWrapper.in("id",standIssueControlProductExcelVO.getIds()); + } + return sarStandIssueControlProductDao.selectList(sarStandIssueControlProductQueryWrapper); + } + + /** + * 问题关闭 + * @param standIssueControlCauseId:ID + * @return boolean + */ + private boolean closeSarStandIssueControlProduct(String standIssueControlCauseId){ + SarStandIssueControlProduct sarStandIssueControlProduct=sarStandIssueControlProductDao.selectById(standIssueControlCauseId); + //判断是否存在 + if(sarStandIssueControlProduct==null){ + return false; + } + //判断是否已关闭 + if(sarStandIssueControlProduct.getCloseState()==2){ + return false; + } + sarStandIssueControlProduct.setCloseState(2); + sarStandIssueControlProduct.setActualCloseTime(new Timestamp(new Date().getTime())); + sarStandIssueControlProductDao.updateById(sarStandIssueControlProduct); + return true; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java index 10f24e5f..b6067834 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java @@ -2,17 +2,7 @@ package com.adc.da.slrs.sarStandProjectLibrary.service; import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.service.IService; - -/** - *

- * 服务类 - *

- * - * @author super_liu - * @since 2021-06-02 - */ -public interface ISarStandProjectLibraryService extends IService { +public interface ISarStandProjectLibraryService { IPage queryMaintenanceProject(int current, int pageSize); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/SarStandUnqualifiedController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/SarStandUnqualifiedController.java index 87b321e4..c342eebd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/SarStandUnqualifiedController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/SarStandUnqualifiedController.java @@ -1,15 +1,42 @@ package com.adc.da.slrs.sarStandUnqualified.controller; +import com.adc.da.common.ReadExcel; +import com.adc.da.exception.AdcDaBaseException; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.ResponseMessageCodeEnum; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualifiedPage; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedExcelVO; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedListVO; import com.adc.da.slrs.sarStandUnqualified.service.ISarStandUnqualifiedService; +import com.adc.da.slrs.sarStandardsInfo.controller.SarStandardsInfoController; +import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; +import com.adc.da.slrs.sarStandardsInfo.entity.StandardsInfoExcelVO; +import com.adc.da.utils.util.StandExportUtil; +import com.alibaba.excel.EasyExcel; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; +import org.apache.poi.ss.usermodel.Workbook; +import org.apache.poi.util.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.*; import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualified; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.OutputStream; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.List; + /** *

* 前端控制器 @@ -22,8 +49,79 @@ import com.adc.da.base.web.BaseController; @Api(tags = "未符合项整改") @RequestMapping("/sarStandUnqualified/sar-stand-unqualified") public class SarStandUnqualifiedController extends BaseController { + + private static final Logger logger = LoggerFactory.getLogger(SarStandardsInfoController.class); + @Autowired private ISarStandUnqualifiedService sarStandUnqualifiedService; + /** + * 分页查询未符合项 + * @param sarStandUnqualifiedPage:筛选、分页信息 + * @return ResponseMessage> + */ + @ApiOperation("分页查询未符合项") + @GetMapping + public ResponseMessage> getSarStandUnqualifiedPage(SarStandUnqualifiedPage sarStandUnqualifiedPage){ + IPage sarStandUnqualifiedIPage=sarStandUnqualifiedService.getSarStandUnqualifiedPage(sarStandUnqualifiedPage); + return Result.success(sarStandUnqualifiedIPage); + } + /** + * 分页查询未符合项历史数据 + * @param sarStandUnqualifiedPage:筛选、分页信息 + * @return ResponseMessage> + */ + @ApiOperation("分页查询未符合项历史数据") + @GetMapping("/history") + public ResponseMessage> getSarStandUnqualifiedHistoryPage(SarStandUnqualifiedPage sarStandUnqualifiedPage){ + IPage sarStandUnqualifiedIPage=sarStandUnqualifiedService.getSarStandUnqualifiedHistoryPage(sarStandUnqualifiedPage); + return Result.success(sarStandUnqualifiedIPage); + } + + /** + * 批量关闭未符合项 + * @param standUnqualifiedListVO:未符合项ID列表 + * @return ResponseMessage>:关闭失败的未符合项ID + */ + @ApiOperation("批量关闭未符合项") + @PostMapping("/close") + public ResponseMessage> closeSarStandUnqualified(@RequestBody StandUnqualifiedListVO standUnqualifiedListVO){ + if(standUnqualifiedListVO==null||standUnqualifiedListVO.getIds().size()==0){ + return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"未传入未符合项ID",null); + } + List failIds=sarStandUnqualifiedService.closeSarStandUnqualifiedList(standUnqualifiedListVO); + if(failIds==null||failIds.size()==0){ + return Result.success(null); + }else { + return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"部分未符合项关闭失败",null); + } + } + + @ApiOperation("导出Excel表") + @GetMapping(value = "/exportStandUnqulifiedExcel") + public void exportStandardsInfoExcel(StandUnqualifiedExcelVO standUnqualifiedExcelVO, HttpServletResponse response) throws Exception { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + try { + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + if(standUnqualifiedExcelVO.getExportName()==null){ + standUnqualifiedExcelVO.setExportName("未符合项信息"); + } + String fileName = URLEncoder.encode(standUnqualifiedExcelVO.getExportName(), "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List data=sarStandUnqualifiedService.getStandUnqualifiedExcelData(standUnqualifiedExcelVO); + // 这里需要设置不关闭流 + EasyExcel.write(response.getOutputStream(), SarStandUnqualified.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") + .doWrite(data); + } catch (Exception e) { + System.out.println(e); + // 重置response + response.reset(); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().println(JSON.toJSONString(Result.error())); + } + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java index d0ea4bc6..69c8650f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java @@ -1,7 +1,13 @@ package com.adc.da.slrs.sarStandUnqualified.entity; import com.adc.da.base.entity.BaseEntity; -import java.time.LocalDateTime; + +import java.sql.Timestamp; + +import com.adc.da.slrs.sarStandUnqualified.utils.ProductTypeConverter; +import com.adc.da.slrs.sarStandUnqualified.utils.TimestampConverter; +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; @@ -26,74 +32,92 @@ public class SarStandUnqualified extends BaseEntity { private static final long serialVersionUID = 1L; + @ExcelProperty("创建部门") @ApiModelProperty(value = "创建部门") @TableField("CREATE_DEPT_ID") private String createDeptId; + @ExcelProperty("创建人") @ApiModelProperty(value = "创建人") @TableField("CREATE_BY_ID") private String createById; + @ExcelProperty(value = "创建时间",converter = TimestampConverter.class) @ApiModelProperty(value = "创建时间") @TableField("CREATE_TIME") - private LocalDateTime createTime; + private Timestamp createTime; + @ExcelIgnore @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") @TableField("CLOSE_STATE") private Integer closeState; + @ExcelIgnore @ApiModelProperty(value = "实际关闭时间") @TableField("ACTUAL_CLOSE_TIME") - private LocalDateTime actualCloseTime; + private Timestamp actualCloseTime; + @ExcelProperty(value = "计划关闭时间",converter = TimestampConverter.class) @ApiModelProperty(value = "计划关闭时间") @TableField("PLAN_CLOSE_TIME") - private LocalDateTime planCloseTime; + private Timestamp planCloseTime; + @ExcelProperty("质量工程师") @ApiModelProperty(value = "质量工程师") @TableField("QA_ENGINEER") private String qaEngineer; + @ExcelProperty("认证工程师") @ApiModelProperty(value = "认证工程师") @TableField("AUTH_ENGINEER") private String authEngineer; + @ExcelProperty("责任工程师") @ApiModelProperty(value = "责任工程师") @TableField("DUTY_ENGINEER") private String dutyEngineer; + @ExcelProperty("责任部门") @ApiModelProperty(value = "责任部门") @TableField("RESPONSIBLE_UNIT") private String responsibleUnit; + @ExcelProperty("项目名称") @ApiModelProperty(value = "项目名称") @TableField("PRODUCT_NAME") private String productName; + @ExcelProperty("产品线") @ApiModelProperty(value = "产品线") @TableField("PRODUCT_LINE") private String productLine; + @ExcelProperty(value = "产品类型",converter = ProductTypeConverter.class) @ApiModelProperty(value = "产品类型(research为在研产品,product为在产产品)") @TableField("PRODUCT_TYPE") private String productType; + @ExcelProperty("条款名称") @ApiModelProperty(value = "条款名称") @TableField("ITEMS_NAME") private String itemsName; + @ExcelProperty("条款号") @ApiModelProperty(value = "条款号") @TableField("ITEMS_NUM") private String itemsNum; + @ExcelProperty("标准名称") @ApiModelProperty(value = "标准名称") @TableField("STAND_NAME") private String standName; + @ExcelProperty("标准编号") @ApiModelProperty(value = "标准ID") @TableField("STAND_ID") private String standId; + @ExcelIgnore @ApiModelProperty(value = "主键") @TableId("ID") private String id; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualifiedPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualifiedPage.java new file mode 100644 index 00000000..c2801a4c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualifiedPage.java @@ -0,0 +1,88 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + +import com.adc.da.base.entity.BaseEntity; + +import java.sql.Timestamp; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonBackReference; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-06-15 + */ +@Data +@ApiModel(value="SarStandUnqualifiedPage对象", description="") +public class SarStandUnqualifiedPage { + + @ApiModelProperty(value = "创建部门") + private String createDeptId; + + @ApiModelProperty(value = "创建人") + private String createById; + + @ApiModelProperty(value = "创建时间") + private Timestamp createTime; + + @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") + private Integer closeState; + + @ApiModelProperty(value = "实际关闭时间") + private Timestamp actualCloseTime; + + @ApiModelProperty(value = "计划关闭时间") + private Timestamp planCloseTime; + + @ApiModelProperty(value = "质量工程师") + private String qaEngineer; + + @ApiModelProperty(value = "认证工程师") + private String authEngineer; + + @ApiModelProperty(value = "责任工程师") + private String dutyEngineer; + + @ApiModelProperty(value = "责任部门") + private String responsibleUnit; + + @ApiModelProperty(value = "项目名称") + private String productName; + + @ApiModelProperty(value = "产品线") + private String productLine; + + @ApiModelProperty(value = "产品类型(research为在研产品,product为在产产品)") + private String productType; + + @ApiModelProperty(value = "条款名称") + private String itemsName; + + @ApiModelProperty(value = "条款号") + private String itemsNum; + + @ApiModelProperty(value = "标准名称") + private String standName; + + @ApiModelProperty(value = "标准ID") + private String standId; + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty("当前页") + private Integer current; + + @ApiModelProperty("每页条数") + private Integer size; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedExcelVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedExcelVO.java new file mode 100644 index 00000000..830e23c1 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedExcelVO.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +@ApiModel(description = "未符合项ExcelVO类") +public class StandUnqualifiedExcelVO { + @ApiModelProperty("文件名") + String exportName; + @ApiModelProperty("导出的未符合项ID列表") + List ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedListVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedListVO.java new file mode 100644 index 00000000..eb045402 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/StandUnqualifiedListVO.java @@ -0,0 +1,12 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class StandUnqualifiedListVO { + @ApiModelProperty("未符合项ID列表") + private List Ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/ISarStandUnqualifiedService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/ISarStandUnqualifiedService.java index 765bc8bc..4d7873ca 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/ISarStandUnqualifiedService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/ISarStandUnqualifiedService.java @@ -1,8 +1,14 @@ package com.adc.da.slrs.sarStandUnqualified.service; import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualified; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualifiedPage; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedExcelVO; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedListVO; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 服务类 @@ -13,4 +19,31 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface ISarStandUnqualifiedService extends IService { + /** + * 分页查询未符合项 + * @param sarStandUnqualifiedPage:筛选、分页信息 + * @return:IPage + */ + IPage getSarStandUnqualifiedPage(SarStandUnqualifiedPage sarStandUnqualifiedPage); + + /** + * 分页查询未符合项历史数据 + * @param sarStandUnqualifiedPage:筛选、分页信息 + * @return:IPage + */ + IPage getSarStandUnqualifiedHistoryPage(SarStandUnqualifiedPage sarStandUnqualifiedPage); + + /** + * 批量关闭未符合项 + * @param standUnqualifiedListVO :要关闭的未符合项目列表 + * @return + */ + List closeSarStandUnqualifiedList(StandUnqualifiedListVO standUnqualifiedListVO); + + /** + * 获取导出excel的数据 + * @param standUnqualifiedExcelVO:ids + * @return List + */ + List getStandUnqualifiedExcelData(StandUnqualifiedExcelVO standUnqualifiedExcelVO); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java index 66d459c9..eefa6161 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java @@ -2,9 +2,23 @@ package com.adc.da.slrs.sarStandUnqualified.service.impl; import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualified; import com.adc.da.slrs.sarStandUnqualified.dao.SarStandUnqualifiedDao; +import com.adc.da.slrs.sarStandUnqualified.entity.SarStandUnqualifiedPage; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedExcelVO; +import com.adc.da.slrs.sarStandUnqualified.entity.StandUnqualifiedListVO; import com.adc.da.slrs.sarStandUnqualified.service.ISarStandUnqualifiedService; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.sql.Timestamp; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; /** *

@@ -17,4 +31,109 @@ import org.springframework.stereotype.Service; @Service public class SarStandUnqualifiedServiceImpl extends ServiceImpl implements ISarStandUnqualifiedService { + @Autowired + private SarStandUnqualifiedDao sarStandUnqualifiedDao; + /** + * 分页查询未符合项 + * @param sarStandUnqualifiedPage:筛选、分页信息 + * @return:IPage + */ + @Override + public IPage getSarStandUnqualifiedPage(SarStandUnqualifiedPage sarStandUnqualifiedPage) { + QueryWrapper sarStandUnqualifiedQueryWrapper=new QueryWrapper<>(); + //仅查询未关闭的 + sarStandUnqualifiedQueryWrapper.eq("close_state",1); + if(sarStandUnqualifiedPage.getStandId()!=null){ + sarStandUnqualifiedQueryWrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandName()+"%"); + } + if(sarStandUnqualifiedPage.getProductName()!=null){ + sarStandUnqualifiedQueryWrapper.like("product_name","%"+sarStandUnqualifiedPage.getProductName()+"%"); + } + if(sarStandUnqualifiedPage.getResponsibleUnit()!=null){ + sarStandUnqualifiedQueryWrapper.eq("responsible_unit",sarStandUnqualifiedPage.getResponsibleUnit()); + } + Page standUnqualifiedPage=new Page<>(); + //判断前端是否提供页码和每页条数 + if(sarStandUnqualifiedPage.getCurrent()!=null&&sarStandUnqualifiedPage.getSize()!=null){ + standUnqualifiedPage=new Page<>(sarStandUnqualifiedPage.getCurrent(),sarStandUnqualifiedPage.getSize()); + } + return sarStandUnqualifiedDao.selectPage(standUnqualifiedPage,sarStandUnqualifiedQueryWrapper); + } + + /** + * 分页查询未符合项历史数据 + * @param sarStandUnqualifiedPage:筛选、分页信息 + * @return:IPage + */ + @Override + public IPage getSarStandUnqualifiedHistoryPage(SarStandUnqualifiedPage sarStandUnqualifiedPage) { + QueryWrapper sarStandUnqualifiedQueryWrapper=new QueryWrapper<>(); + //仅查询关闭的 + sarStandUnqualifiedQueryWrapper.eq("close_state",2); + if(sarStandUnqualifiedPage.getStandId()!=null){ + sarStandUnqualifiedQueryWrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandName()+"%"); + } + if(sarStandUnqualifiedPage.getProductName()!=null){ + sarStandUnqualifiedQueryWrapper.like("product_name","%"+sarStandUnqualifiedPage.getProductName()+"%"); + } + if(sarStandUnqualifiedPage.getResponsibleUnit()!=null){ + sarStandUnqualifiedQueryWrapper.eq("responsible_unit",sarStandUnqualifiedPage.getResponsibleUnit()); + } + Page standUnqualifiedPage=new Page<>(); + //判断前端是否提供页码和每页条数 + if(sarStandUnqualifiedPage.getCurrent()!=null&&sarStandUnqualifiedPage.getSize()!=null){ + standUnqualifiedPage=new Page<>(sarStandUnqualifiedPage.getCurrent(),sarStandUnqualifiedPage.getSize()); + } + return sarStandUnqualifiedDao.selectPage(standUnqualifiedPage,sarStandUnqualifiedQueryWrapper); + + } + + /** + * 批量关闭未符合项 + * @param standUnqualifiedListVO :要关闭的未符合项目列表 + * @return List:失败的ID列表 + */ + @Transactional + @Override + public List closeSarStandUnqualifiedList(StandUnqualifiedListVO standUnqualifiedListVO) { + List failIds=new ArrayList<>(); + for(String id:standUnqualifiedListVO.getIds()){ + boolean success=closeSarStandUnqualified(id); + if(!success){ + failIds.add(id); + } + } + return failIds; + } + + /** + * 获取导出excel的数据 + * @param standUnqualifiedExcelVO:ids + * @return List + */ + @Override + public List getStandUnqualifiedExcelData(StandUnqualifiedExcelVO standUnqualifiedExcelVO) { + QueryWrapper sarStandUnqualifiedQueryWrapper=new QueryWrapper<>(); + sarStandUnqualifiedQueryWrapper.eq("close_state",1); + if(standUnqualifiedExcelVO.getIds()!=null&&standUnqualifiedExcelVO.getIds().size()>0){ + sarStandUnqualifiedQueryWrapper.in("id",standUnqualifiedExcelVO.getIds()); + } + return sarStandUnqualifiedDao.selectList(sarStandUnqualifiedQueryWrapper); + } + + private boolean closeSarStandUnqualified(String standUnqualifiedId){ + SarStandUnqualified sarStandUnqualified=sarStandUnqualifiedDao.selectById(standUnqualifiedId); + //判断是否存在 + if(sarStandUnqualified==null){ + return false; + } + //判断是否已关闭 + if(sarStandUnqualified.getCloseState()==2){ + return false; + } + sarStandUnqualified.setCloseState(2); + sarStandUnqualified.setActualCloseTime(new Timestamp(new Date().getTime())); + sarStandUnqualifiedDao.updateById(sarStandUnqualified); + return true; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/ProductTypeConverter.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/ProductTypeConverter.java new file mode 100644 index 00000000..168354ed --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/ProductTypeConverter.java @@ -0,0 +1,47 @@ +package com.adc.da.slrs.sarStandUnqualified.utils; + +import com.alibaba.excel.converters.Converter; +import com.alibaba.excel.enums.CellDataTypeEnum; +import com.alibaba.excel.metadata.CellData; +import com.alibaba.excel.metadata.GlobalConfiguration; +import com.alibaba.excel.metadata.property.ExcelContentProperty; + +/** + * excel产品类型转换 + */ +public class ProductTypeConverter implements Converter { + //在java中性别是用 0 1 来标识的 所以是int + @Override + public Class supportJavaTypeKey() {return String.class;} + // 在excel中是男女 所以是string + @Override + public CellDataTypeEnum supportExcelTypeKey() {return CellDataTypeEnum.STRING;} + //将excel的数据类型转为java数据类型 + @Override + public String convertToJavaData(CellData cellData, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception { + String stringValue = cellData.getStringValue(); + if (stringValue != null) { + if(stringValue.equals("在研产品")){ + return "research"; + } + if(stringValue.equals("在产产品")){ + return "product"; + } + } + return null; + } + + @Override + public CellData convertToExcelData(String s, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception { + if(s!=null){ + if(s.equals("research")){ + return new CellData<>("在研产品"); + } + if(s.equals("product")){ + return new CellData<>("在产产品"); + } + } + return null; + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/TimestampConverter.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/TimestampConverter.java new file mode 100644 index 00000000..feafea8c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/utils/TimestampConverter.java @@ -0,0 +1,42 @@ +package com.adc.da.slrs.sarStandUnqualified.utils; + +import com.adc.da.utils.util.DateUtil; +import com.alibaba.excel.converters.Converter; +import com.alibaba.excel.enums.CellDataTypeEnum; +import com.alibaba.excel.metadata.CellData; +import com.alibaba.excel.metadata.GlobalConfiguration; +import com.alibaba.excel.metadata.property.ExcelContentProperty; + +import java.sql.Timestamp; +import java.text.ParseException; +import java.time.format.DateTimeFormatter; +import java.util.Date; + +/** + * excel输出时Timestamp和String的转换 + */ +public class TimestampConverter implements Converter { + + @Override + public Class supportJavaTypeKey() { + return Timestamp.class; + } + + @Override + public CellDataTypeEnum supportExcelTypeKey() { + return CellDataTypeEnum.STRING; + } + + @Override + public Timestamp convertToJavaData(CellData cellData, ExcelContentProperty contentProperty, + GlobalConfiguration globalConfiguration) throws ParseException { + return new Timestamp(DateUtil.stingToDate(cellData.getDataFormatString(),"yyyy-MM-dd HH:mm:ss").getTime()); + } + + @Override + public CellData convertToExcelData(Timestamp value, ExcelContentProperty contentProperty, + GlobalConfiguration globalConfiguration) { + return new CellData<>(DateUtil.dateToString(new Date(value.getTime()),"yyyy-MM-dd HH:mm:ss")); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/DateUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/DateUtil.java index 7ef009f3..cd892c2c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/utils/util/DateUtil.java +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/DateUtil.java @@ -55,6 +55,36 @@ public class DateUtil { return dateTime; } + /** + * 将日期对象转换为指定的日期字符串 + * + * @param date 传入的日期对象 + * @param format 格式 + * @return 日期字符串 + * @author 赵肖云 + */ + public static String dateToString(Date date, String format) { + String string = ""; + SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format); + if (date != null) { + string = simpleDateFormat.format(date); + } + return string; + } + + /** + * 将日期字符串转换为一个日期对象 + * + * @param datestr 日期字符串 + * @param format 格式 + * @return Date + * @author 赵肖云 + */ + public static Date stingToDate(String datestr, String format) throws ParseException { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format); + return simpleDateFormat.parse(datestr); + } + public static void main(String[] args) { String utcTime = "2021-04-15T01:43:54.296Z"; diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlCause/SarStandIssueControlCauseMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlCause/SarStandIssueControlCauseMapper.xml new file mode 100644 index 00000000..cf0cfb84 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlCause/SarStandIssueControlCauseMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlProduct/SarStandIssueControlProductMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlProduct/SarStandIssueControlProductMapper.xml new file mode 100644 index 00000000..d436e6ae --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandIssueControlProduct/SarStandIssueControlProductMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/pom.xml b/pom.xml index a44dee79..4bff73b3 100644 --- a/pom.xml +++ b/pom.xml @@ -279,6 +279,12 @@ spring-rabbit-test test + + + com.alibaba + easyexcel + 2.2.6 + From f5e2d04d3010f6e1f7de23177b5dd3d8d9bc6197 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Fri, 18 Jun 2021 15:32:47 +0800 Subject: [PATCH 02/57] =?UTF-8?q?feat=20=E4=BF=AE=E6=94=B9=E6=A0=87?= =?UTF-8?q?=E5=87=86=E5=90=88=E8=A7=84=E8=AF=84=E4=BC=B0=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarInterpretationForeignStandard.java | 41 ------ .../SarInterpretationNationalStandard.java | 41 ------ ...erpretationForeignStandardServiceImpl.java | 20 --- ...rpretationNationalStandardServiceImpl.java | 20 --- ...terpretationForeignStandardController.java | 8 +- ...erpretationNationalStandardController.java | 8 +- ...ndardComplianceAssessResultController.java | 133 +++++++++--------- ...dardComplianceProductAssessController.java | 8 +- .../SarInterpretationForeignStandardDao.java | 6 +- .../SarInterpretationNationalStandardDao.java | 6 +- .../SarStandardComplianceAssessResultDao.java | 12 -- ...SarStandardComplianceProductAssessDao.java | 6 +- .../entity/InterpretationEO.java | 39 +++++ .../entity/SarBaseStandardInfo.java | 16 +++ .../SarInterpretationForeignStandard.java | 102 ++++++++++++++ .../SarInterpretationForeignStandardEO.java | 20 --- .../SarInterpretationNationalStandard.java | 90 ++++++++++++ .../SarInterpretationNationalStandardEO.java | 20 --- .../SarStandardComplianceProductAssess.java | 112 +++++++++++++++ .../SarStandardComplianceProductAssessEO.java | 18 ++- .../entity/SarStandardsInfoEO.java | 6 + ...rInterpretationForeignStandardService.java | 6 +- ...InterpretationNationalStandardService.java | 6 +- .../ISarStandardComplianceAssessResult.java | 11 -- ...tandardComplianceProductAssessService.java | 6 +- ...erpretationForeignStandardServiceImpl.java | 20 +++ ...rpretationNationalStandardServiceImpl.java | 20 +++ ...ardComplianceProductAssessServiceImpl.java | 20 +++ .../SarStandardComplianceProductAssess.java | 63 --------- ...ardComplianceProductAssessServiceImpl.java | 20 --- .../SarInterpretationStandardMapper.xml | 5 + ...SarInterpretationForeignStandardMapper.xml | 5 + ...arInterpretationNationalStandardMapper.xml | 9 ++ ...rStandardComplianceProductAssessMapper.xml | 7 + 34 files changed, 566 insertions(+), 364 deletions(-) delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationForeignStandard.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationNationalStandard.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationForeignStandardServiceImpl.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationNationalStandardServiceImpl.java rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarInterpretationStandard => sarStandardComplianceAssessResult}/controller/SarInterpretationForeignStandardController.java (62%) rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarInterpretationStandard => sarStandardComplianceAssessResult}/controller/SarInterpretationNationalStandardController.java (62%) rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarStandardComplianceProductAssess => sarStandardComplianceAssessResult}/controller/SarStandardComplianceProductAssessController.java (62%) rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarInterpretationStandard => sarStandardComplianceAssessResult}/dao/SarInterpretationForeignStandardDao.java (55%) rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarInterpretationStandard => sarStandardComplianceAssessResult}/dao/SarInterpretationNationalStandardDao.java (55%) delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceAssessResultDao.java rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarStandardComplianceProductAssess => sarStandardComplianceAssessResult}/dao/SarStandardComplianceProductAssessDao.java (55%) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/InterpretationEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarBaseStandardInfo.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandard.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandardEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandardEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssess.java rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarInterpretationStandard => sarStandardComplianceAssessResult}/service/ISarInterpretationForeignStandardService.java (55%) rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarInterpretationStandard => sarStandardComplianceAssessResult}/service/ISarInterpretationNationalStandardService.java (55%) delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceAssessResult.java rename adc-da-slrs/src/main/java/com/adc/da/slrs/{sarStandardComplianceProductAssess => sarStandardComplianceAssessResult}/service/ISarStandardComplianceProductAssessService.java (55%) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationForeignStandardServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarStandardComplianceProductAssessServiceImpl.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/entity/SarStandardComplianceProductAssess.java delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/impl/SarStandardComplianceProductAssessServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarInterpretationStandard/SarInterpretationStandardMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationForeignStandardMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationNationalStandardMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarStandardComplianceProductAssessMapper.xml diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationForeignStandard.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationForeignStandard.java deleted file mode 100644 index b3e186a6..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationForeignStandard.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.adc.da.slrs.sarInterpretationStandard.entity; - -import com.adc.da.base.entity.BaseEntity; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *

- * - *

- * - * @author zyl - * @since 2021-06-16 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@Accessors(chain = true) -@ApiModel(value="SarInterpretationForeignStandard对象", description="") -public class SarInterpretationForeignStandard extends BaseEntity { - - private static final long serialVersionUID = 1L; - - private String standardNum; - - private String standardName; - - private String correspondDomesticStandard; - - private String specificItem; - - private String coreTechnicalRequirement; - - private String comparedDomesticStandard; - - private String complianceState; - - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationNationalStandard.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationNationalStandard.java deleted file mode 100644 index e2b4cd3e..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/entity/SarInterpretationNationalStandard.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.adc.da.slrs.sarInterpretationStandard.entity; - -import com.adc.da.base.entity.BaseEntity; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *

- * - *

- * - * @author zyl - * @since 2021-06-16 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@Accessors(chain = true) -@ApiModel(value="SarInterpretationNationalStandard对象", description="") -public class SarInterpretationNationalStandard extends BaseEntity { - - private static final long serialVersionUID = 1L; - - private String standardNum; - - private String standardName; - - private Integer lastVersionNum; - - private String specificItem; - - private String coreTechnicalRequirement; - - private String comparedWithPrevious; - - private String complianceState; - - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationForeignStandardServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationForeignStandardServiceImpl.java deleted file mode 100644 index f809c650..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationForeignStandardServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.adc.da.slrs.sarInterpretationStandard.service.impl; - -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationForeignStandard; -import com.adc.da.slrs.sarInterpretationStandard.dao.SarInterpretationForeignStandardDao; -import com.adc.da.slrs.sarInterpretationStandard.service.ISarInterpretationForeignStandardService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.springframework.stereotype.Service; - -/** - *

- * 服务实现类 - *

- * - * @author zyl - * @since 2021-06-16 - */ -@Service -public class SarInterpretationForeignStandardServiceImpl extends ServiceImpl implements ISarInterpretationForeignStandardService { - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationNationalStandardServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationNationalStandardServiceImpl.java deleted file mode 100644 index 0fa0a2bf..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/impl/SarInterpretationNationalStandardServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.adc.da.slrs.sarInterpretationStandard.service.impl; - -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationNationalStandard; -import com.adc.da.slrs.sarInterpretationStandard.dao.SarInterpretationNationalStandardDao; -import com.adc.da.slrs.sarInterpretationStandard.service.ISarInterpretationNationalStandardService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.springframework.stereotype.Service; - -/** - *

- * 服务实现类 - *

- * - * @author zyl - * @since 2021-06-16 - */ -@Service -public class SarInterpretationNationalStandardServiceImpl extends ServiceImpl implements ISarInterpretationNationalStandardService { - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/controller/SarInterpretationForeignStandardController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java similarity index 62% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/controller/SarInterpretationForeignStandardController.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java index e09d97fe..2df7a33d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/controller/SarInterpretationForeignStandardController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java @@ -1,8 +1,8 @@ -package com.adc.da.slrs.sarInterpretationStandard.controller; +package com.adc.da.slrs.sarStandardComplianceAssessResult.controller; import org.springframework.web.bind.annotation.RequestMapping; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationForeignStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationForeignStandard; import io.swagger.annotations.Api; import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; @@ -13,11 +13,11 @@ import com.adc.da.base.web.BaseController; *

* * @author zyl -* @since 2021-06-16 +* @since 2021-06-18 */ @RestController @Api(description = "|SarInterpretationForeignStandard|") -@RequestMapping("/sarInterpretationStandard/sar-interpretation-foreign-standard") +@RequestMapping("/sarStandardComplianceAssessResult/sar-interpretation-foreign-standard") public class SarInterpretationForeignStandardController extends BaseController { } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/controller/SarInterpretationNationalStandardController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationNationalStandardController.java similarity index 62% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/controller/SarInterpretationNationalStandardController.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationNationalStandardController.java index 50cbd956..c0d1a370 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/controller/SarInterpretationNationalStandardController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationNationalStandardController.java @@ -1,8 +1,8 @@ -package com.adc.da.slrs.sarInterpretationStandard.controller; +package com.adc.da.slrs.sarStandardComplianceAssessResult.controller; import org.springframework.web.bind.annotation.RequestMapping; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationNationalStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationNationalStandard; import io.swagger.annotations.Api; import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; @@ -13,11 +13,11 @@ import com.adc.da.base.web.BaseController; *

* * @author zyl -* @since 2021-06-16 +* @since 2021-06-18 */ @RestController @Api(description = "|SarInterpretationNationalStandard|") -@RequestMapping("/sarInterpretationStandard/sar-interpretation-national-standard") +@RequestMapping("/sarStandardComplianceAssessResult/sar-interpretation-national-standard") public class SarInterpretationNationalStandardController extends BaseController { } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java index de342746..43ba106f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java @@ -4,22 +4,12 @@ package com.adc.da.slrs.sarStandardComplianceAssessResult.controller; import com.adc.da.base.web.BaseController; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationForeignStandard; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationNationalStandard; -import com.adc.da.slrs.sarInterpretationStandard.service.ISarInterpretationForeignStandardService; -import com.adc.da.slrs.sarInterpretationStandard.service.ISarInterpretationNationalStandardService; -import com.adc.da.slrs.sarProductStand.entity.SarProductStand; -import com.adc.da.slrs.sarProductStand.service.ISarProductStandService; import com.adc.da.slrs.sarSarAccessInfo.entity.SarSarAccessInfo; -import com.adc.da.slrs.sarSarAccessInfo.service.ISarSarAccessInfoService; -import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationForeignStandardEO; -import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationNationalStandardEO; -import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarStandardComplianceProductAssessEO; -import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarStandardsInfoEO; -import com.adc.da.slrs.sarStandardComplianceProductAssess.entity.SarStandardComplianceProductAssess; -import com.adc.da.slrs.sarStandardComplianceProductAssess.service.ISarStandardComplianceProductAssessService; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.*; +import com.adc.da.slrs.sarStandardComplianceAssessResult.service.ISarInterpretationForeignStandardService; +import com.adc.da.slrs.sarStandardComplianceAssessResult.service.ISarInterpretationNationalStandardService; +import com.adc.da.slrs.sarStandardComplianceAssessResult.service.ISarStandardComplianceProductAssessService; import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; -import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfoEOPage; import com.adc.da.slrs.sarStandardsInfo.service.ISarStandardsInfoService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -33,27 +23,21 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.List; -import java.util.Map; -import java.util.Set; - /** -*

- * 标准法规准入清单详情表 前端控制器 - *

-* -* @author super_liu -* @since 2021-06-02 -*/ + *

+ * 标准法规准入清单详情表 前端控制器 + *

+ * + * @author super_liu + * @since 2021-06-02 + */ @RestController @Api(tags = "福田标准法规--标准法规库--标准合规评估结果") @RequestMapping("/${restPath}/sarStandardComplianceAssessResult") -public class SarStandardComplianceAssessResultController extends BaseController { +public class SarStandardComplianceAssessResultController { private static final Logger logger = LoggerFactory.getLogger(SarStandardComplianceAssessResultController.class); - @Autowired - private ISarStandardsInfoService iSarStandardsInfoService; @Autowired private ISarStandardComplianceProductAssessService iSarStandardComplianceProductAssessService; @@ -65,48 +49,71 @@ public class SarStandardComplianceAssessResultController extends BaseController< @ApiOperation(value = "条件查询标准清单") @GetMapping("/standard") - public ResponseMessage> selectStandard(SarStandardsInfoEO eo) throws Exception { - QueryWrapper sarStandardsInfoQueryWrapper=new QueryWrapper<>(); + public ResponseMessage selectStandard(SarStandardsInfoEO eo) throws Exception { - if (eo.getStandName() != null) { - sarStandardsInfoQueryWrapper.like("STAND_NAME",eo.getStandName()); + if (eo.getStandApplicationType() == 1) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); + queryWrapper.select("distinct STAND_ID, STAND_NUMBER, STAND_NAME, STAND_TYPE, INTERPRETATION_TIME"); + if (eo.getStandName() != null && !eo.getStandName().trim().equals("")) { + queryWrapper.like("STAND_NAME",eo.getStandName().trim()); + } + if (eo.getStandNumber() != null && !eo.getStandNumber().trim().equals("")) { + queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); + } + return Result.success(iSarStandardComplianceProductAssessService.page(iPage,queryWrapper)); + }else { + if(eo.getPosition()==1){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); + queryWrapper.select("distinct STAND_ID, STAND_NUMBER, STAND_NAME, STAND_TYPE, INTERPRETATION_TIME"); + if (eo.getStandName() != null && !eo.getStandName().trim().equals("")) { + queryWrapper.like("STAND_NAME",eo.getStandName().trim()); + } + if (eo.getStandNumber() != null && !eo.getStandNumber().trim().equals("")) { + queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); + } + return Result.success(iSarInterpretationNationalStandardService.page(iPage,queryWrapper)); + }else{ + QueryWrapper queryWrapper = new QueryWrapper<>(); + IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); + queryWrapper.select("distinct STAND_ID, STAND_NUMBER, STAND_NAME, STAND_TYPE, INTERPRETATION_TIME"); + if (eo.getStandName() != null && !eo.getStandName().trim().equals("")) { + queryWrapper.like("STAND_NAME",eo.getStandName().trim()); + } + if (eo.getStandNumber() != null && !eo.getStandNumber().trim().equals("")) { + queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); + } + return Result.success(iSarInterpretationForeignStandardService.page(iPage,queryWrapper)); + } } - if (eo.getStandNumber() != null) { - sarStandardsInfoQueryWrapper.like("STAND_NUMBER",eo.getStandNumber()); - } - - IPage iPage=new Page<>(eo.getCurrent(), eo.getSize()); - - return Result.success(iSarStandardsInfoService.page(iPage,sarStandardsInfoQueryWrapper)); } - @ApiOperation(value = "条件查询标准涉及项目符合性清单") @GetMapping("/product") public ResponseMessage> selectProduct(SarStandardComplianceProductAssessEO eo) throws Exception { - IPage iPage=new Page<>(eo.getCurrent(), eo.getSize()); - QueryWrapper queryWrapper=new QueryWrapper<>(); - if(eo.getProductName()!=null)queryWrapper.like("product_name",eo.getProductName()); - if(eo.getStandardId()!=null)queryWrapper.like("standard_id",eo.getStandardId()); - return Result.success(iSarStandardComplianceProductAssessService.page(iPage,queryWrapper)); + IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + if (eo.getProductName() != null) queryWrapper.like("product_name", eo.getProductName()); + if (eo.getStandId() != null) queryWrapper.like("STAND_ID", eo.getStandId()); + if (eo.getInterpretationTime() != null) queryWrapper.eq("INTERPRETATION_TIME", eo.getInterpretationTime()); + return Result.success(iSarStandardComplianceProductAssessService.page(iPage, queryWrapper)); } - @ApiOperation(value = "条件查询标准涉及国内标准符合性清单") - @GetMapping("/nationalStandard") - public ResponseMessage> selectNationalStandard(SarInterpretationNationalStandardEO eo) throws Exception { - IPage iPage=new Page<>(eo.getCurrent(), eo.getSize()); - QueryWrapper queryWrapper=new QueryWrapper<>(); - if(eo.getStandardId()!=null)queryWrapper.like("standard_num",eo.getStandardId()); - return Result.success(iSarInterpretationNationalStandardService.page(iPage,queryWrapper)); + @ApiOperation(value = "条件查询技术审核符合性清单") + @GetMapping("/interpretation") + public ResponseMessage selectNationalStandard(InterpretationEO eo) throws Exception { + if (eo.getPosition()==1) { + IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + if (eo.getInterpretationTime() != null) queryWrapper.eq("INTERPRETATION_TIME", eo.getInterpretationTime()); + if(eo.getStandId()!=null)queryWrapper.eq("STAND_ID",eo.getStandId()); + return Result.success(iSarInterpretationNationalStandardService.page(iPage, queryWrapper)); + } else { + IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + if (eo.getInterpretationTime() != null) queryWrapper.eq("INTERPRETATION_TIME", eo.getInterpretationTime()); + if(eo.getStandId()!=null)queryWrapper.eq("STAND_ID",eo.getStandId()); + return Result.success(iSarInterpretationForeignStandardService.page(iPage, queryWrapper)); + } } - @ApiOperation(value = "条件查询标准涉及国内标准符合性清单") - @GetMapping("/foreignStandard") - public ResponseMessage> selectForeignStandard(SarInterpretationForeignStandardEO eo) throws Exception { - IPage iPage=new Page<>(eo.getCurrent(), eo.getSize()); - QueryWrapper queryWrapper=new QueryWrapper<>(); - if(eo.getStandardId()!=null)queryWrapper.like("standard_num",eo.getStandardId()); - return Result.success(iSarInterpretationForeignStandardService.page(iPage,queryWrapper)); - } - - - } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/controller/SarStandardComplianceProductAssessController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceProductAssessController.java similarity index 62% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/controller/SarStandardComplianceProductAssessController.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceProductAssessController.java index 1b6f2dd0..6ed247de 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/controller/SarStandardComplianceProductAssessController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceProductAssessController.java @@ -1,8 +1,8 @@ -package com.adc.da.slrs.sarStandardComplianceProductAssess.controller; +package com.adc.da.slrs.sarStandardComplianceAssessResult.controller; import org.springframework.web.bind.annotation.RequestMapping; -import com.adc.da.slrs.sarStandardComplianceProductAssess.entity.SarStandardComplianceProductAssess; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarStandardComplianceProductAssess; import io.swagger.annotations.Api; import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; @@ -13,11 +13,11 @@ import com.adc.da.base.web.BaseController; *

* * @author zyl -* @since 2021-06-16 +* @since 2021-06-18 */ @RestController @Api(description = "|SarStandardComplianceProductAssess|") -@RequestMapping("/sarStandardComplianceProductAssess/sar-standard-compliance-product-assess") +@RequestMapping("/sarStandardComplianceAssessResult/sar-standard-compliance-product-assess") public class SarStandardComplianceProductAssessController extends BaseController { } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/dao/SarInterpretationForeignStandardDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarInterpretationForeignStandardDao.java similarity index 55% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/dao/SarInterpretationForeignStandardDao.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarInterpretationForeignStandardDao.java index bcc60031..698cfcaa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/dao/SarInterpretationForeignStandardDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarInterpretationForeignStandardDao.java @@ -1,6 +1,6 @@ -package com.adc.da.slrs.sarInterpretationStandard.dao; +package com.adc.da.slrs.sarStandardComplianceAssessResult.dao; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationForeignStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationForeignStandard; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; *

* * @author zyl - * @since 2021-06-16 + * @since 2021-06-18 */ public interface SarInterpretationForeignStandardDao extends BaseMapper { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/dao/SarInterpretationNationalStandardDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarInterpretationNationalStandardDao.java similarity index 55% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/dao/SarInterpretationNationalStandardDao.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarInterpretationNationalStandardDao.java index 796a4e63..b01295a6 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/dao/SarInterpretationNationalStandardDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarInterpretationNationalStandardDao.java @@ -1,6 +1,6 @@ -package com.adc.da.slrs.sarInterpretationStandard.dao; +package com.adc.da.slrs.sarStandardComplianceAssessResult.dao; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationNationalStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationNationalStandard; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; *

* * @author zyl - * @since 2021-06-16 + * @since 2021-06-18 */ public interface SarInterpretationNationalStandardDao extends BaseMapper { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceAssessResultDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceAssessResultDao.java deleted file mode 100644 index 8028b6be..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceAssessResultDao.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.adc.da.slrs.sarStandardComplianceAssessResult.dao; - -import org.apache.ibatis.annotations.Mapper; -import org.springframework.stereotype.Repository; - -@Repository -@Mapper -public interface SarStandardComplianceAssessResultDao { - - - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/dao/SarStandardComplianceProductAssessDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceProductAssessDao.java similarity index 55% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/dao/SarStandardComplianceProductAssessDao.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceProductAssessDao.java index d1781c87..93e7b580 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/dao/SarStandardComplianceProductAssessDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/dao/SarStandardComplianceProductAssessDao.java @@ -1,6 +1,6 @@ -package com.adc.da.slrs.sarStandardComplianceProductAssess.dao; +package com.adc.da.slrs.sarStandardComplianceAssessResult.dao; -import com.adc.da.slrs.sarStandardComplianceProductAssess.entity.SarStandardComplianceProductAssess; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarStandardComplianceProductAssess; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; *

* * @author zyl - * @since 2021-06-16 + * @since 2021-06-18 */ public interface SarStandardComplianceProductAssessDao extends BaseMapper { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/InterpretationEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/InterpretationEO.java new file mode 100644 index 00000000..2b92fb9a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/InterpretationEO.java @@ -0,0 +1,39 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +@Data +@ApiModel("条件查询") +public class InterpretationEO { + +// @ApiModelProperty(value = "'审核编号'") +// private String interpretation_id; + + + @ApiModelProperty(value = "标准ID") + @TableField("STAND_ID") + private String standId; + + @ApiModelProperty(value = "评估时间") + @TableField("INTERPRETATION_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date interpretationTime; + + @ApiModelProperty(value = "国内(1)/外(2)") + private Integer position=1; + + @ApiModelProperty("页数") + private Integer current=1; + + @ApiModelProperty("页内数量") + private Integer size=20; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarBaseStandardInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarBaseStandardInfo.java new file mode 100644 index 00000000..90cc88c3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarBaseStandardInfo.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +public class SarBaseStandardInfo { + private String standard_id; + private String standard_number; + private String standard_name; + private String standard_type; + private LocalDateTime INTERPRETATION_TIME; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandard.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandard.java new file mode 100644 index 00000000..87930898 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandard.java @@ -0,0 +1,102 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.time.LocalDateTime; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-18 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarInterpretationForeignStandard对象", description="") +public class SarInterpretationForeignStandard extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "具体章条") + private String specificItem; + + @ApiModelProperty(value = "核心技术要求") + private String coreTechnicalRequirement; + + @ApiModelProperty(value = "相对于国行标差异点") + private String comparedDomesticStandard; + + @ApiModelProperty(value = "对应国行版(仅国外有)") + private String correspondDomesticStandard; + + private String complianceState; + + @ApiModelProperty(value = "上一版本号") + @TableField("LAST_VERSION_NUMBER") + private String lastVersionNumber; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date modifyTime; + + @ApiModelProperty(value = "标准ID") + @TableField("STAND_ID") + private String standId; + + @ApiModelProperty(value = "标准分类") + @TableField("STAND_TYPE") + private String standType; + + @ApiModelProperty(value = "标准类别") + @TableField("STAND_SORT") + private String standSort; + + @ApiModelProperty(value = "标准编号") + @TableField("STAND_NUMBER") + private String standNumber; + + @ApiModelProperty(value = "标准名称") + @TableField("STAND_NAME") + private String standName; + + + + @TableField("CREATION_USER") + private String creationUser; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "评估状态") + @TableField("INTERPRETATION_STATE") + private String interpretationState; + + @ApiModelProperty(value = "评估时间") + @TableField("INTERPRETATION_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date interpretationTime; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandardEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandardEO.java deleted file mode 100644 index b94c124d..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationForeignStandardEO.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@Data -@ApiModel("条件查询") -public class SarInterpretationForeignStandardEO { - - @ApiModelProperty(value = "'标准编号'") - private String standardId; - - @ApiModelProperty("页数") - private Integer current=1; - - @ApiModelProperty("页内数量") - private Integer size=20; - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java new file mode 100644 index 00000000..cf78fea2 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandard.java @@ -0,0 +1,90 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.time.LocalDateTime; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-18 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarInterpretationNationalStandard对象", description="") +public class SarInterpretationNationalStandard extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "具体章条") + private String specificItem; + + @ApiModelProperty(value = "核心技术要求") + private String coreTechnicalRequirement; + + @ApiModelProperty(value = "相对于上一版本变化点") + private String comparedWithPrevious; + + @ApiModelProperty(value = "合规性分析") + private String complianceState; + + @ApiModelProperty(value = "上一版本号") + @TableField("LAST_VERSION_NUMBER") + private String lastVersionNumber; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + private Date creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + private Date modifyTime; + + @ApiModelProperty(value = "标准ID") + @TableField("STAND_ID") + private String standId; + + @ApiModelProperty(value = "标准分类") + @TableField("STAND_TYPE") + private String standType; + + @ApiModelProperty(value = "标准类别") + @TableField("STAND_SORT") + private String standSort; + + @ApiModelProperty(value = "标准编号") + @TableField("STAND_NUMBER") + private String standNumber; + + @ApiModelProperty(value = "标准名称") + @TableField("STAND_NAME") + private String standName; + + @TableField("CREATION_USER") + private String creationUser; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "评估状态") + @TableField("INTERPRETATION_STATE") + private String interpretationState; + + @ApiModelProperty(value = "评估时间") + @TableField("INTERPRETATION_TIME") + private Date interpretationTime; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandardEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandardEO.java deleted file mode 100644 index f50ca55c..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarInterpretationNationalStandardEO.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -@Data -@ApiModel("条件查询") -public class SarInterpretationNationalStandardEO { - - @ApiModelProperty(value = "'标准编号'") - private String standardId; - - @ApiModelProperty("页数") - private Integer current=1; - - @ApiModelProperty("页内数量") - private Integer size=20; - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssess.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssess.java new file mode 100644 index 00000000..bfaa990b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssess.java @@ -0,0 +1,112 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.time.LocalDateTime; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-18 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarStandardComplianceProductAssess对象", description="") +public class SarStandardComplianceProductAssess extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "'产品线'") + private String productLineId; + + @ApiModelProperty(value = "'项目id'") + private String productId; + + @ApiModelProperty(value = "'项目名称'") + private String productName; + + @ApiModelProperty(value = "标准ID") + @TableField("STAND_ID") + private String standId; + + @ApiModelProperty(value = "标准编号") + @TableField("STAND_NUMBER") + private String standNumber; + + @ApiModelProperty(value = "'标准名称'") + @TableField("STAND_NAME") + private String standName; + + @ApiModelProperty(value = "'标准章条'") + private String standardItem; + + @ApiModelProperty(value = "标准类型") + @TableField("STAND_TYPE") + private String standType; + + @ApiModelProperty(value = "标准主要内容") + private String standardInfo; + + @ApiModelProperty(value = "1是在产,0是在研") + private Integer productType; + + @ApiModelProperty(value = "在研产品实施时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date researchImplementationTime; + + @ApiModelProperty(value = "在研产品合规信息") + private String researchCompliance; + + @ApiModelProperty(value = "在研产品不合规项目") + private String researchNonCompliance; + + @ApiModelProperty(value = "在研产品不合规应对措施") + private String researchCountermeasures; + + @ApiModelProperty(value = "在研产品不合规完成时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date researchCompletionTime; + + @ApiModelProperty(value = "在产产品实施时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date productionImplementationTime; + + @ApiModelProperty(value = "在产产品合规信息") + private String productionCompliance; + + @ApiModelProperty(value = "在产产品不合规应对措施") + private String productionCountermeasures; + + @ApiModelProperty(value = "在产产品不合规完成时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date productionCompletionTime; + + @ApiModelProperty(value = "审查状态") + @TableField("INTERPRETATION_STATE") + private String interpretationState; + + @ApiModelProperty(value = "审查时间") + @TableField("INTERPRETATION_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date interpretationTime; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssessEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssessEO.java index d6cfa4f6..53b782b2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssessEO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardComplianceProductAssessEO.java @@ -1,19 +1,31 @@ package com.adc.da.slrs.sarStandardComplianceAssessResult.entity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; @Data @ApiModel("条件查询") -public class SarStandardComplianceProductAssessEO { +public class SarStandardComplianceProductAssessEO{ + + @ApiModelProperty(value = "标准ID") + @TableField("STAND_ID") + private String standId; @ApiModelProperty(value = "'项目名称'") private String productName; - @ApiModelProperty(value = "'标准编号'") - private String standardId; + @ApiModelProperty(value = "评估时间") + @TableField("INTERPRETATION_TIME") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date interpretationTime; @ApiModelProperty("页数") private Integer current=1; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardsInfoEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardsInfoEO.java index 5231cca0..f4fee6c3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardsInfoEO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/entity/SarStandardsInfoEO.java @@ -17,6 +17,12 @@ public class SarStandardsInfoEO { @ApiModelProperty(value = "标准名称") private String standName; + @ApiModelProperty(value = "应用类型") + private Integer standApplicationType=1; + + @ApiModelProperty(value = "国内1,国外2") + private Integer position=1; + @ApiModelProperty("页数") private Integer current=1; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/ISarInterpretationForeignStandardService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarInterpretationForeignStandardService.java similarity index 55% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/ISarInterpretationForeignStandardService.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarInterpretationForeignStandardService.java index d6013d4e..9ba49575 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/ISarInterpretationForeignStandardService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarInterpretationForeignStandardService.java @@ -1,6 +1,6 @@ -package com.adc.da.slrs.sarInterpretationStandard.service; +package com.adc.da.slrs.sarStandardComplianceAssessResult.service; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationForeignStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationForeignStandard; import com.baomidou.mybatisplus.extension.service.IService; /** @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.extension.service.IService; *

* * @author zyl - * @since 2021-06-16 + * @since 2021-06-18 */ public interface ISarInterpretationForeignStandardService extends IService { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/ISarInterpretationNationalStandardService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarInterpretationNationalStandardService.java similarity index 55% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/ISarInterpretationNationalStandardService.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarInterpretationNationalStandardService.java index d508a1a4..e51c76f4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInterpretationStandard/service/ISarInterpretationNationalStandardService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarInterpretationNationalStandardService.java @@ -1,6 +1,6 @@ -package com.adc.da.slrs.sarInterpretationStandard.service; +package com.adc.da.slrs.sarStandardComplianceAssessResult.service; -import com.adc.da.slrs.sarInterpretationStandard.entity.SarInterpretationNationalStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationNationalStandard; import com.baomidou.mybatisplus.extension.service.IService; /** @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.extension.service.IService; *

* * @author zyl - * @since 2021-06-16 + * @since 2021-06-18 */ public interface ISarInterpretationNationalStandardService extends IService { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceAssessResult.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceAssessResult.java deleted file mode 100644 index e8ff1cc7..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceAssessResult.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.adc.da.slrs.sarStandardComplianceAssessResult.service; - -import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; -import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfoEOPage; -import com.baomidou.mybatisplus.core.metadata.IPage; - -public interface ISarStandardComplianceAssessResult { - - IPage getSarStandardsInfo(); - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/ISarStandardComplianceProductAssessService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceProductAssessService.java similarity index 55% rename from adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/ISarStandardComplianceProductAssessService.java rename to adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceProductAssessService.java index 431fddce..f813e993 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/ISarStandardComplianceProductAssessService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/ISarStandardComplianceProductAssessService.java @@ -1,6 +1,6 @@ -package com.adc.da.slrs.sarStandardComplianceProductAssess.service; +package com.adc.da.slrs.sarStandardComplianceAssessResult.service; -import com.adc.da.slrs.sarStandardComplianceProductAssess.entity.SarStandardComplianceProductAssess; +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarStandardComplianceProductAssess; import com.baomidou.mybatisplus.extension.service.IService; /** @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.extension.service.IService; *

* * @author zyl - * @since 2021-06-16 + * @since 2021-06-18 */ public interface ISarStandardComplianceProductAssessService extends IService { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationForeignStandardServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationForeignStandardServiceImpl.java new file mode 100644 index 00000000..f78c54e0 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationForeignStandardServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.service.impl; + +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationForeignStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.dao.SarInterpretationForeignStandardDao; +import com.adc.da.slrs.sarStandardComplianceAssessResult.service.ISarInterpretationForeignStandardService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-18 + */ +@Service +public class SarInterpretationForeignStandardServiceImpl extends ServiceImpl implements ISarInterpretationForeignStandardService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java new file mode 100644 index 00000000..9713ea5b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarInterpretationNationalStandardServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.service.impl; + +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarInterpretationNationalStandard; +import com.adc.da.slrs.sarStandardComplianceAssessResult.dao.SarInterpretationNationalStandardDao; +import com.adc.da.slrs.sarStandardComplianceAssessResult.service.ISarInterpretationNationalStandardService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-18 + */ +@Service +public class SarInterpretationNationalStandardServiceImpl extends ServiceImpl implements ISarInterpretationNationalStandardService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarStandardComplianceProductAssessServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarStandardComplianceProductAssessServiceImpl.java new file mode 100644 index 00000000..ea8c9f44 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/service/impl/SarStandardComplianceProductAssessServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.sarStandardComplianceAssessResult.service.impl; + +import com.adc.da.slrs.sarStandardComplianceAssessResult.entity.SarStandardComplianceProductAssess; +import com.adc.da.slrs.sarStandardComplianceAssessResult.dao.SarStandardComplianceProductAssessDao; +import com.adc.da.slrs.sarStandardComplianceAssessResult.service.ISarStandardComplianceProductAssessService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-18 + */ +@Service +public class SarStandardComplianceProductAssessServiceImpl extends ServiceImpl implements ISarStandardComplianceProductAssessService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/entity/SarStandardComplianceProductAssess.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/entity/SarStandardComplianceProductAssess.java deleted file mode 100644 index 453376f2..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/entity/SarStandardComplianceProductAssess.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.adc.da.slrs.sarStandardComplianceProductAssess.entity; - -import com.adc.da.base.entity.BaseEntity; -import java.time.LocalDateTime; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *

- * - *

- * - * @author zyl - * @since 2021-06-16 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@Accessors(chain = true) -@ApiModel(value="SarStandardComplianceProductAssess对象", description="") -public class SarStandardComplianceProductAssess extends BaseEntity { - - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "'产品线'") - private String productLineId; - - @ApiModelProperty(value = "'项目id'") - private String productId; - - @ApiModelProperty(value = "'项目名称'") - private String productName; - - @ApiModelProperty(value = "'标准编号'") - private String standardId; - - @ApiModelProperty(value = "'标准章条'") - private String itemsId; - - @ApiModelProperty(value = "'标准名称'") - private String standardName; - - @ApiModelProperty(value = "1是在产,0是在研") - private Integer state; - - @ApiModelProperty(value = "实施时间") - private LocalDateTime implementation_time; - - @ApiModelProperty(value = "0是合规,1是不合规") - private Integer complianceState; - - private String compliance; - - private String nonCompliance; - - private String countermeasures; - - private LocalDateTime completionTime; - - -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/impl/SarStandardComplianceProductAssessServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/impl/SarStandardComplianceProductAssessServiceImpl.java deleted file mode 100644 index 27ea4bc1..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceProductAssess/service/impl/SarStandardComplianceProductAssessServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.adc.da.slrs.sarStandardComplianceProductAssess.service.impl; - -import com.adc.da.slrs.sarStandardComplianceProductAssess.entity.SarStandardComplianceProductAssess; -import com.adc.da.slrs.sarStandardComplianceProductAssess.dao.SarStandardComplianceProductAssessDao; -import com.adc.da.slrs.sarStandardComplianceProductAssess.service.ISarStandardComplianceProductAssessService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.springframework.stereotype.Service; - -/** - *

- * 服务实现类 - *

- * - * @author zyl - * @since 2021-06-16 - */ -@Service -public class SarStandardComplianceProductAssessServiceImpl extends ServiceImpl implements ISarStandardComplianceProductAssessService { - -} diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInterpretationStandard/SarInterpretationStandardMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInterpretationStandard/SarInterpretationStandardMapper.xml new file mode 100644 index 00000000..62001a87 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInterpretationStandard/SarInterpretationStandardMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationForeignStandardMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationForeignStandardMapper.xml new file mode 100644 index 00000000..9a345a83 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationForeignStandardMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationNationalStandardMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationNationalStandardMapper.xml new file mode 100644 index 00000000..41097a19 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarInterpretationNationalStandardMapper.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarStandardComplianceProductAssessMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarStandardComplianceProductAssessMapper.xml new file mode 100644 index 00000000..b82994ed --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardComplianceAssessResult/SarStandardComplianceProductAssessMapper.xml @@ -0,0 +1,7 @@ + + + + + + + From b85c133749f81e3a9248d7b59d2feb9ca3b1bac8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Fri, 18 Jun 2021 15:46:31 +0800 Subject: [PATCH 03/57] =?UTF-8?q?fetch:=20=E4=BF=AE=E6=94=B9=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E6=9C=AA=E7=AC=A6=E5=90=88=E9=A1=B9=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/login/rest/LoginRestController.java | 2 +- .../src/main/resources/application-dev.properties | 2 +- .../SarStandIssueControlCauseController.java | 2 +- .../entity/SarStandIssueControlCause.java | 10 +++++++++- .../impl/SarStandIssueControlCauseServiceImpl.java | 4 ++-- .../SarStandIssueControlProductController.java | 2 +- .../entity/SarStandIssueControlProduct.java | 10 ++++++++++ .../impl/SarStandIssueControlProductServiceImpl.java | 4 ++-- .../controller/SarStandUnqualifiedController.java | 4 ++-- .../entity/SarStandUnqualified.java | 8 ++++++++ .../service/impl/SarStandUnqualifiedServiceImpl.java | 4 ++-- 11 files changed, 39 insertions(+), 13 deletions(-) diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java index 48890445..589c05a9 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java @@ -37,7 +37,7 @@ import java.util.Map; @Validated @Controller @RequestMapping(value = "/api") -@Api(description = "登录接口") +@Api(tags = "登录接口") @Slf4j public class LoginRestController { diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..d89ffe27 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java index 3ad6a625..83ed19c1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/controller/SarStandIssueControlCauseController.java @@ -40,7 +40,7 @@ import java.util.List; */ @RestController @Api(tags = "|重点问题项管控模块-事业部|") -@RequestMapping("/sarStandIssueControlCause/sar-stand-issue-control-cause") +@RequestMapping("/api/sarStandIssueControlCause/sar-stand-issue-control-cause") public class SarStandIssueControlCauseController extends BaseController { private static final Logger logger = LoggerFactory.getLogger(SarStandardsInfoController.class); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java index 4e10aa51..a0b2ad88 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/entity/SarStandIssueControlCause.java @@ -10,11 +10,13 @@ import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; /** *

@@ -44,21 +46,27 @@ public class SarStandIssueControlCause extends BaseEntity { @ExcelProperty(value = "创建时间",converter = TimestampConverter.class) @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("CREATE_TIME") private Timestamp createTime; - @ExcelProperty("关闭状态") + @ExcelIgnore @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") @TableField("CLOSE_STATE") private Integer closeState; @ExcelIgnore @ApiModelProperty(value = "实际关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("ACTUAL_CLOSE_TIME") private Timestamp actualCloseTime; @ExcelProperty(value = "要求关闭时间",converter = TimestampConverter.class) @ApiModelProperty(value = "要求关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("REQUIRE_CLOSE_TIME") private Timestamp requireCloseTime; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java index 3f2b3fe6..26c30a92 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlCause/service/impl/SarStandIssueControlCauseServiceImpl.java @@ -44,7 +44,7 @@ public class SarStandIssueControlCauseServiceImpl extends ServiceImpl { private static final Logger logger = LoggerFactory.getLogger(SarStandardsInfoController.class); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java index f5591fd3..ca929c35 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/entity/SarStandIssueControlProduct.java @@ -10,11 +10,13 @@ import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; /** *

@@ -44,6 +46,8 @@ public class SarStandIssueControlProduct extends BaseEntity { @ExcelProperty(value = "创建时间",converter = TimestampConverter.class) @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("CREATE_TIME") private Timestamp createTime; @@ -54,11 +58,15 @@ public class SarStandIssueControlProduct extends BaseEntity { @ExcelIgnore @ApiModelProperty(value = "实际关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("ACTUAL_CLOSE_TIME") private Timestamp actualCloseTime; @ExcelProperty(value = "要求关闭时间",converter = TimestampConverter.class) @ApiModelProperty(value = "要求关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("REQUIRE_CLOSE_TIME") private Timestamp requireCloseTime; @@ -94,6 +102,8 @@ public class SarStandIssueControlProduct extends BaseEntity { @ExcelProperty(value = "实施时间",converter = TimestampConverter.class) @ApiModelProperty(value = "实施时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("IMPLEMENT_TIME") private Timestamp implementTime; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java index 840c6fed..55701ecc 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIssueControlProduct/service/impl/SarStandIssueControlProductServiceImpl.java @@ -42,7 +42,7 @@ public class SarStandIssueControlProductServiceImpl extends ServiceImpl { private static final Logger logger = LoggerFactory.getLogger(SarStandardsInfoController.class); @@ -86,7 +86,7 @@ public class SarStandUnqualifiedController extends BaseController> closeSarStandUnqualified(@RequestBody StandUnqualifiedListVO standUnqualifiedListVO){ + public ResponseMessage> closeSarStandUnqualified(StandUnqualifiedListVO standUnqualifiedListVO){ if(standUnqualifiedListVO==null||standUnqualifiedListVO.getIds().size()==0){ return Result.error(ResponseMessageCodeEnum.ERROR.getCode(),"未传入未符合项ID",null); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java index 69c8650f..17781e2e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java @@ -10,11 +10,13 @@ import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; /** *

@@ -44,6 +46,8 @@ public class SarStandUnqualified extends BaseEntity { @ExcelProperty(value = "创建时间",converter = TimestampConverter.class) @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("CREATE_TIME") private Timestamp createTime; @@ -54,11 +58,15 @@ public class SarStandUnqualified extends BaseEntity { @ExcelIgnore @ApiModelProperty(value = "实际关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("ACTUAL_CLOSE_TIME") private Timestamp actualCloseTime; @ExcelProperty(value = "计划关闭时间",converter = TimestampConverter.class) @ApiModelProperty(value = "计划关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("PLAN_CLOSE_TIME") private Timestamp planCloseTime; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java index eefa6161..e457319a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java @@ -44,7 +44,7 @@ public class SarStandUnqualifiedServiceImpl extends ServiceImpl Date: Mon, 21 Jun 2021 09:13:43 +0800 Subject: [PATCH 04/57] =?UTF-8?q?fetch:=E6=9C=AA=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E9=A1=B9=E6=9F=A5=E8=AF=A2bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-main/pom.xml | 1 + .../impl/SarStandUnqualifiedServiceImpl.java | 15 +++++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/adc-da-main/pom.xml b/adc-da-main/pom.xml index bb363e53..df55c43a 100644 --- a/adc-da-main/pom.xml +++ b/adc-da-main/pom.xml @@ -60,6 +60,7 @@ spring-cloud-starter-openfeign 2.2.0.RELEASE + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java index e457319a..bfa7a494 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/SarStandUnqualifiedServiceImpl.java @@ -41,11 +41,12 @@ public class SarStandUnqualifiedServiceImpl extends ServiceImpl getSarStandUnqualifiedPage(SarStandUnqualifiedPage sarStandUnqualifiedPage) { QueryWrapper sarStandUnqualifiedQueryWrapper=new QueryWrapper<>(); + if(sarStandUnqualifiedPage.getStandId()!=null){ + sarStandUnqualifiedQueryWrapper.and(wrapper->wrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandId()+"%")); +// sarStandUnqualifiedQueryWrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandId()+"%"); + } //仅查询未关闭的 sarStandUnqualifiedQueryWrapper.eq("close_state",1); - if(sarStandUnqualifiedPage.getStandId()!=null){ - sarStandUnqualifiedQueryWrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandId()+"%"); - } if(sarStandUnqualifiedPage.getProductName()!=null){ sarStandUnqualifiedQueryWrapper.like("product_name","%"+sarStandUnqualifiedPage.getProductName()+"%"); } @@ -68,11 +69,13 @@ public class SarStandUnqualifiedServiceImpl extends ServiceImpl getSarStandUnqualifiedHistoryPage(SarStandUnqualifiedPage sarStandUnqualifiedPage) { QueryWrapper sarStandUnqualifiedQueryWrapper=new QueryWrapper<>(); + if(sarStandUnqualifiedPage.getStandId()!=null){ + sarStandUnqualifiedQueryWrapper.and(wrapper->wrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandId()+"%")); +// sarStandUnqualifiedQueryWrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandId()+"%"); + } + //仅查询关闭的 sarStandUnqualifiedQueryWrapper.eq("close_state",2); - if(sarStandUnqualifiedPage.getStandId()!=null){ - sarStandUnqualifiedQueryWrapper.eq("stand_id",sarStandUnqualifiedPage.getStandId()).or().like("stand_name","%"+sarStandUnqualifiedPage.getStandId()+"%"); - } if(sarStandUnqualifiedPage.getProductName()!=null){ sarStandUnqualifiedQueryWrapper.like("product_name","%"+sarStandUnqualifiedPage.getProductName()+"%"); } From 64a3f7370294e6877b8d732613bd5c588e8695a1 Mon Sep 17 00:00:00 2001 From: zj <1376702416@qq.com> Date: Mon, 21 Jun 2021 10:25:23 +0800 Subject: [PATCH 05/57] =?UTF-8?q?add:=E7=82=B9=E5=87=BB=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SarStandProjectLibraryServiceImpl.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java index a55444bc..dd32986d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java @@ -10,6 +10,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; + /** *

* 服务实现类 @@ -21,7 +23,7 @@ import org.springframework.stereotype.Service; @Service public class SarStandProjectLibraryServiceImpl extends ServiceImpl implements ISarStandProjectLibraryService { - @Autowired + @Resource private SarStandProjectLibraryDao sarStandProjectLibraryDao; @Override From ce74d69ed3bf8c18e023690f49fa471346252997 Mon Sep 17 00:00:00 2001 From: zj <1376702416@qq.com> Date: Mon, 21 Jun 2021 10:26:25 +0800 Subject: [PATCH 06/57] =?UTF-8?q?add:=E7=82=B9=E5=87=BB=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/SarStandProjectLibraryDto.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/SarStandProjectLibraryDto.java diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/SarStandProjectLibraryDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/SarStandProjectLibraryDto.java new file mode 100644 index 00000000..6f68f8ab --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/SarStandProjectLibraryDto.java @@ -0,0 +1,38 @@ +package com.adc.da.slrs.sarStandProjectLibrary.entity; + + +import lombok.Data; + +import java.util.Date; + +/** + * //TODO + * + * @author 作者信息 + * @date 2021-06-16 + */ +@Data +public class SarStandProjectLibraryDto { + + private String projectPlatfor; + + private String projectNumber; + + private String projectName; + + private String projectClassification; + + private String projectStatus; + + private String projectGroup; + + private String projectStartDate; + + private String projectEndDate; + + private String currentNode; + + private String projectLevel; + + private String projectManager; +} From 41dd1bf6b96d20732aed2c93eeaa4a76e024d0f5 Mon Sep 17 00:00:00 2001 From: zj <1376702416@qq.com> Date: Mon, 21 Jun 2021 10:44:36 +0800 Subject: [PATCH 07/57] =?UTF-8?q?add:=E8=BD=A6=E5=9E=8B/=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarStandProjectLibraryController.java | 41 ++++--- .../ISarStandProjectLibraryService.java | 8 -- .../SarStandProjectLibraryService.java | 13 +++ .../SarStandProjectLibraryServiceImpl.java | 102 ++++++++++++++++-- 4 files changed, 138 insertions(+), 26 deletions(-) delete mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java index 1535b10a..e1669395 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarStandProjectLibrary.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibraryDto; import com.adc.da.slrs.sarStandProjectLibrary.service.impl.SarStandProjectLibraryServiceImpl; import com.adc.da.slrs.sarStandWarning.entity.EarlyWarningEO; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -16,26 +17,42 @@ import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; import javax.annotation.Resource; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** -*

- * 前端控制器 - *

-* -* @author ZhangJin -* @since 2021-06-15 -*/ + *

+ * 前端控制器 + *

+ * + * @author ZhangJin + * @since 2021-06-15 + */ @RestController @Api(description = "|SarStandProjectLibrary|") -@RequestMapping("/sarStandProjectLibrary/sar-stand-project-library") +@RequestMapping("/api/sarStandProjectLibrary") public class SarStandProjectLibraryController extends BaseController { @Resource private SarStandProjectLibraryServiceImpl sarStandProjectLibraryService; - @GetMapping("/queryMaintenanceProject") - @ApiOperation("项目查询") - public ResponseMessage queryMaintenanceProject(@RequestParam(defaultValue = "1", value = "newStandPage")int Page, @RequestParam(defaultValue = "10", value = "newStandPageSize") int PageSize) { - IPage list = sarStandProjectLibraryService.queryMaintenanceProject(Page,PageSize); + + @GetMapping("/queryProject") + @ApiOperation("车型/项目库") + public ResponseMessage queryMaintenanceProject(@RequestParam(defaultValue = "1", value = "Page")int Page, @RequestParam(defaultValue = "10", value = "PageSize") int PageSize, + SarStandProjectLibraryDto sarDto) { + IPage MaintenanceList = sarStandProjectLibraryService.queryMaintenanceProject(Page,PageSize,sarDto); + IPage notMaintenanceList = sarStandProjectLibraryService.queryNotMaintenanceProject(Page,PageSize,sarDto); + Map map = new HashMap(); + map.put("Maintenance",MaintenanceList); + map.put("notMaintenance",notMaintenanceList); + return Result.success("200",map); + } + @GetMapping("/api/queryById") + @ApiOperation("点击项目id查询") + public ResponseMessage queryByName(String id){ + List list = sarStandProjectLibraryService.queryById(id); return Result.success("200",list); } } + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java deleted file mode 100644 index b6067834..00000000 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/ISarStandProjectLibraryService.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.adc.da.slrs.sarStandProjectLibrary.service; - -import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary; -import com.baomidou.mybatisplus.core.metadata.IPage; - -public interface ISarStandProjectLibraryService { - IPage queryMaintenanceProject(int current, int pageSize); -} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java new file mode 100644 index 00000000..49eedc33 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.sarStandProjectLibrary.service; + +import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary; +import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibraryDto; +import com.baomidou.mybatisplus.core.metadata.IPage; + +import java.util.List; + +public interface SarStandProjectLibraryService { + IPage queryMaintenanceProject(int current, int pageSize, SarStandProjectLibraryDto sarDto); + IPage queryNotMaintenanceProject(int current, int pageSize, SarStandProjectLibraryDto sarDto); + List queryById(String id); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java index dd32986d..7ec7f63b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java @@ -2,15 +2,19 @@ package com.adc.da.slrs.sarStandProjectLibrary.service.impl; import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary; import com.adc.da.slrs.sarStandProjectLibrary.dao.SarStandProjectLibraryDao; -import com.adc.da.slrs.sarStandProjectLibrary.service.ISarStandProjectLibraryService; +import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibraryDto; +import com.adc.da.slrs.sarStandProjectLibrary.service.SarStandProjectLibraryService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.List; /** *

@@ -21,15 +25,101 @@ import javax.annotation.Resource; * @since 2021-06-15 */ @Service -public class SarStandProjectLibraryServiceImpl extends ServiceImpl implements ISarStandProjectLibraryService { +public class SarStandProjectLibraryServiceImpl extends ServiceImpl implements SarStandProjectLibraryService { @Resource private SarStandProjectLibraryDao sarStandProjectLibraryDao; + @Override - public IPage queryMaintenanceProject(int current,int pageSize) { - QueryWrapper wrapper= new QueryWrapper<>(); - wrapper.inSql("id", "select project_id from sar_stand_project_relation"); + public IPage queryMaintenanceProject(int current, int pageSize, SarStandProjectLibraryDto sarDto) { + SarStandProjectLibrary sar = new SarStandProjectLibrary(); + sar.setProjectPlatfor(sarDto.getProjectPlatfor()); + sar.setProjectNumber(sarDto.getProjectNumber()); + sar.setProjectName(sarDto.getProjectName()); + sar.setProjectClassification(sarDto.getProjectClassification()); + sar.setProjectStatus(sarDto.getProjectStatus()); + sar.setProjectGroup(sarDto.getProjectGroup()); + sar.setCurrentNode(sarDto.getCurrentNode()); + sar.setProjectLevel(sar.getProjectLevel()); + sar.setProjectManager(sarDto.getProjectManager()); + SimpleDateFormat formater = new SimpleDateFormat(); + formater.applyPattern("yyyy-MM-dd"); + try { + if (sarDto.getProjectStartDate()!=null){ + sar.setProjectStartDate(formater.parse(sarDto.getProjectStartDate())); + } + if (sarDto.getProjectEndDate()!=null){ + sar.setProjectEndDate(formater.parse(sarDto.getProjectEndDate())); + } + } catch (ParseException e) { + e.printStackTrace(); + } + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.inSql("id", "select project_id from sar_stand_project_relation") + .like(StringUtils.isNotEmpty(sar.getProjectPlatfor()),"project_platfor",sar.getProjectPlatfor()) + .like(StringUtils.isNotEmpty(sar.getProjectNumber()),"project_number",sar.getProjectNumber()) + .like(StringUtils.isNotEmpty(sar.getProjectName()),"project_name",sar.getProjectName()) + .like(StringUtils.isNotEmpty(sar.getProjectGroup()),"project_group",sar.getProjectGroup()) + .like(StringUtils.isNotEmpty(sar.getProjectClassification()),"project_classification",sar.getProjectClassification()) + .like(StringUtils.isNotEmpty(sar.getProjectStatus()),"project_status",sar.getProjectStatus()) + .like(StringUtils.isNotEmpty(sar.getCurrentNode()),"current_node",sar.getCurrentNode()) + .like(StringUtils.isNotEmpty(sar.getProjectLevel()),"project_level",sar.getProjectLevel()) + .like(StringUtils.isNotEmpty(sar.getProjectManager()),"project_manager",sar.getProjectManager()) + .ge(sar.getProjectStartDate()!=null,"project_start_date",sar.getProjectStartDate()) + .le(sar.getProjectEndDate()!=null,"project_end_date",sar.getProjectEndDate()); + return getSarStandProjectLibraryIPage(current, pageSize, wrapper); + } + + @Override + public IPage queryNotMaintenanceProject(int current, int pageSize, SarStandProjectLibraryDto sarDto) { + SarStandProjectLibrary sar = new SarStandProjectLibrary(); + sar.setProjectPlatfor(sarDto.getProjectPlatfor()); + sar.setProjectNumber(sarDto.getProjectNumber()); + sar.setProjectName(sarDto.getProjectName()); + sar.setProjectClassification(sarDto.getProjectClassification()); + sar.setProjectStatus(sarDto.getProjectStatus()); + sar.setProjectGroup(sarDto.getProjectGroup()); + sar.setCurrentNode(sarDto.getCurrentNode()); + sar.setProjectLevel(sar.getProjectLevel()); + sar.setProjectManager(sarDto.getProjectManager()); + SimpleDateFormat formater = new SimpleDateFormat(); + formater.applyPattern("yyyy-MM-dd"); + try { + if (sarDto.getProjectStartDate()!=null){ + sar.setProjectStartDate(formater.parse(sarDto.getProjectStartDate())); + } + if (sarDto.getProjectEndDate()!=null){ + sar.setProjectEndDate(formater.parse(sarDto.getProjectEndDate())); + } + } catch (ParseException e) { + e.printStackTrace(); + } + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.notInSql("id", "select project_id from sar_stand_project_relation") + .like(StringUtils.isNotEmpty(sar.getProjectPlatfor()),"project_platfor",sar.getProjectPlatfor()) + .like(StringUtils.isNotEmpty(sar.getProjectNumber()),"project_number",sar.getProjectNumber()) + .like(StringUtils.isNotEmpty(sar.getProjectName()),"project_name",sar.getProjectName()) + .like(StringUtils.isNotEmpty(sar.getProjectGroup()),"project_group",sar.getProjectGroup()) + .like(StringUtils.isNotEmpty(sar.getProjectClassification()),"project_classification",sar.getProjectClassification()) + .like(StringUtils.isNotEmpty(sar.getProjectStatus()),"project_status",sar.getProjectStatus()) + .like(StringUtils.isNotEmpty(sar.getCurrentNode()),"current_node",sar.getCurrentNode()) + .like(StringUtils.isNotEmpty(sar.getProjectLevel()),"project_level",sar.getProjectLevel()) + .like(StringUtils.isNotEmpty(sar.getProjectManager()),"project_manager",sar.getProjectManager()) + .ge(sar.getProjectStartDate()!=null,"project_start_date",sar.getProjectStartDate()) + .le(sar.getProjectEndDate()!=null,"project_end_date",sar.getProjectEndDate()); + return getSarStandProjectLibraryIPage(current, pageSize, wrapper); + } + + @Override + public List queryById(String id) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("id",id); + List list = sarStandProjectLibraryDao.selectList(wrapper); + return list; + } + + private IPage getSarStandProjectLibraryIPage(int current, int pageSize, QueryWrapper wrapper) { Page page = new Page<>(current, pageSize); IPage userIPage = sarStandProjectLibraryDao.selectPage(page, wrapper); System.out.println("总条数"+userIPage.getTotal()); From d5db8f8ccab0f1895606471409be0ed679ef705d Mon Sep 17 00:00:00 2001 From: zj <1376702416@qq.com> Date: Mon, 21 Jun 2021 10:51:54 +0800 Subject: [PATCH 08/57] =?UTF-8?q?add:=E8=BD=A6=E5=9E=8B/=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java index fae67684..ca1fb63b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java @@ -13,4 +13,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface SarStandProjectLibraryDao extends BaseMapper { + } From ab8643873385218b6f8779599eef60f6a1a412f0 Mon Sep 17 00:00:00 2001 From: zj <1376702416@qq.com> Date: Mon, 21 Jun 2021 10:52:04 +0800 Subject: [PATCH 09/57] =?UTF-8?q?add:=E8=BD=A6=E5=9E=8B/=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java | 1 - 1 file changed, 1 deletion(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java index ca1fb63b..fae67684 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/dao/SarStandProjectLibraryDao.java @@ -13,5 +13,4 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface SarStandProjectLibraryDao extends BaseMapper { - } From 3489367a24fe5c3082a470151ad4127c548132f5 Mon Sep 17 00:00:00 2001 From: super_l_test <1907643050@qq.com> Date: Mon, 21 Jun 2021 10:57:02 +0800 Subject: [PATCH 10/57] =?UTF-8?q?feat:=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/adc/da/att/controller/AttFileEOController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java b/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java index 4db17119..62595607 100644 --- a/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java +++ b/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java @@ -35,7 +35,7 @@ import java.util.regex.Pattern; @RestController @RequestMapping("/${restPath}/att/attFile") -@Api(description = "|AttFileEO|文件上传") +@Api(tags = "|AttFileEO|文件上传") public class AttFileEOController { private static final Logger logger = LoggerFactory.getLogger(AttFileEOController.class); From 487885d859a4dd2771be06729ba81c9ba58d1636 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Mon, 21 Jun 2021 17:49:39 +0800 Subject: [PATCH 11/57] =?UTF-8?q?feat=20=E4=BF=AE=E6=94=B9=E6=A0=87?= =?UTF-8?q?=E5=87=86=E5=90=88=E8=A7=84=E8=AF=84=E4=BC=B0=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SarUserStarController.java | 134 ++++++++++++++++++ .../sarPersonalCenter/dao/SarUserStarDao.java | 16 +++ .../sarPersonalCenter/entity/SarUserStar.java | 55 +++++++ .../entity/SarUserStarEO.java | 25 ++++ .../service/ISarUserStarService.java | 16 +++ .../service/impl/SarUserStarServiceImpl.java | 20 +++ ...ndardComplianceAssessResultController.java | 33 ++++- .../sarPersonalCenter/SarUserStarMapper.xml | 5 + 8 files changed, 298 insertions(+), 6 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserStarDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStar.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserStarMapper.xml diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java new file mode 100644 index 00000000..b100dd85 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java @@ -0,0 +1,134 @@ +package com.adc.da.slrs.sarPersonalCenter.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStarEO; +import com.adc.da.slrs.sarPersonalCenter.service.ISarUserStarService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +import java.util.Date; + +/** + *

+ * 前端控制器 + *

+ * + * @author zyl + * @since 2021-06-21 + */ +@RestController +@Api(description = "福田标准法规--个人中心--我的收藏") +@RequestMapping("/${restPath}/sarPersonalCenter/sar-user-star") +public class SarUserStarController extends BaseController { + + @Autowired + private ISarUserStarService iSarUserStarService; + + @ApiOperation("获取用户收藏列表") + @GetMapping("/getList") + public ResponseMessage> getUserStarList(SarUserStarEO sarUserStarEO) { + if (sarUserStarEO.getUserId() == null) { + return Result.error("userId不能为空"); + } else { + if (sarUserStarEO.getSize() == null || sarUserStarEO.getSize() <= 0) sarUserStarEO.setSize(20); + if (sarUserStarEO.getCurrent() == null || sarUserStarEO.getCurrent() <= 0) sarUserStarEO.setCurrent(1); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("user_id", sarUserStarEO.getUserId()); + if(sarUserStarEO.getType()!=null)wrapper.like("type",sarUserStarEO.getType()); + if(sarUserStarEO.getName()!=null)wrapper.like("name",sarUserStarEO.getName()); + if(sarUserStarEO.getModular()!=null)wrapper.like("modular",sarUserStarEO.getModular()); + if(sarUserStarEO.getInfo()!=null)wrapper.like("info",sarUserStarEO.getInfo()); + if(sarUserStarEO.getUrl()!=null)wrapper.like("url",sarUserStarEO.getUrl()); + IPage page = iSarUserStarService.page(new Page<>(sarUserStarEO.getCurrent(), sarUserStarEO.getSize()), wrapper); + while (page.getRecords().remove(null)) ; + return Result.success(page); + } + } + + + + @ApiOperation("批量删除用户收藏") + @PostMapping("/deleteList") + public ResponseMessage> deleteList(@RequestBody SarUserStarEO sarUserStars) { + if (sarUserStars.getUserId() == null) { + return Result.error("userId不能为空"); + } + if (!(sarUserStars.getSarUserStars() == null || sarUserStars.getSarUserStars().size() <= 0)) { + for (SarUserStar sarUserStar : sarUserStars.getSarUserStars()) { + if (sarUserStar.getId() != null) { + QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); + sarUserStarQueryWrapper.eq("id", sarUserStar.getId()); + sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); + iSarUserStarService.remove(sarUserStarQueryWrapper); + } + } + } + return getUserStarList(sarUserStars); + } + + @ApiOperation("删除用户收藏") + @PostMapping("/delete") + public ResponseMessage deleteById(@RequestBody SarUserStarEO sarUserStars) { + if (sarUserStars.getUserId() == null) { + return Result.error("userId不能为空"); + } + if (!(sarUserStars.getId() == null && sarUserStars.getUrl() == null)) { + return Result.error("url或id不能为空"); + } + QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); + if(sarUserStars.getId()!=null)sarUserStarQueryWrapper.eq("id", sarUserStars.getId()); + else sarUserStarQueryWrapper.eq("url", sarUserStars.getUrl()); + sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); + iSarUserStarService.remove(sarUserStarQueryWrapper); + + return Result.success(iSarUserStarService.remove(sarUserStarQueryWrapper)); + } + + @ApiOperation("添加用户收藏") + @PostMapping("/addStar") + public ResponseMessage addStar(@RequestBody SarUserStar sarUserStar) { + if (sarUserStar.getUserId() == null) { + return Result.error("userId不能为空"); + } + if (sarUserStar.getUrl() == null + && sarUserStar.getModular() == null + && sarUserStar.getName() == null + && sarUserStar.getType() == null) { + return Result.error("数据有误"); + } + + sarUserStar.setId(null); + sarUserStar.setCreateTime(new Date()); + + return Result.success(iSarUserStarService.save(sarUserStar)); + } + + @ApiOperation("获取当前用户是否收藏该页面") + @GetMapping("/isStar") + public ResponseMessage isStar(String userId, String url) { + if (userId == null) { + return Result.error("userId不能为空"); + } + if (url == null) { + return Result.error("url不能为空"); + } + + QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); + sarUserStarQueryWrapper.eq("user_id", userId); + sarUserStarQueryWrapper.eq("url", url); + int count = iSarUserStarService.count(sarUserStarQueryWrapper); + + return Result.success(count > 0); + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserStarDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserStarDao.java new file mode 100644 index 00000000..ede9070d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserStarDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarPersonalCenter.dao; + +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zyl + * @since 2021-06-21 + */ +public interface SarUserStarDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStar.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStar.java new file mode 100644 index 00000000..f49bc35e --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStar.java @@ -0,0 +1,55 @@ +package com.adc.da.slrs.sarPersonalCenter.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.time.LocalDateTime; +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-21 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@ApiModel(value="SarUserStar对象", description="") +public class SarUserStar extends BaseEntity { + + @ApiModelProperty("id") + private String id; + + @ApiModelProperty(value = "收藏名") + private String name; + + @ApiModelProperty(value = "收藏类型") + private String type; + + @ApiModelProperty(value = "收藏具体信息") + private String info; + + @ApiModelProperty(value = "用户id") + private String userId; + + @ApiModelProperty(value = "所属模块") + private String modular; + + @ApiModelProperty(value = "创建时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "该收藏对应的路由") + private String url; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java new file mode 100644 index 00000000..262eeb53 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java @@ -0,0 +1,25 @@ +package com.adc.da.slrs.sarPersonalCenter.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +@Data +@Accessors(chain = true) +@ApiModel(value="SarUserStar批量操作对象", description="") +public class SarUserStarEO extends SarUserStar{ + + @ApiModelProperty("当页数量") + private Integer size; + + @ApiModelProperty("当前页数") + private Integer current; + + @ApiModelProperty("操作信息") + private List sarUserStars; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java new file mode 100644 index 00000000..93922b33 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarPersonalCenter.service; + +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author zyl + * @since 2021-06-21 + */ +public interface ISarUserStarService extends IService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java new file mode 100644 index 00000000..a12d0cde --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.sarPersonalCenter.service.impl; + +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; +import com.adc.da.slrs.sarPersonalCenter.dao.SarUserStarDao; +import com.adc.da.slrs.sarPersonalCenter.service.ISarUserStarService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-21 + */ +@Service +public class SarUserStarServiceImpl extends ServiceImpl implements ISarUserStarService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java index 43ba106f..b637499d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarStandardComplianceAssessResultController.java @@ -61,7 +61,11 @@ public class SarStandardComplianceAssessResultController { if (eo.getStandNumber() != null && !eo.getStandNumber().trim().equals("")) { queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); } - return Result.success(iSarStandardComplianceProductAssessService.page(iPage,queryWrapper)); + IPage page = iSarStandardComplianceProductAssessService.page(iPage, queryWrapper); + + while(page.getRecords().remove(null)); + + return Result.success(page); }else { if(eo.getPosition()==1){ QueryWrapper queryWrapper = new QueryWrapper<>(); @@ -73,7 +77,10 @@ public class SarStandardComplianceAssessResultController { if (eo.getStandNumber() != null && !eo.getStandNumber().trim().equals("")) { queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); } - return Result.success(iSarInterpretationNationalStandardService.page(iPage,queryWrapper)); + IPage page = iSarInterpretationNationalStandardService.page(iPage, queryWrapper); + while(page.getRecords().remove(null)); + + return Result.success(page); }else{ QueryWrapper queryWrapper = new QueryWrapper<>(); IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); @@ -84,7 +91,10 @@ public class SarStandardComplianceAssessResultController { if (eo.getStandNumber() != null && !eo.getStandNumber().trim().equals("")) { queryWrapper.like("STAND_NUMBER",eo.getStandNumber().trim()); } - return Result.success(iSarInterpretationForeignStandardService.page(iPage,queryWrapper)); + + IPage page = iSarInterpretationForeignStandardService.page(iPage, queryWrapper); + while(page.getRecords().remove(null)); + return Result.success(page); } } } @@ -96,7 +106,12 @@ public class SarStandardComplianceAssessResultController { if (eo.getProductName() != null) queryWrapper.like("product_name", eo.getProductName()); if (eo.getStandId() != null) queryWrapper.like("STAND_ID", eo.getStandId()); if (eo.getInterpretationTime() != null) queryWrapper.eq("INTERPRETATION_TIME", eo.getInterpretationTime()); - return Result.success(iSarStandardComplianceProductAssessService.page(iPage, queryWrapper)); + + IPage page = iSarStandardComplianceProductAssessService.page(iPage, queryWrapper); + + while(page.getRecords().remove(null)); + + return Result.success(page); } @ApiOperation(value = "条件查询技术审核符合性清单") @@ -107,13 +122,19 @@ public class SarStandardComplianceAssessResultController { QueryWrapper queryWrapper = new QueryWrapper<>(); if (eo.getInterpretationTime() != null) queryWrapper.eq("INTERPRETATION_TIME", eo.getInterpretationTime()); if(eo.getStandId()!=null)queryWrapper.eq("STAND_ID",eo.getStandId()); - return Result.success(iSarInterpretationNationalStandardService.page(iPage, queryWrapper)); + + IPage page = iSarInterpretationNationalStandardService.page(iPage, queryWrapper); + while(page.getRecords().remove(null)); + return Result.success(page); } else { IPage iPage = new Page<>(eo.getCurrent(), eo.getSize()); QueryWrapper queryWrapper = new QueryWrapper<>(); if (eo.getInterpretationTime() != null) queryWrapper.eq("INTERPRETATION_TIME", eo.getInterpretationTime()); if(eo.getStandId()!=null)queryWrapper.eq("STAND_ID",eo.getStandId()); - return Result.success(iSarInterpretationForeignStandardService.page(iPage, queryWrapper)); + IPage page = iSarInterpretationForeignStandardService.page(iPage, queryWrapper); + while(page.getRecords().remove(null)); + + return Result.success(page); } } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserStarMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserStarMapper.xml new file mode 100644 index 00000000..e8b388f4 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserStarMapper.xml @@ -0,0 +1,5 @@ + + + + + From a506f93622b0ae40cae90db05701c6b9a75a4a4b Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 22 Jun 2021 09:50:44 +0800 Subject: [PATCH 12/57] =?UTF-8?q?add=20=E6=B7=BB=E5=8A=A0=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarUserPersonalMenuController.java | 43 +++++++ .../controller/SarUserStarController.java | 79 +------------ .../dao/SarUserPersonalMenuDao.java | 16 +++ .../entity/SarUserPersonalMenu.java | 38 +++++++ .../entity/SarUserPersonalMenuEO.java | 34 ++++++ .../entity/SarUserStarEO.java | 4 +- .../service/ISarUserPersonalMenuService.java | 29 +++++ .../service/ISarUserStarService.java | 11 +- .../impl/SarUserPersonalMenuServiceImpl.java | 40 +++++++ .../service/impl/SarUserStarServiceImpl.java | 105 ++++++++++++++++++ .../SarUserPersonalMenuMapper.xml | 5 + 11 files changed, 328 insertions(+), 76 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserPersonalMenuController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserPersonalMenuDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenuEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserPersonalMenuMapper.xml diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserPersonalMenuController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserPersonalMenuController.java new file mode 100644 index 00000000..6e99f43f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserPersonalMenuController.java @@ -0,0 +1,43 @@ +package com.adc.da.slrs.sarPersonalCenter.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; +import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +/** +*

+ * 前端控制器 + *

+* +* @author zyl +* @since 2021-06-22 +*/ +@RestController +@Api(tags = "福田标准法规--个人中心--我的板块") +@RequestMapping("/${restPath}/sarPersonalCenter/sar-user-personal-menu") +public class SarUserPersonalMenuController extends BaseController { + + @Autowired + private ISarUserPersonalMenuService iSarUserPersonalMenuService; + + @ApiOperation("获取用户的板块列表") + @GetMapping("/getList") + public ResponseMessage> getList(SarUserPersonalMenuEO eo){ + return iSarUserPersonalMenuService.getUserPersonalMenu(eo); + } + + @ApiOperation("更新用户的板块列表") + @PostMapping("/update") + public ResponseMessage> update(@RequestBody SarUserPersonalMenuEO eo){ + return iSarUserPersonalMenuService.updateUserPersonalMenu(eo); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java index b100dd85..a32b041d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/controller/SarUserStarController.java @@ -26,7 +26,7 @@ import java.util.Date; * @since 2021-06-21 */ @RestController -@Api(description = "福田标准法规--个人中心--我的收藏") +@Api(tags = "福田标准法规--个人中心--我的收藏") @RequestMapping("/${restPath}/sarPersonalCenter/sar-user-star") public class SarUserStarController extends BaseController { @@ -36,98 +36,31 @@ public class SarUserStarController extends BaseController { @ApiOperation("获取用户收藏列表") @GetMapping("/getList") public ResponseMessage> getUserStarList(SarUserStarEO sarUserStarEO) { - if (sarUserStarEO.getUserId() == null) { - return Result.error("userId不能为空"); - } else { - if (sarUserStarEO.getSize() == null || sarUserStarEO.getSize() <= 0) sarUserStarEO.setSize(20); - if (sarUserStarEO.getCurrent() == null || sarUserStarEO.getCurrent() <= 0) sarUserStarEO.setCurrent(1); - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("user_id", sarUserStarEO.getUserId()); - if(sarUserStarEO.getType()!=null)wrapper.like("type",sarUserStarEO.getType()); - if(sarUserStarEO.getName()!=null)wrapper.like("name",sarUserStarEO.getName()); - if(sarUserStarEO.getModular()!=null)wrapper.like("modular",sarUserStarEO.getModular()); - if(sarUserStarEO.getInfo()!=null)wrapper.like("info",sarUserStarEO.getInfo()); - if(sarUserStarEO.getUrl()!=null)wrapper.like("url",sarUserStarEO.getUrl()); - IPage page = iSarUserStarService.page(new Page<>(sarUserStarEO.getCurrent(), sarUserStarEO.getSize()), wrapper); - while (page.getRecords().remove(null)) ; - return Result.success(page); - } + return iSarUserStarService.getUserStarList(sarUserStarEO); } - - @ApiOperation("批量删除用户收藏") @PostMapping("/deleteList") public ResponseMessage> deleteList(@RequestBody SarUserStarEO sarUserStars) { - if (sarUserStars.getUserId() == null) { - return Result.error("userId不能为空"); - } - if (!(sarUserStars.getSarUserStars() == null || sarUserStars.getSarUserStars().size() <= 0)) { - for (SarUserStar sarUserStar : sarUserStars.getSarUserStars()) { - if (sarUserStar.getId() != null) { - QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); - sarUserStarQueryWrapper.eq("id", sarUserStar.getId()); - sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); - iSarUserStarService.remove(sarUserStarQueryWrapper); - } - } - } - return getUserStarList(sarUserStars); + return iSarUserStarService.deleteList(sarUserStars); } @ApiOperation("删除用户收藏") @PostMapping("/delete") public ResponseMessage deleteById(@RequestBody SarUserStarEO sarUserStars) { - if (sarUserStars.getUserId() == null) { - return Result.error("userId不能为空"); - } - if (!(sarUserStars.getId() == null && sarUserStars.getUrl() == null)) { - return Result.error("url或id不能为空"); - } - QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); - if(sarUserStars.getId()!=null)sarUserStarQueryWrapper.eq("id", sarUserStars.getId()); - else sarUserStarQueryWrapper.eq("url", sarUserStars.getUrl()); - sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); - iSarUserStarService.remove(sarUserStarQueryWrapper); - - return Result.success(iSarUserStarService.remove(sarUserStarQueryWrapper)); + return iSarUserStarService.deleteById(sarUserStars); } @ApiOperation("添加用户收藏") @PostMapping("/addStar") public ResponseMessage addStar(@RequestBody SarUserStar sarUserStar) { - if (sarUserStar.getUserId() == null) { - return Result.error("userId不能为空"); - } - if (sarUserStar.getUrl() == null - && sarUserStar.getModular() == null - && sarUserStar.getName() == null - && sarUserStar.getType() == null) { - return Result.error("数据有误"); - } - - sarUserStar.setId(null); - sarUserStar.setCreateTime(new Date()); - - return Result.success(iSarUserStarService.save(sarUserStar)); + return iSarUserStarService.addStar(sarUserStar); } @ApiOperation("获取当前用户是否收藏该页面") @GetMapping("/isStar") public ResponseMessage isStar(String userId, String url) { - if (userId == null) { - return Result.error("userId不能为空"); - } - if (url == null) { - return Result.error("url不能为空"); - } - - QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); - sarUserStarQueryWrapper.eq("user_id", userId); - sarUserStarQueryWrapper.eq("url", url); - int count = iSarUserStarService.count(sarUserStarQueryWrapper); - - return Result.success(count > 0); + return iSarUserStarService.isStar(userId,url); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserPersonalMenuDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserPersonalMenuDao.java new file mode 100644 index 00000000..e11efb48 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/dao/SarUserPersonalMenuDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarPersonalCenter.dao; + +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +public interface SarUserPersonalMenuDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java new file mode 100644 index 00000000..514354c8 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java @@ -0,0 +1,38 @@ +package com.adc.da.slrs.sarPersonalCenter.entity; + +import com.adc.da.base.entity.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarUserPersonalMenu对象", description="") +public class SarUserPersonalMenu extends BaseEntity { + + @ApiModelProperty("id") + private String id; + + private String menuName; + + private String menuId; + + private Integer state; + + private String userId; + + private String menuUrl; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenuEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenuEO.java new file mode 100644 index 00000000..f456bc5a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenuEO.java @@ -0,0 +1,34 @@ +package com.adc.da.slrs.sarPersonalCenter.entity; + +import com.adc.da.base.entity.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarUserPersonalMenu批量操作对象", description="") +public class SarUserPersonalMenuEO extends SarUserPersonalMenu { + + @ApiModelProperty("当页数量") + private Integer size=20; + + @ApiModelProperty("当前页数") + private Integer current=1; + + @ApiModelProperty("操作信息") + private List sarUserPersonalMenus; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java index 262eeb53..a0c478bc 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserStarEO.java @@ -14,10 +14,10 @@ import java.util.List; public class SarUserStarEO extends SarUserStar{ @ApiModelProperty("当页数量") - private Integer size; + private Integer size=20; @ApiModelProperty("当前页数") - private Integer current; + private Integer current=1; @ApiModelProperty("操作信息") private List sarUserStars; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java new file mode 100644 index 00000000..35694bc8 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java @@ -0,0 +1,29 @@ +package com.adc.da.slrs.sarPersonalCenter.service; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +public interface ISarUserPersonalMenuService extends IService { + + public ResponseMessage> getUserPersonalMenu(SarUserPersonalMenuEO eo); + + public ResponseMessage> updateUserPersonalMenu(SarUserPersonalMenuEO eo); + + public void updateUserPersonalMenuForRole(List menus); + + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java index 93922b33..0ac178b2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserStarService.java @@ -1,7 +1,12 @@ package com.adc.da.slrs.sarPersonalCenter.service; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStarEO; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.web.bind.annotation.RequestBody; /** *

@@ -12,5 +17,9 @@ import com.baomidou.mybatisplus.extension.service.IService; * @since 2021-06-21 */ public interface ISarUserStarService extends IService { - + public ResponseMessage> getUserStarList(SarUserStarEO sarUserStarEO); + public ResponseMessage> deleteList(@RequestBody SarUserStarEO sarUserStars); + public ResponseMessage deleteById(@RequestBody SarUserStarEO sarUserStars); + public ResponseMessage addStar(@RequestBody SarUserStar sarUserStar); + public ResponseMessage isStar(String userId, String url); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java new file mode 100644 index 00000000..4a1320b5 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -0,0 +1,40 @@ +package com.adc.da.slrs.sarPersonalCenter.service.impl; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; +import com.adc.da.slrs.sarPersonalCenter.dao.SarUserPersonalMenuDao; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; +import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Service +public class SarUserPersonalMenuServiceImpl extends ServiceImpl implements ISarUserPersonalMenuService { + + + @Override + public ResponseMessage> getUserPersonalMenu(SarUserPersonalMenuEO eo) { + return null; + } + + @Override + public ResponseMessage> updateUserPersonalMenu(SarUserPersonalMenuEO eo) { + return null; + } + + @Override + public void updateUserPersonalMenuForRole(List menus) { + + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java index a12d0cde..cc1b7309 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java @@ -1,10 +1,20 @@ package com.adc.da.slrs.sarPersonalCenter.service.impl; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; import com.adc.da.slrs.sarPersonalCenter.dao.SarUserStarDao; +import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStarEO; import com.adc.da.slrs.sarPersonalCenter.service.ISarUserStarService; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.Date; /** *

@@ -17,4 +27,99 @@ import org.springframework.stereotype.Service; @Service public class SarUserStarServiceImpl extends ServiceImpl implements ISarUserStarService { + @Autowired + private ISarUserStarService iSarUserStarService; + + @Override + public ResponseMessage> getUserStarList(SarUserStarEO sarUserStarEO) { + if (sarUserStarEO.getUserId() == null) { + return Result.error("userId不能为空"); + } else { + if (sarUserStarEO.getSize() == null || sarUserStarEO.getSize() <= 0) sarUserStarEO.setSize(20); + if (sarUserStarEO.getCurrent() == null || sarUserStarEO.getCurrent() <= 0) sarUserStarEO.setCurrent(1); + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("user_id", sarUserStarEO.getUserId()); + if(sarUserStarEO.getType()!=null)wrapper.like("type",sarUserStarEO.getType()); + if(sarUserStarEO.getName()!=null)wrapper.like("name",sarUserStarEO.getName()); + if(sarUserStarEO.getModular()!=null)wrapper.like("modular",sarUserStarEO.getModular()); + if(sarUserStarEO.getInfo()!=null)wrapper.like("info",sarUserStarEO.getInfo()); + if(sarUserStarEO.getUrl()!=null)wrapper.like("url",sarUserStarEO.getUrl()); + IPage page = iSarUserStarService.page(new Page<>(sarUserStarEO.getCurrent(), sarUserStarEO.getSize()), wrapper); + while (page.getRecords().remove(null)) ; + return Result.success(page); + } + } + + + @Override + public ResponseMessage> deleteList(@RequestBody SarUserStarEO sarUserStars) { + if (sarUserStars.getUserId() == null) { + return Result.error("userId不能为空"); + } + if (!(sarUserStars.getSarUserStars() == null || sarUserStars.getSarUserStars().size() <= 0)) { + for (SarUserStar sarUserStar : sarUserStars.getSarUserStars()) { + if (sarUserStar.getId() != null) { + QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); + sarUserStarQueryWrapper.eq("id", sarUserStar.getId()); + sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); + iSarUserStarService.remove(sarUserStarQueryWrapper); + } + } + } + return getUserStarList(sarUserStars); + } + + @Override + public ResponseMessage deleteById(@RequestBody SarUserStarEO sarUserStars) { + if (sarUserStars.getUserId() == null) { + return Result.error("userId不能为空"); + } + if (!(sarUserStars.getId() == null && sarUserStars.getUrl() == null)) { + return Result.error("url或id不能为空"); + } + QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); + if(sarUserStars.getId()!=null)sarUserStarQueryWrapper.eq("id", sarUserStars.getId()); + else sarUserStarQueryWrapper.eq("url", sarUserStars.getUrl()); + sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); + iSarUserStarService.remove(sarUserStarQueryWrapper); + + return Result.success(iSarUserStarService.remove(sarUserStarQueryWrapper)); + } + + @Override + public ResponseMessage addStar(@RequestBody SarUserStar sarUserStar) { + if (sarUserStar.getUserId() == null) { + return Result.error("userId不能为空"); + } + if (sarUserStar.getUrl() == null + && sarUserStar.getModular() == null + && sarUserStar.getName() == null + && sarUserStar.getType() == null) { + return Result.error("数据有误"); + } + + sarUserStar.setId(null); + sarUserStar.setCreateTime(new Date()); + + return Result.success(iSarUserStarService.save(sarUserStar)); + } + + @Override + public ResponseMessage isStar(String userId, String url) { + if (userId == null) { + return Result.error("userId不能为空"); + } + if (url == null) { + return Result.error("url不能为空"); + } + + QueryWrapper sarUserStarQueryWrapper = new QueryWrapper<>(); + sarUserStarQueryWrapper.eq("user_id", userId); + sarUserStarQueryWrapper.eq("url", url); + int count = iSarUserStarService.count(sarUserStarQueryWrapper); + + return Result.success(count > 0); + } + + } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserPersonalMenuMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserPersonalMenuMapper.xml new file mode 100644 index 00000000..55241f78 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPersonalCenter/SarUserPersonalMenuMapper.xml @@ -0,0 +1,5 @@ + + + + + From 07c2fae280b2e4ca1dc3ea0f10050ec7a8c7f608 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 22 Jun 2021 09:54:31 +0800 Subject: [PATCH 13/57] =?UTF-8?q?add=20=E6=B7=BB=E5=8A=A0=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-main/src/main/resources/application-dev.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..88425a41 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,9 +3,9 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://101.36.227.22:33050/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root -spring.datasource.password = root +spring.datasource.password = 1q2w3e4r #============================================== # 应用设置 From 322e057cd4b6e6f3ebb8750a0c0985846ed910f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Tue, 22 Jun 2021 14:06:01 +0800 Subject: [PATCH 14/57] =?UTF-8?q?fetch:=E6=96=B0=E5=A2=9E=E6=9C=BA?= =?UTF-8?q?=E6=9E=84/=E4=BA=BA=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/main/generate/CodeGen.java | 4 +- .../controller/TsInstitutionController.java | 61 +++++++++ .../sarInstitution/dao/TsInstitutionDao.java | 16 +++ .../sarInstitution/entity/TsInstitution.java | 46 +++++++ .../service/ITsInstitutionService.java | 24 ++++ .../impl/TsInstitutionServiceImpl.java | 60 ++++++++ .../sarUser/controller/TsUserController.java | 43 ++++++ .../adc/da/slrs/sarUser/dao/TsUserDao.java | 16 +++ .../adc/da/slrs/sarUser/entity/TsUser.java | 129 ++++++++++++++++++ .../slrs/sarUser/service/ITsUserService.java | 33 +++++ .../service/impl/TsUserServiceImpl.java | 67 +++++++++ .../sarInstitution/TsInstitutionMapper.xml | 5 + .../mybatis/mapper/sarUser/TsUserMapper.xml | 5 + 13 files changed, 507 insertions(+), 2 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml diff --git a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java index d583f102..79244a62 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java +++ b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java @@ -22,11 +22,11 @@ public class CodeGen { // x.x.x.x:3306/xxxx --MYSQL // 192.168.10.140:1521:foton_slrs_test - private static final String DB_IP="101.36.227.22:33050/foton_slrs_test"; + private static final String DB_IP="192.168.10.47:3306/foton_slrs_test"; private static final String DB_USER="root"; - private static final String DB_PWD="1q2w3e4r"; + private static final String DB_PWD="root"; /** diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java new file mode 100644 index 00000000..a3e5731d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -0,0 +1,61 @@ +package com.adc.da.slrs.sarInstitution.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarInstitution.entity.TsInstitution; +import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.adc.da.slrs.sarUser.service.ITsUserService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +import java.util.List; + + +/** +*

+ * 前端控制器 + *

+* +* @author zyl +* @since 2021-06-22 +*/ +@RestController +@Api(tags = "|机构管理|") +@RequestMapping("/SarInstitution/institution") +public class TsInstitutionController extends BaseController { + @Autowired + private ITsInstitutionService tsInstitutionService; + @Autowired + private ITsUserService tsUserService; + + /** + * 查询所有机构 + * @return ResponseMessage> + */ + @ApiOperation("查询所有机构") + @GetMapping + public ResponseMessage> getInstitution(){ + List institutions=tsInstitutionService.getInstitution(); + return Result.success(institutions); + } + + /** + * 查询机构人员 + * @param institutionId:机构ID + * @return ResponseMessage> + */ + @ApiOperation("查询机构的人员") + @GetMapping("/user") + public ResponseMessage> getUserByInstitutionId(@RequestParam String institutionId){ + List tsUsers=tsUserService.getUserByInstitutionId(institutionId); + return Result.success(tsUsers); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java new file mode 100644 index 00000000..f1c9ed26 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarInstitution.dao; + +import com.adc.da.slrs.sarInstitution.entity.TsInstitution; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +public interface TsInstitutionDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java new file mode 100644 index 00000000..81976dcf --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java @@ -0,0 +1,46 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsInstitution对象", description="") +public class TsInstitution extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId("id") + private String id; + + @ApiModelProperty(value = "上级机构") + private String parentId; + + @ApiModelProperty(value = "机构层级") + private Integer level; + + @ApiModelProperty(value = "机构名") + private String name; + + @TableField(exist = false) + @ApiModelProperty(value = "子机构") + private List children; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java new file mode 100644 index 00000000..6c973148 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -0,0 +1,24 @@ +package com.adc.da.slrs.sarInstitution.service; + +import com.adc.da.slrs.sarInstitution.entity.TsInstitution; +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +public interface ITsInstitutionService extends IService { + + /** + * 查询所有机构 + */ + List getInstitution(); + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java new file mode 100644 index 00000000..7823aa51 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -0,0 +1,60 @@ +package com.adc.da.slrs.sarInstitution.service.impl; + + +import com.adc.da.slrs.sarInstitution.dao.TsInstitutionDao; +import com.adc.da.slrs.sarInstitution.entity.TsInstitution; +import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.adc.da.slrs.sarUser.service.ITsUserService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Service +public class TsInstitutionServiceImpl extends ServiceImpl implements ITsInstitutionService { + @Autowired + private TsInstitutionDao tsInstitutionDao; + + /** + * 查询所有机构 + */ + @Override + public List getInstitution() { + //查询第一层机构 + QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); + institutionQueryWrapper.eq("level",1); + List institutionRoot=tsInstitutionDao.selectList(institutionQueryWrapper); + for(TsInstitution tsInstitution:institutionRoot){ + tsInstitution.setChildren(recursionGetInstitution(tsInstitution)); + } + return institutionRoot; + } + + + + /** + * 递归获取子机构 + * @param tsInstitution:父机构 + * @return List + */ + private List recursionGetInstitution(TsInstitution tsInstitution){ + QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); + institutionQueryWrapper.eq("parent_id",tsInstitution.getId()); + List tsInstitutions=tsInstitutionDao.selectList(institutionQueryWrapper); + for(TsInstitution tsInstitutionNode:tsInstitutions){ + tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); + } + return tsInstitutions; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java new file mode 100644 index 00000000..a3efd94a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -0,0 +1,43 @@ +package com.adc.da.slrs.sarUser.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarUser.service.ITsUserService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import com.adc.da.slrs.sarUser.entity.TsUser; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +/** +*

+ * 前端控制器 + *

+* +* @author zxy +* @since 2021-06-22 +*/ +@RestController +@Api(tags = "|人员管理|") +@RequestMapping("/sarUser/user") +public class TsUserController extends BaseController { + @Autowired + private ITsUserService tsUserService; + + @ApiOperation("禁用/解禁人员") + @PostMapping("/disable") + public ResponseMessage disable(@Validated(TsUser.disable.class) @RequestBody TsUser tsUser){ + //判断disableFlag是否填入正确 + if((!tsUser.getDisableFlag().equals("1"))&&(!tsUser.getDisableFlag().equals("0"))){ + return Result.error("disableFlag只能是0或1"); + } + return tsUserService.disable(tsUser); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java new file mode 100644 index 00000000..d3a95719 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarUser.dao; + +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +public interface TsUserDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java new file mode 100644 index 00000000..f1e7010e --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java @@ -0,0 +1,129 @@ +package com.adc.da.slrs.sarUser.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; + +import java.sql.Timestamp; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsUser对象", description="") +public class TsUser extends BaseEntity { + + public interface disable{ + } + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键Id") + @NotNull(message = "userId不能为空",groups = {disable.class}) + @TableId(value = "USID") + private String userId; + + @ApiModelProperty(value = "帐户") + @TableField("ACCOUNT") + private String account; + + @ApiModelProperty(value = "密码") + @TableField("PASSWORD") + private String password; + + @ApiModelProperty(value = "用户姓名") + @TableField("UNAME") + private String uname; + + @ApiModelProperty(value = "用户性别(1为男,2为女)") + @TableField("SEX") + private String sex; + + @ApiModelProperty(value = "用户来源") + @TableField("USER_SOURCE") + private String userSource; + + @ApiModelProperty(value = "用户邮箱") + @TableField("EMAIL") + private String email; + + @ApiModelProperty(value = "所属部门名称") + @TableField("INSTITUTION_NAME") + private String institutionName; + + @ApiModelProperty(value = "所属部门ID") + @TableField("INSTITUTION_ID") + private String institutionId; + + @ApiModelProperty(value = "岗位名") + @TableField("POSITION_NAME") + private String positionName; + + @ApiModelProperty(value = "岗位ID") + @TableField("POSITION_ID") + private String positionId; + + @ApiModelProperty(value = "工号") + @TableField("WORK_NUM") + private String workNum; + + @ApiModelProperty(value = "备注") + @TableField("EXT_INFO") + private String extInfo; + + @TableField("OPER_USER") + private String operUser; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp modifyTime; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "是否禁用(0为未禁用,1为已禁用)") + @NotNull(message = "disableFlag不能为空",groups = {disable.class}) + @TableField("DISABLE_FLAG") + private String disableFlag; + + @ApiModelProperty(value = "是否锁定") + @TableField("UNLOCK_FLAG") + private String unlockFlag; + + @ApiModelProperty(value = "用户类型") + @TableField("USER_TYPE") + private String userType; + + @ApiModelProperty(value = "对接单点登录用户ID") + @TableField("SSO_ID") + private String ssoId; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java new file mode 100644 index 00000000..0b806011 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -0,0 +1,33 @@ +package com.adc.da.slrs.sarUser.service; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +public interface ITsUserService extends IService { + + + /** + * 通过机构ID查询人员 + * @param institutionId:机构ID + * @return List + */ + List getUserByInstitutionId(String institutionId); + + /** + * 封禁、解禁用户 + * @param tsUser:目标用户 + * @return ResponseMessage + */ + ResponseMessage disable(TsUser tsUser); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java new file mode 100644 index 00000000..4d9f56cc --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -0,0 +1,67 @@ +package com.adc.da.slrs.sarUser.service.impl; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarUser.entity.TsUser; +import com.adc.da.slrs.sarUser.dao.TsUserDao; +import com.adc.da.slrs.sarUser.service.ITsUserService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-22 + */ +@Service +public class TsUserServiceImpl extends ServiceImpl implements ITsUserService { + @Autowired + private TsUserDao tsUserDao; + + /** + * 通过机构ID查询人员 + * @param institutionId:机构ID + * @return List + */ + @Override + public List getUserByInstitutionId(String institutionId) { + QueryWrapper userQueryWrapper=new QueryWrapper<>(); + userQueryWrapper.eq("institution_id",institutionId); + return tsUserDao.selectList(userQueryWrapper); + } + + /** + * 封禁、解禁用户 + * @param tsUser:目标用户 + * @return ResponseMessage + */ + @Override + public ResponseMessage disable(TsUser tsUser) { + TsUser user=tsUserDao.selectById(tsUser.getUserId()); + if(user==null){ + return Result.error("该用户不存在"); + } + //解禁 + if(tsUser.getDisableFlag().equals("0")){ + if(user.getDisableFlag().equals("0")){ + return Result.error("该用户已被解禁,请勿重复操作"); + } + user.setDisableFlag("0"); + //封禁 + }else { + if(user.getDisableFlag().equals("1")){ + return Result.error("该用户已被封禁,请勿重复操作"); + } + user.setDisableFlag("1"); + } + tsUserDao.updateById(user); + return Result.success(); + } +} diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml new file mode 100644 index 00000000..fc9dcf3d --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml new file mode 100644 index 00000000..26150f18 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml @@ -0,0 +1,5 @@ + + + + + From 069d66f681e24ab1b23d82bf476c96bd050b742b Mon Sep 17 00:00:00 2001 From: zj <1376702416@qq.com> Date: Tue, 22 Jun 2021 14:44:59 +0800 Subject: [PATCH 15/57] =?UTF-8?q?update:=E4=BF=AE=E6=94=B9=E8=B7=AF?= =?UTF-8?q?=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarStandProjectLibraryController.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java index e1669395..4bd89a81 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java @@ -36,6 +36,15 @@ public class SarStandProjectLibraryController extends BaseController list = sarStandProjectLibraryService.queryById(id); From 5710f0fb36a4c559bda842b4a4319e78659981d4 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 22 Jun 2021 16:49:07 +0800 Subject: [PATCH 16/57] =?UTF-8?q?add=20=E6=B7=BB=E5=8A=A0=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ISarUserPersonalMenuService.java | 2 +- .../impl/SarUserPersonalMenuServiceImpl.java | 72 +++++++++++++++++-- .../service/impl/SarUserStarServiceImpl.java | 4 +- 3 files changed, 71 insertions(+), 7 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java index 35694bc8..3ec6ace4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java @@ -22,7 +22,7 @@ public interface ISarUserPersonalMenuService extends IService> updateUserPersonalMenu(SarUserPersonalMenuEO eo); - public void updateUserPersonalMenuForRole(List menus); + public void updateUserPersonalMenuForRole(List menus,String userId); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index 4a1320b5..42b8052d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -1,15 +1,18 @@ package com.adc.da.slrs.sarPersonalCenter.service.impl; import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; import com.adc.da.slrs.sarPersonalCenter.dao.SarUserPersonalMenuDao; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; -import java.util.List; +import java.util.*; /** *

@@ -25,16 +28,77 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl> getUserPersonalMenu(SarUserPersonalMenuEO eo) { - return null; + if(eo.getUserId()==null||eo.getUserId().trim().length()==0){ + return Result.error("userId不能为空"); + } + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.eq("user_id",queryWrapper); + if(eo.getMenuUrl()!=null)queryWrapper.eq("menu_url",eo.getMenuUrl()); + if(eo.getMenuName()!=null&&eo.getMenuName().trim().length()>0)queryWrapper.like("menu_name",eo.getMenuName().trim()); + if(eo.getState()!=null)queryWrapper.eq("state",eo.getState()); + + IPage iPage=new Page<>(eo.getCurrent(),eo.getSize()); + IPage page = page(iPage, queryWrapper); + while (page.getRecords().remove(null)); + return Result.success(page); } @Override public ResponseMessage> updateUserPersonalMenu(SarUserPersonalMenuEO eo) { - return null; + if(eo.getUserId()==null||eo.getUserId().trim().length()==0){ + return Result.error("userId不能为空"); + } + List menus=new ArrayList<>(); + if(eo.getSarUserPersonalMenus()!=null){ + for (SarUserPersonalMenu menu : eo.getSarUserPersonalMenus()) { + if(menu.getId()!=null&&menu.getId().trim().length()>0&&menu.getState()!=null){ + + SarUserPersonalMenu sarUserPersonalMenu=new SarUserPersonalMenu(); + sarUserPersonalMenu.setState(menu.getState()==0?0:1); + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.eq("user_id",eo.getUserId()); + queryWrapper.eq("id",menu.getId()); + + update(sarUserPersonalMenu,queryWrapper); + } + } + } + + return getUserPersonalMenu(eo); } @Override - public void updateUserPersonalMenuForRole(List menus) { + public void updateUserPersonalMenuForRole(List menuList,String userId) { + + Set ids=new HashSet<>(); + + for (SarUserPersonalMenu menu : menuList) { + if(menu.getMenuId()!=null&&menu.getMenuId().trim().length()>0){ + + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.eq("user_id",userId); + queryWrapper.eq("menu_id",menu.getMenuId()); + List menus = getBaseMapper().selectList(queryWrapper); + if (menus.size()>0) { + ids.add(menus.get(0).getId()); + continue; + } + + SarUserPersonalMenu sarUserPersonalMenu=new SarUserPersonalMenu(); + sarUserPersonalMenu.setMenuName(menu.getMenuName()); + sarUserPersonalMenu.setMenuUrl(menu.getMenuUrl()); + sarUserPersonalMenu.setUserId(menu.getUserId()); + sarUserPersonalMenu.setMenuId(menu.getMenuId()); + sarUserPersonalMenu.setState(0); + + getBaseMapper().insert(sarUserPersonalMenu); + ids.add(sarUserPersonalMenu.getId()); + } + } + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.notIn("id",ids); + queryWrapper.eq("user_id",userId); + getBaseMapper().delete(queryWrapper); } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java index cc1b7309..890d219d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserStarServiceImpl.java @@ -74,14 +74,14 @@ public class SarUserStarServiceImpl extends ServiceImpl sarUserStarQueryWrapper = new QueryWrapper<>(); if(sarUserStars.getId()!=null)sarUserStarQueryWrapper.eq("id", sarUserStars.getId()); else sarUserStarQueryWrapper.eq("url", sarUserStars.getUrl()); sarUserStarQueryWrapper.eq("user_id", sarUserStars.getUserId()); - iSarUserStarService.remove(sarUserStarQueryWrapper); + return Result.success(iSarUserStarService.remove(sarUserStarQueryWrapper)); } From faa9d4e48a01bf00c8f3865ea3fa6bd27bb67dfd Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 22 Jun 2021 17:02:12 +0800 Subject: [PATCH 17/57] =?UTF-8?q?add=20=E6=B7=BB=E5=8A=A0=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SarInterpretationForeignStandardController.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java index 2df7a33d..74662767 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardComplianceAssessResult/controller/SarInterpretationForeignStandardController.java @@ -20,4 +20,5 @@ import com.adc.da.base.web.BaseController; @RequestMapping("/sarStandardComplianceAssessResult/sar-interpretation-foreign-standard") public class SarInterpretationForeignStandardController extends BaseController { + } From 51d3edebfdfbf319fd554ebefa5f16cfe501c354 Mon Sep 17 00:00:00 2001 From: 2510220824 <2510220824@qq.com> Date: Tue, 22 Jun 2021 17:14:39 +0800 Subject: [PATCH 18/57] =?UTF-8?q?add:=E9=9B=86=E6=88=90es=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-search/pom.xml | 245 +++ .../da/search/config/ElasticsearchConfig.java | 57 + .../config/ElasticsearchProperties.java | 45 + .../controller/SearchCenterController.java | 328 ++++ .../controller/StandLawsSearchController.java | 104 ++ .../da/search/controller/TestController.java | 161 ++ .../da/search/dto/SearchBussExportDto.java | 61 + .../da/search/dto/SearchItemsExportDto.java | 74 + .../da/search/dto/SearchLawsExportDto.java | 61 + .../adc/da/search/dto/SearchMsgExportDto.java | 39 + .../da/search/dto/SearchStandExportDto.java | 61 + .../java/com/adc/da/search/entity/EsPage.java | 117 ++ .../da/search/entity/FullTextSearchEO.java | 93 ++ .../adc/da/search/entity/PartProductEO.java | 37 + .../da/search/entity/SarAdvanceSearchVO.java | 69 + .../search/entity/SarBussionessStandEO.java | 548 +++++++ .../adc/da/search/entity/SearchInfoEO.java | 192 +++ .../adc/da/search/entity/SearchListDto.java | 42 + .../da/search/entity/SeniorSearchInfoEO.java | 715 +++++++++ .../com/adc/da/search/entity/StandLawsEO.java | 926 +++++++++++ .../adc/da/search/page/PartProductEOPage.java | 358 +++++ .../search/service/ElasticsearchService.java | 270 ++++ .../search/service/SearchCenterService.java | 30 + .../service/StandLawsSearchService.java | 19 + .../impl/ElasticsearchServiceImpl.java | 748 +++++++++ .../service/impl/SearchCenterServiceImpl.java | 1396 +++++++++++++++++ .../impl/StandLawsSearchServiceImpl.java | 490 ++++++ .../da/search/util/ElasticsearchConstant.java | 17 + adc-da-slrs/pom.xml | 65 + .../java/com/adc/da/common/ConvertMqEO.java | 223 +++ .../com/adc/da/mq/dao/OtConvertEODao.java | 10 + .../adc/da/mq/service/CreateMQService.java | 77 + .../da/mq/service/CreateStandMQService.java | 32 + .../adc/da/mq/service/SendStandMQService.java | 316 ++++ .../service/ISarStandardsInfoService.java | 4 + .../impl/SarStandardsInfoServiceImpl.java | 136 ++ 36 files changed, 8166 insertions(+) create mode 100644 adc-da-search/pom.xml create mode 100644 adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/dto/SearchBussExportDto.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/dto/SearchItemsExportDto.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/dto/SearchLawsExportDto.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/dto/SearchMsgExportDto.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/dto/SearchStandExportDto.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/EsPage.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/FullTextSearchEO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/PartProductEO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/SarAdvanceSearchVO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/SarBussionessStandEO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/SearchListDto.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/StandLawsEO.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/service/ElasticsearchService.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/service/StandLawsSearchService.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/util/ElasticsearchConstant.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/mq/dao/OtConvertEODao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateStandMQService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java diff --git a/adc-da-search/pom.xml b/adc-da-search/pom.xml new file mode 100644 index 00000000..ae2ae633 --- /dev/null +++ b/adc-da-search/pom.xml @@ -0,0 +1,245 @@ + + + 4.0.0 + + + com.adc + foton-slrs-system-rest + 3.0.0 + + + adc-da-search + 1.0.0 + + jar + + + UTF-8 + UTF-8 + 1.8 + 1.7 + 1.8 + 2.6.6 + 1.4.0-RC2 + 4.3.9.RELEASE + + + + + adc + http://60.247.58.121:8182/nexus/content/groups/public + + true + + + true + + + + + + + + thirdparty + Nexus Thirdparty Repository + http://60.247.58.121:8182/nexus/content/repositories/thirdparty/ + + + + + + + + + + + com.adc + adc-da-base + 2.0.0 + + + + com.adc + adc-da-util + 2.2.41 + + + org.bouncycastle + bcprov-jdk14 + + + + + + com.adc + adc-da-sys + 3.0.0 + + + + + com.adc + adc-da-file + 2.2.0 + + + + com.adc + adc-da-druid + 2.0.0 + + + com.adc + adc-da-excel + 2.0.3 + + + org.springframework.boot + spring-boot-starter-test + test + + + + + org.springframework.boot + spring-boot-starter-amqp + + + org.elasticsearch.client + transport + 6.3.2 + + + org.elasticsearch + elasticsearch + 6.3.2 + + + + org.apache.logging.log4j + log4j-core + + + org.springframework.boot + spring-boot-starter-web + + + + + + org.springframework.boot + spring-boot-starter-jetty + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + 1.2.0 + + + + net.sourceforge.javacsv + javacsv + 2.0 + + + net.sf.opencsv + opencsv + 2.3 + + + + com.alibaba + fastjson + 1.2.9 + + + com.google.guava + guava + 19.0 + + + com.mashape.unirest + unirest-java + 1.4.9 + + + + net.sf.json-lib + json-lib + 2.4 + jdk15 + + + commons-logging + commons-logging + + + commons-beanutils + commons-beanutils + + + commons-collections + commons-collections + + + + + org.apache.httpcomponents + httpclient + 4.4.1 + + + org.apache.httpcomponents + httpcore + 4.4.1 + + + + org.aspectj + aspectjweaver + + + + + cn.afterturn + easypoi-base + 4.1.2 + + + cn.afterturn + easypoi-web + 4.1.2 + + + cn.afterturn + easypoi-annotation + 4.1.2 + + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + ${java.version} + ${java.version} + ${java.version} + ${project.build.sourceEncoding} + + + + + + diff --git a/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java new file mode 100644 index 00000000..26fec5b6 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java @@ -0,0 +1,57 @@ +package com.adc.da.search.config; + + +import org.elasticsearch.client.transport.TransportClient; +import org.elasticsearch.common.settings.Settings; +import org.elasticsearch.common.transport.TransportAddress; +import org.elasticsearch.transport.client.PreBuiltTransportClient; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + + +import java.net.InetAddress; +import java.net.UnknownHostException; + +/** + * gaoyan + * 2018-08-23 + * elasticsearch配置config + */ +@Configuration +public class ElasticsearchConfig { + + private static final Logger logger = LoggerFactory.getLogger(ElasticsearchConfig.class); + + @Autowired + private ElasticsearchProperties elasticsearchProperties; + + @Bean + public TransportClient client() throws UnknownHostException { + TransportClient client = null; + try { + Settings settings = Settings.builder() + .put("client.transport.sniff", true)//增加嗅探机制,找到ES集群 + .put("thread_pool.search.size", elasticsearchProperties.getPoolSize())//增加线程池个数,暂时设为5 + .put("cluster.name",elasticsearchProperties.getClustername()) + .build(); + client = new PreBuiltTransportClient(settings) + .addTransportAddress(new TransportAddress(InetAddress.getByName(elasticsearchProperties.getIp()),elasticsearchProperties.getPort())); + } catch (java.net.UnknownHostException e) { + logger.error(e.getMessage(),e); + } + return client; + } + + /*@After + public void tearDown() throws Exception { + if (client != null) { + client.close(); + } + + }*/ + + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java new file mode 100644 index 00000000..d0f4b9d1 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java @@ -0,0 +1,45 @@ +package com.adc.da.search.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +@Component +@ConfigurationProperties(prefix = "elasticsearch") +public class ElasticsearchProperties { + private String clustername; + private String ip; + private Integer port; + private Integer poolSize; + + public String getClustername() { + return clustername; + } + + public void setClustername(String clustername) { + this.clustername = clustername; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public Integer getPoolSize() { + return poolSize; + } + + public void setPoolSize(Integer poolSize) { + this.poolSize = poolSize; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java new file mode 100644 index 00000000..27957f6f --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java @@ -0,0 +1,328 @@ +package com.adc.da.search.controller; + +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import com.adc.da.base.web.BaseController; +import com.adc.da.person.service.PersonCollectEOService; +import com.adc.da.search.dto.*; +import com.adc.da.search.entity.SarAdvanceSearchVO; +import com.adc.da.search.entity.SeniorSearchInfoEO; +import com.adc.da.search.service.ElasticsearchService; +import com.adc.da.search.service.SearchCenterService; +import com.adc.da.util.exception.AdcDaBaseException; +import com.adc.da.util.http.PageInfo; +import com.adc.da.util.http.ResponseMessage; +import com.adc.da.util.http.Result; +import com.adc.da.util.utils.IOUtils; +import com.adc.da.util.utils.StringUtils; +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.poi.ss.usermodel.Workbook; +import org.elasticsearch.client.transport.TransportClient; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.OutputStream; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.regex.Pattern; + +import static com.adc.da.sys.common.ReadExcelName.encodeFileName; + +@RestController +@RequestMapping("/${restPath}/search/searchCenter") +@Api(description = "|SearchCenter|") +public class SearchCenterController extends BaseController> { + + @Autowired + private TransportClient client; + @Autowired + private SearchCenterService searchCenterService; + + @Autowired + private PersonCollectEOService personCollectEOService; + + @Autowired + private ElasticsearchService elasticsearchService; + + /** + * + * @param searchInfoEO + * @return + */ + @ApiOperation(value = "|SearchCenter|查询") + @PostMapping(value="/searchSarBykey") + public ResponseMessage>> searchSarBykey(SeniorSearchInfoEO searchInfoEO) throws Exception{ + List> result = new ArrayList<>(); + if (StringUtils.isAlphanumericSpace(searchInfoEO.getSelectIndex())) { + if(elasticsearchService.isIndexExist(searchInfoEO.getSelectIndex())){ + if("fulltextserch".equals(searchInfoEO.getSelectIndex()) || "fulltextserch"== searchInfoEO.getSelectIndex()){ + Pattern pattern = Pattern.compile("^[a-zA-Z]+\\s[0-9a-zA-Z\\.\\(\\(\\)\\)\\-\\s]+$"); + if (null != searchInfoEO.getSelectValue() && StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { + if (pattern.matcher(searchInfoEO.getSelectValue()).matches()) { + result = searchCenterService.searchSarBykeyAndHighLightNumber(searchInfoEO); + }else { + result = searchCenterService.searchSarBykeyAndHighLight(searchInfoEO); + } + } else { + result = searchCenterService.searchSarBykeyAndHighLight(searchInfoEO); + } + for (int i = 0; i < result.size(); i++) { + String collectId = personCollectEOService.queryCollectByUserAndId(result.get(i).get("id").toString()); + result.get(i).put("collectId", collectId); + } + return Result.success(getPageInfo(searchInfoEO.getPager(), result)); + } else { + result = searchCenterService.searchSarBykey(searchInfoEO); + // 非动态消息的需要查询为我推荐 + for (int i = 0; i < result.size(); i++) { + String collectId = personCollectEOService.queryCollectByUserAndId(result.get(i).get("id").toString()); + result.get(i).put("collectId", collectId); + result.get(i).put("content", ""); + result.get(i).put("baseSearchContent", ""); + } + return Result.success(getPageInfo(searchInfoEO.getPager(), result)); + } + } else { + return Result.error("未查到相关数据"); + } + } else { + return Result.error("数据错误"); + } + } + + @ApiOperation(value = "|SearchCenter|查询用于导出数据") + @PostMapping(value="/searchIdToImport") + public ResponseMessage searchIdToImport(SeniorSearchInfoEO searchInfoEO){ + if (StringUtils.isAlphanumericSpace(searchInfoEO.getSelectIndex())) { + if(elasticsearchService.isIndexExist(searchInfoEO.getSelectIndex())){ + String [] result = searchCenterService.searchIdToImport(searchInfoEO); + return Result.success(result); + } + else { + return Result.error("未查到相关数据"); + } + } else { + return Result.error("数据错误"); + } + } + + @ApiOperation(value = "|SearchCenter|查询") + @PostMapping(value="/selectGroupdata") + public ResponseMessage> selectGroupdata(SeniorSearchInfoEO searchInfoEO){ + Map result = new HashMap<>(); + result = searchCenterService.selectGroupdata(searchInfoEO); + return Result.success(result); + } + + @ApiOperation(value = "|SarLawsInfoEO|导出搜索中心数据") + @GetMapping("/exportSearchCenterDatas") + public void exportSearchCenterDatas(String exportDatas,String searchType, HttpServletResponse response, HttpServletRequest request) throws Exception{ + OutputStream os = null; + if ("bussstand".equals(searchType)){ + searchType = "stand"; + }else if ("enterprise".equals(searchType)){ + searchType = "bussstand"; + } + Workbook workbook = null; + try{ + response.setHeader("Content-Disposition", + "attachment; filename=" + encodeFileName( "检索结果.xlsx", request)); + response.setContentType("application/force-download"); + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + //集合 sarAdvanceSearc 的字符串 + + String sarAdvanceSearcString = subString(exportDatas,"[{","}]"); + if (StringUtils.isNotBlank(sarAdvanceSearcString)){ + sarAdvanceSearcString = sarAdvanceSearcString.replace("\\\"","\""); + } + SeniorSearchInfoEO searchInfoEO = null; + if (!"none".equals(sarAdvanceSearcString)) { + exportDatas = exportDatas.replace("[{" + sarAdvanceSearcString + "}]", ""); + JSONObject jsonObject = JSONObject.parseObject(exportDatas); + List sarAdvanceSearchVO = new ArrayList<>(Arrays.asList(sarAdvanceSearcString.split("},"))); + List advanceSearchVOList = new ArrayList<>(); + int flag = 0; + for (String sarAdvanceSearch : sarAdvanceSearchVO) { + JSONObject jsonObjectSAS = null; + if (flag == 0) { + jsonObjectSAS = JSONObject.parseObject("{" + sarAdvanceSearch + "}"); + } else { + jsonObjectSAS = JSONObject.parseObject(sarAdvanceSearch + "}"); + } + SarAdvanceSearchVO sarAdvanceSearchEO = JSONObject.toJavaObject(jsonObjectSAS, SarAdvanceSearchVO.class); + advanceSearchVOList.add(sarAdvanceSearchEO); + flag++; + } + searchInfoEO = JSONObject.toJavaObject(jsonObject, SeniorSearchInfoEO.class); + searchInfoEO.setAdvanceSearchVOList(advanceSearchVOList); + }else { + JSONObject jsonObject=JSONObject.parseObject(exportDatas); + searchInfoEO = JSONObject.toJavaObject(jsonObject, SeniorSearchInfoEO.class); + } + if ("INLAND_STAND".equals(searchType)) { + searchType = "stand"; //guonei + }else if ("INLAND_LAWS".equals(searchType)) { + searchType = "laws"; //zhengce + }else if ("BUSINESS_STAND".equals(searchType)) { + searchType = "bussstand"; //enterprise + }else if ("DYNAMIC_INFORMATION".equals(searchType)) { + searchType = "msgdyinfo"; + }else if ("items".equals(searchType)) { + searchType = "items"; + } + searchInfoEO.setSelectIndex(searchType); + searchInfoEO.setSelectValue(searchInfoEO.getKeywords()); + //存放需要导出的数据 + List> result = new ArrayList<>(); + result = searchCenterService.searchSarBykey(searchInfoEO); + if("stand".equals(searchType)){ + List dtoDatas = new ArrayList<>(); + for(int i=0;i dtoDatas = new ArrayList<>(); + for(int i=0;i dtoDatas = new ArrayList<>(); + for(int i=0;i dtoDatas = new ArrayList<>(); +// for(int i=0;i dtoDatas = new ArrayList<>(); + for(int i=0;i> { + + private static final Logger logger = LoggerFactory.getLogger(StandLawsSearchController.class); + + @Autowired + private ElasticsearchService elasticsearchService; + + /** + * + * @param + * @return + */ + @ApiOperation(value = "|BussnessStand|创建索引") + @PostMapping(value="/createBussstandIndex") + public ResponseMessage createBussstandIndex(){ + XContentBuilder mapping = null; + try { + mapping = XContentFactory.jsonBuilder() + .startObject() + .startObject("properties") //设置之定义字段 + .startObject("apply_arctic") + .field("type","text") //设置数据类型 + .endObject() + .startObject("applyarcticshow") + .field("type","text") + .endObject() + .startObject("energy_kind") + .field("type","text") //设置数据类型 + .endObject() + .startObject("id") + .field("type","text") //设置数据类型 + .endObject() + .startObject("issue_time") + .field("type","date") //设置Date类型 + // .field("format","yyyy-MM-dd HH:mm:ss") //设置Date的格式 + .endObject() + .startObject("nameshow") + .field("type","text") //设置数据类型 + .endObject() + .startObject("numbershow") + .field("type","text") //设置数据类型 + .endObject() + .startObject("put_time") + .field("type","date") //设置数据类型 + .endObject() + .startObject("replace_stand_num") + .field("type","text") //设置数据类型 + .endObject() + .startObject("replaced_stand_num") + .field("type","text") //设置数据类型 + .endObject() + .startObject("standstateshow") + .field("type","text") //设置数据类型 + .endObject() + .startObject("statecode") + .field("type","text") //设置数据类型 + .endObject() + .startObject("type") + .field("type","text") //设置数据类型 + .endObject() + .startObject("valid_flag") + .field("type","long") //设置数据类型 + .endObject() + .startObject("content") + .field("type","text") //设置数据类型 + .endObject() + .endObject() + .endObject(); + } catch (IOException e) { + logger.error(e.getMessage(),e); + } + boolean restule = elasticsearchService.createIndex("newbussstand",mapping); + if (restule) { + return Result.success("创建成功"); + } else { + return Result.error("数据错误"); + } + } + + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java new file mode 100644 index 00000000..5b3e10f4 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java @@ -0,0 +1,161 @@ +package com.adc.da.search.controller; + +import com.adc.da.search.entity.PartProductEO; +import com.adc.da.search.service.ElasticsearchService; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import org.elasticsearch.action.index.IndexResponse; +import org.elasticsearch.action.search.SearchRequestBuilder; +import org.elasticsearch.action.search.SearchResponse; +import org.elasticsearch.action.search.SearchType; +import org.elasticsearch.client.transport.TransportClient; +import org.elasticsearch.common.xcontent.XContentBuilder; +import org.elasticsearch.common.xcontent.XContentFactory; +import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.QueryBuilders; +import org.elasticsearch.index.query.RangeQueryBuilder; +import org.elasticsearch.search.SearchHit; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; + +import static com.adc.da.search.util.ElasticsearchConstant.SUCCESS_DELETED; + +@RestController +@RequestMapping("/${restPath}") +@Api(description = "|testElasticsearch|") +public class TestController { + + private static final Logger logger = LoggerFactory.getLogger(TestController.class); + + @Autowired + private TransportClient client; + @Autowired + private ElasticsearchService elasticsearchService; + + + + @PostMapping("add/book/novel") + @ResponseBody + public ResponseEntity add(@RequestParam(name ="title") String title, + @RequestParam(name ="author") String author, + @RequestParam(name ="word_count") String wordCount, + @RequestParam(name ="publish_date") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date publishDate){ + try { + XContentBuilder content =XContentFactory.jsonBuilder() + .startObject() + .field("title",title) + .field("author",author) + .field("word_count",wordCount) + .field("publish_date",publishDate.getTime()) + .endObject(); + IndexResponse result = this.client.prepareIndex("book","novel").setSource(content).get(); + return new ResponseEntity(result.getId(),HttpStatus.OK); + } + catch (IOException e) { + logger.error(e.getMessage(),e); + return new ResponseEntity(HttpStatus.INTERNAL_SERVER_ERROR); + } + } + + + + @DeleteMapping("deleteOneDucumentTest") + @ResponseBody + public ResponseEntity delete(@RequestParam(name="id") String id) { + String response = elasticsearchService.deleteDataById("book","novel",id); + if(response.equals(SUCCESS_DELETED)){ + return new ResponseEntity(response, HttpStatus.OK); + } + else { + return new ResponseEntity(response, HttpStatus.NOT_FOUND); + } + } + + + + @PostMapping("query/book/novel") + @ResponseBody + public ResponseEntity query( + @RequestParam(name="title",required = false) String title, + @RequestParam(name="author",required = false) String author, + @RequestParam(name="gt_word_count",defaultValue = "0",required = false) int gtWordCount, + @RequestParam(name="lt_word_count",required = false) Integer ltWordCount + ){ + BoolQueryBuilder boolQueryBuilder =QueryBuilders.boolQuery(); + if(author!=null){ + boolQueryBuilder.must(QueryBuilders.matchQuery("author",author)); + } + if(title!=null){ + boolQueryBuilder.must(QueryBuilders.matchQuery("title",title)); + } + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("word_count").from(gtWordCount); + + if(ltWordCount!=null && ltWordCount>0 ){ + rangeQueryBuilder.to(ltWordCount); + } + boolQueryBuilder.filter(rangeQueryBuilder); + SearchRequestBuilder searchRequestBuilder =this.client.prepareSearch("book") + .setTypes("novel") + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .setQuery(boolQueryBuilder) + .setFrom(0) + .setSize(10); + System.out.println(searchRequestBuilder); + SearchResponse response =searchRequestBuilder.get(); + List> result = new ArrayList>(); + for (SearchHit hit:response.getHits()){ + result.add(hit.getSourceAsMap()); + } + return new ResponseEntity(result,HttpStatus.OK); + } + + + + @PostMapping("addIndexSerTest") + @ResponseBody + public String searchIndexTest() { + PartProductEO productEO= new PartProductEO(); + productEO.setCertNumber("er"); + productEO.setCorpId("cid"); + productEO.setCorpModel("cmodel"); + String indexstate = elasticsearchService.addData((JSONObject) JSON.toJSON(productEO),"testone","two"); + return indexstate; + } + + @PostMapping("bulktest") + @ResponseBody + public String bulkTest() throws IOException { + List list = new ArrayList(); + for(int i=0;i<100000;i++){ + PartProductEO productEO= new PartProductEO(); + productEO.setCertNumber("er"+i); + productEO.setCorpId("cid"+i); + productEO.setCorpModel("cmodel"+i); + list.add(JSONObject.parseObject(JSONObject.toJSON(productEO).toString())); + } + String indexstate = elasticsearchService.addBulkData("ymq_index","two",list); + return indexstate; + } + + @PostMapping("justtest") + @ResponseBody + public List> justtest() throws IOException { + String [] index={"bank","book"}; + String [] type={"_doc","_type"}; + String [] fields={"account_number", "balance"}; + List> indexstate = elasticsearchService.searchListDataGroupComplex(index,type); + return indexstate; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/dto/SearchBussExportDto.java b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchBussExportDto.java new file mode 100644 index 00000000..abe7336b --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchBussExportDto.java @@ -0,0 +1,61 @@ +package com.adc.da.search.dto; + +import cn.afterturn.easypoi.excel.annotation.Excel; + +public class SearchBussExportDto { + + @Excel(name = "企业标准号", orderNum = "1",width = 12) + private String numbershow; + + @Excel(name = "企业标准名称", orderNum = "1",width = 14) + private String nameshow; + + @Excel(name = "发布日期", orderNum = "1",width = 10) + private String issueTime; + +// @Excel(name = "实施日期", orderNum = "1",width = 10) + private String putTime; + + @Excel(name = "企业标准状态", orderNum = "1",width = 14) + private String standstateshow; + + public String getNumbershow() { + return numbershow; + } + + public void setNumbershow(String numbershow) { + this.numbershow = numbershow; + } + + public String getNameshow() { + return nameshow; + } + + public void setNameshow(String nameshow) { + this.nameshow = nameshow; + } + + public String getIssueTime() { + return issueTime; + } + + public void setIssueTime(String issueTime) { + this.issueTime = issueTime; + } + + public String getPutTime() { + return putTime; + } + + public void setPutTime(String putTime) { + this.putTime = putTime; + } + + public String getStandstateshow() { + return standstateshow; + } + + public void setStandstateshow(String standstateshow) { + this.standstateshow = standstateshow; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/dto/SearchItemsExportDto.java b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchItemsExportDto.java new file mode 100644 index 00000000..533ed67d --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchItemsExportDto.java @@ -0,0 +1,74 @@ +package com.adc.da.search.dto; + +import com.adc.da.excel.annotation.Excel; + +public class SearchItemsExportDto { + + @Excel(name = "条款号",width = 16) + private String itemsNum; + + @Excel(name = "条款名称",width = 16) + private String itemsName; + + @Excel(name = "新车型实施日期",width = 16) + private String newcarPutTime; + + @Excel(name = "在产车实施日期",width = 16) + private String productPutTime; + + @Excel(name = "关联零部件",width = 16) + private String parts; + + @Excel(name = "适用车型",width = 16) + private String applyArcticShow; + + public String getItemsNum() { + return itemsNum; + } + + public void setItemsNum(String itemsNum) { + this.itemsNum = itemsNum; + } + + public String getItemsName() { + return itemsName; + } + + public void setItemsName(String itemsName) { + this.itemsName = itemsName; + } + + + + public String getParts() { + return parts; + } + + public void setParts(String parts) { + this.parts = parts; + } + + public String getNewcarPutTime() { + return newcarPutTime; + } + + public void setNewcarPutTime(String newcarPutTime) { + this.newcarPutTime = newcarPutTime; + } + + public String getProductPutTime() { + return productPutTime; + } + + public void setProductPutTime(String productPutTime) { + this.productPutTime = productPutTime; + } + + public String getApplyArcticShow() { + return applyArcticShow; + } + + public void setApplyArcticShow(String applyArcticShow) { + this.applyArcticShow = applyArcticShow; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/dto/SearchLawsExportDto.java b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchLawsExportDto.java new file mode 100644 index 00000000..c3a97ca6 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchLawsExportDto.java @@ -0,0 +1,61 @@ +package com.adc.da.search.dto; + +import cn.afterturn.easypoi.excel.annotation.Excel; + +public class SearchLawsExportDto { + + @Excel(name = "文件号", orderNum = "1",width = 10) + private String numbershow; + + @Excel(name = "文件名称", orderNum = "1",width = 10) + private String nameshow; + + @Excel(name = "发布日期", orderNum = "1",width = 10) + private String issueTime; + +// @Excel(name = "实施日期", orderNum = "1",width = 10) +// private String putTime; + + @Excel(name = "文件状态", orderNum = "1",width = 10) + private String standstateshow; + + public String getNumbershow() { + return numbershow; + } + + public void setNumbershow(String numbershow) { + this.numbershow = numbershow; + } + + public String getNameshow() { + return nameshow; + } + + public void setNameshow(String nameshow) { + this.nameshow = nameshow; + } + + public String getIssueTime() { + return issueTime; + } + + public void setIssueTime(String issueTime) { + this.issueTime = issueTime; + } + +// public String getPutTime() { +// return putTime; +// } + +// public void setPutTime(String putTime) { +// this.putTime = putTime; +// } +// + public String getStandstateshow() { + return standstateshow; + } + + public void setStandstateshow(String standstateshow) { + this.standstateshow = standstateshow; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/dto/SearchMsgExportDto.java b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchMsgExportDto.java new file mode 100644 index 00000000..bddee0c4 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchMsgExportDto.java @@ -0,0 +1,39 @@ +package com.adc.da.search.dto; + +import com.adc.da.excel.annotation.Excel; + +public class SearchMsgExportDto { + + @Excel(name = "所属模块", orderNum = "1",width = 10) + private String moduleName; + + @Excel(name = "动态标题", orderNum = "1",width = 10) + private String title; + + @Excel(name = "发布日期", orderNum = "1",width = 10) + private String issueTime; + + public String getModuleName() { + return moduleName; + } + + public void setModuleName(String moduleName) { + this.moduleName = moduleName; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getIssueTime() { + return issueTime; + } + + public void setIssueTime(String issueTime) { + this.issueTime = issueTime; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/dto/SearchStandExportDto.java b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchStandExportDto.java new file mode 100644 index 00000000..763605ea --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/dto/SearchStandExportDto.java @@ -0,0 +1,61 @@ +package com.adc.da.search.dto; + +import cn.afterturn.easypoi.excel.annotation.Excel; + +public class SearchStandExportDto { + + @Excel(name = "标准号", orderNum = "1",width = 10) + private String numbershow; + + @Excel(name = "标准名称", orderNum = "1",width = 10) + private String nameshow; + + @Excel(name = "发布日期", orderNum = "1",width = 10) + private String issueTime; + +// @Excel(name = "实施日期", orderNum = "1",width = 10) + private String putTime; + + @Excel(name = "标准状态", orderNum = "1",width = 10) + private String standstateshow; + + public String getNumbershow() { + return numbershow; + } + + public void setNumbershow(String numbershow) { + this.numbershow = numbershow; + } + + public String getNameshow() { + return nameshow; + } + + public void setNameshow(String nameshow) { + this.nameshow = nameshow; + } + + public String getIssueTime() { + return issueTime; + } + + public void setIssueTime(String issueTime) { + this.issueTime = issueTime; + } + + public String getPutTime() { + return putTime; + } + + public void setPutTime(String putTime) { + this.putTime = putTime; + } + + public String getStandstateshow() { + return standstateshow; + } + + public void setStandstateshow(String standstateshow) { + this.standstateshow = standstateshow; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/EsPage.java b/adc-da-search/src/main/java/com/adc/da/search/entity/EsPage.java new file mode 100644 index 00000000..a1a9d14b --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/EsPage.java @@ -0,0 +1,117 @@ +package com.adc.da.search.entity; + +import java.util.List; +import java.util.Map; + +public class EsPage { + // 指定的或是页面参数 + private int currentPage; // 当前页 + private int pageSize; // 每页显示多少条 + + // 查询es结果 + private int recordCount; // 总记录数 + private List> recordList; // 本页的数据列表 + + // 计算 + private int pageCount; // 总页数 + private int beginPageIndex; // 页码列表的开始索引(包含) + private int endPageIndex; // 页码列表的结束索引(包含) + + /** + * 只接受前4个必要的属性,会自动的计算出其他3个属性的值 + * + * @param currentPage + * @param pageSize + * @param recordCount + * @param recordList + */ + public EsPage(int currentPage, int pageSize, int recordCount, List> recordList) { + this.currentPage = currentPage; + this.pageSize = pageSize; + this.recordCount = recordCount; + this.recordList = recordList; + + // 计算总页码 + pageCount = (recordCount + pageSize - 1) / pageSize; + + // 计算 beginPageIndex 和 endPageIndex + // >> 总页数不多于10页,则全部显示 + if (pageCount <= 10) { + beginPageIndex = 1; + endPageIndex = pageCount; + } + // >> 总页数多于10页,则显示当前页附近的共10个页码 + else { + // 当前页附近的共10个页码(前4个 + 当前页 + 后5个) + beginPageIndex = currentPage - 4; + endPageIndex = currentPage + 5; + // 当前面的页码不足4个时,则显示前10个页码 + if (beginPageIndex < 1) { + beginPageIndex = 1; + endPageIndex = 10; + } + // 当后面的页码不足5个时,则显示后10个页码 + if (endPageIndex > pageCount) { + endPageIndex = pageCount; + beginPageIndex = pageCount - 10 + 1; + } + } + } + + + public int getCurrentPage() { + return currentPage; + } + + public void setCurrentPage(int currentPage) { + this.currentPage = currentPage; + } + + public int getPageSize() { + return pageSize; + } + + public void setPageSize(int pageSize) { + this.pageSize = pageSize; + } + + public int getRecordCount() { + return recordCount; + } + + public void setRecordCount(int recordCount) { + this.recordCount = recordCount; + } + + public List> getRecordList() { + return recordList; + } + + public void setRecordList(List> recordList) { + this.recordList = recordList; + } + + public int getPageCount() { + return pageCount; + } + + public void setPageCount(int pageCount) { + this.pageCount = pageCount; + } + + public int getBeginPageIndex() { + return beginPageIndex; + } + + public void setBeginPageIndex(int beginPageIndex) { + this.beginPageIndex = beginPageIndex; + } + + public int getEndPageIndex() { + return endPageIndex; + } + + public void setEndPageIndex(int endPageIndex) { + this.endPageIndex = endPageIndex; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/FullTextSearchEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/FullTextSearchEO.java new file mode 100644 index 00000000..e7e10925 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/FullTextSearchEO.java @@ -0,0 +1,93 @@ +package com.adc.da.search.entity; + +import com.adc.da.base.entity.BaseEntity; + +import java.util.Date; + +/** + */ +public class FullTextSearchEO extends BaseEntity { + + private String id; + private String indexType; + private String title; + private String textContent; + private Date issue_time; + private String issueTimeStr; + private Date put_time; + private String putTimeStr; + + private String itemsType; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIndexType() { + return indexType; + } + + public void setIndexType(String indexType) { + this.indexType = indexType; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getTextContent() { + return textContent; + } + + public void setTextContent(String textContent) { + this.textContent = textContent; + } + + public Date getIssue_time() { + return issue_time; + } + + public void setIssue_time(Date issue_time) { + this.issue_time = issue_time; + } + + public String getIssueTimeStr() { + return issueTimeStr; + } + + public void setIssueTimeStr(String issueTimeStr) { + this.issueTimeStr = issueTimeStr; + } + + public Date getPut_time() { + return put_time; + } + + public void setPut_time(Date put_time) { + this.put_time = put_time; + } + + public String getPutTimeStr() { + return putTimeStr; + } + + public void setPutTimeStr(String putTimeStr) { + this.putTimeStr = putTimeStr; + } + + public String getItemsType() { + return itemsType; + } + + public void setItemsType(String itemsType) { + this.itemsType = itemsType; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/PartProductEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/PartProductEO.java new file mode 100644 index 00000000..ef28e334 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/PartProductEO.java @@ -0,0 +1,37 @@ +package com.adc.da.search.entity; + +import com.adc.da.base.entity.BaseEntity; + +/** + * 功能:PART_PRODUCT PartProductEOEntity
+ * 作者:code generator
+ * 日期: 2018-08-22
+ * 版权所有:版权归北京卡达克数据技术中心所有。
+ */ +public class PartProductEO extends BaseEntity { + + private String corpId; + private String certNumber; + private String corpModel; + public void setCorpId(String corpId) { + this.corpId = corpId; + } + public void setCertNumber(String certNumber) { + this.certNumber = certNumber; + } + public void setCorpModel(String corpModel) { + this.corpModel = corpModel; + } + + public String getCorpId() { + return corpId; + } + + public String getCertNumber() { + return certNumber; + } + + public String getCorpModel() { + return corpModel; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SarAdvanceSearchVO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SarAdvanceSearchVO.java new file mode 100644 index 00000000..1d771b3c --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SarAdvanceSearchVO.java @@ -0,0 +1,69 @@ +package com.adc.da.search.entity; + +/** + * @Description: 标准法规库高级查询 + * @Author: yangxuenan + * date: 2020/12/11 9:22 + */ +public class SarAdvanceSearchVO { + + private String field; //字段 如 标准类别 + + private String value; //值 + + private String type; //查询类型 如 = != like + + private String connect; //连接符号 如 and or + + private String timeSt; + + private String timeEd; + + public String getField() { + return field; + } + + public void setField(String field) { + this.field = field; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getConnect() { + return connect; + } + + public void setConnect(String connect) { + this.connect = connect; + } + + public String getTimeSt() { + return timeSt; + } + + public void setTimeSt(String timeSt) { + this.timeSt = timeSt; + } + + public String getTimeEd() { + return timeEd; + } + + public void setTimeEd(String timeEd) { + this.timeEd = timeEd; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SarBussionessStandEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SarBussionessStandEO.java new file mode 100644 index 00000000..e5f77a38 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SarBussionessStandEO.java @@ -0,0 +1,548 @@ +package com.adc.da.search.entity; + +import com.adc.da.att.vo.AttFileVo; +import com.adc.da.base.entity.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 功能:SAR_BUSSIONESS_STAND SarBussionessStandEOEntity
+ * 作者:code generator
+ * 日期: 2018-09-03
+ * 版权所有:版权归北京卡达克数据技术中心所有。
+ */ +public class SarBussionessStandEO extends BaseEntity { + + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date modifyTime; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date creationTime; + private Integer validFlag; + private String putUser; + private String citationUser; + private String responsibleUnit; + private String standFile; + private String tags; + private String standStatus; + private String replacedStandNum; + private String replaceStandNum; + private String quoteStand; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date firstPutTime; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date putYear; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date putTime; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date issueTime; + private String energyKind; + private String applyArctic; + private String standEnName; + private String standName; + //标准编码 + private String standCode; + //分类代号 + private String classifyCode; + private String standSubclass; + private String standGenera; + private String id; + + //目录ID 非标准信息表中的字段 + private String menuId; + private String menuParentId; + private String standStatusShow; // 标准状态下拉框 --单选 + private String applyArcticShow; // 适用车型下拉框 --多选 + private String energyKindShow; // 能源种类下拉框 --多选 + private String standGeneraShow; + private String standSubclassShow; + private String responsibleUnitShow; + private List standFileList = new ArrayList(); + + private String collectId; + + //文件的下载id + private String attId; + public String getAttId() { + return attId; + } + + public void setAttId(String attId) { + this.attId = attId; + } + + //记录是否修改了替代文件号 + private int upReplaceNumFlag; + //记录是否修改了文件号 + private int upNumFlag; + + /** + * java字段名转换为原始数据库列名。如果不存在则返回null
+ *

字段列表:

+ *
  • modifyTime -> modify_time
  • + *
  • creationTime -> creation_time
  • + *
  • validFlag -> valid_flag
  • + *
  • putUser -> put_user
  • + *
  • citationUser -> citation_user
  • + *
  • responsibleUnit -> responsible_unit
  • + *
  • standFile -> stand_file
  • + *
  • tags -> tags
  • + *
  • standStatus -> stand_status
  • + *
  • replacedStandNum -> replaced_stand_num
  • + *
  • replaceStandNum -> replace_stand_num
  • + *
  • quoteStand -> quote_stand
  • + *
  • firstPutTime -> first_put_time
  • + *
  • putYear -> put_year
  • + *
  • putTime -> put_time
  • + *
  • issueTime -> issue_time
  • + *
  • energyKind -> energy_kind
  • + *
  • applyArctic -> apply_arctic
  • + *
  • standEnName -> stand_en_name
  • + *
  • standName -> stand_name
  • + *
  • standCode -> stand_code
  • + *
  • classifyCode -> classify_code
  • + *
  • standSubclass -> stand_subclass
  • + *
  • standGenera -> stand_genera
  • + *
  • id -> id
  • + */ + public static String fieldToColumn(String fieldName) { + if (fieldName == null){ return null;} + switch (fieldName) { + case "modifyTime": return "modify_time"; + case "creationTime": return "creation_time"; + case "validFlag": return "valid_flag"; + case "putUser": return "put_user"; + case "citationUser": return "citation_user"; + case "responsibleUnit": return "responsible_unit"; + case "standFile": return "stand_file"; + case "tags": return "tags"; + case "standStatus": return "stand_status"; + case "replacedStandNum": return "replaced_stand_num"; + case "replaceStandNum": return "replace_stand_num"; + case "quoteStand": return "quote_stand"; + case "firstPutTime": return "first_put_time"; + case "putYear": return "put_year"; + case "putTime": return "put_time"; + case "issueTime": return "issue_time"; + case "energyKind": return "energy_kind"; + case "applyArctic": return "apply_arctic"; + case "standEnName": return "stand_en_name"; + case "standName": return "stand_name"; + case "standCode": return "stand_code"; + case "classifyCode": return "classify_code"; + case "standSubclass": return "stand_subclass"; + case "standGenera": return "stand_genera"; + case "id": return "id"; + default: return null; + } + } + + /** + * 原始数据库列名转换为java字段名。如果不存在则返回null
    + *

    字段列表:

    + *
  • modify_time -> modifyTime
  • + *
  • creation_time -> creationTime
  • + *
  • valid_flag -> validFlag
  • + *
  • put_user -> putUser
  • + *
  • citation_user -> citationUser
  • + *
  • responsible_unit -> responsibleUnit
  • + *
  • stand_file -> standFile
  • + *
  • tags -> tags
  • + *
  • stand_status -> standStatus
  • + *
  • replaced_stand_num -> replacedStandNum
  • + *
  • replace_stand_num -> replaceStandNum
  • + *
  • quote_stand -> quoteStand
  • + *
  • first_put_time -> firstPutTime
  • + *
  • put_year -> putYear
  • + *
  • put_time -> putTime
  • + *
  • issue_time -> issueTime
  • + *
  • energy_kind -> energyKind
  • + *
  • apply_arctic -> applyArctic
  • + *
  • stand_en_name -> standEnName
  • + *
  • stand_name -> standName
  • + *
  • stand_code -> standCode
  • + *
  • classify_code -> classifyCode
  • + *
  • stand_subclass -> standSubclass
  • + *
  • stand_genera -> standGenera
  • + *
  • id -> id
  • + */ + public static String columnToField(String columnName) { + if (columnName == null){ return null;} + switch (columnName) { + case "modify_time": return "modifyTime"; + case "creation_time": return "creationTime"; + case "valid_flag": return "validFlag"; + case "put_user": return "putUser"; + case "citation_user": return "citationUser"; + case "responsible_unit": return "responsibleUnit"; + case "stand_file": return "standFile"; + case "tags": return "tags"; + case "stand_status": return "standStatus"; + case "replaced_stand_num": return "replacedStandNum"; + case "replace_stand_num": return "replaceStandNum"; + case "quote_stand": return "quoteStand"; + case "first_put_time": return "firstPutTime"; + case "put_year": return "putYear"; + case "put_time": return "putTime"; + case "issue_time": return "issueTime"; + case "energy_kind": return "energyKind"; + case "apply_arctic": return "applyArctic"; + case "stand_en_name": return "standEnName"; + case "stand_name": return "standName"; + case "stand_code": return "standCode"; + case "classify_code": return "classifyCode"; + case "stand_subclass": return "standSubclass"; + case "stand_genera": return "standGenera"; + case "id": return "id"; + default: return null; + } + } + + /** **/ + public Date getModifyTime() { + return this.modifyTime; + } + + /** **/ + public void setModifyTime(Date modifyTime) { + this.modifyTime = modifyTime; + } + + /** **/ + public Date getCreationTime() { + return this.creationTime; + } + + /** **/ + public void setCreationTime(Date creationTime) { + this.creationTime = creationTime; + } + + /** **/ + public Integer getValidFlag() { + return this.validFlag; + } + + /** **/ + public void setValidFlag(Integer validFlag) { + this.validFlag = validFlag; + } + + /** **/ + public String getPutUser() { + return this.putUser; + } + + /** **/ + public void setPutUser(String putUser) { + this.putUser = putUser; + } + + /** **/ + public String getCitationUser() { + return this.citationUser; + } + + /** **/ + public void setCitationUser(String citationUser) { + this.citationUser = citationUser; + } + + /** **/ + public String getResponsibleUnit() { + return this.responsibleUnit; + } + + /** **/ + public void setResponsibleUnit(String responsibleUnit) { + this.responsibleUnit = responsibleUnit; + } + + /** **/ + public String getStandFile() { + return this.standFile; + } + + /** **/ + public void setStandFile(String standFile) { + this.standFile = standFile; + } + + /** **/ + public String getTags() { + return this.tags; + } + + /** **/ + public void setTags(String tags) { + this.tags = tags; + } + + /** **/ + public String getStandStatus() { + return this.standStatus; + } + + /** **/ + public void setStandStatus(String standStatus) { + this.standStatus = standStatus; + } + + /** **/ + public String getReplacedStandNum() { + return this.replacedStandNum; + } + + /** **/ + public void setReplacedStandNum(String replacedStandNum) { + this.replacedStandNum = replacedStandNum; + } + + /** **/ + public String getReplaceStandNum() { + return this.replaceStandNum; + } + + /** **/ + public void setReplaceStandNum(String replaceStandNum) { + this.replaceStandNum = replaceStandNum; + } + + /** **/ + public String getQuoteStand() { + return this.quoteStand; + } + + /** **/ + public void setQuoteStand(String quoteStand) { + this.quoteStand = quoteStand; + } + + /** **/ + public Date getFirstPutTime() { + return this.firstPutTime; + } + + /** **/ + public void setFirstPutTime(Date firstPutTime) { + this.firstPutTime = firstPutTime; + } + + /** **/ + public Date getPutYear() { + return this.putYear; + } + + /** **/ + public void setPutYear(Date putYear) { + this.putYear = putYear; + } + + /** **/ + public Date getPutTime() { + return this.putTime; + } + + /** **/ + public void setPutTime(Date putTime) { + this.putTime = putTime; + } + + /** **/ + public Date getIssueTime() { + return this.issueTime; + } + + /** **/ + public void setIssueTime(Date issueTime) { + this.issueTime = issueTime; + } + + /** **/ + public String getEnergyKind() { + return this.energyKind; + } + + /** **/ + public void setEnergyKind(String energyKind) { + this.energyKind = energyKind; + } + + /** **/ + public String getApplyArctic() { + return this.applyArctic; + } + + /** **/ + public void setApplyArctic(String applyArctic) { + this.applyArctic = applyArctic; + } + + /** **/ + public String getStandEnName() { + return this.standEnName; + } + + /** **/ + public void setStandEnName(String standEnName) { + this.standEnName = standEnName; + } + + /** **/ + public String getStandName() { + return this.standName; + } + + /** **/ + public void setStandName(String standName) { + this.standName = standName; + } + + /** **/ + public String getStandCode() { + return this.standCode; + } + + /** **/ + public void setStandCode(String standCode) { + this.standCode = standCode; + } + + /** **/ + public String getClassifyCode() { + return this.classifyCode; + } + + /** **/ + public void setClassifyCode(String classifyCode) { + this.classifyCode = classifyCode; + } + + /** **/ + public String getStandSubclass() { + return this.standSubclass; + } + + /** **/ + public void setStandSubclass(String standSubclass) { + this.standSubclass = standSubclass; + } + + /** **/ + public String getStandGenera() { + return this.standGenera; + } + + /** **/ + public void setStandGenera(String standGenera) { + this.standGenera = standGenera; + } + + /** **/ + public String getId() { + return this.id; + } + + /** **/ + public void setId(String id) { + this.id = id; + } + + public String getMenuId() { + return menuId; + } + + public void setMenuId(String menuId) { + this.menuId = menuId; + } + + public String getStandStatusShow() { + return standStatusShow; + } + + public void setStandStatusShow(String standStatusShow) { + this.standStatusShow = standStatusShow; + } + + public String getApplyArcticShow() { + return applyArcticShow; + } + + public void setApplyArcticShow(String applyArcticShow) { + this.applyArcticShow = applyArcticShow; + } + + public String getEnergyKindShow() { + return energyKindShow; + } + + public void setEnergyKindShow(String energyKindShow) { + this.energyKindShow = energyKindShow; + } + + public String getStandGeneraShow() { + return standGeneraShow; + } + + public void setStandGeneraShow(String standGeneraShow) { + this.standGeneraShow = standGeneraShow; + } + + public String getStandSubclassShow() { + return standSubclassShow; + } + + public void setStandSubclassShow(String standSubclassShow) { + this.standSubclassShow = standSubclassShow; + } + + public List getStandFileList() { + return standFileList; + } + + public void setStandFileList(List standFileList) { + this.standFileList = standFileList; + } + + public String getCollectId() { + return collectId; + } + + public void setCollectId(String collectId) { + this.collectId = collectId; + } + + public String getResponsibleUnitShow() { + return responsibleUnitShow; + } + + public void setResponsibleUnitShow(String responsibleUnitShow) { + this.responsibleUnitShow = responsibleUnitShow; + } + + public String getMenuParentId() { + return menuParentId; + } + + public void setMenuParentId(String menuParentId) { + this.menuParentId = menuParentId; + } + + public int getUpReplaceNumFlag() { + return upReplaceNumFlag; + } + + public void setUpReplaceNumFlag(int upReplaceNumFlag) { + this.upReplaceNumFlag = upReplaceNumFlag; + } + + public int getUpNumFlag() { + return upNumFlag; + } + + public void setUpNumFlag(int upNumFlag) { + this.upNumFlag = upNumFlag; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java new file mode 100644 index 00000000..aad0e5e0 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java @@ -0,0 +1,192 @@ +package com.adc.da.search.entity; + +import com.adc.da.sys.common.BasePage; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.util.Date; + +/** + * 功能:SAR_STANDARDS_INFO SarStandardsInfoEOEntity
    + * 作者:code generator
    + * 日期: 2018-09-03
    + * 版权所有:版权归北京卡达克数据技术中心所有。
    + */ + +public class SearchInfoEO extends BasePage { + + //标准编号 文件号laws_number 标准编号STAND_CODE + private String standNumber; + //标准名称 文件名称laws_name standNAME + private String standName; + //标准英文名称 无 standEnName + private String standEnName; + //标准状态 文件状态laws_status standStatus + private String standState; + //标准文本 支持PDF、doc、docx文件《此项需要按照标准正文内容修改》 无 标准文本文件standFile + private String standFile; + //适用车型 适用车型 适用车型 + private String applyArctic; + //发布日期 发布日期 发布日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date issueTime; + //实施日期 实施日期 实施日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date putTime; + //起草人 无 有发布人和主要编织者putUser,citationUser + private String draftUser; + //起草单位 发布单位issueUnit 无,只有责任部门 + private String draftingUnit; + //代替标准号 代替文件号replaceLawsNum 代替标准号 + private String replaceStandNum; + //被代替标准号 无 被代替标准号 + private String replacedStandNum; + + //需求文档中还有 《文件名称》laws 中有 laws_name 标准库,企业标准库没有相关字段 + private String lawsName; + // 《动态标题》,标准库中找不到对应 都没有 + + //记录首页中的下拉选择的数据类别 + private String selectKey; + //记录首页搜索框中对应的数据 + private String selectValue; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date selectStartTime; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date selectEndTime; + + public String getStandNumber() { + return standNumber; + } + + public void setStandNumber(String standNumber) { + this.standNumber = standNumber; + } + + public String getStandName() { + return standName; + } + + public void setStandName(String standName) { + this.standName = standName; + } + + public String getStandEnName() { + return standEnName; + } + + public void setStandEnName(String standEnName) { + this.standEnName = standEnName; + } + + public String getStandState() { + return standState; + } + + public void setStandState(String standState) { + this.standState = standState; + } + + public String getStandFile() { + return standFile; + } + + public void setStandFile(String standFile) { + this.standFile = standFile; + } + + public String getApplyArctic() { + return applyArctic; + } + + public void setApplyArctic(String applyArctic) { + this.applyArctic = applyArctic; + } + + public Date getIssueTime() { + return issueTime; + } + + public void setIssueTime(Date issueTime) { + this.issueTime = issueTime; + } + + public Date getPutTime() { + return putTime; + } + + public void setPutTime(Date putTime) { + this.putTime = putTime; + } + + public String getDraftUser() { + return draftUser; + } + + public void setDraftUser(String draftUser) { + this.draftUser = draftUser; + } + + public String getDraftingUnit() { + return draftingUnit; + } + + public void setDraftingUnit(String draftingUnit) { + this.draftingUnit = draftingUnit; + } + + public String getReplaceStandNum() { + return replaceStandNum; + } + + public void setReplaceStandNum(String replaceStandNum) { + this.replaceStandNum = replaceStandNum; + } + + public String getReplacedStandNum() { + return replacedStandNum; + } + + public void setReplacedStandNum(String replacedStandNum) { + this.replacedStandNum = replacedStandNum; + } + + public String getLawsName() { + return lawsName; + } + + public void setLawsName(String lawsName) { + this.lawsName = lawsName; + } + + public String getSelectKey() { + return selectKey; + } + + public void setSelectKey(String selectKey) { + this.selectKey = selectKey; + } + + public String getSelectValue() { + return selectValue; + } + + public void setSelectValue(String selectValue) { + this.selectValue = selectValue; + } + + public Date getSelectStartTime() { + return selectStartTime; + } + + public void setSelectStartTime(Date selectStartTime) { + this.selectStartTime = selectStartTime; + } + + public Date getSelectEndTime() { + return selectEndTime; + } + + public void setSelectEndTime(Date selectEndTime) { + this.selectEndTime = selectEndTime; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SearchListDto.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SearchListDto.java new file mode 100644 index 00000000..b269022d --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SearchListDto.java @@ -0,0 +1,42 @@ +package com.adc.da.search.entity; + +import org.elasticsearch.index.query.BoolQueryBuilder; + +public class SearchListDto { + private BoolQueryBuilder boolQueryBuilder; + private int must; + private int should; + private int mustnot; + + public int getMustnot() { + return mustnot; + } + + public void setMustnot(int mustnot) { + this.mustnot = mustnot; + } + + public int getShould() { + return should; + } + + public void setShould(int should) { + this.should = should; + } + + public int getMust() { + return must; + } + + public void setMust(int must) { + this.must = must; + } + + public BoolQueryBuilder getBoolQueryBuilder() { + return boolQueryBuilder; + } + + public void setBoolQueryBuilder(BoolQueryBuilder boolQueryBuilder) { + this.boolQueryBuilder = boolQueryBuilder; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java new file mode 100644 index 00000000..eb9a62cc --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java @@ -0,0 +1,715 @@ +package com.adc.da.search.entity; + +import com.adc.da.sys.common.BasePage; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.util.Date; +import java.util.List; + +/** + * 功能:SAR_STANDARDS_INFO SarStandardsInfoEOEntity
    + * 作者:code generator
    + * 日期: 2018-09-03
    + * 版权所有:版权归北京卡达克数据技术中心所有。
    + */ + +public class SeniorSearchInfoEO extends BasePage { + private String standType; + //标准性质 + private String nature; + //国家地区 + private String country; + //标准类别 + private String standSort; + //标准,文件号 + private String numberShow; + //标准,文件名称 + private String nameShow; + //适用车型 + private String applyArctic; + //适用认证 + private String applyAuth; + //所属类别 + private String category; + //能源种类 + private String energyKind; + //采标程度 + private String adoptExtent; + //标准状态 + private String standState; + //发布日期 + private Date issueTime; + //标准大类 + private String bussBigClass; + //标准细类 + private String bussFineClass; + + //记录首页中的下拉选择的数据类别 + private String selectKey; + //记录首页搜索框中对应的数据 + private String selectValue; + //记录从哪个索引表中查数据 + private String selectIndex; + + //高级搜索 + //标准编号 + private String standNumber; + //标准年份 + private String standYear; + //标准英文名称 + private String standEnName; + //代替标准号 手动输入可以多个,用","隔开 + private String replaceStandNum; + //被代替标准号 + private String replacedStandNum; + //采用国际标准号 + private String interStandNum; + //实施日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date putTime; + //新生产车实施日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date newproductPutTime; + //在产车实施日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date productPutTime; + //新定型车实施日期 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date newcarPutTime; + //起草人 + private String draftUser; + //起草单位 + private String draftingUnit; + //关键词 + private String tags; + //内容摘要 + private String synopsis; + //责任部门 + private String responsibleUnit; + //发布单位 + private String issueUnit; + //分类代号 + private String classifyCode; + //实施年份 + private String putYear; + //首发日期 + private String firstPutTime; + //引用标准 + private String quoteStand; + //主要编制者 + private String citationUser; + //动态标题 + private String title; + //发布人 + private String pubUserName; + //发布单位 + private String pubOrgName; + //所属模块 + private String module; + //注册车 + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date registerPutTime; + + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date selectStartTime; + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date selectEndTime; + + private String keywords; + private String resultKeyword; + //发布开始日期 + private Date issueTimeSt; + //发布结束日期 + private Date issueTimeEd; + //实施开始日期 + private Date putTimeSt; + //实施结束日期 + private Date putTimeEd; + + + // 条目搜索条件 + private String itemsName; + private String itemsNum; + private String parts; + + //新车型实施开始日期 + private Date newcarPutTimeSt; + //新车型实施结束日期 + private Date newcarPutTimeEd; + //在产实施开始日期 + private Date productPutTimeSt; + //在产实施结束日期 + private Date productPutTimeEd; + private List advanceSearchVOList; + private String advanceSearchVOStr; + private String CLLX; + private String CYSD; + private String CBCD; + private String ZRLX; + private String SYCLLX; + private String WSSFCY; + + private String ZQCBM; + private String stand_status; + private String isHigh; + + public String getNature() { + return nature; + } + + public void setNature(String nature) { + this.nature = nature; + } + + public String getCountry() { + return country; + } + + public void setCountry(String country) { + this.country = country; + } + + public String getStandSort() { + return standSort; + } + + public void setStandSort(String standSort) { + this.standSort = standSort; + } + + public String getNumberShow() { + return numberShow; + } + + public void setNumberShow(String numberShow) { + this.numberShow = numberShow; + } + + public String getNameShow() { + return nameShow; + } + + public void setNameShow(String nameShow) { + this.nameShow = nameShow; + } + + public String getApplyArctic() { + return applyArctic; + } + + public void setApplyArctic(String applyArctic) { + this.applyArctic = applyArctic; + } + + public String getApplyAuth() { + return applyAuth; + } + + public void setApplyAuth(String applyAuth) { + this.applyAuth = applyAuth; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getEnergyKind() { + return energyKind; + } + + public void setEnergyKind(String energyKind) { + this.energyKind = energyKind; + } + + public String getAdoptExtent() { + return adoptExtent; + } + + public void setAdoptExtent(String adoptExtent) { + this.adoptExtent = adoptExtent; + } + + public String getStandState() { + return standState; + } + + public void setStandState(String standState) { + this.standState = standState; + } + + public Date getIssueTime() { + return issueTime; + } + + public void setIssueTime(Date issueTime) { + this.issueTime = issueTime; + } + + public String getSelectKey() { + return selectKey; + } + + public void setSelectKey(String selectKey) { + this.selectKey = selectKey; + } + + public String getSelectValue() { + return selectValue; + } + + public void setSelectValue(String selectValue) { + this.selectValue = selectValue; + } + + public Date getSelectStartTime() { + return selectStartTime; + } + + public void setSelectStartTime(Date selectStartTime) { + this.selectStartTime = selectStartTime; + } + + public Date getSelectEndTime() { + return selectEndTime; + } + + public void setSelectEndTime(Date selectEndTime) { + this.selectEndTime = selectEndTime; + } + + public String getSelectIndex() { + return selectIndex; + } + + public void setSelectIndex(String selectIndex) { + this.selectIndex = selectIndex; + } + + public String getBussBigClass() { + return bussBigClass; + } + + public void setBussBigClass(String bussBigClass) { + this.bussBigClass = bussBigClass; + } + + public String getBussFineClass() { + return bussFineClass; + } + + public void setBussFineClass(String bussFineClass) { + this.bussFineClass = bussFineClass; + } + + public String getStandNumber() { + return standNumber; + } + + public void setStandNumber(String standNumber) { + this.standNumber = standNumber; + } + + public String getStandYear() { + return standYear; + } + + public void setStandYear(String standYear) { + this.standYear = standYear; + } + + public String getStandEnName() { + return standEnName; + } + + public void setStandEnName(String standEnName) { + this.standEnName = standEnName; + } + + public String getReplaceStandNum() { + return replaceStandNum; + } + + public void setReplaceStandNum(String replaceStandNum) { + this.replaceStandNum = replaceStandNum; + } + + public String getReplacedStandNum() { + return replacedStandNum; + } + + public void setReplacedStandNum(String replacedStandNum) { + this.replacedStandNum = replacedStandNum; + } + + public String getInterStandNum() { + return interStandNum; + } + + public void setInterStandNum(String interStandNum) { + this.interStandNum = interStandNum; + } + + public Date getPutTime() { + return putTime; + } + + public void setPutTime(Date putTime) { + this.putTime = putTime; + } + + public Date getNewproductPutTime() { + return newproductPutTime; + } + + public void setNewproductPutTime(Date newproductPutTime) { + this.newproductPutTime = newproductPutTime; + } + + public Date getProductPutTime() { + return productPutTime; + } + + public void setProductPutTime(Date productPutTime) { + this.productPutTime = productPutTime; + } + + public Date getNewcarPutTime() { + return newcarPutTime; + } + + public void setNewcarPutTime(Date newcarPutTime) { + this.newcarPutTime = newcarPutTime; + } + + public String getDraftUser() { + return draftUser; + } + + public void setDraftUser(String draftUser) { + this.draftUser = draftUser; + } + + public String getDraftingUnit() { + return draftingUnit; + } + + public void setDraftingUnit(String draftingUnit) { + this.draftingUnit = draftingUnit; + } + + public String getTags() { + return tags; + } + + public void setTags(String tags) { + this.tags = tags; + } + + public String getSynopsis() { + return synopsis; + } + + public void setSynopsis(String synopsis) { + this.synopsis = synopsis; + } + + public String getResponsibleUnit() { + return responsibleUnit; + } + + public void setResponsibleUnit(String responsibleUnit) { + this.responsibleUnit = responsibleUnit; + } + + public String getClassifyCode() { + return classifyCode; + } + + public void setClassifyCode(String classifyCode) { + this.classifyCode = classifyCode; + } + + public String getPutYear() { + return putYear; + } + + public void setPutYear(String putYear) { + this.putYear = putYear; + } + + public String getFirstPutTime() { + return firstPutTime; + } + + public void setFirstPutTime(String firstPutTime) { + this.firstPutTime = firstPutTime; + } + + public String getQuoteStand() { + return quoteStand; + } + + public void setQuoteStand(String quoteStand) { + this.quoteStand = quoteStand; + } + + public String getCitationUser() { + return citationUser; + } + + public void setCitationUser(String citationUser) { + this.citationUser = citationUser; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getPubUserName() { + return pubUserName; + } + + public void setPubUserName(String pubUserName) { + this.pubUserName = pubUserName; + } + + public String getPubOrgName() { + return pubOrgName; + } + + public void setPubOrgName(String pubOrgName) { + this.pubOrgName = pubOrgName; + } + + public String getModule() { + return module; + } + + public void setModule(String module) { + this.module = module; + } + + public String getIssueUnit() { + return issueUnit; + } + + public void setIssueUnit(String issueUnit) { + this.issueUnit = issueUnit; + } + + public Date getRegisterPutTime() { + return registerPutTime; + } + + public void setRegisterPutTime(Date registerPutTime) { + this.registerPutTime = registerPutTime; + } + + public String getResultKeyword() { + return resultKeyword; + } + + public void setResultKeyword(String resultKeyword) { + this.resultKeyword = resultKeyword; + } + + public String getKeywords() { + return keywords; + } + + public void setKeywords(String keywords) { + this.keywords = keywords; + } + + public Date getIssueTimeSt() { + return issueTimeSt; + } + + public void setIssueTimeSt(Date issueTimeSt) { + this.issueTimeSt = issueTimeSt; + } + + public Date getIssueTimeEd() { + return issueTimeEd; + } + + public void setIssueTimeEd(Date issueTimeEd) { + this.issueTimeEd = issueTimeEd; + } + + public Date getPutTimeSt() { + return putTimeSt; + } + + public void setPutTimeSt(Date putTimeSt) { + this.putTimeSt = putTimeSt; + } + + public Date getPutTimeEd() { + return putTimeEd; + } + + public void setPutTimeEd(Date putTimeEd) { + this.putTimeEd = putTimeEd; + } + + public String getItemsName() { + return itemsName; + } + + public void setItemsName(String itemsName) { + this.itemsName = itemsName; + } + + public String getItemsNum() { + return itemsNum; + } + + public void setItemsNum(String itemsNum) { + this.itemsNum = itemsNum; + } + + public String getParts() { + return parts; + } + + public void setParts(String parts) { + this.parts = parts; + } + + public Date getNewcarPutTimeSt() { + return newcarPutTimeSt; + } + + public void setNewcarPutTimeSt(Date newcarPutTimeSt) { + this.newcarPutTimeSt = newcarPutTimeSt; + } + + public Date getNewcarPutTimeEd() { + return newcarPutTimeEd; + } + + public void setNewcarPutTimeEd(Date newcarPutTimeEd) { + this.newcarPutTimeEd = newcarPutTimeEd; + } + + public Date getProductPutTimeSt() { + return productPutTimeSt; + } + + public void setProductPutTimeSt(Date productPutTimeSt) { + this.productPutTimeSt = productPutTimeSt; + } + + public Date getProductPutTimeEd() { + return productPutTimeEd; + } + + public void setProductPutTimeEd(Date productPutTimeEd) { + this.productPutTimeEd = productPutTimeEd; + } + + public String getStandType() { + return standType; + } + + public void setStandType(String standType) { + this.standType = standType; + } + + public List getAdvanceSearchVOList() { + return advanceSearchVOList; + } + + public void setAdvanceSearchVOList(List advanceSearchVOList) { + this.advanceSearchVOList = advanceSearchVOList; + } + + public String getCLLX() { + return CLLX; + } + + public void setCLLX(String CLLX) { + this.CLLX = CLLX; + } + + public String getCYSD() { + return CYSD; + } + + public void setCYSD(String CYSD) { + this.CYSD = CYSD; + } + + public String getCBCD() { + return CBCD; + } + + public void setCBCD(String CBCD) { + this.CBCD = CBCD; + } + + public String getZRLX() { + return ZRLX; + } + + public void setZRLX(String ZRLX) { + this.ZRLX = ZRLX; + } + + public String getSYCLLX() { + return SYCLLX; + } + + public void setSYCLLX(String SYCLLX) { + this.SYCLLX = SYCLLX; + } + + public String getWSSFCY() { + return WSSFCY; + } + + public void setWSSFCY(String WSSFCY) { + this.WSSFCY = WSSFCY; + } + + public String getAdvanceSearchVOStr() { + return advanceSearchVOStr; + } + + public void setAdvanceSearchVOStr(String advanceSearchVOStr) { + this.advanceSearchVOStr = advanceSearchVOStr; + } + + public String getStand_status() { + return stand_status; + } + + public void setStand_status(String stand_status) { + this.stand_status = stand_status; + } + + public String getZQCBM() { + return ZQCBM; + } + + public void setZQCBM(String ZQCBM) { + this.ZQCBM = ZQCBM; + } + + public String getIsHigh() { + return isHigh; + } + + public void setIsHigh(String isHigh) { + this.isHigh = isHigh; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/StandLawsEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/StandLawsEO.java new file mode 100644 index 00000000..eba8a648 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/StandLawsEO.java @@ -0,0 +1,926 @@ +package com.adc.da.search.entity; + +import com.adc.da.base.entity.BaseEntity; + +import java.util.Date; + +/** + * 功能:PART_PRODUCT PartProductEOEntity
    + * 作者:code generator
    + * 日期: 2018-11-22
    + * 版权所有:

    + */ +public class StandLawsEO extends BaseEntity { + private String id; + private String stand_type; + private String laws_type; + private String numbershow; + private String numbershowSplit; + private String standNumber; + private String nameshow; + private String nameshowSplit; + private String standEnName; + private String nature; + private String natureShow; + private String country; + private String countryShow; + private String stand_sort; + private String standSortShow; + private String apply_arctic; + private String applyArcticShow; + private String standYear; + private String apply_auth; + private String applyAuthShow; + private String category; + private String categoryShow; + private String energy_kind; + private String energyKindShow; + private String adopt_extent; + private String adoptExtentShow; + private String statecode; + private String statecodeShow; + private Date issue_time; + private String issueTimeStr; + private Date put_time; + private String putTimeStr; + private String draft_user; + private String drafting_unit; + private String replace_stand_num; + private String replaced_stand_num; + private Integer valid_flag; + private String type; + private String standstateshow; + private String content; + + private String lawsstateshow; + private String replace_laws_num; + + private String bussBigClass; + private String bussBigClassShow; + private String bussFineClassShow; + private String bussFineClass; + private String classifyCode; + private String putYear; + private String firstPutTime; + private String quoteStand; + private String citationUser; + private String responsibleUnit; + private String responsibleUnitShow; + private String interStandNum; + private Date newproductPutTime; + //在产车实施日期 + private Date productPutTime; + //新定型车实施日期 + private Date newcarPutTime; + private Date registerPutTime; + private String standTag; + private String synopsis; + //发布单位 + private String issueUnit; + //动态信息 + private String module; + private String moduleName; + private String title; + private String pubUser; + private String pubUserShow; + private String pubOrg; + private String pubOrgShow; + private String msgContent; + + //去掉编号中空格 + private String numberExpNull; + + // 条目信息 + private String itemsName; + private String itemsNum; + private String standId; + private String termsConditions; //条款要求 + private String mainPointImplementation; //实施要点 + private String parts; + private Date tackTime; + private String remarks; + private String itemsType; + // 新加属性字段 + private String issueUnitShow;//发布单位 + private String citeStand; + private String citedStand; + private String gkglbm; + private String gkglbmShow; + private String gzzxx; + private String cysd; + private String zrlx; + private String zrlxShow; + private String yqlx; + private String yqlxShow; + private String gxhbq; + private String gxhbqShow; + private String xgbm; + private String xgbmShow; + private String svpps; + private String fo; + private String foShow; + private String xmpgry; + private String xmpgryShow; + private String fgwhr; + + public String getApply_arctic() { + return apply_arctic; + } + + public void setApply_arctic(String apply_arctic) { + this.apply_arctic = apply_arctic; + } + + public String getEnergy_kind() { + return energy_kind; + } + + public void setEnergy_kind(String energy_kind) { + this.energy_kind = energy_kind; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Date getIssue_time() { + return issue_time; + } + + public void setIssue_time(Date issue_time) { + this.issue_time = issue_time; + } + + public String getNameshow() { + return nameshow; + } + + public void setNameshow(String nameshow) { + this.nameshow = nameshow; + } + + public String getNumbershow() { + return numbershow; + } + + public void setNumbershow(String numbershow) { + this.numbershow = numbershow; + } + + public Date getPut_time() { + return put_time; + } + + public void setPut_time(Date put_time) { + this.put_time = put_time; + } + + public String getReplace_stand_num() { + return replace_stand_num; + } + + public void setReplace_stand_num(String replace_stand_num) { + this.replace_stand_num = replace_stand_num; + } + + public String getReplaced_stand_num() { + return replaced_stand_num; + } + + public void setReplaced_stand_num(String replaced_stand_num) { + this.replaced_stand_num = replaced_stand_num; + } + + public String getStandstateshow() { + return standstateshow; + } + + public void setStandstateshow(String standstateshow) { + this.standstateshow = standstateshow; + } + + public String getStatecode() { + return statecode; + } + + public void setStatecode(String statecode) { + this.statecode = statecode; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public Integer getValid_flag() { + return valid_flag; + } + + public void setValid_flag(Integer valid_flag) { + this.valid_flag = valid_flag; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + + public String getStand_type() { + return stand_type; + } + + public void setStand_type(String stand_type) { + this.stand_type = stand_type; + } + + public String getLaws_type() { + return laws_type; + } + + public void setLaws_type(String laws_type) { + this.laws_type = laws_type; + } + + public String getNature() { + return nature; + } + + public void setNature(String nature) { + this.nature = nature; + } + + public String getCountry() { + return country; + } + + public void setCountry(String country) { + this.country = country; + } + + public String getStand_sort() { + return stand_sort; + } + + public void setStand_sort(String stand_sort) { + this.stand_sort = stand_sort; + } + + public String getApply_auth() { + return apply_auth; + } + + public void setApply_auth(String apply_auth) { + this.apply_auth = apply_auth; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getAdopt_extent() { + return adopt_extent; + } + + public void setAdopt_extent(String adopt_extent) { + this.adopt_extent = adopt_extent; + } + + public String getDraft_user() { + return draft_user; + } + + public void setDraft_user(String draft_user) { + this.draft_user = draft_user; + } + + public String getDrafting_unit() { + return drafting_unit; + } + + public void setDrafting_unit(String drafting_unit) { + this.drafting_unit = drafting_unit; + } + + public String getLawsstateshow() { + return lawsstateshow; + } + + public void setLawsstateshow(String lawsstateshow) { + this.lawsstateshow = lawsstateshow; + } + + public String getReplace_laws_num() { + return replace_laws_num; + } + + public void setReplace_laws_num(String replace_laws_num) { + this.replace_laws_num = replace_laws_num; + } + + public String getBussBigClass() { + return bussBigClass; + } + + public void setBussBigClass(String bussBigClass) { + this.bussBigClass = bussBigClass; + } + + public String getBussFineClass() { + return bussFineClass; + } + + public void setBussFineClass(String bussFineClass) { + this.bussFineClass = bussFineClass; + } + + public String getClassifyCode() { + return classifyCode; + } + + public void setClassifyCode(String classifyCode) { + this.classifyCode = classifyCode; + } + + public String getPutYear() { + return putYear; + } + + public void setPutYear(String putYear) { + this.putYear = putYear; + } + + public String getFirstPutTime() { + return firstPutTime; + } + + public void setFirstPutTime(String firstPutTime) { + this.firstPutTime = firstPutTime; + } + + public String getQuoteStand() { + return quoteStand; + } + + public void setQuoteStand(String quoteStand) { + this.quoteStand = quoteStand; + } + + public String getCitationUser() { + return citationUser; + } + + public void setCitationUser(String citationUser) { + this.citationUser = citationUser; + } + + public String getStandEnName() { + return standEnName; + } + + public void setStandEnName(String standEnName) { + this.standEnName = standEnName; + } + + public String getResponsibleUnit() { + return responsibleUnit; + } + + public void setResponsibleUnit(String responsibleUnit) { + this.responsibleUnit = responsibleUnit; + } + + public String getInterStandNum() { + return interStandNum; + } + + public void setInterStandNum(String interStandNum) { + this.interStandNum = interStandNum; + } + + public Date getNewproductPutTime() { + return newproductPutTime; + } + + public void setNewproductPutTime(Date newproductPutTime) { + this.newproductPutTime = newproductPutTime; + } + + public Date getProductPutTime() { + return productPutTime; + } + + public void setProductPutTime(Date productPutTime) { + this.productPutTime = productPutTime; + } + + public Date getNewcarPutTime() { + return newcarPutTime; + } + + public void setNewcarPutTime(Date newcarPutTime) { + this.newcarPutTime = newcarPutTime; + } + + public String getSynopsis() { + return synopsis; + } + + public void setSynopsis(String synopsis) { + this.synopsis = synopsis; + } + + public String getIssueUnit() { + return issueUnit; + } + + public void setIssueUnit(String issueUnit) { + this.issueUnit = issueUnit; + } + + public String getNatureShow() { + return natureShow; + } + + public void setNatureShow(String natureShow) { + this.natureShow = natureShow; + } + + public String getCountryShow() { + return countryShow; + } + + public void setCountryShow(String countryShow) { + this.countryShow = countryShow; + } + + public String getStandSortShow() { + return standSortShow; + } + + public void setStandSortShow(String standSortShow) { + this.standSortShow = standSortShow; + } + + public String getApplyArcticShow() { + return applyArcticShow; + } + + public void setApplyArcticShow(String applyArcticShow) { + this.applyArcticShow = applyArcticShow; + } + + public String getApplyAuthShow() { + return applyAuthShow; + } + + public void setApplyAuthShow(String applyAuthShow) { + this.applyAuthShow = applyAuthShow; + } + + public String getCategoryShow() { + return categoryShow; + } + + public void setCategoryShow(String categoryShow) { + this.categoryShow = categoryShow; + } + + public String getEnergyKindShow() { + return energyKindShow; + } + + public void setEnergyKindShow(String energyKindShow) { + this.energyKindShow = energyKindShow; + } + + public String getAdoptExtentShow() { + return adoptExtentShow; + } + + public void setAdoptExtentShow(String adoptExtentShow) { + this.adoptExtentShow = adoptExtentShow; + } + + public String getStatecodeShow() { + return statecodeShow; + } + + public void setStatecodeShow(String statecodeShow) { + this.statecodeShow = statecodeShow; + } + + public String getIssueTimeStr() { + return issueTimeStr; + } + + public void setIssueTimeStr(String issueTimeStr) { + this.issueTimeStr = issueTimeStr; + } + + public String getPutTimeStr() { + return putTimeStr; + } + + public void setPutTimeStr(String putTimeStr) { + this.putTimeStr = putTimeStr; + } + + public String getBussBigClassShow() { + return bussBigClassShow; + } + + public void setBussBigClassShow(String bussBigClassShow) { + this.bussBigClassShow = bussBigClassShow; + } + + public String getBussFineClassShow() { + return bussFineClassShow; + } + + public void setBussFineClassShow(String bussFineClassShow) { + this.bussFineClassShow = bussFineClassShow; + } + + public String getModule() { + return module; + } + + public void setModule(String module) { + this.module = module; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getPubUser() { + return pubUser; + } + + public void setPubUser(String pubUser) { + this.pubUser = pubUser; + } + + public String getPubUserShow() { + return pubUserShow; + } + + public void setPubUserShow(String pubUserShow) { + this.pubUserShow = pubUserShow; + } + + public String getPubOrg() { + return pubOrg; + } + + public void setPubOrg(String pubOrg) { + this.pubOrg = pubOrg; + } + + public String getPubOrgShow() { + return pubOrgShow; + } + + public void setPubOrgShow(String pubOrgShow) { + this.pubOrgShow = pubOrgShow; + } + + + public String getModuleName() { + return moduleName; + } + + public void setModuleName(String moduleName) { + this.moduleName = moduleName; + } + + public String getStandYear() { + return standYear; + } + + public void setStandYear(String standYear) { + this.standYear = standYear; + } + + public String getResponsibleUnitShow() { + return responsibleUnitShow; + } + + public void setResponsibleUnitShow(String responsibleUnitShow) { + this.responsibleUnitShow = responsibleUnitShow; + } + + public String getStandNumber() { + return standNumber; + } + + public void setStandNumber(String standNumber) { + this.standNumber = standNumber; + } + + public Date getRegisterPutTime() { + return registerPutTime; + } + + public void setRegisterPutTime(Date registerPutTime) { + this.registerPutTime = registerPutTime; + } + + public String getNumberExpNull() { + return numberExpNull; + } + + public void setNumberExpNull(String numberExpNull) { + this.numberExpNull = numberExpNull; + } + + public String getItemsName() { + return itemsName; + } + + public void setItemsName(String itemsName) { + this.itemsName = itemsName; + } + + public String getItemsNum() { + return itemsNum; + } + + public void setItemsNum(String itemsNum) { + this.itemsNum = itemsNum; + } + + public String getStandId() { + return standId; + } + + public void setStandId(String standId) { + this.standId = standId; + } + + public String getTermsConditions() { + return termsConditions; + } + + public void setTermsConditions(String termsConditions) { + this.termsConditions = termsConditions; + } + + public String getMainPointImplementation() { + return mainPointImplementation; + } + + public void setMainPointImplementation(String mainPointImplementation) { + this.mainPointImplementation = mainPointImplementation; + } + + public String getParts() { + return parts; + } + + public void setParts(String parts) { + this.parts = parts; + } + + public Date getTackTime() { + return tackTime; + } + + public void setTackTime(Date tackTime) { + this.tackTime = tackTime; + } + + public String getRemarks() { + return remarks; + } + + public void setRemarks(String remarks) { + this.remarks = remarks; + } + + public String getItemsType() { + return itemsType; + } + + public void setItemsType(String itemsType) { + this.itemsType = itemsType; + } + + public String getNameshowSplit() { + return nameshowSplit; + } + + public void setNameshowSplit(String nameshowSplit) { + this.nameshowSplit = nameshowSplit; + } + + public String getNumbershowSplit() { + return numbershowSplit; + } + + public void setNumbershowSplit(String numbershowSplit) { + this.numbershowSplit = numbershowSplit; + } + + public String getMsgContent() { + return msgContent; + } + + public void setMsgContent(String msgContent) { + this.msgContent = msgContent; + } + + public String getStandTag() { + return standTag; + } + + public void setStandTag(String standTag) { + this.standTag = standTag; + } + + public String getIssueUnitShow() { + return issueUnitShow; + } + + public void setIssueUnitShow(String issueUnitShow) { + this.issueUnitShow = issueUnitShow; + } + + public String getCiteStand() { + return citeStand; + } + + public void setCiteStand(String citeStand) { + this.citeStand = citeStand; + } + + public String getCitedStand() { + return citedStand; + } + + public void setCitedStand(String citedStand) { + this.citedStand = citedStand; + } + + public String getGkglbm() { + return gkglbm; + } + + public void setGkglbm(String gkglbm) { + this.gkglbm = gkglbm; + } + + public String getGkglbmShow() { + return gkglbmShow; + } + + public void setGkglbmShow(String gkglbmShow) { + this.gkglbmShow = gkglbmShow; + } + + public String getGzzxx() { + return gzzxx; + } + + public void setGzzxx(String gzzxx) { + this.gzzxx = gzzxx; + } + + public String getCysd() { + return cysd; + } + + public void setCysd(String cysd) { + this.cysd = cysd; + } + + public String getZrlx() { + return zrlx; + } + + public void setZrlx(String zrlx) { + this.zrlx = zrlx; + } + + public String getZrlxShow() { + return zrlxShow; + } + + public void setZrlxShow(String zrlxShow) { + this.zrlxShow = zrlxShow; + } + + public String getYqlx() { + return yqlx; + } + + public void setYqlx(String yqlx) { + this.yqlx = yqlx; + } + + public String getYqlxShow() { + return yqlxShow; + } + + public void setYqlxShow(String yqlxShow) { + this.yqlxShow = yqlxShow; + } + + public String getGxhbq() { + return gxhbq; + } + + public void setGxhbq(String gxhbq) { + this.gxhbq = gxhbq; + } + + public String getGxhbqShow() { + return gxhbqShow; + } + + public void setGxhbqShow(String gxhbqShow) { + this.gxhbqShow = gxhbqShow; + } + + public String getXgbm() { + return xgbm; + } + + public void setXgbm(String xgbm) { + this.xgbm = xgbm; + } + + public String getXgbmShow() { + return xgbmShow; + } + + public void setXgbmShow(String xgbmShow) { + this.xgbmShow = xgbmShow; + } + + public String getSvpps() { + return svpps; + } + + public void setSvpps(String svpps) { + this.svpps = svpps; + } + + public String getFo() { + return fo; + } + + public void setFo(String fo) { + this.fo = fo; + } + + public String getFoShow() { + return foShow; + } + + public void setFoShow(String foShow) { + this.foShow = foShow; + } + + public String getXmpgry() { + return xmpgry; + } + + public void setXmpgry(String xmpgry) { + this.xmpgry = xmpgry; + } + + public String getXmpgryShow() { + return xmpgryShow; + } + + public void setXmpgryShow(String xmpgryShow) { + this.xmpgryShow = xmpgryShow; + } + + public String getFgwhr() { + return fgwhr; + } + + public void setFgwhr(String fgwhr) { + this.fgwhr = fgwhr; + } +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java b/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java new file mode 100644 index 00000000..d965d4a1 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java @@ -0,0 +1,358 @@ +package com.adc.da.search.page; + +import com.adc.da.sys.common.BasePage; + +import java.util.Date; + +/** + * 功能:PART_PRODUCT PartProductEOPage
    + * 作者:code generator
    + * 日期: 2018-08-22
    + * 版权所有:版权归北京卡达克数据技术中心所有。
    + */ +public class PartProductEOPage extends BasePage { + + private String id; + private String idOperator = "="; + private String corpId; + private String corpIdOperator = "="; + private String partType; + private String partTypeOperator = "="; + private String partName; + private String partNameOperator = "="; + private String partNummber; + private String partNummberOperator = "="; + private String riskGrade; + private String riskGradeOperator = "="; + private String suitModel; + private String suitModelOperator = "="; + private String motoModel; + private String motoModelOperator = "="; + private String motoType; + private String motoTypeOperator = "="; + private String oemCode; + private String oemCodeOperator = "="; + private String certNumber; + private String certNumberOperator = "="; + private String delFlag; + private String delFlagOperator = "="; + private String insertTime; + private String insertTime1; + private String insertTime2; + private String insertTimeOperator = "="; + private String updateTime; + private String updateTime1; + private String updateTime2; + private String updateTimeOperator = "="; + private String corpModel; + private String corpModelOperator = "="; + private String partSup; + private String partSupOperator = "="; + private String qrCodeStatus; + private String qrCodeStatusOperator = "="; + + public String getId() { + return this.id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIdOperator() { + return this.idOperator; + } + + public void setIdOperator(String idOperator) { + this.idOperator = idOperator; + } + + public String getCorpId() { + return this.corpId; + } + + public void setCorpId(String corpId) { + this.corpId = corpId; + } + + public String getCorpIdOperator() { + return this.corpIdOperator; + } + + public void setCorpIdOperator(String corpIdOperator) { + this.corpIdOperator = corpIdOperator; + } + + public String getPartType() { + return this.partType; + } + + public void setPartType(String partType) { + this.partType = partType; + } + + public String getPartTypeOperator() { + return this.partTypeOperator; + } + + public void setPartTypeOperator(String partTypeOperator) { + this.partTypeOperator = partTypeOperator; + } + + public String getPartName() { + return this.partName; + } + + public void setPartName(String partName) { + this.partName = partName; + } + + public String getPartNameOperator() { + return this.partNameOperator; + } + + public void setPartNameOperator(String partNameOperator) { + this.partNameOperator = partNameOperator; + } + + public String getPartNummber() { + return this.partNummber; + } + + public void setPartNummber(String partNummber) { + this.partNummber = partNummber; + } + + public String getPartNummberOperator() { + return this.partNummberOperator; + } + + public void setPartNummberOperator(String partNummberOperator) { + this.partNummberOperator = partNummberOperator; + } + + public String getRiskGrade() { + return this.riskGrade; + } + + public void setRiskGrade(String riskGrade) { + this.riskGrade = riskGrade; + } + + public String getRiskGradeOperator() { + return this.riskGradeOperator; + } + + public void setRiskGradeOperator(String riskGradeOperator) { + this.riskGradeOperator = riskGradeOperator; + } + + public String getSuitModel() { + return this.suitModel; + } + + public void setSuitModel(String suitModel) { + this.suitModel = suitModel; + } + + public String getSuitModelOperator() { + return this.suitModelOperator; + } + + public void setSuitModelOperator(String suitModelOperator) { + this.suitModelOperator = suitModelOperator; + } + + public String getMotoModel() { + return this.motoModel; + } + + public void setMotoModel(String motoModel) { + this.motoModel = motoModel; + } + + public String getMotoModelOperator() { + return this.motoModelOperator; + } + + public void setMotoModelOperator(String motoModelOperator) { + this.motoModelOperator = motoModelOperator; + } + + public String getMotoType() { + return this.motoType; + } + + public void setMotoType(String motoType) { + this.motoType = motoType; + } + + public String getMotoTypeOperator() { + return this.motoTypeOperator; + } + + public void setMotoTypeOperator(String motoTypeOperator) { + this.motoTypeOperator = motoTypeOperator; + } + + public String getOemCode() { + return this.oemCode; + } + + public void setOemCode(String oemCode) { + this.oemCode = oemCode; + } + + public String getOemCodeOperator() { + return this.oemCodeOperator; + } + + public void setOemCodeOperator(String oemCodeOperator) { + this.oemCodeOperator = oemCodeOperator; + } + + public String getCertNumber() { + return this.certNumber; + } + + public void setCertNumber(String certNumber) { + this.certNumber = certNumber; + } + + public String getCertNumberOperator() { + return this.certNumberOperator; + } + + public void setCertNumberOperator(String certNumberOperator) { + this.certNumberOperator = certNumberOperator; + } + + public String getDelFlag() { + return this.delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getDelFlagOperator() { + return this.delFlagOperator; + } + + public void setDelFlagOperator(String delFlagOperator) { + this.delFlagOperator = delFlagOperator; + } + + public String getInsertTime() { + return this.insertTime; + } + + public void setInsertTime(String insertTime) { + this.insertTime = insertTime; + } + + public String getInsertTime1() { + return this.insertTime1; + } + + public void setInsertTime1(String insertTime1) { + this.insertTime1 = insertTime1; + } + + public String getInsertTime2() { + return this.insertTime2; + } + + public void setInsertTime2(String insertTime2) { + this.insertTime2 = insertTime2; + } + + public String getInsertTimeOperator() { + return this.insertTimeOperator; + } + + public void setInsertTimeOperator(String insertTimeOperator) { + this.insertTimeOperator = insertTimeOperator; + } + + public String getUpdateTime() { + return this.updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateTime1() { + return this.updateTime1; + } + + public void setUpdateTime1(String updateTime1) { + this.updateTime1 = updateTime1; + } + + public String getUpdateTime2() { + return this.updateTime2; + } + + public void setUpdateTime2(String updateTime2) { + this.updateTime2 = updateTime2; + } + + public String getUpdateTimeOperator() { + return this.updateTimeOperator; + } + + public void setUpdateTimeOperator(String updateTimeOperator) { + this.updateTimeOperator = updateTimeOperator; + } + + public String getCorpModel() { + return this.corpModel; + } + + public void setCorpModel(String corpModel) { + this.corpModel = corpModel; + } + + public String getCorpModelOperator() { + return this.corpModelOperator; + } + + public void setCorpModelOperator(String corpModelOperator) { + this.corpModelOperator = corpModelOperator; + } + + public String getPartSup() { + return this.partSup; + } + + public void setPartSup(String partSup) { + this.partSup = partSup; + } + + public String getPartSupOperator() { + return this.partSupOperator; + } + + public void setPartSupOperator(String partSupOperator) { + this.partSupOperator = partSupOperator; + } + + public String getQrCodeStatus() { + return this.qrCodeStatus; + } + + public void setQrCodeStatus(String qrCodeStatus) { + this.qrCodeStatus = qrCodeStatus; + } + + public String getQrCodeStatusOperator() { + return this.qrCodeStatusOperator; + } + + public void setQrCodeStatusOperator(String qrCodeStatusOperator) { + this.qrCodeStatusOperator = qrCodeStatusOperator; + } + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/ElasticsearchService.java b/adc-da-search/src/main/java/com/adc/da/search/service/ElasticsearchService.java new file mode 100644 index 00000000..07c74b31 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/service/ElasticsearchService.java @@ -0,0 +1,270 @@ +package com.adc.da.search.service; + +import com.adc.da.search.entity.EsPage; +import com.alibaba.fastjson.JSONObject; +import org.elasticsearch.action.search.SearchResponse; +import org.elasticsearch.common.xcontent.XContentBuilder; + +import java.util.List; +import java.util.Map; + +public interface ElasticsearchService { + + /** + * Elasticsearch 创建索引定义 + * @param index 要创建的索引 + * @return true表示创建成功,false表示创建失败 + * @author gaoyan + * date 2018-08-27 + */ + boolean createIndex(String index, XContentBuilder mapping); + + /** + * Elasticsearch 删除索引定义 + * @param index 要删除的索引 + * @return true表示删除成功,false表示删除失败 + * @author gaoyan + * date 2018-08-27 + */ + boolean deleteIndex(String index); + + /** + * Elasticsearch 判断索引是否存在定义 + * @param index 要判断的索引名称 + * @return true表示该索引存在,false表示该索引不存在 + * @author gaoyan + * date 2018-08-28 + */ + boolean isIndexExist(String index); + + /** + * 指定ID数据添加接口定义, + * @param jsonObject 要增加的数据 + * @param index 索引,类似数据库 + * @param type 类型,类似表 (自6.0改版以后,一个索引里只允许有一种类型, + * 如果索引中已经有类型,增加数据过程中,添加其他类型会报错) + * @param id 数据ID + * @return 返回创建的文档的id + * @author gaoyan + * date 2018-08-28 + */ + String addData(JSONObject jsonObject, String index, String type, String id); + + String addDataForMap(Map attrInfoMap, String index, String type, String id); + + /** + * 不指定ID数据添加接口定义, + * @param jsonObject 要增加的数据 + * @param index 索引,类似数据库 + * @param type 类型,类似表 (自6.0改版以后,一个索引里只允许有一种类型, + * 如果索引中已经有类型,增加数据过程中,添加其他类型会报错) + * @return 返回创建的文档的id + * @author gaoyan + * date 2018-08-28 + */ + String addData(JSONObject jsonObject, String index, String type); + + /** + * 通过ID删除数据定义 + * + * @param index 索引,类似数据库 + * @param type 类型,类似表 + * @param id 数据ID + * @return 正确删除返回DELETED + * @author gaoyan + * date 2018-08-28 + */ + String deleteDataById(String index, String type, String id); + + /** + * Elasticsearch 删除某个index所有的文档接口定义 + * @param index 要插入的索引 + * @return 删除返回的结果 + * @author gaoyan + * date 2018-08-27 + */ + long deleteAllDataOfIndex(String index); + + /** + * 通过ID 更新数据定义 + * + * @param jsonObject 要更新的数据 + * @param index 索引,类似数据库 + * @param type 类型,类似表 + * @param id 数据ID + * @return 如果正确删除返回 UPDATED + * @author gaoyan + * date 2018-08-28 + */ + String updateDataById(JSONObject jsonObject, String index, String type, String id); + + String updateDataByIdForMap(Map attrInfoMap, String index, String type, String id); + + /** + * 通过ID获取数据定义 + * + * @param index 索引,类似数据库 + * @param type 类型,类似表 + * @param id 数据ID + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @return + * @author gaoyan + * date 2018-08-28 + */ + Map searchDataById(String index, String type, String id, String fields); + + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称,可传入多个type逗号分隔 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + List> searchListData(String index, String type, String fields, String matchStr); + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称,可传入多个type逗号分隔 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + List> searchListData(String index, String type, String fields, String sortField, boolean matchPhrase, String matchStr); + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称,可传入多个type逗号分隔 + * @param size 文档大小限制 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param highlightField 高亮字段 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + List> searchListData(String index, String type, Integer size, String fields, String sortField, boolean matchPhrase, String highlightField, String matchStr); + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称,可传入多个type逗号分隔 + * @param startTime 开始时间 + * @param endTime 结束时间 + * @param size 文档大小限制 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param highlightField 高亮字段 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + List> searchListData(String index, String type, long startTime, long endTime, Integer size, String fields, String sortField, boolean matchPhrase, String highlightField, String matchStr); + + /** + * 使用分词查询,并分页 + * + * @param index 索引名称 + * @param type 类型名称,可传入多个type逗号分隔 + * @param currentPage 当前页 + * @param pageSize 每页显示条数 + * @param startTime 开始时间 + * @param endTime 结束时间 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param highlightField 高亮字段 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + EsPage searchDataPage(String index, String type, int currentPage, int pageSize, long startTime, long endTime, String fields, String sortField, boolean matchPhrase, String highlightField, String matchStr); + + /** + * 高亮结果集 特殊处理 + * + * @param searchResponse + * @param highlightField + */ + List> setSearchResponse(SearchResponse searchResponse, String highlightField); + + /** + * Elasticsearch 批量插入接口定义 + * @param index 要插入的索引 + * @param type 要插入数据对应的type + * @param list 插入数据的list + * @return + * @author gaoyan + * date 2018-08-27 + */ + String addBulkData(String index, String type, List list); + + /** + * 默认查询全部数据,并按照对应的字段排序,方法内写了部分基础查询,主要是针对单个field但条件 + * 具体业务查询可参考方法体中注释代码 + * @param index index名称,可以从多个index中查询,所以这里定义成String数组 + * @param type type名称,可以从多种type中查询,所以这里定义成String数组 + * @param sortfield 需要排序的字段, + * @return + * @author gaoyan + * date 2018-08-28 + */ + List> searchListDataAndSort(String[] index, String[] type, String sortfield, String[] fields); + + + /** + * 涉及组合查询条件主要涉及到boolQueryBuilder的使用 + * @param index index名称,可以从多个index中查询,所以这里定义成String数组 + * @param type type名称,可以从多种type中查询,所以这里定义成String数组 + * @param sortfield 需要排序的字段, + * @return + * @author gaoyan + * date 2018-08-28 + */ + List> searchListDataUnit(String[] index, String[] type, String sortfield, String[] fields); + + + /** + * 涉及组合查询条件主要涉及到聚合函数的使用,主要是分组求平均值,依靠平均值排序 terms + * @param index index名称,可以从多个index中查询,所以这里定义成String数组 + * @param type type名称,可以从多种type中查询,所以这里定义成String数组 + * @return + * @author gaoyan + * date 2018-08-28 + */ + List> searchListDataGroup(String[] index, String[] type); + + + /** + * 涉及组合查询条件主要涉及到聚合函数的使用,较为复杂,按照年龄阶段分组后,再安装性别分组,求balance平均值 ranges + * @param index index名称,可以从多个index中查询,所以这里定义成String数组 + * @param type type名称,可以从多种type中查询,所以这里定义成String数组 + * @return + * @author gaoyan + * date 2018-08-29 + */ + List> searchListDataGroupComplex(String[] index, String[] type); + + + + /** + * 查询结果集searchResponse装换成List形式 + * @param searchResponse 需要转换的数据 + * @return + * @author gaoyan + * date 2018-08-28 + */ + List> SearchResponseToList(SearchResponse searchResponse); + + + + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java b/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java new file mode 100644 index 00000000..9e569ff4 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java @@ -0,0 +1,30 @@ +package com.adc.da.search.service; + +import com.adc.da.search.entity.SeniorSearchInfoEO; +import org.elasticsearch.action.search.SearchResponse; + +import java.util.List; +import java.util.Map; + +public interface SearchCenterService { + + List> searchSarBykey(SeniorSearchInfoEO searchInfoEO) throws Exception; + + /** + * 查询结果集searchResponse装换成List形式 + * @param searchResponse 需要转换的数据 + * @return + * @author gaoyan + * date 2018-08-28 + */ + List> SearchResponseToList(SearchResponse searchResponse); + + Map selectGroupdata(SeniorSearchInfoEO searchInfoEO); + + String [] searchIdToImport(SeniorSearchInfoEO searchInfoEO); + + List> searchSarBykeyAndHighLight(SeniorSearchInfoEO searchInfoEO) throws Exception; + + List> searchSarBykeyAndHighLightNumber(SeniorSearchInfoEO searchInfoEO) throws Exception; + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/StandLawsSearchService.java b/adc-da-search/src/main/java/com/adc/da/search/service/StandLawsSearchService.java new file mode 100644 index 00000000..8c99c429 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/service/StandLawsSearchService.java @@ -0,0 +1,19 @@ +package com.adc.da.search.service; + + +import com.adc.da.search.entity.StandLawsEO; + +import java.util.Map; + +public interface StandLawsSearchService { + + String addStandLawsSearch(StandLawsEO standLawsEO); + + String addStandLawsSearchForMap(Map attrInfoMap); + +// String updateStandLawsSearch(StandLawsEO standLawsEO); + + String updateStandLawsSearchForMap(Map attrInfoMap); + + String deleteStandLawsSearch(StandLawsEO standLawsEO); +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java new file mode 100644 index 00000000..8cde8438 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java @@ -0,0 +1,748 @@ +package com.adc.da.search.service.impl; + +import com.adc.da.search.entity.EsPage; +import com.adc.da.search.service.ElasticsearchService; +import com.adc.da.util.utils.StringUtils; +import com.alibaba.fastjson.JSONObject; +import org.elasticsearch.action.admin.indices.create.CreateIndexRequestBuilder; +import org.elasticsearch.action.admin.indices.create.CreateIndexResponse; +import org.elasticsearch.action.admin.indices.delete.DeleteIndexResponse; +import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsRequest; +import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsResponse; +import org.elasticsearch.action.bulk.BulkRequestBuilder; +import org.elasticsearch.action.bulk.BulkResponse; +import org.elasticsearch.action.delete.DeleteResponse; +import org.elasticsearch.action.get.GetRequestBuilder; +import org.elasticsearch.action.get.GetResponse; +import org.elasticsearch.action.index.IndexRequestBuilder; +import org.elasticsearch.action.index.IndexResponse; +import org.elasticsearch.action.search.SearchRequestBuilder; +import org.elasticsearch.action.search.SearchResponse; +import org.elasticsearch.action.search.SearchType; +import org.elasticsearch.action.update.UpdateRequest; +import org.elasticsearch.action.update.UpdateResponse; +import org.elasticsearch.client.transport.TransportClient; +import org.elasticsearch.common.text.Text; +import org.elasticsearch.common.xcontent.XContentBuilder; +import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.QueryBuilders; +import org.elasticsearch.index.reindex.BulkByScrollResponse; +import org.elasticsearch.index.reindex.DeleteByQueryAction; +import org.elasticsearch.search.SearchHit; +import org.elasticsearch.search.aggregations.AggregationBuilders; +import org.elasticsearch.search.aggregations.BucketOrder; +import org.elasticsearch.search.aggregations.bucket.range.Range; +import org.elasticsearch.search.aggregations.bucket.terms.StringTerms; +import org.elasticsearch.search.aggregations.metrics.avg.Avg; +import org.elasticsearch.search.aggregations.metrics.max.Max; +import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder; +import org.elasticsearch.search.sort.SortOrder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import java.util.*; + +@Component +public class ElasticsearchServiceImpl implements ElasticsearchService { + private static final Logger logger = LoggerFactory.getLogger(ElasticsearchServiceImpl.class); + @Autowired + private TransportClient transportClient; + + private TransportClient client; + + @PostConstruct + public void init() { + client = this.transportClient; + } + + /** + * Elasticsearch 创建索引实现 + * @param index 要创建的索引 + * @return true表示创建成功,false表示创建失败 + * @author gaoyan + * date 2018-08-27 + */ + @Override + public boolean createIndex(String index ,XContentBuilder mapping){ + if (!isIndexExist(index)) { + logger.info("Index is not exits!"); + } + CreateIndexRequestBuilder cib=client.admin().indices().prepareCreate(index); + cib.addMapping(index, mapping); + CreateIndexResponse indexresponse = cib.execute().actionGet(); + logger.info("执行建立成功?" + indexresponse.isAcknowledged()); + return indexresponse.isAcknowledged(); + } + + /** + * Elasticsearch 删除索引实现 + * @param index 要删除的索引 + * @return true表示删除成功,false表示删除失败 + * @author gaoyan + * date 2018-08-27 + */ + @Override + public boolean deleteIndex(String index) { + if (!isIndexExist(index)) { + logger.info("Index is not exits!"); + } + DeleteIndexResponse dResponse = client.admin().indices().prepareDelete(index).get(); + if (dResponse.isAcknowledged()) { + logger.info("delete index " + index + " successfully!"); + } else { + logger.info("Fail to delete index " + index); + } + return dResponse.isAcknowledged(); + } + + /** + * Elasticsearch 判断索引是否存在实现 + * @param index 要判断的索引名称 + * @return true表示该索引存在,false表示该索引不存在 + * @author gaoyan + * date 2018-08-28 + */ + @Override + public boolean isIndexExist(String index) { + IndicesExistsResponse inExistsResponse = client.admin().indices().exists(new IndicesExistsRequest(index)).actionGet(); + if (inExistsResponse.isExists()) { + logger.info("Index [" + index + "] is exist!"); + } else { + logger.info("Index [" + index + "] is not exist!"); + } + return inExistsResponse.isExists(); + } + + /** + * 指定ID数据添加接口实现, + * @param jsonObject 要增加的数据 + * @param index 索引,类似数据库 + * @param type 类型,类似表 (自6.0改版以后,一个索引里只允许有一种类型, + * 如果索引中已经有类型,增加数据过程中,添加其他类型会报错) + * @param id 数据ID + * @return 返回创建的文档的id + * @author gaoyan + * date 2018-08-28 + */ + @Override + public String addData(JSONObject jsonObject, String index, String type, String id) { + IndexResponse response = client.prepareIndex(index, type, id).setSource(jsonObject).get(); + logger.info("addData response status:{},id:{}", response.status().getStatus(), response.getId()); + return response.getId(); + } + + @Override + public String addDataForMap(Map attrInfoMap, String index, String type, String id) { + IndexResponse response = client.prepareIndex(index, type, id).setSource(attrInfoMap).get(); + logger.info("addData response status:{},id:{}", response.status().getStatus(), response.getId()); + return response.getId(); + } + + /** + * 不指定ID数据添加接口实现, + * @param jsonObject 要增加的数据 + * @param index 索引,类似数据库 + * @param type 类型,类似表 (自6.0改版以后,一个索引里只允许有一种类型, + * 如果索引中已经有类型,增加数据过程中,添加其他类型会报错) + * @return 返回创建的文档的id + * @author gaoyan + * date 2018-08-28 + */ + @Override + public String addData(JSONObject jsonObject, String index, String type) { + IndexResponse response = client.prepareIndex(index, type).setSource(jsonObject).get(); + logger.info("addData response status:{},id:{}", response.status().getStatus(), response.getId()); + return response.getId(); + } + + /** + * 通过ID删除数据实现 + * + * @param index 索引,类似数据库 + * @param type 类型,类似表 + * @param id 数据ID + * @return 正确删除返回DELETED + * @author gaoyan + * date 2018-08-28 + */ + @Override + public String deleteDataById(String index, String type, String id) { + DeleteResponse response = client.prepareDelete(index, type, id).get(); + logger.info("deleteDataById response status:{},id:{}", response.status().getStatus(), response.getId()); + return response.getResult().toString(); + } + + /** + * Elasticsearch 删除某个index所有的文档接口实现 + * @param index 要插入的索引 + * @return 删除返回的结果,一共删除多少条 + * @author gaoyan + * date 2018-08-27 + */ + @Override + public long deleteAllDataOfIndex(String index) { + BulkByScrollResponse response = DeleteByQueryAction.INSTANCE.newRequestBuilder(client) + .filter(QueryBuilders.matchAllQuery()) + .source(index) + .get(); + //一共删除掉多少条 + long deleted = response.getDeleted(); + return deleted; + } + + /** + * 通过ID 更新数据实现 + * + * @param jsonObject 要更新的数据 + * @param index 索引,类似数据库 + * @param type 类型,类似表 + * @param id 数据ID + * @return 如果正确删除返回 UPDATED + * @author gaoyan + * date 2018-08-28 + */ + @Override + public String updateDataById(JSONObject jsonObject, String index, String type, String id) { + UpdateRequest updateRequest = new UpdateRequest(); + updateRequest.index(index).type(type).id(id).doc(jsonObject); + UpdateResponse result; + try { + result = this.client.update(updateRequest).get(); + } catch (Exception e) { + logger.error(e.getMessage(),e); + return e.getMessage(); + } + return result.getResult().toString(); + } + + @Override + public String updateDataByIdForMap(Map attrInfoMap, String index, String type, String id) { + UpdateRequest updateRequest = new UpdateRequest(); + updateRequest.index(index).type(type).id(id).doc(attrInfoMap); + UpdateResponse result; + try { + result = this.client.update(updateRequest).get(); + } catch (Exception e) { + logger.error(e.getMessage(),e); + return e.getMessage(); + } + return result.getResult().toString(); + } + + /** + * 通过ID获取数据实现 + * + * @param index 索引,类似数据库 + * @param type 类型,类似表 + * @param id 数据ID + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @return Map结构的数据集 + * @author gaoyan + * date 2018-08-28 + */ + @Override + public Map searchDataById(String index, String type, String id, String fields) { + + GetRequestBuilder getRequestBuilder = client.prepareGet(index, type, id); + if (StringUtils.isNotEmpty(fields)) { + getRequestBuilder.setFetchSource(fields.split(","), null); + } + GetResponse getResponse = getRequestBuilder.get(); + return getResponse.getSource(); + } + + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + * @author gaoyan + * date 2018-08-28 + */ + @Override + public List> searchListData(String index, String type, String fields, String matchStr) { + return searchListData(index, type, 0, 0, null, fields, null, false, null, matchStr); + } + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + * @author gaoyan + * date 2018-08-28 + */ + @Override + public List> searchListData(String index, String type, String fields, String sortField, boolean matchPhrase, String matchStr) { + return searchListData(index, type, 0, 0, null, fields, sortField, matchPhrase, null, matchStr); + } + + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称 + * @param size 文档大小限制 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param highlightField 高亮字段 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + @Override + public List> searchListData(String index, String type, Integer size, String fields, String sortField, boolean matchPhrase, String highlightField, String matchStr) { + return searchListData(index, type, 0, 0, size, fields, sortField, matchPhrase, highlightField, matchStr); + } + + + /** + * 使用分词查询 + * + * @param index 索引名称 + * @param type 类型名称 + * @param startTime 开始时间 + * @param endTime 结束时间 + * @param size 文档大小限制 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param highlightField 高亮字段 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + @Override + public List> searchListData(String index, String type, long startTime, long endTime, Integer size, String fields, String sortField, boolean matchPhrase, String highlightField, String matchStr) { + + SearchRequestBuilder searchRequestBuilder = client.prepareSearch(index); + if (StringUtils.isNotEmpty(type)) { + searchRequestBuilder.setTypes(type.split(",")); + } + BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); + + if (startTime > 0 && endTime > 0) { + boolQuery.must(QueryBuilders.rangeQuery("processTime") + .format("epoch_millis") + .from(startTime) + .to(endTime) + .includeLower(true) + .includeUpper(true)); + } + + //搜索的的字段 + if (StringUtils.isNotEmpty(matchStr)) { + for (String s : matchStr.split(",")) { + String[] ss = s.split("="); + if (ss.length > 1) { + if (matchPhrase == Boolean.TRUE) { + boolQuery.must(QueryBuilders.matchPhraseQuery(s.split("=")[0], s.split("=")[1])); + } else { + boolQuery.must(QueryBuilders.matchQuery(s.split("=")[0], s.split("=")[1])); + } + } + + } + } + + // 高亮(xxx=111,aaa=222) + if (StringUtils.isNotEmpty(highlightField)) { + HighlightBuilder highlightBuilder = new HighlightBuilder(); + + //highlightBuilder.preTags("");//设置前缀 + //highlightBuilder.postTags("");//设置后缀 + + // 设置高亮字段 + highlightBuilder.field(highlightField); + searchRequestBuilder.highlighter(highlightBuilder); + } + + + searchRequestBuilder.setQuery(boolQuery); + + if (StringUtils.isNotEmpty(fields)) { + searchRequestBuilder.setFetchSource(fields.split(","), null); + } + searchRequestBuilder.setFetchSource(true); + + if (StringUtils.isNotEmpty(sortField)) { + searchRequestBuilder.addSort(sortField, SortOrder.DESC); + } + + if (size != null && size > 0) { + searchRequestBuilder.setSize(size); + } + + //打印的内容 可以在 Elasticsearch head 和 Kibana 上执行查询 + logger.info("\n{}", searchRequestBuilder); + + SearchResponse searchResponse = searchRequestBuilder.execute().actionGet(); + + long totalHits = searchResponse.getHits().totalHits; + long length = searchResponse.getHits().getHits().length; + + logger.info("共查询到[{}]条数据,处理数据条数[{}]", totalHits, length); + + if (searchResponse.status().getStatus() == 200) { + // 解析对象 + return setSearchResponse(searchResponse, highlightField); + } + + return null; + + } + + /** + * 使用分词查询,并分页 + * + * @param index 索引名称 + * @param type 类型名称,可传入多个type逗号分隔 + * @param currentPage 当前页 + * @param pageSize 每页显示条数 + * @param startTime 开始时间 + * @param endTime 结束时间 + * @param fields 需要显示的字段,逗号分隔(缺省为全部字段) + * @param sortField 排序字段 + * @param matchPhrase true 使用,短语精准匹配 + * @param highlightField 高亮字段 + * @param matchStr 过滤条件(xxx=111,aaa=222) + * @return + */ + @Override + public EsPage searchDataPage(String index, String type, int currentPage, int pageSize, long startTime, long endTime, String fields, String sortField, boolean matchPhrase, String highlightField, String matchStr) { + SearchRequestBuilder searchRequestBuilder = client.prepareSearch(index); + if (StringUtils.isNotEmpty(type)) { + searchRequestBuilder.setTypes(type.split(",")); + } + searchRequestBuilder.setSearchType(SearchType.QUERY_THEN_FETCH); + + // 需要显示的字段,逗号分隔(缺省为全部字段) + if (StringUtils.isNotEmpty(fields)) { + searchRequestBuilder.setFetchSource(fields.split(","), null); + } + + //排序字段 + if (StringUtils.isNotEmpty(sortField)) { + searchRequestBuilder.addSort(sortField, SortOrder.DESC); + } + + BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); + + if (startTime > 0 && endTime > 0) { + boolQuery.must(QueryBuilders.rangeQuery("processTime") + .format("epoch_millis") + .from(startTime) + .to(endTime) + .includeLower(true) + .includeUpper(true)); + } + + // 查询字段 + if (StringUtils.isNotEmpty(matchStr)) { + for (String s : matchStr.split(",")) { + String[] ss = s.split("="); + if (matchPhrase == Boolean.TRUE) { + boolQuery.must(QueryBuilders.matchPhraseQuery(s.split("=")[0], s.split("=")[1])); + } else { + boolQuery.must(QueryBuilders.matchQuery(s.split("=")[0], s.split("=")[1])); + } + } + } + + // 高亮(xxx=111,aaa=222) + if (StringUtils.isNotEmpty(highlightField)) { + HighlightBuilder highlightBuilder = new HighlightBuilder(); + + //highlightBuilder.preTags("");//设置前缀 + //highlightBuilder.postTags("");//设置后缀 + + // 设置高亮字段 + highlightBuilder.field(highlightField); + searchRequestBuilder.highlighter(highlightBuilder); + } + + searchRequestBuilder.setQuery(QueryBuilders.matchAllQuery()); + searchRequestBuilder.setQuery(boolQuery); + + // 分页应用 + searchRequestBuilder.setFrom(currentPage).setSize(pageSize); + + // 设置是否按查询匹配度排序 + searchRequestBuilder.setExplain(true); + + //打印的内容 可以在 Elasticsearch head 和 Kibana 上执行查询 + logger.info("\n{}", searchRequestBuilder); + + // 执行搜索,返回搜索响应信息 + SearchResponse searchResponse = searchRequestBuilder.execute().actionGet(); + + long totalHits = searchResponse.getHits().totalHits; + long length = searchResponse.getHits().getHits().length; + + logger.debug("共查询到[{}]条数据,处理数据条数[{}]", totalHits, length); + + if (searchResponse.status().getStatus() == 200) { + // 解析对象 + List> sourceList = setSearchResponse(searchResponse, highlightField); + + return new EsPage(currentPage, pageSize, (int) totalHits, sourceList); + } + + return null; + + } + + /** + * 高亮结果集 特殊处理 + * + * @param searchResponse + * @param highlightField + */ + @Override + public List> setSearchResponse(SearchResponse searchResponse, String highlightField) { + List> sourceList = new ArrayList>(); + StringBuffer stringBuffer = new StringBuffer(); + + for (SearchHit searchHit : searchResponse.getHits().getHits()) { + searchHit.getSourceAsMap().put("id", searchHit.getId()); + + if (StringUtils.isNotEmpty(highlightField)) { + logger.debug("遍历 高亮结果集,覆盖 正常结果集" + searchHit.getSourceAsMap()); + Text[] text = searchHit.getHighlightFields().get(highlightField).getFragments(); + + if (text != null) { + for (Text str : text) { + stringBuffer.append(str.string()); + } + //遍历 高亮结果集,覆盖 正常结果集 + searchHit.getSourceAsMap().put(highlightField, stringBuffer.toString()); + } + } + sourceList.add(searchHit.getSourceAsMap()); + } + return sourceList; + } + + /** + * Elasticsearch 批量插入接口实现 + * @param index + * @param type + * @param list + * @return + * @author gaoyan + * date 2018-08-27 + */ + @Override + public String addBulkData(String index, String type, List list) { + BulkRequestBuilder bulkRequestBuilder = client.prepareBulk(); + for(int i=0;i> searchListDataAndSort( String[] index,String[] type,String sortfield,String[] fields) { + SearchRequestBuilder searchRequestBuilder = client.prepareSearch(index) + .setTypes(type) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + //设置全文搜索 + //.setQuery(QueryBuilders.matchAllQuery()) + //设置某个field的搜索条件项,此处是模糊搜索;text:mill ,搜索address中含有关键字 mill;text:mill lane,搜索address中含有关键字mill或者lane的 + //.setQuery(QueryBuilders.matchQuery("address","mill lane")) + //使用matchPhraseQuery过程中,当text:mill lane ,搜索address中即含有关键字mill lane,mill lane 词组不会被拆分,作为一个整体当做查询条件。 + .setQuery(QueryBuilders.matchPhraseQuery("address","lane mill")); + //如果需要按照多个字段排序,直接依次添加addSort + //.addSort(sortfield,SortOrder.DESC) + //设置查询数量 + //.setSize(60) + //设置从第几个开始查 + //.setFrom(0) + //设置要查询的字段,fields + //.setFetchSource(fields,null) + /*.setPostFilter(QueryBuilders.rangeQuery("age").from(12).to(18)) // Filter + .setExplain(true);*/ + SearchResponse response = searchRequestBuilder.get(); + List> result = SearchResponseToList(response); + return result; + } + + @Override + public List> searchListDataUnit(String[] index, String[] type, String sortfield, String[] fields) { + SearchRequestBuilder searchRequestBuilder = client.prepareSearch(index) + .setTypes(type) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH); + + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + + //boolQueryBuilder两次.must ,如下,表示address中必须包含lane和mill + //boolQueryBuilder.must(QueryBuilders.matchQuery("address","lane")); + //boolQueryBuilder.must(QueryBuilders.matchQuery("address","mill")); + + //boolQueryBuilder两次.should ,如下,表示address中必须包含lane或者mill + //boolQueryBuilder.should(QueryBuilders.matchQuery("address","lane")); + //boolQueryBuilder.should(QueryBuilders.matchQuery("address","mill")); + + //boolQueryBuilder两次.mustNot ,如下,表示address中必须不能包含lane和mill + //boolQueryBuilder.mustNot(QueryBuilders.matchQuery("address","lane")); + //boolQueryBuilder.mustNot(QueryBuilders.matchQuery("address","mill")); + + //BoolQuerBuilder 可以使用must,should,mustnot 组合使用 + //boolQueryBuilder.mustNot(QueryBuilders.matchQuery("state","ID")); + //boolQueryBuilder.must(QueryBuilders.matchQuery("age",40)); + //boolQueryBuilder.must(QueryBuilders.matchQuery("balance",28969)); + + //boolQueryBuilder.filter中可以添加RangeQueryBuilder,下面注释中两种定义的RangeQueryBuilder是一样的,不同的两种方式 + //RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("balance").from(20000).to(30000).includeLower(true).includeUpper(true); + //RangeQueryBuilder rangeQueryBuilder2 = QueryBuilders.rangeQuery("age").gte(20).lte(23); + //boolQueryBuilder.filter(rangeQueryBuilder); + //boolQueryBuilder.filter(rangeQueryBuilder2); + + searchRequestBuilder.setQuery(boolQueryBuilder); + SearchResponse response = searchRequestBuilder.get(); + List> result = SearchResponseToList(response); + return result; + } + + /** + * 涉及组合查询条件主要涉及到聚合函数的使用,主要是分组求平均值,依靠平均值排序 + * @param index index名称,可以从多个index中查询,所以这里定义成String数组 + * @param type type名称,可以从多种type中查询,所以这里定义成String数组 + * @return + * @author gaoyan + * date 2018-08-29 + */ + @Override + public List> searchListDataGroup(String[] index, String[] type) { + SearchResponse sr = client.prepareSearch(index) + .setTypes(type) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .addAggregation( + //分组依靠关键字terms + AggregationBuilders.terms("by_state") + .field("state.keyword") + .subAggregation( + //分组后求平均值依靠关键字avg,其他具体聚合函数可以参考官网 + // https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/_metrics_aggregations.html + AggregationBuilders.avg("average_balance") + .field("balance") + ) + //分组后的排序方法,分别是聚合函数平均值,分组后统计数据,分组后关键字key,根据需求选择合适的排序 + .order(BucketOrder.aggregation("average_balance",false)) + .order(BucketOrder.count(true)) + .order(BucketOrder.key(true)) + ) + .execute() + .actionGet(); + //分组后得到的数据整合 + StringTerms result = sr.getAggregations().get("by_state"); + List> sourceList = new ArrayList>(); + for (StringTerms.Bucket bucket : result.getBuckets()) { + Map map = new HashMap<>(); + map.put("key",bucket.getKeyAsString()); + map.put("count",bucket.getDocCount()); + Avg avg = bucket.getAggregations().get("average_balance"); + map.put("averagebalance",avg.getValue()); + sourceList.add(map); + } + return sourceList; + } + + /** + * 涉及组合查询条件主要涉及到聚合函数的使用,较为复杂,按照年龄阶段分组后,再安装性别分组,求balance平均值 ranges + * @param index index名称,可以从多个index中查询,所以这里定义成String数组 + * @param type type名称,可以从多种type中查询,所以这里定义成String数组 + * @return + * @author gaoyan + * date 2018-08-29 + */ + @Override + public List> searchListDataGroupComplex(String[] index, String[] type) { + SearchResponse sr = client.prepareSearch(index) + .setTypes(type) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .addAggregation( + //分组依靠关键字range + AggregationBuilders.range("by_age") + .field("age") + .addRange(20,30) + .addRange(30,40) + .addRange(40,50) + .subAggregation( + //分组依靠关键字terms + AggregationBuilders.terms("by_gender") + .field("gender.keyword") + .subAggregation( + //分组后求依靠关键字avg,其他具体聚合函数可以参考官网 + // https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/_metrics_aggregations.html + AggregationBuilders.max("max_balance") + .field("balance") + ) + ) + ) + .execute() + .actionGet(); + //分组后得到的数据整合 + Range result = sr.getAggregations().get("by_age"); + List> sourceList = new ArrayList>(); + for (Range.Bucket bucket : result.getBuckets()) { + Map map = new HashMap<>(); + map.put("key",bucket.getKeyAsString()); + map.put("count",bucket.getDocCount()); + + List> sourcechildList = new ArrayList>(); + StringTerms resultchild = bucket.getAggregations().get("by_gender"); + for (StringTerms.Bucket bucketchild : resultchild.getBuckets()) { + Map childmap = new HashMap<>(); + childmap.put("key",bucketchild.getKeyAsString()); + childmap.put("count",bucketchild.getDocCount()); + Max max = bucketchild.getAggregations().get("max_balance"); + map.put("maxbalance",max.getValue()); + sourcechildList.add(childmap); + } + + map.put("gender",sourcechildList); + sourceList.add(map); + } + return sourceList; + } + + + @Override + public List> SearchResponseToList(SearchResponse searchResponse) { + List> sourceList = new ArrayList>(); + for (SearchHit searchHit : searchResponse.getHits().getHits()) { + searchHit.getSourceAsMap().put("id", searchHit.getId()); + sourceList.add(searchHit.getSourceAsMap()); + } + return sourceList; + } + + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java new file mode 100644 index 00000000..48384407 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -0,0 +1,1396 @@ +package com.adc.da.search.service.impl; + +import com.adc.da.person.dao.PersonSearchEODao; +import com.adc.da.search.entity.SarAdvanceSearchVO; +import com.adc.da.search.entity.SearchListDto; +import com.adc.da.search.entity.SeniorSearchInfoEO; +import com.adc.da.search.service.SearchCenterService; +import com.alibaba.fastjson.JSONArray; +import net.sf.json.JSONObject; +import org.apache.commons.lang.StringUtils; +import org.eclipse.jetty.util.StringUtil; +import org.elasticsearch.action.search.SearchRequestBuilder; +import org.elasticsearch.action.search.SearchResponse; +import org.elasticsearch.action.search.SearchType; +import org.elasticsearch.client.transport.TransportClient; +import org.elasticsearch.common.lucene.search.function.CombineFunction; +import org.elasticsearch.common.lucene.search.function.FieldValueFactorFunction; +import org.elasticsearch.common.text.Text; +import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.QueryBuilder; +import org.elasticsearch.index.query.QueryBuilders; +import org.elasticsearch.index.query.RangeQueryBuilder; +import org.elasticsearch.index.query.functionscore.FieldValueFactorFunctionBuilder; +import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder; +import org.elasticsearch.search.SearchHit; +import org.elasticsearch.search.aggregations.Aggregation; +import org.elasticsearch.search.aggregations.AggregationBuilders; +import org.elasticsearch.search.aggregations.bucket.range.Range; +import org.elasticsearch.search.aggregations.bucket.range.RangeAggregationBuilder; +import org.elasticsearch.search.aggregations.bucket.terms.StringTerms; +import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder; +import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder; +import org.elasticsearch.search.fetch.subphase.highlight.HighlightField; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; + +@Component +public class SearchCenterServiceImpl implements SearchCenterService { + private final org.slf4j.Logger LOGGER = LoggerFactory.getLogger(SearchCenterServiceImpl.class); + + + @Autowired + private TransportClient transportClient; + + private TransportClient client; + + @PostConstruct + public void init() { + client = this.transportClient; + } + + private static final String ISSUE_TIME = "issue_time_data"; + private static final String PUT_TIME = "put_time"; + private static final String EPOCH_MILLIS = "epoch_millis"; + String numbershowStr = "numbershow"; + String nameshowStr = "nameshow"; + String nameshowSplit = "nameshowSplit"; + String numbershowSplit = "numbershowSplit"; + String replacedStandNumStr = "replaced_stand_num"; + String replaceStandNumStr = "replace_stand_num"; + String content = "content"; + + //关键字检索 + @Override + public List> searchSarBykey(SeniorSearchInfoEO searchInfoEO) throws Exception { + //判断是否高级查询 isHight = true(searchInfoEO.getIsHigh()为空)时,证明不是高级查询 + boolean isHight = StringUtils.isBlank(searchInfoEO.getIsHigh()); + List> result = new ArrayList<>(); + SearchRequestBuilder searchRequestBuilder; + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + // 记录搜索记录到数据库中 + BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); + BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); + if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue()) && StringUtils.isBlank(searchInfoEO.getIsHigh())){ + QueryBuilder multiQueryBuilder; + switch (searchInfoEO.getSelectIndex()){ + case "stand": + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standSortShow","standstateshow","countryShow","standEnName", + "synopsis","baseSearchContent",content,"CYSDShow","CLLXShow","standstateshow","ZRLXShow","stand_name","stand_number","citeStand","DTBJH","FGXXSXXXShow","CBBH","YYBJ","XGLC","synopsis","isRelateAccess","GKDWShow","CYSDShow","FBJGShow","ZRLXShow","GXHBQShow","GZZXXName","YQLXShow","FGWHRName","ZRBMShow","XGBMShow","SVPPSName","FOShow","XMPGJSShow","BDTBZBH","BYYBJ","issue_time","ZCCSSRQ","XCXSSRQ","accessCountry").minimumShouldMatch("100%"); + boolQueryMust.must(multiQueryBuilder); + boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("CYSDShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("CLLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZRLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("stand_name", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("DTBJH", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FGXXSXXXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("CBBH", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("YYBJ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("synopsis", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("isRelateAccess", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("GKDWShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("CYSDShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FBJGShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZRLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("GXHBQShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("GZZXXName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("YQLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XCXSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZCCSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("EOPSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FGWHRName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XGBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FOShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XMPGJSShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("accessCountry", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("content", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("BDTBZBH", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("BYYBJ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("stand_number", "*"+searchInfoEO.getSelectValue()+"*")); + break; + case "laws": + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + numbershowSplit,nameshowSplit,nameshowStr,numbershowStr,"numberExpNull","standstateshow","countryShow", "natureShow", "replace_laws_num", + "synopsis","standEnName",replacedStandNumStr,"baseSearchContent",content,"CYSDShow","SYCLLXShow","standstateshow","ZRLXShow","stand_number","isRelateAccess","YQLXShow","SYCLLXShow","GXHBQShow","ZCGCSShow","FBJGShow","SVPPSName","XGBMShow","ZRBMShow","FOShow","GKGLBMShow","WSSFCYShow","replaceLawsNum","replacedLawsNum","XMPGJSShow","issue_time","ZCCSSRQ","XCXSSRQ","EOPSSRQ","XGLC","accessCountry").minimumShouldMatch("100%"); + boolQueryMust.must(multiQueryBuilder); + boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(content, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("CYSDShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("SYCLLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("accessCountry", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZRLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("isRelateAccess", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("YQLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("SYCLLXShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("GXHBQShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XCXSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZCCSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("EOPSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZCGCSShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FBJGShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XGBMShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("ZRBMName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FOShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("GKGLBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("content", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("WSSFCYShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("replaceLawsNum", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("replacedLawsNum", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XMPGJSShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("stand_number", "*"+searchInfoEO.getSelectValue()+"*")); + break; + case "bussstand": + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standstateshow", "standEnName",replaceStandNumStr, + replacedStandNumStr,"countryShow","synopsis","standSortShow","ZQCBMShow","ZQCBM","stand_status", + "baseSearchContent",content,"numbershow","nameshow","standstateshow","issue_time","replaceStandNum","replacedStandNum","QBMJShow","QBSQShow","XHQBMShow","SVPPSName","XGBMName","ZYQCRShow","ZRBMShow","ZQCBMName","QTQCRShow","content","FSRQString","FZRQString","put_time","XGLC","WFSPJSName","GFXYYWJ").minimumShouldMatch("100%"); + boolQueryMust.must(multiQueryBuilder); + boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZQCBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZQCBM", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("stand_status", "*"+searchInfoEO.getSelectValue()+"*")) + + .should(QueryBuilders.wildcardQuery("numbershow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("standEnName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("content", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("nameshow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("replaceStandNum", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("replacedStandNum", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("QBMJShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("QBSQShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XHQBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XGBMName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZYQCRShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("ZQCBMName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("QTQCRShow", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FSRQString", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("FZRQString", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("WFSPJSName", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("GFXYYWJ", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("put_time", "*"+searchInfoEO.getSelectValue()+"*")); + break; + default: break; + } + } + + //在结果中检索 + if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isBlank(searchInfoEO.getIsHigh())) { + QueryBuilder multiQuery = queryInResult(searchInfoEO); + boolQueryBuilder.must(multiQuery); + } + + searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) + .setSize(searchInfoEO.getPageSize()); + boolQueryBuilder.must(QueryBuilders.matchQuery("validFlag", 0)); + if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){ + boolQueryBuilder.should(boolQueryShould); + } + if(searchInfoEO.getSelectIndex().equals("stand")) { + BoolQueryBuilder standBoolQueryBuilder = queryStandMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); + boolQueryBuilder.must(standBoolQueryBuilder); + searchRequestBuilder.setQuery(boolQueryBuilder); + //在结果中检索 + if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isNotBlank(searchInfoEO.getIsHigh())) { + QueryBuilder multiQuery = queryInResult(searchInfoEO); + boolQueryBuilder.must(multiQuery); + } + result = countStandSearchResult(searchRequestBuilder,searchInfoEO); + } else if(searchInfoEO.getSelectIndex().equals("laws")){ + BoolQueryBuilder lawsBoolQueryBuilder = queryLawsMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); + boolQueryBuilder.must(lawsBoolQueryBuilder); + searchRequestBuilder.setQuery(boolQueryBuilder); + //在结果中检索 + if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isNotBlank(searchInfoEO.getIsHigh())) { + QueryBuilder multiQuery = queryInResult(searchInfoEO); + boolQueryBuilder.must(multiQuery); + } + // 获取查询到的结果 + result = countStandSearchResult(searchRequestBuilder,searchInfoEO); + } else if(searchInfoEO.getSelectIndex().equals("bussstand")){ + BoolQueryBuilder bussstandBoolQueryBuilder = queryBussStandMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); + boolQueryBuilder.must(bussstandBoolQueryBuilder); + searchRequestBuilder.setQuery(boolQueryBuilder); + //在结果中检索 + if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isNotBlank(searchInfoEO.getIsHigh())) { + QueryBuilder multiQuery = queryInResult(searchInfoEO); + boolQueryBuilder.must(multiQuery); + } + // 获取查询到的结果 + result = countStandSearchResult(searchRequestBuilder,searchInfoEO); + } + return result; + } + + public BoolQueryBuilder querySeniorMsg (SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder) { + BoolQueryBuilder boolQueryBuilderMust = new BoolQueryBuilder(); + String advanceStr = searchInfoEO.getAdvanceSearchVOStr(); + List searchVOList = new ArrayList<>(); + if (StringUtils.isNotBlank(advanceStr)) { + searchVOList = JSONArray.parseArray(advanceStr, SarAdvanceSearchVO.class); + } + if (searchVOList != null && !searchVOList.isEmpty()) { + List sarAdvanceSearchVOS = new ArrayList<>(); + int size = searchVOList.size(); + for (SarAdvanceSearchVO searchVO1 : searchVOList) { + SarAdvanceSearchVO sarAdvanceSearchVO = new SarAdvanceSearchVO(); + if ("XCXSSRQ".equals(searchVO1.getField())||"ZCCSSRQ".equals(searchVO1.getField())||"EOPSSRQ".equals(searchVO1.getField())){ + sarAdvanceSearchVO.setField(searchVO1.getField()+"1"); + sarAdvanceSearchVO.setConnect("OR"); + sarAdvanceSearchVO.setType("like"); + sarAdvanceSearchVO.setValue("TBD"); + sarAdvanceSearchVOS.add(sarAdvanceSearchVO); + } + } + searchVOList.addAll(sarAdvanceSearchVOS); + for (SarAdvanceSearchVO searchVO : searchVOList) { + if ("stand_state".equals(searchVO.getField())){ + searchVO.setType("="); + } + String field = searchVO.getField(); + String value = searchVO.getValue(); + if ("WFSPJS".equals(field) || "SVPPS".equals(field)){ + value = value.replace(","," , "); + } + //发布时间范围 + if (StringUtils.isNotBlank(searchVO.getField()) &&("issue_time".equals(searchVO.getField()) || "put_time".equals(searchVO.getField()) || "FZRQ".equals(searchVO.getField())|| "FSRQ".equals(searchVO.getField()) ||"XCXSSRQ".equals(searchVO.getField())||"ZCCSSRQ".equals(searchVO.getField())||"EOPSSRQ".equals(searchVO.getField()))) { + String fieldName = ""; + fieldName = searchVO.getField(); + switch (searchVO.getField()){ + case "issue_time" : +// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", "")); + boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword" , "TBD")); + fieldName = ISSUE_TIME; + break; + case "put_time" : +// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", "")); + boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD")); + fieldName = "put_time_data"; + break; + case "XCXSSRQ" : +// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", "")); + boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD")); + fieldName = "XCXSSRQ_data"; + break; + case "ZCCSSRQ" : +// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", "")); + boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD")); + fieldName = "ZCCSSRQ_data"; + break; + case "EOPSSRQ" : +// boolQueryBuilderMust.mustNot(QueryBuilders.matchQuery(field, "已实施")).must(QueryBuilders.existsQuery(field)).mustNot(QueryBuilders.matchQuery(field, "N/A")).mustNot(QueryBuilders.matchQuery(field+".keyword", " ")).mustNot(QueryBuilders.matchQuery(field+".keyword", "")); + boolQueryBuilder.should(QueryBuilders.matchQuery(field + ".keyword", "TBD")); + fieldName = "EOPSSRQ_data"; + break; + default : + break; + } + Long beginTime = 0L; + Long endTime = 0L; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + beginTime = sdf.parse("1970-01-01 00:00:00").getTime(); + } catch (ParseException e1) { + e1.printStackTrace(); + } + try { + endTime = sdf.parse("2999-01-01 00:00:00").getTime(); + } catch (ParseException e1) { + e1.printStackTrace(); + } + Long starttime = 0L; + Long endtime = 0L; + try { + starttime = sdf.parse(searchVO.getTimeSt() +" 00:00:00").getTime(); + starttime--; + } catch (ParseException e) { + try { + starttime = sdf.parse("1970-01-01 00:00:00").getTime(); + } catch (ParseException e1) { + e1.printStackTrace(); + } + } + try { + endtime = sdf.parse(searchVO.getTimeEd()+" 23:59:59").getTime(); + endtime++; + } catch (ParseException e) { + try { + endtime = sdf.parse("2999-01-01 00:00:00").getTime(); + } catch (ParseException e1) { + e1.printStackTrace(); + } + } + if ("=".equals(searchVO.getType()) || "like".equals(searchVO.getType())) { + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(fieldName ).from(starttime).to(endtime).includeLower(true).includeUpper(true); + if ("AND".equals(searchVO.getConnect())|| StringUtils.isBlank(searchVO.getConnect())) { +// RangeQueryBuilder rangeQueryBuilder1 = QueryBuilders.rangeQuery(fieldName ).from(1L).to(starttime).includeLower(true).includeUpper(true); +// RangeQueryBuilder rangeQueryBuilder2 = QueryBuilders.rangeQuery(fieldName ).from(endtime).to(endTime).includeLower(true).includeUpper(true); +// boolQueryBuilder.mustNot(rangeQueryBuilder1); +// boolQueryBuilder.mustNot(rangeQueryBuilder2); +// boolQueryBuilder.mustNot(rangeQueryBuilder3); + boolQueryBuilderMust.must(rangeQueryBuilder); + }else{ + boolQueryBuilder.should(rangeQueryBuilder); + } + }else{ + if ("!=".equals(searchVO.getType())){ + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(fieldName ).from(starttime).to(endtime).includeLower(true).includeUpper(true); + if ("AND".equals(searchVO.getConnect()) || StringUtils.isBlank(searchVO.getConnect())) { + boolQueryBuilder.mustNot(rangeQueryBuilder); + }else{ + boolQueryBuilder.should(rangeQueryBuilder); + } + } + } + continue; + } + if (StringUtil.isNotBlank(field) && StringUtil.isNotBlank(value)) { + String type = searchVO.getType(); + String connect = searchVO.getConnect(); + if ("stand_name".equals(field) || "laws_name".equals(field)) { + field = "nameshow"; + } else if ("stand_state".equals(field) || "laws_state".equals(field) || "stand_status".equals(field)) { + field = "statecode"; +// }else if ("FZRQ".equals(field)){ +// field = "FZRQString"; +// }else if ("FSRQ".equals(field)){ +// field = "FSRQString"; + } + if (("FZRQString".equals(field) || "FSRQString".equals(field))){ + List values = new ArrayList<>(Arrays.asList(value.split("-"))); + if ("=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) { + for (String va :values){ + boolQueryBuilderMust.must(QueryBuilders.wildcardQuery(field, "*"+va+"*")); + } + } else if ("=".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) { + for (String va :values){ + boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+va+"*")); + } +// boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+value+"*")); + } else if ("!=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) { + if ("FSRQString".equals(field)){ + boolQueryBuilder.mustNot(QueryBuilders.matchQuery("FSRQDate", "*"+value.replace("-","")+"*")); + }else{ + boolQueryBuilder.mustNot(QueryBuilders.matchQuery("FZRQDate", "*"+value.replace("-","")+"*")); + } +// boolQueryBuilder.mustNot(QueryBuilders.wildcardQuery(field, "*"+value+"*")); + } else if ("like".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) { + for (String va :values){ + boolQueryBuilderMust.must(QueryBuilders.wildcardQuery(field, "*"+va+"*")); + } +// boolQueryBuilder.must(QueryBuilders.wildcardQuery(field, "*"+value+"*")); + } else if ("like".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) { + for (String va :values){ + boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+va+"*")); + } +// boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, "*"+value+"*")); + } + continue; + } + if ("XCXSSRQ1".equals(searchVO.getField())||"ZCCSSRQ1".equals(searchVO.getField())||"EOPSSRQ1".equals(searchVO.getField())){ + searchVO.setField(searchVO.getField().substring(0,searchVO.getField().length()-1)); + field = searchVO.getField(); + } + //外发审批角色的企标 等于 查询 +// if("WFSPJS".equals(field) && "=".equals(type)){ +// field = "WFSPJSField"; +// if (StringUtils.isNotBlank(value)){ +// value = value.replace(" , ",""); +// } +// } +// if("ZRBM".equals(field) && "=".equals(type)){ +// field = "ZRBMField"; +// if (StringUtils.isNotBlank(value)){ +// value = value.replace(" , ",""); +// } +// } + if ("FO".equals(field)){ + value = value + " "; + } +// if (StringUtils.isBlank(connect) && size > 1){ +// connect = "OR"; +// } + if ("=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) { + boolQueryBuilderMust.must(QueryBuilders.termQuery(field+".keyword", value)); + } else if ("=".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) { + boolQueryBuilder.should(QueryBuilders.termQuery(field+".keyword", value)); + } else if ("!=".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) { +// boolQueryBuilder.mustNot(QueryBuilders.termQuery(field+".keyword", value)); + boolQueryBuilder.mustNot(QueryBuilders.wildcardQuery(field+".keyword", "*"+value+"*")); + } else if ("like".equals(type) && ("AND".equals(connect) || StringUtils.isBlank(connect))) { + boolQueryBuilderMust.must(QueryBuilders.wildcardQuery(field+".keyword", "*"+value+"*")); +// boolQueryBuilder.should(QueryBuilders.wildcardQuery(field, value)); + } else if ("like".equals(type) && ("OR".equals(connect) || StringUtils.isBlank(connect))) { + boolQueryBuilder.should(QueryBuilders.wildcardQuery(field+".keyword", "*"+value+"*")); + } + } + } + } + boolQueryBuilder.should(boolQueryBuilderMust); + return boolQueryBuilder; + } + + //检索国内外标准数据 + public BoolQueryBuilder queryStandMsg(SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder, SearchRequestBuilder searchRequestBuilder) throws Exception{ + String nameshowStr = "nameshow"; + // 高级搜索项,只针对标准 + if (StringUtil.isNotBlank(searchInfoEO.getStandType())) { + // 如果等于All,相当于不限制,查询全部 + boolQueryBuilder.must(QueryBuilders.matchQuery("standType", searchInfoEO.getStandType())); + } + //标准类别,国内外标准有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandSort())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandSort().equals("all") && !searchInfoEO.getStandSort().equals("[]")) { + String[] arrlist = searchInfoEO.getStandSort().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("standSort.keyword", arrlist)); + //boolQueryBuilder.must(QueryBuilders.matchQuery("stand_sort", searchInfoEO.getStandSort())); + } + } + //编号,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandNumber())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery("standNumber", "*"+searchInfoEO.getStandNumber()+"*")); + } + //标准年份 + if (StringUtil.isNotBlank(searchInfoEO.getStandYear())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("standYear", searchInfoEO.getStandYear())); + } + //名称,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getNameShow()+"*")); + } + //标准英文名称 + if (StringUtil.isNotBlank(searchInfoEO.getStandEnName())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("standEnName", searchInfoEO.getStandEnName())); + } + //标准状态,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]") ) { + String[] arrlist = searchInfoEO.getStandState().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("statecode.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getCLLX())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCLLX().equals("all") && !searchInfoEO.getCLLX().equals("[]") ) { + String[] arrlist = searchInfoEO.getCLLX().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("CLLX.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getCYSD())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCYSD().equals("all") && !searchInfoEO.getCYSD().equals("[]") ) { + String[] arrlist = searchInfoEO.getCYSD().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("CYSD.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getCBCD())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCBCD().equals("all") && !searchInfoEO.getCBCD().equals("[]") ) { + String[] arrlist = searchInfoEO.getCBCD().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("CBCD.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getZRLX())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getZRLX().equals("all") && !searchInfoEO.getZRLX().equals("[]") ) { + String[] arrlist = searchInfoEO.getZRLX().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("ZRLX.keyword", arrlist)); + } + } + querySeniorMsg(searchInfoEO,boolQueryBuilder); + return boolQueryBuilder; + } + + //检索国内外政策数据 + public BoolQueryBuilder queryLawsMsg(SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder, SearchRequestBuilder searchRequestBuilder) throws Exception{ + String numbershowStr = "numbershow"; + String nameshowStr = "nameshow"; + String replacedStandNumStr = "replaced_stand_num"; + String replaceStandNumStr = "replace_stand_num"; + //国家,国内外标准,国内外法规有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getCountry())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCountry().equals("all") && !searchInfoEO.getCountry().equals("[]")) { +// String[] arrlist = searchInfoEO.getCountry().split(","); +// boolQueryBuilder.must(QueryBuilders.termsQuery("country.keyword", arrlist)); + boolQueryBuilder.must(QueryBuilders.matchQuery("country", searchInfoEO.getCountry())); + } + } + //标准性质,国内外标准,法规有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNature())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getNature().equals("all") && !searchInfoEO.getNature().equals("[]")) { + String[] arrlist = searchInfoEO.getNature().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("nature.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getSYCLLX())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getSYCLLX().equals("all") && !searchInfoEO.getSYCLLX().equals("[]") ) { + String[] arrlist = searchInfoEO.getSYCLLX().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("SYCLLX.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getWSSFCY())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getWSSFCY().equals("all") && !searchInfoEO.getWSSFCY().equals("[]") ) { + String[] arrlist = searchInfoEO.getWSSFCY().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("WSSFCY.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getCBCD())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCBCD().equals("all") && !searchInfoEO.getCBCD().equals("[]") ) { + String[] arrlist = searchInfoEO.getCBCD().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("CBCD.keyword", arrlist)); + } + } + if (StringUtil.isNotBlank(searchInfoEO.getZRLX())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getZRLX().equals("all") && !searchInfoEO.getZRLX().equals("[]") ) { + String[] arrlist = searchInfoEO.getZRLX().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("ZRLX.keyword", arrlist)); + } + } + //编号,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNumberShow())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getNumberShow()+"*")); + } + //名称,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getNameShow()+"*")); + } + //发布部门 + if (StringUtil.isNotBlank(searchInfoEO.getIssueUnit())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("issueUnit", searchInfoEO.getIssueUnit())); + } + //文件状态,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]")) { + String[] arrlist = searchInfoEO.getStandState().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("statecode.keyword", arrlist)); + //boolQueryBuilder.must(QueryBuilders.matchQuery("statecode", searchInfoEO.getStandState())); + } + } + //代替文件号 + if (StringUtil.isNotBlank(searchInfoEO.getReplaceStandNum())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("replace_laws_num", searchInfoEO.getReplaceStandNum())); + } + //适用车型,国内外标准,国内外法规,企业标准 有此属性 录入可多选 + if (StringUtil.isNotBlank(searchInfoEO.getApplyArctic())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getApplyArctic().equals("all") && !searchInfoEO.getApplyArctic().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("apply_arctic", searchInfoEO.getApplyArctic())); + } + } + //能源种类,国内外标准,国内外法规,企业标准 有此属性 录入可多选 + if (StringUtil.isNotBlank(searchInfoEO.getEnergyKind())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getEnergyKind().equals("all") && !searchInfoEO.getEnergyKind().equals("[]") ) { + boolQueryBuilder.must(QueryBuilders.matchQuery("energy_kind", searchInfoEO.getEnergyKind())); + } + } + //适用认证,国内外标准,国内外法规 有此属性 录入可多选 + if (StringUtil.isNotBlank(searchInfoEO.getApplyAuth())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getApplyAuth().equals("all") && !searchInfoEO.getApplyAuth().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("apply_auth", searchInfoEO.getApplyAuth())); + } + } + //责任部门 + if (StringUtil.isNotBlank(searchInfoEO.getResponsibleUnit())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("responsibleUnit", searchInfoEO.getResponsibleUnit())); + } + //发布日期 + if (searchInfoEO.getIssueTime() != null) { + Long starttime = searchInfoEO.getIssueTime().getTime(); + Long endtime = searchInfoEO.getIssueTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //实施日期,国内外标准,国内外法规,企业标准 有此属性 + if (searchInfoEO.getPutTime() != null) { + Long starttime = searchInfoEO.getPutTime().getTime(); + Long endtime = searchInfoEO.getPutTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("put_time").format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //内容摘要 + if (StringUtil.isNotBlank(searchInfoEO.getSynopsis())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("synopsis", searchInfoEO.getSynopsis())); + } + //标准英文名称 + if (StringUtil.isNotBlank(searchInfoEO.getStandEnName())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("standEnName", searchInfoEO.getStandEnName())); + } + //新定型车实施日期 + if (searchInfoEO.getNewcarPutTime() != null) { + Long starttime = searchInfoEO.getNewcarPutTime().getTime(); + Long endtime = searchInfoEO.getNewcarPutTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("newcarPutTime").format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //在产车实施日期 + if (searchInfoEO.getProductPutTime() != null) { + Long starttime = searchInfoEO.getProductPutTime().getTime(); + Long endtime = searchInfoEO.getProductPutTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("productPutTime").format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //新生产车实施日期 + if (searchInfoEO.getNewproductPutTime() != null) { + Long starttime = searchInfoEO.getNewproductPutTime().getTime(); + Long endtime = searchInfoEO.getNewproductPutTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("newproductPutTime").format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //新生产车实施日期 + if (searchInfoEO.getRegisterPutTime() != null) { + Long starttime = searchInfoEO.getRegisterPutTime().getTime(); + Long endtime = searchInfoEO.getRegisterPutTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("registerPutTime").format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //被代替标准号 + if (StringUtil.isNotBlank(searchInfoEO.getReplacedStandNum())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(replacedStandNumStr, searchInfoEO.getReplacedStandNum())); + } + //关键词 + if (StringUtil.isNotBlank(searchInfoEO.getTags())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("standTag", searchInfoEO.getTags())); + } + //所属类别,国内外标准, 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getCategory())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCategory().equals("all") && !searchInfoEO.getCategory().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("category", searchInfoEO.getCategory())); + } + } + //发布时间范围 + if (searchInfoEO.getIssueTimeSt() != null || searchInfoEO.getIssueTimeEd() != null) { + Long starttime = 0L; + Long endtime = 0L; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (searchInfoEO.getIssueTimeSt() != null) { + starttime = searchInfoEO.getIssueTimeSt().getTime(); + } else { + starttime = sdf.parse("1970-01-01 00:00:00").getTime(); + } + if (searchInfoEO.getIssueTimeEd() != null) { + endtime = searchInfoEO.getIssueTimeEd().getTime(); + } else { + endtime = sdf.parse("2999-01-01 00:00:00").getTime(); + } + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + if (searchInfoEO.getPutTimeSt() != null || searchInfoEO.getPutTimeEd() != null) { + Long starttime = 0L; + Long endtime = 0L; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (searchInfoEO.getPutTimeSt() != null) { + starttime = searchInfoEO.getPutTimeSt().getTime(); + } else { + starttime = sdf.parse("1970-01-01 00:00:00").getTime(); + } + if (searchInfoEO.getPutTimeEd() != null) { + endtime = searchInfoEO.getPutTimeEd().getTime(); + } else { + endtime = sdf.parse("2999-01-01 00:00:00").getTime(); + } + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(PUT_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + querySeniorMsg(searchInfoEO,boolQueryBuilder); + return boolQueryBuilder; + } + + //检索企业标准数据 + /** + * boolQueryBuilder :must + * */ + public BoolQueryBuilder queryBussStandMsg(SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder, SearchRequestBuilder searchRequestBuilder) throws Exception{ + String nameshowStr = "nameshow"; + String replacedStandNumStr = "replaced_stand_num"; + String replaceStandNumStr = "replace_stand_num"; + // 高级搜索项,只针对标准 + //分类代号 + if (StringUtil.isNotBlank(searchInfoEO.getClassifyCode())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("classifyCode", searchInfoEO.getClassifyCode())); + } + //编号,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandNumber())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery("standNumber", "*"+searchInfoEO.getStandNumber()+"*")); + } + //名称,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getNameShow()+"*")); + } + //标准英文名称 + if (StringUtil.isNotBlank(searchInfoEO.getStandEnName())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("standEnName", searchInfoEO.getStandEnName())); + } + if (searchInfoEO.getPutYear() != null && StringUtils.isNotEmpty(searchInfoEO.getPutYear())) { + boolQueryBuilder.must(QueryBuilders.wildcardQuery("putYear", "*"+searchInfoEO.getPutYear()+"*")); + } + //代替标准号 + if (StringUtil.isNotBlank(searchInfoEO.getReplaceStandNum())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(replaceStandNumStr, searchInfoEO.getReplaceStandNum())); + } + //主起草部门 + if (StringUtil.isNotBlank(searchInfoEO.getZQCBM())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("ZQCBM", searchInfoEO.getZQCBM())); + } + //被代替标准号 + if (StringUtil.isNotBlank(searchInfoEO.getReplacedStandNum())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(replacedStandNumStr, searchInfoEO.getReplacedStandNum())); + } + //标准状态,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]")) { + String[] arrlist = searchInfoEO.getStandState().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("statecode.keyword", arrlist)); + //boolQueryBuilder.must(QueryBuilders.matchQuery("statecode", searchInfoEO.getStandState())); + } + } + //发布日期 + if (searchInfoEO.getIssueTime() != null) { + Long starttime = searchInfoEO.getIssueTime().getTime(); + Long endtime = searchInfoEO.getIssueTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //实施日期,国内外标准,国内外法规,企业标准 有此属性 + if (searchInfoEO.getPutTime() != null) { + Long starttime = searchInfoEO.getPutTime().getTime(); + Long endtime = searchInfoEO.getPutTime().getTime(); + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery("put_time").format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + //国家,国内外标准,国内外法规有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getCountry())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCountry().equals("all") && !searchInfoEO.getCountry().equals("[]") ) { + String[] arrlist = searchInfoEO.getCountry().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("country.keyword", arrlist)); + } + } + //标准类别,国内外标准有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandSort())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandSort().equals("all")&& !searchInfoEO.getStandSort().equals("[]")) { + String[] arrlist = searchInfoEO.getStandSort().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("stand_sort.keyword", arrlist)); + //boolQueryBuilder.must(QueryBuilders.matchQuery("stand_sort", searchInfoEO.getStandSort())); + } + } + //发布时间范围 + if (searchInfoEO.getIssueTimeSt() != null || searchInfoEO.getIssueTimeEd() != null) { + Long starttime = 0L; + Long endtime = 0L; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (searchInfoEO.getIssueTimeSt() != null) { + starttime = searchInfoEO.getIssueTimeSt().getTime(); + } else { + starttime = sdf.parse("1970-01-01 00:00:00").getTime(); + } + if (searchInfoEO.getIssueTimeEd() != null) { + endtime = searchInfoEO.getIssueTimeEd().getTime(); + } else { + endtime = sdf.parse("2999-01-01 00:00:00").getTime(); + } + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + if (searchInfoEO.getPutTimeSt() != null || searchInfoEO.getPutTimeEd() != null) { + Long starttime = 0L; + Long endtime = 0L; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (searchInfoEO.getPutTimeSt() != null) { + starttime = searchInfoEO.getPutTimeSt().getTime(); + } else { + starttime = sdf.parse("1970-01-01 00:00:00").getTime(); + } + if (searchInfoEO.getPutTimeEd() != null) { + endtime = searchInfoEO.getPutTimeEd().getTime(); + } else { + endtime = sdf.parse("2999-01-01 00:00:00").getTime(); + } + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(PUT_TIME).format(EPOCH_MILLIS).from(starttime).to(endtime).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + querySeniorMsg(searchInfoEO,boolQueryBuilder); + return boolQueryBuilder; + } + + //结果中检索 + public QueryBuilder queryInResult(SeniorSearchInfoEO searchInfoEO){ + // 记录搜索记录到数据库中 + QueryBuilder multiQueryBuilder = QueryBuilders.multiMatchQuery(""); + switch (searchInfoEO.getSelectIndex()){ + case "stand": + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standSortShow","standstateshow","countryShow","standEnName", + "synopsis","baseSearchContent",content,"CYSDShow","CLLXShow","standstateshow","ZRLXShow","stand_name","stand_number","citeStand","DTBJH","FGXXSXXXShow","CBBH","YYBJ","XGLC","synopsis","isRelateAccess","GKDWShow","CYSDShow","FBJGShow","ZRLXShow","GXHBQShow","GZZXXName","YQLXShow","FGWHRName","ZRBMName","XGBMShow","SVPPSName","FOShow","XMPGJSShow","BDTBZBH","BYYBJ","issue_time","ZCCSSRQ","XCXSSRQ","EOPSSRQ").minimumShouldMatch("100%"); + break; + case "laws": + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + numbershowSplit,nameshowSplit,nameshowStr,numbershowStr,"numberExpNull","standstateshow","countryShow", "natureShow", "replace_laws_num", + "synopsis","standEnName",replacedStandNumStr,"baseSearchContent",content,"CYSDShow","SYCLLXShow","standstateshow","ZRLXShow","stand_number","isRelateAccess","YQLXShow","SYCLLXShow","GXHBQShow","ZCGCSShow","FBJGShow","SVPPSName","XGBMShow","ZRBMShow","FOShow","GKGLBMShow","WSSFCYShow","replaceLawsNum","replacedLawsNum","XMPGJSShow","issue_time","ZCCSSRQ","XCXSSRQ","EOPSSRQ","XGLC").minimumShouldMatch("100%"); + break; + case "bussstand": + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standstateshow", "standEnName",replaceStandNumStr, + replacedStandNumStr,"countryShow","synopsis","standSortShow","ZQCBMShow","ZQCBM","stand_status", + "baseSearchContent",content,"numbershow","nameshow","standstateshow","issue_time","replaceStandNum","replacedStandNum","QBMJShow","QBSQShow","XHQBMShow","SVPPSName","XGBMName","ZYQCRShow","ZRBMShow","ZQCBMName","QTQCRShow","content","FSRQString","FZRQString","put_time","XGLC","WFSPJSName").minimumShouldMatch("100%"); + break; + default: break; + } + return multiQueryBuilder; + } + + /** + * @Author yangxuenan + * @Description 循环统计 + * Date 2018/12/21 10:16 + * @Param [searchRequestBuilder, searchInfoEO] + * @return void + **/ + public List> countStandSearchResult(SearchRequestBuilder searchRequestBuilder, SeniorSearchInfoEO searchInfoEO){ + List> result = new ArrayList<>(); + // 循环统计各种类型数据 + String[] seniortype; + if("stand".equals(searchInfoEO.getSelectIndex())) { + String[] seniortypeStand = {"standSort", "statecode","CYSD","ZRLX","CLLX","CBCD"}; + seniortype = seniortypeStand.clone(); + } else if("laws".equals(searchInfoEO.getSelectIndex())){ + String[] seniortypeLaws = {"country","statecode","SYCLLX","ZRLX","WSSFCY"}; + seniortype = seniortypeLaws.clone(); + } else if ("bussstand".equals(searchInfoEO.getSelectIndex())) { + String[] seniortypeBuss = {"statecode","ZQCBM"}; + seniortype = seniortypeBuss.clone(); + } else { + String[] seniortypeMsg = {"module"}; + seniortype = seniortypeMsg.clone(); + } + Map map = new HashMap<>(); + for (int i = 0; i < seniortype.length; i++) { + //分组依靠关键字terms + TermsAggregationBuilder aggregationBuilders = AggregationBuilders.terms("by_" + seniortype[i]).field(seniortype[i] + ".keyword").size(1000); + searchRequestBuilder.addAggregation(aggregationBuilders); + } + // 获取查询到的结果 + SearchResponse response = searchRequestBuilder.get(); + result = SearchResponseToList(response); + searchInfoEO.getPager().setRowCount((int) response.getHits().getTotalHits()); + Map aggmap = response.getAggregations().asMap(); + if (!result.isEmpty()) { + for (int i = 0; i < seniortype.length; i++) { + //分组后得到的数据整合 + Object results = aggmap.get("by_" + seniortype[i]); + if(results instanceof StringTerms){ + StringTerms stResult = (StringTerms) results; + Map submap = new HashMap<>(); + for (StringTerms.Bucket bucket : stResult.getBuckets()) { + // 多选处理,当前全部允许多选 + String keyname = bucket.getKeyAsString(); + String[] keynamelist = keyname.split(","); + // 对于属性允许多选,此处做出处理 + if(keynamelist.length>0){ + for (String itemkeyname: keynamelist){ + // put 之前判断是否已存在该key ,如果不存在,直接放入值,如果存在,需要进行一个累加 + if(submap.containsKey(itemkeyname)){ + submap.put(itemkeyname, (long)submap.get(itemkeyname)+ bucket.getDocCount()); + } + else { + submap.put(itemkeyname, bucket.getDocCount()); + } + } + } + else { + if(submap.containsKey(keyname)){ + submap.put(keyname, (long)submap.get(keyname)+ bucket.getDocCount()); + } + else { + submap.put(keyname, bucket.getDocCount()); + } + } + } + map.put(seniortype[i], submap); + } + else{ + Map submap = new HashMap<>(); + map.put(seniortype[i], submap); + } + + } + result.get(0).put("groupdata", map); + } + return result; + } + + @Override + public List> SearchResponseToList(SearchResponse searchResponse) { + List> sourceList = new ArrayList>(); + for (SearchHit searchHit : searchResponse.getHits().getHits()) { + searchHit.getSourceAsMap().put("id", searchHit.getId()); + sourceList.add(searchHit.getSourceAsMap()); + } + return sourceList; + } + + @Override + public Map selectGroupdata(SeniorSearchInfoEO searchInfoEO){ + // 按标准性质统计 + String []index={"stand","bussstand","laws"}; + String []seniortype = {"country","stand_sort","energy_kind","adopt_extent","statecode"}; + Map map = new HashMap<>(); + for(int i=0;i submap = new HashMap<>(); + for (StringTerms.Bucket bucket : result.getBuckets()) { + submap.put(bucket.getKeyAsString(),bucket.getDocCount()); + } + map.put(seniortype[i],submap); + } + return map; + } + + @Override + public String [] searchIdToImport(SeniorSearchInfoEO searchInfoEO) { + List> result = new ArrayList<>(); + SearchRequestBuilder searchRequestBuilder; + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + String numbershowStr = "numbershow"; + String nameshowStr = "nameshow"; + String replacedStandNumStr = "replaced_stand_num"; + String replaceStandNumStr = "replace_stand_num"; + if(StringUtil.isNotBlank(searchInfoEO.getSelectKey())){ + switch (searchInfoEO.getSelectKey()){ + // 修改过后,前台不会传 all + case "all": + boolQueryBuilder.should(QueryBuilders.matchPhraseQuery(numbershowStr,searchInfoEO.getSelectValue())); + boolQueryBuilder.should(QueryBuilders.matchQuery(nameshowStr,searchInfoEO.getSelectValue())); + boolQueryBuilder.should(QueryBuilders.matchQuery("standstateshow",searchInfoEO.getSelectValue())); + boolQueryBuilder.should(QueryBuilders.matchQuery("lawsstateshow",searchInfoEO.getSelectValue())); + boolQueryBuilder.should(QueryBuilders.matchQuery("applyarcticshow",searchInfoEO.getSelectValue())); + break; + case "standNumber": + case "lawsNumber": + case "bussstandsNumber": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())){ + boolQueryBuilder.must(QueryBuilders.matchPhraseQuery(numbershowStr,searchInfoEO.getSelectValue())); + } + break; + case "standName": + case "lawsName": + case "bussstandName": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(nameshowStr, searchInfoEO.getSelectValue())); + } + break; + case "standState": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("standstateshow", searchInfoEO.getSelectValue())); + } + break; + case "standFile": + //标准正文 暂缺 + break; + case "applyArctic": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("applyarcticshow", searchInfoEO.getSelectValue())); + } + break; + case "issueTime": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(searchInfoEO.getSelectStartTime().getTime()).to(searchInfoEO.getSelectEndTime().getTime()).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilder); + } + break; + case "putTime": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + RangeQueryBuilder rangeQueryBuilders = QueryBuilders.rangeQuery("put_time").format(EPOCH_MILLIS).from(searchInfoEO.getSelectStartTime().getTime()).to(searchInfoEO.getSelectEndTime().getTime()).includeLower(true).includeUpper(true); + boolQueryBuilder.filter(rangeQueryBuilders); + } + break; + case "draftUser": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("draft_user", searchInfoEO.getSelectValue())); + } + break; + case "draftingUnit": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("drafting_unit", searchInfoEO.getSelectValue())); + } + break; + case "replaceStandNum": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(replaceStandNumStr, searchInfoEO.getSelectValue())); + } + break; + case "replacedStandNum": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(replacedStandNumStr, searchInfoEO.getSelectValue())); + } + break; + case "msgTitle": + if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + boolQueryBuilder.must(QueryBuilders.matchQuery("title", searchInfoEO.getSelectValue())); + } + break; + default:break; + } + } + searchRequestBuilder = client.prepareSearch(searchInfoEO.getSelectIndex()) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .setFrom(0).setSize(10000); + + boolQueryBuilder.must(QueryBuilders.matchQuery("validFlag", 0)); + + if(searchInfoEO.getSelectIndex().equals("stand")) { + // 高级搜索项,只针对标准 + //标准性质,国内外标准,法规有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNature())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getNature().equals("all") && !searchInfoEO.getNature().equals("[]")) { + String[] arrlist = searchInfoEO.getNature().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("nature.keyword", arrlist)); + } + } + //国家,国内外标准,国内外法规有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getCountry())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCountry().equals("all") && !searchInfoEO.getCountry().equals("[]")) { + String[] arrlist = searchInfoEO.getCountry().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("country.keyword", arrlist)); + } + } + //标准类别,国内外标准有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandSort())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandSort().equals("all") && !searchInfoEO.getStandSort().equals("[]")) { + String[] arrlist = searchInfoEO.getStandSort().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("stand_sort.keyword", arrlist)); + } + } + //编号,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNumberShow())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(numbershowStr, searchInfoEO.getNumberShow())); + } + //名称,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + boolQueryBuilder.must(QueryBuilders.matchQuery(nameshowStr, searchInfoEO.getNameShow())); + } + //适用认证,国内外标准,国内外法规,企业标准 有此属性 录入可多选 + if (StringUtil.isNotBlank(searchInfoEO.getApplyArctic())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getApplyArctic().equals("all") && !searchInfoEO.getApplyArctic().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("apply_arctic", searchInfoEO.getApplyArctic())); + } + } + + //认证类型,国内外标准,国内外法规 有此属性 录入可多选 + if (StringUtil.isNotBlank(searchInfoEO.getApplyAuth())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getApplyAuth().equals("all") && !searchInfoEO.getApplyAuth().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("apply_auth", searchInfoEO.getApplyAuth())); + } + } + //所属类别,国内外标准, 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getCategory())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getCategory().equals("all") && !searchInfoEO.getCategory().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("category", searchInfoEO.getCategory())); + } + } + //能源种类,国内外标准,国内外法规,企业标准 有此属性 录入可多选 + if (StringUtil.isNotBlank(searchInfoEO.getEnergyKind())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getEnergyKind().equals("all") && !searchInfoEO.getEnergyKind().equals("[]")) { + boolQueryBuilder.must(QueryBuilders.matchQuery("energy_kind", searchInfoEO.getEnergyKind())); + } + } + //采标程度,国内外标准, 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getAdoptExtent())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getAdoptExtent().equals("all") && !searchInfoEO.getAdoptExtent().equals("[]")) { + /*String[] arrlist = searchInfoEO.getAdoptExtent().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("adopt_extent", arrlist));*/ + boolQueryBuilder.must(QueryBuilders.matchQuery("adopt_extent", searchInfoEO.getAdoptExtent())); + } + } + //标准状态,国内外标准,国内外法规,企业标准 有此属性 + if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + // 如果等于All,相当于不限制,查询全部 + if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]")) { + /*String[] arrlist = searchInfoEO.getStandState().split(","); + boolQueryBuilder.must(QueryBuilders.termsQuery("stateCode", arrlist));*/ + boolQueryBuilder.must(QueryBuilders.matchQuery("statecode", searchInfoEO.getStandState())); + } + } + } + searchRequestBuilder.setQuery(boolQueryBuilder); + // 获取查询到的结果 + SearchResponse response = searchRequestBuilder.get(); + result = SearchResponseToList(response); + String [] resultid = new String[result.size()]; + for(int i=0;i item = result.get(i); + resultid[i] = item.get("id").toString(); + } + return resultid; + } + + @Override + public List> searchSarBykeyAndHighLight(SeniorSearchInfoEO searchInfoEO) throws Exception { +// if () + List> result = new ArrayList<>(); + SearchRequestBuilder searchRequestBuilder; + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + // 记录搜索记录到数据库中 + if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){ + QueryBuilder multiQueryBuilder = QueryBuilders.multiMatchQuery(""); + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), + "title","textContent","issue_time" + ).minimumShouldMatch("100%").field("title",10f); + boolQueryBuilder.must(multiQueryBuilder); +// boolQueryBuilder.should() + } + //在结果中检索 + if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword())) { + QueryBuilder multiQuery = queryInResult(searchInfoEO); + boolQueryBuilder.must(multiQuery); + } + HighlightBuilder hiBuilder=new HighlightBuilder(); + HighlightBuilder.Field highlightTitle = new HighlightBuilder.Field("title"); + hiBuilder.field(highlightTitle); + HighlightBuilder.Field highlightUser = new HighlightBuilder.Field("textContent"); + hiBuilder.field(highlightUser); + HighlightBuilder.Field highlightDate = new HighlightBuilder.Field("issue_time"); + hiBuilder.field(highlightDate); + hiBuilder.preTags(""); + hiBuilder.postTags(""); + searchRequestBuilder = client.prepareSearch("fulltextserch") + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .highlighter(hiBuilder) + .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) + .setSize(searchInfoEO.getPageSize()); + + // boolQueryBuilder.must(QueryBuilders.matchQuery("valid_flag", 0)); +// boolQueryBuilder.should(boolQueryBuilderShould); + searchRequestBuilder.setQuery(boolQueryBuilder); + // 获取查询到的结果 + SearchResponse response = searchRequestBuilder.get(); + for (SearchHit searchHit : response.getHits().getHits()) { + searchHit.getSourceAsMap().put("id", searchHit.getId()); + Map sourceAsMap = searchHit.getSourceAsMap(); + //解析高亮字段 + Map highlightFields = searchHit.getHighlightFields(); + HighlightField field= highlightFields.get("title"); + if(field!= null){ + Text[] fragments = field.fragments(); + String n_field = ""; + for (Text fragment : fragments) { + n_field += fragment; + } + //高亮标题覆盖原标题 + sourceAsMap.put("title",n_field); + } + + Map highlightFieldsnameshowStr = searchHit.getHighlightFields(); + HighlightField fieldnameshowStr= highlightFieldsnameshowStr.get("textContent"); + if(fieldnameshowStr!= null){ + Text[] fragments = fieldnameshowStr.fragments(); + String n_field = ""; + for (Text fragment : fragments) { + n_field += fragment; + } + //高亮标题覆盖原标题 + sourceAsMap.put("textContent",n_field); + } + //发布日期添加高亮 +// Map highlightFieldsDatehowStr = searchHit.getHighlightFields(); +// HighlightField fieldDateshowStr= highlightFieldsDatehowStr.get("issue_time"); +// if(fieldDateshowStr!= null){ +// Text[] fragments = fieldDateshowStr.fragments(); +// String n_field = ""; +// for (Text fragment : fragments) { +// n_field += fragment; +// } +// //高亮标题覆盖原标题 +// sourceAsMap.put("issue_time",n_field); +// } + result.add(sourceAsMap); + } + searchInfoEO.getPager().setRowCount((int) response.getHits().getTotalHits()); + return result; + } + + + @Override + public List> searchSarBykeyAndHighLightNumber(SeniorSearchInfoEO searchInfoEO) throws Exception { + String real = searchInfoEO.getSelectValue(); + String[] values = searchInfoEO.getSelectValue().split(" "); + String value = ""; + String select = ""; + int i = 0; + for (String v: values){ + if(i==0) { + value = v; + }else{ + select = select + " " + v; + } + i++; + } + searchInfoEO.setSelectValue(select); + List> result = new ArrayList<>(); + SearchRequestBuilder searchRequestBuilder; + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + // 记录搜索记录到数据库中 + BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); + BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); + QueryBuilder multiQueryBuilder; + multiQueryBuilder = QueryBuilders.multiMatchQuery(value, + "title","textContent","issue_time").minimumShouldMatch("100%").field("title",1f); + boolQueryMust.must(multiQueryBuilder); + boolQueryShould.should(QueryBuilders.wildcardQuery("title", "*"+searchInfoEO.getSelectValue()+"*").boost(10f)) + .should(QueryBuilders.wildcardQuery("textContent", "*"+searchInfoEO.getSelectValue()+"*")) + .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) + .should(multiQueryBuilder); + boolQueryBuilder.should(boolQueryShould); + //在结果中检索 +// boolQueryBuilder.must(multiQueryBuilder); + HighlightBuilder hiBuilder=new HighlightBuilder(); + HighlightBuilder.Field highlightTitle = new HighlightBuilder.Field("title"); + hiBuilder.field(highlightTitle); + HighlightBuilder.Field highlightUser = new HighlightBuilder.Field("textContent"); + hiBuilder.field(highlightUser); + HighlightBuilder.Field highlightDate = new HighlightBuilder.Field("issue_time"); + hiBuilder.field(highlightDate); + hiBuilder.preTags(""); + hiBuilder.postTags(""); + searchRequestBuilder = client.prepareSearch("fulltextserch") + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .highlighter(hiBuilder) + .setFrom((searchInfoEO.getPage()-1)*searchInfoEO.getPageSize()) + .setSize(searchInfoEO.getPageSize()); + + searchRequestBuilder.setQuery(boolQueryBuilder); + // 获取查询到的结果 + SearchResponse response = searchRequestBuilder.get(); + for (SearchHit searchHit : response.getHits().getHits()) { + searchHit.getSourceAsMap().put("id", searchHit.getId()); + Map sourceAsMap = searchHit.getSourceAsMap(); + //解析高亮字段 + Map highlightFields = searchHit.getHighlightFields(); + HighlightField field= highlightFields.get("title"); + if(field!= null){ + Text[] fragments = field.fragments(); + String n_field = ""; + for (Text fragment : fragments) { + n_field += fragment; + } + //高亮标题覆盖原标题 + sourceAsMap.put("title",n_field); + } + + Map highlightFieldsnameshowStr = searchHit.getHighlightFields(); + HighlightField fieldnameshowStr= highlightFieldsnameshowStr.get("textContent"); + if(fieldnameshowStr!= null){ + Text[] fragments = fieldnameshowStr.fragments(); + String n_field = ""; + for (Text fragment : fragments) { + n_field += fragment; + } + //高亮标题覆盖原标题 + sourceAsMap.put("textContent",n_field); + } + result.add(sourceAsMap); + } + searchInfoEO.getPager().setRowCount((int) response.getHits().getTotalHits()); + return result; + } +} + + + +// multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), +// numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standstateshow", "standEnName",replaceStandNumStr, +// replacedStandNumStr,"countryShow","synopsis","standSortShow","putYear","firstPutTime","ZQCBMShow","ZQCBM","stand_status", +// "baseSearchContent",content,"numbershow","nameshow","standstateshow","issue_time","FORMENDTIME","replaceStandNum","replacedStandNum","QBMJ","QBSQShow","XHQBMShow","SVPPSName","XGBMName","ZYQCRShow","ZRBMShow","ZQCBMName","QTQCRShow","XGLC").minimumShouldMatch("100%"); +// boolQueryMust.must(multiQueryBuilder); +// boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("ZQCBMShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("ZQCBM", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("stand_status", "*"+searchInfoEO.getSelectValue()+"*")) +// +// .should(QueryBuilders.wildcardQuery("numbershow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("nameshow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("FORMENDTIME", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("replaceStandNum", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("replacedStandNum", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("QBMJ", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("QBSQShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("XHQBMShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("XGBMName", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("ZYQCRShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("ZQCBMName", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("QTQCRShow", "*"+searchInfoEO.getSelectValue()+"*")) +// .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java new file mode 100644 index 00000000..e7151d52 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java @@ -0,0 +1,490 @@ +package com.adc.da.search.service.impl; + +import com.adc.da.search.entity.FullTextSearchEO; +import com.adc.da.search.entity.StandLawsEO; +import com.adc.da.search.service.ElasticsearchService; +import com.adc.da.search.service.StandLawsSearchService; +import com.adc.da.util.utils.DateUtils; +import com.adc.da.util.utils.StringUtils; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import org.elasticsearch.client.transport.TransportClient; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +@Component +public class StandLawsSearchServiceImpl implements StandLawsSearchService { + private static final Logger logger = LoggerFactory.getLogger(StandLawsSearchServiceImpl.class); + + + @Autowired + private TransportClient transportClient; + + private TransportClient client; + + @PostConstruct + public void init() { + client = this.transportClient; + } + + @Autowired + private ElasticsearchService elasticsearchService; + + @Override + public String addStandLawsSearch(StandLawsEO standLawsEO) { + String indexstate = ""; + //if(elasticsearchService.isIndexExist(standLawsEO.getType())){ + indexstate = elasticsearchService.addData((JSONObject) JSON.toJSON(standLawsEO),standLawsEO.getType(),standLawsEO.getType(),standLawsEO.getId()); + // 方便全文检索,重新建索引 + FullTextSearchEO fullTextSearchEO =getFullTextSearch(standLawsEO); + indexstate = elasticsearchService.addData((JSONObject) JSON.toJSON(fullTextSearchEO),"fulltextserch","fulltextserch",fullTextSearchEO.getId()); + return indexstate; + } + + @Override + public String addStandLawsSearchForMap(Map attrInfoMap) { + String indexstate = ""; + String type = String.valueOf(attrInfoMap.get("type")); + indexstate = elasticsearchService.addDataForMap(attrInfoMap,type,type,String.valueOf(attrInfoMap.get("id"))); + if ("stand".equals(type) || "laws".equals(type) || "bussstand".equals(type)) { + // 方便全文检索,重新建索引 + Map fullTextSearchEO =getFullTextSearchForMap(attrInfoMap); + indexstate = elasticsearchService.addDataForMap(fullTextSearchEO,"fulltextserch","fulltextserch",String.valueOf(fullTextSearchEO.get("id"))); + } + + return indexstate; + } + + @Override + public String updateStandLawsSearchForMap(Map attrInfoMap){ + Set keys = attrInfoMap.keySet(); + for (String key:keys) { + String value = String.valueOf(attrInfoMap.get(key)); + if (StringUtils.isNotBlank(value) && !"null".equals(value)){ + value = value.replace(","," , "); + attrInfoMap.put(key,value); + } + } + String result = ""; + // 先判断索引是否存在 + String type = String.valueOf(attrInfoMap.get("type")); + String id = String.valueOf(attrInfoMap.get("id")); + if(elasticsearchService.isIndexExist(type)){ + Map indexstate = elasticsearchService.searchDataById(type,type,id,null); + if(indexstate == null || indexstate.isEmpty()){ + result = elasticsearchService.addDataForMap(attrInfoMap,type,type,id); + } else { + result = elasticsearchService.updateDataByIdForMap(attrInfoMap,type,type,id); + } + } else { + result = elasticsearchService.addDataForMap(attrInfoMap,type,type,id); + } + if ("stand".equals(type) || "laws".equals(type) || "bussstand".equals(type)) { + // 方便全文检索,重新建索引 + Map fullTextSearchEO =getFullTextSearchForMap(attrInfoMap); + if(elasticsearchService.isIndexExist("fulltextserch")){ + Map indexstate = elasticsearchService.searchDataById("fulltextserch","fulltextserch",id,null); + if(indexstate == null || indexstate.isEmpty()){ + result = elasticsearchService.addDataForMap(fullTextSearchEO,"fulltextserch","fulltextserch",id); + } else { + result = elasticsearchService.updateDataByIdForMap(fullTextSearchEO,"fulltextserch","fulltextserch",id); + } + } else { + result = elasticsearchService.updateDataByIdForMap(fullTextSearchEO,"fulltextserch","fulltextserch",id); + } + } + return result; + } + + + @Override + public String deleteStandLawsSearch(StandLawsEO standLawsEO){ + String result = ""; + // 先判断索引是否存在 + if(elasticsearchService.isIndexExist(standLawsEO.getType())){ + Map indexstate = elasticsearchService.searchDataById(standLawsEO.getType(),standLawsEO.getType(),standLawsEO.getId(),null); + if(indexstate != null && !indexstate.isEmpty()){ + result = elasticsearchService.deleteDataById(standLawsEO.getType(),standLawsEO.getType(),standLawsEO.getId()); + } + } + if(elasticsearchService.isIndexExist("fulltextserch")){ + Map indexstate = elasticsearchService.searchDataById("fulltextserch","fulltextserch",standLawsEO.getId(),null); + if(indexstate != null && !indexstate.isEmpty()){ + result = elasticsearchService.deleteDataById("fulltextserch","fulltextserch",standLawsEO.getId()); + } + } + return result; + } + + Map getFullTextSearchForMap(Map attrInfoMap){ + boolean isForeign = false; + Map fullTextSearchEO = new HashMap<>(); + fullTextSearchEO.put("id",String.valueOf(attrInfoMap.get("id"))); + if ("FOREIGN".equals(String.valueOf(attrInfoMap.get("standType")))){ + fullTextSearchEO.put("indexType",String.valueOf(attrInfoMap.get("standType"))); + isForeign = true; + }else { + fullTextSearchEO.put("indexType", String.valueOf(attrInfoMap.get("type"))); + } + if("stand".equals(attrInfoMap.get("type"))){ + // 标准全文 + fullTextSearchEO.put("title",attrInfoMap.get("numbershow")+" "+attrInfoMap.get("nameshow")); + + for (String key : attrInfoMap.keySet()) { + if (null == attrInfoMap.get(key) || "".equals(attrInfoMap.get(key))){ + attrInfoMap.put(key, "null"); + } + } +// fullTextSearchEO.put("issueTime",attrInfoMap.get("issueTime")); + StringBuilder contentBuilder = new StringBuilder(); +// contentBuilder.append("区域:东亚 "); + if (!isForeign) { + contentBuilder.append("适用区域:").append(attrInfoMap.get("countryShow")).append(" "); + } + contentBuilder.append("标准状态:").append(attrInfoMap.get("standstateshow")).append(" "); +// + contentBuilder.append("纳入标准法规清单的国家/地区: ").append(attrInfoMap.get("accessCountry")).append(" "); + contentBuilder.append("标准类别: ").append(attrInfoMap.get("standSortShow")).append(" "); + contentBuilder.append("标准号: ").append(attrInfoMap.get("numbershow")).append(" "); + contentBuilder.append("标准名称: ").append(attrInfoMap.get("nameshow")).append(" "); + contentBuilder.append("标准英文名称: ").append(attrInfoMap.get("standEnName")).append(" "); +// contentBuilder.append("发布日期:"+attrInfoMap.get("issueTime")+" "); + contentBuilder.append("覆盖关系: ").append(attrInfoMap.get("FGXXSXXXShow")).append(" "); + contentBuilder.append("代替标准编号: ").append(attrInfoMap.get("DTBJH")).append(" "); + if (StringUtils.isBlank(String.valueOf(attrInfoMap.get("BDTBH")))){ + contentBuilder.append("被代替标准编号: ").append(attrInfoMap.get("BDTBH")).append(" "); + }else { + contentBuilder.append("被代替标准编号: ").append(attrInfoMap.get("BDTBZBH")).append(" "); + } + contentBuilder.append("对应其他标准: ").append(attrInfoMap.get("CBBH")).append(" "); + contentBuilder.append("引用标准: ").append(attrInfoMap.get("YYBJ")).append(" "); + contentBuilder.append("被引用标准: ").append(attrInfoMap.get("BYYBJ")).append(" "); + if (isForeign){ + contentBuilder.append("等效标准: ").append(attrInfoMap.get("DXBZ")); + } + contentBuilder.append("相关流程: ").append(attrInfoMap.get("XGLC")).append(" "); + contentBuilder.append("参会记录: ").append(attrInfoMap.get("CHJL")).append(" "); + + contentBuilder.append("文本说明: ").append(attrInfoMap.get("synopsis")).append(" "); + contentBuilder.append("重要度: ").append(attrInfoMap.get("isRelateAccess")).append(" "); + if (!isForeign) { + contentBuilder.append("归口管理部门: ").append(attrInfoMap.get("GKDWShow")).append(" "); + } + if (!isForeign) { + contentBuilder.append("我司参与深度: ").append(attrInfoMap.get("CYSDShow")).append(" "); + } + if (!isForeign) { + contentBuilder.append("组织标准起草的执行机构/单位: ").append(attrInfoMap.get("FBJGShow")).append(" "); + } + contentBuilder.append("监管类型: ").append(attrInfoMap.get("ZRLXShow")).append(" "); + contentBuilder.append("适用车辆类型: ").append(attrInfoMap.get("CLLXShow")).append(" "); + contentBuilder.append("标签: ").append(attrInfoMap.get("GXHBQShow")).append(" "); + if (!isForeign) { + contentBuilder.append("工作组信息: ").append(attrInfoMap.get("GZZXXName")).append(" "); + } + contentBuilder.append("要求类型: ").append(attrInfoMap.get("YQLXShow")).append(" "); + contentBuilder.append("新车型实施日期(文本): ").append(attrInfoMap.get("XCXSSRQ")).append(" "); + contentBuilder.append("在产车实施日期(文本): ").append(attrInfoMap.get("ZCCSSRQ")).append(" "); + contentBuilder.append("EOP实施日期(文本): ").append(attrInfoMap.get("EOPSSRQ")).append(" "); + contentBuilder.append("法规维护人: ").append(attrInfoMap.get("FGWHRName")).append(" "); + contentBuilder.append("责任部门: ").append(attrInfoMap.get("ZRBMShow")).append(" "); + contentBuilder.append("相关部门: ").append(attrInfoMap.get("XGBMShow")).append(" "); + contentBuilder.append("SVPPS: ").append(attrInfoMap.get("SVPPSName")).append(" "); + contentBuilder.append("FO: ").append(attrInfoMap.get("FOShow")).append(" "); + contentBuilder.append("项目评估角色: ").append(attrInfoMap.get("XMPGJSShow")).append(" "); + if (attrInfoMap.containsKey("content")){ + if (null !=attrInfoMap.get("content") && StringUtils.isNotBlank(String.valueOf(attrInfoMap.get("content")))){ + String con = String.valueOf(attrInfoMap.get("content")); + con = con.replace(",",""); + if (StringUtils.isBlank(con)){ + attrInfoMap.put("content","--"); + } + } + } + contentBuilder.append("标准文本: ").append(attrInfoMap.get("content")).append(" "); + StringBuilder textContent = replaceAll(contentBuilder, "null", "--"); + fullTextSearchEO.put("textContent",textContent.toString()); + if (null != attrInfoMap.get("issueTime") && !"".equals(attrInfoMap.get("issueTime")) && !"null".equals(attrInfoMap.get("issueTime"))) { + fullTextSearchEO.put("issue_time", attrInfoMap.get("issueTime")); + }else { + fullTextSearchEO.put("issue_time", "--"); + } + } else if("laws".equals(attrInfoMap.get("type"))){ + // 政策全文 + for (String key : attrInfoMap.keySet()) { + if (null == attrInfoMap.get(key) || "".equals(attrInfoMap.get(key))){ + attrInfoMap.put(key, "null"); + } + } + fullTextSearchEO.put("title",attrInfoMap.get("numbershow")+" "+attrInfoMap.get("nameshow")); + StringBuilder contentBuilder = new StringBuilder(); + contentBuilder.append("适用区域: ").append(attrInfoMap.get("countryShow")).append(" "); + contentBuilder.append("政策状态: ").append(attrInfoMap.get("standstateshow")).append(" "); + contentBuilder.append("政策号: ").append(attrInfoMap.get("numbershow")).append(" "); + contentBuilder.append("政策名称: ").append(attrInfoMap.get("nameshow")).append(" "); + contentBuilder.append("英文名称: ").append(attrInfoMap.get("standEnName")).append(" "); +// contentBuilder.append("发布日期:"+attrInfoMap.get("issueTime")+" "); + contentBuilder.append("纳入标准法规清单的国家/地区: ").append(attrInfoMap.get("accessCountry")).append(" "); + contentBuilder.append("代替政策编号: ").append(attrInfoMap.get("replaceLawsNum")).append(" "); + contentBuilder.append("重要度: ").append(attrInfoMap.get("isRelateAccess")).append(" "); + contentBuilder.append("要求类型: ").append(attrInfoMap.get("YQLXShow")).append(" "); + contentBuilder.append("适用车辆类型: ").append(attrInfoMap.get("SYCLLXShow")).append(" "); +// contentBuilder.append("监管类型:"+attrInfoMap.get("")+" "); + contentBuilder.append("监管类型: ").append(attrInfoMap.get("ZRLXShow")).append(" "); + contentBuilder.append("个性化标签: ").append(attrInfoMap.get("GXHBQShow")).append(" "); + contentBuilder.append("新车型实施日期(文本): ").append(attrInfoMap.get("XCXSSRQ")).append(" "); + contentBuilder.append("在产车实施日期(文本): ").append(attrInfoMap.get("ZCCSSRQ")).append(" "); + contentBuilder.append("EOP实施日期(文本): ").append(attrInfoMap.get("EOPSSRQ")).append(" "); + contentBuilder.append("维护工程师: ").append(attrInfoMap.get("ZCGCSShow")).append(" "); + contentBuilder.append("组织标准起草的执行机构/单位: ").append(attrInfoMap.get("FBJGShow")).append(" "); + contentBuilder.append("SVPPS: ").append(attrInfoMap.get("SVPPSName")).append(" "); + contentBuilder.append("相关部门: ").append(attrInfoMap.get("XGBMShow")).append(" "); + contentBuilder.append("责任部门: ").append(attrInfoMap.get("ZRBMShow")).append(" "); + contentBuilder.append("FO: ").append(attrInfoMap.get("FOShow")).append(" "); + contentBuilder.append("归口管理部门: ").append(attrInfoMap.get("GKGLBMShow")).append(" "); + contentBuilder.append("我司是否参与: ").append(attrInfoMap.get("WSSFCYShow")).append(" "); + contentBuilder.append("相关流程: ").append(attrInfoMap.get("XGLC")).append(" "); +// contentBuilder.append("相关资料:"+attrInfoMap.get("")+" "); + if (attrInfoMap.containsKey("content")){ + if (null !=attrInfoMap.get("content") && StringUtils.isNotBlank(String.valueOf(attrInfoMap.get("content")))){ + String con = String.valueOf(attrInfoMap.get("content")); + con = con.replace(",",""); + if (StringUtils.isBlank(con)){ + attrInfoMap.put("content","--"); + } + } + } + contentBuilder.append("标准文本: ").append(attrInfoMap.get("content")).append(" "); + StringBuilder textContent = replaceAll(contentBuilder, "null", "--"); + fullTextSearchEO.put("textContent",textContent.toString()); + if (null != attrInfoMap.get("issue_time") && !"".equals(attrInfoMap.get("issue_time")) && !"null".equals(attrInfoMap.get("issue_time"))) { + fullTextSearchEO.put("issue_time", attrInfoMap.get("issue_time")); + }else { + fullTextSearchEO.put("issue_time", "--"); + } + }else if ("bussstand".equals(attrInfoMap.get("type"))){ + + for (String key : attrInfoMap.keySet()) { + if (null == attrInfoMap.get(key) || "".equals(attrInfoMap.get(key))){ + attrInfoMap.put(key, "null"); + } + } + fullTextSearchEO.put("title",attrInfoMap.get("standNumber")+" - 《"+attrInfoMap.get("nameshow")+"》"); + StringBuilder contentBuilder = new StringBuilder(); + SimpleDateFormat format = new SimpleDateFormat("yyyy-M-dd HH:mm:ss"); + contentBuilder.append("企标编号: ").append(String.valueOf(attrInfoMap.get("numbershow"))).append(" "); + contentBuilder.append("企标名称: ").append(String.valueOf(attrInfoMap.get("nameshow"))).append(" "); + contentBuilder.append("英文名称: ").append(attrInfoMap.get("standEnName")).append(" "); + contentBuilder.append("标准状态: ").append(String.valueOf(attrInfoMap.get("standstateshow"))).append(" "); +// contentBuilder.append("发布日期:"+String.valueOf(attrInfoMap.get("issue_time"))+" "); + contentBuilder.append("标准实施日期: "); + contentBuilder.append(String.valueOf(attrInfoMap.get("put_time"))); + contentBuilder.append("代替企标编号: ").append(attrInfoMap.get("replaceStandNum")); + contentBuilder.append("被代替企标编号: ").append(attrInfoMap.get("replacedStandNum")); + contentBuilder.append("废止日期: "); + if (StringUtils.isNotBlank(String.valueOf(attrInfoMap.get("FZRQString")).trim())) { + contentBuilder.append(String.valueOf(attrInfoMap.get("FZRQString"))).append(" "); + }else{ + contentBuilder.append("--").append(" "); + } + contentBuilder.append("复审日期: "); + if (StringUtils.isNotBlank(String.valueOf(attrInfoMap.get("FSRQString")).trim())) { + contentBuilder.append(String.valueOf(attrInfoMap.get("FSRQString"))).append(" "); + }else{ + contentBuilder.append("--").append(" "); + } + contentBuilder.append("密级: ").append(String.valueOf(attrInfoMap.get("QBMJShow"))).append(" "); + contentBuilder.append("授权: ").append(String.valueOf(attrInfoMap.get("QBSQShow"))).append(" "); + contentBuilder.append("涉及会签部门: ").append(String.valueOf(attrInfoMap.get("XHQBMShow"))).append(" "); + contentBuilder.append("SVPPS: ").append(String.valueOf(attrInfoMap.get("SVPPSName"))).append(" "); + contentBuilder.append("相关部门: ").append(String.valueOf(attrInfoMap.get("XGBMShow"))).append(" "); + contentBuilder.append("主起草人: ").append(String.valueOf(attrInfoMap.get("ZYQCRShow"))).append(" "); + contentBuilder.append("起草部门: ").append(String.valueOf(attrInfoMap.get("ZRBMShow"))).append(" "); + contentBuilder.append("主起草部门: ").append(String.valueOf(attrInfoMap.get("ZQCBMName"))).append(" "); + contentBuilder.append("其他起草人: ").append(String.valueOf(attrInfoMap.get("QTQCRShow"))).append(" "); + contentBuilder.append("外发审批角色: ").append(String.valueOf(attrInfoMap.get("WFSPJSShow"))).append(" "); + contentBuilder.append("规范性引用文件: ").append(String.valueOf(attrInfoMap.get("GFXYYWJ"))).append(" "); + contentBuilder.append("相关流程: ").append(String.valueOf(attrInfoMap.get("XGLC"))).append(" "); + if (attrInfoMap.containsKey("content")){ + if (null !=attrInfoMap.get("content") && StringUtils.isNotBlank(String.valueOf(attrInfoMap.get("content")))){ + String con = String.valueOf(attrInfoMap.get("content")); + con = con.replace(",",""); + if (StringUtils.isBlank(con)){ + attrInfoMap.put("content","--"); + } + } + } + contentBuilder.append("标准文本: ").append(attrInfoMap.get("content")).append(" "); +// contentBuilder.append("相关计划:"+String.valueOf(attrInfoMap.get(""))+" "); + + StringBuilder textContent = replaceAll(contentBuilder, "null", "--"); + fullTextSearchEO.put("textContent",textContent.toString()); + if (null != attrInfoMap.get("issue_time") && !"".equals(attrInfoMap.get("issue_time")) && !"null".equals(attrInfoMap.get("issue_time"))) { + fullTextSearchEO.put("issue_time", attrInfoMap.get("issue_time")); + }else { + fullTextSearchEO.put("issue_time", "--"); + } + } + return fullTextSearchEO; + } + + FullTextSearchEO getFullTextSearch(StandLawsEO standLawsEO){ + FullTextSearchEO fullTextSearchEO = new FullTextSearchEO(); + fullTextSearchEO.setId(standLawsEO.getId()); + fullTextSearchEO.setIndexType(standLawsEO.getType()); + if(standLawsEO.getType().equals("stand")){ + // 标准全文 + fullTextSearchEO.setTitle(standLawsEO.getNumbershow()+" "+standLawsEO.getNameshow()); + fullTextSearchEO.setIssue_time(standLawsEO.getIssue_time()); + fullTextSearchEO.setIssueTimeStr(standLawsEO.getIssueTimeStr()); + fullTextSearchEO.setPut_time(standLawsEO.getPut_time()); + fullTextSearchEO.setPutTimeStr(standLawsEO.getPutTimeStr()); + StringBuilder contentBuilder = new StringBuilder(); + contentBuilder.append("区域:东亚 "); + contentBuilder.append("国家/地区:"+standLawsEO.getCountryShow()+" "); + contentBuilder.append("标准性质:"+standLawsEO.getNatureShow()+" "); + contentBuilder.append("标准状态:"+standLawsEO.getStatecodeShow()+" "); + contentBuilder.append("内容摘要:"+standLawsEO.getSynopsis()+" "); + contentBuilder.append("标准文本:"+standLawsEO.getContent()+" "); + contentBuilder.append("标准类别:"+standLawsEO.getStandSortShow()+" "); + contentBuilder.append("标准号:"+standLawsEO.getNumbershow()+" "); + contentBuilder.append("标准名称:"+standLawsEO.getNameshow()+" "); + contentBuilder.append("标准英文名称:"+standLawsEO.getStandEnName()+" "); + contentBuilder.append("发布日期:"+DateUtils.dateToString(standLawsEO.getIssue_time(),"yyyy-MM-dd")+" "); + contentBuilder.append("实施日期:"+DateUtils.dateToString(standLawsEO.getPut_time(),"yyyy-MM-dd")+" "); + //时间处理 + contentBuilder.append("新定型车实施日期:"+ DateUtils.dateToString(standLawsEO.getNewcarPutTime(),"yyyy-MM-dd")+" "); + contentBuilder.append("新生产车实施日期:"+DateUtils.dateToString(standLawsEO.getNewproductPutTime(),"yyyy-MM-dd")+" "); + contentBuilder.append("注册登记车实施日期:"+DateUtils.dateToString(standLawsEO.getRegisterPutTime(),"yyyy-MM-dd")+" "); + contentBuilder.append("在产车实施日期:"+DateUtils.dateToString(standLawsEO.getRegisterPutTime(),"yyyy-MM-dd")+" "); + //时间处理 + contentBuilder.append("适用认证:"+standLawsEO.getApplyAuthShow()+" "); + contentBuilder.append("发布部门:"+standLawsEO.getIssueUnit()+" "); + contentBuilder.append("代替标准号:"+standLawsEO.getReplace_stand_num()+" "); + contentBuilder.append("被代替标准号:"+standLawsEO.getReplaced_stand_num()+" "); + contentBuilder.append("采用国际标准号:"+standLawsEO.getInterStandNum()+" "); + contentBuilder.append("采标程度:"+standLawsEO.getAdoptExtentShow()+" "); + contentBuilder.append("适用车型:"+standLawsEO.getApplyArcticShow()+" "); + contentBuilder.append("能源种类:"+standLawsEO.getEnergyKindShow()+" "); + contentBuilder.append("起草单位:"+standLawsEO.getDrafting_unit()+" "); + contentBuilder.append("起草人:"+standLawsEO.getDraft_user()+" "); + contentBuilder.append("关键词:"+standLawsEO.getStandTag()+" "); + contentBuilder.append("备注:"+standLawsEO.getRemarks()+" "); + contentBuilder.append("责任部门:"+standLawsEO.getResponsibleUnitShow()+" "); + contentBuilder.append("所属专业领域:"+standLawsEO.getCategoryShow()+" "); + // contentBuilder.append("总成分类:"+" "); + + StringBuilder textContent = replaceAll(contentBuilder, "null", "--"); + fullTextSearchEO.setTextContent(textContent.toString()); + } else if(standLawsEO.getType().equals("bussstand")){ + //企业标准全文 + fullTextSearchEO.setTitle(standLawsEO.getNumbershow()+" "+standLawsEO.getNameshow()); + fullTextSearchEO.setIssue_time(standLawsEO.getIssue_time()); + fullTextSearchEO.setIssueTimeStr(standLawsEO.getIssueTimeStr()); + fullTextSearchEO.setPut_time(standLawsEO.getPut_time()); + fullTextSearchEO.setPutTimeStr(standLawsEO.getPutTimeStr()); + + StringBuilder contentBuilder = new StringBuilder(); + // contentBuilder.append("区域:东亚 "); + contentBuilder.append("国家:"+standLawsEO.getCountryShow()+" "); + contentBuilder.append("标准类别:"+standLawsEO.getStandSortShow()+" "); + contentBuilder.append("标准编号:"+standLawsEO.getNumbershow()+" "); + contentBuilder.append("标准名称:"+standLawsEO.getNameshow()+" "); + contentBuilder.append("标准英文名称:"+standLawsEO.getStandEnName()+" "); + contentBuilder.append("标准状态:"+standLawsEO.getStatecodeShow()+" "); + contentBuilder.append("标准性质:"+standLawsEO.getNatureShow()+" "); + // contentBuilder.append("规范性引用标准:"+standLawsEO.getNatureShow()+" "); + contentBuilder.append("责任部门:"+standLawsEO.getResponsibleUnitShow()+" "); + //contentBuilder.append("主要编制者:"+standLawsEO.getResponsibleUnitShow()+" "); + contentBuilder.append("发布日期:"+standLawsEO.getIssueTimeStr()+" "); + contentBuilder.append("实施日期:"+standLawsEO.getPutTimeStr()+" "); + contentBuilder.append("实施年份:"+standLawsEO.getPutYear()+" "); + contentBuilder.append("首发日期:"+standLawsEO.getFirstPutTime()+" "); + contentBuilder.append("标准文本:"+standLawsEO.getContent()+" "); + contentBuilder.append("适用认证:"+standLawsEO.getApplyAuthShow()+" "); + contentBuilder.append("适用车型:"+standLawsEO.getApplyArcticShow()+" "); + contentBuilder.append("能源种类:"+standLawsEO.getEnergyKindShow()+" "); + contentBuilder.append("代替标准号:"+standLawsEO.getReplace_stand_num()+" "); + contentBuilder.append("被代替标准号:"+standLawsEO.getReplaced_stand_num()+" "); + contentBuilder.append("关键词:"+standLawsEO.getStandTag()+" "); + contentBuilder.append("内容摘要:"+standLawsEO.getSynopsis()+" "); + contentBuilder.append("备注:"+standLawsEO.getRemarks()+" "); + + StringBuilder textContent = replaceAll(contentBuilder, "null", "--"); + fullTextSearchEO.setTextContent(textContent.toString()); + } else if(standLawsEO.getType().equals("laws")){ + // 政策全文 + fullTextSearchEO.setTitle(standLawsEO.getNumbershow()+" "+standLawsEO.getNameshow()); + fullTextSearchEO.setIssue_time(standLawsEO.getIssue_time()); + fullTextSearchEO.setIssueTimeStr(standLawsEO.getIssueTimeStr()); + fullTextSearchEO.setPut_time(standLawsEO.getPut_time()); + fullTextSearchEO.setPutTimeStr(standLawsEO.getPutTimeStr()); + + StringBuilder contentBuilder = new StringBuilder(); + contentBuilder.append("国家/地区:"+standLawsEO.getCountryShow()+" "); + contentBuilder.append("文件号:"+standLawsEO.getNumbershow()+" "); + contentBuilder.append("文件名称:"+standLawsEO.getNameshow()+" "); + contentBuilder.append("文件英文名称:"+standLawsEO.getStandEnName()+" "); + contentBuilder.append("文件状态:"+standLawsEO.getStatecodeShow()+" "); + contentBuilder.append("文件性质:"+standLawsEO.getNatureShow()+" "); + contentBuilder.append("发布日期:"+DateUtils.dateToString(standLawsEO.getIssue_time(),"yyyy-MM-dd")+" "); + contentBuilder.append("实施日期:"+DateUtils.dateToString(standLawsEO.getPut_time(),"yyyy-MM-dd")+" "); + //时间处理 + contentBuilder.append("新定型车实施日期:"+ DateUtils.dateToString(standLawsEO.getNewcarPutTime(),"yyyy-MM-dd")+" "); + contentBuilder.append("新生产车实施日期:"+DateUtils.dateToString(standLawsEO.getNewproductPutTime(),"yyyy-MM-dd")+" "); + contentBuilder.append("注册登记车实施日期:"+DateUtils.dateToString(standLawsEO.getRegisterPutTime(),"yyyy-MM-dd")+" "); + contentBuilder.append("在产车实施日期:"+DateUtils.dateToString(standLawsEO.getRegisterPutTime(),"yyyy-MM-dd")+" "); + //时间处理 + contentBuilder.append("发布部门:"+standLawsEO.getIssueUnit()+" "); + contentBuilder.append("责任部门:"+standLawsEO.getResponsibleUnitShow()+" "); + contentBuilder.append("文件附件全文:"+standLawsEO.getContent()+" "); + contentBuilder.append("适用车型:"+standLawsEO.getApplyArcticShow()+" "); + contentBuilder.append("适用认证:"+standLawsEO.getApplyAuthShow()+" "); + contentBuilder.append("能源种类:"+standLawsEO.getEnergyKindShow()+" "); + contentBuilder.append("所属专业领域:"+standLawsEO.getCategoryShow()+" "); + contentBuilder.append("代替标准号:"+standLawsEO.getReplace_stand_num()+" "); + contentBuilder.append("被代替标准号:"+standLawsEO.getReplaced_stand_num()+" "); + contentBuilder.append("关键词:"+standLawsEO.getStandTag()+" "); + contentBuilder.append("内容摘要:"+standLawsEO.getSynopsis()+" "); + contentBuilder.append("备注:"+standLawsEO.getRemarks()+" "); + StringBuilder textContent = replaceAll(contentBuilder, "null", "--"); + fullTextSearchEO.setTextContent(textContent.toString()); + } + return fullTextSearchEO; + } + + + /** + * 实现StringBuilder的replaceAll + * + * @param stb + * @param oldStr 被替换的字符串 + * @param newStr 替换oldStr + * @return + */ + public static StringBuilder replaceAll(StringBuilder stb, String oldStr, String newStr) { + if (stb == null || oldStr == null || newStr == null || stb.length() == 0 || oldStr.length() == 0) + return stb; + int index = stb.indexOf(oldStr); + if (index > -1 && !oldStr.equals(newStr)) { + int lastIndex = 0; + while (index > -1) { + stb.replace(index, index + oldStr.length(), newStr); + lastIndex = index + newStr.length(); + index = stb.indexOf(oldStr, lastIndex); + } + } + return stb; + } + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/util/ElasticsearchConstant.java b/adc-da-search/src/main/java/com/adc/da/search/util/ElasticsearchConstant.java new file mode 100644 index 00000000..5c3a1cd3 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/util/ElasticsearchConstant.java @@ -0,0 +1,17 @@ +package com.adc.da.search.util; + +/** + *Elasticsearch接口实现过程中用到的常量定义 + * @author gaoyan + * date 2018/08/27 + */ +public class ElasticsearchConstant { + //构造方法 + public ElasticsearchConstant() { + // 不做操作 + } + //正确删除后返回结构 + public static final String SUCCESS_DELETED = "DELETED"; + //删除过程中未找到对应数据返回结果 + public static final String HAVE_NOT_FOUND= "NOT_FOUND"; +} diff --git a/adc-da-slrs/pom.xml b/adc-da-slrs/pom.xml index 149c579f..f1af9847 100644 --- a/adc-da-slrs/pom.xml +++ b/adc-da-slrs/pom.xml @@ -11,6 +11,12 @@ adc-da-slrs + + com.adc + adc-da-search + 1.0.0 + compile + com.adc adc-da-base @@ -35,6 +41,65 @@ 3.1.0 compile + + com.adc + adc-da-util + 2.2.41 + + + org.bouncycastle + bcprov-jdk14 + + + + + + + org.apache.poi + poi + 4.1.2 + + + org.apache.poi + poi-ooxml + 4.1.2 + + + org.apache.poi + poi-ooxml-schemas + 4.1.2 + + + xerces + xercesImpl + + + + + org.apache.poi + poi-scratchpad + 4.1.2 + + + + org.apache.pdfbox + pdfbox + 1.8.8 + + + + com.itextpdf + itextpdf + 5.5.13 + + + + com.zip4j + zip4j + system + 1.3.1 + ${basedir}/src/main/lib/zip4j-1.3.1.jar + \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java b/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java new file mode 100644 index 00000000..d502d72f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java @@ -0,0 +1,223 @@ +package com.adc.da.common; + +import com.adc.da.base.entity.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.util.Date; + +/** + * 功能:OT_CONVERT_MQ OtConvertMqEOEntity
    + * 作者:code generator
    + * 日期: 2018-09-25
    + * 版权所有:版权归北京卡达克数据技术中心所有。
    + */ +public class ConvertMqEO extends BaseEntity { + + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date modifyTime; + @org.springframework.format.annotation.DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date creationTime; + private Integer validFlag; + private String attId; + private String filePath; + private String fileOriginPath; + private String userId; + private Integer mqState; + private String mqCode; + private String id; + private String addOrUp; + + //向文件表添加信息 + private String lawsId; + private String resId; + private String convertType; + private String pdfPath; + private String pdfId; + private String fileSuffix; + private String standFileClassify; + private String oriAttId; + private String lawsFileClassify; + + private int againNum; + /** **/ + public Integer getValidFlag() { + return this.validFlag; + } + + /** **/ + public void setValidFlag(Integer validFlag) { + this.validFlag = validFlag; + } + + /** **/ + public String getAttId() { + return this.attId; + } + + /** **/ + public void setAttId(String attId) { + this.attId = attId; + } + + /** **/ + public String getFilePath() { + return this.filePath; + } + + /** **/ + public void setFilePath(String filePath) { + this.filePath = filePath; + } + + /** **/ + public String getUserId() { + return this.userId; + } + + /** **/ + public void setUserId(String userId) { + this.userId = userId; + } + + /** **/ + public Integer getMqState() { + return this.mqState; + } + + /** **/ + public void setMqState(Integer mqState) { + this.mqState = mqState; + } + + /** **/ + public String getMqCode() { + return this.mqCode; + } + + /** **/ + public void setMqCode(String mqCode) { + this.mqCode = mqCode; + } + + /** **/ + public String getId() { + return this.id; + } + + /** **/ + public void setId(String id) { + this.id = id; + } + + public String getFileOriginPath() { + return fileOriginPath; + } + + public void setFileOriginPath(String fileOriginPath) { + this.fileOriginPath = fileOriginPath; + } + + public String getLawsId() { + return lawsId; + } + + public void setLawsId(String lawsId) { + this.lawsId = lawsId; + } + + public String getResId() { + return resId; + } + + public void setResId(String resId) { + this.resId = resId; + } + + public String getConvertType() { + return convertType; + } + + public void setConvertType(String convertType) { + this.convertType = convertType; + } + + public String getPdfPath() { + return pdfPath; + } + + public void setPdfPath(String pdfPath) { + this.pdfPath = pdfPath; + } + + public String getAddOrUp() { + return addOrUp; + } + + public void setAddOrUp(String addOrUp) { + this.addOrUp = addOrUp; + } + + public String getPdfId() { + return pdfId; + } + + public void setPdfId(String pdfId) { + this.pdfId = pdfId; + } + + public Date getModifyTime() { + return modifyTime; + } + + public void setModifyTime(Date modifyTime) { + this.modifyTime = modifyTime; + } + + public Date getCreationTime() { + return creationTime; + } + + public void setCreationTime(Date creationTime) { + this.creationTime = creationTime; + } + + public String getFileSuffix() { + return fileSuffix; + } + + public void setFileSuffix(String fileSuffix) { + this.fileSuffix = fileSuffix; + } + + public String getStandFileClassify() { + return standFileClassify; + } + + public void setStandFileClassify(String standFileClassify) { + this.standFileClassify = standFileClassify; + } + + public String getOriAttId() { + return oriAttId; + } + + public void setOriAttId(String oriAttId) { + this.oriAttId = oriAttId; + } + + public int getAgainNum() { + return againNum; + } + + public void setAgainNum(int againNum) { + this.againNum = againNum; + } + + public String getLawsFileClassify() { + return lawsFileClassify; + } + + public void setLawsFileClassify(String lawsFileClassify) { + this.lawsFileClassify = lawsFileClassify; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/dao/OtConvertEODao.java b/adc-da-slrs/src/main/java/com/adc/da/mq/dao/OtConvertEODao.java new file mode 100644 index 00000000..cfbbe4e4 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/dao/OtConvertEODao.java @@ -0,0 +1,10 @@ +package com.adc.da.mq.dao; + +import com.adc.da.common.ConvertMqEO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +public interface OtConvertEODao extends BaseMapper { + + int deleteByAttId(String value); + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java new file mode 100644 index 00000000..7a7e1795 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java @@ -0,0 +1,77 @@ +package com.adc.da.mq.service; + +import com.adc.da.common.ConvertMqEO; +import com.adc.da.mq.dao.OtConvertEODao; +import com.adc.da.util.utils.StringUtils; +import com.adc.da.util.utils.UUID; +import org.springframework.amqp.core.AmqpTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +@Component +public class CreateMQService { + @Autowired + private AmqpTemplate rabbitTemplate; + + @Autowired + private OtConvertEODao otConvertEODao; + /** + * @Author yangxuenan + * @Description 创建消息队列 + * Date 2018/8/24 13:59 + * @Param [convert, convertType] + * @return int + **/ + public void sendMQ(ConvertMqEO convert) throws Exception{ + String otId = UUID.randomUUID(20); + //向OT_CONVERT_EO表中添加/修改数据 + //判断用户是初次发送还是重新发送,初次将添加到数据库,重新发送将修改原数据信息 + convert.setMqState(0); + convert.setModifyTime(new Date()); + if("0".equals(convert.getAddOrUp()) && StringUtils.isEmpty(convert.getId())){ + convert.setId(otId); + convert.setMqCode(convert.getConvertType()); + convert.setCreationTime(new Date()); + convert.setValidFlag(0); + otConvertEODao.insert(convert); + } else { + otConvertEODao.updateById(convert); + } + + //将数据信息保存并发送给消息队列 + Map convertInfo = new HashMap(); + //标准/政策ID + convertInfo.put("lawsId", convert.getLawsId()); + //标准/政策关联的res表ID + convertInfo.put("resId", convert.getResId()); + //文档的ID + convertInfo.put("attId", convert.getAttId()); + //判断当前操作是新增还是修改 + convertInfo.put("addUpFlag", convert.getAddOrUp()); + //资源类型(标准,政策,企标) + convertInfo.put("convertType", convert.getConvertType()); + //文档路径 + convertInfo.put("path", convert.getFilePath()); + convertInfo.put("standFileClassify", convert.getStandFileClassify()); + convertInfo.put("lawsFileClassify", convert.getLawsFileClassify()); + if("0".equals(convert.getAddOrUp())){ + //otId在转换表中数据ID + convertInfo.put("otId", otId); + //在stand_file等资源与文件关联表中转换成功的pdf数据ID + convertInfo.put("standFilePdfId", UUID.randomUUID(20)); + convertInfo.put("againNum",0); + } else { + convertInfo.put("otId", convert.getId()); + convertInfo.put("standFilePdfId", convert.getPdfId()); + convertInfo.put("againNum",convert.getAgainNum()); + } + + //发送消息队列 + this.rabbitTemplate.convertAndSend("convert-exchange_SQ_GSAR", "convert-key_SQ_GSAR", convertInfo); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateStandMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateStandMQService.java new file mode 100644 index 00000000..b7253717 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateStandMQService.java @@ -0,0 +1,32 @@ +package com.adc.da.mq.service; + +import net.sf.json.JSONObject; +import org.springframework.amqp.core.AmqpTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.HashMap; +import java.util.Map; + +@Component +public class CreateStandMQService { + @Autowired + private AmqpTemplate rabbitTemplate; + + /** + * + * @param sarStandardsInfoEO 标准实体 + * @param addOrUpdate + * @throws Exception + */ + public void sendStandMQ(Object sarStandardsInfoEO, String addOrUpdate) throws Exception{ + JSONObject json = JSONObject.fromObject(sarStandardsInfoEO); + String sarStandardsInfoStr = json.toString(); + Map standMap = new HashMap(); + standMap.put("sarStandards", sarStandardsInfoStr); + standMap.put("addOrUpdate", addOrUpdate); + + //发送消息队列 + this.rabbitTemplate.convertAndSend("stand-exchange_SQ_GSAR", "stand-key_SQ_GSAR", standMap); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java new file mode 100644 index 00000000..164faf75 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/service/SendStandMQService.java @@ -0,0 +1,316 @@ +package com.adc.da.mq.service; + +import com.adc.da.slrs.otSvpps.entity.OtSvpps; +import com.adc.da.slrs.otSvpps.service.IOtSvppsService; +import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; +import com.adc.da.slrs.sarStandardsInfo.service.ISarStandardsInfoService; +import com.adc.da.slrs.sysInfo.service.SysInfoEOService; +import com.rabbitmq.client.Channel; +import net.sf.json.JSONObject; +import org.apache.commons.lang.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.amqp.rabbit.annotation.Exchange; +import org.springframework.amqp.rabbit.annotation.Queue; +import org.springframework.amqp.rabbit.annotation.QueueBinding; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.amqp.support.AmqpHeaders; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.messaging.Message; +import org.springframework.stereotype.Component; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Component +public class SendStandMQService { + + @Autowired + private ISarStandardsInfoService sarStandardsInfoService; + + @Autowired + private SysInfoEOService sysInfoEOService; + + + @Autowired + private IOtSvppsService otSvppsEOService; + + + private static final Logger logger = LoggerFactory.getLogger(SendStandMQService.class); + + @RabbitListener(bindings = @QueueBinding( + value = @Queue(value = "createStandMQ_SQ_GSAR", durable = "true"), + exchange = @Exchange(value = "stand-exchange_SQ_GSAR", ignoreDeclarationExceptions = "true"), + key = "stand-key_SQ_GSAR")) + public void createMQ(Map standMap, Message message, Channel channel) throws Exception{ + try{ + try{ + Thread.sleep(5000); + insertOrUpdateStandInfo(standMap); + }catch(InterruptedException e){ + logger.error(e.toString()); + Thread.currentThread().interrupt(); + } + } catch (Exception e) { + logger.error("搜索中心标准消息队列进入添加数据方法前失败!"); + logger.error(e.getMessage(),e); + }finally { + Long tag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG); + channel.basicAck(tag,false); + logger.debug("消息确认成功!!!!!!!!!"); + } + + } + + public void insertOrUpdateStandInfo(Map standMap){ + String addOrUpdate = standMap.get("addOrUpdate").toString(); + String sarStandards = standMap.get("sarStandards").toString(); + JSONObject jsonobject = JSONObject.fromObject(sarStandards); + SarStandardsInfo infoEO = (SarStandardsInfo) JSONObject.toBean(jsonobject,SarStandardsInfo.class); + String attr = infoEO.getSarStandAttrEOStr(); + JSONObject jsonobject1 = JSONObject.fromObject(attr); + Map map = (Map)jsonobject1; + String GZZXX = String.valueOf(map.get("GZZXX")); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + // 往索引表中插入数据 + String getCodeName = ""; + Map saveMap = new HashMap<>(); + String baseSearchContent = ""; + // 开始存放数据 + saveMap.put("id",infoEO.getId()); + saveMap.put("BYYBJ", map.getOrDefault("BYYBJ", "")); + saveMap.put("BDTBH", map.getOrDefault("BDTBH", "")); + saveMap.put("country",infoEO.getCountry()); + + if (StringUtils.isNotEmpty(infoEO.getCountry())) { + String codeName = sysInfoEOService.getDicNamesByCodes(infoEO.getCountry()); + saveMap.put("countryShow",codeName); + } + saveMap.put("standSort",infoEO.getStandSort()); + saveMap.put("stand_sort",infoEO.getStandSort()); + if (StringUtils.isNotEmpty(infoEO.getStandSort())) { + String codeName = sysInfoEOService.getDicNamesByCodes(infoEO.getStandSort()); + saveMap.put("standSortShow",codeName); + getCodeName = codeName; + } + saveMap.put("standNumber",infoEO.getStandNumber()); + saveMap.put("stand_number",infoEO.getStandNumber()); + saveMap = dealNumberMsg(saveMap,infoEO,getCodeName); + saveMap.put("standYear",infoEO.getStandYear()); + saveMap.put("stand_year",infoEO.getStandYear()); + saveMap.put("nameshow",infoEO.getStandName()); + saveMap.put("stand_name",infoEO.getStandName()); + saveMap.put("standEnName",infoEO.getStandEnName()); + saveMap.put("stand_en_name",infoEO.getStandEnName()); + + if ("1".equals(infoEO.getIsRelateAccess())) { + saveMap.put("isRelateAccess","A" ); + }else{ + saveMap.put("isRelateAccess","B" ); + } + if (StringUtils.isNotEmpty(infoEO.getStandState())) { + String codeName = sysInfoEOService.getDicNamesByCodes(infoEO.getStandState()); + saveMap.put("standstateshow",codeName); + } + saveMap.put("issueTime",infoEO.getIssueTime()); + + String newDate = infoEO.getIssueTime(); + if (StringUtils.isNotBlank(infoEO.getIssueTime()) && StringUtils.isNotBlank(infoEO.getIssueTime().trim()) && infoEO.getIssueTime().trim().length()>10) { + newDate = infoEO.getIssueTime().trim().substring(0,10); + } + + saveMap.put("issue_time",newDate); + Date issue_time_data = null; + if (StringUtils.isNotBlank(infoEO.getIssueTime())) { + try { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + issue_time_data = format.parse(newDate+" 00:00:00"); + } catch (ParseException ignored) { + } + } + if (issue_time_data != null) { + saveMap.put("issue_time_data",issue_time_data.getTime()); + }else{ + saveMap.put("issue_time_data",0L); + } + saveMap.put("synopsis",infoEO.getSynopsis()); + saveMap.put("standType",infoEO.getStandType()); + // 自定义属性字段 + String sarStandAttrEOStr = infoEO.getSarStandAttrEOStr(); + Map attrInfoMap = JSONObject.fromObject(sarStandAttrEOStr); + if (attrInfoMap != null && !attrInfoMap.isEmpty()) { + attrInfoMap = sysInfoEOService.changeSelectInfo(attrInfoMap, "stand",baseSearchContent); + saveMap.putAll(attrInfoMap); + } + saveMap.put("baseSearchContent",baseSearchContent); + saveMap.put("type","stand"); + saveMap.put("validFlag","0"); + saveMap.put("content",infoEO.getFileIds()); + saveMap.put("CHJL",infoEO.getCHJL()); + + String SVPPSSting = ""; + if (attrInfoMap != null) { + if (attrInfoMap.containsKey("SVPPS")){ + String svpps = String.valueOf(attrInfoMap.get("SVPPS")); + List ids = new ArrayList<>(Arrays.asList(svpps.split(","))); + for (String id: ids){ + String num = ""; + try { + OtSvpps otSvppsEO = otSvppsEOService.getById(id); + if (null != otSvppsEO) { + if ("NA".equals(otSvppsEO.getTNum())) { + if ("NA".equals(otSvppsEO.getSNum())) { + num = otSvppsEO.getFNum(); + } else { + num = otSvppsEO.getSNum(); + } + } else { + num = otSvppsEO.getTNum(); + } + } + if ("".equals(SVPPSSting)){ + SVPPSSting = num; + }else { + SVPPSSting = SVPPSSting + "," + num; + } + } catch (Exception e) { + e.printStackTrace(); + } + } + saveMap.put("SVPPSName",SVPPSSting); + } + } + + + Date XCXSSRQ_data = null; + if (StringUtils.isNotBlank(String.valueOf(saveMap.get("XCXSSRQ")))) { + try { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (String.valueOf(saveMap.get("XCXSSRQ")).trim().length()>10) { + XCXSSRQ_data = format.parse(String.valueOf(saveMap.get("XCXSSRQ")).trim().substring(0,10) + " 00:00:00"); + saveMap.put("XCXSSRQ",String.valueOf(saveMap.get("XCXSSRQ")).trim().substring(0,10)); + }else{ + XCXSSRQ_data = format.parse(String.valueOf(saveMap.get("XCXSSRQ")).trim() + " 00:00:00"); + saveMap.put("XCXSSRQ",String.valueOf(saveMap.get("XCXSSRQ")).trim()); + } + } catch (ParseException ignored) { + } + } + if (XCXSSRQ_data != null) { + saveMap.put("XCXSSRQ_data",XCXSSRQ_data.getTime()); + }else{ + saveMap.put("XCXSSRQ_data",0L); + } + saveMap.put("XCXSSRQ",String.valueOf(saveMap.get("XCXSSRQ")+" ")); + + Date ZCCSSRQ_data = null; + if (StringUtils.isNotBlank(String.valueOf(saveMap.get("ZCCSSRQ")))) { + try { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (String.valueOf(saveMap.get("ZCCSSRQ")).trim().length()>10) { + ZCCSSRQ_data = format.parse(String.valueOf(saveMap.get("ZCCSSRQ")).trim().substring(0, 10) + " 00:00:00"); + saveMap.put("ZCCSSRQ",String.valueOf(saveMap.get("ZCCSSRQ")).trim().substring(0, 10)); + }else { + ZCCSSRQ_data = format.parse(String.valueOf(saveMap.get("ZCCSSRQ")).trim() + " 00:00:00"); + saveMap.put("ZCCSSRQ",String.valueOf(saveMap.get("ZCCSSRQ")).trim()); + } + } catch (ParseException ignored) { + } + } + if (ZCCSSRQ_data != null) { + saveMap.put("ZCCSSRQ_data",ZCCSSRQ_data.getTime()); + }else{ + saveMap.put("ZCCSSRQ_data",0L); + } + saveMap.put("ZCCSSRQ",String.valueOf(saveMap.get("ZCCSSRQ")+" ")); + + Date EOPSSRQ_data = null; + String ESSRQ= null; + if (StringUtils.isNotBlank(String.valueOf(saveMap.get("EOPSSRQ")))) { + try { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + if (String.valueOf(saveMap.get("EOPSSRQ")).trim().length()>10){ + ESSRQ = String.valueOf(saveMap.get("EOPSSRQ")).trim().substring(0,10); + }else { + ESSRQ = String.valueOf(saveMap.get("EOPSSRQ")).trim(); + } + EOPSSRQ_data = format.parse(ESSRQ + " 00:00:00"); + } catch (ParseException ignored) { + } + map.put("EOPSSRQ",ESSRQ); + } + if (EOPSSRQ_data != null) { + saveMap.put("EOPSSRQ_data",EOPSSRQ_data.getTime()); + }else{ + saveMap.put("EOPSSRQ_data",0L); + } + saveMap.put("EOPSSRQ",String.valueOf(saveMap.get("EOPSSRQ")+" ")); + + if (map.containsKey("DXBZ")){ + saveMap.put("DXBZ",map.get("DXBZ")); + }else{ + saveMap.put("DXBZ",""); + } + //当建立代替时,产生的没有文件的问题 + if (StringUtils.isBlank(String.valueOf(saveMap.get("content")))) { + String context = String.valueOf(saveMap.get("FBGBJBD")) + "," + + String.valueOf(saveMap.get("XXZLXX")) + "," + + String.valueOf(saveMap.get("ZQYJG")) + "," + + String.valueOf(saveMap.get("BPG")) + "," + + String.valueOf(saveMap.get("CA")) + "," + + String.valueOf(saveMap.get("SSG")) + "," + + String.valueOf(saveMap.get("ZBJBD")); + context = context.replace(",,", ","); + saveMap.put("content", context); + } + if (StringUtils.isNotBlank(String.valueOf(saveMap.get("FO"))) && !"null".equals(String.valueOf(saveMap.get("FO")))){ + saveMap.put("FO",String.valueOf(saveMap.get("FO"))+" "); + } + if("add".equals(addOrUpdate)){ + sarStandardsInfoService.insertIntoIndexForMap(saveMap); + } else { + sarStandardsInfoService.updateIntoIndexForMap(saveMap); + } + } + + public Map dealNumberMsg (Map saveMap,SarStandardsInfo infoEO,String getCodeName) { + if(StringUtils.isNotEmpty(infoEO.getStandYear())){ + String number = getCodeName + " " + infoEO.getStandNumber() + "-" + infoEO.getStandYear(); + saveMap.put("numbershow",number); + int index = infoEO.getStandNumber().indexOf("."); + int index1 = infoEO.getStandNumber().indexOf(":"); + String numberExpNull = ""; + if(index > -1){ + numberExpNull = (getCodeName + infoEO.getStandNumber() + "-" + number.replaceAll(" ","") + + "-" + getCodeName + infoEO.getStandNumber().substring(0,index) + "-" + infoEO.getStandNumber().substring(0,index)); + } else if (index1 > -1) { + numberExpNull = getCodeName + infoEO.getStandNumber() + "-" + number.replaceAll(" ","") + + "-" + getCodeName + infoEO.getStandNumber().substring(0,index1) + "-" + infoEO.getStandNumber().substring(0,index1); + } else { + numberExpNull = getCodeName + infoEO.getStandNumber() + "-" + number.replaceAll(" ",""); + } + saveMap.put("numberExpNull",numberExpNull); + } else { + String num = getCodeName + " " + infoEO.getStandNumber(); + saveMap.put("numbershow",num); + int index = infoEO.getStandNumber().indexOf("."); + String numberExpNull = ""; + if(index > -1){ + numberExpNull = getCodeName + infoEO.getStandNumber() + "-" + num.replaceAll(" ","") + + "-" + getCodeName + infoEO.getStandNumber().substring(0,index) + "-" + infoEO.getStandNumber().substring(0,index); + } else { + numberExpNull = getCodeName + infoEO.getStandNumber() + "-" + num.replaceAll(" ",""); + } + saveMap.put("numberExpNull",numberExpNull); + } + return saveMap; + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java index b3d63672..973fb7cd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java @@ -40,4 +40,8 @@ public interface ISarStandardsInfoService extends IService { List selectRecommendStand(SarStandardsInfoEOPage pagenew); List getStandAndItemsForAct (SarStandardsInfoEOPage page) throws Exception; + + void insertIntoIndexForMap(Map attrInfoMap); + + void updateIntoIndexForMap(Map attrInfoMap); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index e9224936..dd9aec44 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -10,6 +10,7 @@ import com.adc.da.person.dao.PersonCollectEODao; import com.adc.da.person.dao.PersonShareEODao; import com.adc.da.person.entity.PersonMsgEO; import com.adc.da.person.service.IPersonCollectEOService; +import com.adc.da.search.service.StandLawsSearchService; import com.adc.da.slrs.sarLawsInfo.entity.SarLawsInfo; import com.adc.da.slrs.sarLawsInfo.page.SarLawsInfoEOPage; import com.adc.da.slrs.sarLawsInfo.page.SarLawsItemsEOPage; @@ -51,6 +52,13 @@ import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import net.sf.json.JSONObject; import org.apache.commons.lang3.StringUtils; +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.util.PDFTextStripper; +import org.apache.pdfbox.util.PDFTextStripperByArea; +import org.apache.poi.hwpf.extractor.WordExtractor; +import org.apache.poi.openxml4j.opc.OPCPackage; +import org.apache.poi.xwpf.extractor.XWPFWordExtractor; +import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; @@ -61,6 +69,7 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.io.File; +import java.io.FileInputStream; import java.sql.Clob; import java.text.SimpleDateFormat; import java.util.*; @@ -151,6 +160,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrInfoMap) { + Set keys = attrInfoMap.keySet(); + for (String key:keys) { + String value = String.valueOf(attrInfoMap.get(key)); + if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key)){ + value = value.replace(" , ",","); + value = value.replace(","," , "); + attrInfoMap.put(key,value); + } + } + // 根据文件attid 读取文件内容 + if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { + String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); + StringBuilder content = new StringBuilder(""); + for (int i = 0; i < attidlist.length; i++) { + if(org.apache.commons.lang.StringUtils.isNotEmpty(attidlist[i]) ){ + AttFileEO attFileEO = attFileEOService.getFileInfo(attidlist[i]); + String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName(); + try { + // 判断文件是docx还是PDF + if (null != attFileEO.getFileSuffix() && (attFileEO.getFileSuffix().equals("docx") || attFileEO.getFileSuffix().equals("doc") || attFileEO.getFileSuffix().equals("ppt") || attFileEO.getFileSuffix().equals("pptx"))) { + if(attFileEO.getFileSuffix().equals("doc")){ + FileInputStream fis = new FileInputStream(readFilePath); + WordExtractor wordExtractor = new WordExtractor(fis); + String txt = wordExtractor.getText(); + content.append(txt); + }else { + OPCPackage opcPackage = XWPFDocument.openPackage(readFilePath); + XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage); + String txt = extractor.getText(); + content.append(txt); + } + } else { + PDDocument document = PDDocument.load(new File(readFilePath)); + document.getClass(); + if (!document.isEncrypted()) { + PDFTextStripperByArea stripper = new PDFTextStripperByArea(); + stripper.setSortByPosition(true); + PDFTextStripper tStripper = new PDFTextStripper(); + String pdfFileInText = tStripper.getText(document); + // String[] lines = pdfFileInText.split("\\r?\\n"); + content.append(pdfFileInText); + } + } + } catch (Exception e) { + logger.error("搜索中心新增数据读取文档内容时失败"); + logger.error(e.getMessage(),e); + } + /*catch (IOException | OpenXML4JException | XmlException e) { + logger.error(e.getMessage(),e); + }*/ + attrInfoMap.put("content",content.toString()); + } + } + } + else{ + attrInfoMap.put("content",""); + } + standLawsSearchService.addStandLawsSearchForMap(attrInfoMap); + } + + @Override + public void updateIntoIndexForMap(Map attrInfoMap) { + Set keys = attrInfoMap.keySet(); + for (String key:keys) { + String value = String.valueOf(attrInfoMap.get(key)); + if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key) && !"content".equals(key)){ + value = value.replace(" , ",","); + value = value.replace(","," , "); + attrInfoMap.put(key,value); + } + } + // 根据文件attid 读取文件内容 + if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { + String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); + StringBuilder content = new StringBuilder(""); + for (int i = 0; i < attidlist.length; i++) { + if(org.apache.commons.lang.StringUtils.isNotEmpty(attidlist[i]) && !"null".equals(attidlist[i])){ + AttFileEO attFileEO = attFileEOService.getFileInfo(attidlist[i]); + String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName(); + try { + // 判断文件是docx还是PDF + if (attFileEO.getFileSuffix().equals("docx") || attFileEO.getFileSuffix().equals("doc")) { + if(attFileEO.getFileSuffix().equals("doc")){ + FileInputStream fis = new FileInputStream(readFilePath); + WordExtractor wordExtractor = new WordExtractor(fis); + String txt = wordExtractor.getText(); + content.append(txt); + }else { + OPCPackage opcPackage = XWPFDocument.openPackage(readFilePath); + XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage); + String txt = extractor.getText(); + content.append(txt); + } + } else if (attFileEO.getFileSuffix().equals("pdf")){ + PDDocument document = PDDocument.load(new File(readFilePath)); + document.getClass(); + if (!document.isEncrypted()) { + PDFTextStripperByArea stripper = new PDFTextStripperByArea(); + stripper.setSortByPosition(true); + PDFTextStripper tStripper = new PDFTextStripper(); + String pdfFileInText = tStripper.getText(document); + // String[] lines = pdfFileInText.split("\\r?\\n"); + content.append(pdfFileInText); + } + } + } catch (Exception e) { + logger.error("搜索中心修改数据读取文档内容时失败"); + logger.error(e.getMessage(),e); + } + attrInfoMap.put("content",content.toString()); + } + } + } + else{ + attrInfoMap.put("content",""); + } + standLawsSearchService.updateStandLawsSearchForMap(attrInfoMap); + } + public void getStandDetailsForAct (SarStandardsInfoEOPage page,String[] idArr,String standState,List standList) throws Exception{ page.setPageSize(100); page.setIdlist(idArr); From 7fa56b9905c75b20a0d71e9ac4cb8bd1c0912a74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Tue, 22 Jun 2021 17:17:07 +0800 Subject: [PATCH 19/57] =?UTF-8?q?fetch:=E9=80=9A=E8=BF=87name=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E8=A7=92=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ITsInstitutionService.java | 2 +- .../impl/TsInstitutionServiceImpl.java | 1 + .../sarRole/controller/TsRoleController.java | 46 +++++++ .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 16 +++ .../adc/da/slrs/sarRole/entity/TsRole.java | 113 ++++++++++++++++++ .../slrs/sarRole/service/ITsRoleService.java | 30 +++++ .../service/impl/TsRoleServiceImpl.java | 70 +++++++++++ .../adc/da/slrs/sarUser/entity/TsUser.java | 2 +- .../mybatis/mapper/sarRole/TsRoleMapper.xml | 5 + 9 files changed, 283 insertions(+), 2 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java index 6c973148..3d2d7460 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -11,7 +11,7 @@ import java.util.List; * 服务类 *

    * - * @author zyl + * @author zxy * @since 2021-06-22 */ public interface ITsInstitutionService extends IService { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index 7823aa51..4361d532 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -51,6 +51,7 @@ public class TsInstitutionServiceImpl extends ServiceImpl recursionGetInstitution(TsInstitution tsInstitution){ QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); institutionQueryWrapper.eq("parent_id",tsInstitution.getId()); + institutionQueryWrapper.eq("level",tsInstitution.getLevel()+1); List tsInstitutions=tsInstitutionDao.selectList(institutionQueryWrapper); for(TsInstitution tsInstitutionNode:tsInstitutions){ tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java new file mode 100644 index 00000000..63ef691b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -0,0 +1,46 @@ +package com.adc.da.slrs.sarRole.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarRole.service.ITsRoleService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import com.adc.da.slrs.sarRole.entity.TsRole; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +import java.util.List; + +/** +*

    + * 前端控制器 + *

    +* +* @author zxy +* @since 2021-06-22 +*/ +@RestController +@Api(tags = "|角色管理|") +@RequestMapping("/sarRole/role") +public class TsRoleController extends BaseController { + @Autowired + private ITsRoleService tsRoleService; + + @ApiOperation("查询所有角色") + @GetMapping + public ResponseMessage> getAll(){ + List tsRoles=tsRoleService.getAll(); + return Result.success(tsRoles); + } + + @ApiOperation("根据角色名筛选角色") + @GetMapping("/name") + public ResponseMessage> getByName(String name){ + List tsRoles=tsRoleService.getByName(name); + return Result.success(tsRoles); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java new file mode 100644 index 00000000..51bc80e2 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarRole.dao; + +import com.adc.da.slrs.sarRole.entity.TsRole; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zyl + * @since 2021-06-22 + */ +public interface TsRoleDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java new file mode 100644 index 00000000..c57db19f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java @@ -0,0 +1,113 @@ +package com.adc.da.slrs.sarRole.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; + +import java.sql.Timestamp; +import java.time.LocalDateTime; +import java.util.Date; +import java.util.List; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

    + * + *

    + * + * @author zyl + * @since 2021-06-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsRole对象", description="") +public class TsRole extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + @ApiModelProperty(value = "角色名称") + @TableField("NAME") + private String name; + + @ApiModelProperty(value = "角色类型") + @TableField("ROLE_TYPE") + private String roleType; + + @ApiModelProperty(value = "角色状态") + @TableField("USE_FLAG") + private BigDecimal useFlag; + + @ApiModelProperty(value = "是否默认") + @TableField("IS_DEFAULT") + private BigDecimal isDefault; + + @ApiModelProperty(value = "角色描述") + @TableField("REMARKS") + private String remarks; + + @ApiModelProperty(value = "操作时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp operateTime; + + @ApiModelProperty(value = "操作人") + private String operator; + + @ApiModelProperty(value = "备注") + @TableField("EXT_INFO") + private String extInfo; + + @TableField("OPER_USER") + private String operUser; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private BigDecimal validFlag; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp modifyTime; + + @ApiModelProperty(value = "上级节点id") + @TableField("PARENT_ID") + private String parentId; + + @ApiModelProperty(value = "角色层级") + @TableField("role_level") + private Integer roleLevel; + + @ApiModelProperty(value = "对应部门id") + @TableField("DY_ORG_ID") + private String dyOrgId; + + @ApiModelProperty(value = "对应部门名称") + @TableField("DY_ORG_NAME") + private String dyOrgName; + + @ApiModelProperty(value = "子角色") + @TableField(exist = false) + private List children; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java new file mode 100644 index 00000000..f8405e9a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -0,0 +1,30 @@ +package com.adc.da.slrs.sarRole.service; + +import com.adc.da.slrs.sarRole.entity.TsRole; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

    + * 服务类 + *

    + * + * @author zyl + * @since 2021-06-22 + */ +public interface ITsRoleService extends IService { + + /** + * 查询所有角色 + * @return List + */ + List getAll(); + + /** + * 通过名字查询角色 + * @param name:角色名 + * @return List + */ + List getByName(String name); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java new file mode 100644 index 00000000..ae5c052a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -0,0 +1,70 @@ +package com.adc.da.slrs.sarRole.service.impl; + +import com.adc.da.slrs.sarRole.entity.TsRole; +import com.adc.da.slrs.sarRole.dao.TsRoleDao; +import com.adc.da.slrs.sarRole.service.ITsRoleService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

    + * 服务实现类 + *

    + * + * @author zyl + * @since 2021-06-22 + */ +@Service +public class TsRoleServiceImpl extends ServiceImpl implements ITsRoleService { + @Autowired + private TsRoleDao tsRoleDao; + + /** + * 查询所有角色 + * @return List + */ + @Override + public List getAll() { + QueryWrapper tsRoleQueryWrapper=new QueryWrapper<>(); + tsRoleQueryWrapper.eq("role_level",1); + List rootRole=tsRoleDao.selectList(tsRoleQueryWrapper); + for(TsRole tsRole:rootRole){ + tsRole.setChildren(recursionGetRole(tsRole)); + } + return rootRole; + } + + /** + * 递归查询子角色 + * @param tsRole:父角色 + * @return List + */ + private List recursionGetRole(TsRole tsRole){ + QueryWrapper tsRoleQueryWrapper=new QueryWrapper<>(); + tsRoleQueryWrapper.eq("parent_id",tsRole.getId()); + tsRoleQueryWrapper.eq("role_level",tsRole.getRoleLevel()+1); + List tsRoles=tsRoleDao.selectList(tsRoleQueryWrapper); + for(TsRole tsRoleNode:tsRoles){ + tsRoleNode.setChildren(recursionGetRole(tsRoleNode)); + } + return tsRoles; + } + + /** + * 通过名字查询角色 + * @param name:角色名 + * @return List + */ + @Override + public List getByName(String name) { + QueryWrapper tsRoleQueryWrapper=new QueryWrapper<>(); + tsRoleQueryWrapper.like("name","%"+name+"%"); + return tsRoleDao.selectList(tsRoleQueryWrapper); + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java index f1e7010e..eaa78cf3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java @@ -22,7 +22,7 @@ import javax.validation.constraints.NotNull; * *

    * - * @author zyl + * @author zxy * @since 2021-06-22 */ @Data diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml new file mode 100644 index 00000000..98887dad --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml @@ -0,0 +1,5 @@ + + + + + From bb5657ca40708598c869d901794067333c46fbcd Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 22 Jun 2021 17:34:38 +0800 Subject: [PATCH 20/57] =?UTF-8?q?feat=20=E8=A7=A3=E5=86=B3=E5=86=B2?= =?UTF-8?q?=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SarStandardsInfoServiceImpl.java | 241 +++++++++--------- 1 file changed, 125 insertions(+), 116 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index dd9aec44..0bf861b2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -10,7 +10,6 @@ import com.adc.da.person.dao.PersonCollectEODao; import com.adc.da.person.dao.PersonShareEODao; import com.adc.da.person.entity.PersonMsgEO; import com.adc.da.person.service.IPersonCollectEOService; -import com.adc.da.search.service.StandLawsSearchService; import com.adc.da.slrs.sarLawsInfo.entity.SarLawsInfo; import com.adc.da.slrs.sarLawsInfo.page.SarLawsInfoEOPage; import com.adc.da.slrs.sarLawsInfo.page.SarLawsItemsEOPage; @@ -160,8 +159,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrInfoMap) { - Set keys = attrInfoMap.keySet(); - for (String key:keys) { - String value = String.valueOf(attrInfoMap.get(key)); - if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key)){ - value = value.replace(" , ",","); - value = value.replace(","," , "); - attrInfoMap.put(key,value); - } - } - // 根据文件attid 读取文件内容 - if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { - String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); - StringBuilder content = new StringBuilder(""); - for (int i = 0; i < attidlist.length; i++) { - if(org.apache.commons.lang.StringUtils.isNotEmpty(attidlist[i]) ){ - AttFileEO attFileEO = attFileEOService.getFileInfo(attidlist[i]); - String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName(); - try { - // 判断文件是docx还是PDF - if (null != attFileEO.getFileSuffix() && (attFileEO.getFileSuffix().equals("docx") || attFileEO.getFileSuffix().equals("doc") || attFileEO.getFileSuffix().equals("ppt") || attFileEO.getFileSuffix().equals("pptx"))) { - if(attFileEO.getFileSuffix().equals("doc")){ - FileInputStream fis = new FileInputStream(readFilePath); - WordExtractor wordExtractor = new WordExtractor(fis); - String txt = wordExtractor.getText(); - content.append(txt); - }else { - OPCPackage opcPackage = XWPFDocument.openPackage(readFilePath); - XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage); - String txt = extractor.getText(); - content.append(txt); - } - } else { - PDDocument document = PDDocument.load(new File(readFilePath)); - document.getClass(); - if (!document.isEncrypted()) { - PDFTextStripperByArea stripper = new PDFTextStripperByArea(); - stripper.setSortByPosition(true); - PDFTextStripper tStripper = new PDFTextStripper(); - String pdfFileInText = tStripper.getText(document); - // String[] lines = pdfFileInText.split("\\r?\\n"); - content.append(pdfFileInText); - } - } - } catch (Exception e) { - logger.error("搜索中心新增数据读取文档内容时失败"); - logger.error(e.getMessage(),e); - } - /*catch (IOException | OpenXML4JException | XmlException e) { - logger.error(e.getMessage(),e); - }*/ - attrInfoMap.put("content",content.toString()); - } - } - } - else{ - attrInfoMap.put("content",""); - } - standLawsSearchService.addStandLawsSearchForMap(attrInfoMap); + } @Override public void updateIntoIndexForMap(Map attrInfoMap) { - Set keys = attrInfoMap.keySet(); - for (String key:keys) { - String value = String.valueOf(attrInfoMap.get(key)); - if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key) && !"content".equals(key)){ - value = value.replace(" , ",","); - value = value.replace(","," , "); - attrInfoMap.put(key,value); - } - } - // 根据文件attid 读取文件内容 - if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { - String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); - StringBuilder content = new StringBuilder(""); - for (int i = 0; i < attidlist.length; i++) { - if(org.apache.commons.lang.StringUtils.isNotEmpty(attidlist[i]) && !"null".equals(attidlist[i])){ - AttFileEO attFileEO = attFileEOService.getFileInfo(attidlist[i]); - String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName(); - try { - // 判断文件是docx还是PDF - if (attFileEO.getFileSuffix().equals("docx") || attFileEO.getFileSuffix().equals("doc")) { - if(attFileEO.getFileSuffix().equals("doc")){ - FileInputStream fis = new FileInputStream(readFilePath); - WordExtractor wordExtractor = new WordExtractor(fis); - String txt = wordExtractor.getText(); - content.append(txt); - }else { - OPCPackage opcPackage = XWPFDocument.openPackage(readFilePath); - XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage); - String txt = extractor.getText(); - content.append(txt); - } - } else if (attFileEO.getFileSuffix().equals("pdf")){ - PDDocument document = PDDocument.load(new File(readFilePath)); - document.getClass(); - if (!document.isEncrypted()) { - PDFTextStripperByArea stripper = new PDFTextStripperByArea(); - stripper.setSortByPosition(true); - PDFTextStripper tStripper = new PDFTextStripper(); - String pdfFileInText = tStripper.getText(document); - // String[] lines = pdfFileInText.split("\\r?\\n"); - content.append(pdfFileInText); - } - } - } catch (Exception e) { - logger.error("搜索中心修改数据读取文档内容时失败"); - logger.error(e.getMessage(),e); - } - attrInfoMap.put("content",content.toString()); - } - } - } - else{ - attrInfoMap.put("content",""); - } - standLawsSearchService.updateStandLawsSearchForMap(attrInfoMap); + } +// +// @Override +// public void insertIntoIndexForMap(Map attrInfoMap) { +// Set keys = attrInfoMap.keySet(); +// for (String key:keys) { +// String value = String.valueOf(attrInfoMap.get(key)); +// if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key)){ +// value = value.replace(" , ",","); +// value = value.replace(","," , "); +// attrInfoMap.put(key,value); +// } +// } +// // 根据文件attid 读取文件内容 +// if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { +// String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); +// StringBuilder content = new StringBuilder(""); +// for (int i = 0; i < attidlist.length; i++) { +// if(org.apache.commons.lang.StringUtils.isNotEmpty(attidlist[i]) ){ +// AttFileEO attFileEO = attFileEOService.getFileInfo(attidlist[i]); +// String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName(); +// try { +// // 判断文件是docx还是PDF +// if (null != attFileEO.getFileSuffix() && (attFileEO.getFileSuffix().equals("docx") || attFileEO.getFileSuffix().equals("doc") || attFileEO.getFileSuffix().equals("ppt") || attFileEO.getFileSuffix().equals("pptx"))) { +// if(attFileEO.getFileSuffix().equals("doc")){ +// FileInputStream fis = new FileInputStream(readFilePath); +// WordExtractor wordExtractor = new WordExtractor(fis); +// String txt = wordExtractor.getText(); +// content.append(txt); +// }else { +// OPCPackage opcPackage = XWPFDocument.openPackage(readFilePath); +// XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage); +// String txt = extractor.getText(); +// content.append(txt); +// } +// } else { +// PDDocument document = PDDocument.load(new File(readFilePath)); +// document.getClass(); +// if (!document.isEncrypted()) { +// PDFTextStripperByArea stripper = new PDFTextStripperByArea(); +// stripper.setSortByPosition(true); +// PDFTextStripper tStripper = new PDFTextStripper(); +// String pdfFileInText = tStripper.getText(document); +// // String[] lines = pdfFileInText.split("\\r?\\n"); +// content.append(pdfFileInText); +// } +// } +// } catch (Exception e) { +// logger.error("搜索中心新增数据读取文档内容时失败"); +// logger.error(e.getMessage(),e); +// } +// /*catch (IOException | OpenXML4JException | XmlException e) { +// logger.error(e.getMessage(),e); +// }*/ +// attrInfoMap.put("content",content.toString()); +// } +// } +// } +// else{ +// attrInfoMap.put("content",""); +// } +// standLawsSearchService.addStandLawsSearchForMap(attrInfoMap); +// } +// +// @Override +// public void updateIntoIndexForMap(Map attrInfoMap) { +// Set keys = attrInfoMap.keySet(); +// for (String key:keys) { +// String value = String.valueOf(attrInfoMap.get(key)); +// if (com.adc.da.util.utils.StringUtils.isNotBlank(value) && !"null".equals(value) && !"SVPPS".equals(key) && !"content".equals(key)){ +// value = value.replace(" , ",","); +// value = value.replace(","," , "); +// attrInfoMap.put(key,value); +// } +// } +// // 根据文件attid 读取文件内容 +// if (org.apache.commons.lang.StringUtils.isNotEmpty(String.valueOf(attrInfoMap.get("content")))) { +// String[] attidlist = String.valueOf(attrInfoMap.get("content")).split(" , "); +// StringBuilder content = new StringBuilder(""); +// for (int i = 0; i < attidlist.length; i++) { +// if(org.apache.commons.lang.StringUtils.isNotEmpty(attidlist[i]) && !"null".equals(attidlist[i])){ +// AttFileEO attFileEO = attFileEOService.getFileInfo(attidlist[i]); +// String readFilePath = filePath + "/" + attFileEO.getFilePath() + attFileEO.getFileName(); +// try { +// // 判断文件是docx还是PDF +// if (attFileEO.getFileSuffix().equals("docx") || attFileEO.getFileSuffix().equals("doc")) { +// if(attFileEO.getFileSuffix().equals("doc")){ +// FileInputStream fis = new FileInputStream(readFilePath); +// WordExtractor wordExtractor = new WordExtractor(fis); +// String txt = wordExtractor.getText(); +// content.append(txt); +// }else { +// OPCPackage opcPackage = XWPFDocument.openPackage(readFilePath); +// XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage); +// String txt = extractor.getText(); +// content.append(txt); +// } +// } else if (attFileEO.getFileSuffix().equals("pdf")){ +// PDDocument document = PDDocument.load(new File(readFilePath)); +// document.getClass(); +// if (!document.isEncrypted()) { +// PDFTextStripperByArea stripper = new PDFTextStripperByArea(); +// stripper.setSortByPosition(true); +// PDFTextStripper tStripper = new PDFTextStripper(); +// String pdfFileInText = tStripper.getText(document); +// // String[] lines = pdfFileInText.split("\\r?\\n"); +// content.append(pdfFileInText); +// } +// } +// } catch (Exception e) { +// logger.error("搜索中心修改数据读取文档内容时失败"); +// logger.error(e.getMessage(),e); +// } +// attrInfoMap.put("content",content.toString()); +// } +// } +// } +// else{ +// attrInfoMap.put("content",""); +// } +// standLawsSearchService.updateStandLawsSearchForMap(attrInfoMap); +// } public void getStandDetailsForAct (SarStandardsInfoEOPage page,String[] idArr,String standState,List standList) throws Exception{ page.setPageSize(100); From a1503fd90f0a2b3d77fdd7f559542b65a0511cc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Wed, 23 Jun 2021 09:22:55 +0800 Subject: [PATCH 21/57] =?UTF-8?q?fetch:UUID=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-slrs/pom.xml | 19 ++----------------- .../adc/da/mq/service/CreateMQService.java | 8 ++++---- .../sarRole/controller/TsRoleController.java | 8 ++++++++ .../adc/da/slrs/sarRole/entity/TsRole.java | 5 +++++ .../impl/SarStandardsInfoServiceImpl.java | 7 ------- 5 files changed, 19 insertions(+), 28 deletions(-) diff --git a/adc-da-slrs/pom.xml b/adc-da-slrs/pom.xml index f1af9847..7ca6eb4c 100644 --- a/adc-da-slrs/pom.xml +++ b/adc-da-slrs/pom.xml @@ -11,12 +11,7 @@ adc-da-slrs - - com.adc - adc-da-search - 1.0.0 - compile - + com.adc adc-da-base @@ -41,17 +36,7 @@ 3.1.0 compile - - com.adc - adc-da-util - 2.2.41 - - - org.bouncycastle - bcprov-jdk14 - - - + diff --git a/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java b/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java index 7a7e1795..c11456a1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/mq/service/CreateMQService.java @@ -2,8 +2,8 @@ package com.adc.da.mq.service; import com.adc.da.common.ConvertMqEO; import com.adc.da.mq.dao.OtConvertEODao; -import com.adc.da.util.utils.StringUtils; -import com.adc.da.util.utils.UUID; +import com.adc.da.util.UUIDUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.amqp.core.AmqpTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -27,7 +27,7 @@ public class CreateMQService { * @return int **/ public void sendMQ(ConvertMqEO convert) throws Exception{ - String otId = UUID.randomUUID(20); + String otId = UUIDUtils.randomUUID20(); //向OT_CONVERT_EO表中添加/修改数据 //判断用户是初次发送还是重新发送,初次将添加到数据库,重新发送将修改原数据信息 convert.setMqState(0); @@ -62,7 +62,7 @@ public class CreateMQService { //otId在转换表中数据ID convertInfo.put("otId", otId); //在stand_file等资源与文件关联表中转换成功的pdf数据ID - convertInfo.put("standFilePdfId", UUID.randomUUID(20)); + convertInfo.put("standFilePdfId", UUIDUtils.randomUUID20()); convertInfo.put("againNum",0); } else { convertInfo.put("otId", convert.getId()); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index 63ef691b..444ca822 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -6,7 +6,9 @@ import com.adc.da.http.Result; import com.adc.da.slrs.sarRole.service.ITsRoleService; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import com.adc.da.slrs.sarRole.entity.TsRole; import io.swagger.annotations.Api; @@ -43,4 +45,10 @@ public class TsRoleController extends BaseController { List tsRoles=tsRoleService.getByName(name); return Result.success(tsRoles); } + + @ApiOperation("新增角色") + @PostMapping + public ResponseMessage> addRole(@Validated(TsRole.insert.class) TsRole tsRole){ + return null; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java index c57db19f..c95e91e6 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java @@ -18,6 +18,8 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.springframework.format.annotation.DateTimeFormat; +import javax.validation.constraints.NotNull; + /** *

    * @@ -31,6 +33,8 @@ import org.springframework.format.annotation.DateTimeFormat; @Accessors(chain = true) @ApiModel(value="TsRole对象", description="") public class TsRole extends BaseEntity { + public interface insert{ + } private static final long serialVersionUID = 1L; @@ -38,6 +42,7 @@ public class TsRole extends BaseEntity { @TableId("ID") private String id; + @NotNull(message = "name不能为空",groups = {insert.class}) @ApiModelProperty(value = "角色名称") @TableField("NAME") private String name; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 0bf861b2..2b266c52 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -51,13 +51,6 @@ import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import net.sf.json.JSONObject; import org.apache.commons.lang3.StringUtils; -import org.apache.pdfbox.pdmodel.PDDocument; -import org.apache.pdfbox.util.PDFTextStripper; -import org.apache.pdfbox.util.PDFTextStripperByArea; -import org.apache.poi.hwpf.extractor.WordExtractor; -import org.apache.poi.openxml4j.opc.OPCPackage; -import org.apache.poi.xwpf.extractor.XWPFWordExtractor; -import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; From a01ca3fd4947d4b5166751a0b7a03172136a0863 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Wed, 23 Jun 2021 10:43:31 +0800 Subject: [PATCH 22/57] =?UTF-8?q?feat=20=E9=87=8D=E5=86=99=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E8=AF=A1=E5=BC=82=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...tHolder.java => SpringContextHolder1.java} | 2 +- .../com/adc/da/login/util/CacheUtils.java | 4 +- .../java/com/adc/da/login/util/UserUtils.java | 8 +- adc-da-search/pom.xml | 2 + .../controller/SearchCenterController.java | 8 +- .../controller/StandLawsSearchController.java | 2 +- .../da/search/controller/TestController.java | 2 +- .../adc/da/search/entity/SearchInfoEO.java | 2 +- .../da/search/entity/SeniorSearchInfoEO.java | 566 +----------------- .../adc/da/search/page/PartProductEOPage.java | 2 +- .../service/impl/SearchCenterServiceImpl.java | 130 +--- pom.xml | 1 + 12 files changed, 38 insertions(+), 691 deletions(-) rename adc-da-base/src/main/java/com/adc/da/util/{SpringContextHolder.java => SpringContextHolder1.java} (94%) diff --git a/adc-da-base/src/main/java/com/adc/da/util/SpringContextHolder.java b/adc-da-base/src/main/java/com/adc/da/util/SpringContextHolder1.java similarity index 94% rename from adc-da-base/src/main/java/com/adc/da/util/SpringContextHolder.java rename to adc-da-base/src/main/java/com/adc/da/util/SpringContextHolder1.java index 99581cb6..a1de3346 100644 --- a/adc-da-base/src/main/java/com/adc/da/util/SpringContextHolder.java +++ b/adc-da-base/src/main/java/com/adc/da/util/SpringContextHolder1.java @@ -6,7 +6,7 @@ import org.springframework.context.ApplicationContextAware; import org.springframework.stereotype.Component; @Component -public class SpringContextHolder implements ApplicationContextAware { +public class SpringContextHolder1 implements ApplicationContextAware { private static ApplicationContext applicationContext; diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/CacheUtils.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/CacheUtils.java index 079403f4..a855ef5b 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/CacheUtils.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/CacheUtils.java @@ -1,6 +1,6 @@ package com.adc.da.login.util; -import com.adc.da.util.SpringContextHolder; +import com.adc.da.util.SpringContextHolder1; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheManager; import net.sf.ehcache.Element; @@ -14,7 +14,7 @@ public class CacheUtils { super(); } - private static CacheManager cacheManager = (CacheManager) SpringContextHolder.getBean("ehCacheManagerFactoryBean"); + private static CacheManager cacheManager = (CacheManager) SpringContextHolder1.getBean("ehCacheManagerFactoryBean"); private static final String SYS_CACHE = "sysCache"; diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/UserUtils.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/UserUtils.java index cc409e88..0a8b15db 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/UserUtils.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/UserUtils.java @@ -9,7 +9,7 @@ import com.adc.da.sys.entity.UserEO; import com.adc.da.sys.service.IMenuEOService; import com.adc.da.sys.service.IRoleEOService; import com.adc.da.sys.service.IUserEOService; -import com.adc.da.util.SpringContextHolder; +import com.adc.da.util.SpringContextHolder1; import com.google.common.collect.Maps; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; @@ -53,17 +53,17 @@ public class UserUtils { /** * @see IUserEOService */ - private static IUserEOService userService = SpringContextHolder.getBean(IUserEOService.class); + private static IUserEOService userService = SpringContextHolder1.getBean(IUserEOService.class); /** * @see IMenuEOService */ - private static IMenuEOService menuService = SpringContextHolder.getBean(IMenuEOService.class); + private static IMenuEOService menuService = SpringContextHolder1.getBean(IMenuEOService.class); /** * @see IRoleEOService */ - private static IRoleEOService roleEOService = SpringContextHolder.getBean(IRoleEOService.class); + private static IRoleEOService roleEOService = SpringContextHolder1.getBean(IRoleEOService.class); /** * 退出 diff --git a/adc-da-search/pom.xml b/adc-da-search/pom.xml index ae2ae633..7ee5b3dc 100644 --- a/adc-da-search/pom.xml +++ b/adc-da-search/pom.xml @@ -53,6 +53,8 @@ + + com.adc adc-da-base diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java index 27957f6f..88aa8c56 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java @@ -4,7 +4,7 @@ import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import com.adc.da.base.web.BaseController; -import com.adc.da.person.service.PersonCollectEOService; +import com.adc.da.person.service.IPersonCollectEOService; import com.adc.da.search.dto.*; import com.adc.da.search.entity.SarAdvanceSearchVO; import com.adc.da.search.entity.SeniorSearchInfoEO; @@ -38,7 +38,7 @@ import static com.adc.da.sys.common.ReadExcelName.encodeFileName; @RestController @RequestMapping("/${restPath}/search/searchCenter") -@Api(description = "|SearchCenter|") +@Api(tags = "|SearchCenter|") public class SearchCenterController extends BaseController> { @Autowired @@ -47,7 +47,7 @@ public class SearchCenterController extends BaseController> private SearchCenterService searchCenterService; @Autowired - private PersonCollectEOService personCollectEOService; + private IPersonCollectEOService personCollectEOService; @Autowired private ElasticsearchService elasticsearchService; @@ -60,7 +60,7 @@ public class SearchCenterController extends BaseController> @ApiOperation(value = "|SearchCenter|查询") @PostMapping(value="/searchSarBykey") public ResponseMessage>> searchSarBykey(SeniorSearchInfoEO searchInfoEO) throws Exception{ - List> result = new ArrayList<>(); + List> result; if (StringUtils.isAlphanumericSpace(searchInfoEO.getSelectIndex())) { if(elasticsearchService.isIndexExist(searchInfoEO.getSelectIndex())){ if("fulltextserch".equals(searchInfoEO.getSelectIndex()) || "fulltextserch"== searchInfoEO.getSelectIndex()){ diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java index c768df38..3720d8da 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java @@ -20,7 +20,7 @@ import java.util.Map; @RestController @RequestMapping("/${restPath}/search/standLawsSearch") -@Api(description = "|StandLawsSearch|") +@Api(tags = "|StandLawsSearch|") public class StandLawsSearchController extends BaseController> { private static final Logger logger = LoggerFactory.getLogger(StandLawsSearchController.class); diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java index 5b3e10f4..419eed66 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/TestController.java @@ -34,7 +34,7 @@ import static com.adc.da.search.util.ElasticsearchConstant.SUCCESS_DELETED; @RestController @RequestMapping("/${restPath}") -@Api(description = "|testElasticsearch|") +@Api(tags = "|testElasticsearch|") public class TestController { private static final Logger logger = LoggerFactory.getLogger(TestController.class); diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java index aad0e5e0..1e69ed01 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SearchInfoEO.java @@ -1,6 +1,6 @@ package com.adc.da.search.entity; -import com.adc.da.sys.common.BasePage; +import com.adc.da.base.page.BasePage; import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java index eb9a62cc..7f2107ed 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/SeniorSearchInfoEO.java @@ -1,7 +1,9 @@ package com.adc.da.search.entity; -import com.adc.da.sys.common.BasePage; +import com.adc.da.base.page.BasePage; import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; import java.util.Date; import java.util.List; @@ -12,7 +14,8 @@ import java.util.List; * 日期: 2018-09-03
    * 版权所有:版权归北京卡达克数据技术中心所有。
    */ - +@EqualsAndHashCode(callSuper = true) +@Data public class SeniorSearchInfoEO extends BasePage { private String standType; //标准性质 @@ -153,563 +156,4 @@ public class SeniorSearchInfoEO extends BasePage { private String stand_status; private String isHigh; - public String getNature() { - return nature; - } - - public void setNature(String nature) { - this.nature = nature; - } - - public String getCountry() { - return country; - } - - public void setCountry(String country) { - this.country = country; - } - - public String getStandSort() { - return standSort; - } - - public void setStandSort(String standSort) { - this.standSort = standSort; - } - - public String getNumberShow() { - return numberShow; - } - - public void setNumberShow(String numberShow) { - this.numberShow = numberShow; - } - - public String getNameShow() { - return nameShow; - } - - public void setNameShow(String nameShow) { - this.nameShow = nameShow; - } - - public String getApplyArctic() { - return applyArctic; - } - - public void setApplyArctic(String applyArctic) { - this.applyArctic = applyArctic; - } - - public String getApplyAuth() { - return applyAuth; - } - - public void setApplyAuth(String applyAuth) { - this.applyAuth = applyAuth; - } - - public String getCategory() { - return category; - } - - public void setCategory(String category) { - this.category = category; - } - - public String getEnergyKind() { - return energyKind; - } - - public void setEnergyKind(String energyKind) { - this.energyKind = energyKind; - } - - public String getAdoptExtent() { - return adoptExtent; - } - - public void setAdoptExtent(String adoptExtent) { - this.adoptExtent = adoptExtent; - } - - public String getStandState() { - return standState; - } - - public void setStandState(String standState) { - this.standState = standState; - } - - public Date getIssueTime() { - return issueTime; - } - - public void setIssueTime(Date issueTime) { - this.issueTime = issueTime; - } - - public String getSelectKey() { - return selectKey; - } - - public void setSelectKey(String selectKey) { - this.selectKey = selectKey; - } - - public String getSelectValue() { - return selectValue; - } - - public void setSelectValue(String selectValue) { - this.selectValue = selectValue; - } - - public Date getSelectStartTime() { - return selectStartTime; - } - - public void setSelectStartTime(Date selectStartTime) { - this.selectStartTime = selectStartTime; - } - - public Date getSelectEndTime() { - return selectEndTime; - } - - public void setSelectEndTime(Date selectEndTime) { - this.selectEndTime = selectEndTime; - } - - public String getSelectIndex() { - return selectIndex; - } - - public void setSelectIndex(String selectIndex) { - this.selectIndex = selectIndex; - } - - public String getBussBigClass() { - return bussBigClass; - } - - public void setBussBigClass(String bussBigClass) { - this.bussBigClass = bussBigClass; - } - - public String getBussFineClass() { - return bussFineClass; - } - - public void setBussFineClass(String bussFineClass) { - this.bussFineClass = bussFineClass; - } - - public String getStandNumber() { - return standNumber; - } - - public void setStandNumber(String standNumber) { - this.standNumber = standNumber; - } - - public String getStandYear() { - return standYear; - } - - public void setStandYear(String standYear) { - this.standYear = standYear; - } - - public String getStandEnName() { - return standEnName; - } - - public void setStandEnName(String standEnName) { - this.standEnName = standEnName; - } - - public String getReplaceStandNum() { - return replaceStandNum; - } - - public void setReplaceStandNum(String replaceStandNum) { - this.replaceStandNum = replaceStandNum; - } - - public String getReplacedStandNum() { - return replacedStandNum; - } - - public void setReplacedStandNum(String replacedStandNum) { - this.replacedStandNum = replacedStandNum; - } - - public String getInterStandNum() { - return interStandNum; - } - - public void setInterStandNum(String interStandNum) { - this.interStandNum = interStandNum; - } - - public Date getPutTime() { - return putTime; - } - - public void setPutTime(Date putTime) { - this.putTime = putTime; - } - - public Date getNewproductPutTime() { - return newproductPutTime; - } - - public void setNewproductPutTime(Date newproductPutTime) { - this.newproductPutTime = newproductPutTime; - } - - public Date getProductPutTime() { - return productPutTime; - } - - public void setProductPutTime(Date productPutTime) { - this.productPutTime = productPutTime; - } - - public Date getNewcarPutTime() { - return newcarPutTime; - } - - public void setNewcarPutTime(Date newcarPutTime) { - this.newcarPutTime = newcarPutTime; - } - - public String getDraftUser() { - return draftUser; - } - - public void setDraftUser(String draftUser) { - this.draftUser = draftUser; - } - - public String getDraftingUnit() { - return draftingUnit; - } - - public void setDraftingUnit(String draftingUnit) { - this.draftingUnit = draftingUnit; - } - - public String getTags() { - return tags; - } - - public void setTags(String tags) { - this.tags = tags; - } - - public String getSynopsis() { - return synopsis; - } - - public void setSynopsis(String synopsis) { - this.synopsis = synopsis; - } - - public String getResponsibleUnit() { - return responsibleUnit; - } - - public void setResponsibleUnit(String responsibleUnit) { - this.responsibleUnit = responsibleUnit; - } - - public String getClassifyCode() { - return classifyCode; - } - - public void setClassifyCode(String classifyCode) { - this.classifyCode = classifyCode; - } - - public String getPutYear() { - return putYear; - } - - public void setPutYear(String putYear) { - this.putYear = putYear; - } - - public String getFirstPutTime() { - return firstPutTime; - } - - public void setFirstPutTime(String firstPutTime) { - this.firstPutTime = firstPutTime; - } - - public String getQuoteStand() { - return quoteStand; - } - - public void setQuoteStand(String quoteStand) { - this.quoteStand = quoteStand; - } - - public String getCitationUser() { - return citationUser; - } - - public void setCitationUser(String citationUser) { - this.citationUser = citationUser; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getPubUserName() { - return pubUserName; - } - - public void setPubUserName(String pubUserName) { - this.pubUserName = pubUserName; - } - - public String getPubOrgName() { - return pubOrgName; - } - - public void setPubOrgName(String pubOrgName) { - this.pubOrgName = pubOrgName; - } - - public String getModule() { - return module; - } - - public void setModule(String module) { - this.module = module; - } - - public String getIssueUnit() { - return issueUnit; - } - - public void setIssueUnit(String issueUnit) { - this.issueUnit = issueUnit; - } - - public Date getRegisterPutTime() { - return registerPutTime; - } - - public void setRegisterPutTime(Date registerPutTime) { - this.registerPutTime = registerPutTime; - } - - public String getResultKeyword() { - return resultKeyword; - } - - public void setResultKeyword(String resultKeyword) { - this.resultKeyword = resultKeyword; - } - - public String getKeywords() { - return keywords; - } - - public void setKeywords(String keywords) { - this.keywords = keywords; - } - - public Date getIssueTimeSt() { - return issueTimeSt; - } - - public void setIssueTimeSt(Date issueTimeSt) { - this.issueTimeSt = issueTimeSt; - } - - public Date getIssueTimeEd() { - return issueTimeEd; - } - - public void setIssueTimeEd(Date issueTimeEd) { - this.issueTimeEd = issueTimeEd; - } - - public Date getPutTimeSt() { - return putTimeSt; - } - - public void setPutTimeSt(Date putTimeSt) { - this.putTimeSt = putTimeSt; - } - - public Date getPutTimeEd() { - return putTimeEd; - } - - public void setPutTimeEd(Date putTimeEd) { - this.putTimeEd = putTimeEd; - } - - public String getItemsName() { - return itemsName; - } - - public void setItemsName(String itemsName) { - this.itemsName = itemsName; - } - - public String getItemsNum() { - return itemsNum; - } - - public void setItemsNum(String itemsNum) { - this.itemsNum = itemsNum; - } - - public String getParts() { - return parts; - } - - public void setParts(String parts) { - this.parts = parts; - } - - public Date getNewcarPutTimeSt() { - return newcarPutTimeSt; - } - - public void setNewcarPutTimeSt(Date newcarPutTimeSt) { - this.newcarPutTimeSt = newcarPutTimeSt; - } - - public Date getNewcarPutTimeEd() { - return newcarPutTimeEd; - } - - public void setNewcarPutTimeEd(Date newcarPutTimeEd) { - this.newcarPutTimeEd = newcarPutTimeEd; - } - - public Date getProductPutTimeSt() { - return productPutTimeSt; - } - - public void setProductPutTimeSt(Date productPutTimeSt) { - this.productPutTimeSt = productPutTimeSt; - } - - public Date getProductPutTimeEd() { - return productPutTimeEd; - } - - public void setProductPutTimeEd(Date productPutTimeEd) { - this.productPutTimeEd = productPutTimeEd; - } - - public String getStandType() { - return standType; - } - - public void setStandType(String standType) { - this.standType = standType; - } - - public List getAdvanceSearchVOList() { - return advanceSearchVOList; - } - - public void setAdvanceSearchVOList(List advanceSearchVOList) { - this.advanceSearchVOList = advanceSearchVOList; - } - - public String getCLLX() { - return CLLX; - } - - public void setCLLX(String CLLX) { - this.CLLX = CLLX; - } - - public String getCYSD() { - return CYSD; - } - - public void setCYSD(String CYSD) { - this.CYSD = CYSD; - } - - public String getCBCD() { - return CBCD; - } - - public void setCBCD(String CBCD) { - this.CBCD = CBCD; - } - - public String getZRLX() { - return ZRLX; - } - - public void setZRLX(String ZRLX) { - this.ZRLX = ZRLX; - } - - public String getSYCLLX() { - return SYCLLX; - } - - public void setSYCLLX(String SYCLLX) { - this.SYCLLX = SYCLLX; - } - - public String getWSSFCY() { - return WSSFCY; - } - - public void setWSSFCY(String WSSFCY) { - this.WSSFCY = WSSFCY; - } - - public String getAdvanceSearchVOStr() { - return advanceSearchVOStr; - } - - public void setAdvanceSearchVOStr(String advanceSearchVOStr) { - this.advanceSearchVOStr = advanceSearchVOStr; - } - - public String getStand_status() { - return stand_status; - } - - public void setStand_status(String stand_status) { - this.stand_status = stand_status; - } - - public String getZQCBM() { - return ZQCBM; - } - - public void setZQCBM(String ZQCBM) { - this.ZQCBM = ZQCBM; - } - - public String getIsHigh() { - return isHigh; - } - - public void setIsHigh(String isHigh) { - this.isHigh = isHigh; - } } diff --git a/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java b/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java index d965d4a1..7aad57d3 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java +++ b/adc-da-search/src/main/java/com/adc/da/search/page/PartProductEOPage.java @@ -1,6 +1,6 @@ package com.adc.da.search.page; -import com.adc.da.sys.common.BasePage; +import com.adc.da.base.page.BasePage; import java.util.Date; diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index 48384407..13bc2063 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -79,131 +79,31 @@ public class SearchCenterServiceImpl implements SearchCenterService { BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue()) && StringUtils.isBlank(searchInfoEO.getIsHigh())){ QueryBuilder multiQueryBuilder; + List strings=new ArrayList<>(); switch (searchInfoEO.getSelectIndex()){ case "stand": - multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), - numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standSortShow","standstateshow","countryShow","standEnName", - "synopsis","baseSearchContent",content,"CYSDShow","CLLXShow","standstateshow","ZRLXShow","stand_name","stand_number","citeStand","DTBJH","FGXXSXXXShow","CBBH","YYBJ","XGLC","synopsis","isRelateAccess","GKDWShow","CYSDShow","FBJGShow","ZRLXShow","GXHBQShow","GZZXXName","YQLXShow","FGWHRName","ZRBMShow","XGBMShow","SVPPSName","FOShow","XMPGJSShow","BDTBZBH","BYYBJ","issue_time","ZCCSSRQ","XCXSSRQ","accessCountry").minimumShouldMatch("100%"); - boolQueryMust.must(multiQueryBuilder); - boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("CYSDShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("CLLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZRLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("stand_name", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("DTBJH", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FGXXSXXXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("CBBH", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("YYBJ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("synopsis", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("isRelateAccess", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("GKDWShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("CYSDShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FBJGShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZRLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("GXHBQShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("GZZXXName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("YQLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XCXSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZCCSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("EOPSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FGWHRName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XGBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FOShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XMPGJSShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("accessCountry", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("content", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("BDTBZBH", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("BYYBJ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("stand_number", "*"+searchInfoEO.getSelectValue()+"*")); + strings=Arrays.asList(numbershowSplit, nameshowSplit, numbershowStr, nameshowStr, "numberExpNull", "standSortShow", "standstateshow", "countryShow", "standEnName", "synopsis", "baseSearchContent", content, "CYSDShow", "CLLXShow", "standstateshow", "ZRLXShow", "stand_name", "stand_number", "citeStand", "DTBJH", "FGXXSXXXShow", "CBBH", "YYBJ", "XGLC", "synopsis", "isRelateAccess", "GKDWShow", "CYSDShow", "FBJGShow", "ZRLXShow", "GXHBQShow", "GZZXXName", "YQLXShow", "FGWHRName", "ZRBMShow", "XGBMShow", "SVPPSName", "FOShow", "XMPGJSShow", "BDTBZBH", "BYYBJ", "issue_time", "ZCCSSRQ", "XCXSSRQ", "accessCountry"); break; case "laws": - multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), - numbershowSplit,nameshowSplit,nameshowStr,numbershowStr,"numberExpNull","standstateshow","countryShow", "natureShow", "replace_laws_num", - "synopsis","standEnName",replacedStandNumStr,"baseSearchContent",content,"CYSDShow","SYCLLXShow","standstateshow","ZRLXShow","stand_number","isRelateAccess","YQLXShow","SYCLLXShow","GXHBQShow","ZCGCSShow","FBJGShow","SVPPSName","XGBMShow","ZRBMShow","FOShow","GKGLBMShow","WSSFCYShow","replaceLawsNum","replacedLawsNum","XMPGJSShow","issue_time","ZCCSSRQ","XCXSSRQ","EOPSSRQ","XGLC","accessCountry").minimumShouldMatch("100%"); - boolQueryMust.must(multiQueryBuilder); - boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(content, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("CYSDShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("SYCLLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("accessCountry", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZRLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("isRelateAccess", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("YQLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("SYCLLXShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("GXHBQShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XCXSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZCCSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("EOPSSRQ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZCGCSShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FBJGShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XGBMShow", "*"+searchInfoEO.getSelectValue()+"*")) -// .should(QueryBuilders.wildcardQuery("ZRBMName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FOShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("GKGLBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("content", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("WSSFCYShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("replaceLawsNum", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("replacedLawsNum", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XMPGJSShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("stand_number", "*"+searchInfoEO.getSelectValue()+"*")); + strings=Arrays.asList(numbershowSplit,nameshowSplit,nameshowStr,numbershowStr,"numberExpNull","standstateshow","countryShow", "natureShow", "replace_laws_num", + "synopsis","standEnName",replacedStandNumStr,"baseSearchContent",content,"CYSDShow","SYCLLXShow","standstateshow","ZRLXShow","stand_number","isRelateAccess","YQLXShow","SYCLLXShow","GXHBQShow","ZCGCSShow","FBJGShow","SVPPSName","XGBMShow","ZRBMShow","FOShow","GKGLBMShow","WSSFCYShow","replaceLawsNum","replacedLawsNum","XMPGJSShow","issue_time","ZCCSSRQ","XCXSSRQ","EOPSSRQ","XGLC","accessCountry"); break; case "bussstand": - multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), - numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standstateshow", "standEnName",replaceStandNumStr, + strings=Arrays.asList(numbershowSplit,nameshowSplit,numbershowStr,nameshowStr,"numberExpNull","standstateshow", "standEnName",replaceStandNumStr, replacedStandNumStr,"countryShow","synopsis","standSortShow","ZQCBMShow","ZQCBM","stand_status", - "baseSearchContent",content,"numbershow","nameshow","standstateshow","issue_time","replaceStandNum","replacedStandNum","QBMJShow","QBSQShow","XHQBMShow","SVPPSName","XGBMName","ZYQCRShow","ZRBMShow","ZQCBMName","QTQCRShow","content","FSRQString","FZRQString","put_time","XGLC","WFSPJSName","GFXYYWJ").minimumShouldMatch("100%"); - boolQueryMust.must(multiQueryBuilder); - boolQueryShould.should(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(numbershowSplit, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery(nameshowSplit, "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZQCBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZQCBM", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("stand_status", "*"+searchInfoEO.getSelectValue()+"*")) - - .should(QueryBuilders.wildcardQuery("numbershow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("standEnName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("content", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("issue_time", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("nameshow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("standstateshow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("replaceStandNum", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("replacedStandNum", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("QBMJShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("QBSQShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XHQBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("SVPPSName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XGBMName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZYQCRShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZRBMShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("ZQCBMName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("QTQCRShow", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FSRQString", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("FZRQString", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("XGLC", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("WFSPJSName", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("GFXYYWJ", "*"+searchInfoEO.getSelectValue()+"*")) - .should(QueryBuilders.wildcardQuery("put_time", "*"+searchInfoEO.getSelectValue()+"*")); + "baseSearchContent",content,"numbershow","nameshow","standstateshow","issue_time","replaceStandNum","replacedStandNum","QBMJShow","QBSQShow","XHQBMShow","SVPPSName","XGBMName","ZYQCRShow","ZRBMShow","ZQCBMName","QTQCRShow","content","FSRQString","FZRQString","put_time","XGLC","WFSPJSName","GFXYYWJ"); break; default: break; } + + multiQueryBuilder = QueryBuilders.multiMatchQuery(searchInfoEO.getSelectValue(), strings.toArray(new String[0])).minimumShouldMatch("100%"); + boolQueryMust.must(multiQueryBuilder); + + for (String string : strings) { + boolQueryShould.should(QueryBuilders.wildcardQuery(string, "*"+searchInfoEO.getSelectValue()+"*")); + } + + } //在结果中检索 diff --git a/pom.xml b/pom.xml index 4bff73b3..f3befa7e 100644 --- a/pom.xml +++ b/pom.xml @@ -36,6 +36,7 @@ adc-da-base adc-da-sys adc-da-jwtLogin + adc-da-search adc-da-slrs adc-da-activiti From f284c600886f5515a8669b9dec01b1131ec5f02f Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Thu, 24 Jun 2021 09:58:06 +0800 Subject: [PATCH 23/57] =?UTF-8?q?feat=20=E9=87=8D=E5=86=99=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E8=AF=A1=E5=BC=82=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-main/pom.xml | 5 +- adc-da-search/pom.xml | 414 ++++++++---------- .../controller/SearchCenterController.java | 22 +- .../controller/StandLawsSearchController.java | 4 +- .../impl/ElasticsearchServiceImpl.java | 2 +- .../service/impl/SearchCenterServiceImpl.java | 163 ++++--- .../impl/StandLawsSearchServiceImpl.java | 4 +- 7 files changed, 285 insertions(+), 329 deletions(-) diff --git a/adc-da-main/pom.xml b/adc-da-main/pom.xml index df55c43a..8d811d0a 100644 --- a/adc-da-main/pom.xml +++ b/adc-da-main/pom.xml @@ -64,9 +64,12 @@ - + + + + diff --git a/adc-da-search/pom.xml b/adc-da-search/pom.xml index 7ee5b3dc..38d5f6b0 100644 --- a/adc-da-search/pom.xml +++ b/adc-da-search/pom.xml @@ -1,247 +1,213 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 - - com.adc - foton-slrs-system-rest - 3.0.0 - + + com.adc + foton-slrs-system-rest + 3.0.0 + - adc-da-search - 1.0.0 + adc-da-search + 1.0.0 - jar + jar - - UTF-8 - UTF-8 - 1.8 - 1.7 - 1.8 - 2.6.6 - 1.4.0-RC2 - 4.3.9.RELEASE - + + UTF-8 + UTF-8 + 1.8 + 1.7 + 1.8 + 2.6.6 + 1.4.0-RC2 + 4.3.9.RELEASE + - - - adc - http://60.247.58.121:8182/nexus/content/groups/public - - true - - - true - - + + + adc + http://60.247.58.121:8182/nexus/content/groups/public + + true + + + true + + - + - - - thirdparty - Nexus Thirdparty Repository - http://60.247.58.121:8182/nexus/content/repositories/thirdparty/ - - + + + thirdparty + Nexus Thirdparty Repository + http://60.247.58.121:8182/nexus/content/repositories/thirdparty/ + + - - - - - - + + + + + + - - com.adc - adc-da-base - 2.0.0 - + + com.adc + adc-da-base + 3.0.0 + - - com.adc - adc-da-util - 2.2.41 - - - org.bouncycastle - bcprov-jdk14 - - - + + com.adc + adc-da-sys + 3.0.0 + + + com.adc + adc-da-excel + 2.0.3 + - - com.adc - adc-da-sys - 3.0.0 - + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.boot + spring-boot-starter-amqp + + + org.elasticsearch.client + transport + 6.3.2 + + + org.elasticsearch + elasticsearch + 6.3.2 + + + + org.apache.logging.log4j + log4j-core + + + org.springframework.boot + spring-boot-starter-web + + + - - com.adc - adc-da-file - 2.2.0 - + + net.sourceforge.javacsv + javacsv + 2.0 + + + net.sf.opencsv + opencsv + 2.3 + - - com.adc - adc-da-druid - 2.0.0 - - - com.adc - adc-da-excel - 2.0.3 - - - org.springframework.boot - spring-boot-starter-test - test - + + com.alibaba + fastjson + 1.2.9 + + + com.google.guava + guava + 19.0 + + + com.mashape.unirest + unirest-java + 1.4.9 + - - - org.springframework.boot - spring-boot-starter-amqp - - - org.elasticsearch.client - transport - 6.3.2 - - - org.elasticsearch - elasticsearch - 6.3.2 - - - - org.apache.logging.log4j - log4j-core - - - org.springframework.boot - spring-boot-starter-web - - - - - - org.springframework.boot - spring-boot-starter-jetty - - - org.mybatis.spring.boot - mybatis-spring-boot-starter - 1.2.0 - + + net.sf.json-lib + json-lib + 2.4 + jdk15 + + + commons-logging + commons-logging + + + commons-beanutils + commons-beanutils + + + commons-collections + commons-collections + + + + + org.apache.httpcomponents + httpclient + 4.4.1 + + + org.apache.httpcomponents + httpcore + 4.4.1 + - - net.sourceforge.javacsv - javacsv - 2.0 - - - net.sf.opencsv - opencsv - 2.3 - + + org.aspectj + aspectjweaver + - - com.alibaba - fastjson - 1.2.9 - - - com.google.guava - guava - 19.0 - - - com.mashape.unirest - unirest-java - 1.4.9 - + + + cn.afterturn + easypoi-base + 4.1.2 + + + cn.afterturn + easypoi-web + 4.1.2 + + + cn.afterturn + easypoi-annotation + 4.1.2 + - - net.sf.json-lib - json-lib - 2.4 - jdk15 - - - commons-logging - commons-logging - - - commons-beanutils - commons-beanutils - - - commons-collections - commons-collections - - - - - org.apache.httpcomponents - httpclient - 4.4.1 - - - org.apache.httpcomponents - httpcore - 4.4.1 - - - - org.aspectj - aspectjweaver - - - - - cn.afterturn - easypoi-base - 4.1.2 - - - cn.afterturn - easypoi-web - 4.1.2 - - - cn.afterturn - easypoi-annotation - 4.1.2 - - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - - ${java.version} - ${java.version} - ${java.version} - ${project.build.sourceEncoding} - - - - + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + ${java.version} + ${java.version} + ${java.version} + ${project.build.sourceEncoding} + + + + diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java index 88aa8c56..7a291e8a 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java @@ -1,24 +1,25 @@ package com.adc.da.search.controller; -import cn.afterturn.easypoi.excel.ExcelExportUtil; -import cn.afterturn.easypoi.excel.entity.ExportParams; -import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import com.adc.da.base.web.BaseController; +import com.adc.da.excel.poi.excel.ExcelExportUtil; +import com.adc.da.excel.poi.excel.entity.ExportParams; +import com.adc.da.excel.poi.excel.entity.enums.ExcelType; +import com.adc.da.http.PageInfo; import com.adc.da.person.service.IPersonCollectEOService; import com.adc.da.search.dto.*; import com.adc.da.search.entity.SarAdvanceSearchVO; import com.adc.da.search.entity.SeniorSearchInfoEO; import com.adc.da.search.service.ElasticsearchService; import com.adc.da.search.service.SearchCenterService; -import com.adc.da.util.exception.AdcDaBaseException; -import com.adc.da.util.http.PageInfo; -import com.adc.da.util.http.ResponseMessage; -import com.adc.da.util.http.Result; -import com.adc.da.util.utils.IOUtils; -import com.adc.da.util.utils.StringUtils; +import com.adc.da.exception.AdcDaBaseException; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.util.IOUtils; + import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.usermodel.Workbook; import org.elasticsearch.client.transport.TransportClient; import org.springframework.beans.factory.annotation.Autowired; @@ -33,7 +34,6 @@ import java.io.OutputStream; import java.text.SimpleDateFormat; import java.util.*; import java.util.regex.Pattern; - import static com.adc.da.sys.common.ReadExcelName.encodeFileName; @RestController @@ -271,7 +271,7 @@ public class SearchCenterController extends BaseController> dtoDatas.add(exportDto); } //导出数据到Excel - workbook = ExcelExportUtil.exportExcel(exportParams, SearchMsgExportDto.class, dtoDatas); + workbook = com.adc.da.excel.poi.excel.ExcelExportUtil.exportExcel(exportParams, SearchMsgExportDto.class, dtoDatas); } os = response.getOutputStream(); diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java index 3720d8da..7c99793a 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/StandLawsSearchController.java @@ -2,8 +2,8 @@ package com.adc.da.search.controller; import com.adc.da.base.web.BaseController; import com.adc.da.search.service.ElasticsearchService; -import com.adc.da.util.http.ResponseMessage; -import com.adc.da.util.http.Result; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.elasticsearch.common.xcontent.XContentBuilder; diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java index 8cde8438..251abac1 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java @@ -2,8 +2,8 @@ package com.adc.da.search.service.impl; import com.adc.da.search.entity.EsPage; import com.adc.da.search.service.ElasticsearchService; -import com.adc.da.util.utils.StringUtils; import com.alibaba.fastjson.JSONObject; +import org.apache.commons.lang3.StringUtils; import org.elasticsearch.action.admin.indices.create.CreateIndexRequestBuilder; import org.elasticsearch.action.admin.indices.create.CreateIndexResponse; import org.elasticsearch.action.admin.indices.delete.DeleteIndexResponse; diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index 13bc2063..ec8b808b 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -7,8 +7,7 @@ import com.adc.da.search.entity.SeniorSearchInfoEO; import com.adc.da.search.service.SearchCenterService; import com.alibaba.fastjson.JSONArray; import net.sf.json.JSONObject; -import org.apache.commons.lang.StringUtils; -import org.eclipse.jetty.util.StringUtil; +import org.apache.commons.lang3.StringUtils; import org.elasticsearch.action.search.SearchRequestBuilder; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchType; @@ -120,30 +119,17 @@ public class SearchCenterServiceImpl implements SearchCenterService { if(StringUtils.isNotEmpty(searchInfoEO.getSelectValue())){ boolQueryBuilder.should(boolQueryShould); } + BoolQueryBuilder boolQueryBuilder1=null; if(searchInfoEO.getSelectIndex().equals("stand")) { - BoolQueryBuilder standBoolQueryBuilder = queryStandMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); - boolQueryBuilder.must(standBoolQueryBuilder); - searchRequestBuilder.setQuery(boolQueryBuilder); - //在结果中检索 - if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isNotBlank(searchInfoEO.getIsHigh())) { - QueryBuilder multiQuery = queryInResult(searchInfoEO); - boolQueryBuilder.must(multiQuery); - } - result = countStandSearchResult(searchRequestBuilder,searchInfoEO); + boolQueryBuilder1 = queryStandMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); } else if(searchInfoEO.getSelectIndex().equals("laws")){ - BoolQueryBuilder lawsBoolQueryBuilder = queryLawsMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); - boolQueryBuilder.must(lawsBoolQueryBuilder); - searchRequestBuilder.setQuery(boolQueryBuilder); - //在结果中检索 - if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isNotBlank(searchInfoEO.getIsHigh())) { - QueryBuilder multiQuery = queryInResult(searchInfoEO); - boolQueryBuilder.must(multiQuery); - } - // 获取查询到的结果 - result = countStandSearchResult(searchRequestBuilder,searchInfoEO); + boolQueryBuilder1 = queryLawsMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); } else if(searchInfoEO.getSelectIndex().equals("bussstand")){ - BoolQueryBuilder bussstandBoolQueryBuilder = queryBussStandMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); - boolQueryBuilder.must(bussstandBoolQueryBuilder); + boolQueryBuilder1 = queryBussStandMsg(searchInfoEO,boolQueryMust,searchRequestBuilder); + } + + if(boolQueryBuilder1!=null){ + boolQueryBuilder.must(boolQueryBuilder1); searchRequestBuilder.setQuery(boolQueryBuilder); //在结果中检索 if (StringUtils.isNotEmpty(searchInfoEO.getResultKeyword()) && StringUtils.isNotBlank(searchInfoEO.getIsHigh())) { @@ -153,6 +139,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { // 获取查询到的结果 result = countStandSearchResult(searchRequestBuilder,searchInfoEO); } + return result; } @@ -278,7 +265,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { } continue; } - if (StringUtil.isNotBlank(field) && StringUtil.isNotBlank(value)) { + if (StringUtils.isNotBlank(field) && StringUtils.isNotBlank(value)) { String type = searchVO.getType(); String connect = searchVO.getConnect(); if ("stand_name".equals(field) || "laws_name".equals(field)) { @@ -368,12 +355,12 @@ public class SearchCenterServiceImpl implements SearchCenterService { public BoolQueryBuilder queryStandMsg(SeniorSearchInfoEO searchInfoEO, BoolQueryBuilder boolQueryBuilder, SearchRequestBuilder searchRequestBuilder) throws Exception{ String nameshowStr = "nameshow"; // 高级搜索项,只针对标准 - if (StringUtil.isNotBlank(searchInfoEO.getStandType())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandType())) { // 如果等于All,相当于不限制,查询全部 boolQueryBuilder.must(QueryBuilders.matchQuery("standType", searchInfoEO.getStandType())); } //标准类别,国内外标准有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandSort())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandSort())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandSort().equals("all") && !searchInfoEO.getStandSort().equals("[]")) { String[] arrlist = searchInfoEO.getStandSort().split(","); @@ -382,51 +369,51 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //编号,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandNumber())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandNumber())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery("standNumber", "*"+searchInfoEO.getStandNumber()+"*")); } //标准年份 - if (StringUtil.isNotBlank(searchInfoEO.getStandYear())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandYear())) { boolQueryBuilder.must(QueryBuilders.matchQuery("standYear", searchInfoEO.getStandYear())); } //名称,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + if (StringUtils.isNotBlank(searchInfoEO.getNameShow())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getNameShow()+"*")); } //标准英文名称 - if (StringUtil.isNotBlank(searchInfoEO.getStandEnName())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandEnName())) { boolQueryBuilder.must(QueryBuilders.matchQuery("standEnName", searchInfoEO.getStandEnName())); } //标准状态,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandState())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]") ) { String[] arrlist = searchInfoEO.getStandState().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("statecode.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getCLLX())) { + if (StringUtils.isNotBlank(searchInfoEO.getCLLX())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCLLX().equals("all") && !searchInfoEO.getCLLX().equals("[]") ) { String[] arrlist = searchInfoEO.getCLLX().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("CLLX.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getCYSD())) { + if (StringUtils.isNotBlank(searchInfoEO.getCYSD())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCYSD().equals("all") && !searchInfoEO.getCYSD().equals("[]") ) { String[] arrlist = searchInfoEO.getCYSD().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("CYSD.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getCBCD())) { + if (StringUtils.isNotBlank(searchInfoEO.getCBCD())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCBCD().equals("all") && !searchInfoEO.getCBCD().equals("[]") ) { String[] arrlist = searchInfoEO.getCBCD().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("CBCD.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getZRLX())) { + if (StringUtils.isNotBlank(searchInfoEO.getZRLX())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getZRLX().equals("all") && !searchInfoEO.getZRLX().equals("[]") ) { String[] arrlist = searchInfoEO.getZRLX().split(","); @@ -444,7 +431,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { String replacedStandNumStr = "replaced_stand_num"; String replaceStandNumStr = "replace_stand_num"; //国家,国内外标准,国内外法规有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getCountry())) { + if (StringUtils.isNotBlank(searchInfoEO.getCountry())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCountry().equals("all") && !searchInfoEO.getCountry().equals("[]")) { // String[] arrlist = searchInfoEO.getCountry().split(","); @@ -453,35 +440,35 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //标准性质,国内外标准,法规有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNature())) { + if (StringUtils.isNotBlank(searchInfoEO.getNature())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getNature().equals("all") && !searchInfoEO.getNature().equals("[]")) { String[] arrlist = searchInfoEO.getNature().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("nature.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getSYCLLX())) { + if (StringUtils.isNotBlank(searchInfoEO.getSYCLLX())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getSYCLLX().equals("all") && !searchInfoEO.getSYCLLX().equals("[]") ) { String[] arrlist = searchInfoEO.getSYCLLX().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("SYCLLX.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getWSSFCY())) { + if (StringUtils.isNotBlank(searchInfoEO.getWSSFCY())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getWSSFCY().equals("all") && !searchInfoEO.getWSSFCY().equals("[]") ) { String[] arrlist = searchInfoEO.getWSSFCY().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("WSSFCY.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getCBCD())) { + if (StringUtils.isNotBlank(searchInfoEO.getCBCD())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCBCD().equals("all") && !searchInfoEO.getCBCD().equals("[]") ) { String[] arrlist = searchInfoEO.getCBCD().split(","); boolQueryBuilder.must(QueryBuilders.termsQuery("CBCD.keyword", arrlist)); } } - if (StringUtil.isNotBlank(searchInfoEO.getZRLX())) { + if (StringUtils.isNotBlank(searchInfoEO.getZRLX())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getZRLX().equals("all") && !searchInfoEO.getZRLX().equals("[]") ) { String[] arrlist = searchInfoEO.getZRLX().split(","); @@ -489,19 +476,19 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //编号,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNumberShow())) { + if (StringUtils.isNotBlank(searchInfoEO.getNumberShow())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery(numbershowStr, "*"+searchInfoEO.getNumberShow()+"*")); } //名称,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + if (StringUtils.isNotBlank(searchInfoEO.getNameShow())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getNameShow()+"*")); } //发布部门 - if (StringUtil.isNotBlank(searchInfoEO.getIssueUnit())) { + if (StringUtils.isNotBlank(searchInfoEO.getIssueUnit())) { boolQueryBuilder.must(QueryBuilders.matchQuery("issueUnit", searchInfoEO.getIssueUnit())); } //文件状态,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandState())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]")) { String[] arrlist = searchInfoEO.getStandState().split(","); @@ -510,32 +497,32 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //代替文件号 - if (StringUtil.isNotBlank(searchInfoEO.getReplaceStandNum())) { + if (StringUtils.isNotBlank(searchInfoEO.getReplaceStandNum())) { boolQueryBuilder.must(QueryBuilders.matchQuery("replace_laws_num", searchInfoEO.getReplaceStandNum())); } //适用车型,国内外标准,国内外法规,企业标准 有此属性 录入可多选 - if (StringUtil.isNotBlank(searchInfoEO.getApplyArctic())) { + if (StringUtils.isNotBlank(searchInfoEO.getApplyArctic())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getApplyArctic().equals("all") && !searchInfoEO.getApplyArctic().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("apply_arctic", searchInfoEO.getApplyArctic())); } } //能源种类,国内外标准,国内外法规,企业标准 有此属性 录入可多选 - if (StringUtil.isNotBlank(searchInfoEO.getEnergyKind())) { + if (StringUtils.isNotBlank(searchInfoEO.getEnergyKind())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getEnergyKind().equals("all") && !searchInfoEO.getEnergyKind().equals("[]") ) { boolQueryBuilder.must(QueryBuilders.matchQuery("energy_kind", searchInfoEO.getEnergyKind())); } } //适用认证,国内外标准,国内外法规 有此属性 录入可多选 - if (StringUtil.isNotBlank(searchInfoEO.getApplyAuth())) { + if (StringUtils.isNotBlank(searchInfoEO.getApplyAuth())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getApplyAuth().equals("all") && !searchInfoEO.getApplyAuth().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("apply_auth", searchInfoEO.getApplyAuth())); } } //责任部门 - if (StringUtil.isNotBlank(searchInfoEO.getResponsibleUnit())) { + if (StringUtils.isNotBlank(searchInfoEO.getResponsibleUnit())) { boolQueryBuilder.must(QueryBuilders.matchQuery("responsibleUnit", searchInfoEO.getResponsibleUnit())); } //发布日期 @@ -553,11 +540,11 @@ public class SearchCenterServiceImpl implements SearchCenterService { boolQueryBuilder.filter(rangeQueryBuilder); } //内容摘要 - if (StringUtil.isNotBlank(searchInfoEO.getSynopsis())) { + if (StringUtils.isNotBlank(searchInfoEO.getSynopsis())) { boolQueryBuilder.must(QueryBuilders.matchQuery("synopsis", searchInfoEO.getSynopsis())); } //标准英文名称 - if (StringUtil.isNotBlank(searchInfoEO.getStandEnName())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandEnName())) { boolQueryBuilder.must(QueryBuilders.matchQuery("standEnName", searchInfoEO.getStandEnName())); } //新定型车实施日期 @@ -589,15 +576,15 @@ public class SearchCenterServiceImpl implements SearchCenterService { boolQueryBuilder.filter(rangeQueryBuilder); } //被代替标准号 - if (StringUtil.isNotBlank(searchInfoEO.getReplacedStandNum())) { + if (StringUtils.isNotBlank(searchInfoEO.getReplacedStandNum())) { boolQueryBuilder.must(QueryBuilders.matchQuery(replacedStandNumStr, searchInfoEO.getReplacedStandNum())); } //关键词 - if (StringUtil.isNotBlank(searchInfoEO.getTags())) { + if (StringUtils.isNotBlank(searchInfoEO.getTags())) { boolQueryBuilder.must(QueryBuilders.matchQuery("standTag", searchInfoEO.getTags())); } //所属类别,国内外标准, 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getCategory())) { + if (StringUtils.isNotBlank(searchInfoEO.getCategory())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCategory().equals("all") && !searchInfoEO.getCategory().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("category", searchInfoEO.getCategory())); @@ -652,38 +639,38 @@ public class SearchCenterServiceImpl implements SearchCenterService { String replaceStandNumStr = "replace_stand_num"; // 高级搜索项,只针对标准 //分类代号 - if (StringUtil.isNotBlank(searchInfoEO.getClassifyCode())) { + if (StringUtils.isNotBlank(searchInfoEO.getClassifyCode())) { boolQueryBuilder.must(QueryBuilders.matchQuery("classifyCode", searchInfoEO.getClassifyCode())); } //编号,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandNumber())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandNumber())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery("standNumber", "*"+searchInfoEO.getStandNumber()+"*")); } //名称,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + if (StringUtils.isNotBlank(searchInfoEO.getNameShow())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery(nameshowStr, "*"+searchInfoEO.getNameShow()+"*")); } //标准英文名称 - if (StringUtil.isNotBlank(searchInfoEO.getStandEnName())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandEnName())) { boolQueryBuilder.must(QueryBuilders.matchQuery("standEnName", searchInfoEO.getStandEnName())); } if (searchInfoEO.getPutYear() != null && StringUtils.isNotEmpty(searchInfoEO.getPutYear())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery("putYear", "*"+searchInfoEO.getPutYear()+"*")); } //代替标准号 - if (StringUtil.isNotBlank(searchInfoEO.getReplaceStandNum())) { + if (StringUtils.isNotBlank(searchInfoEO.getReplaceStandNum())) { boolQueryBuilder.must(QueryBuilders.matchQuery(replaceStandNumStr, searchInfoEO.getReplaceStandNum())); } //主起草部门 - if (StringUtil.isNotBlank(searchInfoEO.getZQCBM())) { + if (StringUtils.isNotBlank(searchInfoEO.getZQCBM())) { boolQueryBuilder.must(QueryBuilders.matchQuery("ZQCBM", searchInfoEO.getZQCBM())); } //被代替标准号 - if (StringUtil.isNotBlank(searchInfoEO.getReplacedStandNum())) { + if (StringUtils.isNotBlank(searchInfoEO.getReplacedStandNum())) { boolQueryBuilder.must(QueryBuilders.matchQuery(replacedStandNumStr, searchInfoEO.getReplacedStandNum())); } //标准状态,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandState())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]")) { String[] arrlist = searchInfoEO.getStandState().split(","); @@ -706,7 +693,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { boolQueryBuilder.filter(rangeQueryBuilder); } //国家,国内外标准,国内外法规有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getCountry())) { + if (StringUtils.isNotBlank(searchInfoEO.getCountry())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCountry().equals("all") && !searchInfoEO.getCountry().equals("[]") ) { String[] arrlist = searchInfoEO.getCountry().split(","); @@ -714,7 +701,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //标准类别,国内外标准有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandSort())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandSort())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandSort().equals("all")&& !searchInfoEO.getStandSort().equals("[]")) { String[] arrlist = searchInfoEO.getStandSort().split(","); @@ -913,7 +900,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { String nameshowStr = "nameshow"; String replacedStandNumStr = "replaced_stand_num"; String replaceStandNumStr = "replace_stand_num"; - if(StringUtil.isNotBlank(searchInfoEO.getSelectKey())){ + if(StringUtils.isNotBlank(searchInfoEO.getSelectKey())){ switch (searchInfoEO.getSelectKey()){ // 修改过后,前台不会传 all case "all": @@ -926,19 +913,19 @@ public class SearchCenterServiceImpl implements SearchCenterService { case "standNumber": case "lawsNumber": case "bussstandsNumber": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())){ + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())){ boolQueryBuilder.must(QueryBuilders.matchPhraseQuery(numbershowStr,searchInfoEO.getSelectValue())); } break; case "standName": case "lawsName": case "bussstandName": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery(nameshowStr, searchInfoEO.getSelectValue())); } break; case "standState": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery("standstateshow", searchInfoEO.getSelectValue())); } break; @@ -946,44 +933,44 @@ public class SearchCenterServiceImpl implements SearchCenterService { //标准正文 暂缺 break; case "applyArctic": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery("applyarcticshow", searchInfoEO.getSelectValue())); } break; case "issueTime": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(ISSUE_TIME).format(EPOCH_MILLIS).from(searchInfoEO.getSelectStartTime().getTime()).to(searchInfoEO.getSelectEndTime().getTime()).includeLower(true).includeUpper(true); boolQueryBuilder.filter(rangeQueryBuilder); } break; case "putTime": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { RangeQueryBuilder rangeQueryBuilders = QueryBuilders.rangeQuery("put_time").format(EPOCH_MILLIS).from(searchInfoEO.getSelectStartTime().getTime()).to(searchInfoEO.getSelectEndTime().getTime()).includeLower(true).includeUpper(true); boolQueryBuilder.filter(rangeQueryBuilders); } break; case "draftUser": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery("draft_user", searchInfoEO.getSelectValue())); } break; case "draftingUnit": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery("drafting_unit", searchInfoEO.getSelectValue())); } break; case "replaceStandNum": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery(replaceStandNumStr, searchInfoEO.getSelectValue())); } break; case "replacedStandNum": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery(replacedStandNumStr, searchInfoEO.getSelectValue())); } break; case "msgTitle": - if(StringUtil.isNotBlank(searchInfoEO.getSelectValue())) { + if(StringUtils.isNotBlank(searchInfoEO.getSelectValue())) { boolQueryBuilder.must(QueryBuilders.matchQuery("title", searchInfoEO.getSelectValue())); } break; @@ -999,7 +986,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { if(searchInfoEO.getSelectIndex().equals("stand")) { // 高级搜索项,只针对标准 //标准性质,国内外标准,法规有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNature())) { + if (StringUtils.isNotBlank(searchInfoEO.getNature())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getNature().equals("all") && !searchInfoEO.getNature().equals("[]")) { String[] arrlist = searchInfoEO.getNature().split(","); @@ -1007,7 +994,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //国家,国内外标准,国内外法规有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getCountry())) { + if (StringUtils.isNotBlank(searchInfoEO.getCountry())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCountry().equals("all") && !searchInfoEO.getCountry().equals("[]")) { String[] arrlist = searchInfoEO.getCountry().split(","); @@ -1015,7 +1002,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //标准类别,国内外标准有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandSort())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandSort())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandSort().equals("all") && !searchInfoEO.getStandSort().equals("[]")) { String[] arrlist = searchInfoEO.getStandSort().split(","); @@ -1023,15 +1010,15 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //编号,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNumberShow())) { + if (StringUtils.isNotBlank(searchInfoEO.getNumberShow())) { boolQueryBuilder.must(QueryBuilders.matchQuery(numbershowStr, searchInfoEO.getNumberShow())); } //名称,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getNameShow())) { + if (StringUtils.isNotBlank(searchInfoEO.getNameShow())) { boolQueryBuilder.must(QueryBuilders.matchQuery(nameshowStr, searchInfoEO.getNameShow())); } //适用认证,国内外标准,国内外法规,企业标准 有此属性 录入可多选 - if (StringUtil.isNotBlank(searchInfoEO.getApplyArctic())) { + if (StringUtils.isNotBlank(searchInfoEO.getApplyArctic())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getApplyArctic().equals("all") && !searchInfoEO.getApplyArctic().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("apply_arctic", searchInfoEO.getApplyArctic())); @@ -1039,28 +1026,28 @@ public class SearchCenterServiceImpl implements SearchCenterService { } //认证类型,国内外标准,国内外法规 有此属性 录入可多选 - if (StringUtil.isNotBlank(searchInfoEO.getApplyAuth())) { + if (StringUtils.isNotBlank(searchInfoEO.getApplyAuth())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getApplyAuth().equals("all") && !searchInfoEO.getApplyAuth().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("apply_auth", searchInfoEO.getApplyAuth())); } } //所属类别,国内外标准, 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getCategory())) { + if (StringUtils.isNotBlank(searchInfoEO.getCategory())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getCategory().equals("all") && !searchInfoEO.getCategory().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("category", searchInfoEO.getCategory())); } } //能源种类,国内外标准,国内外法规,企业标准 有此属性 录入可多选 - if (StringUtil.isNotBlank(searchInfoEO.getEnergyKind())) { + if (StringUtils.isNotBlank(searchInfoEO.getEnergyKind())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getEnergyKind().equals("all") && !searchInfoEO.getEnergyKind().equals("[]")) { boolQueryBuilder.must(QueryBuilders.matchQuery("energy_kind", searchInfoEO.getEnergyKind())); } } //采标程度,国内外标准, 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getAdoptExtent())) { + if (StringUtils.isNotBlank(searchInfoEO.getAdoptExtent())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getAdoptExtent().equals("all") && !searchInfoEO.getAdoptExtent().equals("[]")) { /*String[] arrlist = searchInfoEO.getAdoptExtent().split(","); @@ -1069,7 +1056,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { } } //标准状态,国内外标准,国内外法规,企业标准 有此属性 - if (StringUtil.isNotBlank(searchInfoEO.getStandState())) { + if (StringUtils.isNotBlank(searchInfoEO.getStandState())) { // 如果等于All,相当于不限制,查询全部 if (!searchInfoEO.getStandState().equals("all") && !searchInfoEO.getStandState().equals("[]")) { /*String[] arrlist = searchInfoEO.getStandState().split(","); diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java index e7151d52..904fe5da 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/StandLawsSearchServiceImpl.java @@ -4,10 +4,10 @@ import com.adc.da.search.entity.FullTextSearchEO; import com.adc.da.search.entity.StandLawsEO; import com.adc.da.search.service.ElasticsearchService; import com.adc.da.search.service.StandLawsSearchService; -import com.adc.da.util.utils.DateUtils; -import com.adc.da.util.utils.StringUtils; +import com.adc.da.util.DateUtils; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import org.apache.commons.lang3.StringUtils; import org.elasticsearch.client.transport.TransportClient; import org.slf4j.Logger; import org.slf4j.LoggerFactory; From 7aeb6b099ac19804b705de1e0286d1a4f58d744d Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Thu, 24 Jun 2021 10:23:52 +0800 Subject: [PATCH 24/57] =?UTF-8?q?feat=20=E9=87=8D=E5=86=99=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E8=AF=A1=E5=BC=82=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-main/pom.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/adc-da-main/pom.xml b/adc-da-main/pom.xml index 8d811d0a..cb376f0d 100644 --- a/adc-da-main/pom.xml +++ b/adc-da-main/pom.xml @@ -61,12 +61,12 @@ 2.2.0.RELEASE
    - - - - - - + + com.adc + adc-da-search + 1.0.0 + compile + From b0751be63a399f67fbbbe88e05e2e3ff7b9db236 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Thu, 24 Jun 2021 10:43:53 +0800 Subject: [PATCH 25/57] =?UTF-8?q?=E5=B2=97=E4=BD=8D=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + .../com/adc/da/main/generate/CodeGen.java | 4 +- .../main/resources/application-dev.properties | 4 +- .../src/main/resources/application.properties | 1 + adc-da-slrs/pom.xml | 5 +- .../controller/TsPositionController.java | 64 +++++++++++++ .../slrs/sarPosition/dao/TsPositionDao.java | 32 +++++++ .../slrs/sarPosition/entity/TsPosition.java | 70 ++++++++++++++ .../sarPosition/entity/TsPositionRoleVO.java | 15 +++ .../service/ITsPositionService.java | 48 ++++++++++ .../service/impl/TsPositionServiceImpl.java | 94 +++++++++++++++++++ .../sarRole/controller/TsRoleController.java | 23 +++-- .../adc/da/slrs/sarRole/entity/TsRole.java | 11 ++- .../slrs/sarRole/service/ITsRoleService.java | 15 +++ .../service/impl/TsRoleServiceImpl.java | 47 +++++++++- .../java/com/adc/da/utils/util/ListUtil.java | 72 ++++++++++++++ .../mapper/sarPosition/TsPositionMapper.xml | 10 ++ pom.xml | 1 + 18 files changed, 501 insertions(+), 16 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPositionRoleVO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/utils/util/ListUtil.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml diff --git a/.gitignore b/.gitignore index 14f81db9..a7ee8a90 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ target *logs/ .metadata +adc-da-main/src/main/resources/application-zxy.properties \ No newline at end of file diff --git a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java index 79244a62..b3120d79 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java +++ b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java @@ -22,11 +22,11 @@ public class CodeGen { // x.x.x.x:3306/xxxx --MYSQL // 192.168.10.140:1521:foton_slrs_test - private static final String DB_IP="192.168.10.47:3306/foton_slrs_test"; + private static final String DB_IP="localhost:3306/foton_slrs_test"; private static final String DB_USER="root"; - private static final String DB_PWD="root"; + private static final String DB_PWD="Zxy20010202"; /** diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 88425a41..afdb5624 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,9 +3,9 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://101.36.227.22:33050/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://localhost:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root -spring.datasource.password = 1q2w3e4r +spring.datasource.password = Zxy20010202 #============================================== # 应用设置 diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index d0fa62ba..503b05d7 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -91,6 +91,7 @@ spring.datasource.druid.stat-view-servlet.url-pattern=/druid/* # ======================================= mybatis-plus.config-location=classpath:mybatis/mybatis-config.xml mybatis-plus.mapper-locations=classpath*:mybatis/mapper/**/*.xml +mybatis-plus.type-aliases-package=com.adc.da.**.entity # ======================================== # activiti 配置信息 diff --git a/adc-da-slrs/pom.xml b/adc-da-slrs/pom.xml index 7ca6eb4c..b2a17634 100644 --- a/adc-da-slrs/pom.xml +++ b/adc-da-slrs/pom.xml @@ -11,7 +11,10 @@ adc-da-slrs - + + + + com.adc adc-da-base diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java new file mode 100644 index 00000000..d9abac47 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java @@ -0,0 +1,64 @@ +package com.adc.da.slrs.sarPosition.controller; + + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarPosition.entity.TsPositionRoleVO; +import com.adc.da.slrs.sarPosition.service.ITsPositionService; +import com.adc.da.slrs.sarRole.entity.TsRole; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +import javax.validation.Valid; +import java.util.List; + +/** +*

    + * 前端控制器 + *

    +* +* @author zyl +* @since 2021-06-23 +*/ +@RestController +@Api(tags = "|岗位管理|") +@RequestMapping("/sarPosition/position") +public class TsPositionController extends BaseController { + @Autowired + private ITsPositionService tsPositionService; + + /** + * 查询岗位(可通过name筛选) + * @param tsPosition:筛选信息 + */ + @ApiOperation("查询岗位") + @GetMapping + public ResponseMessage> getPosition(TsPosition tsPosition){ + List positions=tsPositionService.getPosition(tsPosition); + return Result.success(positions); + } + + @ApiOperation("新增岗位") + @PostMapping + public ResponseMessage addPosition(@Validated(TsPosition.insert.class) TsPosition tsPosition){ + return tsPositionService.addPosition(tsPosition); + } + + @ApiOperation("配置角色") + @PostMapping("/role") + public ResponseMessage setRole(@Valid @RequestBody TsPositionRoleVO tsPositionRoleVO){ + return tsPositionService.setRole(tsPositionRoleVO); + } + + @ApiOperation("查询角色") + @GetMapping("/role") + public ResponseMessage> getRole(@RequestParam String positionId){ + List roles=tsPositionService.getRole(positionId); + return Result.success(roles); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java new file mode 100644 index 00000000..d875b7ad --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -0,0 +1,32 @@ +package com.adc.da.slrs.sarPosition.dao; + +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.adc.da.slrs.sarRole.entity.TsRole; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zyl + * @since 2021-06-23 + */ +public interface TsPositionDao extends BaseMapper { + + @Select("select role_id from ts_position_role where position_id=#{positionId}") + List getRoleId(String positionId); + + @Insert("insert into ts_position_role (position_id,role_id) values (#{positionId},#{roleId})") + void insertRole(String positionId, String roleId); + + @Delete("delete from ts_position_role where position_id=#{positionId} and role_id=#{roleId}") + void deleteRole(String positionId, String roleId); + + List getRole(String positionId); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java new file mode 100644 index 00000000..ca677eef --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java @@ -0,0 +1,70 @@ +package com.adc.da.slrs.sarPosition.entity; + +import com.adc.da.base.entity.BaseEntity; + +import java.sql.Timestamp; +import java.time.LocalDateTime; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; + +/** + *

    + * + *

    + * + * @author zyl + * @since 2021-06-23 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsPosition对象", description="") +public class TsPosition extends BaseEntity { + public interface insert{ + } + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "操作时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp operateTime; + + @ApiModelProperty(value = "操作人") + private String operator; + + @NotNull(message = "name不能为空",groups = {insert.class}) + @ApiModelProperty(value = "岗位名称") + private String name; + + @ApiModelProperty(value = "创建部门ID") + private String createDeptId; + + @ApiModelProperty(value = "创建人ID") + private String createById; + + @ApiModelProperty(value = "类型(1为导入,2为新建)") + private String type; + + @ApiModelProperty(value = "ID") + @TableId(value = "id",type = IdType.UUID) + private String id; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp createTime; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPositionRoleVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPositionRoleVO.java new file mode 100644 index 00000000..da7bf94b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPositionRoleVO.java @@ -0,0 +1,15 @@ +package com.adc.da.slrs.sarPosition.entity; + +import com.adc.da.slrs.sarRole.entity.TsRole; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +public class TsPositionRoleVO { + @NotNull(message = "positionId不能为空") + private String positionId; + @NotNull(message = "roleIds不能为空") + private List roleIds; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java new file mode 100644 index 00000000..87f44d6b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -0,0 +1,48 @@ +package com.adc.da.slrs.sarPosition.service; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.adc.da.slrs.sarPosition.entity.TsPositionRoleVO; +import com.adc.da.slrs.sarRole.entity.TsRole; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

    + * 服务类 + *

    + * + * @author zyl + * @since 2021-06-23 + */ +public interface ITsPositionService extends IService { + + /** + * 查询岗位 + * @param tsPosition:查询信息 + * @return List + */ + List getPosition(TsPosition tsPosition); + + /** + * 配置角色 + * @param tsPositionRoleVO:角色ID + * @return ResponseMessage + */ + ResponseMessage setRole(TsPositionRoleVO tsPositionRoleVO); + + /** + * 查询角色 + * @param positionId :岗位ID + * @return List + */ + List getRole(String positionId); + + /** + * 添加岗位 + * @param tsPosition:岗位信息 + * @return ResponseMessage + */ + ResponseMessage addPosition(TsPosition tsPosition); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java new file mode 100644 index 00000000..44a8e98b --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -0,0 +1,94 @@ +package com.adc.da.slrs.sarPosition.service.impl; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.adc.da.slrs.sarPosition.dao.TsPositionDao; +import com.adc.da.slrs.sarPosition.entity.TsPositionRoleVO; +import com.adc.da.slrs.sarPosition.service.ITsPositionService; +import com.adc.da.slrs.sarRole.entity.TsRole; +import com.adc.da.utils.util.ListUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; +import java.util.Map; + +/** + *

    + * 服务实现类 + *

    + * + * @author zyl + * @since 2021-06-23 + */ +@Service +public class TsPositionServiceImpl extends ServiceImpl implements ITsPositionService { + @Autowired + private TsPositionDao tsPositionDao; + + /** + * 查询岗位 + * @param tsPosition:查询信息 + * @return List + */ + @Override + public List getPosition(TsPosition tsPosition) { + QueryWrapper positionQueryWrapper=new QueryWrapper<>(); + if(tsPosition.getName()!=null){ + positionQueryWrapper.like("name","%"+tsPosition.getName()+"%"); + } + return tsPositionDao.selectList(positionQueryWrapper); + } + + /** + * 配置角色 + * @param tsPositionRoleVO:角色ID + * @return ResponseMessage + */ + @Override + @Transactional + public ResponseMessage setRole(TsPositionRoleVO tsPositionRoleVO) { + List oldRoleIds=tsPositionDao.getRoleId(tsPositionRoleVO.getPositionId()); + Map> updateRoleIds= ListUtil.difList(tsPositionRoleVO.getRoleIds(),oldRoleIds); + List insertIds=updateRoleIds.get("insert"); + List deleteIds=updateRoleIds.get("delete"); + for(String id:insertIds){ + tsPositionDao.insertRole(tsPositionRoleVO.getPositionId(),id); + } + for(String id:deleteIds){ + tsPositionDao.deleteRole(tsPositionRoleVO.getPositionId(),id); + } + return Result.success(); + } + + /** + * 查询角色 + * @param positionId :岗位ID + * @return List + */ + @Override + public List getRole(String positionId) { + return tsPositionDao.getRole(positionId); + } + + /** + * 添加岗位 + * @param tsPosition:岗位信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage addPosition(TsPosition tsPosition) { + QueryWrapper positionQueryWrapper=new QueryWrapper<>(); + positionQueryWrapper.eq("name",tsPosition.getName()); + List tsPositions=tsPositionDao.selectList(positionQueryWrapper); + if(tsPositions!=null&&tsPositions.size()>0){ + return Result.error("该岗位已存在"); + } + tsPositionDao.insert(tsPosition); + return Result.success(); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index 444ca822..df2266d9 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -3,16 +3,15 @@ package com.adc.da.slrs.sarRole.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarRole.service.ITsRoleService; +import com.adc.da.sys.entity.UserEO; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.*; import com.adc.da.slrs.sarRole.entity.TsRole; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; import java.util.List; @@ -48,7 +47,19 @@ public class TsRoleController extends BaseController { @ApiOperation("新增角色") @PostMapping - public ResponseMessage> addRole(@Validated(TsRole.insert.class) TsRole tsRole){ - return null; + public ResponseMessage addRole(@Validated(TsRole.insert.class) TsRole tsRole){ + //设置操作人 + UserEO userEO=UserUtils.getUser(); + tsRole.setOperator(userEO.getUname()); + return tsRoleService.addRole(tsRole); + } + + @ApiOperation("编辑角色") + @PutMapping + public ResponseMessage updateRole(@Validated(TsRole.update.class) TsRole tsRole){ + //设置操作人 + UserEO userEO=UserUtils.getUser(); + tsRole.setOperator(userEO.getUname()); + return tsRoleService.updateRole(tsRole); } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java index c95e91e6..3745aeaa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java @@ -2,6 +2,8 @@ package com.adc.da.slrs.sarRole.entity; import com.adc.da.base.entity.BaseEntity; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import java.sql.Timestamp; @@ -35,11 +37,14 @@ import javax.validation.constraints.NotNull; public class TsRole extends BaseEntity { public interface insert{ } + public interface update{ + } private static final long serialVersionUID = 1L; + @NotNull(message = "id不能为空",groups = {update.class}) @ApiModelProperty(value = "主键") - @TableId("ID") + @TableId(value = "ID",type = IdType.UUID) private String id; @NotNull(message = "name不能为空",groups = {insert.class}) @@ -99,8 +104,8 @@ public class TsRole extends BaseEntity { private String parentId; @ApiModelProperty(value = "角色层级") - @TableField("role_level") - private Integer roleLevel; + @TableField("ROLE_HIERARCHY") + private Integer roleHierarchy; @ApiModelProperty(value = "对应部门id") @TableField("DY_ORG_ID") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index f8405e9a..f70d4a22 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -1,5 +1,6 @@ package com.adc.da.slrs.sarRole.service; +import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarRole.entity.TsRole; import com.baomidou.mybatisplus.extension.service.IService; @@ -27,4 +28,18 @@ public interface ITsRoleService extends IService { * @return List */ List getByName(String name); + + /** + * 添加角色 + * @param tsRole :角色信息 + * @return ResponseMessage + */ + ResponseMessage addRole(TsRole tsRole); + + /** + * 编辑角色 + * @param tsRole:角色信息 + * @return ResponseMessage + */ + ResponseMessage updateRole(TsRole tsRole); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index ae5c052a..052a70e7 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -1,5 +1,7 @@ package com.adc.da.slrs.sarRole.service.impl; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; import com.adc.da.slrs.sarRole.service.ITsRoleService; @@ -30,7 +32,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements @Override public List getAll() { QueryWrapper tsRoleQueryWrapper=new QueryWrapper<>(); - tsRoleQueryWrapper.eq("role_level",1); + tsRoleQueryWrapper.eq("ROLE_HIERARCHY",1); List rootRole=tsRoleDao.selectList(tsRoleQueryWrapper); for(TsRole tsRole:rootRole){ tsRole.setChildren(recursionGetRole(tsRole)); @@ -46,7 +48,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements private List recursionGetRole(TsRole tsRole){ QueryWrapper tsRoleQueryWrapper=new QueryWrapper<>(); tsRoleQueryWrapper.eq("parent_id",tsRole.getId()); - tsRoleQueryWrapper.eq("role_level",tsRole.getRoleLevel()+1); + tsRoleQueryWrapper.eq("ROLE_HIERARCHY",tsRole.getRoleHierarchy()+1); List tsRoles=tsRoleDao.selectList(tsRoleQueryWrapper); for(TsRole tsRoleNode:tsRoles){ tsRoleNode.setChildren(recursionGetRole(tsRoleNode)); @@ -66,5 +68,46 @@ public class TsRoleServiceImpl extends ServiceImpl implements return tsRoleDao.selectList(tsRoleQueryWrapper); } + /** + * 添加角色 + * @param tsRole :角色信息 + * @return TsRole + */ + @Override + public ResponseMessage addRole(TsRole tsRole) { + //判断是否是顶级角色 + if(tsRole.getParentId()==null){ + tsRole.setRoleHierarchy(1); + }else { + QueryWrapper parentQueryWrapper=new QueryWrapper<>(); + parentQueryWrapper.eq("id",tsRole.getParentId()); + TsRole parentRole=tsRoleDao.selectOne(parentQueryWrapper); + if(parentRole==null){ + return Result.error("父角色不存在"); + } + tsRole.setRoleHierarchy(parentRole.getRoleHierarchy()+1); + } + tsRoleDao.insert(tsRole); + return Result.success(); + } + + /** + * 编辑角色 + * @param tsRole:角色信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage updateRole(TsRole tsRole) { + TsRole oldRole=tsRoleDao.selectById(tsRole.getParentId()); + if(oldRole==null){ + return Result.error("该角色不存在"); + } + //不允许修改父节点 + tsRole.setRoleHierarchy(null); + tsRole.setParentId(null); + tsRoleDao.updateById(tsRole); + return Result.success(); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/ListUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/ListUtil.java new file mode 100644 index 00000000..c60e1130 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/ListUtil.java @@ -0,0 +1,72 @@ +package com.adc.da.utils.util; + +import java.util.*; + +/** + * List操作 + * @author zxy + */ +public class ListUtil { + + /** + * 获得targetList和referList中不同的元素 + * @param targetList:目标List + * @param referList:参照List + */ + public static Map> difList(List targetList, List referList){ + targetList.sort(String::compareTo); + referList.sort(String::compareTo); + //targetList多的节点 + List insertList=new ArrayList<>(); + //referList多的节点 + List deleteList=new ArrayList<>(); + //最后一个相等的节点 + int endEqual=-1; + //referList第一个与当前targetList节点不相等的节点坐标 + int index=0; + for(String node:targetList){ + //判断referList是否已遍历完成 + if(index> result=new HashMap<>(); + result.put("insert",insertList); + result.put("delete",deleteList); + System.out.println(insertList); + System.out.println(deleteList); + return result; + } +} diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml new file mode 100644 index 00000000..2c45b160 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml @@ -0,0 +1,10 @@ + + + + + diff --git a/pom.xml b/pom.xml index f3befa7e..3f711899 100644 --- a/pom.xml +++ b/pom.xml @@ -39,6 +39,7 @@ adc-da-search adc-da-slrs adc-da-activiti + adc-da-search From a069424edf3fb8321a743f7bbd937cffdd096371 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Thu, 24 Jun 2021 11:05:25 +0800 Subject: [PATCH 26/57] =?UTF-8?q?feat=20=E9=87=8D=E5=86=99=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E8=AF=A1=E5=BC=82=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-main/src/main/resources/application-dev.properties | 4 ++-- adc-da-main/src/main/resources/application.properties | 1 - adc-da-slrs/pom.xml | 4 ---- .../resources/mybatis/mapper/sarPosition/TsPositionMapper.xml | 2 +- 4 files changed, 3 insertions(+), 8 deletions(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index afdb5624..88425a41 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,9 +3,9 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://localhost:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://101.36.227.22:33050/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root -spring.datasource.password = Zxy20010202 +spring.datasource.password = 1q2w3e4r #============================================== # 应用设置 diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index 503b05d7..d0fa62ba 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -91,7 +91,6 @@ spring.datasource.druid.stat-view-servlet.url-pattern=/druid/* # ======================================= mybatis-plus.config-location=classpath:mybatis/mybatis-config.xml mybatis-plus.mapper-locations=classpath*:mybatis/mapper/**/*.xml -mybatis-plus.type-aliases-package=com.adc.da.**.entity # ======================================== # activiti 配置信息 diff --git a/adc-da-slrs/pom.xml b/adc-da-slrs/pom.xml index b2a17634..e0f98a9f 100644 --- a/adc-da-slrs/pom.xml +++ b/adc-da-slrs/pom.xml @@ -11,10 +11,6 @@ adc-da-slrs - - - - com.adc adc-da-base diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml index 2c45b160..6188a7bb 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml @@ -1,7 +1,7 @@ - select * from ts_role r left join ts_position_role ps on r.id=ps.role_id From 11a5e50621f4c1f48dee0fd9e3ff871da7502b8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Thu, 24 Jun 2021 11:22:21 +0800 Subject: [PATCH 27/57] =?UTF-8?q?fetch:=E5=88=A0=E9=99=A4=E8=A7=92?= =?UTF-8?q?=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.properties | 1 - adc-da-slrs/pom.xml | 4 --- .../slrs/sarPosition/dao/TsPositionDao.java | 20 +++++++++++++++ .../service/impl/TsPositionServiceImpl.java | 1 + .../sarRole/controller/TsRoleController.java | 7 ++++++ .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 10 ++++++++ .../slrs/sarRole/service/ITsRoleService.java | 7 ++++++ .../service/impl/TsRoleServiceImpl.java | 25 +++++++++++++++++++ .../mapper/sarPosition/TsPositionMapper.xml | 2 +- 9 files changed, 71 insertions(+), 6 deletions(-) diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index 503b05d7..d0fa62ba 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -91,7 +91,6 @@ spring.datasource.druid.stat-view-servlet.url-pattern=/druid/* # ======================================= mybatis-plus.config-location=classpath:mybatis/mybatis-config.xml mybatis-plus.mapper-locations=classpath*:mybatis/mapper/**/*.xml -mybatis-plus.type-aliases-package=com.adc.da.**.entity # ======================================== # activiti 配置信息 diff --git a/adc-da-slrs/pom.xml b/adc-da-slrs/pom.xml index b2a17634..e0f98a9f 100644 --- a/adc-da-slrs/pom.xml +++ b/adc-da-slrs/pom.xml @@ -11,10 +11,6 @@ adc-da-slrs - - - - com.adc adc-da-base diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java index d875b7ad..7f56cde4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -19,14 +19,34 @@ import java.util.List; */ public interface TsPositionDao extends BaseMapper { + /** + * 查询岗位绑定的角色ID + * @param positionId:岗位ID + * @return List:角色ID + */ @Select("select role_id from ts_position_role where position_id=#{positionId}") List getRoleId(String positionId); + /** + * 绑定角色 + * @param positionId:岗位ID + * @param roleId:角色ID + */ @Insert("insert into ts_position_role (position_id,role_id) values (#{positionId},#{roleId})") void insertRole(String positionId, String roleId); + /** + * 解绑角色 + * @param positionId:岗位ID + * @param roleId:角色ID + */ @Delete("delete from ts_position_role where position_id=#{positionId} and role_id=#{roleId}") void deleteRole(String positionId, String roleId); + /** + * 查询岗位绑定的角色信息 + * @param positionId:岗位ID + * @return List + */ List getRole(String positionId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index 44a8e98b..6e815986 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -88,6 +88,7 @@ public class TsPositionServiceImpl extends ServiceImpl0){ return Result.error("该岗位已存在"); } + tsPosition.setType("2"); tsPositionDao.insert(tsPosition); return Result.success(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index df2266d9..932f7d8c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -7,6 +7,7 @@ import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.sys.entity.UserEO; import io.swagger.annotations.ApiOperation; +import org.apache.ibatis.annotations.Delete; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -62,4 +63,10 @@ public class TsRoleController extends BaseController { tsRole.setOperator(userEO.getUname()); return tsRoleService.updateRole(tsRole); } + + @ApiOperation("删除角色") + @DeleteMapping + public ResponseMessage deleteRole(@RequestParam String roleId){ + return tsRoleService.deleteRole(roleId); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java index 51bc80e2..762c671d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -2,6 +2,9 @@ package com.adc.da.slrs.sarRole.dao; import com.adc.da.slrs.sarRole.entity.TsRole; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

    @@ -13,4 +16,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface TsRoleDao extends BaseMapper { + /** + * 查询该角色绑定的岗位ID + * @param roleId:角色ID + * @return List:岗位ID + */ + @Select("select position_id from ts_position_role where role_id=#{roleId}") + List getPositionIds(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index f70d4a22..33e7ed5c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -42,4 +42,11 @@ public interface ITsRoleService extends IService { * @return ResponseMessage */ ResponseMessage updateRole(TsRole tsRole); + + /** + * 删除角色 + * @param roleId:角色Id + * @return ResponseMessage + */ + ResponseMessage deleteRole(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 052a70e7..a1fdf72a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -109,5 +109,30 @@ public class TsRoleServiceImpl extends ServiceImpl implements return Result.success(); } + /** + * 删除角色 + * @param roleId:角色Id + * @return ResponseMessage + */ + @Override + public ResponseMessage deleteRole(String roleId) { + TsRole tsRole=tsRoleDao.selectById(roleId); + if(tsRole==null){ + return Result.error("该角色不存在"); + } + QueryWrapper childrenRoleQueryWrapper=new QueryWrapper<>(); + childrenRoleQueryWrapper.eq("parent_id",roleId); + List childrenRole=tsRoleDao.selectList(childrenRoleQueryWrapper); + if(childrenRole!=null&&childrenRole.size()>0){ + return Result.error("该角色有下属角色,无法删除"); + } + List positionIds=tsRoleDao.getPositionIds(roleId); + if(positionIds!=null&&positionIds.size()>0){ + return Result.error("该角色已绑定岗位,无法删除"); + } + tsRoleDao.deleteById(roleId); + return Result.success(); + } + } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml index 2c45b160..6188a7bb 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml @@ -1,7 +1,7 @@ - select * from ts_role r left join ts_position_role ps on r.id=ps.role_id From 1398f34c1e5fd02e2b8c00a516c245e1373b6315 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Thu, 24 Jun 2021 14:08:51 +0800 Subject: [PATCH 28/57] =?UTF-8?q?=E8=A7=92=E8=89=B2=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TsPositionServiceImpl.java | 4 +++ .../sarRole/controller/TsRoleController.java | 8 +++++ .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 26 ++++++++++++++++ .../da/slrs/sarRole/entity/TsRoleMenuVO.java | 14 +++++++++ .../slrs/sarRole/service/ITsRoleService.java | 8 +++++ .../service/impl/TsRoleServiceImpl.java | 30 +++++++++++++++++++ 6 files changed, 90 insertions(+) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleMenuVO.java diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index 6e815986..7665472a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -52,6 +52,10 @@ public class TsPositionServiceImpl extends ServiceImpl setRole(TsPositionRoleVO tsPositionRoleVO) { + TsPosition position=tsPositionDao.selectById(tsPositionRoleVO.getPositionId()); + if(position==null){ + return Result.error("该岗位不存在"); + } List oldRoleIds=tsPositionDao.getRoleId(tsPositionRoleVO.getPositionId()); Map> updateRoleIds= ListUtil.difList(tsPositionRoleVO.getRoleIds(),oldRoleIds); List insertIds=updateRoleIds.get("insert"); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index 932f7d8c..0dbb2f61 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -4,6 +4,7 @@ package com.adc.da.slrs.sarRole.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; +import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.sys.entity.UserEO; import io.swagger.annotations.ApiOperation; @@ -15,6 +16,7 @@ import com.adc.da.slrs.sarRole.entity.TsRole; import io.swagger.annotations.Api; import com.adc.da.base.web.BaseController; +import javax.validation.Valid; import java.util.List; /** @@ -69,4 +71,10 @@ public class TsRoleController extends BaseController { public ResponseMessage deleteRole(@RequestParam String roleId){ return tsRoleService.deleteRole(roleId); } + + @ApiOperation("配置权限") + @PostMapping("/ment") + public ResponseMessage setMenu(@Valid @RequestBody TsRoleMenuVO tsRoleMenuVO){ + return tsRoleService.setMenu(tsRoleMenuVO); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java index 762c671d..4023d41a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -2,6 +2,8 @@ package com.adc.da.slrs.sarRole.dao; import com.adc.da.slrs.sarRole.entity.TsRole; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Select; import java.util.List; @@ -23,4 +25,28 @@ public interface TsRoleDao extends BaseMapper { */ @Select("select position_id from ts_position_role where role_id=#{roleId}") List getPositionIds(String roleId); + + /** + * 查询角色的权限ID + * @param roleId:角色ID + * @return List + */ + @Select("select menu_id from ts_role_menu where role_id=#{roleId}") + List getMenuIds(String roleId); + + /** + * 添加权限 + * @param roleId:角色ID + * @param menuId:权限ID + */ + @Insert("insert into ts_role_menu (role_id,menu_id) values (#{roleId},#{menuId})") + void addMenu(String roleId, String menuId); + + /** + * 删除权限 + * @param roleId:角色ID + * @param menuId:权限ID + */ + @Delete("delete from ts_role_menu where role_id=#{roleId} and menu_id=#{menuId}") + void delMenu(String roleId, String menuId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleMenuVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleMenuVO.java new file mode 100644 index 00000000..3c3a775d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleMenuVO.java @@ -0,0 +1,14 @@ +package com.adc.da.slrs.sarRole.entity; + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +public class TsRoleMenuVO { + @NotNull(message = "roleId不能为空") + private String roleId; + @NotNull(message = "menuIds不能为空") + private List menuIds; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index 33e7ed5c..a2f17288 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarRole.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarRole.entity.TsRole; +import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -49,4 +50,11 @@ public interface ITsRoleService extends IService { * @return ResponseMessage */ ResponseMessage deleteRole(String roleId); + + /** + * 配置菜单 + * @param tsRoleMenuVO:菜单ID + * @return ResponseMessage + */ + ResponseMessage setMenu(TsRoleMenuVO tsRoleMenuVO); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index a1fdf72a..01abcfc2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -2,15 +2,20 @@ package com.adc.da.slrs.sarRole.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; +import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; +import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; /** *

    @@ -134,5 +139,30 @@ public class TsRoleServiceImpl extends ServiceImpl implements return Result.success(); } + /** + * 配置菜单 + * @param tsRoleMenuVO:菜单ID + * @return ResponseMessage + */ + @Override + @Transactional + public ResponseMessage setMenu(TsRoleMenuVO tsRoleMenuVO) { + TsRole role=tsRoleDao.selectById(tsRoleMenuVO.getRoleId()); + if(role==null){ + return Result.error("该角色不存在"); + } + List oldMenuIds=tsRoleDao.getMenuIds(tsRoleMenuVO.getRoleId()); + Map> updateMenuIds= ListUtil.difList(tsRoleMenuVO.getMenuIds(),oldMenuIds); + List insertIds=updateMenuIds.get("insert"); + List deleteIds=updateMenuIds.get("update"); + for(String menuId:insertIds){ + tsRoleDao.addMenu(tsRoleMenuVO.getRoleId(),menuId); + } + for(String menuId:deleteIds){ + tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); + } + return Result.success(); + } + } From 89a7a5ee7f1bd169ec39b659e17e875699dff993 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Thu, 24 Jun 2021 17:50:12 +0800 Subject: [PATCH 29/57] =?UTF-8?q?feat=20=E5=90=88=E5=B9=B6=E5=88=86?= =?UTF-8?q?=E6=94=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ISarStandardsInfoService.java | 2 +- .../impl/SarStandardsInfoServiceImpl.java | 547 +++++++++--------- 2 files changed, 275 insertions(+), 274 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java index 973fb7cd..5c239a4b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java @@ -32,7 +32,7 @@ public interface ISarStandardsInfoService extends IService { List selectStandardsByStandnumber(String replaceStandNum, String standType); SarStandardsInfo selectStandardsInfoByKey(String id) throws Exception; - + public void attrInfoDetails (SarStandardsInfo row) throws Exception; boolean updateStandardsMenu(SarStandardsInfoEOPage standardsInfoEO); boolean updateStandInfo(SarStandardsInfoEOPage standardsInfoEO); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 6345dc36..b8c0ea03 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -70,7 +70,7 @@ import java.util.stream.Collectors; /** *

    - * 服务实现类 + * 服务实现类 *

    * * @author super_liu @@ -152,7 +152,6 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getSarStandardsInfoPage(SarStandardsInfoEOPage page) throws Exception { //查询当前登录人角色拥有权限的菜单 - List getMenuIdList = sarMenuEOService.queryRoleMenuIdList(page.getStandType()+"_STAND",null); - if(getMenuIdList != null && !getMenuIdList.isEmpty()){ + List getMenuIdList = sarMenuEOService.queryRoleMenuIdList(page.getStandType() + "_STAND", null); + if (getMenuIdList != null && !getMenuIdList.isEmpty()) { page.setMenuRoleList(getMenuIdList); } else { page.setMenuRoleList(null); @@ -186,33 +185,34 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarlist) throws Exception { - for(SarStandardsInfo row : sarlist){ + public void attrInfo(List sarlist) throws Exception { + for (SarStandardsInfo row : sarlist) { attrInfoDetails(row); } } - public void attrInfoDetails (SarStandardsInfo row) throws Exception { + + public void attrInfoDetails(SarStandardsInfo row) throws Exception { String fieldInfo = InitStandAttrUtil.queryField; String collectId = personCollectEOService.queryCollectByUserAndId(row.getId()); row.setCollectId(collectId); // 查询属性表数据 if (StringUtils.isNotBlank(fieldInfo)) { - Map getAttrMap = sarStandAttrInfoEODao.selectStandFieldAndData(fieldInfo,row.getId()); + Map getAttrMap = sarStandAttrInfoEODao.selectStandFieldAndData(fieldInfo, row.getId()); if (InitStandAttrUtil.clobFieldList != null && !InitStandAttrUtil.clobFieldList.isEmpty()) { // 遍历修改所有clob类型的值 for (String clobField : InitStandAttrUtil.clobFieldList) { Clob clobValue = (Clob) getAttrMap.get(clobField); String fieldValue = FieldConvertUtil.ClobToString(clobValue); - getAttrMap.put(clobField,fieldValue); + getAttrMap.put(clobField, fieldValue); } } // 组织机构和人员 - Map newMap = new HashMap<>(); + Map newMap = new HashMap<>(); if (getAttrMap != null) { - for (Map.Entry entry : getAttrMap.entrySet()) { - if ("EOPSSRQ".equals(entry.getKey())){ - if (entry.getValue() != null && entry.getValue().toString().length()>10){ + for (Map.Entry entry : getAttrMap.entrySet()) { + if ("EOPSSRQ".equals(entry.getKey())) { + if (entry.getValue() != null && entry.getValue().toString().length() > 10) { String time = DateUtil.formatStrUTCToDateStr(entry.getValue().toString()); entry.setValue(time); } @@ -224,7 +224,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl set = new HashSet(); // 查询条款svpps - Set itemSvpps = sarStandItemsEODao.selectSvppsByStandId(row.getId(),null,null); + Set itemSvpps = sarStandItemsEODao.selectSvppsByStandId(row.getId(), null, null); if (itemSvpps != null && !itemSvpps.isEmpty()) { set.addAll(itemSvpps); } @@ -237,12 +237,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl itemClaimType = sarStandItemsEODao.selectClaimTypesByStandId(row.getId(),null,null); + Set itemClaimType = sarStandItemsEODao.selectClaimTypesByStandId(row.getId(), null, null); if (itemClaimType != null && itemClaimType.size() > 1) { entry.setValue("RENVECPFGT"); } else if (itemClaimType != null && itemClaimType.size() == 1) { @@ -253,13 +253,13 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarlist) throws Exception { - for(SarStandardsInfo row : sarlist){ + public void attrInfoShow(List sarlist) throws Exception { + for (SarStandardsInfo row : sarlist) { attrInfoDetails(row); Map getAttrMap = row.getAttrInfoMap(); Map getNewMap = new LinkedHashMap<>(); if (getAttrMap != null && getAttrMap.size() > 0) { String svppsTip = ""; - for (Map.Entry entry : getAttrMap.entrySet()) { + for (Map.Entry entry : getAttrMap.entrySet()) { String name = entry.getKey(); String value = ""; if ("SVPPS".equals(name)) { @@ -302,7 +302,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 0) { // 修改属性表数据 sarStandAttrInfoEODao.deleteStandAttrByStandId(sarStandardsInfoEO.getId()); //编写预警信息 // writeWarnings(sarStandardsInfoEO); - updateCiteStand(sarStandardsInfoEO,null,"DTBJH","BDTBZBH"); - updateCiteStand(sarStandardsInfoEO,null,"YYBJ","BYYBJ"); - updateRelateStand(sarStandardsInfoEO,"CBBH"); + updateCiteStand(sarStandardsInfoEO, null, "DTBJH", "BDTBZBH"); + updateCiteStand(sarStandardsInfoEO, null, "YYBJ", "BYYBJ"); + updateRelateStand(sarStandardsInfoEO, "CBBH"); // 根据代替标准号修改被代替的标准的状态 修改为已修订状态 replaseStandState(sarStandardsInfoEO); // 处理属性表信息 @@ -365,7 +365,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarStandAttrMap = JSONObject.fromObject(sarStandAttrEOStr); + Map sarStandAttrMap = JSONObject.fromObject(sarStandAttrEOStr); StringBuilder fieldsBuilder = new StringBuilder(); StringBuilder valuesBuilder = new StringBuilder(); - Map selectionMap = new HashMap<>(); - Map fileMap = new HashMap<>(); - Map multiTimeMap = new HashMap<>(); + Map selectionMap = new HashMap<>(); + Map fileMap = new HashMap<>(); + Map multiTimeMap = new HashMap<>(); String fileIds = ""; - for (Map.Entry entry : sarStandAttrMap.entrySet()) { + for (Map.Entry entry : sarStandAttrMap.entrySet()) { String attrKey = entry.getKey(); String attrValue = String.valueOf(entry.getValue()); if (InitStandAttrUtil.queryFieldList != null && !InitStandAttrUtil.queryFieldList.isEmpty()) { @@ -407,15 +407,15 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 0) { // 多选项处理 - createStandVal(sarStandardsInfoEO.getId(),selectionMap); + createStandVal(sarStandardsInfoEO.getId(), selectionMap); // 文件处理 - createStandFile(sarStandardsInfoEO.getId(),fileMap); + createStandFile(sarStandardsInfoEO.getId(), fileMap); // 多时间处理 - createStandPutTime(sarStandardsInfoEO.getId(),multiTimeMap); + createStandPutTime(sarStandardsInfoEO.getId(), multiTimeMap); } } @@ -452,10 +452,10 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl selectionMap) { + public void createStandVal(String standId, Map selectionMap) { if (selectionMap != null && selectionMap.size() > 0) { List standValList = new ArrayList<>(); - for (Map.Entry entry : selectionMap.entrySet()) { + for (Map.Entry entry : selectionMap.entrySet()) { String value = entry.getValue(); String field = entry.getKey(); if (StringUtils.isNotBlank(value)) { @@ -486,16 +486,16 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl fileMap) throws Exception { + public void createStandFile(String standId, Map fileMap) throws Exception { if (fileMap != null && fileMap.size() > 0) { List standFileList = new ArrayList<>(); - for (Map.Entry entry : fileMap.entrySet()) { + for (Map.Entry entry : fileMap.entrySet()) { String value = entry.getValue(); String field = entry.getKey(); if (StringUtils.isNotBlank(value)) { List fileList = attFileEOService.getMultiFileInfos(value); if (fileList != null && !fileList.isEmpty()) { - createStandFileAppend(standId,field,fileList,standFileList); + createStandFileAppend(standId, field, fileList, standFileList); } } } @@ -505,7 +505,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl fileList,List standFileList) throws Exception { + public void createStandFileAppend(String standId, String field, List fileList, List standFileList) throws Exception { for (AttFileEO fileInfo : fileList) { SarStandFile sarStandFileEO = new SarStandFile(); sarStandFileEO.setCreationUser(LoginUserUtil.getUserId()); @@ -553,7 +553,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl multiTimeMap) throws Exception{ + public void createStandPutTime(String standId, Map multiTimeMap) throws Exception { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); if (multiTimeMap != null && multiTimeMap.size() > 0) { List standTimeList = new ArrayList<>(); @@ -562,7 +562,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl0){ + if (StringUtils.isNotEmpty(newCiteStand) && newCiteStand.split(",").length > 0) { // 主要逻辑处理新增的 String nowEOrepNums[] = newCiteStand.split(","); - for (String citeStand: nowEOrepNums){ + for (String citeStand : nowEOrepNums) { sarStandardsSelectEO.setStandNumber(citeStand); - if (StringUtils.isNotBlank(sarStandardsSelectEO.getStandNumber())){ + if (StringUtils.isNotBlank(sarStandardsSelectEO.getStandNumber())) { String sort = ""; - if (sarStandardsSelectEO.getStandNumber().length()>3) { + if (sarStandardsSelectEO.getStandNumber().length() > 3) { sort = sarStandardsSelectEO.getStandNumber().substring(0, 3); } if ("ECE".equals(sort)) { int length = sarStandardsSelectEO.getStandNumber().length(); - String number = sarStandardsSelectEO.getStandNumber().substring(3,length); + String number = sarStandardsSelectEO.getStandNumber().substring(3, length); sarStandardsSelectEO.setStandNumber("UN(ECE)" + number); } } List result = dao.selectStandardsByStandnumber(sarStandardsSelectEO); - if (result != null && result.size()>0){ + if (result != null && result.size() > 0) { String standId = result.get(0).getId(); String field = beUpedField; - String citedStand = sarStandAttrInfoEODao.selectFieldValByStandId(field,result.get(0).getId()); + String citedStand = sarStandAttrInfoEODao.selectFieldValByStandId(field, result.get(0).getId()); String changeCitedStand = ""; - if(StringUtils.isNotBlank(citedStand)){ - String[] beforeReplacedStandNumStr = citedStand.split(","); - if (Arrays.asList(beforeReplacedStandNumStr).contains(addStrandNumber)){ + if (StringUtils.isNotBlank(citedStand)) { + String[] beforeReplacedStandNumStr = citedStand.split(","); + if (Arrays.asList(beforeReplacedStandNumStr).contains(addStrandNumber)) { continue; } else { - changeCitedStand = citedStand+","+ addStrandNumber; + changeCitedStand = citedStand + "," + addStrandNumber; } } else { changeCitedStand = addStrandNumber; } - sarStandAttrInfoEODao.updateStandInfo(standId,field,changeCitedStand); + sarStandAttrInfoEODao.updateStandInfo(standId, field, changeCitedStand); } } // 如果id不为空,说明是修改,有逻辑删除的执行以下语句,存在之前是三项,现在修改成两项的情况 - if (null != beforeSarStandardsInfo){ + if (null != beforeSarStandardsInfo) { String oldCiteStand = String.valueOf(beforeSarStandardsInfo.getAttrInfoMap().get(upField)); - if(StringUtils.isNotEmpty(oldCiteStand)) { - String [] beforeEOrepNums = oldCiteStand.split(","); - for (String beforeStr:beforeEOrepNums){ + if (StringUtils.isNotEmpty(oldCiteStand)) { + String[] beforeEOrepNums = oldCiteStand.split(","); + for (String beforeStr : beforeEOrepNums) { // 如果再旧的中包含,在新的中没有,需要删除 - if (!Arrays.asList(nowEOrepNums).contains(beforeStr)){ + if (!Arrays.asList(nowEOrepNums).contains(beforeStr)) { sarStandardsSelectEO.setStandNumber(beforeStr); List result = dao.selectStandardsByStandnumber(sarStandardsSelectEO); - if (result != null && result.size()>0){ + if (result != null && result.size() > 0) { String standId = result.get(0).getId(); String field = beUpedField; - String citedStand = sarStandAttrInfoEODao.selectFieldValByStandId(field,result.get(0).getId()); + String citedStand = sarStandAttrInfoEODao.selectFieldValByStandId(field, result.get(0).getId()); String changeCitedStand = ""; - if(StringUtils.isNotBlank(citedStand)){ - String[] beforerepalced = citedStand.split(","); + if (StringUtils.isNotBlank(citedStand)) { + String[] beforerepalced = citedStand.split(","); ArrayList beforlist = new ArrayList<>(Arrays.asList(beforerepalced)); - if (beforlist.contains(beforeStrandNumber)){ + if (beforlist.contains(beforeStrandNumber)) { beforlist.remove(beforeStrandNumber); changeCitedStand = StringUtils.join(beforlist.toArray(), ","); } else { continue; } - sarStandAttrInfoEODao.updateStandInfo(standId,field,changeCitedStand); + sarStandAttrInfoEODao.updateStandInfo(standId, field, changeCitedStand); } } } @@ -684,29 +684,29 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl result = dao.selectStandardsByStandnumber(sarStandardsSelectEO); - if (result != null && result.size()>0){ + if (result != null && result.size() > 0) { String standId = result.get(0).getId(); String field = "BYYBJ"; - String citedStand = sarStandAttrInfoEODao.selectFieldValByStandId(field,result.get(0).getId()); + String citedStand = sarStandAttrInfoEODao.selectFieldValByStandId(field, result.get(0).getId()); String changeCitedStand = ""; - if(StringUtils.isNotBlank(citedStand)){ - String[] beforerepalced = citedStand.split(","); + if (StringUtils.isNotBlank(citedStand)) { + String[] beforerepalced = citedStand.split(","); ArrayList beforlist = new ArrayList<>(Arrays.asList(beforerepalced)); - if (beforlist.contains(beforeStrandNumber)){ + if (beforlist.contains(beforeStrandNumber)) { beforlist.remove(beforeStrandNumber); changeCitedStand = StringUtils.join(beforlist.toArray(), ","); } else { continue; } - sarStandAttrInfoEODao.updateStandInfo(standId,field,changeCitedStand); + sarStandAttrInfoEODao.updateStandInfo(standId, field, changeCitedStand); } } } @@ -715,12 +715,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl result = dao.selectStandardsByStandnumber(selectEO); // 新增关联 - if (result != null && result.size()>0) { + if (result != null && result.size() > 0) { String standId = result.get(0).getId(); newStandIdList.add(standId); - String relatedStand = sarStandAttrInfoEODao.selectFieldValByStandId(upField,standId); + String relatedStand = sarStandAttrInfoEODao.selectFieldValByStandId(upField, standId); String changeStand = ""; - if(StringUtils.isNotBlank(relatedStand)){ + if (StringUtils.isNotBlank(relatedStand)) { List beforelist = new ArrayList<>(Arrays.asList(relatedStand.split(","))); - if (!beforelist.contains(addStandNumber)){ + if (!beforelist.contains(addStandNumber)) { beforelist.add(addStandNumber); changeStand = StringUtils.join(beforelist.toArray(), ","); - sarStandAttrInfoEODao.updateStandInfo(standId,upField,changeStand); + sarStandAttrInfoEODao.updateStandInfo(standId, upField, changeStand); } else { continue; } } else { - sarStandAttrInfoEODao.updateStandInfo(standId,upField,addStandNumber); + sarStandAttrInfoEODao.updateStandInfo(standId, upField, addStandNumber); } } } @@ -759,7 +759,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl resultList = sarStandAttrInfoEODao.selectFieldValByContainsVal(upField,addStandNumber,newStandIdList); + List resultList = sarStandAttrInfoEODao.selectFieldValByContainsVal(upField, addStandNumber, newStandIdList); if (resultList != null && !resultList.isEmpty()) { for (SelectionResult result : resultList) { String relatedStand = result.getLabel(); @@ -770,7 +770,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl result = dao.selectStandardsByStandnumber(sarStandardsSelectEO); - if (result != null && !result.isEmpty()){ + if (result != null && !result.isEmpty()) { SarStandardsInfo replaseStand = result.get(0); String standState = replaseStand.getStandState(); String oldStandState = standState; String oldStandStateShow = SarStandStateEnum.getLableByVal(oldStandState); - if(!SarStandStateEnum.N5KLTFLNRC.getValue().equals(standState)|| !SarStandStateEnum.TOVOID.getValue().equals(standState)){ + if (!SarStandStateEnum.N5KLTFLNRC.getValue().equals(standState) || !SarStandStateEnum.TOVOID.getValue().equals(standState)) { replaseStand.setStandState(SarStandStateEnum.N5KLTFLNRC.getValue()); dao.updateById(replaseStand); //更新log日志 - sarUpdLogEOService.createBaseLog(replaseStand.getId(),replaseStand.getStandType()+"_STAND","入库流程当前标准因被新标准代替修改标准状态的值从《"+oldStandStateShow+"》为《\"已修订\"》"); + sarUpdLogEOService.createBaseLog(replaseStand.getId(), replaseStand.getStandType() + "_STAND", "入库流程当前标准因被新标准代替修改标准状态的值从《" + oldStandStateShow + "》为《\"已修订\"》"); } } } } } - public void updateStandState (SarStandardsInfo sarStandardsInfoEO,String oldState) { + public void updateStandState(SarStandardsInfo sarStandardsInfoEO, String oldState) { String resultState = ""; String newState = sarStandardsInfoEO.getStandState(); String standNum = ""; @@ -823,10 +824,10 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarStandAttrMap = JSONObject.fromObject(sarStandardsInfoEO.getSarStandAttrEOStr()); + Map sarStandAttrMap = JSONObject.fromObject(sarStandardsInfoEO.getSarStandAttrEOStr()); if (sarStandAttrMap != null && !sarStandAttrMap.isEmpty()) { if (StringUtils.isNotBlank(sarStandAttrMap.get("FBGBJBD"))) { newState = SarStandStateEnum.FJNVYX9Q7J.getValue(); @@ -911,14 +912,14 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl bhs = new ArrayList<>(Arrays.asList(String.valueOf(map.get("DTBJH")).split(","))); @@ -955,41 +956,41 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl newMap = new HashMap<>(); - Map oldMap = beforeSarStandardsInfo.getAttrInfoMap(); + public void saveUpdateLog(SarStandardsInfo sarStandardsInfoEO, SarStandardsInfo beforeSarStandardsInfo) throws Exception { + Map newMap = new HashMap<>(); + Map oldMap = beforeSarStandardsInfo.getAttrInfoMap(); String attrStr = sarStandardsInfoEO.getSarStandAttrEOStr(); if (StringUtils.isNotBlank(attrStr)) { newMap = JSONObject.fromObject(attrStr); } - newMap = changeMap(sarStandardsInfoEO,newMap); - oldMap = changeMap(beforeSarStandardsInfo,oldMap); + newMap = changeMap(sarStandardsInfoEO, newMap); + oldMap = changeMap(beforeSarStandardsInfo, oldMap); // 增加关联事件 String number = sarStandardsInfoEO.getStandSort() + " " + sarStandardsInfoEO.getStandNumber(); if (StringUtils.isNotBlank(sarStandardsInfoEO.getStandYear())) { number += "-" + sarStandardsInfoEO.getStandYear(); } String content = number + " 《" + sarStandardsInfoEO.getStandName() + "》"; - sarUpdLogEOService.createUpdateLog(sarStandardsInfoEO.getStandType()+"_STAND",sarStandardsInfoEO.getId(),oldMap,newMap,content); + sarUpdLogEOService.createUpdateLog(sarStandardsInfoEO.getStandType() + "_STAND", sarStandardsInfoEO.getId(), oldMap, newMap, content); } - public Map changeMap (SarStandardsInfo sarStandardsInfoEO,Map map) { - map.put("country",sarStandardsInfoEO.getCountry()); - map.put("isRelateAccess",sarStandardsInfoEO.getIsRelateAccess()); - map.put("standSort",sarStandardsInfoEO.getStandSort()); - map.put("standNumber",sarStandardsInfoEO.getStandNumber()); - map.put("standYear",sarStandardsInfoEO.getStandYear()); - map.put("standName",sarStandardsInfoEO.getStandName()); - map.put("standEnName",sarStandardsInfoEO.getStandEnName()); - map.put("standNature",sarStandardsInfoEO.getStandNature()); - map.put("standState",sarStandardsInfoEO.getStandState()); + public Map changeMap(SarStandardsInfo sarStandardsInfoEO, Map map) { + map.put("country", sarStandardsInfoEO.getCountry()); + map.put("isRelateAccess", sarStandardsInfoEO.getIsRelateAccess()); + map.put("standSort", sarStandardsInfoEO.getStandSort()); + map.put("standNumber", sarStandardsInfoEO.getStandNumber()); + map.put("standYear", sarStandardsInfoEO.getStandYear()); + map.put("standName", sarStandardsInfoEO.getStandName()); + map.put("standEnName", sarStandardsInfoEO.getStandEnName()); + map.put("standNature", sarStandardsInfoEO.getStandNature()); + map.put("standState", sarStandardsInfoEO.getStandState()); // if (sarStandardsInfoEO.getIssueTime() != null) { // SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); // String issueStr = format.format(sarStandardsInfoEO.getIssueTime()); // // } - map.put("issueTime",sarStandardsInfoEO.getIssueTime()); - map.put("synopsis",sarStandardsInfoEO.getSynopsis()); + map.put("issueTime", sarStandardsInfoEO.getIssueTime()); + map.put("synopsis", sarStandardsInfoEO.getSynopsis()); return map; } @@ -1012,7 +1013,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getReplacedStands = dao.getSarStandardsInfoPage(sarStandardsInfoEOPage); - if(getReplacedStands != null && !getReplacedStands.isEmpty()){ - for(SarStandardsInfo stand : getReplacedStands){ + if (getReplacedStands != null && !getReplacedStands.isEmpty()) { + for (SarStandardsInfo stand : getReplacedStands) { SarStandardsInfo newStand = new SarStandardsInfo(); newStand.setId(stand.getId()); String replacedNum = stand.getReplacedStandNum(); List numList = Arrays.asList(replacedNum.split(",")); - if(numList.contains(standNum)){ + if (numList.contains(standNum)) { //被代替标准号都已逗号分隔存在一个字段里,如果存在字符串中间,后面会有一个逗号, // 存在字符串末尾则没有逗号 - if(numList.contains(standNum+",")){ - newStand.setReplacedStandNum(stand.getReplacedStandNum().replaceAll(standNum+",","")); + if (numList.contains(standNum + ",")) { + newStand.setReplacedStandNum(stand.getReplacedStandNum().replaceAll(standNum + ",", "")); dao.updateById(newStand); } else { - if (numList.contains(","+standNum)) { - newStand.setReplacedStandNum(stand.getReplacedStandNum().replace(","+standNum,"")); + if (numList.contains("," + standNum)) { + newStand.setReplacedStandNum(stand.getReplacedStandNum().replace("," + standNum, "")); } else { - newStand.setReplacedStandNum(stand.getReplacedStandNum().replace(standNum,"")); + newStand.setReplacedStandNum(stand.getReplacedStandNum().replace(standNum, "")); } dao.updateById(newStand); } @@ -1095,18 +1097,18 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl */ - public List getExportDatas (StandardsInfoExcelVO standardsInfoExcelVO) throws Exception { + public List getExportDatas(StandardsInfoExcelVO standardsInfoExcelVO) throws Exception { SarStandardsInfoEOPage page = new SarStandardsInfoEOPage(); - BeanUtils.copyProperties(standardsInfoExcelVO,page); + BeanUtils.copyProperties(standardsInfoExcelVO, page); if ("apart".equals(standardsInfoExcelVO.getExportType())) { page.setIdlist(standardsInfoExcelVO.getExportContent().split(",")); } else { JSONObject jsonObject = JSONObject.fromObject(standardsInfoExcelVO.getExportContent()); - page = (SarStandardsInfoEOPage)JSONObject.toBean(jsonObject, SarStandardsInfoEOPage.class); + page = (SarStandardsInfoEOPage) JSONObject.toBean(jsonObject, SarStandardsInfoEOPage.class); page.setStandType(standardsInfoExcelVO.getStandType()); //查询当前登录人角色拥有权限的菜单 - List getMenuIdList = sarMenuEOService.queryRoleMenuIdList(page.getStandType()+"_STAND",null); - if(getMenuIdList != null && !getMenuIdList.isEmpty()){ + List getMenuIdList = sarMenuEOService.queryRoleMenuIdList(page.getStandType() + "_STAND", null); + if (getMenuIdList != null && !getMenuIdList.isEmpty()) { page.setMenuRoleList(getMenuIdList); } else { page.setMenuRoleList(null); @@ -1116,7 +1118,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl searchList = com.alibaba.fastjson.JSONObject.parseArray(page.getAdvanceSearchVOStr(),SarAdvanceSearchVO.class); + List searchList = com.alibaba.fastjson.JSONObject.parseArray(page.getAdvanceSearchVOStr(), SarAdvanceSearchVO.class); String advanceStr = SarAdvanceSearchUtil.createSql(searchList); if (StringUtils.isNotBlank(advanceStr)) { page.setAdvanceSearchStr(advanceStr); @@ -1132,7 +1134,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl importSarStandardsInfoData(List> dataList, String standType, String menuId, String filepath){ + public ResponseMessage importSarStandardsInfoData(List> dataList, String standType, String menuId, String filepath) { //此处需要做各种验证,数据库操作 try { //验证导入数据是否符合规则 @@ -1156,19 +1158,19 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl> dataList, String standType, String filepath) throws Exception{ + public Map validateImportDatas(List> dataList, String standType, String filepath) throws Exception { //存放数据验证结果信息 List stringMessage = new ArrayList<>(); int i = 1; //记录行号 List standnumberlist = new ArrayList<>(); // 记录验证过后的编码,用来判断是否有重复 //循环验证数据 List standList = new ArrayList<>(); - for (Map dataMap : dataList) { + for (Map dataMap : dataList) { i++; int countError = 0; //记录失败数据数量 String errorMsg = "

    第" + i + "行:

    "; @@ -1182,17 +1184,17 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrList = new ArrayList<>(); String zrbmOrgNames = ""; - for (Map.Entry entry : dataMap.entrySet()) { + for (Map.Entry entry : dataMap.entrySet()) { String name = entry.getKey(); String value = entry.getValue(); if ("责任部门".equals(name)) { zrbmOrgNames = value; } if (baseFieldsList.contains(name)) { - SarStandImportDto.compareFieldAndName(name,value,sarStandardsInfoEO); - } else if (attrFieldsList.contains(name)){ + SarStandImportDto.compareFieldAndName(name, value, sarStandardsInfoEO); + } else if (attrFieldsList.contains(name)) { // 根据name查字段 - SarStandAttrDetails fieldEO = sarStandAttrDetailsEODao.selectFieldByName(name,standType+"_STAND"); + SarStandAttrDetails fieldEO = sarStandAttrDetailsEODao.selectFieldByName(name, standType + "_STAND"); if (fieldEO != null) { fieldEO.setAttrValue(value); attrList.add(fieldEO); @@ -1201,10 +1203,10 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl beseResultMap = validateBaseDatas(sarStandardsInfoEO,standType,errorMsg,countError,standnumberlist); + Map beseResultMap = validateBaseDatas(sarStandardsInfoEO, standType, errorMsg, countError, standnumberlist); errorMsg = beseResultMap.get("errorMsg"); countError = Integer.parseInt(beseResultMap.get("countError")); - Map attrResultMap = validateAttrDatas(sarStandardsInfoEO,standType,filepath,errorMsg,countError,zrbmOrgNames); + Map attrResultMap = validateAttrDatas(sarStandardsInfoEO, standType, filepath, errorMsg, countError, zrbmOrgNames); errorMsg = attrResultMap.get("errorMsg"); countError = Integer.parseInt(attrResultMap.get("countError")); if (countError > 0) { @@ -1228,8 +1230,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl standnumberlist) throws Exception { - Map map = new HashMap(); + public Map validateBaseDatas(SarStandardsInfo dto, String standType, String errorMsg, int countError, List standnumberlist) throws Exception { + Map map = new HashMap(); // 验证国家及关联标准类别 DicTypeEO dic = new DicTypeEO(); List getDic = new ArrayList<>(); @@ -1258,7 +1260,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 20) { @@ -1340,7 +1342,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 100){ + if (dto.getCountry().length() > 100) { errorMsg += "

    适用区域不能超过100个字符;

    "; countError++; } else { @@ -1362,7 +1364,6 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl map = new HashMap(); + public Map validateAttrDatas(SarStandardsInfo dto, String standType, String filepath, String errorMsg, int countError, String zrbmOrgNames) throws Exception { + Map map = new HashMap(); //根据重要度判断字段必填 String isMustStr = "no"; List isMustList = new ArrayList<>(); @@ -1445,7 +1446,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrList = dto.getAttrInfoList(); if (attrList != null && !attrList.isEmpty()) { if (StringUtils.isNotBlank(zrbmOrgNames)) { - zrbmOrgNames = sysInfoEOService.getOrgIdByName(zrbmOrgNames,null); + zrbmOrgNames = sysInfoEOService.getOrgIdByName(zrbmOrgNames, null); } - Map attrInfoMap = new HashMap<>(); + Map attrInfoMap = new HashMap<>(); for (SarStandAttrDetails detailsEO : attrList) { // 根据不同字段类型进行不同验证 String attrType = detailsEO.getAttrType(); @@ -1470,7 +1471,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl"; + errorMsg += "

    " + attrName + "不能为空;

    "; countError++; } if (StandAttrTypeEnum.INPUT_STR.getValue().equals(attrType)) { @@ -1478,7 +1479,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrLen) { - errorMsg += "

    "+attrName + "不能超过"+ attrLen +"个字符;

    "; + errorMsg += "

    " + attrName + "不能超过" + attrLen + "个字符;

    "; countError++; } } @@ -1488,7 +1489,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrLen) { - errorMsg += "

    "+attrName + "不能超过"+ attrLen +"个字符;

    "; + errorMsg += "

    " + attrName + "不能超过" + attrLen + "个字符;

    "; countError++; } } int value = Integer.parseInt(attrValue); - attrInfoMap.put(attrField,value); + attrInfoMap.put(attrField, value); } else if (StandAttrTypeEnum.SELECT_OPTION.getValue().equals(attrType) || StandAttrTypeEnum.SEL_OPTS.getValue().equals(attrType)) { String saveCode = ""; if (StringUtils.isNotEmpty(attrValue)) { attrValue = attrValue.replace(",", ","); String[] valueArr = attrValue.split(","); if (StandAttrTypeEnum.SELECT_OPTION.getValue().equals(attrType) && valueArr.length > 1) { - errorMsg += "

    "+attrName + "单选字段只能输入一个选项;

    "; + errorMsg += "

    " + attrName + "单选字段只能输入一个选项;

    "; countError++; - } else if(valueArr.length>20){ - errorMsg += "

    "+attrName + "选项不能超过20个;

    "; + } else if (valueArr.length > 20) { + errorMsg += "

    " + attrName + "选项不能超过20个;

    "; countError++; } else if (attrValue.length() > attrLen) { - errorMsg += "

    "+attrName + "不能超过500个字符;

    "; + errorMsg += "

    " + attrName + "不能超过500个字符;

    "; countError++; } else { Set set = new HashSet(); @@ -1543,18 +1544,18 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl"; + errorMsg += "

    " + attrName + valueArr[e] + "不存在;

    "; countError++; } } - }else if (SelectionTypeEnum.GZZXX.getValue().equals(selVal)) { + } else if (SelectionTypeEnum.GZZXX.getValue().equals(selVal)) { for (int e = 0; e < valueArr.length; e++) { set.add(valueArr[e]); String id = sysInfoEOService.getGroupIdByNames(valueArr[e]); if (StringUtils.isNotBlank(id)) { saveCode += id + ','; } else { - errorMsg += "

    "+attrName + valueArr[e] + "不存在;

    "; + errorMsg += "

    " + attrName + valueArr[e] + "不存在;

    "; countError++; } } @@ -1569,11 +1570,11 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl"; + errorMsg += "

    " + attrName + valueArr[e] + "不存在;

    "; countError++; } } @@ -1582,15 +1583,15 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl"; + errorMsg += "

    " + attrName + valueArr[e] + "不存在;

    "; countError++; } } @@ -1601,7 +1602,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl"; + errorMsg += "

    " + attrName + valueArr[e] + "不存在;

    "; countError++; } } @@ -1616,33 +1617,33 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 0) { saveCode += getDic.get(0).getDicTypeCode() + ','; } else { - errorMsg += "

    "+attrName + valueArr[e] + "不存在;

    "; + errorMsg += "

    " + attrName + valueArr[e] + "不存在;

    "; countError++; } } } - if (valueArr.length > set.size()){ - errorMsg +="

    "+ attrName + "存在重复数据;

    "; + if (valueArr.length > set.size()) { + errorMsg += "

    " + attrName + "存在重复数据;

    "; countError++; } - if (!saveCode.equals("")){ - saveCode = saveCode.substring(0,saveCode.length()-1); + if (!saveCode.equals("")) { + saveCode = saveCode.substring(0, saveCode.length() - 1); } } } - attrInfoMap.put(attrField,saveCode); + attrInfoMap.put(attrField, saveCode); } else if (StandAttrTypeEnum.DATE_PICKER.getValue().equals(attrType)) { if (StringUtils.isNotBlank(attrValue)) { String[] timeArr = attrValue.split(","); if (timeArr.length > 1) { - errorMsg += "

    "+attrName + "只能输入一个日期;

    "; + errorMsg += "

    " + attrName + "只能输入一个日期;

    "; countError++; } else { if (!DateUtil.isValidDate(attrValue)) { - errorMsg += "

    "+attrName + "格式不正确;

    "; + errorMsg += "

    " + attrName + "格式不正确;

    "; countError++; } else { - attrInfoMap.put(attrField,attrValue); + attrInfoMap.put(attrField, attrValue); } } } @@ -1650,17 +1651,17 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 8) { - errorMsg += "

    "+attrName + "不能超过8个日期;

    "; + errorMsg += "

    " + attrName + "不能超过8个日期;

    "; countError++; } else { if (putTimeFieldList.contains(attrField) && DateUtil.isValidDate(attrValue)) { putTimeState = true; } if (!DateUtil.isValidDate(attrValue) && !"N/A".equals(attrValue) && !"TBD".equals(attrValue) && !"已实施".equals(attrValue)) { - errorMsg += "

    "+attrName + "格式不正确;

    "; + errorMsg += "

    " + attrName + "格式不正确;

    "; countError++; } else { - attrInfoMap.put(attrField,attrValue); + attrInfoMap.put(attrField, attrValue); } } } else { @@ -1674,14 +1675,14 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 8) { - errorMsg += "

    "+attrName + "不能超过8个

    "; + errorMsg += "

    " + attrName + "不能超过8个

    "; countError++; } else { for (int ind = 0; ind < filelist.length; ind++) { String filename = filelist[ind]; String resultMes = ExcelUtil.validatePattern(filename); - if(StringUtils.isNotEmpty(resultMes)){ - errorMsg +="

    "+ attrName + resultMes +"

    "; + if (StringUtils.isNotEmpty(resultMes)) { + errorMsg += "

    " + attrName + resultMes + "

    "; countError++; continue; } @@ -1692,7 +1693,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl 200 * 1024 * 1024) { - errorMsg +="

    "+ filename + "文件大小超过200M;

    "; + errorMsg += "

    " + filename + "文件大小超过200M;

    "; countError++; continue; } @@ -1705,17 +1706,17 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl attrLen) { - errorMsg += "

    "+attrName + "不能超过"+ attrLen +"个字符;

    "; + errorMsg += "

    " + attrName + "不能超过" + attrLen + "个字符;

    "; countError++; } } - attrInfoMap.put(attrField,attrValue); + attrInfoMap.put(attrField, attrValue); } } //三个实施日期至少有一个日期格式 @@ -1726,8 +1727,8 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getMenuPIds = sarMenuEOService.getParentMenuId(nowMenuId); if (getMenuPIds != null && getMenuPIds.size() > 1) { int idSize = getMenuPIds.size(); - secondLevelId = getMenuPIds.get(idSize-1); + secondLevelId = getMenuPIds.get(idSize - 1); } else { secondLevelId = nowMenuId; } @@ -1825,34 +1826,35 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl list = new ArrayList<>(); - if (StringUtils.isNotBlank(item)){ + if (StringUtils.isNotBlank(item)) { list = new ArrayList<>(Arrays.asList(item.split(","))); } list.add(standardsInfoEO.getMenuId()); list = list.stream().distinct().collect(Collectors.toList()); - int size = sarStandAttrInfoEODao.updateStandInfo(standardsInfoEO.getIdlist()[0],"GXHBQ", org.apache.commons.lang.StringUtils.join(list,",")); - return size>0? true:false; + int size = sarStandAttrInfoEODao.updateStandInfo(standardsInfoEO.getIdlist()[0], "GXHBQ", org.apache.commons.lang.StringUtils.join(list, ",")); + return size > 0 ? true : false; } public List selectRecommendStand(SarStandardsInfoEOPage pagenew) { return dao.selectRecommendStand(pagenew); } - public List getStandAndItemsForAct (SarStandardsInfoEOPage page) throws Exception{ + public List getStandAndItemsForAct(SarStandardsInfoEOPage page) throws Exception { String queryList = page.getIds(); - List getQueryList = com.alibaba.fastjson.JSONObject.parseArray(queryList,StandProVO.class); + List getQueryList = com.alibaba.fastjson.JSONObject.parseArray(queryList, StandProVO.class); List standList = new ArrayList<>(); if (getQueryList != null && !getQueryList.isEmpty()) { for (StandProVO standProVO : getQueryList) { String[] idArr = standProVO.getId().split(","); - getStandDetailsForAct(page,idArr,standProVO.getStandState(),standList); + getStandDetailsForAct(page, idArr, standProVO.getStandState(), standList); } } return standList; } + @Override public void insertIntoIndexForMap(Map attrInfoMap) { @@ -1985,7 +1987,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl standList) throws Exception{ + public void getStandDetailsForAct(SarStandardsInfoEOPage page, String[] idArr, String standState, List standList) throws Exception { page.setPageSize(100); page.setIdlist(idArr); List rows = getSarStandForAct(page); @@ -1999,12 +2001,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getItems = sarStandItemsEOService.queryItemsByList(standItemsEOPage,resType); - Map map = sarProductStandEODao.queryStandSarState(sarStandardsInfoEO.getId()); - if(Integer.valueOf(map.get("SAR_ID").toString())>0){ + List getItems = sarStandItemsEOService.queryItemsByList(standItemsEOPage, resType); + Map map = sarProductStandEODao.queryStandSarState(sarStandardsInfoEO.getId()); + if (Integer.valueOf(map.get("SAR_ID").toString()) > 0) { actSarItemsEO.setSarState("1"); - if(getItems!=null && getItems.size()>0){ - for(ActSarItemsEO actSarItemsEO1:getItems){ + if (getItems != null && getItems.size() > 0) { + for (ActSarItemsEO actSarItemsEO1 : getItems) { actSarItemsEO1.setSarState("1"); } } - }else{ + } else { actSarItemsEO.setSarState("0"); - if(getItems!=null && getItems.size()>0){ - for(ActSarItemsEO actSarItemsEO1:getItems){ + if (getItems != null && getItems.size() > 0) { + for (ActSarItemsEO actSarItemsEO1 : getItems) { actSarItemsEO1.setSarState("0"); } } } actSarItemsEO.setItemsList(getItems); - if(StringUtils.isNotEmpty(page.getProductId())){ - List> sarProductStandEOS = sarProductStandEODao.queryStandSarStateNew(sarStandardsInfoEO.getId(), page.getProductId()); - if(sarProductStandEOS.size()>0){ - if(sarProductStandEOS.get(0).get("RELATE_ACCESS_ID")!=null){ + if (StringUtils.isNotEmpty(page.getProductId())) { + List> sarProductStandEOS = sarProductStandEODao.queryStandSarStateNew(sarStandardsInfoEO.getId(), page.getProductId()); + if (sarProductStandEOS.size() > 0) { + if (sarProductStandEOS.get(0).get("RELATE_ACCESS_ID") != null) { Map map1 = sarSarAccessInfoEODao.selectProTimeInfoByStandIdAndAccId(sarStandardsInfoEO.getId(), sarProductStandEOS.get(0).get("RELATE_ACCESS_ID").toString()); - if(map1!=null){ - actSarItemsEO.setNewPutText(map1.get("NEW_PUT_TEXT_TIME")!=null?map1.get("NEW_PUT_TEXT_TIME").toString().substring(0,10):""); - actSarItemsEO.setProdPutText(map1.get("PROD_PUT_TEXT_TIME")!=null?map1.get("PROD_PUT_TEXT_TIME").toString().substring(0,10):""); - actSarItemsEO.setAuthObj(map1.get("AUTH_OBJ_ID")!=null?map1.get("AUTH_OBJ_ID").toString():""); - actSarItemsEO.setAuthDelive(map1.get("AUTH_DELIVE")!=null?map1.get("AUTH_DELIVE").toString():""); - actSarItemsEO.setPerformInfo(map1.get("PERFORM_INFO")!=null?map1.get("PERFORM_INFO").toString():""); + if (map1 != null) { + actSarItemsEO.setNewPutText(map1.get("NEW_PUT_TEXT_TIME") != null ? map1.get("NEW_PUT_TEXT_TIME").toString().substring(0, 10) : ""); + actSarItemsEO.setProdPutText(map1.get("PROD_PUT_TEXT_TIME") != null ? map1.get("PROD_PUT_TEXT_TIME").toString().substring(0, 10) : ""); + actSarItemsEO.setAuthObj(map1.get("AUTH_OBJ_ID") != null ? map1.get("AUTH_OBJ_ID").toString() : ""); + actSarItemsEO.setAuthDelive(map1.get("AUTH_DELIVE") != null ? map1.get("AUTH_DELIVE").toString() : ""); + actSarItemsEO.setPerformInfo(map1.get("PERFORM_INFO") != null ? map1.get("PERFORM_INFO").toString() : ""); } } } @@ -2056,7 +2058,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getItems = sarLawsItemsEOService.queryItemsByList(lawsItemsEOPage,resType); + List getItems = sarLawsItemsEOService.queryItemsByList(lawsItemsEOPage, resType); actSarItemsEO.setItemsList(getItems); - Map map = sarProductStandEODao.queryStandSarState(sarStandardsInfoEO.getId()); - if(Integer.valueOf(map.get("SAR_ID").toString())>0){ + Map map = sarProductStandEODao.queryStandSarState(sarStandardsInfoEO.getId()); + if (Integer.valueOf(map.get("SAR_ID").toString()) > 0) { actSarItemsEO.setSarState("1"); - if(getItems!=null && getItems.size()>0){ - for(ActSarItemsEO actSarItemsEO1:getItems){ + if (getItems != null && getItems.size() > 0) { + for (ActSarItemsEO actSarItemsEO1 : getItems) { actSarItemsEO1.setSarState("1"); } } - }else{ + } else { actSarItemsEO.setSarState("0"); - if(getItems!=null && getItems.size()>0){ - for(ActSarItemsEO actSarItemsEO1:getItems){ + if (getItems != null && getItems.size() > 0) { + for (ActSarItemsEO actSarItemsEO1 : getItems) { actSarItemsEO1.setSarState("0"); } } } - if(StringUtils.isNotEmpty(page.getProductId())){ - List> sarProductStandEOS = sarProductStandEODao.queryStandSarStateNew(sarStandardsInfoEO.getId(), page.getProductId()); - if(sarProductStandEOS.size()>0){ - if(sarProductStandEOS.get(0).get("RELATE_ACCESS_ID")!=null){ + if (StringUtils.isNotEmpty(page.getProductId())) { + List> sarProductStandEOS = sarProductStandEODao.queryStandSarStateNew(sarStandardsInfoEO.getId(), page.getProductId()); + if (sarProductStandEOS.size() > 0) { + if (sarProductStandEOS.get(0).get("RELATE_ACCESS_ID") != null) { Map map1 = sarSarAccessInfoEODao.selectProTimeInfoByStandIdAndAccId(sarStandardsInfoEO.getId(), sarProductStandEOS.get(0).get("RELATE_ACCESS_ID").toString()); - if(map1!=null){ - actSarItemsEO.setNewPutText(map1.get("NEW_PUT_TEXT_TIME")!=null?map1.get("NEW_PUT_TEXT_TIME").toString().substring(0,10):""); - actSarItemsEO.setProdPutText(map1.get("PROD_PUT_TEXT_TIME")!=null?map1.get("PROD_PUT_TEXT_TIME").toString().substring(0,10):""); - actSarItemsEO.setAuthObj(map1.get("AUTH_OBJ_ID")!=null?map1.get("AUTH_OBJ_ID").toString():""); - actSarItemsEO.setAuthDelive(map1.get("AUTH_DELIVE")!=null?map1.get("AUTH_DELIVE").toString():""); - actSarItemsEO.setPerformInfo(map1.get("PERFORM_INFO")!=null?map1.get("PERFORM_INFO").toString():""); + if (map1 != null) { + actSarItemsEO.setNewPutText(map1.get("NEW_PUT_TEXT_TIME") != null ? map1.get("NEW_PUT_TEXT_TIME").toString().substring(0, 10) : ""); + actSarItemsEO.setProdPutText(map1.get("PROD_PUT_TEXT_TIME") != null ? map1.get("PROD_PUT_TEXT_TIME").toString().substring(0, 10) : ""); + actSarItemsEO.setAuthObj(map1.get("AUTH_OBJ_ID") != null ? map1.get("AUTH_OBJ_ID").toString() : ""); + actSarItemsEO.setAuthDelive(map1.get("AUTH_DELIVE") != null ? map1.get("AUTH_DELIVE").toString() : ""); + actSarItemsEO.setPerformInfo(map1.get("PERFORM_INFO") != null ? map1.get("PERFORM_INFO").toString() : ""); } } } @@ -2119,5 +2121,4 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl Date: Fri, 25 Jun 2021 15:49:30 +0800 Subject: [PATCH 30/57] =?UTF-8?q?fetch:=E4=BA=BA=E5=91=98=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/application-dev.properties | 4 +- .../controller/TsInstitutionController.java | 2 +- .../adc/da/slrs/sarMenu/entity/SarMenu.java | 4 ++ .../slrs/sarMenu/service/ISarMenuService.java | 7 ++ .../service/impl/SarMenuServiceImpl.java | 12 ++++ .../entity/SarUserPersonalMenu.java | 8 +++ .../controller/TsPositionController.java | 2 +- .../sarRole/controller/TsRoleController.java | 2 +- .../service/impl/TsRoleServiceImpl.java | 5 ++ .../entity/SarStandUnqualified.java | 72 ++++++++++--------- .../sarUser/controller/TsUserController.java | 2 +- .../adc/da/slrs/sarUser/entity/TsUser.java | 8 +++ 12 files changed, 89 insertions(+), 39 deletions(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 88425a41..afdb5624 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,9 +3,9 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://101.36.227.22:33050/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://localhost:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root -spring.datasource.password = 1q2w3e4r +spring.datasource.password = Zxy20010202 #============================================== # 应用设置 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java index a3e5731d..bd0a9c4d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -29,7 +29,7 @@ import java.util.List; */ @RestController @Api(tags = "|机构管理|") -@RequestMapping("/SarInstitution/institution") +@RequestMapping("/api/SarInstitution/institution") public class TsInstitutionController extends BaseController { @Autowired private ITsInstitutionService tsInstitutionService; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java index f2ea1c02..cc551c85 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java @@ -61,6 +61,10 @@ public class SarMenu extends BaseEntity { @TableField("DISPLAY_SEQ") private Integer displaySeq; + @ApiModelProperty(value = "路径") + @TableField("HREF") + private String href; + @ApiModelProperty(value = "是否有效") @TableField("VALID_FLAG") private Integer validFlag; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java index cfed4f02..e2251a29 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java @@ -24,4 +24,11 @@ public interface ISarMenuService extends IService { List queryRoleMenuIdList(String sordDivide, String menuId) throws Exception; List getChildMenuList(String menuId); + + /** + * 通过ids查询menus + * @param menuIds:菜单ID + * @return List + */ + List getMenusByIds(List menuIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java index 2963c6dc..334d5cfc 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java @@ -152,4 +152,16 @@ public class SarMenuServiceImpl extends ServiceImpl impleme } return menuIds; } + + /** + * 通过ids查询menus + * @param menuIds:菜单ID + * @return List + */ + @Override + public List getMenusByIds(List menuIds) { + QueryWrapper menuQueryWrapper=new QueryWrapper<>(); + menuQueryWrapper.in("id",menuIds); + return dao.selectList(menuQueryWrapper); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java index 514354c8..c8005efd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java @@ -35,4 +35,12 @@ public class SarUserPersonalMenu extends BaseEntity { private String menuUrl; + public SarUserPersonalMenu(String menuName, String menuId, String menuUrl) { + this.menuName = menuName; + this.menuId = menuId; + this.menuUrl = menuUrl; + } + + public SarUserPersonalMenu() { + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java index d9abac47..f43b10b3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java @@ -27,7 +27,7 @@ import java.util.List; */ @RestController @Api(tags = "|岗位管理|") -@RequestMapping("/sarPosition/position") +@RequestMapping("/api/sarPosition/position") public class TsPositionController extends BaseController { @Autowired private ITsPositionService tsPositionService; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index 0dbb2f61..a3c855f4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -29,7 +29,7 @@ import java.util.List; */ @RestController @Api(tags = "|角色管理|") -@RequestMapping("/sarRole/role") +@RequestMapping("/api/sarRole/role") public class TsRoleController extends BaseController { @Autowired private ITsRoleService tsRoleService; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 01abcfc2..3837f208 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarRole.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; @@ -29,6 +30,8 @@ import java.util.Map; public class TsRoleServiceImpl extends ServiceImpl implements ITsRoleService { @Autowired private TsRoleDao tsRoleDao; + @Autowired + private ISarMenuService sarMenuService; /** * 查询所有角色 @@ -161,6 +164,8 @@ public class TsRoleServiceImpl extends ServiceImpl implements for(String menuId:deleteIds){ tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } + //修改首页自定义目录 +// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); return Result.success(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java index 17781e2e..2dd65a21 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/SarStandUnqualified.java @@ -34,6 +34,41 @@ public class SarStandUnqualified extends BaseEntity { private static final long serialVersionUID = 1L; + @ExcelProperty("标准编号") + @ApiModelProperty(value = "标准ID") + @TableField("STAND_ID") + private String standId; + + @ExcelProperty("标准名称") + @ApiModelProperty(value = "标准名称") + @TableField("STAND_NAME") + private String standName; + + @ExcelProperty("条款号") + @ApiModelProperty(value = "条款号") + @TableField("ITEMS_NUM") + private String itemsNum; + + @ExcelProperty("条款名称") + @ApiModelProperty(value = "条款名称") + @TableField("ITEMS_NAME") + private String itemsName; + + @ExcelProperty("产品线") + @ApiModelProperty(value = "产品线") + @TableField("PRODUCT_LINE") + private String productLine; + + @ExcelProperty("责任部门") + @ApiModelProperty(value = "责任部门") + @TableField("RESPONSIBLE_UNIT") + private String responsibleUnit; + + @ExcelProperty("项目名称") + @ApiModelProperty(value = "项目名称") + @TableField("PRODUCT_NAME") + private String productName; + @ExcelProperty("创建部门") @ApiModelProperty(value = "创建部门") @TableField("CREATE_DEPT_ID") @@ -70,6 +105,10 @@ public class SarStandUnqualified extends BaseEntity { @TableField("PLAN_CLOSE_TIME") private Timestamp planCloseTime; + @ApiModelProperty(value = "未符合原因") + @TableField("REASON") + private String reason; + @ExcelProperty("质量工程师") @ApiModelProperty(value = "质量工程师") @TableField("QA_ENGINEER") @@ -85,46 +124,13 @@ public class SarStandUnqualified extends BaseEntity { @TableField("DUTY_ENGINEER") private String dutyEngineer; - @ExcelProperty("责任部门") - @ApiModelProperty(value = "责任部门") - @TableField("RESPONSIBLE_UNIT") - private String responsibleUnit; - @ExcelProperty("项目名称") - @ApiModelProperty(value = "项目名称") - @TableField("PRODUCT_NAME") - private String productName; - - @ExcelProperty("产品线") - @ApiModelProperty(value = "产品线") - @TableField("PRODUCT_LINE") - private String productLine; @ExcelProperty(value = "产品类型",converter = ProductTypeConverter.class) @ApiModelProperty(value = "产品类型(research为在研产品,product为在产产品)") @TableField("PRODUCT_TYPE") private String productType; - @ExcelProperty("条款名称") - @ApiModelProperty(value = "条款名称") - @TableField("ITEMS_NAME") - private String itemsName; - - @ExcelProperty("条款号") - @ApiModelProperty(value = "条款号") - @TableField("ITEMS_NUM") - private String itemsNum; - - @ExcelProperty("标准名称") - @ApiModelProperty(value = "标准名称") - @TableField("STAND_NAME") - private String standName; - - @ExcelProperty("标准编号") - @ApiModelProperty(value = "标准ID") - @TableField("STAND_ID") - private String standId; - @ExcelIgnore @ApiModelProperty(value = "主键") @TableId("ID") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index a3efd94a..465d6f38 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -25,7 +25,7 @@ import com.adc.da.base.web.BaseController; */ @RestController @Api(tags = "|人员管理|") -@RequestMapping("/sarUser/user") +@RequestMapping("/api/sarUser/user") public class TsUserController extends BaseController { @Autowired private ITsUserService tsUserService; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java index eaa78cf3..6fc4ce3b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java @@ -61,6 +61,14 @@ public class TsUser extends BaseEntity { @TableField("USER_SOURCE") private String userSource; + @ApiModelProperty(value = "用户手机号") + @TableField("PHONE") + private String phone; + + @ApiModelProperty(value = "用户状态") + @TableField("STATE") + private String state; + @ApiModelProperty(value = "用户邮箱") @TableField("EMAIL") private String email; From 346866e0ba1e28f4f492a4a6f5321c5bec06fcd9 Mon Sep 17 00:00:00 2001 From: zzy <2041873787@qq.com> Date: Sun, 27 Jun 2021 16:02:59 +0800 Subject: [PATCH 31/57] =?UTF-8?q?add:=E6=A0=87=E5=87=86=E6=B3=95=E8=A7=84?= =?UTF-8?q?=E6=B8=85=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarDetailedIdAttFileController.java | 23 +++ .../SarLawsAttrDetailedListController.java | 145 ++++++++++++++++ .../dao/SarDetailedIdAttFileDao.java | 18 ++ .../dao/SarLawsAttrDetailedListDao.java | 29 ++++ .../entity/LawsDto.java | 38 +++++ .../entity/LittleLawsDto.java | 26 +++ .../entity/SarDetailedIdAttFile.java | 38 +++++ .../entity/SarLawsAttrDetailedList.java | 43 +++++ .../entity/StandExcelDto.java | 45 +++++ .../entity/StandExcelVo.java | 25 +++ .../service/ISarDetailedIdAttFileService.java | 16 ++ .../ISarLawsAttrDetailedListService.java | 25 +++ .../impl/SarDetailedIdAttFileServiceImpl.java | 20 +++ .../SarLawsAttrDetailedListServiceImpl.java | 104 ++++++++++++ .../SarLawsDetailedListController.java | 119 +++++++++++++ .../dao/SarLawsDetailedListDao.java | 18 ++ .../entity/AddDetailedDto.java | 48 ++++++ .../entity/DetailedUpDto.java | 62 +++++++ .../sarLawsDetailedList/entity/IdListDto.java | 18 ++ .../entity/SarLawsDetailedList.java | 81 +++++++++ .../service/ISarLawsDetailedListService.java | 29 ++++ .../impl/SarLawsDetailedListServiceImpl.java | 157 ++++++++++++++++++ .../service/ISarPublicIdeaAllService.java | 2 +- .../Impl/SarPublicIdeaAllServiceImpl.java | 11 +- .../Impl/SarPublicIdeaServiceImpl.java | 6 +- .../SarDetailedIdAttFileMapper.xml | 5 + .../SarLawsAttrDetailedListMapper.xml | 61 +++++++ .../SarLawsDetailedListMapper.xml | 5 + 28 files changed, 1207 insertions(+), 10 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarDetailedIdAttFileController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarLawsAttrDetailedListController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarDetailedIdAttFileDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LawsDto.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LittleLawsDto.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarDetailedIdAttFile.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarLawsAttrDetailedList.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelDto.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelVo.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarDetailedIdAttFileService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarLawsAttrDetailedListService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarDetailedIdAttFileServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarLawsAttrDetailedListServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/controller/SarLawsDetailedListController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/dao/SarLawsDetailedListDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/AddDetailedDto.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/DetailedUpDto.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/IdListDto.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/SarLawsDetailedList.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/ISarLawsDetailedListService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/impl/SarLawsDetailedListServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarDetailedIdAttFileMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarLawsAttrDetailedListMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsDetailedList/SarLawsDetailedListMapper.xml diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarDetailedIdAttFileController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarDetailedIdAttFileController.java new file mode 100644 index 00000000..c209bb79 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarDetailedIdAttFileController.java @@ -0,0 +1,23 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarDetailedIdAttFile; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +/** +*

    + * 前端控制器 + *

    +* +* @author zzy +* @since 2021-06-24 +*/ +@RestController +@Api(description = "|SarDetailedIdAttFile|") +@RequestMapping("/api/sarLawsAttrDetailedList/sar-detailed-id-att-file") +public class SarDetailedIdAttFileController extends BaseController { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarLawsAttrDetailedListController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarLawsAttrDetailedListController.java new file mode 100644 index 00000000..0fdb4d3f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/controller/SarLawsAttrDetailedListController.java @@ -0,0 +1,145 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.controller; + + +import com.adc.da.att.entity.AttFileEO; +import com.adc.da.att.service.IAttFileEOService; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarLawsAttrDetailedListDao; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.*; +import com.adc.da.slrs.sarLawsAttrDetailedList.service.ISarLawsAttrDetailedListService; +import com.alibaba.excel.EasyExcel; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.List; + +/** +*

    + * 前端控制器 + *

    +* +* @author zzy +* @since 2021-06-15 +*/ +@RestController +//@Api(description = "|SarLawsAttrDetailedList|") +@Api(tags = "标准法规清单详情") +@RequestMapping("/api/sarLawsAttrDetailedList/sar-laws-attr-detailed-list") +public class SarLawsAttrDetailedListController extends BaseController { + + @Autowired + private ISarLawsAttrDetailedListService iSarLawsAttrDetailedList; + @Autowired + private IAttFileEOService attFileEOService; + @Autowired + private SarLawsAttrDetailedListDao sarLawsAttrDetailedListDao; + + + + /** + * @param Page 页数 + * @param Size 大小 + * @param id 清单id + * @return ResponseMessage + * @author zzy + * date 2021-06-17 + **/ + @ApiOperation(value = "查询标准信息") + @GetMapping("/selectLawsById") + public ResponseMessage selectLawsById(@RequestParam(defaultValue = "1")int Page, @RequestParam(defaultValue = "10") int Size, String id,String standName,String responseUnit){ + List laws = iSarLawsAttrDetailedList.selectLaws(id,Page-1,Size,standName); + return Result.success("200",laws); + } + + @ApiOperation(value = "查询附件信息") + @GetMapping("/selectFile") + public ResponseMessage selectFile(String Id){ + AttFileEO attFileEO = attFileEOService.getFileInfo(Id); + return Result.success("200",attFileEO); + } + + /** + * @param Page 页数 + * @param Size 大小 + * @param id 清单id + * @return ResponseMessage + * @author zzy + * date 2021-06-17 + * 标准主表中的数据不全,先预留接口 + **/ + @ApiOperation(value = "检索和高级检索") + @PostMapping("/selectByStandId") + public ResponseMessage selectByStandId(@RequestParam(defaultValue = "1")int Page, @RequestParam(defaultValue = "10") int Size, String id){ + return null; + } + + + /** + * + * @param response 返回头 + * @param standExcelVo standExcelVo类 + * @return void + * @author 作者信息 + * date 2021-06-24 + **/ + @ApiOperation(value = "导出标准信息") + @RequestMapping("/ExportLawsById") + public void ExportLawsById(HttpServletResponse response, StandExcelVo standExcelVo){ + try { + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + if(standExcelVo.getExportName()==null){ + standExcelVo.setExportName("标准导出信息"); + } + String fileName = URLEncoder.encode(standExcelVo.getExportName(), "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + List data = new ArrayList<>(); + if (CollectionUtils.isEmpty(standExcelVo.getIds())){ + List list= sarLawsAttrDetailedListDao.selectLawsId2(standExcelVo.getId()); + if (CollectionUtils.isEmpty(list)) return; + data=sarLawsAttrDetailedListDao.selectLawsById(list,null); + }else { + data=sarLawsAttrDetailedListDao.selectLawsById(standExcelVo.getIds(),null); + } + List standExcel=new ArrayList<>(); + for (LittleLawsDto littleLawsDto:data){ + StandExcelDto standExcelDto=StandExcelDto.builder() + .standNumber(littleLawsDto.getStandNumber()) + .standName(littleLawsDto.getStandName()) + .standEnName(littleLawsDto.getStandEnName()) + .responseUnit("责任部门") + .newCarTime("无字段") + .nowCarTime("无字段") + .typeApplicable("无字段") + .issueTime(littleLawsDto.getIssueTime()) + .textStatus(littleLawsDto.getTextStatus()) + .build(); + standExcel.add(standExcelDto); + } + EasyExcel.write(response.getOutputStream(), StandExcelDto.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") + .doWrite(standExcel); + } catch (Exception e) { + response.reset(); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + try { + response.getWriter().println(JSON.toJSONString(Result.error())); + } catch (IOException ioException) { + ioException.printStackTrace(); + } + } + + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarDetailedIdAttFileDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarDetailedIdAttFileDao.java new file mode 100644 index 00000000..9cd83d3d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarDetailedIdAttFileDao.java @@ -0,0 +1,18 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.dao; + +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarDetailedIdAttFile; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zzy + * @since 2021-06-24 + */ +@Mapper +public interface SarDetailedIdAttFileDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java new file mode 100644 index 00000000..573d6904 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/dao/SarLawsAttrDetailedListDao.java @@ -0,0 +1,29 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.dao; + +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarLawsAttrDetailedList; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.LittleLawsDto; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.StandExcelDto; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zzy + * @since 2021-06-15 + */ +@Mapper +public interface SarLawsAttrDetailedListDao extends BaseMapper { + + //根据清单id,查出标准的id并排序 + List selectLawsId(String standId,Integer page,Integer size); + //根据标准id查出数据 + List selectLawsById(List LawsIds,String standName); + List selectLawsId2(String standId); + Boolean insertList(List sarLawsAttrDetailedLists); + Boolean deleteByStandId(String standId); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LawsDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LawsDto.java new file mode 100644 index 00000000..550a9cc0 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LawsDto.java @@ -0,0 +1,38 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.entity; + + +import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; + +/** + * //Dto,用于从标准主表中查询和检索信息 + * 主表还未完善需修改 + * + * @author ZhangZhiYuan + * date 2021-06-16 + */ +@Builder +@Data +public class LawsDto { + @ApiModelProperty(value = "主键") + private String id; + @ApiModelProperty(value = "标准编号") + private String standNumber; + @ApiModelProperty(value = "中文名称") + private String standName; + @ApiModelProperty(value = "英文名称") + private String standEnName; + @ApiModelProperty(value = "责任部门") + private String responseUnit; + @ApiModelProperty(value = "新车型实施日期") + private String newCarTime; + @ApiModelProperty(value = "在产车实施日期") + private String nowCarTime; + @ApiModelProperty(value = "适用车辆类型") + private String typeApplicable; + @ApiModelProperty(value = "发布日期") + private String issueTime; + @ApiModelProperty(value = "文本状态") + private String textStatus; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LittleLawsDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LittleLawsDto.java new file mode 100644 index 00000000..75a2b2d7 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/LittleLawsDto.java @@ -0,0 +1,26 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.entity; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * //TODO 添加类、接口描述 + * 能从主表中查出的LawsDto所需要的数据 + * @author ZhangZhiYuan + * date 2021-06-22 + */ +@Data +public class LittleLawsDto { + @ApiModelProperty(value = "主键") + private String id; + @ApiModelProperty(value = "标准编号") + private String standNumber; + @ApiModelProperty(value = "中文名称") + private String standName; + @ApiModelProperty(value = "英文名称") + private String standEnName; + @ApiModelProperty(value = "发布日期") + private String issueTime; + @ApiModelProperty(value = "文本状态") + private String textStatus; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarDetailedIdAttFile.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarDetailedIdAttFile.java new file mode 100644 index 00000000..2705de77 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarDetailedIdAttFile.java @@ -0,0 +1,38 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

    + * + *

    + * 上传的附件和清单id的关联表 + * @author zzy + * @since 2021-06-24 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarDetailedIdAttFile对象", description="") +public class SarDetailedIdAttFile extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId + private String id; + + @ApiModelProperty(value = "清单id") + private String detailedId; + + @ApiModelProperty(value = "文件id") + private String fileId; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarLawsAttrDetailedList.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarLawsAttrDetailedList.java new file mode 100644 index 00000000..056d166f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/SarLawsAttrDetailedList.java @@ -0,0 +1,43 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

    + * + *

    + * + * @author zzy + * @since 2021-06-15 + */ +@Data +@Builder +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarLawsAttrDetailedList对象", description="") +public class SarLawsAttrDetailedList extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId + private String id; + + @ApiModelProperty(value = "标准政策表的id") + private String standId; + + @ApiModelProperty(value = "标准清单主键") + private String detailedListId; + + @ApiModelProperty(value = "顺序") + private String number; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelDto.java new file mode 100644 index 00000000..5bf06dd4 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelDto.java @@ -0,0 +1,45 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.entity; + +import com.alibaba.excel.annotation.ExcelProperty; +import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; + +/** + * //TODO 添加类、接口描述 + *用于导出标准数据信息 + * 需要后期修改 + * @author ZhangZhiYuan + * @date 2021-06-24 + */ +@Data +@Builder +public class StandExcelDto { + @ExcelProperty("标准编号") + @ApiModelProperty(value = "标准编号") + private String standNumber; + @ExcelProperty("中文名称") + @ApiModelProperty(value = "中文名称") + private String standName; + @ExcelProperty("英文名称") + @ApiModelProperty(value = "英文名称") + private String standEnName; + @ExcelProperty("责任部门") + @ApiModelProperty(value = "责任部门") + private String responseUnit; + @ExcelProperty("新车型实施日期") + @ApiModelProperty(value = "新车型实施日期") + private String newCarTime; + @ExcelProperty("在产车实施日期") + @ApiModelProperty(value = "在产车实施日期") + private String nowCarTime; + @ExcelProperty("适用车辆类型") + @ApiModelProperty(value = "适用车辆类型") + private String typeApplicable; + @ExcelProperty("发布日期") + @ApiModelProperty(value = "发布日期") + private String issueTime; + @ExcelProperty("文本状态") + @ApiModelProperty(value = "文本状态") + private String textStatus; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelVo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelVo.java new file mode 100644 index 00000000..1aba0157 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/entity/StandExcelVo.java @@ -0,0 +1,25 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.entity; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * //TODO 添加类、接口描述 + * + * @author ZhangZhiYuan + * @date 2021-06-24 + */ + +@Data +@ApiModel(description = "标准导出类") +public class StandExcelVo { + @ApiModelProperty("文件名") + String exportName; + @ApiModelProperty("标准ID列表") + List ids; + @ApiModelProperty("ID") + String id; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarDetailedIdAttFileService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarDetailedIdAttFileService.java new file mode 100644 index 00000000..a717eee5 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarDetailedIdAttFileService.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.service; + +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarDetailedIdAttFile; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

    + * 服务类 + *

    + * + * @author zzy + * @since 2021-06-24 + */ +public interface ISarDetailedIdAttFileService extends IService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarLawsAttrDetailedListService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarLawsAttrDetailedListService.java new file mode 100644 index 00000000..4edd0d76 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/ISarLawsAttrDetailedListService.java @@ -0,0 +1,25 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.service; + +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarLawsAttrDetailedList; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.LawsDto; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.StandExcelVo; +import com.baomidou.mybatisplus.extension.service.IService; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + *

    + * 服务类 + *

    + * + * @author zzy + * @since 2021-06-15 + */ +public interface ISarLawsAttrDetailedListService extends IService { + + List selectLaws(String standId, Integer Page, Integer Size,String standName); + Boolean insertDetailedList(String id,String[] lawsIds); + Boolean updateDetailedLaws(String id,String[] lawsIds); + void exportExcel(HttpServletResponse response, StandExcelVo standExcelVo); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarDetailedIdAttFileServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarDetailedIdAttFileServiceImpl.java new file mode 100644 index 00000000..4f95994d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarDetailedIdAttFileServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.service.impl; + +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarDetailedIdAttFile; +import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarDetailedIdAttFileDao; +import com.adc.da.slrs.sarLawsAttrDetailedList.service.ISarDetailedIdAttFileService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

    + * 服务实现类 + *

    + * + * @author zzy + * @since 2021-06-24 + */ +@Service +public class SarDetailedIdAttFileServiceImpl extends ServiceImpl implements ISarDetailedIdAttFileService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarLawsAttrDetailedListServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarLawsAttrDetailedListServiceImpl.java new file mode 100644 index 00000000..a6534f01 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsAttrDetailedList/service/impl/SarLawsAttrDetailedListServiceImpl.java @@ -0,0 +1,104 @@ +package com.adc.da.slrs.sarLawsAttrDetailedList.service.impl; + +import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarLawsAttrDetailedListDao; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.LawsDto; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.LittleLawsDto; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarLawsAttrDetailedList; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.StandExcelVo; +import com.adc.da.slrs.sarLawsAttrDetailedList.service.ISarLawsAttrDetailedListService; +import com.adc.da.util.UUIDUtils; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; + +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.List; + +/** + *

    + * 服务实现类 + *

    + * + * @author zzy + * @since 2021-06-15 + */ +@Service +public class SarLawsAttrDetailedListServiceImpl extends ServiceImpl implements ISarLawsAttrDetailedListService { + + @Autowired + SarLawsAttrDetailedListDao sarLawsAttrDetailedListDao; + //从主表中查询信息 + @Override + public List selectLaws(String standId, Integer Page, Integer Size,String standName) { + List lawsIds = sarLawsAttrDetailedListDao.selectLawsId(standId,Page,Size); + if (CollectionUtils.isEmpty(lawsIds)){ + return null; + } + List lawsDtoList = sarLawsAttrDetailedListDao.selectLawsById(lawsIds,standName); + List list = new ArrayList<>(); + for (LittleLawsDto laws:lawsDtoList){ + LawsDto lawsDto = LawsDto.builder() + .id(laws.getId()) + .standNumber(laws.getStandNumber()) + .standName(laws.getStandName()) + .standEnName(laws.getStandEnName()) + .issueTime(laws.getIssueTime()) + .textStatus(laws.getTextStatus()) + .build(); + list.add(lawsDto); + + } + return list; + } + + //向清单表和主表中的关联表插入信息 + @Override + public Boolean insertDetailedList(String standId, String[] lawsIds) { + if (!StringUtils.isEmpty(lawsIds)){ + try { + List attrDetailedLists = new ArrayList<>(); + int a=0; + for (String lawsId:lawsIds){ + SarLawsAttrDetailedList sarLawsAttrDetailedList = SarLawsAttrDetailedList.builder() + .id(UUIDUtils.randomUUID20()) + .standId(lawsId) + .detailedListId(standId) + .number(String.valueOf(a)) + .build(); + attrDetailedLists.add(sarLawsAttrDetailedList); + a++; + } + sarLawsAttrDetailedListDao.insertList(attrDetailedLists); + return true; + } catch (Exception e) { + e.printStackTrace(); + } + } + return false; + } + + //修改关联表中的信息,先删除后修改 + @Override + public Boolean updateDetailedLaws(String id, String[] lawsIds) { + try { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("detailed_list_id",id); + sarLawsAttrDetailedListDao.delete(wrapper); + insertDetailedList(id,lawsIds); + return true; + } catch (Exception e) { + return false; + } + } + + @Override + public void exportExcel(HttpServletResponse response, StandExcelVo standExcelVo){ + + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/controller/SarLawsDetailedListController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/controller/SarLawsDetailedListController.java new file mode 100644 index 00000000..94ac74de --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/controller/SarLawsDetailedListController.java @@ -0,0 +1,119 @@ +package com.adc.da.slrs.sarLawsDetailedList.controller; + + +import com.adc.da.base.web.BaseController; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarLawsDetailedList.entity.AddDetailedDto; +import com.adc.da.slrs.sarLawsDetailedList.entity.SarLawsDetailedList; +import com.adc.da.slrs.sarLawsDetailedList.entity.DetailedUpDto; +import com.adc.da.slrs.sarLawsDetailedList.service.impl.SarLawsDetailedListServiceImpl; +import com.baomidou.mybatisplus.core.metadata.IPage; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** +*

    + * 前端控制器 + *

    +* +* @author szc +* @since 2021-06-15 +*/ +@RestController +//@Api(description = "|SarLawsDetailedList|") +@Api(tags = "标准法规清单") +@RequestMapping("/api/sarLawsDetailedList/sar-laws-detailed-list") +public class SarLawsDetailedListController extends BaseController { + + @Autowired + private SarLawsDetailedListServiceImpl sarLawsDetailedListService; + + /** + * @param idList 要进行删除的清单id + * @return ResponseMessage + * @author zzy + * date 2021-06-22 + **/ + @ApiOperation(value = "批量删除清单") + @PostMapping("/deleteListAll") + public ResponseMessage deleteListAll(String[] idList) { + if (idList == null || idList.length == 0) { + return Result.success("200", "要删除的数据为空"); + } else { + List list = new ArrayList<>(Arrays.asList(idList)); + String src = sarLawsDetailedListService.del(list); + return Result.success("200", src); + } + } + + /** + * @param addDetailedDto AddDetailed类 + * @return ResponseMessage + * @author zzy + * date 2021-06-22 + **/ + @ApiOperation(value = "增加清单") + @PostMapping("/insertList") + public ResponseMessage insertList(AddDetailedDto addDetailedDto) { + String src = sarLawsDetailedListService.add(addDetailedDto); + return Result.success(src); + } + + /** + * 动态查询 + * @param page 页数 + * @param pageSize 大小 + * @param sortKey 进行三个页面的分类1,2,3 + * @param countryArea 动态查询输入 国家清单 + * @param detailedList 列表 + * @param projectName 其他 + * @param detailedListName 动态查询输入 + * @return ResponseMessage + */ + @ApiOperation(value = "动态查询") + @GetMapping("/getAllStand") + public ResponseMessage getAllStand(Integer page,Integer pageSize, String sortKey, + String countryArea, String projectName, + String detailedList, + String detailedListName) { + + if ("null".equals(countryArea))countryArea=null; + if ("null".equals(projectName))projectName=null; + if ("null".equals(detailedList))detailedList=null; + if ("null".equals(detailedListName))detailedListName=null; + if (StringUtils.isNotEmpty(sortKey)) { + IPage publicList = sarLawsDetailedListService.AllSelectD(page, pageSize, sortKey, + countryArea, projectName, detailedList, detailedListName); + return Result.success("200", publicList); + } else { + return Result.success("200", null); + } + + } + + + /** + * @param detailedUpDto 修改的信息,通过类进行接收 + * @return ResponseMessage + * @author 张志远 + * date 2021-06-22 + **/ + @ApiOperation(value = "修改清单") + @PutMapping("/updateList") + public ResponseMessage updateList(@RequestBody DetailedUpDto detailedUpDto) { + + String src = sarLawsDetailedListService.updateList(detailedUpDto); + return Result.success("200",src,true); + } + + +} \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/dao/SarLawsDetailedListDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/dao/SarLawsDetailedListDao.java new file mode 100644 index 00000000..88dbccd9 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/dao/SarLawsDetailedListDao.java @@ -0,0 +1,18 @@ +package com.adc.da.slrs.sarLawsDetailedList.dao; + +import com.adc.da.slrs.sarLawsDetailedList.entity.SarLawsDetailedList; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + *

    + * Mapper 接口 + *

    + * + * @author szc + * @since 2021-06-15 + */ +@Mapper +public interface SarLawsDetailedListDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/AddDetailedDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/AddDetailedDto.java new file mode 100644 index 00000000..16549400 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/AddDetailedDto.java @@ -0,0 +1,48 @@ +package com.adc.da.slrs.sarLawsDetailedList.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.web.multipart.MultipartFile; + +import java.util.Collection; + +/** + * //TODO 添加类、接口描述 + * + * @author ZhangZhiYuan + * @date 2021-06-24 + */ +@Data +public class AddDetailedDto { + + @ApiModelProperty(value = "国家或地区") + private String countryArea; + @ApiModelProperty(value = "项目名称") + private String projectName; + @ApiModelProperty(value = "清单类别") + private String detailedList; + @ApiModelProperty(value = "区分,国家地区为1,项目名称为2,清单类别为3") + private String sortKey; + @ApiModelProperty(value = "清单名称") + private String detailedListName; + + @ApiModelProperty(value = "清单详情") + private String remark; + + @ApiModelProperty(value = "清单状态,1为未发布,2为发布") + private String detailedListState; + @ApiModelProperty(value = "适用领域") + private String applicationScope; + @ApiModelProperty(value = "更新人") + private String updatePeople; + @ApiModelProperty(value = "上传的附件") + private MultipartFile[] files; + @ApiModelProperty(value = "要添加的清单id") + private String[] lawsIds; + + + public MultipartFile getFiles(int i) { + return files[i]; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/DetailedUpDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/DetailedUpDto.java new file mode 100644 index 00000000..1888677e --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/DetailedUpDto.java @@ -0,0 +1,62 @@ +package com.adc.da.slrs.sarLawsDetailedList.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * //TODO 添加类、接口描述 + * + * @author ZhangZhiYuan + * @date 2021-06-25 + */ +@Data +public class DetailedUpDto { + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty(value = "国家或地区") + private String countryArea; + + @ApiModelProperty(value = "项目名称") + private String projectName; + + @ApiModelProperty(value = "清单类别") + private String detailedList; + + @ApiModelProperty(value = "区分,国家地区为1,项目名称为2,清单类别为3") + private String sortKey; + + @ApiModelProperty(value = "清单名称") + private String detailedListName; + + @ApiModelProperty(value = "清单状态,1为未发布,2为发布") + private String detailedListState; + + @ApiModelProperty(value = "清单版本,默认V0") + private String detailedListVision; + + @ApiModelProperty(value = "适用领域") + private String applicationScope; + +// @ApiModelProperty(value = "附件id") +// private String fileId; + + + @ApiModelProperty(value = "更新时间") + private Date reNewTime; + + @ApiModelProperty(value = "更新人") + private String reNewPeople; + + @ApiModelProperty(value = "要添加的清单id") + private String[] lawsIds; + + @ApiModelProperty(value = "清单详情") + private String remark; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/IdListDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/IdListDto.java new file mode 100644 index 00000000..fed752b7 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/IdListDto.java @@ -0,0 +1,18 @@ +package com.adc.da.slrs.sarLawsDetailedList.entity; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * //TODO 添加类、接口描述 + * + * @author ZhangZhiYuan + * @date 2021-06-22 + */ +@Data +public class IdListDto { + @ApiModelProperty("未符合项ID列表") + private List Ids; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/SarLawsDetailedList.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/SarLawsDetailedList.java new file mode 100644 index 00000000..63ad6523 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/entity/SarLawsDetailedList.java @@ -0,0 +1,81 @@ +package com.adc.da.slrs.sarLawsDetailedList.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.*; +import lombok.experimental.Accessors; + +/** + *

    + * + *

    + * + * @author szc + * @since 2021-06-15 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="SarLawsDetailedList对象", description="") +public class SarLawsDetailedList extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId("id") + private String id; + + @ApiModelProperty(value = "国家或地区") + @TableField("country_area") + private String countryArea; + + @ApiModelProperty(value = "项目名称") + @TableField("project_name") + private String projectName; + + @ApiModelProperty(value = "清单类别") + @TableField("detailed_list") + private String detailedList; + + @ApiModelProperty(value = "区分,国家地区为1,项目名称为2,清单类别为3") + @TableField("sort_key") + private String sortKey; + + @ApiModelProperty(value = "清单名称") + @TableField("detailed_list_name") + private String detailedListName; + + @ApiModelProperty(value = "清单状态,1为未发布,2为发布") + @TableField("detailed_list_state") + private String detailedListState; + + @ApiModelProperty(value = "清单版本,默认V0") + @TableField("detailed_list_vesion") + private String detailedListVision; + + @ApiModelProperty(value = "适用领域") + @TableField("application_scope") + private String applicationScope; + + @ApiModelProperty(value = "清单列表") + @TableField("remark") + private String remark; + + @ApiModelProperty(value = "更新时间") + @TableField("update_time") + private Date updateTime; + + @ApiModelProperty(value = "更新人") + @TableField("update_people") + private String updatePeople; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/ISarLawsDetailedListService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/ISarLawsDetailedListService.java new file mode 100644 index 00000000..98b065d9 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/ISarLawsDetailedListService.java @@ -0,0 +1,29 @@ +package com.adc.da.slrs.sarLawsDetailedList.service; + +import com.adc.da.slrs.sarLawsDetailedList.entity.AddDetailedDto; +import com.adc.da.slrs.sarLawsDetailedList.entity.SarLawsDetailedList; +import com.adc.da.slrs.sarLawsDetailedList.entity.DetailedUpDto; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + + +/** + *

    + * 服务类 + *

    + * + * @author szc + * @since 2021-06-15 + */ +public interface ISarLawsDetailedListService extends IService { + String del(List idList); + String add(AddDetailedDto addDetailedDto); + IPage AllSelectD(Integer pages, Integer size, String sortKey, + String countryArea,String projectName, + String detailedList, String detailedListName); +// IPage selectAllP(Integer pages,Integer size,String sortKey); + + String updateList(DetailedUpDto detailedUpDto); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/impl/SarLawsDetailedListServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/impl/SarLawsDetailedListServiceImpl.java new file mode 100644 index 00000000..b4793979 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsDetailedList/service/impl/SarLawsDetailedListServiceImpl.java @@ -0,0 +1,157 @@ +package com.adc.da.slrs.sarLawsDetailedList.service.impl; + +import com.adc.da.att.service.IAttFileEOService; +import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarDetailedIdAttFileDao; +import com.adc.da.slrs.sarLawsAttrDetailedList.dao.SarLawsAttrDetailedListDao; +import com.adc.da.slrs.sarLawsAttrDetailedList.entity.SarLawsAttrDetailedList; +import com.adc.da.slrs.sarLawsAttrDetailedList.service.impl.SarLawsAttrDetailedListServiceImpl; +import com.adc.da.slrs.sarLawsDetailedList.dao.SarLawsDetailedListDao; +import com.adc.da.slrs.sarLawsDetailedList.entity.AddDetailedDto; +import com.adc.da.slrs.sarLawsDetailedList.entity.SarLawsDetailedList; +import com.adc.da.slrs.sarLawsDetailedList.entity.DetailedUpDto; +import com.adc.da.slrs.sarLawsDetailedList.service.ISarLawsDetailedListService; +import com.adc.da.util.UUIDUtils; +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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import io.swagger.annotations.ApiModelProperty; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; + +/** + *

    + * 服务实现类 + *

    + * + * @author szc + * @since 2021-06-15 + */ +@Service +public class SarLawsDetailedListServiceImpl extends ServiceImpl implements ISarLawsDetailedListService { + + @Autowired + public SarLawsDetailedListDao sarLawsDetailedListDao; + @Autowired + public IAttFileEOService iAttFileEOService; + @Autowired + private SarLawsAttrDetailedListDao sarLawsAttrDetailedListDao; + @Autowired + private SarLawsAttrDetailedListServiceImpl service; + + @Override + public String del(List idList) { + QueryWrapper wrapper = new QueryWrapper<>(); + for (String id:idList){ + wrapper.eq("detailed_list_id",id); + sarLawsAttrDetailedListDao.delete(wrapper); + } + sarLawsDetailedListDao.deleteBatchIds(idList); + return "删除成功"; + } + + @Override + public String add(AddDetailedDto addDetailedDto) { + try { + SarLawsDetailedList sarLawsDetailedList = SarLawsDetailedList.builder() + .id(UUIDUtils.randomUUID20()) + .sortKey(addDetailedDto.getSortKey()) + .detailedListName(addDetailedDto.getDetailedListName()) + .detailedListState("1") + .detailedListVision("v0") + .applicationScope(addDetailedDto.getApplicationScope()) + .updateTime(new Date()) + .updatePeople(addDetailedDto.getUpdatePeople()) + .remark(addDetailedDto.getRemark()) + .build(); + switch (addDetailedDto.getSortKey()) { + case "1": + sarLawsDetailedList.setCountryArea(addDetailedDto.getCountryArea()); + break; + case "2": + sarLawsDetailedList.setProjectName(addDetailedDto.getProjectName()); + break; + case "3": + sarLawsDetailedList.setDetailedList(addDetailedDto.getDetailedList()); + break; + default: + break; + } + sarLawsDetailedListDao.insert(sarLawsDetailedList); + service.insertDetailedList(sarLawsDetailedList.getId(),addDetailedDto.getLawsIds()); + + } catch (Exception e) { + e.printStackTrace(); + } + return "添加成功"; + } + + + @Override + public IPage AllSelectD(Integer pages, Integer size, String sortKey, + String countryArea,String projectName, + String detailedList,String detailedListName) { + QueryWrapper wrapper = new QueryWrapper<>(); + if ("1".equals(sortKey) ) { + wrapper.like(StringUtils.isNotEmpty(countryArea),"country_area",countryArea). + like(StringUtils.isNotEmpty(detailedListName),"detailed_list_name",detailedListName); + }else if ("2".equals(sortKey)) { + wrapper.like(StringUtils.isNotEmpty(projectName),"project_name",projectName). + like(StringUtils.isNotEmpty(detailedListName),"detailed_list_name",detailedListName); + + }else if ("3".equals(sortKey)){ + wrapper.like(StringUtils.isNotEmpty(detailedList),"detailed_list_state",detailedList). + like(StringUtils.isNotEmpty(detailedListName),"detailed_list_name",detailedListName); + } + wrapper.eq("sort_key",sortKey); + Page page = new Page<>(pages, size); + IPage userIPage = sarLawsDetailedListDao.selectPage(page, wrapper); + System.out.println("总条数" + userIPage.getTotal()); + System.out.println("总页数" + userIPage.getPages()); + return userIPage; + } + + @Override + public String updateList(DetailedUpDto detailedUpDto) { + SarLawsDetailedList list = sarLawsDetailedListDao.selectById(detailedUpDto.getId()); + //国家或地区 + if (StringUtils.isBlank(detailedUpDto.getCountryArea())) list.setCountryArea(null); + else if ("null".equals(detailedUpDto.getCountryArea())); + else list.setCountryArea(detailedUpDto.getCountryArea()); + //项目名称 + if (StringUtils.isBlank(detailedUpDto.getProjectName())) list.setProjectName(null); + else if ("null".equals(detailedUpDto.getProjectName())); + else list.setProjectName(detailedUpDto.getProjectName()); + //清单类别 + if (StringUtils.isBlank(detailedUpDto.getDetailedList())) list.setDetailedList(null); + else if ("null".equals(detailedUpDto.getDetailedList())); + else list.setDetailedList(detailedUpDto.getDetailedList()); + //清单名称 + if (StringUtils.isBlank(detailedUpDto.getDetailedListName())) list.setDetailedListName(null); + else if ("null".equals(detailedUpDto.getDetailedListName())); + else list.setDetailedListName(detailedUpDto.getDetailedListName()); + //适用领域 + if (StringUtils.isBlank(detailedUpDto.getApplicationScope())) list.setApplicationScope(null); + else if ("null".equals(detailedUpDto.getApplicationScope())); + else list.setApplicationScope(detailedUpDto.getApplicationScope()); + //清单详情 + if (StringUtils.isBlank(detailedUpDto.getRemark())) list.setRemark(null); + else if ("null".equals(detailedUpDto.getRemark())); + list.setRemark(detailedUpDto.getRemark()); + //更新时间 + list.setUpdateTime(new Date()); + //更新人 + if (StringUtils.isBlank(detailedUpDto.getReNewPeople())) list.setUpdatePeople(null); + else if ("null".equals(detailedUpDto.getReNewPeople())); + else list.setUpdatePeople(detailedUpDto.getReNewPeople()); + + sarLawsDetailedListDao.updateById(list); + service.updateDetailedLaws(detailedUpDto.getId(), detailedUpDto.getLawsIds()); + return "修改成功"; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java index c4120b68..87d08d5a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/ISarPublicIdeaAllService.java @@ -22,7 +22,7 @@ public interface ISarPublicIdeaAllService extends IService { IPage selectAll(DetAllStandDto detAllStandDto); String add(SarPublicIdeaAll sarPublicIdeaAll); - String updateById(SarPublicIdeaAll sarPublicIdeaAll, String autUseerid); + String updateById(SarPublicIdeaAll sarPublicIdeaAll, String autUserid); String delete(DelStandDto delStandDto); String del(String id); String stuListExcel(HttpServletResponse response,String cid); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java index 8aae0a76..3b37c14e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandIdea/service/Impl/SarPublicIdeaAllServiceImpl.java @@ -63,8 +63,8 @@ public class SarPublicIdeaAllServiceImpl extends ServiceImpl selectAllP(Integer p, Integer size, String categorg, String cname, Date start, Date end) { + public IPage selectAllP(Integer p, Integer size, String category, String cname, Date start, Date end) { QueryWrapper list = new QueryWrapper<>(); - list.eq(StringUtils.isNotEmpty(categorg),"category",categorg) + list.like(StringUtils.isNotEmpty(category),"category",category) .like(StringUtils.isNotEmpty(cname),"cname",cname) - .gt(start!=null,"start_time",start). + .ge(start!=null,"start_time",start). le(end!=null,"end_time",end); Page page = new Page<>(p,size); diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarDetailedIdAttFileMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarDetailedIdAttFileMapper.xml new file mode 100644 index 00000000..164b4a78 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarDetailedIdAttFileMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarLawsAttrDetailedListMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarLawsAttrDetailedListMapper.xml new file mode 100644 index 00000000..b9d08ce8 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsAttrDetailedList/SarLawsAttrDetailedListMapper.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + INSERT INTO sar_laws_attr_detailed_list ( id, number, detailed_list_id, stand_id ) VALUES + + (#{list.id,jdbcType=VARCHAR}, #{list.number}, #{list.detailedListId,jdbcType=VARCHAR}, #{list.standId,jdbcType=VARCHAR}) + + + + delete from sar_laws_attr_detailed_list where detailed_list_id=#{standId,jdbcType=VARCHAR} + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsDetailedList/SarLawsDetailedListMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsDetailedList/SarLawsDetailedListMapper.xml new file mode 100644 index 00000000..3a72e09a --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarLawsDetailedList/SarLawsDetailedListMapper.xml @@ -0,0 +1,5 @@ + + + + + From 26a5022c03a63ab8b277c59a38b2e0d2d5c0356f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E8=82=96=E4=BA=91?= <2816048001@qq.com> Date: Mon, 28 Jun 2021 13:56:19 +0800 Subject: [PATCH 32/57] =?UTF-8?q?fetch:=E6=96=B0=E5=A2=9E=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E8=A7=92=E8=89=B2=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarPosition/controller/TsPositionController.java | 2 +- .../da/slrs/sarPosition/service/ITsPositionService.java | 4 ++-- .../sarPosition/service/impl/TsPositionServiceImpl.java | 8 +++++--- .../adc/da/slrs/sarRole/controller/TsRoleController.java | 9 ++++++++- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java index f43b10b3..cf26d4df 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java @@ -51,7 +51,7 @@ public class TsPositionController extends BaseController { @ApiOperation("配置角色") @PostMapping("/role") - public ResponseMessage setRole(@Valid @RequestBody TsPositionRoleVO tsPositionRoleVO){ + public ResponseMessage> setRole(@Valid @RequestBody TsPositionRoleVO tsPositionRoleVO){ return tsPositionService.setRole(tsPositionRoleVO); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java index 87f44d6b..ce5426da 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -27,10 +27,10 @@ public interface ITsPositionService extends IService { /** * 配置角色 - * @param tsPositionRoleVO:角色ID + * @param tsPositionRoleVO :角色ID * @return ResponseMessage */ - ResponseMessage setRole(TsPositionRoleVO tsPositionRoleVO); + ResponseMessage> setRole(TsPositionRoleVO tsPositionRoleVO); /** * 查询角色 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index 7665472a..dad3905e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -14,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.management.relation.Role; import java.util.List; import java.util.Map; @@ -46,12 +47,12 @@ public class TsPositionServiceImpl extends ServiceImpl */ @Override @Transactional - public ResponseMessage setRole(TsPositionRoleVO tsPositionRoleVO) { + public ResponseMessage> setRole(TsPositionRoleVO tsPositionRoleVO) { TsPosition position=tsPositionDao.selectById(tsPositionRoleVO.getPositionId()); if(position==null){ return Result.error("该岗位不存在"); @@ -66,7 +67,8 @@ public class TsPositionServiceImpl extends ServiceImpl roles=getRole(tsPositionRoleVO.getPositionId()); + return Result.success(roles); } /** diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index a3c855f4..c65cb8fa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -73,8 +73,15 @@ public class TsRoleController extends BaseController { } @ApiOperation("配置权限") - @PostMapping("/ment") + @PostMapping("/menu") public ResponseMessage setMenu(@Valid @RequestBody TsRoleMenuVO tsRoleMenuVO){ return tsRoleService.setMenu(tsRoleMenuVO); } + + @ApiOperation("查询角色详情") + @GetMapping("/id") + public ResponseMessage getRoleById(@RequestParam String roleId){ + TsRole tsRole=tsRoleService.getById(roleId); + return Result.success(tsRole); + } } From 4533960ef98e10f1fca5b27adc97f9b050c4d182 Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 29 Jun 2021 09:07:06 +0800 Subject: [PATCH 33/57] =?UTF-8?q?feat=20=E4=BF=AE=E6=94=B9=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E4=BA=9B=E6=90=9C=E7=B4=A2=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/main/generate/CodeGen.java | 5 +- .../main/resources/application-dev.properties | 5 +- .../src/main/resources/application.properties | 4 +- adc-da-search/pom.xml | 5 ++ .../da/search/config/ElasticsearchConfig.java | 1 - .../config/ElasticsearchProperties.java | 34 +------- .../controller/SearchCenterController.java | 25 +++++- .../da/search/entity/BasicSearchEntity.java | 13 +++ .../da/search/entity/CommonSearchInfoEO.java | 22 +++++ .../search/service/SearchCenterService.java | 3 + .../service/impl/SearchCenterServiceImpl.java | 36 +++++++- .../controller/TsDictionaryController.java | 23 +++++ .../controller/TsDictypeController.java | 23 +++++ .../tsDictionaryType/dao/TsDicTypeDao.java | 19 +++++ .../tsDictionaryType/dao/TsDictionaryDao.java | 16 ++++ .../tsDictionaryType/entity/MenuType.java | 17 ++++ .../tsDictionaryType/entity/TsDicType.java | 84 +++++++++++++++++++ .../tsDictionaryType/entity/TsDictionary.java | 82 ++++++++++++++++++ .../tsDictionaryType/entity/TsSearchMenu.java | 20 +++++ .../service/ITsDicTypeService.java | 21 +++++ .../service/ITsDictionaryService.java | 16 ++++ .../service/impl/TsDicTypeServiceImpl.java | 27 ++++++ .../service/impl/TsDictionaryServiceImpl.java | 20 +++++ .../tsDictionaryType/TsDicTypeMapper.xml | 32 +++++++ .../tsDictionaryType/TsDictionaryMapper.xml | 5 ++ 25 files changed, 512 insertions(+), 46 deletions(-) create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/BasicSearchEntity.java create mode 100644 adc-da-search/src/main/java/com/adc/da/search/entity/CommonSearchInfoEO.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictionaryController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictypeController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDicTypeDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDictionaryDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/MenuType.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDicType.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDictionary.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsSearchMenu.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDicTypeService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDictionaryService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDicTypeServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDictionaryServiceImpl.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDictionaryMapper.xml diff --git a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java index b3120d79..e17bf8a0 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java +++ b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java @@ -22,11 +22,12 @@ public class CodeGen { // x.x.x.x:3306/xxxx --MYSQL // 192.168.10.140:1521:foton_slrs_test - private static final String DB_IP="localhost:3306/foton_slrs_test"; + // foton_slrs_test@101.36.227.22 + private static final String DB_IP="101.36.227.22:33050/foton_slrs_test"; private static final String DB_USER="root"; - private static final String DB_PWD="Zxy20010202"; + private static final String DB_PWD="1q2w3e4r"; /** diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index afdb5624..b0d8ffe2 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,10 +3,9 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://localhost:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql:/101.36.227.22:33050/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root -spring.datasource.password = Zxy20010202 - +spring.datasource.password = 1q2w3e4r #============================================== # 应用设置 spring.application.name=FotonLAWSSystem diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index d0fa62ba..4cb8be56 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -139,8 +139,8 @@ upload.file.white.lists = doc,docx,xls,xlsx,pdf,PDF,png,jpg # ============================================================================= # elasticsearch 配置 # ============================================================================= -elasticsearch.clustername=laws -elasticsearch.ip=localhost +elasticsearch.clustername=elasticsearch +elasticsearch.ip=192.168.10.47 elasticsearch.port=9300 elasticsearch.poolSize=5 elas.flag=true \ No newline at end of file diff --git a/adc-da-search/pom.xml b/adc-da-search/pom.xml index 38d5f6b0..4c067f98 100644 --- a/adc-da-search/pom.xml +++ b/adc-da-search/pom.xml @@ -60,6 +60,11 @@ adc-da-base 3.0.0 + + com.adc + adc-da-slrs + 3.0.0 + com.adc diff --git a/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java index 26fec5b6..a86b7263 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java +++ b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchConfig.java @@ -50,7 +50,6 @@ public class ElasticsearchConfig { if (client != null) { client.close(); } - }*/ diff --git a/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java index d0f4b9d1..bedcc96c 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java +++ b/adc-da-search/src/main/java/com/adc/da/search/config/ElasticsearchProperties.java @@ -1,9 +1,12 @@ package com.adc.da.search.config; +import lombok.Data; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component +@Data @ConfigurationProperties(prefix = "elasticsearch") public class ElasticsearchProperties { private String clustername; @@ -11,35 +14,4 @@ public class ElasticsearchProperties { private Integer port; private Integer poolSize; - public String getClustername() { - return clustername; - } - - public void setClustername(String clustername) { - this.clustername = clustername; - } - - public String getIp() { - return ip; - } - - public void setIp(String ip) { - this.ip = ip; - } - - public Integer getPort() { - return port; - } - - public void setPort(Integer port) { - this.port = port; - } - - public Integer getPoolSize() { - return poolSize; - } - - public void setPoolSize(Integer poolSize) { - this.poolSize = poolSize; - } } diff --git a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java index 7a291e8a..d60a2cee 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java +++ b/adc-da-search/src/main/java/com/adc/da/search/controller/SearchCenterController.java @@ -7,6 +7,7 @@ import com.adc.da.excel.poi.excel.entity.enums.ExcelType; import com.adc.da.http.PageInfo; import com.adc.da.person.service.IPersonCollectEOService; import com.adc.da.search.dto.*; +import com.adc.da.search.entity.CommonSearchInfoEO; import com.adc.da.search.entity.SarAdvanceSearchVO; import com.adc.da.search.entity.SeniorSearchInfoEO; import com.adc.da.search.service.ElasticsearchService; @@ -14,6 +15,8 @@ import com.adc.da.search.service.SearchCenterService; import com.adc.da.exception.AdcDaBaseException; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.tsDictionaryType.entity.TsSearchMenu; +import com.adc.da.slrs.tsDictionaryType.service.ITsDicTypeService; import com.adc.da.util.IOUtils; import com.alibaba.fastjson.JSONObject; @@ -23,10 +26,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.usermodel.Workbook; import org.elasticsearch.client.transport.TransportClient; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -52,6 +52,15 @@ public class SearchCenterController extends BaseController> @Autowired private ElasticsearchService elasticsearchService; + @Autowired + private ITsDicTypeService iTsDictypeService; + + @ApiOperation("获取筛选条件") + @PostMapping("/getMenu") + public ResponseMessage> getSearchMenu(){ + return Result.success(iTsDictypeService.getSearchMenu()); + } + /** * * @param searchInfoEO @@ -98,6 +107,14 @@ public class SearchCenterController extends BaseController> } } + @ApiOperation("根据多个key去查询") + @PostMapping("/searchByKey") + public void searchByKey(@RequestBody CommonSearchInfoEO commonSearchInfoEO){ + searchCenterService.searchByKey(commonSearchInfoEO); + } + + + @ApiOperation(value = "|SearchCenter|查询用于导出数据") @PostMapping(value="/searchIdToImport") public ResponseMessage searchIdToImport(SeniorSearchInfoEO searchInfoEO){ diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/BasicSearchEntity.java b/adc-da-search/src/main/java/com/adc/da/search/entity/BasicSearchEntity.java new file mode 100644 index 00000000..06379ba6 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/BasicSearchEntity.java @@ -0,0 +1,13 @@ +package com.adc.da.search.entity; + +import lombok.Data; + +import java.util.List; + +@Data +public class BasicSearchEntity { + private String key; + private String sign; + private String value; + private List values; +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/entity/CommonSearchInfoEO.java b/adc-da-search/src/main/java/com/adc/da/search/entity/CommonSearchInfoEO.java new file mode 100644 index 00000000..fcdbd922 --- /dev/null +++ b/adc-da-search/src/main/java/com/adc/da/search/entity/CommonSearchInfoEO.java @@ -0,0 +1,22 @@ +package com.adc.da.search.entity; + +import lombok.Data; + +import java.util.List; + +@Data +public class CommonSearchInfoEO { + + private List searchEntities; + + private String searchType; + + private String searchIndex; + + private String searchBox; + + private Integer currents; + + private Integer size; + +} diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java b/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java index 9e569ff4..328e50e4 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/SearchCenterService.java @@ -1,5 +1,6 @@ package com.adc.da.search.service; +import com.adc.da.search.entity.CommonSearchInfoEO; import com.adc.da.search.entity.SeniorSearchInfoEO; import org.elasticsearch.action.search.SearchResponse; @@ -27,4 +28,6 @@ public interface SearchCenterService { List> searchSarBykeyAndHighLightNumber(SeniorSearchInfoEO searchInfoEO) throws Exception; + void searchByKey(CommonSearchInfoEO commonSearchInfoEO); + } diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index ec8b808b..6a2fd4a1 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -1,11 +1,10 @@ package com.adc.da.search.service.impl; import com.adc.da.person.dao.PersonSearchEODao; -import com.adc.da.search.entity.SarAdvanceSearchVO; -import com.adc.da.search.entity.SearchListDto; -import com.adc.da.search.entity.SeniorSearchInfoEO; +import com.adc.da.search.entity.*; import com.adc.da.search.service.SearchCenterService; import com.alibaba.fastjson.JSONArray; +import lombok.extern.slf4j.Slf4j; import net.sf.json.JSONObject; import org.apache.commons.lang3.StringUtils; import org.elasticsearch.action.search.SearchRequestBuilder; @@ -40,6 +39,7 @@ import java.text.SimpleDateFormat; import java.util.*; @Component +@Slf4j public class SearchCenterServiceImpl implements SearchCenterService { private final org.slf4j.Logger LOGGER = LoggerFactory.getLogger(SearchCenterServiceImpl.class); @@ -1246,6 +1246,36 @@ public class SearchCenterServiceImpl implements SearchCenterService { searchInfoEO.getPager().setRowCount((int) response.getHits().getTotalHits()); return result; } + + @Override + public void searchByKey(CommonSearchInfoEO commonSearchInfoEO) { + + //写个假的根据字段查询 + SearchRequestBuilder searchRequestBuilder; + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + BoolQueryBuilder boolQueryShould = QueryBuilders.boolQuery(); + BoolQueryBuilder boolQueryMust = QueryBuilders.boolQuery(); + + for (BasicSearchEntity entity: commonSearchInfoEO.getSearchEntities()) { + if(entity.getKey()!=null&&entity.getValue()!=null&&(entity.getSign()==null||entity.getSign().equals("=")))boolQueryMust.must(QueryBuilders.wildcardQuery(entity.getKey(),"*"+entity.getValue()+"*")); + } + + searchRequestBuilder=client.prepareSearch(commonSearchInfoEO.getSearchIndex()) + .setSearchType(SearchType.DFS_QUERY_THEN_FETCH) + .setFrom((commonSearchInfoEO.getCurrents()-1)*commonSearchInfoEO.getSize()) + .setSize(commonSearchInfoEO.getSize()); + boolQueryBuilder.must(QueryBuilders.matchQuery("validFlag", 0)); + + boolQueryBuilder.must(boolQueryMust); + boolQueryShould.should(boolQueryShould); + + searchRequestBuilder.setQuery(boolQueryBuilder); + // 获取查询到的结果 + SearchResponse response = searchRequestBuilder.get(); + + log.info(response.getHits().toString()); + + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictionaryController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictionaryController.java new file mode 100644 index 00000000..1a0f7ff1 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictionaryController.java @@ -0,0 +1,23 @@ +package com.adc.da.slrs.tsDictionaryType.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; +import com.adc.da.slrs.tsDictionaryType.entity.TsDictionary; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +/** +*

    + * 前端控制器 + *

    +* +* @author zyl +* @since 2021-06-28 +*/ +@RestController +@Api(description = "|TsDictionary|") +@RequestMapping("/tsDictionaryType/ts-dictionary") +public class TsDictionaryController extends BaseController { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictypeController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictypeController.java new file mode 100644 index 00000000..9c582262 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/controller/TsDictypeController.java @@ -0,0 +1,23 @@ +package com.adc.da.slrs.tsDictionaryType.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; +import com.adc.da.slrs.tsDictionaryType.entity.TsDicType; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +/** +*

    + * 前端控制器 + *

    +* +* @author zyl +* @since 2021-06-28 +*/ +@RestController +@Api(description = "|TsDictype|") +@RequestMapping("/tsDictionaryType/ts-dictype") +public class TsDictypeController extends BaseController { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDicTypeDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDicTypeDao.java new file mode 100644 index 00000000..604050f3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDicTypeDao.java @@ -0,0 +1,19 @@ +package com.adc.da.slrs.tsDictionaryType.dao; + +import com.adc.da.slrs.tsDictionaryType.entity.TsDicType; +import com.adc.da.slrs.tsDictionaryType.entity.TsSearchMenu; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import java.util.List; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zyl + * @since 2021-06-28 + */ +public interface TsDicTypeDao extends BaseMapper { + public List getSearchMenu(); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDictionaryDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDictionaryDao.java new file mode 100644 index 00000000..01c0d2e8 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/dao/TsDictionaryDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.tsDictionaryType.dao; + +import com.adc.da.slrs.tsDictionaryType.entity.TsDictionary; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zyl + * @since 2021-06-28 + */ +public interface TsDictionaryDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/MenuType.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/MenuType.java new file mode 100644 index 00000000..c43b0985 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/MenuType.java @@ -0,0 +1,17 @@ +package com.adc.da.slrs.tsDictionaryType.entity; + + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.RequiredArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +class MenuType{ + private String id; + private String dicId; + private String dicTypeName; + private String dicTypeCode; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDicType.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDicType.java new file mode 100644 index 00000000..9c5d8c4f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDicType.java @@ -0,0 +1,84 @@ +package com.adc.da.slrs.tsDictionaryType.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

    + * + *

    + * + * @author zyl + * @since 2021-06-28 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsDicType对象", description="") +@TableName("ts_dictype") +public class TsDicType extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + @ApiModelProperty(value = "数据字典ID") + @TableField("DIC_ID") + private String dicId; + + @ApiModelProperty(value = "数据内容") + @TableField("DIC_TYPE_NAME") + private String dicTypeName; + + @ApiModelProperty(value = "数据编码") + @TableField("DIC_TYPE_CODE") + private String dicTypeCode; + + @ApiModelProperty(value = "描述") + @TableField("DESCRIBES") + private String describes; + + @ApiModelProperty(value = "展示排序") + @TableField("SHOW_INDEX") + private BigDecimal showIndex; + + @ApiModelProperty(value = "关联的父级ID") + @TableField("PARENT_ID") + private String parentId; + + @ApiModelProperty(value = "树结构父级ID") + @TableField("TREE_PID") + private String treePid; + + @ApiModelProperty(value = "冗余字段") + @TableField("OTHERS") + private String others; + + @TableField("CREATION_USER") + private String creationUser; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + private LocalDateTime creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + private LocalDateTime modifyTime; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDictionary.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDictionary.java new file mode 100644 index 00000000..662fa8bd --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsDictionary.java @@ -0,0 +1,82 @@ +package com.adc.da.slrs.tsDictionaryType.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

    + * + *

    + * + * @author zyl + * @since 2021-06-28 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsDictionary对象", description="") +public class TsDictionary extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId("ID") + private String id; + + @ApiModelProperty(value = "数据字典编码") + @TableField("DICTIONARY_CODE") + private String dictionaryCode; + + @ApiModelProperty(value = "数据字典名称") + @TableField("DICTIONARY_NAME") + private String dictionaryName; + + @ApiModelProperty(value = "数据字典排序序号") + @TableField("ORDER_NUM") + private BigDecimal orderNum; + + @ApiModelProperty(value = "是否启用(0是,1否)") + @TableField("ENABLE") + private String enable; + + @ApiModelProperty(value = "类型(SEL_OPTION下拉选项,TREE树形结构)") + @TableField("DICTION_TYPE") + private String dictionType; + + @ApiModelProperty(value = "是否有关联类别(0是,1否)") + @TableField("IS_RELATE") + private String isRelate; + + @ApiModelProperty(value = "关联类别ID") + @TableField("RELATE_DIC_ID") + private String relateDicId; + + @TableField("CREATION_USER") + private String creationUser; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + private LocalDateTime creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + private LocalDateTime modifyTime; + + @ApiModelProperty(value = "是否可编辑数据") + @TableField("IS_EDIT_DATA") + private String isEditData; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsSearchMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsSearchMenu.java new file mode 100644 index 00000000..de5b50fa --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/entity/TsSearchMenu.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.tsDictionaryType.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class TsSearchMenu { + + private String dicId; + + private String dictionaryName; + + private String dictionaryCode; + + public List menuTypes; + +} \ No newline at end of file diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDicTypeService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDicTypeService.java new file mode 100644 index 00000000..31e5f3d3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDicTypeService.java @@ -0,0 +1,21 @@ +package com.adc.da.slrs.tsDictionaryType.service; + +import com.adc.da.slrs.tsDictionaryType.entity.TsDicType; +import com.adc.da.slrs.tsDictionaryType.entity.TsSearchMenu; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

    + * 服务类 + *

    + * + * @author zyl + * @since 2021-06-28 + */ +public interface ITsDicTypeService extends IService { + + public List getSearchMenu(); + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDictionaryService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDictionaryService.java new file mode 100644 index 00000000..399eeefa --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/ITsDictionaryService.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.tsDictionaryType.service; + +import com.adc.da.slrs.tsDictionaryType.entity.TsDictionary; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

    + * 服务类 + *

    + * + * @author zyl + * @since 2021-06-28 + */ +public interface ITsDictionaryService extends IService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDicTypeServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDicTypeServiceImpl.java new file mode 100644 index 00000000..7870f248 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDicTypeServiceImpl.java @@ -0,0 +1,27 @@ +package com.adc.da.slrs.tsDictionaryType.service.impl; + +import com.adc.da.slrs.tsDictionaryType.entity.TsDicType; +import com.adc.da.slrs.tsDictionaryType.dao.TsDicTypeDao; +import com.adc.da.slrs.tsDictionaryType.entity.TsSearchMenu; +import com.adc.da.slrs.tsDictionaryType.service.ITsDicTypeService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

    + * 服务实现类 + *

    + * + * @author zyl + * @since 2021-06-28 + */ +@Service +public class TsDicTypeServiceImpl extends ServiceImpl implements ITsDicTypeService { + + @Override + public List getSearchMenu() { + return getBaseMapper().getSearchMenu(); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDictionaryServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDictionaryServiceImpl.java new file mode 100644 index 00000000..099b50a9 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/tsDictionaryType/service/impl/TsDictionaryServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.tsDictionaryType.service.impl; + +import com.adc.da.slrs.tsDictionaryType.entity.TsDictionary; +import com.adc.da.slrs.tsDictionaryType.dao.TsDictionaryDao; +import com.adc.da.slrs.tsDictionaryType.service.ITsDictionaryService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

    + * 服务实现类 + *

    + * + * @author zyl + * @since 2021-06-28 + */ +@Service +public class TsDictionaryServiceImpl extends ServiceImpl implements ITsDictionaryService { + +} diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml new file mode 100644 index 00000000..4f7e14b7 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDictionaryMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDictionaryMapper.xml new file mode 100644 index 00000000..b833a3d4 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDictionaryMapper.xml @@ -0,0 +1,5 @@ + + + + + From 39e5e4c4c5c6cef6900cda57f6d2ef8b0395cd75 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Tue, 29 Jun 2021 16:34:02 +0800 Subject: [PATCH 34/57] =?UTF-8?q?=E4=BA=BA=E5=91=98=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=9C=BA=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/application-dev.properties | 4 +- .../sarMenu/controller/SarMenuController.java | 30 ++++++- .../adc/da/slrs/sarMenu/entity/SarMenu.java | 13 ++- .../slrs/sarMenu/service/ISarMenuService.java | 27 ++++++ .../service/impl/SarMenuServiceImpl.java | 88 +++++++++++++++++++ .../controller/TsPositionController.java | 12 +++ .../slrs/sarPosition/dao/TsPositionDao.java | 7 ++ .../slrs/sarPosition/entity/TsPosition.java | 10 +++ .../service/ITsPositionService.java | 14 +++ .../service/impl/TsPositionServiceImpl.java | 42 +++++++-- .../sarRole/controller/TsRoleController.java | 8 ++ .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 3 + .../slrs/sarRole/service/ITsRoleService.java | 7 ++ .../service/impl/TsRoleServiceImpl.java | 23 ++++- .../sarUser/controller/TsUserController.java | 16 +++- .../adc/da/slrs/sarUser/dao/TsUserDao.java | 31 +++++++ .../adc/da/slrs/sarUser/entity/TsUser.java | 8 ++ .../slrs/sarUser/entity/UserPositionVO.java | 14 +++ .../slrs/sarUser/service/ITsUserService.java | 8 ++ .../service/impl/TsUserServiceImpl.java | 37 +++++++- .../mapper/sarPosition/TsPositionMapper.xml | 26 ++++++ .../mybatis/mapper/sarUser/TsUserMapper.xml | 34 +++++++ 22 files changed, 439 insertions(+), 23 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionVO.java diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index b0d8ffe2..26b9ad9b 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,9 +3,9 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql:/101.36.227.22:33050/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://localhost:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root -spring.datasource.password = 1q2w3e4r +spring.datasource.password = Zxy20010202 #============================================== # 应用设置 spring.application.name=FotonLAWSSystem diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java index 35fab456..765bf2c4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java @@ -9,11 +9,10 @@ import com.adc.da.sys.common.SelectionResult; import com.adc.da.sys.service.IDicTypeEOService; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; import com.adc.da.slrs.sarMenu.entity.SarMenu; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; import java.util.ArrayList; @@ -78,4 +77,29 @@ public class SarMenuController extends BaseController { resultList.addAll(listDic); return Result.success(resultList); } + + @ApiOperation("查询所有菜单") + @GetMapping + public ResponseMessage> getAll(){ + List sarMenus=sarMenuEOService.getAll(); + return Result.success(sarMenus); + } + + @ApiOperation("添加菜单") + @PostMapping("/add") + public ResponseMessage addMenu(@RequestBody SarMenu sarMenu){ + return sarMenuEOService.addMenu(sarMenu); + } + + @ApiOperation("编辑菜单") + @PutMapping + public ResponseMessage updateMenu(@Validated(SarMenu.update.class) @RequestBody SarMenu sarMenu){ + return sarMenuEOService.updateMenu(sarMenu); + } + + @ApiOperation("删除菜单") + @DeleteMapping + public ResponseMessage delMenu(@RequestParam Integer menuId){ + return sarMenuEOService.delMenu(menuId); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java index cc551c85..97433f7b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/entity/SarMenu.java @@ -4,6 +4,7 @@ import com.adc.da.base.entity.BaseEntity; import com.adc.da.utils.treetool.annotation.TreeNodeId; import com.adc.da.utils.treetool.annotation.TreeNodeName; import com.adc.da.utils.treetool.annotation.TreeNodeParentId; +import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import java.time.LocalDateTime; import java.util.Date; @@ -17,6 +18,8 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.springframework.data.annotation.Transient; +import javax.validation.constraints.NotNull; + /** *

    * @@ -30,13 +33,15 @@ import org.springframework.data.annotation.Transient; @Accessors(chain = true) @ApiModel(value="SarMenu对象", description="") public class SarMenu extends BaseEntity { + public interface update{ + } private static final long serialVersionUID = 1L; - @TreeNodeId + @NotNull(message = "id不能为空",groups = {update.class}) @ApiModelProperty(value = "主键") - @TableId("ID") + @TableId(value = "ID",type = IdType.UUID) private String id; @ApiModelProperty(value = "标准法规划分") @@ -81,6 +86,10 @@ public class SarMenu extends BaseEntity { @TableField("REMARKS") private String remarks; + @ApiModelProperty(value = "子菜单") + @TableField(exist = false) + private List children; + @TableField(exist=false) private List roleIds; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java index e2251a29..7921d379 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java @@ -1,5 +1,6 @@ package com.adc.da.slrs.sarMenu.service; +import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.baomidou.mybatisplus.extension.service.IService; @@ -31,4 +32,30 @@ public interface ISarMenuService extends IService { * @return List */ List getMenusByIds(List menuIds); + + /** + * 查询所有菜单 + */ + List getAll(); + + /** + * 添加菜单 + * @param sarMenu:菜单信息 + * @return ResponseMessage + */ + ResponseMessage addMenu(SarMenu sarMenu); + + /** + * 编辑菜单 + * @param sarMenu:菜单信息 + * @return ResponseMessage + */ + ResponseMessage updateMenu(SarMenu sarMenu); + + /** + * 删除菜单 + * @param menuId:菜单ID + * @return ResponseMessage + */ + ResponseMessage delMenu(Integer menuId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java index 334d5cfc..d407cc1c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java @@ -1,5 +1,7 @@ package com.adc.da.slrs.sarMenu.service.impl; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.dao.SarMenuDao; @@ -164,4 +166,90 @@ public class SarMenuServiceImpl extends ServiceImpl impleme menuQueryWrapper.in("id",menuIds); return dao.selectList(menuQueryWrapper); } + + /** + * 查询所有菜单 + */ + @Override + public List getAll() { + QueryWrapper sarMenuQueryWrapper=new QueryWrapper<>(); + sarMenuQueryWrapper.orderByAsc("DISPLAY_SEQ"); + sarMenuQueryWrapper.isNull("PARENT_ID"); + List sarMenus=dao.selectList(sarMenuQueryWrapper); + for(SarMenu sarMenu:sarMenus){ + sarMenu.setChildren(recursionGetChildren((sarMenu))); + } + return sarMenus; + } + + /** + * 添加菜单 + * @param sarMenu:菜单信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage addMenu(SarMenu sarMenu) { + if(sarMenu.getParentId()!=null){ + SarMenu parent=dao.selectById(sarMenu.getParentId()); + if(parent==null){ + return Result.error("该父菜单不存在"); + } + } + dao.insert(sarMenu); + return Result.success(); + } + + /** + * 编辑菜单 + * @param sarMenu:菜单信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage updateMenu(SarMenu sarMenu) { + SarMenu oldMenu=dao.selectById(sarMenu.getId()); + if(oldMenu==null){ + return Result.error("该菜单不存在"); + } + if(sarMenu.getParentId()!=null){ + SarMenu parent=dao.selectById(sarMenu.getParentId()); + if(parent==null){ + return Result.error("父节点不存在"); + } + } + dao.updateById(sarMenu); + return Result.success(); + } + + /** + * 删除菜单 + * @param menuId:菜单ID + * @return ResponseMessage + */ + @Override + public ResponseMessage delMenu(Integer menuId) { + QueryWrapper sarMenuQueryWrapper=new QueryWrapper<>(); + sarMenuQueryWrapper.eq("parent_id",menuId); + List children=dao.selectList(sarMenuQueryWrapper); + if(children!=null&&children.size()>0){ + return Result.error("该菜单有子节点,无法删除"); + } + dao.deleteById(menuId); + return Result.success(); + } + + /** + * 递归调用获取子节点 + * @param parent:父节点 + * @return List + */ + private List recursionGetChildren(SarMenu parent){ + QueryWrapper sarMenuQueryWrapper=new QueryWrapper<>(); + sarMenuQueryWrapper.orderByAsc("DISPLAY_SEQ"); + sarMenuQueryWrapper.eq("PARENT_ID",parent.getId()); + List children=dao.selectList(sarMenuQueryWrapper); + for(SarMenu sarMenu:children){ + sarMenu.setChildren(recursionGetChildren((sarMenu))); + } + return children; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java index cf26d4df..9f08a298 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/controller/TsPositionController.java @@ -61,4 +61,16 @@ public class TsPositionController extends BaseController { List roles=tsPositionService.getRole(positionId); return Result.success(roles); } + + @ApiOperation("编辑岗位") + @PutMapping + public ResponseMessage updatePosition(@Validated(TsPosition.update.class) TsPosition tsPosition){ + return tsPositionService.updatePosition(tsPosition); + } + + @ApiOperation("删除岗位") + @DeleteMapping + public ResponseMessage deletePosition(@RequestParam String positionId){ + return tsPositionService.deletePosition(positionId); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java index 7f56cde4..0d4fed01 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -49,4 +49,11 @@ public interface TsPositionDao extends BaseMapper { * @return List */ List getRole(String positionId); + + /** + * 查询岗位以及绑定的角色信息 + * @param tsPosition:岗位信息 + * @return List + */ + List selectPositionAndRole(TsPosition tsPosition); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java index ca677eef..f6f7bab0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/entity/TsPosition.java @@ -4,7 +4,9 @@ import com.adc.da.base.entity.BaseEntity; import java.sql.Timestamp; import java.time.LocalDateTime; +import java.util.List; +import com.adc.da.slrs.sarRole.entity.TsRole; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; @@ -33,9 +35,12 @@ import javax.validation.constraints.NotNull; public class TsPosition extends BaseEntity { public interface insert{ } + public interface update{ + } private static final long serialVersionUID = 1L; + @ApiModelProperty(value = "操作时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @@ -57,10 +62,15 @@ public class TsPosition extends BaseEntity { @ApiModelProperty(value = "类型(1为导入,2为新建)") private String type; + @NotNull(message = "id不能为空",groups = {update.class}) @ApiModelProperty(value = "ID") @TableId(value = "id",type = IdType.UUID) private String id; + @ApiModelProperty(value = "绑定角色") + @TableField(exist = false) + private List roles; + @ApiModelProperty(value = "创建时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java index ce5426da..923655ed 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -45,4 +45,18 @@ public interface ITsPositionService extends IService { * @return ResponseMessage */ ResponseMessage addPosition(TsPosition tsPosition); + + /** + * 修改岗位 + * @param tsPosition:岗位信息 + * @return ResponseMessage + */ + ResponseMessage updatePosition(TsPosition tsPosition); + + /** + * 删除岗位 + * @param positionId:岗位ID + * @return ResponseMessage + */ + ResponseMessage deletePosition(String positionId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index dad3905e..f17e5f81 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -38,11 +38,7 @@ public class TsPositionServiceImpl extends ServiceImpl getPosition(TsPosition tsPosition) { - QueryWrapper positionQueryWrapper=new QueryWrapper<>(); - if(tsPosition.getName()!=null){ - positionQueryWrapper.like("name","%"+tsPosition.getName()+"%"); - } - return tsPositionDao.selectList(positionQueryWrapper); + return tsPositionDao.selectPositionAndRole(tsPosition); } /** @@ -98,4 +94,40 @@ public class TsPositionServiceImpl extends ServiceImpl + */ + @Override + public ResponseMessage updatePosition(TsPosition tsPosition) { + TsPosition oldPosition=tsPositionDao.selectById(tsPosition.getId()); + if(oldPosition==null){ + return Result.error("该岗位不存在"); + } + if(!oldPosition.getType().equals("2")){ + return Result.error("该岗位不可修改"); + } + tsPositionDao.updateById(tsPosition); + return Result.success(); + } + + /** + * 删除岗位 + * @param positionId:岗位ID + * @return ResponseMessage + */ + @Override + public ResponseMessage deletePosition(String positionId) { + TsPosition oldPosition=tsPositionDao.selectById(positionId); + if(oldPosition==null){ + return Result.error("该岗位不存在"); + } + if(!oldPosition.getType().equals("2")){ + return Result.error("该岗位不可修改"); + } + tsPositionDao.deleteById(positionId); + return Result.success(); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index c65cb8fa..aa22930a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -4,6 +4,7 @@ package com.adc.da.slrs.sarRole.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.sys.entity.UserEO; @@ -84,4 +85,11 @@ public class TsRoleController extends BaseController { TsRole tsRole=tsRoleService.getById(roleId); return Result.success(tsRole); } + + @ApiOperation("查询角色权限") + @GetMapping("/menu") + public ResponseMessage> getMenu(@RequestParam String roleId){ + List menuIds=tsRoleService.getMenu(roleId); + return Result.success(menuIds); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java index 4023d41a..cda28f5a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -49,4 +49,7 @@ public interface TsRoleDao extends BaseMapper { */ @Delete("delete from ts_role_menu where role_id=#{roleId} and menu_id=#{menuId}") void delMenu(String roleId, String menuId); + + @Select("select menu_id from ts_role_menu where role_id=#{roleId}") + List getMenuIdByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index a2f17288..c06513c1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -57,4 +57,11 @@ public interface ITsRoleService extends IService { * @return ResponseMessage */ ResponseMessage setMenu(TsRoleMenuVO tsRoleMenuVO); + + /** + * 查询角色权限 + * @param roleId:角色ID + * @return List + */ + List getMenu(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 3837f208..476ddbaf 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarRole.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarMenu.dao.SarMenuDao; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarRole.entity.TsRole; @@ -158,16 +159,30 @@ public class TsRoleServiceImpl extends ServiceImpl implements Map> updateMenuIds= ListUtil.difList(tsRoleMenuVO.getMenuIds(),oldMenuIds); List insertIds=updateMenuIds.get("insert"); List deleteIds=updateMenuIds.get("update"); - for(String menuId:insertIds){ - tsRoleDao.addMenu(tsRoleMenuVO.getRoleId(),menuId); + if(insertIds!=null&&insertIds.size()>1){ + for(String menuId:insertIds){ + tsRoleDao.addMenu(tsRoleMenuVO.getRoleId(),menuId); + } } - for(String menuId:deleteIds){ - tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); + if(deleteIds!=null&&deleteIds.size()>1){ + for(String menuId:deleteIds){ + tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); + } } //修改首页自定义目录 // List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); return Result.success(); } + /** + * 查询角色权限 + * @param roleId:角色ID + * @return List + */ + @Override + public List getMenu(String roleId) { + return tsRoleDao.getMenuIdByRoleId(roleId); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index 465d6f38..0d99a269 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -3,18 +3,18 @@ package com.adc.da.slrs.sarUser.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.*; import com.adc.da.slrs.sarUser.entity.TsUser; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; +import javax.validation.Valid; + /** *

    * 前端控制器 @@ -40,4 +40,12 @@ public class TsUserController extends BaseController { return tsUserService.disable(tsUser); } + @ApiOperation("配置岗位") + @PostMapping("/position") + public ResponseMessage setPosition(@Valid @RequestBody UserPositionVO userPositionVO){ + return tsUserService.setPosition(userPositionVO); + } + + + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java index d3a95719..d7434d30 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java @@ -2,6 +2,10 @@ package com.adc.da.slrs.sarUser.dao; import com.adc.da.slrs.sarUser.entity.TsUser; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** *

    @@ -13,4 +17,31 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface TsUserDao extends BaseMapper { + /** + * 查询用户已经绑定的岗位ID + */ + @Select("select position_id from ts_user_position where user_id=#{userId}") + List selectPositionIds(String userId); + + /** + * 添加岗位 + * @param userId:用户ID + * @param positionId:岗位ID + */ + @Insert("insert into ts_user_position (user_id,position_id) values (#{userId},#{positionId})") + void addPosition(String userId, String positionId); + + /** + * 解绑岗位 + * @param userId:用户ID + * @param positionId:岗位ID + */ + void delPosition(String userId, String positionId); + + /** + * 通过岗位ID查询用户及其岗位 + * @param institutionId:岗位ID + * @return List + */ + List getUserAndPosition(String institutionId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java index 6fc4ce3b..1a68858c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/TsUser.java @@ -2,10 +2,14 @@ package com.adc.da.slrs.sarUser.entity; import com.adc.da.base.entity.BaseEntity; import java.math.BigDecimal; + +import com.adc.da.slrs.sarPosition.entity.TsPosition; import com.baomidou.mybatisplus.annotation.TableId; import java.sql.Timestamp; import java.time.LocalDateTime; +import java.util.List; + import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; @@ -133,5 +137,9 @@ public class TsUser extends BaseEntity { @TableField("SSO_ID") private String ssoId; + @ApiModelProperty(value = "岗位") + @TableField(exist = false) + private List positions; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionVO.java new file mode 100644 index 00000000..f07fbfbb --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionVO.java @@ -0,0 +1,14 @@ +package com.adc.da.slrs.sarUser.entity; + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +public class UserPositionVO { + @NotNull(message = "userId不能为空") + private String userId; + @NotNull(message = "positionIds不能为空") + private List positionIds; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 0b806011..deb6dd93 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarUser.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarUser.entity.TsUser; +import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -30,4 +31,11 @@ public interface ITsUserService extends IService { * @return ResponseMessage */ ResponseMessage disable(TsUser tsUser); + + /** + * 配置岗位 + * @param userPositionVO :用户、岗位ID + * @return ResponseMessage + */ + ResponseMessage setPosition(UserPositionVO userPositionVO); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 4d9f56cc..7f6d1789 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -4,13 +4,17 @@ import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.dao.TsUserDao; +import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; +import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Map; /** *

    @@ -32,9 +36,7 @@ public class TsUserServiceImpl extends ServiceImpl implements */ @Override public List getUserByInstitutionId(String institutionId) { - QueryWrapper userQueryWrapper=new QueryWrapper<>(); - userQueryWrapper.eq("institution_id",institutionId); - return tsUserDao.selectList(userQueryWrapper); + return tsUserDao.getUserAndPosition(institutionId); } /** @@ -64,4 +66,33 @@ public class TsUserServiceImpl extends ServiceImpl implements tsUserDao.updateById(user); return Result.success(); } + + /** + * 配置岗位 + * @param userPositionVO :用户、岗位ID + * @return ResponseMessage + */ + @Override + @Transactional + public ResponseMessage setPosition(UserPositionVO userPositionVO) { + TsUser tsUser=tsUserDao.selectById(userPositionVO.getUserId()); + if(tsUser==null){ + return Result.error("该用户不存在"); + } + List oldPositionIds=tsUserDao.selectPositionIds(userPositionVO.getUserId()); + Map> ids= ListUtil.difList(userPositionVO.getPositionIds(),oldPositionIds); + List insertIds=ids.get("insert"); + List deleteIds=ids.get("delete"); + if(insertIds!=null&&insertIds.size()>0){ + for(String positionId:insertIds){ + tsUserDao.addPosition(userPositionVO.getUserId(),positionId); + } + } + if(deleteIds!=null&&deleteIds.size()>0){ + for(String positionId:deleteIds){ + tsUserDao.delPosition(userPositionVO.getUserId(),positionId); + } + } + return Result.success(); + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml index 6188a7bb..33c56c03 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml @@ -1,10 +1,36 @@ + + + + + + + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml index 26150f18..67b94fdc 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml @@ -1,5 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + From c4a885922dfe144e7145fe25e706e18e35f30368 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Tue, 29 Jun 2021 17:28:16 +0800 Subject: [PATCH 35/57] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=BD=93=E5=89=8D?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E7=9A=84=E7=94=A8=E6=88=B7=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../slrs/sarMenu/service/ISarMenuService.java | 7 +++++ .../service/impl/SarMenuServiceImpl.java | 15 ++++++++++ .../slrs/sarPosition/dao/TsPositionDao.java | 7 +++++ .../service/ITsPositionService.java | 7 +++++ .../service/impl/TsPositionServiceImpl.java | 19 +++++++++++- .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 7 +++++ .../slrs/sarRole/service/ITsRoleService.java | 7 +++++ .../service/impl/TsRoleServiceImpl.java | 13 ++++++++ .../sarUser/controller/TsUserController.java | 9 ++++++ .../adc/da/slrs/sarUser/dao/TsUserDao.java | 2 ++ .../slrs/sarUser/service/ITsUserService.java | 7 +++++ .../service/impl/TsUserServiceImpl.java | 30 +++++++++++++++++++ .../mapper/sarPosition/TsPositionMapper.xml | 10 +++++++ .../mybatis/mapper/sarRole/TsRoleMapper.xml | 10 ++++++- 14 files changed, 148 insertions(+), 2 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java index 7921d379..ddc99449 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java @@ -58,4 +58,11 @@ public interface ISarMenuService extends IService { * @return ResponseMessage */ ResponseMessage delMenu(Integer menuId); + + /** + * 通过Ids查询menu + * @param menuIds :菜单Ids + * @return List + */ + List getMenuByIds(List menuIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java index d407cc1c..9fdd43c3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java @@ -237,6 +237,21 @@ public class SarMenuServiceImpl extends ServiceImpl impleme return Result.success(); } + /** + * 通过Ids查询menu + * @param menuIds :菜单Ids + * @return List + */ + @Override + public List getMenuByIds(List menuIds) { + if(menuIds!=null&&menuIds.size()>0){ + QueryWrapper sarMenuQueryWrapper=new QueryWrapper<>(); + sarMenuQueryWrapper.in("id",menuIds); + return dao.selectList(sarMenuQueryWrapper); + } + return new ArrayList<>(); + } + /** * 递归调用获取子节点 * @param parent:父节点 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java index 0d4fed01..e2cfd184 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -56,4 +56,11 @@ public interface TsPositionDao extends BaseMapper { * @return List */ List selectPositionAndRole(TsPosition tsPosition); + + /** + * 通过岗位列表查询绑定的角色列表 + * @param positionIds:岗位列表 + * @return List + */ + List getRoleIdsByPositionIds(List positionIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java index 923655ed..5691afd3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -59,4 +59,11 @@ public interface ITsPositionService extends IService { * @return ResponseMessage */ ResponseMessage deletePosition(String positionId); + + /** + * 通过岗位列表查询绑定的角色列表 + * @param positionIds:岗位列表 + * @return List + */ + List getRoleIdsByPositionIds(List positionIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index f17e5f81..ea291337 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -125,9 +125,26 @@ public class TsPositionServiceImpl extends ServiceImpl roleIds=tsPositionDao.getRoleId(positionId); + if(roleIds!=null&&roleIds.size()>0){ + return Result.error("该岗位已绑定角色,无法删除"); } tsPositionDao.deleteById(positionId); return Result.success(); } + + /** + * 通过岗位列表查询绑定的角色列表 + * @param positionIds:岗位列表 + * @return List + */ + @Override + public List getRoleIdsByPositionIds(List positionIds) { + if(positionIds!=null&&positionIds.size()>0){ + return tsPositionDao.getRoleIdsByPositionIds(positionIds); + } + return null; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java index cda28f5a..f742edf1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -52,4 +52,11 @@ public interface TsRoleDao extends BaseMapper { @Select("select menu_id from ts_role_menu where role_id=#{roleId}") List getMenuIdByRoleId(String roleId); + + /** + * 通过角色Id列表查询菜单Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + List getMenuIdsByRoleIds(List roleIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index c06513c1..29eb5df8 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -64,4 +64,11 @@ public interface ITsRoleService extends IService { * @return List */ List getMenu(String roleId); + + /** + * 通过角色Id列表查询菜单Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + List getMenuIdsByRoleIds(List roleIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 476ddbaf..556249c0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -184,5 +184,18 @@ public class TsRoleServiceImpl extends ServiceImpl implements return tsRoleDao.getMenuIdByRoleId(roleId); } + /** + * 通过角色Id列表查询菜单Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + @Override + public List getMenuIdsByRoleIds(List roleIds) { + if(roleIds!=null&&roleIds.size()>0){ + return tsRoleDao.getMenuIdsByRoleIds(roleIds); + } + return null; + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index 0d99a269..f02253a2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarUser.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; import io.swagger.annotations.ApiOperation; @@ -14,6 +15,7 @@ import io.swagger.annotations.Api; import com.adc.da.base.web.BaseController; import javax.validation.Valid; +import java.util.List; /** *

    @@ -46,6 +48,13 @@ public class TsUserController extends BaseController { return tsUserService.setPosition(userPositionVO); } + @ApiOperation("查询当前登录用户权限") + @GetMapping("/menu") + public ResponseMessage> getMenu(){ + List menus=tsUserService.getMenu(); + return Result.success(menus); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java index d7434d30..73962ead 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarUser.dao; import com.adc.da.slrs.sarUser.entity.TsUser; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Select; @@ -36,6 +37,7 @@ public interface TsUserDao extends BaseMapper { * @param userId:用户ID * @param positionId:岗位ID */ + @Delete("delete from ts_user_position where user_id=#{userId} and position_id=#{positionId}") void delPosition(String userId, String positionId); /** diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index deb6dd93..8d35fafe 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.sarUser.service; import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.baomidou.mybatisplus.extension.service.IService; @@ -38,4 +39,10 @@ public interface ITsUserService extends IService { * @return ResponseMessage */ ResponseMessage setPosition(UserPositionVO userPositionVO); + + /** + * 查询当前登录的用户权限 + * @return List + */ + List getMenu(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 7f6d1789..476b4917 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -2,10 +2,18 @@ package com.adc.da.slrs.sarUser.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.login.util.UserUtils; +import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.slrs.sarMenu.service.ISarMenuService; +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.adc.da.slrs.sarPosition.service.ITsPositionService; +import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.dao.TsUserDao; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; +import com.adc.da.sys.entity.UserEO; +import com.adc.da.util.LoginUserUtil; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -13,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.awt.*; import java.util.List; import java.util.Map; @@ -28,6 +37,12 @@ import java.util.Map; public class TsUserServiceImpl extends ServiceImpl implements ITsUserService { @Autowired private TsUserDao tsUserDao; + @Autowired + private ITsPositionService tsPositionService; + @Autowired + private ITsRoleService tsRoleService; + @Autowired + private ISarMenuService sarMenuService; /** * 通过机构ID查询人员 @@ -95,4 +110,19 @@ public class TsUserServiceImpl extends ServiceImpl implements } return Result.success(); } + + /** + * 查询当前登录的用户权限 + * @return List + */ + @Override + public List getMenu() { + UserEO userEO=UserUtils.getUser(); + String userId= userEO.getUsid(); + System.out.println(userId); + List positionIds=tsUserDao.selectPositionIds(userId); + List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); + return sarMenuService.getMenuByIds(menuIds); + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml index 33c56c03..123c3630 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarPosition/TsPositionMapper.xml @@ -33,4 +33,14 @@ + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml index 98887dad..a366fda3 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml @@ -1,5 +1,13 @@ - + From b69bc81066cfabd10e610cce1503b48f8c70ccdd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A4=8F=E6=99=96?= Date: Wed, 30 Jun 2021 05:02:07 +0000 Subject: [PATCH 36/57] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index d89ffe27..0280f9bd 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root From bad0f16f90aaee3914289e4ce861a8dae845e280 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Wed, 30 Jun 2021 14:01:31 +0800 Subject: [PATCH 37/57] =?UTF-8?q?fetch:=E5=8F=96=E6=B6=88serach=E6=A8=A1?= =?UTF-8?q?=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 6 +++--- pom.xml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 556249c0..b94f71cd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -158,13 +158,13 @@ public class TsRoleServiceImpl extends ServiceImpl implements List oldMenuIds=tsRoleDao.getMenuIds(tsRoleMenuVO.getRoleId()); Map> updateMenuIds= ListUtil.difList(tsRoleMenuVO.getMenuIds(),oldMenuIds); List insertIds=updateMenuIds.get("insert"); - List deleteIds=updateMenuIds.get("update"); - if(insertIds!=null&&insertIds.size()>1){ + List deleteIds=updateMenuIds.get("delete"); + if(insertIds!=null&&insertIds.size()>0){ for(String menuId:insertIds){ tsRoleDao.addMenu(tsRoleMenuVO.getRoleId(),menuId); } } - if(deleteIds!=null&&deleteIds.size()>1){ + if(deleteIds!=null&&deleteIds.size()>0){ for(String menuId:deleteIds){ tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } diff --git a/pom.xml b/pom.xml index 3f711899..ca9ad0c4 100644 --- a/pom.xml +++ b/pom.xml @@ -39,7 +39,7 @@ adc-da-search adc-da-slrs adc-da-activiti - adc-da-search + From b543a9502d873ed77ba4f61ae40e75de23fced4d Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Wed, 30 Jun 2021 17:28:39 +0800 Subject: [PATCH 38/57] =?UTF-8?q?=E8=B5=84=E6=BA=90=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/main/generate/CodeGen.java | 4 +- .../main/resources/application-dev.properties | 2 +- .../controller/TsResourceController.java | 57 ++++++++ .../slrs/sarResource/dao/TsResourceDao.java | 16 +++ .../slrs/sarResource/entity/TsResource.java | 53 ++++++++ .../service/ITsResourceService.java | 33 +++++ .../service/impl/TsResourceServiceImpl.java | 127 ++++++++++++++++++ .../sarRole/controller/TsRoleController.java | 15 +++ .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 32 +++++ .../slrs/sarRole/entity/TsRoleResourceVO.java | 14 ++ .../slrs/sarRole/service/ITsRoleService.java | 7 + .../service/impl/TsRoleServiceImpl.java | 54 ++++++++ .../sarUser/controller/TsUserController.java | 8 ++ .../slrs/sarUser/service/ITsUserService.java | 3 + .../service/impl/TsUserServiceImpl.java | 19 +++ .../mapper/sarResource/TsResourceMapper.xml | 4 + .../mybatis/mapper/sarRole/TsRoleMapper.xml | 9 ++ 17 files changed, 454 insertions(+), 3 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml diff --git a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java index e17bf8a0..12658804 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java +++ b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java @@ -23,11 +23,11 @@ public class CodeGen { // x.x.x.x:3306/xxxx --MYSQL // 192.168.10.140:1521:foton_slrs_test // foton_slrs_test@101.36.227.22 - private static final String DB_IP="101.36.227.22:33050/foton_slrs_test"; + private static final String DB_IP="192.168.10.47/foton_slrs_test"; private static final String DB_USER="root"; - private static final String DB_PWD="1q2w3e4r"; + private static final String DB_PWD="root"; /** diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..d89ffe27 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java new file mode 100644 index 00000000..3b573f32 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -0,0 +1,57 @@ +package com.adc.da.slrs.sarResource.controller; + + +import com.adc.da.base.web.BaseController; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.adc.da.slrs.sarResource.service.ITsResourceService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** +*

    + * 前端控制器 + *

    +* +* @author zyl +* @since 2021-06-30 +*/ +@RestController +@Api(tags = "资源管理") +@RequestMapping("/sarResource/ts-resource") +public class TsResourceController extends BaseController { + @Autowired + private ITsResourceService tsResourceService; + + @ApiOperation("查询所有资源") + @GetMapping + public ResponseMessage> getAll(){ + List tsResources=tsResourceService.getAll(); + return Result.success(tsResources); + } + + @ApiOperation("添加资源") + @PostMapping("/add") + public ResponseMessage addResource(@RequestBody TsResource tsResource){ + return tsResourceService.addResource(tsResource); + } + + @ApiOperation("编辑资源") + @PutMapping + public ResponseMessage updateResource(@Validated(TsResource.update.class) @RequestBody TsResource tsResource){ + return tsResourceService.updateResource(tsResource); + } + + @ApiOperation("删除资源") + @DeleteMapping + public ResponseMessage delResource(@RequestParam Integer resourceId){ + return tsResourceService.delResource(resourceId); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java new file mode 100644 index 00000000..be0671ec --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarResource.dao; + +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

    + * Mapper 接口 + *

    + * + * @author zyl + * @since 2021-06-30 + */ +public interface TsResourceDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java new file mode 100644 index 00000000..4cddc2ef --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java @@ -0,0 +1,53 @@ +package com.adc.da.slrs.sarResource.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotNull; +import java.util.List; + +/** + *

    + * + *

    + * + * @author zyl + * @since 2021-06-30 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsResource对象", description="") +public class TsResource extends BaseEntity { + public interface update{ + } + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "路径") + private String href; + + @ApiModelProperty(value = "父节点ID") + private String parentId; + + @ApiModelProperty(value = "资源名称") + private String name; + + @TableId(type = IdType.UUID) + @NotNull(message = "id不能为空",groups = {update.class}) + @ApiModelProperty(value = "ID") + private String id; + + @TableField(exist = false) + @ApiModelProperty("子节点") + private List children; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java new file mode 100644 index 00000000..5a260a74 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -0,0 +1,33 @@ +package com.adc.da.slrs.sarResource.service; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

    + * 服务类 + *

    + * + * @author zyl + * @since 2021-06-30 + */ +public interface ITsResourceService extends IService { + + List getAll(); + + ResponseMessage addResource(TsResource tsResource); + + ResponseMessage updateResource(TsResource tsResource); + + ResponseMessage delResource(Integer resourceId); + + /** + * 通过Ids查询menu + * @param resourceIds :菜单Ids + * @return List + */ + List getResourceByIds(List resourceIds); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java new file mode 100644 index 00000000..2638878d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -0,0 +1,127 @@ +package com.adc.da.slrs.sarResource.service.impl; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; + +import com.adc.da.slrs.sarResource.dao.TsResourceDao; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.adc.da.slrs.sarResource.service.ITsResourceService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + *

    + * 服务实现类 + *

    + * + * @author zyl + * @since 2021-06-30 + */ +@Service +public class TsResourceServiceImpl extends ServiceImpl implements ITsResourceService { + @Autowired + private TsResourceDao dao; + /** + * 查询所有菜单 + */ + @Override + public List getAll() { + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.isNull("PARENT_ID"); + List TsResources=dao.selectList(TsResourceQueryWrapper); + for(TsResource TsResource:TsResources){ + TsResource.setChildren(recursionGetChildren((TsResource))); + } + return TsResources; + } + + /** + * 添加菜单 + * @param TsResource:菜单信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage addResource(TsResource TsResource) { + if(TsResource.getParentId()!=null){ + TsResource parent=dao.selectById(TsResource.getParentId()); + if(parent==null){ + return Result.error("该父菜单不存在"); + } + } + dao.insert(TsResource); + return Result.success(); + } + + /** + * 编辑菜单 + * @param TsResource:菜单信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage updateResource(TsResource TsResource) { + TsResource oldResource=dao.selectById(TsResource.getId()); + if(oldResource==null){ + return Result.error("该菜单不存在"); + } + if(TsResource.getParentId()!=null){ + TsResource parent=dao.selectById(TsResource.getParentId()); + if(parent==null){ + return Result.error("父节点不存在"); + } + } + dao.updateById(TsResource); + return Result.success(); + } + + /** + * 删除菜单 + * @param ResourceId:菜单ID + * @return ResponseMessage + */ + @Override + public ResponseMessage delResource(Integer ResourceId) { + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.eq("parent_id",ResourceId); + List children=dao.selectList(TsResourceQueryWrapper); + if(children!=null&&children.size()>0){ + return Result.error("该菜单有子节点,无法删除"); + } + dao.deleteById(ResourceId); + return Result.success(); + } + + /** + * 通过Ids查询Resource + * @param resourceIds :菜单Ids + * @return List + */ + @Override + public List getResourceByIds(List resourceIds) { + if(resourceIds!=null&&resourceIds.size()>0){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.in("id",resourceIds); + return dao.selectList(TsResourceQueryWrapper); + } + return new ArrayList<>(); + } + + /** + * 递归调用获取子节点 + * @param parent:父节点 + * @return List + */ + private List recursionGetChildren(TsResource parent){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.eq("PARENT_ID",parent.getId()); + List children=dao.selectList(TsResourceQueryWrapper); + for(TsResource TsResource:children){ + TsResource.setChildren(recursionGetChildren((TsResource))); + } + return children; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index aa22930a..d29f9159 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -6,6 +6,7 @@ import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; +import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.sys.entity.UserEO; import io.swagger.annotations.ApiOperation; @@ -92,4 +93,18 @@ public class TsRoleController extends BaseController { List menuIds=tsRoleService.getMenu(roleId); return Result.success(menuIds); } + + @ApiOperation("配置资源") + @PostMapping("/resource") + public ResponseMessage setResource(@Valid @RequestBody TsRoleResourceVO tsRoleResourceVO){ + return tsRoleService.setResource(tsRoleResourceVO); + } + + @ApiOperation("查询角色资源") + @GetMapping("/resource") + public ResponseMessage> getResource(@RequestParam String roleId){ + List resourceIds=tsRoleService.getResource(roleId); + return Result.success(resourceIds); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java index f742edf1..e3987b47 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -59,4 +59,36 @@ public interface TsRoleDao extends BaseMapper { * @return List */ List getMenuIdsByRoleIds(List roleIds); + + /** + * 通过角色ID查询绑定的资源ID + * @param roleId:角色ID + * @return List + */ + @Select("select resource_id from ts_role_resource where role_id=#{roleId}") + List getResourceIds(String roleId); + + + /** + * 添加资源 + * @param roleId:角色ID + * @param resourceId:权限ID + */ + @Insert("insert into ts_role_resource (role_id,resource_id) values (#{roleId},#{resourceId})") + void addResource(String roleId, String resourceId); + + /** + * 删除权限 + * @param roleId:角色ID + * @param resourceId:权限ID + */ + @Delete("delete from ts_role_resource where role_id=#{roleId} and resource_id=#{resourceId}") + void delResource(String roleId, String resourceId); + + /** + * 通过角色Id列表查询资源Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + List getResourceIdsByRoleIds(List roleIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java new file mode 100644 index 00000000..6652ac28 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java @@ -0,0 +1,14 @@ +package com.adc.da.slrs.sarRole.entity; + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +public class TsRoleResourceVO { + @NotNull(message = "roleId不能为空") + private String roleId; + @NotNull(message = "resourceIds不能为空") + private List resourceIds; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index 29eb5df8..1091a832 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarRole.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; +import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -71,4 +72,10 @@ public interface ITsRoleService extends IService { * @return List */ List getMenuIdsByRoleIds(List roleIds); + + ResponseMessage setResource(TsRoleResourceVO tsRoleResourceVO); + + List getResource(String roleId); + + List getResourceIdsByRoleIds(List roleIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index b94f71cd..387675c5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -8,6 +8,7 @@ import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; +import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -197,5 +198,58 @@ public class TsRoleServiceImpl extends ServiceImpl implements return null; } + /** + * 配置资源 + * @param tsRoleResourceVO:资源ID + * @return ResponseMessage + */ + @Override + public ResponseMessage setResource(TsRoleResourceVO tsRoleResourceVO) { + TsRole role=tsRoleDao.selectById(tsRoleResourceVO.getRoleId()); + if(role==null){ + return Result.error("该角色不存在"); + } + List oldResourceIds=tsRoleDao.getResourceIds(tsRoleResourceVO.getRoleId()); + Map> updateMenuIds= ListUtil.difList(tsRoleResourceVO.getResourceIds(),oldResourceIds); + List insertIds=updateMenuIds.get("insert"); + List deleteIds=updateMenuIds.get("delete"); + if(insertIds!=null&&insertIds.size()>0){ + for(String menuId:insertIds){ + tsRoleDao.addResource(tsRoleResourceVO.getRoleId(),menuId); + } + } + if(deleteIds!=null&&deleteIds.size()>0){ + for(String menuId:deleteIds){ + tsRoleDao.delResource(tsRoleResourceVO.getRoleId(),menuId); + } + } + //修改首页自定义目录 +// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); + return Result.success(); + } + + /** + * 查询角色资源 + * @param roleId:角色ID + * @return List + */ + @Override + public List getResource(String roleId) { + return tsRoleDao.getResourceIds(roleId); + } + + /** + * 通过角色Id列表查询菜单Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + @Override + public List getResourceIdsByRoleIds(List roleIds) { + if(roleIds!=null&&roleIds.size()>0){ + return tsRoleDao.getResourceIdsByRoleIds(roleIds); + } + return null; + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index f02253a2..8aec0495 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -4,6 +4,7 @@ package com.adc.da.slrs.sarUser.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; import io.swagger.annotations.ApiOperation; @@ -55,6 +56,13 @@ public class TsUserController extends BaseController { return Result.success(menus); } + @ApiOperation("查询当前登录用户资源") + @GetMapping("/resource") + public ResponseMessage> getResource(){ + List resources=tsUserService.getResource(); + return Result.success(resources); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 8d35fafe..7bb35bd1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarUser.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.baomidou.mybatisplus.extension.service.IService; @@ -45,4 +46,6 @@ public interface ITsUserService extends IService { * @return List */ List getMenu(); + + List getResource(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 476b4917..8ef1a20a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -7,6 +7,8 @@ import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarPosition.entity.TsPosition; import com.adc.da.slrs.sarPosition.service.ITsPositionService; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.adc.da.slrs.sarResource.service.ITsResourceService; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.dao.TsUserDao; @@ -43,6 +45,8 @@ public class TsUserServiceImpl extends ServiceImpl implements private ITsRoleService tsRoleService; @Autowired private ISarMenuService sarMenuService; + @Autowired + private ITsResourceService tsResourceService; /** * 通过机构ID查询人员 @@ -125,4 +129,19 @@ public class TsUserServiceImpl extends ServiceImpl implements List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); return sarMenuService.getMenuByIds(menuIds); } + + /** + * 查询当前登录的用户资源 + * @return List + */ + @Override + public List getResource() { + UserEO userEO=UserUtils.getUser(); + String userId= userEO.getUsid(); + System.out.println(userId); + List positionIds=tsUserDao.selectPositionIds(userId); + List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List resourceIds=tsRoleService.getResourceIdsByRoleIds(roleIds); + return tsResourceService.getResourceByIds(resourceIds); + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml new file mode 100644 index 00000000..447de27f --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml index a366fda3..e4ac1c0e 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml @@ -10,4 +10,13 @@ ) + From 349737cd670ede729d72c572671f2672216560d7 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 10:50:56 +0800 Subject: [PATCH 39/57] =?UTF-8?q?fetch:=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarMenu/controller/SarMenuController.java | 2 +- .../slrs/sarMenu/service/ISarMenuService.java | 4 +-- .../service/impl/SarMenuServiceImpl.java | 4 +-- .../entity/SarUserPersonalMenu.java | 3 ++ .../service/ISarUserPersonalMenuService.java | 10 ++++-- .../impl/SarUserPersonalMenuServiceImpl.java | 36 ++++++++++++++----- .../slrs/sarPosition/dao/TsPositionDao.java | 8 +++++ .../service/ITsPositionService.java | 7 ++++ .../service/impl/TsPositionServiceImpl.java | 10 ++++++ .../controller/TsResourceController.java | 4 +-- .../service/ITsResourceService.java | 2 +- .../service/impl/TsResourceServiceImpl.java | 2 +- .../service/impl/TsRoleServiceImpl.java | 15 +++++--- .../adc/da/slrs/sarUser/dao/TsUserDao.java | 7 ++++ .../slrs/sarUser/service/ITsUserService.java | 15 ++++++++ .../service/impl/TsUserServiceImpl.java | 31 +++++++++++++--- .../mybatis/mapper/sarUser/TsUserMapper.xml | 10 ++++++ 17 files changed, 139 insertions(+), 31 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java index 765bf2c4..a3cf165f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java @@ -99,7 +99,7 @@ public class SarMenuController extends BaseController { @ApiOperation("删除菜单") @DeleteMapping - public ResponseMessage delMenu(@RequestParam Integer menuId){ + public ResponseMessage delMenu(@RequestParam String menuId){ return sarMenuEOService.delMenu(menuId); } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java index ddc99449..73fcc03b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java @@ -54,10 +54,10 @@ public interface ISarMenuService extends IService { /** * 删除菜单 - * @param menuId:菜单ID + * @param menuId :菜单ID * @return ResponseMessage */ - ResponseMessage delMenu(Integer menuId); + ResponseMessage delMenu(String menuId); /** * 通过Ids查询menu diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java index 9fdd43c3..609f7e67 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java @@ -222,11 +222,11 @@ public class SarMenuServiceImpl extends ServiceImpl impleme /** * 删除菜单 - * @param menuId:菜单ID + * @param menuId :菜单ID * @return ResponseMessage */ @Override - public ResponseMessage delMenu(Integer menuId) { + public ResponseMessage delMenu(String menuId) { QueryWrapper sarMenuQueryWrapper=new QueryWrapper<>(); sarMenuQueryWrapper.eq("parent_id",menuId); List children=dao.selectList(sarMenuQueryWrapper); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java index c8005efd..76fab518 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java @@ -1,6 +1,8 @@ package com.adc.da.slrs.sarPersonalCenter.entity; import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -21,6 +23,7 @@ import lombok.experimental.Accessors; @ApiModel(value="SarUserPersonalMenu对象", description="") public class SarUserPersonalMenu extends BaseEntity { + @TableId(type = IdType.UUID) @ApiModelProperty("id") private String id; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java index 3ec6ace4..e29c294a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.sarPersonalCenter.service; import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -22,8 +23,11 @@ public interface ISarUserPersonalMenuService extends IService> updateUserPersonalMenu(SarUserPersonalMenuEO eo); - public void updateUserPersonalMenuForRole(List menus,String userId); - - + public void updateUserPersonalMenuForRole(List menus, String userId); + /** + * 更新用户权限 + * @param roleId:角色ID + */ + void setPersonalMenu(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index 42b8052d..9cc0e392 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -2,14 +2,18 @@ package com.adc.da.slrs.sarPersonalCenter.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; import com.adc.da.slrs.sarPersonalCenter.dao.SarUserPersonalMenuDao; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; +import com.adc.da.slrs.sarUser.service.impl.TsUserServiceImpl; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.*; @@ -24,7 +28,8 @@ import java.util.*; */ @Service public class SarUserPersonalMenuServiceImpl extends ServiceImpl implements ISarUserPersonalMenuService { - + @Autowired + private TsUserServiceImpl tsUserService; @Override public ResponseMessage> getUserPersonalMenu(SarUserPersonalMenuEO eo) { @@ -68,16 +73,15 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl menuList,String userId) { - + public void updateUserPersonalMenuForRole(List menuList,String userId) { Set ids=new HashSet<>(); - for (SarUserPersonalMenu menu : menuList) { - if(menu.getMenuId()!=null&&menu.getMenuId().trim().length()>0){ + for (SarMenu menu : menuList) { + if(menu.getId()!=null&&menu.getId().trim().length()>0){ QueryWrapper queryWrapper=new QueryWrapper<>(); queryWrapper.eq("user_id",userId); - queryWrapper.eq("menu_id",menu.getMenuId()); + queryWrapper.eq("menu_id",menu.getId()); List menus = getBaseMapper().selectList(queryWrapper); if (menus.size()>0) { ids.add(menus.get(0).getId()); @@ -86,9 +90,9 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl userIds=tsUserService.getUserIdsByRoleId(roleId); + for(String userId:userIds){ + List menus=tsUserService.getMenusByUserId(userId); + updateUserPersonalMenuForRole(menus,userId); + } + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java index e2cfd184..d5989e46 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -63,4 +63,12 @@ public interface TsPositionDao extends BaseMapper { * @return List */ List getRoleIdsByPositionIds(List positionIds); + + /** + * 通过roleId查询岗位ID列表 + * @param roleId:角色ID + * @return List + */ + @Select("select position_id from ts_position_role where role_id=#{roleId}") + List getPositionIdsByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java index 5691afd3..79565b95 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -66,4 +66,11 @@ public interface ITsPositionService extends IService { * @return List */ List getRoleIdsByPositionIds(List positionIds); + + /** + * 通过roleId查询岗位ID列表 + * @param roleId:角色ID + * @return List + */ + List getPositionIdsByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index ea291337..9ac99608 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -147,4 +147,14 @@ public class TsPositionServiceImpl extends ServiceImpl + */ + @Override + public List getPositionIdsByRoleId(String roleId) { + return tsPositionDao.getPositionIdsByRoleId(roleId); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java index 3b573f32..3c7ad27e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -24,7 +24,7 @@ import java.util.List; */ @RestController @Api(tags = "资源管理") -@RequestMapping("/sarResource/ts-resource") +@RequestMapping("/api/sarResource/ts-resource") public class TsResourceController extends BaseController { @Autowired private ITsResourceService tsResourceService; @@ -50,7 +50,7 @@ public class TsResourceController extends BaseController { @ApiOperation("删除资源") @DeleteMapping - public ResponseMessage delResource(@RequestParam Integer resourceId){ + public ResponseMessage delResource(@RequestParam String resourceId){ return tsResourceService.delResource(resourceId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java index 5a260a74..0dfe5a24 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -22,7 +22,7 @@ public interface ITsResourceService extends IService { ResponseMessage updateResource(TsResource tsResource); - ResponseMessage delResource(Integer resourceId); + ResponseMessage delResource(String resourceId); /** * 通过Ids查询menu diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java index 2638878d..3c284b46 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -84,7 +84,7 @@ public class TsResourceServiceImpl extends ServiceImpl */ @Override - public ResponseMessage delResource(Integer ResourceId) { + public ResponseMessage delResource(String ResourceId) { QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); TsResourceQueryWrapper.eq("parent_id",ResourceId); List children=dao.selectList(TsResourceQueryWrapper); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 387675c5..ccd7b7ff 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -5,15 +5,18 @@ import com.adc.da.http.Result; import com.adc.da.slrs.sarMenu.dao.SarMenuDao; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; +import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; +import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -28,13 +31,15 @@ import java.util.Map; * @author zyl * @since 2021-06-22 */ +@EnableAsync @Service public class TsRoleServiceImpl extends ServiceImpl implements ITsRoleService { @Autowired private TsRoleDao tsRoleDao; @Autowired private ISarMenuService sarMenuService; - + @Autowired + private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 * @return List @@ -170,8 +175,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } } - //修改首页自定义目录 -// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); + sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); return Result.success(); } @@ -223,8 +227,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delResource(tsRoleResourceVO.getRoleId(),menuId); } } - //修改首页自定义目录 -// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); + return Result.success(); } @@ -252,4 +255,6 @@ public class TsRoleServiceImpl extends ServiceImpl implements } + + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java index 73962ead..260e3afd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java @@ -46,4 +46,11 @@ public interface TsUserDao extends BaseMapper { * @return List */ List getUserAndPosition(String institutionId); + + /** + * 通过岗位Id列表查询用户ID列表 + * @param positionIds:岗位ID列表 + * @return List + */ + List getUserIdsByPositionIds(List positionIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 7bb35bd1..00560dd3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -48,4 +48,19 @@ public interface ITsUserService extends IService { List getMenu(); List getResource(); + + /** + * 配置个人菜单 + * @param roleId :角色ID + * @return List + */ + public List getUserIdsByRoleId(String roleId); + + /** + * 通过用户ID查询菜单 + * @param userId:用户ID + * @return List + */ + public List getMenusByUserId(String userId); + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 8ef1a20a..2482934d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -5,7 +5,6 @@ import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; -import com.adc.da.slrs.sarPosition.entity.TsPosition; import com.adc.da.slrs.sarPosition.service.ITsPositionService; import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarResource.service.ITsResourceService; @@ -15,15 +14,12 @@ import com.adc.da.slrs.sarUser.dao.TsUserDao; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.sys.entity.UserEO; -import com.adc.da.util.LoginUserUtil; import com.adc.da.utils.util.ListUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.awt.*; import java.util.List; import java.util.Map; @@ -47,6 +43,8 @@ public class TsUserServiceImpl extends ServiceImpl implements private ISarMenuService sarMenuService; @Autowired private ITsResourceService tsResourceService; +// @Autowired +// private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 通过机构ID查询人员 @@ -123,7 +121,6 @@ public class TsUserServiceImpl extends ServiceImpl implements public List getMenu() { UserEO userEO=UserUtils.getUser(); String userId= userEO.getUsid(); - System.out.println(userId); List positionIds=tsUserDao.selectPositionIds(userId); List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); @@ -144,4 +141,28 @@ public class TsUserServiceImpl extends ServiceImpl implements List resourceIds=tsRoleService.getResourceIdsByRoleIds(roleIds); return tsResourceService.getResourceByIds(resourceIds); } + + /** + * 配置个人菜单 + * @param roleId :角色ID + * @return List + */ + @Override + public List getUserIdsByRoleId(String roleId) { + List positionIds=tsPositionService.getPositionIdsByRoleId(roleId); + return tsUserDao.getUserIdsByPositionIds(positionIds); + } + + /** + * 通过用户ID查询菜单 + * @param userId:用户ID + * @return List + */ + @Override + public List getMenusByUserId(String userId){ + List positionIds=tsUserDao.selectPositionIds(userId); + List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); + return sarMenuService.getMenuByIds(menuIds); + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml index 67b94fdc..158d3b20 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml @@ -36,4 +36,14 @@ on up.position_id=p.id where u.institution_id=#{institutionId} + + From 03162b8e85f62f501baadd3e1fb75488edb325f6 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Thu, 1 Jul 2021 03:31:06 +0000 Subject: [PATCH 40/57] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index d89ffe27..0280f9bd 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root From af2bf00713f2326fba6022ac43dff2a6c1abad4e Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 14:05:27 +0800 Subject: [PATCH 41/57] =?UTF-8?q?fetch:=E8=A7=A3=E5=86=B3=E5=BE=AA?= =?UTF-8?q?=E7=8E=AF=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SarUserPersonalMenuServiceImpl.java | 2 ++ .../com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 2 ++ .../com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index 9cc0e392..b1b3ceae 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -29,6 +30,7 @@ import java.util.*; @Service public class SarUserPersonalMenuServiceImpl extends ServiceImpl implements ISarUserPersonalMenuService { @Autowired + @Lazy private TsUserServiceImpl tsUserService; @Override diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index ccd7b7ff..3db343a2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -16,6 +16,7 @@ import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -39,6 +40,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements @Autowired private ISarMenuService sarMenuService; @Autowired + @Lazy private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 2482934d..dc6b96fa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -17,6 +17,7 @@ import com.adc.da.sys.entity.UserEO; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -38,6 +39,7 @@ public class TsUserServiceImpl extends ServiceImpl implements @Autowired private ITsPositionService tsPositionService; @Autowired + @Lazy private ITsRoleService tsRoleService; @Autowired private ISarMenuService sarMenuService; From d8cbcad8c9d41f5dd6c0a70614e67d0f88fdb145 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 14:19:41 +0800 Subject: [PATCH 42/57] =?UTF-8?q?fetch:=E5=BE=AA=E7=8E=AF=E4=BE=9D?= =?UTF-8?q?=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 3db343a2..17cd2d24 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -39,9 +39,9 @@ public class TsRoleServiceImpl extends ServiceImpl implements private TsRoleDao tsRoleDao; @Autowired private ISarMenuService sarMenuService; - @Autowired - @Lazy - private ISarUserPersonalMenuService sarUserPersonalMenuService; +// @Autowired +// @Lazy +// private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 * @return List @@ -177,7 +177,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } } - sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); +// sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); return Result.success(); } From 462062e6b57ee0b4a12fff3f655ed67691b9d665 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 14:20:18 +0800 Subject: [PATCH 43/57] =?UTF-8?q?fetch:=E5=BE=AA=E7=8E=AF=E4=BE=9D?= =?UTF-8?q?=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 17cd2d24..3db343a2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -39,9 +39,9 @@ public class TsRoleServiceImpl extends ServiceImpl implements private TsRoleDao tsRoleDao; @Autowired private ISarMenuService sarMenuService; -// @Autowired -// @Lazy -// private ISarUserPersonalMenuService sarUserPersonalMenuService; + @Autowired + @Lazy + private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 * @return List @@ -177,7 +177,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } } -// sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); + sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); return Result.success(); } From 086c387165953d1c4ed2a1a0878296c9cc47f3b8 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 18:17:04 +0800 Subject: [PATCH 44/57] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9C=BA=E6=9E=84?= =?UTF-8?q?=E4=BA=BA=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/application-dev.properties | 2 +- .../controller/TsInstitutionController.java | 12 ++ .../sarInstitution/dao/TsInstitutionDao.java | 15 +++ .../entity/InstitutionAndUser.java | 13 ++ .../sarInstitution/entity/TsInstitution.java | 13 +- .../slrs/sarInstitution/entity/TsUserVO.java | 121 ++++++++++++++++++ .../service/ITsInstitutionService.java | 1 + .../impl/TsInstitutionServiceImpl.java | 52 +++++++- .../sarInstitution/TsInstitutionMapper.xml | 24 ++++ .../tsDictionaryType/TsDicTypeMapper.xml | 1 - 10 files changed, 245 insertions(+), 9 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..d89ffe27 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java index bd0a9c4d..53cae48e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -47,6 +47,18 @@ public class TsInstitutionController extends BaseController { return Result.success(institutions); } + + /** + * 查询所有机构和人员 + * @return ResponseMessage> + */ + @ApiOperation("查询所有机构和人员") + @GetMapping("/institutionAndUser") + public ResponseMessage> getInstitutionAndUser(){ + List institutions=tsInstitutionService.getInstitutionAndUser(); + return Result.success(institutions); + } + /** * 查询机构人员 * @param institutionId:机构ID diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java index f1c9ed26..f290b050 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java @@ -1,8 +1,11 @@ package com.adc.da.slrs.sarInstitution.dao; +import com.adc.da.slrs.sarInstitution.entity.InstitutionAndUser; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.List; + /** *

    * Mapper 接口 @@ -13,4 +16,16 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface TsInstitutionDao extends BaseMapper { + /** + * 查询最高级机构及其人员 + * @return List + */ + List selectRootAndUser(); + + /** + * 根据父节点查询机构及其人员 + * @param parentId:父节点Id + * @return List + */ + List selectAndUserByParent(String parentId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java new file mode 100644 index 00000000..08607c1f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import com.adc.da.slrs.sarUser.entity.TsUser; +import lombok.Data; + +import java.util.List; + +@Data +public class InstitutionAndUser { + private TsInstitution institution; + private List users; + private List children; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java index 81976dcf..dcd7e36b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java @@ -1,8 +1,10 @@ package com.adc.da.slrs.sarInstitution.entity; import com.adc.da.base.entity.BaseEntity; +import com.adc.da.slrs.sarUser.entity.TsUser; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonIgnore; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -42,5 +44,14 @@ public class TsInstitution extends BaseEntity { @TableField(exist = false) @ApiModelProperty(value = "子机构") - private List children; + private List children; + + @JsonIgnore + @TableField(exist = false) + @ApiModelProperty(value = "人员") + private List users; + + @TableField(exist = false) + @ApiModelProperty("是否是机构") + private Boolean disabled; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java new file mode 100644 index 00000000..3111f5d9 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java @@ -0,0 +1,121 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import java.sql.Timestamp; +import java.util.List; + +@Data +public class TsUserVO { + public interface disable{ + } + + + @ApiModelProperty(value = "主键Id") + @NotNull(message = "userId不能为空",groups = {disable.class}) + @TableId(value = "USID") + private String id; + + @ApiModelProperty(value = "帐户") + @TableField("ACCOUNT") + private String account; + + @ApiModelProperty(value = "密码") + @TableField("PASSWORD") + private String password; + + @ApiModelProperty(value = "用户姓名") + @TableField("UNAME") + private String name; + + @ApiModelProperty(value = "用户性别(1为男,2为女)") + @TableField("SEX") + private String sex; + + @ApiModelProperty(value = "用户来源") + @TableField("USER_SOURCE") + private String userSource; + + @ApiModelProperty(value = "用户手机号") + @TableField("PHONE") + private String phone; + + @ApiModelProperty(value = "用户状态") + @TableField("STATE") + private String state; + + @ApiModelProperty(value = "用户邮箱") + @TableField("EMAIL") + private String email; + + @ApiModelProperty(value = "所属部门名称") + @TableField("INSTITUTION_NAME") + private String institutionName; + + @ApiModelProperty(value = "所属部门ID") + @TableField("INSTITUTION_ID") + private String institutionId; + + @ApiModelProperty(value = "岗位名") + @TableField("POSITION_NAME") + private String positionName; + + @ApiModelProperty(value = "岗位ID") + @TableField("POSITION_ID") + private String positionId; + + @ApiModelProperty(value = "工号") + @TableField("WORK_NUM") + private String workNum; + + @ApiModelProperty(value = "备注") + @TableField("EXT_INFO") + private String extInfo; + + @TableField("OPER_USER") + private String operUser; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp modifyTime; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "是否禁用(0为未禁用,1为已禁用)") + @NotNull(message = "disableFlag不能为空",groups = {disable.class}) + @TableField("DISABLE_FLAG") + private String disableFlag; + + @ApiModelProperty(value = "是否锁定") + @TableField("UNLOCK_FLAG") + private String unlockFlag; + + @ApiModelProperty(value = "用户类型") + @TableField("USER_TYPE") + private String userType; + + @ApiModelProperty(value = "对接单点登录用户ID") + @TableField("SSO_ID") + private String ssoId; + + @ApiModelProperty(value = "岗位") + @TableField(exist = false) + private List positions; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java index 3d2d7460..cf25a449 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -21,4 +21,5 @@ public interface ITsInstitutionService extends IService { */ List getInstitution(); + List getInstitutionAndUser(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index 4361d532..459111f9 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -2,7 +2,9 @@ package com.adc.da.slrs.sarInstitution.service.impl; import com.adc.da.slrs.sarInstitution.dao.TsInstitutionDao; +import com.adc.da.slrs.sarInstitution.entity.InstitutionAndUser; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; +import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.service.ITsUserService; @@ -11,6 +13,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -40,6 +43,40 @@ public class TsInstitutionServiceImpl extends ServiceImpl + */ + private List recursionGetInstitution(TsInstitution tsInstitution){ + List institutionObject=new ArrayList<>(); + QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); + institutionQueryWrapper.eq("parent_id",tsInstitution.getId()); + institutionQueryWrapper.eq("level",tsInstitution.getLevel()+1); + List tsInstitutions=tsInstitutionDao.selectList(institutionQueryWrapper); + for(TsInstitution tsInstitutionNode:tsInstitutions){ + tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); + institutionObject.add(tsInstitutionNode); + } + return institutionObject; + } + + /** + * 查询所有机构 + */ + @Override + public List getInstitutionAndUser() { + //查询第一层机构 + List institutionRoot=tsInstitutionDao.selectRootAndUser(); + for(TsInstitution tsInstitution:institutionRoot){ + tsInstitution.setDisabled(true); + tsInstitution.setChildren(recursionGetInstitutionAndUser(tsInstitution)); + for(TsUserVO user:tsInstitution.getUsers()){ + tsInstitution.getChildren().add(user); + } + } + return institutionRoot; + } @@ -48,14 +85,17 @@ public class TsInstitutionServiceImpl extends ServiceImpl */ - private List recursionGetInstitution(TsInstitution tsInstitution){ - QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); - institutionQueryWrapper.eq("parent_id",tsInstitution.getId()); - institutionQueryWrapper.eq("level",tsInstitution.getLevel()+1); - List tsInstitutions=tsInstitutionDao.selectList(institutionQueryWrapper); + private List recursionGetInstitutionAndUser(TsInstitution tsInstitution){ + List institutionObject=new ArrayList<>(); + List tsInstitutions=tsInstitutionDao.selectAndUserByParent(tsInstitution.getId()); for(TsInstitution tsInstitutionNode:tsInstitutions){ + tsInstitutionNode.setDisabled(true); tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); + institutionObject.add(tsInstitutionNode); + for(TsUserVO user:tsInstitutionNode.getUsers()){ + tsInstitutionNode.getChildren().add(user); + } } - return tsInstitutions; + return institutionObject; } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml index fc9dcf3d..6c623498 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml @@ -1,5 +1,29 @@ + + + + + + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml index 4f7e14b7..558feffe 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml @@ -24,7 +24,6 @@ from ts_dictionary as t_d left join ts_dictype as t_d_t on t_d.ID=t_d_t.DIC_ID where t_d.ENABLE=0 and - t_d.DICTION_TYPE='SEL_OPTION' and t_d_t.DIC_ID is not null and t_d_t.DIC_TYPE_NAME is not null and t_d.DICTIONARY_NAME is not null From e487fc3a7923f10e87625a7e5ed138b2225b962a Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 02:38:07 +0000 Subject: [PATCH 45/57] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..27f503d9 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -13,7 +13,10 @@ spring.application.name=FotonLAWSSystem application.code=20200101 application.center=1 #============================================== - +#Eruept +eureka.client.allow-redirects=true +eureka.client.register-with-eureka=true +eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ #============================================== # 邮箱配置1 #============================================== From 4a8b94408dce53fedab209ecc48d2d54402738b6 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Fri, 2 Jul 2021 11:02:29 +0800 Subject: [PATCH 46/57] =?UTF-8?q?fetch:=E5=8A=A0=E5=85=A5=E8=B4=9F?= =?UTF-8?q?=E8=BD=BD=E5=9D=87=E8=A1=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/adc/da/main/config/RestTemplateConfig.java | 2 ++ adc-da-main/src/main/resources/application-dev.properties | 4 ++++ .../sarInstitution/service/impl/TsInstitutionServiceImpl.java | 3 ++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 870c415d..bbfe712d 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -2,6 +2,7 @@ package com.adc.da.main.config; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.client.ClientHttpRequestFactory; @@ -23,6 +24,7 @@ public class RestTemplateConfig { private static final Logger logger = LoggerFactory.getLogger(RestTemplateConfig.class); @Bean + @LoadBalanced public RestTemplate restTemplate(ClientHttpRequestFactory factory){ RestTemplate restTemplate = new RestTemplate(factory); // 使用 utf-8 编码集的 conver 替换默认的 conver(默认的 string conver 的编码集为"ISO-8859-1") diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index d89ffe27..3b50c583 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -13,6 +13,10 @@ spring.application.name=FotonLAWSSystem application.code=20200101 application.center=1 #============================================== +#Eruept +eureka.client.allow-redirects=true +eureka.client.register-with-eureka=true +eureka.client.service-url.defaultZone=http://127.0.0.1:8671/eureka/ #============================================== # 邮箱配置1 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index 459111f9..0da4f112 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -88,9 +88,10 @@ public class TsInstitutionServiceImpl extends ServiceImpl recursionGetInstitutionAndUser(TsInstitution tsInstitution){ List institutionObject=new ArrayList<>(); List tsInstitutions=tsInstitutionDao.selectAndUserByParent(tsInstitution.getId()); + for(TsInstitution tsInstitutionNode:tsInstitutions){ tsInstitutionNode.setDisabled(true); - tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); + tsInstitutionNode.setChildren(recursionGetInstitutionAndUser(tsInstitutionNode)); institutionObject.add(tsInstitutionNode); for(TsUserVO user:tsInstitutionNode.getUsers()){ tsInstitutionNode.getChildren().add(user); From 6c56c8ba29d38ee5ca7b5849944b6cb2cbd2ab20 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:04:04 +0000 Subject: [PATCH 47/57] Update RestTemplateConfig.java --- .../src/main/java/com/adc/da/main/config/RestTemplateConfig.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 870c415d..856f4c98 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -23,6 +23,7 @@ public class RestTemplateConfig { private static final Logger logger = LoggerFactory.getLogger(RestTemplateConfig.class); @Bean + @LoadBalanced public RestTemplate restTemplate(ClientHttpRequestFactory factory){ RestTemplate restTemplate = new RestTemplate(factory); // 使用 utf-8 编码集的 conver 替换默认的 conver(默认的 string conver 的编码集为"ISO-8859-1") From 062d9487198ee65b3269dcaa7b97292f865c48f4 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:06:30 +0000 Subject: [PATCH 48/57] Update RestTemplateConfig.java --- .../src/main/java/com/adc/da/main/config/RestTemplateConfig.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 856f4c98..1ec6e874 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -6,6 +6,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.client.ClientHttpRequestFactory; import org.springframework.http.client.SimpleClientHttpRequestFactory; +import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.web.client.RestTemplate; From eb5f2a9e873962db831a0596a6e81e542e39a136 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:14:22 +0000 Subject: [PATCH 49/57] Update RestTemplateConfig.java --- .../src/main/java/com/adc/da/main/config/RestTemplateConfig.java | 1 - 1 file changed, 1 deletion(-) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 1ec6e874..b77dfe97 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -24,7 +24,6 @@ public class RestTemplateConfig { private static final Logger logger = LoggerFactory.getLogger(RestTemplateConfig.class); @Bean - @LoadBalanced public RestTemplate restTemplate(ClientHttpRequestFactory factory){ RestTemplate restTemplate = new RestTemplate(factory); // 使用 utf-8 编码集的 conver 替换默认的 conver(默认的 string conver 的编码集为"ISO-8859-1") From 64e95dc4a6f758aafb7ae6d7355f884a91d50899 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:28:49 +0000 Subject: [PATCH 50/57] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 27f503d9..0280f9bd 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -13,10 +13,7 @@ spring.application.name=FotonLAWSSystem application.code=20200101 application.center=1 #============================================== -#Eruept -eureka.client.allow-redirects=true -eureka.client.register-with-eureka=true -eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ + #============================================== # 邮箱配置1 #============================================== From 8e5b8bb239a069b72e9aee0c583643f209078d2c Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:29:41 +0000 Subject: [PATCH 51/57] Update application.properties --- adc-da-main/src/main/resources/application.properties | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index 4cb8be56..fb1168dc 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -28,16 +28,19 @@ logging.level.org.springframework=info # 请求前缀 restPath=/api #server.servlet.context-path=/api - +#Eruept +eureka.client.allow-redirects=true +eureka.client.register-with-eureka=true +eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ #是否将自己注册到Eureka Server上,默认为true -eureka.client.register-with-eureka=false +#eureka.client.register-with-eureka=false ##是否从Eureka Server上获取注册信息,默认为true -eureka.client.fetch-registry=false +#eureka.client.fetch-registry=false #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ #eureka.client.service-url.defaultZone=http://127.0.0.1:8671/eureka/ #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ -eureka.client.service-url.defaultZone=http://127.0.0.1:8761/eureka/ +#eureka.client.service-url.defaultZone=http://127.0.0.1:8761/eureka/ # 请求连接的超时时间 默认的时间为 1 秒 ribbon.ConnectTimeout=500000 # 请求处理的超时时间 From afee88a408a9a2a75ad84264d6f60b1c56611950 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Fri, 2 Jul 2021 17:32:26 +0800 Subject: [PATCH 52/57] =?UTF-8?q?fetch:=E8=B5=84=E6=BA=90=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/application-dev.properties | 14 ++--- .../impl/SarUserPersonalMenuServiceImpl.java | 2 +- .../controller/TsResourceController.java | 4 +- .../slrs/sarResource/entity/TsResource.java | 59 +++++++++++++++---- .../service/ITsResourceService.java | 5 +- .../service/impl/TsResourceServiceImpl.java | 18 ++++-- .../sarRole/controller/TsRoleController.java | 9 ++- .../adc/da/slrs/sarRole/entity/TsRole.java | 4 ++ .../service/impl/TsRoleServiceImpl.java | 2 +- .../sarUser/controller/TsUserController.java | 4 +- .../slrs/sarUser/service/ITsUserService.java | 2 +- .../service/impl/TsUserServiceImpl.java | 5 +- 12 files changed, 91 insertions(+), 37 deletions(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 3b50c583..f952ebd8 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -14,8 +14,8 @@ application.code=20200101 application.center=1 #============================================== #Eruept -eureka.client.allow-redirects=true -eureka.client.register-with-eureka=true +eureka.client.allow-redirects=false +eureka.client.register-with-eureka=false eureka.client.service-url.defaultZone=http://127.0.0.1:8671/eureka/ #============================================== @@ -35,11 +35,11 @@ spring.mail.port=587 # ============================================== # rabbitMQ # ============================================== -spring.rabbitmq.host=rabbitmq-cluster-01.vs.test.geely.svc -spring.rabbitmq.port=5672 -spring.rabbitmq.virtual-host=uat_pcms -spring.rabbitmq.username=uat_pcms -spring.rabbitmq.password=VxsBLL5bJruwzXfS +#spring.rabbitmq.host=rabbitmq-cluster-01.vs.test.geely.svc +#spring.rabbitmq.port=5672 +#spring.rabbitmq.virtual-host=uat_pcms +#spring.rabbitmq.username=uat_pcms +#spring.rabbitmq.password=VxsBLL5bJruwzXfS # spring.rabbitmq.publisher-confirms=true # ============================================== diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index b1b3ceae..79226046 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -39,7 +39,7 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl queryWrapper=new QueryWrapper<>(); - queryWrapper.eq("user_id",queryWrapper); + queryWrapper.eq("user_id",eo.getUserId()); if(eo.getMenuUrl()!=null)queryWrapper.eq("menu_url",eo.getMenuUrl()); if(eo.getMenuName()!=null&&eo.getMenuName().trim().length()>0)queryWrapper.like("menu_name",eo.getMenuName().trim()); if(eo.getState()!=null)queryWrapper.eq("state",eo.getState()); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java index 3c7ad27e..f287dc62 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -31,8 +31,8 @@ public class TsResourceController extends BaseController { @ApiOperation("查询所有资源") @GetMapping - public ResponseMessage> getAll(){ - List tsResources=tsResourceService.getAll(); + public ResponseMessage> getAll(TsResource tsResource){ + List tsResources=tsResourceService.getAll(tsResource); return Result.success(tsResources); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java index 4cddc2ef..f950192c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java @@ -1,6 +1,9 @@ package com.adc.da.slrs.sarResource.entity; import com.adc.da.base.entity.BaseEntity; +import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.utils.treetool.annotation.TreeNodeName; +import com.adc.da.utils.treetool.annotation.TreeNodeParentId; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; @@ -11,6 +14,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import javax.validation.constraints.NotNull; +import java.util.Date; import java.util.List; /** @@ -31,23 +35,54 @@ public class TsResource extends BaseEntity { private static final long serialVersionUID = 1L; - @ApiModelProperty(value = "路径") - private String href; - @ApiModelProperty(value = "父节点ID") - private String parentId; - @ApiModelProperty(value = "资源名称") - private String name; - - @TableId(type = IdType.UUID) - @NotNull(message = "id不能为空",groups = {update.class}) - @ApiModelProperty(value = "ID") + @NotNull(message = "id不能为空",groups = {SarMenu.update.class}) + @ApiModelProperty(value = "主键") + @TableId(value = "ID",type = IdType.UUID) private String id; + @ApiModelProperty(value = "标准法规划分") + @TableField("SOR_DIVIDE") + private String sorDivide; + + @TreeNodeName + @ApiModelProperty(value = "目录名称") + @TableField("MENU_NAME") + private String menuName; + + @TreeNodeParentId + @ApiModelProperty(value = "父级ID") + @TableField("PARENT_ID") + private String parentId; + + @ApiModelProperty(value = "父级ID集合") + @TableField("PARENT_IDS") + private String parentIds; + + @ApiModelProperty(value = "排序序号") + @TableField("DISPLAY_SEQ") + private Integer displaySeq; + + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private Integer validFlag; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + private Date creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + private Date modifyTime; + + @ApiModelProperty(value = "备注") + @TableField("REMARKS") + private String remarks; + + @ApiModelProperty(value = "子菜单") @TableField(exist = false) - @ApiModelProperty("子节点") private List children; - } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java index 0dfe5a24..ba1d7fe4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -16,7 +16,7 @@ import java.util.List; */ public interface ITsResourceService extends IService { - List getAll(); + List getAll(TsResource tsResource); ResponseMessage addResource(TsResource tsResource); @@ -27,7 +27,8 @@ public interface ITsResourceService extends IService { /** * 通过Ids查询menu * @param resourceIds :菜单Ids + * @param sorDivide * @return List */ - List getResourceByIds(List resourceIds); + List getResourceByIds(List resourceIds, String sorDivide); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java index 3c284b46..e15836fb 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -28,12 +28,16 @@ public class TsResourceServiceImpl extends ServiceImpl getAll() { - QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); - TsResourceQueryWrapper.isNull("PARENT_ID"); - List TsResources=dao.selectList(TsResourceQueryWrapper); + public List getAll(TsResource tsResource) { + QueryWrapper tsResourceQueryWrapper=new QueryWrapper<>(); + if(tsResource.getSorDivide()!=null){ + tsResourceQueryWrapper.eq("sor_divide",tsResource.getSorDivide()); + } + tsResourceQueryWrapper.isNull("PARENT_ID"); + List TsResources=dao.selectList(tsResourceQueryWrapper); for(TsResource TsResource:TsResources){ TsResource.setChildren(recursionGetChildren((TsResource))); } @@ -98,12 +102,16 @@ public class TsResourceServiceImpl extends ServiceImpl */ @Override - public List getResourceByIds(List resourceIds) { + public List getResourceByIds(List resourceIds, String sorDivide) { if(resourceIds!=null&&resourceIds.size()>0){ QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + if(sorDivide!=null){ + TsResourceQueryWrapper.eq("sor_divide",sorDivide); + } TsResourceQueryWrapper.in("id",resourceIds); return dao.selectList(TsResourceQueryWrapper); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index d29f9159..3f33c2cd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -52,7 +52,7 @@ public class TsRoleController extends BaseController { @ApiOperation("新增角色") @PostMapping - public ResponseMessage addRole(@Validated(TsRole.insert.class) TsRole tsRole){ + public ResponseMessage addRole(@Validated(TsRole.insert.class) @RequestBody TsRole tsRole){ //设置操作人 UserEO userEO=UserUtils.getUser(); tsRole.setOperator(userEO.getUname()); @@ -61,10 +61,11 @@ public class TsRoleController extends BaseController { @ApiOperation("编辑角色") @PutMapping - public ResponseMessage updateRole(@Validated(TsRole.update.class) TsRole tsRole){ + public ResponseMessage updateRole(@Validated(TsRole.update.class)@RequestBody TsRole tsRole){ //设置操作人 UserEO userEO=UserUtils.getUser(); tsRole.setOperator(userEO.getUname()); + System.out.println(tsRole); return tsRoleService.updateRole(tsRole); } @@ -84,6 +85,10 @@ public class TsRoleController extends BaseController { @GetMapping("/id") public ResponseMessage getRoleById(@RequestParam String roleId){ TsRole tsRole=tsRoleService.getById(roleId); + if(tsRole.getParentId()!=null){ + TsRole parent=tsRoleService.getById(tsRole.getParentId()); + tsRole.setParent(parent.getName()); + } return Result.success(tsRole); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java index 3745aeaa..a2a705b2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRole.java @@ -119,5 +119,9 @@ public class TsRole extends BaseEntity { @TableField(exist = false) private List children; + @ApiModelProperty("父节点名称") + @TableField(exist = false) + private String parent; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 3db343a2..fc4d2e8d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -115,7 +115,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements */ @Override public ResponseMessage updateRole(TsRole tsRole) { - TsRole oldRole=tsRoleDao.selectById(tsRole.getParentId()); + TsRole oldRole=tsRoleDao.selectById(tsRole.getId()); if(oldRole==null){ return Result.error("该角色不存在"); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index 8aec0495..32a5091a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -58,8 +58,8 @@ public class TsUserController extends BaseController { @ApiOperation("查询当前登录用户资源") @GetMapping("/resource") - public ResponseMessage> getResource(){ - List resources=tsUserService.getResource(); + public ResponseMessage> getResource(TsResource tsResource){ + List resources=tsUserService.getResource(tsResource); return Result.success(resources); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 00560dd3..7e84c625 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -47,7 +47,7 @@ public interface ITsUserService extends IService { */ List getMenu(); - List getResource(); + List getResource(TsResource tsResource); /** * 配置个人菜单 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index dc6b96fa..7f732335 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -132,16 +132,17 @@ public class TsUserServiceImpl extends ServiceImpl implements /** * 查询当前登录的用户资源 * @return List + * @param tsResource */ @Override - public List getResource() { + public List getResource(TsResource tsResource) { UserEO userEO=UserUtils.getUser(); String userId= userEO.getUsid(); System.out.println(userId); List positionIds=tsUserDao.selectPositionIds(userId); List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); List resourceIds=tsRoleService.getResourceIdsByRoleIds(roleIds); - return tsResourceService.getResourceByIds(resourceIds); + return tsResourceService.getResourceByIds(resourceIds,tsResource.getSorDivide()); } /** From 3e69a462b0609619242e4ea5410621ab1bd05201 Mon Sep 17 00:00:00 2001 From: 2510220824 <2510220824@qq.com> Date: Sun, 4 Jul 2021 13:57:56 +0800 Subject: [PATCH 53/57] =?UTF-8?q?add:IDM=E7=BB=84=E7=BB=87=E3=80=81?= =?UTF-8?q?=E4=BA=BA=E5=91=98=E6=95=B0=E6=8D=AE=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adc-da-sys/pom.xml | 21 ++++ .../sync/controller/TestSyncController.java | 30 ++++++ .../adc/da/sync/service/SyncUserService.java | 100 ++++++++++++++++++ .../java/com/adc/da/sync/util/AuthUtils.java | 78 ++++++++++++++ 4 files changed, 229 insertions(+) create mode 100644 adc-da-sys/src/main/java/com/adc/da/sync/controller/TestSyncController.java create mode 100644 adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java create mode 100644 adc-da-sys/src/main/java/com/adc/da/sync/util/AuthUtils.java diff --git a/adc-da-sys/pom.xml b/adc-da-sys/pom.xml index 66956665..d199fc22 100644 --- a/adc-da-sys/pom.xml +++ b/adc-da-sys/pom.xml @@ -33,6 +33,27 @@ adc-da-base 3.0.0 + + org.apache.httpcomponents + httpclient + 4.5.2 + + + commons-codec + commons-codec + 1.10 + + + org.apache.commons + commons-lang3 + 3.4 + + + net.sf.json-lib + json-lib + 2.4 + jdk15 + diff --git a/adc-da-sys/src/main/java/com/adc/da/sync/controller/TestSyncController.java b/adc-da-sys/src/main/java/com/adc/da/sync/controller/TestSyncController.java new file mode 100644 index 00000000..07dcc3bd --- /dev/null +++ b/adc-da-sys/src/main/java/com/adc/da/sync/controller/TestSyncController.java @@ -0,0 +1,30 @@ +package com.adc.da.sync.controller; + +import com.adc.da.sync.service.SyncUserService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/${restPath}/sync") +@Api(tags = "数据同步管理") +public class TestSyncController { + + @Autowired + private SyncUserService syncUserService; + + @ApiOperation(value = "福田IDM用户数据同步") + @GetMapping("/syncUser") + public void syncUser() throws Exception { + syncUserService.syncFotonUser(); + } + + @ApiOperation(value = "福田IDM组织数据同步") + @GetMapping("/syncOrg") + public void syncOrg() throws Exception { + syncUserService.syncFotonOrg(); + } +} diff --git a/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java b/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java new file mode 100644 index 00000000..defd0c5c --- /dev/null +++ b/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java @@ -0,0 +1,100 @@ +package com.adc.da.sync.service; + +import com.adc.da.sync.util.AuthUtils; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import net.sf.json.JSONSerializer; +import org.apache.commons.codec.binary.Base64; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; + +@Service("syncUserService") +@Slf4j +public class SyncUserService { + + + /** + * 同步福田IDM数据 + * @throws Exception + */ + public void syncFotonUser()throws Exception{ + String appuser = "wsuser"; + String appkey = "o1bnrph3pe6i63txm3z5l3cnka2a82pi"; + AuthUtils util = new AuthUtils(appuser, appkey, null); + + byte[] cookie = null; + do { + Map params = new HashMap(); + params.put("cookie", Base64.encodeBase64String(cookie)); + params.put("timestamp", "20141125065609Z"); + + // 用户参数 + params.put("filter", "(userid=*)"); + params.put("basedn", "ou=People,o=foton.com.cn,o=isp"); + System.out.println("RequestBody:" + params.toString()); + // 用户测试 + String rs = util.getResponseFromServer("http://172.24.224.42:82/rest/users/getUserList", params); + System.err.println(rs); + + JSONObject responseStr = (JSONObject) JSONSerializer.toJSON(rs); + + if (responseStr.containsKey("cookie")) { + try { + JSONArray entries = responseStr.getJSONArray("cookie"); + cookie = new byte[entries.size()]; + for (int i = 0; i < entries.size(); i++) { + cookie[i] = (byte) entries.getByte(i); + } + } catch (Exception e) { + if (e.getMessage().contains("is not a JSONArray")) { + cookie = null; + } + } + } + + } while (cookie != null); + } + + + + public void syncFotonOrg()throws Exception{ + String appuser = "wsuser"; + String appkey = "o1bnrph3pe6i63txm3z5l3cnka2a82pi"; + AuthUtils util = new AuthUtils(appuser, appkey, null); + + byte[] cookie = null; + do { + Map params = new HashMap(); + params.put("cookie", Base64.encodeBase64String(cookie)); + params.put("timestamp", "20141125065609Z"); + + // 组织参数 + params.put("filter", "(orgNumber=*)"); + params.put("basedn", "ou=Organizations,o=foton.com.cn,o=isp"); + // 组织测试 + String rs = util.getResponseFromServer("http://172.24.224.42:82/rest/orgs/getOrgList", params); + System.err.println(rs); + + + JSONObject responseStr = (JSONObject) JSONSerializer.toJSON(rs); + + if (responseStr.containsKey("cookie")) { + try { + JSONArray entries = responseStr.getJSONArray("cookie"); + cookie = new byte[entries.size()]; + for (int i = 0; i < entries.size(); i++) { + cookie[i] = (byte) entries.getByte(i); + } + } catch (Exception e) { + if (e.getMessage().contains("is not a JSONArray")) { + cookie = null; + } + } + } + + } while (cookie != null); + } +} diff --git a/adc-da-sys/src/main/java/com/adc/da/sync/util/AuthUtils.java b/adc-da-sys/src/main/java/com/adc/da/sync/util/AuthUtils.java new file mode 100644 index 00000000..3a085b1f --- /dev/null +++ b/adc-da-sys/src/main/java/com/adc/da/sync/util/AuthUtils.java @@ -0,0 +1,78 @@ +package com.adc.da.sync.util; + +import net.sf.json.JSONObject; +import org.apache.commons.codec.digest.DigestUtils; +import org.apache.commons.lang3.RandomStringUtils; +import org.apache.commons.lang3.StringUtils; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.client.methods.HttpUriRequest; +import org.apache.http.client.utils.HttpClientUtils; +import org.apache.http.entity.ByteArrayEntity; +import org.apache.http.entity.ContentType; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; + +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Map; + +public class AuthUtils { + + private static SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss'Z'"); + + private final String appuser; + private final String appkey; + private final String appinfo; + + public AuthUtils(String appuser, String appkey, String appinfo) { + this.appuser = appuser; + this.appkey = appkey; + this.appinfo = appinfo; + } + + public String getResponseFromServer(String url, Map params) throws Exception { + HttpPost httpPost = new HttpPost(url); + createSignHeader(httpPost, params); + JSONObject object = JSONObject.fromObject(params); + httpPost.setEntity(new ByteArrayEntity(object.toString().getBytes(), ContentType.APPLICATION_JSON)); + return execute(httpPost); + } + + private String execute(HttpUriRequest request) throws Exception { + CloseableHttpClient client = null; + CloseableHttpResponse resp = null; + try { + client = HttpClientBuilder.create().build(); + resp = client.execute(request); + return EntityUtils.toString(resp.getEntity()); + } finally { + HttpClientUtils.closeQuietly(resp); + HttpClientUtils.closeQuietly(client); + } + } + + private void createSignHeader(HttpUriRequest request, Map params) throws Exception { + request.addHeader("appuser", appuser); + + String randomcode = RandomStringUtils.random(10, true, true); + request.addHeader("randomcode", randomcode); + + Calendar now = Calendar.getInstance(); + String timestamp = sdf.format(now.getTime()); + request.addHeader("timestamp", timestamp); + + String data = StringUtils.join(appuser, randomcode, timestamp); + String encodekey = DigestUtils.sha256Hex(StringUtils.join(data, "{", appkey, "}")); + request.addHeader("encodekey", encodekey); + + JSONObject object = JSONObject.fromObject(params); + String paramData = StringUtils.join(object.toString(), "&", appkey); + String signature = DigestUtils.md5Hex(paramData); + request.addHeader("sign", signature); + + request.addHeader("appinfo", appinfo); + request.addHeader("Content-Type", "application/json"); + } +} From 531bb9e7ce370cfee887d6c03796e26a8758211e Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Sun, 4 Jul 2021 16:41:37 +0800 Subject: [PATCH 54/57] =?UTF-8?q?feat=20=E5=90=88=E5=B9=B6=E5=88=86?= =?UTF-8?q?=E6=94=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adc/da/FeignClient/workFlowFeignClient.java | 2 +- .../java/com/adc/da/common/ActDefineStartMap.java | 3 ++- .../src/main/resources/application-dev.properties | 4 ++-- .../src/main/resources/application.properties | 14 +++++++------- .../impl/SarUserPersonalMenuServiceImpl.java | 2 +- .../resources/mybatis/mapper/sys/UserEOMapper.xml | 2 +- 6 files changed, 14 insertions(+), 13 deletions(-) diff --git a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java index 25d62124..4f434007 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java +++ b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java @@ -13,7 +13,7 @@ import java.util.List; import java.util.Map; import java.util.Set; -@FeignClient(value = "bat-wkflow") +@FeignClient(value = "bat-wkflow-zqazqazqa") public interface workFlowFeignClient { @RequestMapping(value = "/bat-wkflow/activiti_define_start_user",method = RequestMethod.GET) diff --git a/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java b/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java index 82c9b863..e1a55922 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java +++ b/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java @@ -15,7 +15,8 @@ public class ActDefineStartMap { Map map = new TreeMap<>(); map.put("1","standardLibraryWkflow"); + map.put("2","standardSurveyWorkFlow"); return map.get(type); } -} +} \ No newline at end of file diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..0e53c800 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -9,7 +9,7 @@ spring.datasource.password = root #============================================== # 应用设置 -spring.application.name=FotonLAWSSystem +spring.application.name=FotonLAWSSystem-zqazqazqa application.code=20200101 application.center=1 #============================================== @@ -36,7 +36,7 @@ spring.rabbitmq.port=5672 spring.rabbitmq.virtual-host=uat_pcms spring.rabbitmq.username=uat_pcms spring.rabbitmq.password=VxsBLL5bJruwzXfS -# spring.rabbitmq.publisher-confirms=true +#spring.rabbitmq.publisher-confirms=true # ============================================== # 文档存储路径指向 diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index fb1168dc..6b97ffad 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -28,19 +28,19 @@ logging.level.org.springframework=info # 请求前缀 restPath=/api #server.servlet.context-path=/api -#Eruept -eureka.client.allow-redirects=true -eureka.client.register-with-eureka=true -eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ + #是否将自己注册到Eureka Server上,默认为true -#eureka.client.register-with-eureka=false +eureka.client.register-with-eureka=true ##是否从Eureka Server上获取注册信息,默认为true -#eureka.client.fetch-registry=false +eureka.client.fetch-registry=true + #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ #eureka.client.service-url.defaultZone=http://127.0.0.1:8671/eureka/ #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ -#eureka.client.service-url.defaultZone=http://127.0.0.1:8761/eureka/ + +eureka.client.service-url.defaultZone=http://192.168.10.47:8761/eureka/ + # 请求连接的超时时间 默认的时间为 1 秒 ribbon.ConnectTimeout=500000 # 请求处理的超时时间 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index b1b3ceae..79226046 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -39,7 +39,7 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl queryWrapper=new QueryWrapper<>(); - queryWrapper.eq("user_id",queryWrapper); + queryWrapper.eq("user_id",eo.getUserId()); if(eo.getMenuUrl()!=null)queryWrapper.eq("menu_url",eo.getMenuUrl()); if(eo.getMenuName()!=null&&eo.getMenuName().trim().length()>0)queryWrapper.like("menu_name",eo.getMenuName().trim()); if(eo.getState()!=null)queryWrapper.eq("state",eo.getState()); diff --git a/adc-da-sys/src/main/resources/mybatis/mapper/sys/UserEOMapper.xml b/adc-da-sys/src/main/resources/mybatis/mapper/sys/UserEOMapper.xml index 2ef62938..8220853c 100644 --- a/adc-da-sys/src/main/resources/mybatis/mapper/sys/UserEOMapper.xml +++ b/adc-da-sys/src/main/resources/mybatis/mapper/sys/UserEOMapper.xml @@ -421,7 +421,7 @@ - select from TS_USER u From 1f9f5ac2fab4c91293fe4be4dd2e239ee4e23cd9 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Sun, 4 Jul 2021 16:45:52 +0800 Subject: [PATCH 55/57] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9C=BA=E6=9E=84?= =?UTF-8?q?=E4=BA=BA=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarMenu/controller/SarMenuController.java | 4 ++++ .../controller/SarStandardsInfoController.java | 1 + .../impl/SarStandardsInfoServiceImpl.java | 10 +++++++++- .../da/slrs/sarUser/service/ITsUserService.java | 1 + .../sarUser/service/impl/TsUserServiceImpl.java | 16 ++++++++++++++++ .../sarStandardsInfo/SarStandardsInfoMapper.xml | 14 +++++++------- 6 files changed, 38 insertions(+), 8 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java index a3cf165f..34537793 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java @@ -58,7 +58,9 @@ public class SarMenuController extends BaseController { for (SarMenu resultMenu : resultList) { if ("gxhbq".equals(resultMenu.getId())) { // 查出配置管理项 + System.out.println(resultMenu); List getDicList = dicTypeEOService.getDicTypeByDicId("ZHFKGAACTNUCN9AR5YBM"); + System.out.println(getDicList); if (getDicList != null && !getDicList.isEmpty()) { for (SelectionResult selectionResult : getDicList) { int i=0; @@ -75,6 +77,8 @@ public class SarMenuController extends BaseController { } } resultList.addAll(listDic); + System.out.println("listDic"); + System.out.println(listDic); return Result.success(resultList); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java index df47c5d5..addbb2e4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java @@ -140,6 +140,7 @@ public class SarStandardsInfoController extends BaseController } } page.setUserId(LoginUserUtil.getUserId()); + System.out.println(page); List rows = sarStandardsInfoEOService.getSarStandardsInfoPage(page); return Result.success(getPageInfo(page.getPager(), rows)); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index b8c0ea03..3c308f23 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -16,6 +16,7 @@ import com.adc.da.slrs.sarLawsInfo.page.SarLawsItemsEOPage; import com.adc.da.slrs.sarLawsInfo.service.ISarLawsInfoService; import com.adc.da.slrs.sarLawsItems.service.ISarLawsItemsService; import com.adc.da.slrs.sarProductStand.dao.SarProductStandDao; +import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarSarAccess.service.ISarSarAccessService; import com.adc.da.slrs.sarSarAccessInfo.dao.SarSarAccessInfoDao; import com.adc.da.slrs.sarStandAttrDetails.dao.SarStandAttrDetailsDao; @@ -38,6 +39,7 @@ import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarStandardsInfo.dao.SarStandardsInfoDao; import com.adc.da.slrs.sarStandardsInfo.service.ISarStandardsInfoService; import com.adc.da.slrs.sarUpdLog.service.ISarUpdLogService; +import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.slrs.sysInfo.service.SysInfoEOService; import com.adc.da.sys.common.SelectionResult; import com.adc.da.sys.constant.ValueStateEnum; @@ -151,6 +153,9 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getSarStandardsInfoPage(SarStandardsInfoEOPage page) throws Exception { //查询当前登录人角色拥有权限的菜单 - List getMenuIdList = sarMenuEOService.queryRoleMenuIdList(page.getStandType() + "_STAND", null); + List getMenuIdList=tsUserService.getResourceId(new TsResource()); +// List getMenuIdList = sarMenuEOService.queryRoleMenuIdList(page.getStandType() + "_STAND", null); + System.out.println("菜单"); + System.out.println(getMenuIdList); if (getMenuIdList != null && !getMenuIdList.isEmpty()) { page.setMenuRoleList(getMenuIdList); } else { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 7e84c625..feb7c4db 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -63,4 +63,5 @@ public interface ITsUserService extends IService { */ public List getMenusByUserId(String userId); + List getResourceId(TsResource tsResource); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 7f732335..8fe1f319 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -168,4 +168,20 @@ public class TsUserServiceImpl extends ServiceImpl implements List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); return sarMenuService.getMenuByIds(menuIds); } + + /** + * 查询当前登录的用户资源 + * @return List + * @param tsResource + */ + @Override + public List getResourceId(TsResource tsResource) { + UserEO userEO=UserUtils.getUser(); + String userId= userEO.getUsid(); + System.out.println(userId); + List positionIds=tsUserDao.selectPositionIds(userId); + List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + return tsRoleService.getResourceIdsByRoleIds(roleIds); + + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml index e725b2f7..67aec86e 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml @@ -381,7 +381,7 @@ left join TS_DICTYPE dicstandNature on (dicstandNature.dic_type_code = SAR_STANDARDS_INFO.stand_nature and dicstandNature.dic_id is not null and dicstandNature.valid_flag = 0 ) left join SAR_STAND_MENU ON SAR_STANDARDS_INFO.id = SAR_STAND_MENU.stand_id - left join SAR_MENU on SAR_STAND_MENU.menu_id = SAR_MENU.id + left join TS_RESOURCE on SAR_STAND_MENU.menu_id = TS_RESOURCE.id left join SAR_STAND_ATTR_INFO on (SAR_STAND_ATTR_INFO.stand_id = SAR_STANDARDS_INFO.id and SAR_STAND_ATTR_INFO.valid_flag=0) left join TS_PERSON_COLLECT on (TS_PERSON_COLLECT.COLLECT_RES_ID = SAR_STANDARDS_INFO.id and TS_PERSON_COLLECT.VALID_FLAG=0) where 1=1 and SAR_STANDARDS_INFO.valid_flag=0 @@ -439,7 +439,7 @@ - + @@ -476,7 +476,7 @@ - + @@ -710,7 +710,7 @@ left join TS_DICTYPE dicstandNature on (dicstandNature.dic_type_code = SAR_STANDARDS_INFO.stand_nature and dicstandNature.dic_id is not null and dicstandNature.valid_flag = 0 ) left join SAR_STAND_MENU ON SAR_STANDARDS_INFO.id = SAR_STAND_MENU.stand_id - left join SAR_MENU on SAR_STAND_MENU.menu_id = SAR_MENU.id + left join TS_RESOURCE on SAR_STAND_MENU.menu_id = TS_RESOURCE.id where SAR_STANDARDS_INFO.id = #{id} GROUP BY @@ -828,7 +828,7 @@ left join TS_DICTYPE dicstandNature on (dicstandNature.dic_type_code = SAR_STANDARDS_INFO.stand_nature and dicstandNature.dic_id is not null and dicstandNature.valid_flag = 0 ) left join SAR_STAND_MENU ON SAR_STANDARDS_INFO.id = SAR_STAND_MENU.stand_id - left join SAR_MENU on SAR_STAND_MENU.menu_id = SAR_MENU.id + left join TS_RESOURCE on SAR_STAND_MENU.menu_id = TS_RESOURCE.id left join SAR_STAND_ATTR_INFO on (SAR_STAND_ATTR_INFO.stand_id = SAR_STANDARDS_INFO.id and SAR_STAND_ATTR_INFO.valid_flag=0) left join TS_PERSON_COLLECT on (TS_PERSON_COLLECT.COLLECT_RES_ID = SAR_STANDARDS_INFO.id and TS_PERSON_COLLECT.VALID_FLAG=0) where 1=1 From 011b5e247a282aaa6ecaaae102dba41ad5efa611 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Mon, 5 Jul 2021 10:32:41 +0800 Subject: [PATCH 56/57] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TsInstitutionController.java | 14 +++++++--- .../sarInstitution/dao/TsInstitutionDao.java | 6 +++++ .../entity/SyncInstitution.java | 27 +++++++++++++++++++ .../sarInstitution/entity/TsInstitution.java | 9 +++++++ .../service/ITsInstitutionService.java | 12 +++++++++ .../impl/TsInstitutionServiceImpl.java | 25 +++++++++++++++++ .../sarInstitution/TsInstitutionMapper.xml | 9 +++++++ .../adc/da/sync/service/SyncUserService.java | 6 +++++ 8 files changed, 104 insertions(+), 4 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/SyncInstitution.java diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java index 53cae48e..ff987ba2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -9,14 +9,12 @@ import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.service.ITsUserService; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.*; import io.swagger.annotations.Api; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; import java.util.List; +import java.util.Map; /** @@ -70,4 +68,12 @@ public class TsInstitutionController extends BaseController { List tsUsers=tsUserService.getUserByInstitutionId(institutionId); return Result.success(tsUsers); } + + @ApiOperation("导入机构数据") + @PostMapping("/import") + public ResponseMessage importInstitution(Map param){ + String json= (String) param.get("json"); + tsInstitutionService.parseInstitution(json); + return Result.success(); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java index f290b050..9b11d375 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java @@ -28,4 +28,10 @@ public interface TsInstitutionDao extends BaseMapper { * @return List */ List selectAndUserByParent(String parentId); + + /** + * 批量插入机构 + * @param tsInstitutions:机构列表 + */ + void batchInsert(List tsInstitutions); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/SyncInstitution.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/SyncInstitution.java new file mode 100644 index 00000000..13006f9e --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/SyncInstitution.java @@ -0,0 +1,27 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +@Data +public class SyncInstitution { + private String orgNumber; + private String orgName; + private String departmentName; + private String orgStatus; + private String orgShortName; + private String parentOrgNumber; + private String orgFullPath; + private String order; + private String modifyTimestamp; + + public static List syncToInstitution(List syncInstitutions){ + List tsInstitutions=new ArrayList<>(); + for(SyncInstitution syncInstitution:syncInstitutions){ + tsInstitutions.add(new TsInstitution(syncInstitution.getOrgNumber(),syncInstitution.getParentOrgNumber(),syncInstitution.getOrgName())); + } + return tsInstitutions; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java index dcd7e36b..5bffb3d0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java @@ -54,4 +54,13 @@ public class TsInstitution extends BaseEntity { @TableField(exist = false) @ApiModelProperty("是否是机构") private Boolean disabled; + + public TsInstitution() { + } + + public TsInstitution(String id, String parentId, String name) { + this.id = id; + this.parentId = parentId; + this.name = name; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java index cf25a449..0fbfb49e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -1,7 +1,11 @@ package com.adc.da.slrs.sarInstitution.service; +import com.adc.da.slrs.sarInstitution.entity.SyncInstitution; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarUser.entity.TsUser; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -22,4 +26,12 @@ public interface ITsInstitutionService extends IService { List getInstitution(); List getInstitutionAndUser(); + + /** + * 批量插入机构 + * @param tsInstitutions:机构列表 + */ + void batchInsert(List tsInstitutions); + + public void parseInstitution(String json); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index 0da4f112..34d82201 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -3,11 +3,16 @@ package com.adc.da.slrs.sarInstitution.service.impl; import com.adc.da.slrs.sarInstitution.dao.TsInstitutionDao; import com.adc.da.slrs.sarInstitution.entity.InstitutionAndUser; +import com.adc.da.slrs.sarInstitution.entity.SyncInstitution; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.service.ITsUserService; +import com.adc.da.sync.service.SyncUserService; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; @@ -78,6 +83,16 @@ public class TsInstitutionServiceImpl extends ServiceImpl tsInstitutions) { + if(tsInstitutions!=null&&tsInstitutions.size()>0){ + tsInstitutionDao.batchInsert(tsInstitutions); + } + } /** @@ -99,4 +114,14 @@ public class TsInstitutionServiceImpl extends ServiceImpl syncInstitutions=results.toJavaList(SyncInstitution.class); + List tsInstitutions=SyncInstitution.syncToInstitution(syncInstitutions); + batchInsert(tsInstitutions); + } + + } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml index 6c623498..b914694b 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml @@ -26,4 +26,13 @@ on i.id=u.institution_id where i.parent_id = #{parentId} + + + insert into ts_institution (id,name,parent_id) values + ( + + #{id},#{name},#{parentId} + + ) + diff --git a/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java b/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java index defd0c5c..2214c03d 100644 --- a/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java +++ b/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java @@ -1,14 +1,18 @@ package com.adc.da.sync.service; + import com.adc.da.sync.util.AuthUtils; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import net.sf.json.JSONSerializer; import org.apache.commons.codec.binary.Base64; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.HashMap; +import java.util.List; import java.util.Map; @Service("syncUserService") @@ -97,4 +101,6 @@ public class SyncUserService { } while (cookie != null); } + + } From 7bb46ef07f05037d95c7b011aa770afc9e45729c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A4=8F=E6=99=96?= Date: Mon, 5 Jul 2021 02:34:45 +0000 Subject: [PATCH 57/57] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index a916e2e4..71ba6318 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root