feat:一般检索、调整标准主计划

This commit is contained in:
yjz
2024-06-19 09:24:33 +08:00
parent 7b5ee59def
commit 28bc40daae
18 changed files with 438 additions and 318 deletions
@@ -10,22 +10,13 @@ public class LawsHomeSearchCommon {
private LawsHomeSearchCommon(){}
/**
* 国内标准
* 外部标准
*/
public static final String LAWS_DOMESTIC_STANDARD = "1";
/**
* 海外标准
*/
public static final String LAWS_OVERSEAS_STANDARD = "2";
/**
* 企业标准
*/
public static final String LAWS_ENTERPRISE_STANDARD = "3";
/**
* 动态消息
*/
public static final String LAWS_NEWS_FEED = "4";
/**
* 操作类型,1add 2update 3delete
*/
@@ -43,14 +34,18 @@ public class LawsHomeSearchCommon {
* 国内标准 表名
*/
public static final String LAWS_DOMESTIC_STANDARD_TABLE_NAME = "laws_domestic_standard";
/**
* 海外标准 表名
*/
public static final String LAWS_OVERSEAS_STANDARD_TABLE_NAME = "laws_overseas_standard";
/**
* 企业标准 表名
*/
public static final String LAWS_ENTERPRISE_STANDARD_TABLE_NAME = "laws_enterprise_standard";
/**
* 检索方式:1:全文检索 2:标题检索
*/
public static final String SEARCH_MODE_1 = "1";
/**
* 企业标准 表名
*/
public static final String SEARCH_MODE_2 = "2";
}
@@ -3,6 +3,7 @@ package com.jero.modules.laws.home.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.CommonConstant;
import com.jero.modules.laws.home.dto.LawsHomeNormalSearchDTO;
import com.jero.modules.laws.home.service.ILawsHomeSearchService;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchStatisticsVO;
@@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
@@ -69,4 +71,11 @@ public class LawsHomeSearchController {
public Result<LawsHomeNormalSearchStatisticsVO> getNormalSearchAllCount(LawsHomeNormalSearchDTO homeNormalSearchDTO) {
return Result.OK(lawsHomeSearchService.getNormalSearchAllCount(homeNormalSearchDTO));
}
@AutoLog(value = "首页-导出", operateType = CommonConstant.OPERATE_TYPE_6)
@ApiOperation(value="首页-导出", notes="首页-导出")
@GetMapping(value = "/normalSearchExportExcel")
public ModelAndView normalSearchExportExcel(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO) {
return lawsHomeSearchService.normalSearchExportExcel(lawsHomeNormalSearchDTO);
}
}
@@ -35,43 +35,38 @@ public class LawsHomeNormalSearchDTO implements Serializable {
@ApiModelProperty(value = "标准状态设置 (1不包含废止标准,2包含废止标准) 默认不包含")
private String standardStateSet;
/**
* 标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)
* 标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)
*/
@ApiModelProperty(value = "标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)")
@ApiModelProperty(value = "标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)")
private String standardClass;
/**
* 动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)
* 动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)")
@ApiModelProperty(value = "动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)")
private String dynamicType;
/**
* 适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)
* 适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)")
@ApiModelProperty(value = "适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)")
private String applicableVehicle;
/**
* 标准类型 只有国内标准法规 数据字典 standard_property (全部传空)
* 标准类型 数据字典 只有外来标准法规:standard_property (全部传空)
*/
@ApiModelProperty(value = "标准类型 只有国内标准法规 数据字典 standard_property (全部传空)")
@ApiModelProperty(value = "标准类型 数据字典 只有外来标准法规:standard_property (全部传空)")
private String standardProperty;
/**
* 状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)
* 状态 数据字典 只有外来标准法规:standard_state (全部传空)
*/
@ApiModelProperty(value = "状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)")
@ApiModelProperty(value = "状态 (数据字典 只有外来标准法规:standard_state (全部传空)")
private String standardState;
/**
* 企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)
* 标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)
*/
@ApiModelProperty(value = "企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)")
private String standardCode;
@ApiModelProperty(value = "标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)")
private String categoryCode;
/**
* 标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)
* 标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)
*/
@ApiModelProperty(value = "标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)")
@ApiModelProperty(value = "标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)")
private String enterpriseStandardState;
/**
* 标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)
*/
@ApiModelProperty(value = "标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)")
private String gradeClassification;
}
@@ -52,45 +52,40 @@ public class LawsHomeNormalSearchHistory implements Serializable {
@ApiModelProperty(value = "资源类型 (数据字典 resource_type (全部传空)")
private String resourceType;
/**
* 标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)
* 标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)
*/
@ApiModelProperty(value = "标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)")
@ApiModelProperty(value = "标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)")
private String standardClass;
/**
* 动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)
* 动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)")
@ApiModelProperty(value = "动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)")
private String dynamicType;
/**
* 适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)
* 适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)")
@ApiModelProperty(value = "适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)")
private String applicableVehicle;
/**
* 标准类型 只有国内标准法规 数据字典 standard_property (全部传空)
* 标准类型 数据字典 只有外来标准法规:standard_property (全部传空)
*/
@ApiModelProperty(value = "标准类型 只有国内标准法规 数据字典 standard_property (全部传空)")
@ApiModelProperty(value = "标准类型 数据字典 只有外来标准法规:standard_property (全部传空)")
private String standardProperty;
/**
* 状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)
* 状态 数据字典 只有外来标准法规:standard_state (全部传空)
*/
@ApiModelProperty(value = "状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)")
@ApiModelProperty(value = "状态 (数据字典 只有外来标准法规:standard_state (全部传空)")
private String standardState;
/**
* 企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)
* 标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)
*/
@ApiModelProperty(value = "企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)")
private String standardCode;
@ApiModelProperty(value = "标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)")
private String categoryCode;
/**
* 标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)
* 标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)
*/
@ApiModelProperty(value = "标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)")
@ApiModelProperty(value = "标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)")
private String enterpriseStandardState;
/**
* 标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)
*/
@ApiModelProperty(value = "标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)")
private String gradeClassification;
/**创建人*/
@ApiModelProperty(value = "创建人")
@@ -2,20 +2,16 @@ package com.jero.modules.laws.home.job;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.common.es.JeroElasticsearchTemplate;
import com.jero.modules.laws.home.common.LawsHomeSearchCommon;
import com.jero.modules.laws.home.enums.HomeSearchEnum;
import com.jero.modules.laws.home.service.ILawsHomeSearchService;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
import com.jero.modules.laws.standard.entity.LawsNewsFeed;
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
import com.jero.modules.laws.standard.service.ILawsNewsFeedService;
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
import io.minio.messages.DeleteRequest;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -26,10 +22,7 @@ import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ForkJoinPool;
import java.util.stream.Collectors;
/**
@@ -64,22 +57,22 @@ public class HomeSearchCheckEsPlanJob implements Job {
Map<String,Integer> mapHash = getTypeCount();
listType.parallelStream().forEach(p->{
switch (p){
// 比对国内标准
// 比对外部标准
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
checkLawsDomesticStandard(resourceType, mapHash);
break;
// 比对国外标准
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
checkLawsOverseasStandard(resourceType, mapHash);
break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
// checkLawsOverseasStandard(resourceType, mapHash);
// break;
// 比对企业标准
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
checkLawsEnterpriseStandard(resourceType, mapHash);
break;
// 比对动态消息
case LawsHomeSearchCommon.LAWS_NEWS_FEED:
checkLawsNewsFeed(resourceType, mapHash);
break;
// case LawsHomeSearchCommon.LAWS_NEWS_FEED:
// checkLawsNewsFeed(resourceType, mapHash);
// break;
default:break;
}
});
@@ -87,19 +80,19 @@ public class HomeSearchCheckEsPlanJob implements Job {
}
private void checkLawsNewsFeed(String resourceType, Map<String, Integer> mapHash) {
List<LawsNewsFeed> listLawsNewsFeed = lawsNewsFeedService.list();
int count4 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_NEWS_FEED, 0);
int m4 = 0;
if(!CollectionUtils.isEmpty(listLawsNewsFeed)){
m4 = listLawsNewsFeed.size();
}
if(count4 != m4 || !StringUtils.isBlank(resourceType)){
removeES(LawsHomeSearchCommon.LAWS_NEWS_FEED);
if(!CollectionUtils.isEmpty(listLawsNewsFeed)){
List<String> listIds = listLawsNewsFeed.stream().map(LawsNewsFeed::getId).collect(Collectors.toList());
addES(listIds, LawsHomeSearchCommon.LAWS_NEWS_FEED);
}
}
// List<LawsNewsFeed> listLawsNewsFeed = lawsNewsFeedService.list();
// int count4 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_NEWS_FEED, 0);
// int m4 = 0;
// if(!CollectionUtils.isEmpty(listLawsNewsFeed)){
// m4 = listLawsNewsFeed.size();
// }
// if(count4 != m4 || !StringUtils.isBlank(resourceType)){
// removeES(LawsHomeSearchCommon.LAWS_NEWS_FEED);
// if(!CollectionUtils.isEmpty(listLawsNewsFeed)){
// List<String> listIds = listLawsNewsFeed.stream().map(LawsNewsFeed::getId).collect(Collectors.toList());
// addES(listIds, LawsHomeSearchCommon.LAWS_NEWS_FEED);
// }
// }
}
private void checkLawsEnterpriseStandard(String resourceType, Map<String, Integer> mapHash) {
@@ -119,19 +112,19 @@ public class HomeSearchCheckEsPlanJob implements Job {
}
private void checkLawsOverseasStandard(String resourceType, Map<String, Integer> mapHash) {
List<LawsOverseasStandard> listLawsOverseasStandard = lawsOverseasStandardService.list();
int count2 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD, 0);
int m2 = 0;
if(!CollectionUtils.isEmpty(listLawsOverseasStandard)){
m2 = listLawsOverseasStandard.size();
}
if(count2 != m2 || !StringUtils.isBlank(resourceType)){
removeES(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD);
if(!CollectionUtils.isEmpty(listLawsOverseasStandard)){
List<String> listIds = listLawsOverseasStandard.stream().map(LawsOverseasStandard::getId).collect(Collectors.toList());
addES(listIds, LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD);
}
}
// List<LawsOverseasStandard> listLawsOverseasStandard = lawsOverseasStandardService.list();
// int count2 = mapHash.getOrDefault(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD, 0);
// int m2 = 0;
// if(!CollectionUtils.isEmpty(listLawsOverseasStandard)){
// m2 = listLawsOverseasStandard.size();
// }
// if(count2 != m2 || !StringUtils.isBlank(resourceType)){
// removeES(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD);
// if(!CollectionUtils.isEmpty(listLawsOverseasStandard)){
// List<String> listIds = listLawsOverseasStandard.stream().map(LawsOverseasStandard::getId).collect(Collectors.toList());
// addES(listIds, LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD);
// }
// }
}
private void checkLawsDomesticStandard(String resourceType, Map<String, Integer> mapHash) {
@@ -169,9 +162,9 @@ public class HomeSearchCheckEsPlanJob implements Job {
List<String> listType = new ArrayList<>();
if(StringUtils.isBlank(resourceType)){
listType.add(LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD);
listType.add(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD);
// listType.add(LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD);
listType.add(LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD);
listType.add(LawsHomeSearchCommon.LAWS_NEWS_FEED);
// listType.add(LawsHomeSearchCommon.LAWS_NEWS_FEED);
}else{
listType.add(resourceType);
}
@@ -36,6 +36,18 @@ public interface LawsHomeSearchMapper extends BaseMapper<LawsHomeNormalSearchHis
@Param(Constants.WRAPPER) QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper,
@Param("userId") String userId,@Param("standardStateSet") String standardStateSet);
/**
* 首页-一般检索(标题)查询 (不分页)
* @author LQT
* @date 2023/11/13 11:55
* @param queryWrapper
* @param userId
* @param standardStateSet
* @return com.baomidou.mybatisplus.core.metadata.IPage<com.jero.modules.laws.home.vo.LawsHomeNormalSearchVO>
*/
List<LawsHomeNormalSearchVO> getPage(@Param(Constants.WRAPPER) QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper,
@Param("userId") String userId,@Param("standardStateSet") String standardStateSet);
/**
* 首页-一般检索(标题)查询国内标准
* @author LQT
@@ -25,15 +25,6 @@
<if test="standardStateSet == 1">
and standard_state != 7
</if>
union all
select id,'2' as resource_type,CONCAT_WS(' ',standard_number,standard_name) AS standard_name,create_time,7 as standard_type_order,
case when standard_state = 5 then 2
when standard_state = 6 then 1
when standard_state = 7 then 3
else 4
end as standard_state_order,
standard_class,null,applicable_vehicle,null,standard_state,null,null,implementation_date
from laws_overseas_standard where del_flag = 0
<if test="standardStateSet == 1">
and standard_state != 7
</if>
@@ -44,18 +35,11 @@
when standard_state = 7 then 3
else 4
end as standard_state_order,
null,null,null,null,standard_state,standard_code,grade_classification,implementation_date
null,null,null,null,standard_state,standard_code,null as grade_classification,implementation_date
from laws_enterprise_standard where del_flag = 0
<if test="standardStateSet == 1">
and standard_state != 9
</if>
union all
select l1.id,'4' as resource_type,dynamic_heading as standard_name,create_time,9 as standard_type_order,
4 AS standard_state_order,
null,null,null,null,null,null,null,null
from laws_news_feed l1
left join laws_push_range l2 on l1.id = l2.unique_relation_flag
where l1.del_flag = 0 and l1.release_status = 1 and (l1.push_range_flag = 2 or (l1.push_range_flag = 1 and l2.user_id = #{userId}))
) as all_data
<where>
${ew.sqlSegment}
@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.laws.home.dto.LawsHomeNormalSearchDTO;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchStatisticsVO;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchVO;
import org.springframework.web.servlet.ModelAndView;
import java.util.List;
/**
* @author lqt
@@ -23,6 +26,16 @@ public interface ILawsHomeSearchService {
*/
IPage<LawsHomeNormalSearchVO> getNormalSearchTitlePage(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO,
Integer pageNo, Integer pageSize);
/**
* 首页-一般检索(标题)查询 (不分页)
* @author LQT
* @date 2023/11/13 11:55
* @param lawsHomeNormalSearchDTO
* @return com.baomidou.mybatisplus.core.metadata.IPage<com.jero.modules.laws.home.vo.LawsHomeNormalSearchVO>
*/
List<LawsHomeNormalSearchVO> getNormalSearchTitleList(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO);
/**
* 首页-一般检索(标题)(数据统计)
* @author LQT
@@ -62,4 +75,11 @@ public interface ILawsHomeSearchService {
* @return void
*/
void updateEsData(String resourceType,String ids,String opType);
/**
* 导出Excel
* @param lawsHomeNormalSearchDTO
* @return
*/
ModelAndView normalSearchExportExcel(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO);
}
@@ -26,10 +26,7 @@ import com.jero.modules.laws.home.enums.HomeSearchEnum;
import com.jero.modules.laws.home.mapper.LawsHomeSearchMapper;
import com.jero.modules.laws.home.service.ILawsHomeNormalSearchHistoryService;
import com.jero.modules.laws.home.service.ILawsHomeSearchService;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchCountVO;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchStatisticsObjVO;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchStatisticsVO;
import com.jero.modules.laws.home.vo.LawsHomeNormalSearchVO;
import com.jero.modules.laws.home.vo.*;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
import com.jero.modules.laws.standard.entity.LawsNewsFeed;
@@ -47,6 +44,10 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.enmus.ExcelType;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jetbrains.annotations.NotNull;
import org.jsoup.Jsoup;
import org.springframework.beans.BeanUtils;
@@ -54,9 +55,12 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ReflectionUtils;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import java.io.UnsupportedEncodingException;
import java.lang.reflect.Field;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.CompletableFuture;
@@ -103,7 +107,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
public static final String RESOURCE_TYPE = "resource_type";
public static final String STANDARD_TYPE = "standard_type";
public static final String CREATE_TIME = "create_time";
public static final String STANDARD_CODE = "standard_code";
public static final String STANDARD_SORT_CODE = "standard_sort_code";
public static final String ENTERPRISE_STANDARD_STATE = "enterprise_standard_state";
public static final String STANDARD_STATE = "standard_state";
public static final String GRADE_CLASSIFICATION = "grade_classification";
@@ -159,6 +163,29 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
return pageList;
}
@Override
public List<LawsHomeNormalSearchVO> getNormalSearchTitleList(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO) {
String searchContent = lawsHomeNormalSearchDTO.getSearchContent();
if (StringUtils.isBlank(searchContent)) {
return new ArrayList<>();
}
if(StringUtils.isBlank(lawsHomeNormalSearchDTO.getStandardStateSet())){
// 默认不包含 废止状态
lawsHomeNormalSearchDTO.setStandardStateSet("1");
}
// 添加检索历史
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
LawsHomeNormalSearchHistory lawsHomeNormalSearchHistory = new LawsHomeNormalSearchHistory();
BeanUtils.copyProperties(lawsHomeNormalSearchDTO,lawsHomeNormalSearchHistory);
lawsHomeNormalSearchHistory.setUserId(loginUser.getId());
lawsHomeNormalSearchHistoryService.save(lawsHomeNormalSearchHistory);
QueryWrapper<LawsHomeNormalSearchDTO> queryWrapper = getQueryWrapperNormal(lawsHomeNormalSearchDTO);
List<LawsHomeNormalSearchVO> list = lawsHomeSearchMapper.getPage(queryWrapper,loginUser.getId(),lawsHomeNormalSearchDTO.getStandardStateSet());
addContent2(searchContent, list);
return list;
}
@NotNull
private QueryWrapper<LawsHomeNormalSearchDTO> getQueryWrapperNormal(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO) {
String[] searchContent = lawsHomeNormalSearchDTO.getSearchContent().split(BLANK_SPACE);
@@ -188,9 +215,9 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getApplicableVehicle()),"instr(concat(',',applicable_vehicle,','),concat(',','" + lawsHomeNormalSearchDTO.getApplicableVehicle() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getStandardProperty()),"instr(concat(',',standard_property,','),concat(',','" + lawsHomeNormalSearchDTO.getStandardProperty() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getStandardState()),"instr(concat(',',standard_state,','), concat(',','" + lawsHomeNormalSearchDTO.getStandardState() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getStandardCode()),"instr(concat(',',standard_code,','),concat(',','" + lawsHomeNormalSearchDTO.getStandardCode() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getCategoryCode()),"instr(concat(',',category_code,','),concat(',','" + lawsHomeNormalSearchDTO.getCategoryCode() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getEnterpriseStandardState()),"instr(concat(',',standard_state,','), concat(',','" + lawsHomeNormalSearchDTO.getEnterpriseStandardState() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getGradeClassification()),"instr(concat(',',grade_classification,','),concat(',','" + lawsHomeNormalSearchDTO.getGradeClassification() + str,0);
// queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getGradeClassification()),"instr(concat(',',grade_classification,','),concat(',','" + lawsHomeNormalSearchDTO.getGradeClassification() + str,0);
queryWrapper.orderByDesc("sort_index");
queryWrapper.orderByAsc("standard_type_order");
@@ -212,20 +239,21 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
for (LawsHomeNormalSearchVO obj : list) {
switch (obj.getResourceType()){
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD: lawsDomesticStandardIds.add(obj.getId());break;
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD: lawsOverseasStandardIds.add(obj.getId());break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD: lawsOverseasStandardIds.add(obj.getId());break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD: lawsEnterpriseStandardIds.add(obj.getId());break;
default:lawsNewsFeedIds.add(obj.getId());break;
}
}
List<LawsDomesticStandard> listLawsDomesticStandard = listLawsDomesticStandard(lawsDomesticStandardIds);
List<LawsOverseasStandard> listLawsOverseasStandard = listLawsOverseasStandard(lawsOverseasStandardIds);
// List<LawsOverseasStandard> listLawsOverseasStandard = listLawsOverseasStandard(lawsOverseasStandardIds);
List<LawsEnterpriseStandard> listLawsEnterpriseStandard = listLawsEnterpriseStandard(lawsEnterpriseStandardIds);
List<LawsNewsFeed> listLawsNewsFeed = listLawsNewsFeed(lawsNewsFeedIds);
LambdaQueryWrapper<LawsTag> query = new LambdaQueryWrapper<>();
query.select(LawsTag::getTableName,LawsTag::getDbFieldName,LawsTag::getDbFieldTxt, LawsTag::getDbType,LawsTag::getDictFieldSearch,LawsTag::getDictTableSearch,LawsTag::getDictTextSearch,LawsTag::getHomeSearchContextOrder);
query.in(LawsTag::getTableName, Arrays.asList(LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD_TABLE_NAME,
LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME,LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD_TABLE_NAME));
// LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME,
LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD_TABLE_NAME));
query.isNotNull(LawsTag::getHomeSearchContextOrder);
query.orderByAsc(LawsTag::getHomeSearchContextOrder);
List<LawsTag> listLawsTag = lawsTagService.list(query);
@@ -236,9 +264,9 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
addLawsDomesticStandard(searchContent, listLawsDomesticStandard, listLawsTag, p);
break;
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
addLawsOverseasStandard(searchContent, listLawsOverseasStandard, listLawsTag, p);
break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
// addLawsOverseasStandard(searchContent, listLawsOverseasStandard, listLawsTag, p);
// break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
addLawsEnterpriseStandard(searchContent, listLawsEnterpriseStandard, listLawsTag, p);
break;
@@ -252,6 +280,57 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
pageList.setRecords(list);
}
private void addContent2(String searchContent, List<LawsHomeNormalSearchVO> list) {
if(CollectionUtils.isEmpty(list)) {
return;
}
List<String> lawsDomesticStandardIds = new ArrayList<>();
List<String> lawsOverseasStandardIds = new ArrayList<>();
List<String> lawsEnterpriseStandardIds = new ArrayList<>();
List<String> lawsNewsFeedIds = new ArrayList<>();
for (LawsHomeNormalSearchVO obj : list) {
switch (obj.getResourceType()){
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD: lawsDomesticStandardIds.add(obj.getId());break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD: lawsOverseasStandardIds.add(obj.getId());break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD: lawsEnterpriseStandardIds.add(obj.getId());break;
default:lawsNewsFeedIds.add(obj.getId());break;
}
}
List<LawsDomesticStandard> listLawsDomesticStandard = listLawsDomesticStandard(lawsDomesticStandardIds);
// List<LawsOverseasStandard> listLawsOverseasStandard = listLawsOverseasStandard(lawsOverseasStandardIds);
List<LawsEnterpriseStandard> listLawsEnterpriseStandard = listLawsEnterpriseStandard(lawsEnterpriseStandardIds);
List<LawsNewsFeed> listLawsNewsFeed = listLawsNewsFeed(lawsNewsFeedIds);
LambdaQueryWrapper<LawsTag> query = new LambdaQueryWrapper<>();
query.select(LawsTag::getTableName,LawsTag::getDbFieldName,LawsTag::getDbFieldTxt, LawsTag::getDbType,LawsTag::getDictFieldSearch,LawsTag::getDictTableSearch,LawsTag::getDictTextSearch,LawsTag::getHomeSearchContextOrder);
query.in(LawsTag::getTableName, Arrays.asList(LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD_TABLE_NAME,
// LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME,
LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD_TABLE_NAME));
query.isNotNull(LawsTag::getHomeSearchContextOrder);
query.orderByAsc(LawsTag::getHomeSearchContextOrder);
List<LawsTag> listLawsTag = lawsTagService.list(query);
long l = System.currentTimeMillis();
list.parallelStream().forEach(p->{
switch (p.getResourceType()){
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
addLawsDomesticStandard(searchContent, listLawsDomesticStandard, listLawsTag, p);
break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
// addLawsOverseasStandard(searchContent, listLawsOverseasStandard, listLawsTag, p);
// break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
addLawsEnterpriseStandard(searchContent, listLawsEnterpriseStandard, listLawsTag, p);
break;
default:
addLawsNewsFeed(searchContent, listLawsNewsFeed, p);
break;
}
});
long l1 = System.currentTimeMillis();
log.info((l1 - l) + "================");
}
private void addLawsNewsFeed(String searchContent, List<LawsNewsFeed> listLawsNewsFeed, LawsHomeNormalSearchVO p) {
if(!CollectionUtils.isEmpty(listLawsNewsFeed)){
Optional<LawsNewsFeed> op = listLawsNewsFeed.stream().filter(o-> Objects.equals(o.getId(),p.getId())).findFirst();
@@ -309,7 +388,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
p.setReleaseDate(obj.getReleaseDate());
// 生成正文
JSONObject json = JSON.parseObject(JSON.toJSONStringWithDateFormat(obj,YYYY_MM_DD));
addContent(p, json,obj, LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME,listLawsTag);
// addContent(p, json,obj, LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME,listLawsTag);
}
}
}
@@ -494,9 +573,9 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getApplicableVehicle()),"instr(concat(',',applicable_vehicle,','),concat(',','" + lawsHomeNormalSearchDTO.getApplicableVehicle() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getStandardProperty()),"instr(concat(',',standard_property,','),concat(',','" + lawsHomeNormalSearchDTO.getStandardProperty() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getStandardState()),"instr(concat(',',standard_state,','),concat(',','" + lawsHomeNormalSearchDTO.getStandardState() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getStandardCode()),"instr(concat(',',standard_code,','),concat(',','" + lawsHomeNormalSearchDTO.getStandardCode() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getCategoryCode()),"instr(concat(',',category_code,','),concat(',','" + lawsHomeNormalSearchDTO.getCategoryCode() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getEnterpriseStandardState()),"instr(concat(',',standard_state,','),concat(',','" + lawsHomeNormalSearchDTO.getEnterpriseStandardState() + str,0);
queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getGradeClassification()),"instr(concat(',',grade_classification,','),concat(',','" + lawsHomeNormalSearchDTO.getGradeClassification() + str,0);
// queryWrapper.gt(!StringUtils.isEmpty(lawsHomeNormalSearchDTO.getGradeClassification()),"instr(concat(',',grade_classification,','),concat(',','" + lawsHomeNormalSearchDTO.getGradeClassification() + str,0);
switch (lawsHomeNormalSearchDTO.getResourceType()){
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
@@ -505,12 +584,12 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
setDict(list1);
count1(list1,obj);
break;
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
queryWrapper.ne(Objects.equals(lawsHomeNormalSearchDTO.getStandardStateSet(),"1"),"standard_state",7);
List<LawsHomeNormalSearchCountVO> list2 = lawsHomeSearchMapper.getCount2(queryWrapper);
setDict(list2);
count2(list2,obj);
break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
// queryWrapper.ne(Objects.equals(lawsHomeNormalSearchDTO.getStandardStateSet(),"1"),"standard_state",7);
// List<LawsHomeNormalSearchCountVO> list2 = lawsHomeSearchMapper.getCount2(queryWrapper);
// setDict(list2);
// count2(list2,obj);
// break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
queryWrapper.ne(Objects.equals(lawsHomeNormalSearchDTO.getStandardStateSet(),"1"),"standard_state",9);
List<LawsHomeNormalSearchCountVO> list3 = lawsHomeSearchMapper.getCount3(queryWrapper);
@@ -529,21 +608,16 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
}
private void count3(List<LawsHomeNormalSearchCountVO> list,LawsHomeNormalSearchStatisticsVO obj) {
// 企业标准代号
List<LawsHomeNormalSearchStatisticsObjVO> list1 = addLawsHomeNormalSearchStatistics(list, "enterprise_standard_code", STANDARD_CODE);
// 标准分类代码
List<LawsHomeNormalSearchStatisticsObjVO> list1 = addLawsHomeNormalSearchStatistics(list, STANDARD_SORT_CODE, STANDARD_SORT_CODE);
if(!CollectionUtils.isEmpty(list1)){
obj.setStandardCode(list1);
obj.setCategoryCode(list1);
}
// 标准状态
List<LawsHomeNormalSearchStatisticsObjVO> list2 = addLawsHomeNormalSearchStatistics(list, ENTERPRISE_STANDARD_STATE, STANDARD_STATE);
if(!CollectionUtils.isEmpty(list2)){
obj.setEnterpriseStandardState(list2);
}
// 标准等级分类
List<LawsHomeNormalSearchStatisticsObjVO> list3 = addLawsHomeNormalSearchStatistics(list,"standard_grade_classify", GRADE_CLASSIFICATION);
if(!CollectionUtils.isEmpty(list3)){
obj.setGradeClassification(list3);
}
}
private void count2(List<LawsHomeNormalSearchCountVO> list,LawsHomeNormalSearchStatisticsVO obj) {
@@ -657,15 +731,12 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
if(!StringUtils.isBlank(homeNormalSearchDTO.getStandardState())){
mapDict.put(STANDARD_STATE,homeNormalSearchDTO.getStandardState());
}
if(!StringUtils.isBlank(homeNormalSearchDTO.getStandardCode())){
mapDict.put(STANDARD_CODE,homeNormalSearchDTO.getStandardCode());
if(!StringUtils.isBlank(homeNormalSearchDTO.getCategoryCode())){
mapDict.put(STANDARD_SORT_CODE,homeNormalSearchDTO.getCategoryCode());
}
if(!StringUtils.isBlank(homeNormalSearchDTO.getEnterpriseStandardState())){
mapDict.put(ENTERPRISE_STANDARD_STATE,homeNormalSearchDTO.getEnterpriseStandardState());
}
if(!StringUtils.isBlank(homeNormalSearchDTO.getGradeClassification())){
mapDict.put(GRADE_CLASSIFICATION,homeNormalSearchDTO.getGradeClassification());
}
JSONObject jsonAll = new JSONObject();
JSONArray queryMapJsonAll = new JSONArray();
JSONArray queryMapJsonDict = new JSONArray();
@@ -699,15 +770,15 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJson);
queryMapJsonDict.add(jsonObject);
}
// 查 (发布状态=1 或者 (发布状态=0 and create_by = 当前登录人))
JSONObject jsonObjectShould = getJsonObject(loginUser);
queryMapJsonDict.add(jsonObjectShould);
// // 查 (发布状态=1 或者 (发布状态=0 and create_by = 当前登录人))
// JSONObject jsonObjectShould = getJsonObject(loginUser);
// queryMapJsonDict.add(jsonObjectShould);
if(StringUtils.isBlank(homeNormalSearchDTO.getStandardStateSet()) || Objects.equals(homeNormalSearchDTO.getStandardStateSet(),"1")){
// 默认不包含 废止状态
JSONArray query = new JSONArray();
query.add(getJSON("1",",7,"));
query.add(getJSON("2",",7,"));
// query.add(getJSON("2",",7,"));
query.add(getJSON("3",",9,"));
JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, query);
queryMapJsonDict.add(jsonObject);
@@ -753,7 +824,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
sort.add(m5);
// 查询字段
List<String> arr = Arrays.asList(CONTENT,"title",RESOURCE_TYPE,"id","release_date");
List<String> arr = Arrays.asList(CONTENT,"title",RESOURCE_TYPE,"id","release_date","standard_state");
IPage page = getIPage(queryMapJsonAll, mapHighlight1,
pageNo, pageSize, sort,arr);
getRecords(page);
@@ -959,7 +1030,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
listField.add(APPLICABLE_VEHICLE);
listField.add(STANDARD_PROPERTY);
listField.add(STANDARD_STATE);
listField.add(STANDARD_CODE);
listField.add(STANDARD_SORT_CODE);
listField.add(ENTERPRISE_STANDARD_STATE);
listField.add(GRADE_CLASSIFICATION);
JSONObject jsonObject = new JSONObject();
@@ -1000,14 +1071,14 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
// 默认不包含 废止状态
JSONArray query = new JSONArray();
query.add(getJSON("1",",7,"));
query.add(getJSON("2",",7,"));
// query.add(getJSON("2",",7,"));
query.add(getJSON("3",",9,"));
JSONObject object = jeroElasticsearchTemplate.buildBoolQuery(null, null, query);
queryAll.add(object);
}
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
JSONObject object = getJsonObject(loginUser);
queryAll.add(object);
// LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// JSONObject object = getJsonObject(loginUser);
// queryAll.add(object);
JSONObject objectAll = jeroElasticsearchTemplate.buildBoolQuery(queryAll,null,null);
jsonObject.put(QUERY,objectAll);
@@ -1025,18 +1096,18 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
addVo(search, list1, standardStateAggs, STANDARD_STATE);
count1(list1,objVo);
break;
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
List<LawsHomeNormalSearchCountVO> list2 = new ArrayList<>();
addVo(search, list2, "standard_class_aggs", STANDARD_CLASS);
addVo(search, list2, "applicable_vehicle_aggs", APPLICABLE_VEHICLE);
addVo(search, list2, standardStateAggs, STANDARD_STATE);
count2(list2,objVo);
break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
// List<LawsHomeNormalSearchCountVO> list2 = new ArrayList<>();
// addVo(search, list2, "standard_class_aggs", STANDARD_CLASS);
// addVo(search, list2, "applicable_vehicle_aggs", APPLICABLE_VEHICLE);
// addVo(search, list2, standardStateAggs, STANDARD_STATE);
// count2(list2,objVo);
// break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
List<LawsHomeNormalSearchCountVO> list3 = new ArrayList<>();
addVo(search, list3, "standard_code_aggs", STANDARD_CODE);
addVo(search, list3, "standard_sort_code_aggs", STANDARD_SORT_CODE);
addVo(search, list3, standardStateAggs, STANDARD_STATE);
addVo(search, list3, "grade_classification_aggs", GRADE_CLASSIFICATION);
// addVo(search, list3, "grade_classification_aggs", GRADE_CLASSIFICATION);
count3(list3,objVo);
break;
default:break;
@@ -1117,15 +1188,15 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
case LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD:
updateLawsDomesticStandardToEs(resourceType,ids,opType);
break;
case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
updateLawsOverseasStandardToEs(resourceType,ids,opType);
break;
// case LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD:
// updateLawsOverseasStandardToEs(resourceType,ids,opType);
// break;
case LawsHomeSearchCommon.LAWS_ENTERPRISE_STANDARD:
updateLawsEnterpriseStandardToEs(resourceType,ids,opType);
break;
case LawsHomeSearchCommon.LAWS_NEWS_FEED:
updateLawsNewsFeedToEs(resourceType,ids,opType);
break;
// case LawsHomeSearchCommon.LAWS_NEWS_FEED:
// updateLawsNewsFeedToEs(resourceType,ids,opType);
// break;
default:break;
}
}catch (Exception e){
@@ -1135,6 +1206,74 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
log.info("================ES更新数据结束=================");
}
@Override
public ModelAndView normalSearchExportExcel(LawsHomeNormalSearchDTO lawsHomeNormalSearchDTO) {
String searchMode = lawsHomeNormalSearchDTO.getSearchMode();
List<LawsHomeNormalSearchExportExcelVO> lawsHomeNormalSearchExportExcelVOList = new ArrayList<>();
List<LawsHomeNormalSearchVO> lawsHomeNormalSearchVOList;
if (LawsHomeSearchCommon.SEARCH_MODE_1.equals(searchMode)){
// 全文检索
IPage<LawsHomeNormalSearchVO> normalSearchAllPage = getNormalSearchAllPage(lawsHomeNormalSearchDTO,
1, 10000);
lawsHomeNormalSearchVOList =
JSON.parseArray(JSON.toJSONString(normalSearchAllPage.getRecords()),
LawsHomeNormalSearchVO.class);
}else {
// 标题检索
lawsHomeNormalSearchVOList =
getNormalSearchTitleList(lawsHomeNormalSearchDTO);
}
for (LawsHomeNormalSearchVO lawsHomeNormalSearchVO : lawsHomeNormalSearchVOList) {
// 处理数据
LawsHomeNormalSearchExportExcelVO lawsHomeNormalSearchExportExcelVO =
new LawsHomeNormalSearchExportExcelVO();
lawsHomeNormalSearchExportExcelVO.setResourceType(lawsHomeNormalSearchVO.getResourceType());
if (LawsHomeSearchCommon.LAWS_DOMESTIC_STANDARD.equals(lawsHomeNormalSearchVO.getResourceType())) {
// 外部标准库
LawsDomesticStandard lawsDomesticStandard =
lawsDomesticStandardService.getOne(new LambdaQueryWrapper<LawsDomesticStandard>()
.select(LawsDomesticStandard::getStandardNumber,
LawsDomesticStandard::getStandardName,
LawsDomesticStandard::getImplementationDate)
.eq(LawsDomesticStandard::getId, lawsHomeNormalSearchVO.getId()));
lawsHomeNormalSearchExportExcelVO.setStandardName(lawsDomesticStandard.getStandardName());
lawsHomeNormalSearchExportExcelVO.setStandardNumber(lawsDomesticStandard.getStandardNumber());
lawsHomeNormalSearchExportExcelVO.setImplementationDate(lawsDomesticStandard.getImplementationDate());
}else {
// 企业标准
LawsEnterpriseStandard lawsEnterpriseStandard =
lawsEnterpriseStandardService.getOne(new LambdaQueryWrapper<LawsEnterpriseStandard>()
.select(LawsEnterpriseStandard::getStandardNumber,
LawsEnterpriseStandard::getStandardName,
LawsEnterpriseStandard::getImplementationDate)
.eq(LawsEnterpriseStandard::getId, lawsHomeNormalSearchVO.getId()));
lawsHomeNormalSearchExportExcelVO.setStandardName(lawsEnterpriseStandard.getStandardName());
lawsHomeNormalSearchExportExcelVO.setStandardNumber(lawsEnterpriseStandard.getStandardNumber());
lawsHomeNormalSearchExportExcelVO.setImplementationDate(lawsEnterpriseStandard.getImplementationDate());
}
lawsHomeNormalSearchExportExcelVOList.add(lawsHomeNormalSearchExportExcelVO);
}
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
try {
mv.addObject("fileName", URLEncoder.encode("一般检索", "UTF-8")); //此处设置的filename无效 ,前端会重更新设置一下
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
mv.addObject("entity", LawsHomeNormalSearchExportExcelVO.class);
//update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
ExportParams exportParams=new ExportParams(null, "一般检索");
exportParams.setType(ExcelType.XSSF);
//update-end--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
mv.addObject("params",exportParams);
mv.addObject(NormalExcelConstants.DATA_LIST, lawsHomeNormalSearchExportExcelVOList);
return mv;
}
private boolean updateLawsDomesticStandardToEs(String resourceType, String ids,String opType) {
// 批量操作
// 从第0个下标开始
@@ -1189,8 +1328,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setApplicableVehicle(lawsDomesticStandard.getApplicableVehicle());
obj.setStandardProperty(lawsDomesticStandard.getStandardProperty());
obj.setStandardState(lawsDomesticStandard.getStandardState());
obj.setPushRangeFlag(2);
obj.setReleaseStatus("1");
// obj.setPushRangeFlag(2);
// obj.setReleaseStatus("1");
List<OSSFile> listFile = getOssFilesLawsDomesticStandard(lawsDomesticStandard);
updateES(opType, obj, listFile, lawsDomesticStandard.getId());
}catch (Exception e){
@@ -1283,8 +1422,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setStandardClass(lawsOverseasStandard.getStandardClass());
obj.setApplicableVehicle(lawsOverseasStandard.getApplicableVehicle());
obj.setStandardState(lawsOverseasStandard.getStandardState());
obj.setPushRangeFlag(2);
obj.setReleaseStatus("1");
// obj.setPushRangeFlag(2);
// obj.setReleaseStatus("1");
List<OSSFile> listFile = getOssFilesLawsOverseasStandard(lawsOverseasStandard);
updateES(opType, obj, listFile, lawsOverseasStandard.getId());
}catch (Exception e){
@@ -1304,7 +1443,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
return listFile;
}
LambdaQueryWrapper<LawsTag> query = new LambdaQueryWrapper<>();
query.eq(LawsTag::getTableName,LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME);
// query.eq(LawsTag::getTableName,LawsHomeSearchCommon.LAWS_OVERSEAS_STANDARD_TABLE_NAME);
query.isNotNull(LawsTag::getHomeSearchFileOrder);
query.orderByAsc(LawsTag::getHomeSearchFileOrder);
List<LawsTag> listLawsTag = lawsTagService.list(query);
@@ -1366,11 +1505,10 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setCreateTime(lawsEnterpriseStandard.getCreateTime());
obj.setReleaseDate(lawsEnterpriseStandard.getReleaseDate());
obj.setStandardState(lawsEnterpriseStandard.getStandardState());
obj.setStandardCode(lawsEnterpriseStandard.getStandardCode());
obj.setCategoryCode(lawsEnterpriseStandard.getCategoryCode());
obj.setEnterpriseStandardState(lawsEnterpriseStandard.getStandardState());
obj.setGradeClassification(lawsEnterpriseStandard.getGradeClassification());
obj.setPushRangeFlag(2);
obj.setReleaseStatus("1");
// obj.setPushRangeFlag(2);
// obj.setReleaseStatus("1");
List<OSSFile> listFile = getOssFilesLawsEnterpriseStandard(lawsEnterpriseStandard);
updateES(opType, obj, listFile, lawsEnterpriseStandard.getId());
}catch (Exception e){
@@ -1426,8 +1564,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
obj.setStandardState("4");
obj.setReleaseDate(lawsNewsFeed.getReleaseTime());
obj.setCreateTime(lawsNewsFeed.getCreateTime());
obj.setPushRangeFlag(lawsNewsFeed.getPushRangeFlag());
obj.setReleaseStatus(String.valueOf(lawsNewsFeed.getReleaseStatus()));
// obj.setPushRangeFlag(lawsNewsFeed.getPushRangeFlag());
// obj.setReleaseStatus(String.valueOf(lawsNewsFeed.getReleaseStatus()));
updateESLawsNewsFeed(opType, lawsNewsFeed, obj);
}catch (Exception e){
log.error(SYNC_ES_ERR,e.getMessage());
@@ -1503,9 +1641,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
map.put(APPLICABLE_VEHICLE, "," + obj.getApplicableVehicle() + ",");
map.put(STANDARD_PROPERTY, "," + obj.getStandardProperty() + ",");
map.put(STANDARD_STATE, "," + obj.getStandardState() + ",");
map.put(STANDARD_CODE,"," + obj.getStandardCode() + ",");
map.put(STANDARD_SORT_CODE,"," + obj.getCategoryCode() + ",");
map.put(ENTERPRISE_STANDARD_STATE,"," + obj.getEnterpriseStandardState() + ",");
map.put(GRADE_CLASSIFICATION,"," + obj.getGradeClassification() + ",");
map.put("release_date",obj.getReleaseDate());
// 没有时间 强行加入最早时间
try {
@@ -1515,8 +1652,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService {
log.error("文档库添加es失败",e);
}
map.put("es_create_time",new Date());
map.put(RELEASE_STATUS,obj.getReleaseStatus());
map.put("push_range_flag",obj.getReleaseStatus());
// map.put(RELEASE_STATUS,obj.getReleaseStatus());
// map.put("push_range_flag",obj.getReleaseStatus());
//添加es
JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(map, SerializerFeature.WriteMapNullValue));
try {
@@ -0,0 +1,46 @@
package com.jero.modules.laws.home.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import java.io.Serializable;
import java.util.Date;
/**
* @ClassName: LawsHomeNormalSearchExportExcelVO
* @Description:
* @Author: yjz
* @Date: 2024-06-18 15:43
* @Version: 1.0
**/
@Data
public class LawsHomeNormalSearchExportExcelVO implements Serializable {
/**
* 资源类型 1:外来标准法规 3:企业标准
*/
@ApiModelProperty(value = "资源类型 1:外来标准法规 3:企业标准")
@Excel(name = "资源类型", replace = {"外来标准法规_1", "企业标准_3"}, width = 20)
private String resourceType;
/**
* 标准编号
*/
@ApiModelProperty(value = "标准编号")
@Excel(name = "标准编号", width = 20)
private String standardNumber;
/**
* 标准名称
*/
@ApiModelProperty(value = "标准名称")
@Excel(name = "标准名称", width = 20)
private String standardName;
/**
* 实施日期
*/
@ApiModelProperty(value = "实施日期")
@Excel(name = "实施日期", width = 20, format = "yyyy-MM-dd")
private Date implementationDate;
}
@@ -15,43 +15,38 @@ import java.util.List;
public class LawsHomeNormalSearchStatisticsVO implements Serializable {
/**
* 标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)
* 标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)
*/
@ApiModelProperty(value = "标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)")
@ApiModelProperty(value = "标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> standardClass;
/**
* 动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)
* 动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)")
@ApiModelProperty(value = "动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> dynamicType;
/**
* 适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)
* 适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)")
@ApiModelProperty(value = "适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> applicableVehicle;
/**
* 标准类型 只有国内标准法规 数据字典 standard_property (全部传空)
* 标准类型 数据字典 只有外来标准法规:standard_property (全部传空)
*/
@ApiModelProperty(value = "标准类型 只有国内标准法规 数据字典 standard_property (全部传空)")
@ApiModelProperty(value = "标准类型 数据字典 只有外来标准法规:standard_property (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> standardProperty;
/**
* 状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)
* 状态 数据字典 只有外来标准法规:standard_state (全部传空)
*/
@ApiModelProperty(value = "状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)")
@ApiModelProperty(value = "状态 (数据字典 只有外来标准法规:standard_state (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> standardState;
/**
* 企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)
* 标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)
*/
@ApiModelProperty(value = "企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> standardCode;
@ApiModelProperty(value = "标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> categoryCode;
/**
* 标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)
* 标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)
*/
@ApiModelProperty(value = "标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)")
@ApiModelProperty(value = "标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> enterpriseStandardState;
/**
* 标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)
*/
@ApiModelProperty(value = "标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)")
private List<LawsHomeNormalSearchStatisticsObjVO> gradeClassification;
}
@@ -21,9 +21,9 @@ public class LawsHomeNormalSearchVO implements Serializable {
@ApiModelProperty(value = "业务id")
private String id;
/**
* 资源类型 1:国内标准法规 2:海外标准法规 3:企业标准 4:动态消息
* 资源类型 1:外来标准法规 3:企业标准
*/
@ApiModelProperty(value = "资源类型 1:国内标准法规 2:海外标准法规 3:企业标准 4:动态消息")
@ApiModelProperty(value = "资源类型 1:外标准法规 3:企业标准")
private String resourceType;
/**
* 标题
@@ -44,45 +44,40 @@ public class LawsHomeNormalSearchVO implements Serializable {
private Date releaseDate;
/**
* 标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)
* 标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)
*/
@ApiModelProperty(value = "标准类别 (数据字典 海外标准法规:standard_type_overseas 国内标准法规:standard_type (全部传空)")
@ApiModelProperty(value = "标准类别 (数据字典 只有外来标准法规:standard_type (全部传空)")
private String standardClass;
/**
* 动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)
* 动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "动力类型 (数据字典 海外标准法规:POWER_TYPE_DOMESTIC_OVERSEAS 国内标准法规:POWER_TYPE_DOMESTIC (全部传空)")
@ApiModelProperty(value = "动力类型 (数据字典 只有外来标准法规:POWER_TYPE_DOMESTIC (全部传空)")
private String dynamicType;
/**
* 适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)
* 适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)
*/
@ApiModelProperty(value = "适用车辆类型 (数据字典 海外标准法规:APPLICATIONS_OVERSEAS 国内标准法规:APPLICATIONS_DOMESTIC (全部传空)")
@ApiModelProperty(value = "适用车辆类型 (数据字典 只有外来标准法规:APPLICATIONS_DOMESTIC (全部传空)")
private String applicableVehicle;
/**
* 标准类型 只有国内标准法规 数据字典 standard_property (全部传空)
* 标准类型 数据字典 只有外来标准法规:standard_property (全部传空)
*/
@ApiModelProperty(value = "标准类型 只有国内标准法规 数据字典 standard_property (全部传空)")
@ApiModelProperty(value = "标准类型 数据字典 只有外来标准法规:standard_property (全部传空)")
private String standardProperty;
/**
* 状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)
* 状态 数据字典 只有外来标准法规:standard_state (全部传空)
*/
@ApiModelProperty(value = "状态 国内标准法规/海外标准法规 数据字典 standard_state (全部传空)")
@ApiModelProperty(value = "状态 (数据字典 只有外来标准法规:standard_state (全部传空)")
private String standardState;
/**
* 企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)
* 标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)
*/
@ApiModelProperty(value = "企业标准代号 (只有企业标准 数据字典 enterprise_standard_code (全部传空)")
private String standardCode;
@ApiModelProperty(value = "标准分类代码 (数据字典 只有企业标准:standard_sort_code (全部传空)")
private String categoryCode;
/**
* 标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)
* 标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)
*/
@ApiModelProperty(value = "标准状态 (只有企业标准 数据字典 enterprise_standard_state (全部传空)")
@ApiModelProperty(value = "标准状态 数据字典 只有企业标准enterprise_standard_state (全部传空)")
private String enterpriseStandardState;
/**
* 标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)
*/
@ApiModelProperty(value = "标准等级分类 (只有企业标准 数据字典 standard_grade_classify (全部传空)")
private String gradeClassification;
/**
* 国内(GB、GB/T、JT、QC/T、HJ)/企标/海外/其他行业标准/动态
@@ -102,13 +97,4 @@ public class LawsHomeNormalSearchVO implements Serializable {
* 入库时间
*/
private Date createTime;
/**
* 发布状态(0-未发布、1-已发布)(动态消息使用)
*/
private String releaseStatus;
/**
* 推送范围标识(1-指定用户、2-全体用户)
*/
private Integer pushRangeFlag;
}
@@ -1,15 +1,18 @@
package com.jero.modules.laws.standard.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.api.dto.message.SendMessageDTO;
import com.jero.modules.common.service.SendMessageAPI;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.common.service.SendMessageAPI;
import com.jero.modules.laws.common.constant.DictCommon;
import com.jero.modules.laws.common.constant.FieldCommon;
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
import com.jero.common.api.vo.ResultCommon;
import com.jero.modules.laws.common.util.CurrentUserUtil;
import com.jero.modules.laws.home.common.LawsHomeSearchCommon;
import com.jero.modules.laws.home.service.ILawsHomeSearchService;
import com.jero.modules.laws.standard.entity.LawsNewsFeed;
import com.jero.modules.laws.standard.entity.LawsPushRange;
@@ -25,16 +28,10 @@ import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.jero.common.exception.JeroBootException;
import java.util.*;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -178,11 +175,11 @@ public class LawsNewsFeedServiceImpl extends ServiceImpl<LawsNewsFeedMapper, Law
}
// 同步es数据库
if (StringUtils.isBlank(oldId)) {
lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, lawsNewsFeed.getId(), LawsHomeSearchCommon.LAWS_ES_ADD);
} else {
lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, lawsNewsFeed.getId(), LawsHomeSearchCommon.LAWS_ES_UPDATE);
}
// if (StringUtils.isBlank(oldId)) {
// lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, lawsNewsFeed.getId(), LawsHomeSearchCommon.LAWS_ES_ADD);
// } else {
// lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, lawsNewsFeed.getId(), LawsHomeSearchCommon.LAWS_ES_UPDATE);
// }
}
/**
@@ -266,8 +263,8 @@ public class LawsNewsFeedServiceImpl extends ServiceImpl<LawsNewsFeedMapper, Law
throw new JeroBootException(ResultCommon.NO_PERMISSION);
}
removeById(id);
// 更新es数据库
lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, id, LawsHomeSearchCommon.LAWS_ES_DELETE);
// // 更新es数据库
// lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, id, LawsHomeSearchCommon.LAWS_ES_DELETE);
}
/**
@@ -281,8 +278,8 @@ public class LawsNewsFeedServiceImpl extends ServiceImpl<LawsNewsFeedMapper, Law
List<LawsNewsFeed> newsFeedList = listByIds(ids);
newsFeedList.forEach(lawsNewsFeed -> isHaveOperateAuth(lawsNewsFeed));
removeByIds(ids);
// 更新es数据库
lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, StringUtils.join(ids, ","), LawsHomeSearchCommon.LAWS_ES_DELETE);
// // 更新es数据库
// lawsHomeSearchService.updateEsData(LawsHomeSearchCommon.LAWS_NEWS_FEED, StringUtils.join(ids, ","), LawsHomeSearchCommon.LAWS_ES_DELETE);
}
/**
@@ -4,9 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.common.api.dto.message.SendMessageDTO;
import com.jero.modules.common.service.SendMessageAPI;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
import com.jero.modules.laws.standardmasterplan.common.LawsStandardMasterPlanCommon;
import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlan;
import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlanSublist;
@@ -37,8 +35,6 @@ public class StandardMasterPlanJob implements Job {
@Resource
private ILawsDomesticStandardService lawsDomesticStandardService;
@Resource
private ILawsOverseasStandardService lawsOverseasStandardService;
@Resource
private SendMessageAPI sendMessageAPI;
@Override
@@ -69,15 +65,7 @@ public class StandardMasterPlanJob implements Job {
.select(LawsDomesticStandard::getStandardNumber,
LawsDomesticStandard::getStandardName)
.eq(LawsDomesticStandard::getId, lawsStandardMasterPlan.getStandardId()));
if (Objects.isNull(lawsDomesticStandard)){
LawsOverseasStandard lawsOverseasStandard =
lawsOverseasStandardService.getOne(new LambdaQueryWrapper<LawsOverseasStandard>()
.select(LawsOverseasStandard::getStandardNumber,
LawsOverseasStandard::getStandardName)
.eq(LawsOverseasStandard::getId, lawsStandardMasterPlan.getStandardId()));
standardNumber = lawsOverseasStandard.getStandardNumber();
standardName = lawsOverseasStandard.getStandardName();
}else {
if (!Objects.isNull(lawsDomesticStandard)){
standardNumber = lawsDomesticStandard.getStandardNumber();
standardName = lawsDomesticStandard.getStandardName();
}
@@ -12,15 +12,9 @@
</select>
<sql id="select">
select lsmp.id, s.id standard_id, standard_number, standard_name, standard_state, applicable_market
select lsmp.id, lds.id standard_id, standard_number, standard_name, standard_state, lsmp.applicable_market
from laws_standard_master_plan lsmp
left join (select *
from (select id, standard_number, standard_name, standard_state
from laws_domestic_standard lds
union all
select id, standard_number, standard_name, standard_state
from laws_overseas_standard ldos) standard) s
on lsmp.standard_id = s.id
left join laws_domestic_standard lds on lsmp.standard_id = lds.id and lds.del_flag = 0
${ew.customSqlSegment}
</sql>
</mapper>
@@ -7,12 +7,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.constant.CommonConstant;
import com.jero.common.exception.JeroBootException;
import com.jero.common.util.SnowflakeUtils;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
import com.jero.modules.laws.standardmasterplan.common.LawsStandardMasterPlanCommon;
import com.jero.modules.laws.standardmasterplan.dto.LawsStandardMasterPlanDTO;
import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlan;
@@ -61,7 +60,6 @@ public class LawsStandardMasterPlanServiceImpl
private final LawsStandardMasterPlanMapper lawsStandardMasterPlanMapper;
private final ILawsStandardMasterPlanSublistService lawsStandardMasterPlanSublistService;
private final ILawsDomesticStandardService lawsDomesticStandardService;
private final ILawsOverseasStandardService lawsOverseasStandardService;
private final ISysDictService sysDictService;
private final ISysUserService sysUserService;
private final IOSSFileService ossFileService;
@@ -88,13 +86,14 @@ public class LawsStandardMasterPlanServiceImpl
LawsStandardMasterPlanVO lawsStandardMasterPlanVO) {
QueryWrapper<LawsStandardMasterPlanVO> queryWrapper = new QueryWrapper<>();
queryWrapper.like(StringUtils.isNotBlank(lawsStandardMasterPlanVO.getStandardNumber()),
"standard_number", lawsStandardMasterPlanVO.getStandardNumber());
"lds.standard_number", lawsStandardMasterPlanVO.getStandardNumber());
queryWrapper.like(StringUtils.isNotBlank(lawsStandardMasterPlanVO.getStandardName()),
"standard_name", lawsStandardMasterPlanVO.getStandardName());
"lds.standard_name", lawsStandardMasterPlanVO.getStandardName());
queryWrapper.eq(StringUtils.isNotBlank(lawsStandardMasterPlanVO.getApplicableMarket()),
"applicable_market", lawsStandardMasterPlanVO.getApplicableMarket());
"lsmp.applicable_market", lawsStandardMasterPlanVO.getApplicableMarket());
queryWrapper.eq(StringUtils.isNotBlank(lawsStandardMasterPlanVO.getId()),
"lsmp.id", lawsStandardMasterPlanVO.getId());
queryWrapper.eq("lsmp.del_flag", CommonConstant.DEL_FLAG_0);
return queryWrapper;
}
@@ -206,18 +205,7 @@ public class LawsStandardMasterPlanServiceImpl
LawsDomesticStandard::getStandardName,
LawsDomesticStandard::getStandardState)
.eq(LawsDomesticStandard::getId, lawsStandardMasterPlan.getStandardId()));
if (Objects.isNull(lawsDomesticStandard)){
LawsOverseasStandard lawsOverseasStandard =
lawsOverseasStandardService.getOne(new LambdaQueryWrapper<LawsOverseasStandard>()
.select(LawsOverseasStandard::getStandardNumber,
LawsOverseasStandard::getStandardName,
LawsOverseasStandard::getStandardState)
.eq(LawsOverseasStandard::getId, lawsStandardMasterPlan.getStandardId()));
lm.put("standardNumber", lawsOverseasStandard.getStandardNumber());
lm.put("standardName", lawsOverseasStandard.getStandardName());
lm.put("standardState", sysDictService.queryDictTextByKey("standard_state",
lawsOverseasStandard.getStandardState()));
}else {
if (!Objects.isNull(lawsDomesticStandard)){
lm.put("standardNumber", lawsDomesticStandard.getStandardNumber());
lm.put("standardName", lawsDomesticStandard.getStandardName());
lm.put("standardState", sysDictService.queryDictTextByKey("standard_state",
@@ -1640,6 +1640,9 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
List<SplitTableInfo> getSheetTableList = new ArrayList();
for (int i = 1; i < workbook.getNumberOfSheets(); i++) {//获取每个Sheet表
sheet = workbook.getSheetAt(i);
if ("下拉值".equals(sheet.getSheetName())){
continue;
}
SplitTableInfo splitTableInfo = new SplitTableInfo();
splitTableInfo.setTableName(sheet.getSheetName());
String tableHtml = POIReadExcelToHtml.readExcelToHtml(workbook,i,false);
@@ -1670,6 +1673,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
FileUnZip.deleteDir(saveDirectory);
return message;
} catch (NullPointerException e){
log.error(e.getMessage());
//删除原上传文件
FileUnZip.deleteDir(saveDirectory);
if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())){
@@ -1818,7 +1822,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
InputStream is = new FileInputStream(file);
String name = file.getName().toLowerCase();
// 创建excel操作对象
if (name.contains(".xlsx")) {
if (name.contains(".xlsx")||name.contains(".xlsm")) {
workbook = WorkbookFactory.create(is);
} else {
if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())){