Commit 78d24a5d authored by lisong's avatar lisong

修改bug

parent 56573856
package com.yeejoin.amos.boot.module.elevator.api.service;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorDto;
......@@ -37,6 +38,8 @@ public interface IElevatorService extends IService<Elevator> {
Page<Map<String, Object>> selectElevators(Page<Map<String, Object>>page, ElevatorDto dto);
Page<JSONObject> queryByKeys(JSONObject map);
List<ElevatorDtoNew> selectExportDataNew(ElevatorDto dto);
List<Map<String, Object>> selectElevatorEsList(int pageNum,int pageSize);
......
......@@ -346,6 +346,13 @@ public class ElevatorController extends BaseController {
return ResponseHelper.buildResponse(list);
}
// @TycloudOperation(ApiLevel = UserType.AGENCY)
// @GetMapping(value = "/ocp/query_elevator_list")
// @ApiOperation(httpMethod = "GET", value = "电梯列表", notes = "电梯列表")
// public ResponseModel<Page<JSONObject>> viewJgAll( @RequestParam Map<String,Object> map) {
// JSONObject jsonObject = new JSONObject(map);
// return ResponseHelper.buildResponse(iElevatorService.queryByKeys(jsonObject));
// }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/ocp/exportData")
......
......@@ -8,9 +8,12 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.QRCodeUtil;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl;
import com.yeejoin.amos.boot.module.elevator.api.dto.AlertCalledDto;
......@@ -20,6 +23,7 @@ import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorInsureDto;
import com.yeejoin.amos.boot.module.elevator.api.dto.ElevatorWlInfoDto;
import com.yeejoin.amos.boot.module.elevator.api.entity.Elevator;
import com.yeejoin.amos.boot.module.elevator.api.entity.EquipmentCategory;
import com.yeejoin.amos.boot.module.elevator.api.enums.EquimentEnum;
import com.yeejoin.amos.boot.module.elevator.api.enums.TzsCommonParam;
import com.yeejoin.amos.boot.module.elevator.api.mapper.ElevatorMapper;
import com.yeejoin.amos.boot.module.elevator.api.service.IElevatorService;
......@@ -31,6 +35,15 @@ import com.yeejoin.amos.feign.systemctl.Systemctl;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.lucene.queryparser.classic.QueryParser;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.elasticsearch.search.sort.SortOrder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.stereotype.Service;
......@@ -41,10 +54,8 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.io.IOException;
import java.util.*;
/**
* 服务实现类
......@@ -84,6 +95,13 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev
//一码通设备使用场所字典type
private static final String ADDRESS = "ADDRESS";
@Autowired
RestHighLevelClient restHighLevelClient;
@Autowired
private RedisUtils redisUtils;
private static final String LEVEL = "company";
private static final String EQUSTATE = "EQU_STATE";
private static final String USEPLACE = "USE_PLACE";
/**
* 保存电梯信息
*
......@@ -324,6 +342,196 @@ public class ElevatorServiceImpl extends BaseService<ElevatorDto, Elevator, Elev
return baseMapper.selectExportDataNew(dto, dto.getIds());
}
public Page<JSONObject> queryByKeys(JSONObject map) {
// //根据当前登录人查询
if (!ValidationUtil.isEmpty(map.get(EQUSTATE))) {
map.put(EQUSTATE, EquimentEnum.getCode.get(map.get(EQUSTATE).toString()).toString());
}
JSONObject object = getCompanyType().get(0);
String level = object.getString("level");
String code = object.getString("orgCode");
String companyCode = object.getString("companyCode").contains("_") ?
object.getString("companyCode").split("_")[1] : object.getString("companyCode");
if (!ValidationUtil.isEmpty(level)) {
if (LEVEL.equals(level)) {
//企业
map.put("USE_UNIT_CREDIT_CODE", companyCode);
} else {
//监管单位
map.put("ORG_BRANCH_CODE", code);
}
}
Page<JSONObject> result = new Page<>(map.getInteger("number"), map.getInteger("size"));
SearchRequest request = new SearchRequest();
request.indices("idx_biz_view_jg_all");
SearchSourceBuilder builder = new SearchSourceBuilder();
builder.trackTotalHits(true);
BoolQueryBuilder boolMust = QueryBuilders.boolQuery();
//通用匹配规则,条件构建
//SEQUENCE_NBR
if (!ObjectUtils.isEmpty(map.getString("SEQUENCE_NBR"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("SEQUENCE_NBR"));
meBuilder.must(QueryBuilders.matchPhraseQuery("SEQUENCE_NBR", "*" + test + "*"));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("ORG_BRANCH_NAME"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("ORG_BRANCH_NAME"));
query.must(QueryBuilders.matchPhraseQuery("ORG_BRANCH_NAME", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("ORG_BRANCH_CODE"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("ORG_BRANCH_CODE"));
query.must(QueryBuilders.matchPhrasePrefixQuery("ORG_BRANCH_CODE", test));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_NAME"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_UNIT_NAME"));
query.must(QueryBuilders.matchPhraseQuery("USE_UNIT_NAME", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_CREDIT_CODE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_UNIT_CREDIT_CODE"));
meBuilder.must(QueryBuilders.matchPhraseQuery("USE_UNIT_CREDIT_CODE", test));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("EQU_LIST_CODE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("EQU_LIST_CODE"));
meBuilder.must(QueryBuilders.matchPhraseQuery("EQU_LIST_CODE", test));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("EQU_LIST"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("EQU_LIST"));
meBuilder.must(QueryBuilders.matchPhraseQuery("EQU_LIST", "*" + test + "*"));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("USE_ORG_CODE"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_ORG_CODE").toLowerCase());
meBuilder.must(QueryBuilders.matchPhraseQuery("USE_ORG_CODE", "*" + test + "*"));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("CODE96333"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("CODE96333"));
meBuilder.must(QueryBuilders.matchPhraseQuery("CODE96333", "*" + test + "*"));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("USE_PLACE"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_PLACE"));
query.must(QueryBuilders.matchPhraseQuery("USE_PLACE", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("ADDRESS"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("ADDRESS"));
query.must(QueryBuilders.matchPhraseQuery("ADDRESS", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("STATUS"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("STATUS"));
if (test.contains("非")) {
meBuilder.must(QueryBuilders.matchPhraseQuery("STATUS", test.replace("非", "")));
boolMust.mustNot(meBuilder);
} else {
meBuilder.must(QueryBuilders.matchPhraseQuery("STATUS", test));
boolMust.must(meBuilder);
}
}
if (!ObjectUtils.isEmpty(map.getString("CLAIM_STATUS"))) {
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("CLAIM_STATUS"));
meBuilder.must(QueryBuilders.matchPhraseQuery("STATUS", test));
boolMust.must(meBuilder);
}
if (!ObjectUtils.isEmpty(map.getString("USE_UNIT_NAME"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("USE_UNIT_NAME"));
query.must(QueryBuilders.matchPhraseQuery("USE_UNIT_NAME", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("MAINTAIN_UNIT"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("MAINTAIN_UNIT"));
query.must(QueryBuilders.matchPhraseQuery("MAINTAIN_UNIT", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("SAFETY_MANAGER"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("SAFETY_MANAGER"));
query.must(QueryBuilders.matchPhraseQuery("SAFETY_MANAGER", "*" + test + "*"));
boolMust.must(query);
}
if (!ObjectUtils.isEmpty(map.getString("PHONE"))) {
BoolQueryBuilder query = QueryBuilders.boolQuery();
String test = QueryParser.escape(map.getString("PHONE"));
query.must(QueryBuilders.matchPhraseQuery("PHONE", "*" + test + "*"));
boolMust.must(query);
}
builder.query(boolMust);
builder.sort("REC_DATE", SortOrder.DESC);
builder.from((map.getInteger("number") - 1) * map.getInteger("size"));
builder.size(map.getInteger("size"));
request.source(builder);
List<JSONObject> list = new LinkedList<>();
long totle = 0;
try {
SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
for (org.elasticsearch.search.SearchHit hit : response.getHits().getHits()) {
System.out.println(hit);
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(hit);
JSONObject dto2 = jsonObject.getJSONObject("sourceAsMap");
if (!ValidationUtil.isEmpty(dto2.get(EQUSTATE))) {
Integer integer = Integer.valueOf(dto2.get(EQUSTATE).toString());
String status = EquimentEnum.getName.get(integer);
dto2.put(EQUSTATE, status);
}
list.add(dto2);
}
totle = response.getInternalResponse().hits().getTotalHits().value;
result.setRecords(list);
result.setTotal(totle);
} catch (IOException e) {
throw new RuntimeException(e);
}
return result;
}
/**
* 获取当前登录人单位类型
*
* @return
*/
public List<JSONObject> getCompanyType() {
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
List<CompanyModel> companys = reginParams.getUserModel().getCompanys();
List<JSONObject> objectList = new ArrayList<>();
for (CompanyModel company : companys) {
JSONObject object = new JSONObject();
object.put("level", company.getLevel());
object.put("orgCode", company.getOrgCode());
object.put("companyCode", company.getCompanyCode());
objectList.add(object);
}
return objectList;
}
public List<ElevatorWlInfoDto> queryElevatorList(ElevatorWlInfoDto esElevatorDto) {
return elevatorMapper.queryElevatorList(esElevatorDto.getAddress(),
esElevatorDto.getRegisterCode(),esElevatorDto.getRescueCode(),
......
......@@ -70,4 +70,15 @@ public class ESEquipmentCategoryDto {
private Long REC_DATE;
@Field(type = FieldType.Text)
private String SAFETY_MANAGER;
@Field(type = FieldType.Text)
private String PHONE;
@Field(type = FieldType.Text)
private String MAINTAIN_UNIT;
@Field(type = FieldType.Text)
private String USE_INNER_CODE;
}
package com.yeejoin.amos.boot.module.ymt.biz.config;
import org.typroject.tyboot.core.foundation.exception.BaseException;
public class FileDownLoadException extends BaseException {
public FileDownLoadException(String message)
{
super(message, com.yeejoin.amos.component.robot.BadRequest.class.getSimpleName(),message);
this.httpStatus = 500;
}
}
\ No newline at end of file
......@@ -19,6 +19,7 @@ import com.yeejoin.amos.boot.module.ymt.api.mapper.EquipmentCategoryMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgOtherInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.service.IEquipmentCategoryService;
import com.yeejoin.amos.boot.module.ymt.api.vo.EquipExportVo;
import com.yeejoin.amos.boot.module.ymt.biz.config.FileDownLoadException;
import com.yeejoin.amos.boot.module.ymt.biz.service.impl.EquipmentCategoryServiceImpl;
import com.yeejoin.amos.boot.module.ymt.biz.utils.ImageUtils;
import com.yeejoin.amos.component.robot.BadRequest;
......@@ -477,10 +478,10 @@ public class EquipmentCategoryController extends BaseController {
lambda.in(IdxBizJgOtherInfo::getCode96333, code96333);
Integer integer = idxBizJgOtherInfoMapper.selectCount(lambda);
if (!ObjectUtils.isEmpty(strings) && strings.size() != integer){
throw new BadRequest("96333码存在重复数据,请联系管理员!");
throw new FileDownLoadException("96333码存在重复数据,请联系管理员!");
}
if (ObjectUtils.isEmpty(strings) && !String.valueOf(code96333.size()).equals(String.valueOf(integer))) {
throw new BadRequest("96333码存在重复数据,请联系管理员!");
throw new FileDownLoadException("96333码存在重复数据,请联系管理员!");
}
}
List<Object> supervisoryCode = equipExportData.stream().filter(item -> !ObjectUtils.isEmpty(item.get("SUPERVISORY_CODE"))).map(item -> item.get("SUPERVISORY_CODE")).collect(Collectors.toList());
......@@ -490,10 +491,10 @@ public class EquipmentCategoryController extends BaseController {
lambda.in(IdxBizJgOtherInfo::getSupervisoryCode, supervisoryCode);
Integer integer = idxBizJgOtherInfoMapper.selectCount(lambda);
if (!ObjectUtils.isEmpty(strings) && strings.size() != integer){
throw new BadRequest("监管码存在重复数据,请联系管理员!");
throw new FileDownLoadException("监管码存在重复数据,请联系管理员!");
}
if (ObjectUtils.isEmpty(strings) && !String.valueOf(supervisoryCode.size()).equals(String.valueOf(integer))) {
throw new BadRequest("监管码存在重复数据,请联系管理员!");
throw new FileDownLoadException("监管码存在重复数据,请联系管理员!");
}
}
if (ImageSizeEnums.DT.getCode().equals(type)) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment