Commit 8c9072b7 authored by suhuiguang's avatar suhuiguang

fix(jyjc): 报检规则4.0开发

1.业务负责人人员过滤 2.高新区、经开、西咸
parent 2d04533d
package com.yeejoin.amos.boot.biz.common.feign; package com.yeejoin.amos.boot.biz.common.feign;
import feign.RequestInterceptor; import feign.codec.Encoder;
import feign.RequestTemplate; import feign.form.spring.SpringFormEncoder;
import org.springframework.beans.factory.ObjectFactory; import org.springframework.beans.factory.ObjectFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.http.HttpMessageConverters; import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
import org.springframework.cloud.openfeign.support.SpringEncoder; import org.springframework.cloud.openfeign.support.SpringEncoder;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.util.StringUtils;
import org.springframework.web.context.request.RequestContextListener; import org.springframework.web.context.request.RequestContextListener;
import feign.codec.Encoder;
import feign.form.spring.SpringFormEncoder;
/** /**
* @Author: xl * @Author: xl
...@@ -28,8 +25,10 @@ public class MultipartSupportConfig { ...@@ -28,8 +25,10 @@ public class MultipartSupportConfig {
public Encoder feignFormEncoder() { public Encoder feignFormEncoder() {
return new SpringFormEncoder(new SpringEncoder(messageConverters)); return new SpringFormEncoder(new SpringEncoder(messageConverters));
} }
/** /**
* 创建Feign请求拦截器,在发送请求前设置认证的token,各个微服务将token设置到环境变量中来达到通用 * 创建Feign请求拦截器,在发送请求前设置认证的token,各个微服务将token设置到环境变量中来达到通用
*
* @return * @return
*/ */
@Bean @Bean
......
...@@ -79,4 +79,14 @@ public interface BizCommonConstant { ...@@ -79,4 +79,14 @@ public interface BizCommonConstant {
* 额定工作压力 * 额定工作压力
*/ */
String TECH_PARAM2 = "ratedWorkingPressure"; String TECH_PARAM2 = "ratedWorkingPressure";
/**
* 行政区划-西安
*/
String REGION_CODE_XIAN = "610100";
/**
* 行政区划-雁塔
*/
Integer REGION_CODE_YT = 610113;
} }
package com.yeejoin.amos.boot.module.jyjc.api.enums;
import lombok.Getter;
@Getter
public enum SpeRegionInfoEnum {
GX(610131, "高新区", "50*52*96"),
JK(610132, "经开区", "50*52*97"),
XX(617000, "西咸新区", "50*18667");
/**
* 行政区划code
*/
private final Integer code;
/**
* 名称
*/
private final String name;
/**
* 描述
*/
private final String orgCode;
SpeRegionInfoEnum(Integer code, String name, String orgCode) {
this.code = code;
this.name = name;
this.orgCode = orgCode;
}
public static SpeRegionInfoEnum getByCode(Integer code) {
for (SpeRegionInfoEnum e : SpeRegionInfoEnum.values()) {
if (e.getCode().equals(code)) {
return e;
}
}
return null;
}
}
...@@ -347,4 +347,13 @@ public class JyjcInspectionApplicationController extends BaseController { ...@@ -347,4 +347,13 @@ public class JyjcInspectionApplicationController extends BaseController {
public ResponseModel<Object> getDeviceListByProjectContraption(@RequestParam("record") String projectContraptionSeq) { public ResponseModel<Object> getDeviceListByProjectContraption(@RequestParam("record") String projectContraptionSeq) {
return ResponseHelper.buildResponse(jyjcInspectionApplicationServiceImpl.getDeviceListByProjectContraption(projectContraptionSeq)); return ResponseHelper.buildResponse(jyjcInspectionApplicationServiceImpl.getDeviceListByProjectContraption(projectContraptionSeq));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getRegion")
@ApiOperation(httpMethod = "GET", value = "获取行政区划", notes = "获取行政区划")
public ResponseModel<Object> getRegion(@RequestParam(value = "level", required = false) String level,
@RequestParam(value = "parentId", required = false) String parentId) {
return ResponseHelper.buildResponse(jyjcInspectionApplicationServiceImpl.getRegion(level, parentId));
}
} }
...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.feign.MultipartSupportConfig; import com.yeejoin.amos.boot.biz.common.feign.MultipartSupportConfig;
import com.yeejoin.amos.boot.module.jyjc.api.model.JgResumeInfoDto; import com.yeejoin.amos.boot.module.jyjc.api.model.JgResumeInfoDto;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
...@@ -25,5 +26,13 @@ public interface JgFeignClient { ...@@ -25,5 +26,13 @@ public interface JgFeignClient {
* */ * */
@RequestMapping(value = "/jg-resume-info/saveBatchResume", method = RequestMethod.POST) @RequestMapping(value = "/jg-resume-info/saveBatchResume", method = RequestMethod.POST)
FeignClientResult saveBatchResume(@RequestBody List<JgResumeInfoDto> jgResumeInfoDtoList); FeignClientResult saveBatchResume(@RequestBody List<JgResumeInfoDto> jgResumeInfoDtoList);
/***
* 设备注册信息分页查询
* */
@RequestMapping(value = "/common/getRegion", method = RequestMethod.GET)
FeignClientResult<List<RegionModel>> getRegion(@RequestParam(value = "level", required = false) String level,
@RequestParam(value = "parentId", required = false) String parentId);
} }
...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.jyjc.biz.service.impl; ...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.jyjc.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo; import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.module.common.api.enums.UserPostEnum;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplication; import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplication;
import com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationModel; import com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationModel;
import com.yeejoin.amos.boot.module.ymt.api.dto.TzsUserInfoDto; import com.yeejoin.amos.boot.module.ymt.api.dto.TzsUserInfoDto;
...@@ -39,7 +40,7 @@ public class InspectionChargePersonServiceImpl { ...@@ -39,7 +40,7 @@ public class InspectionChargePersonServiceImpl {
queryWrapper.eq(TzsUserInfo::getUnitCode, company.getCompanyCode()); queryWrapper.eq(TzsUserInfo::getUnitCode, company.getCompanyCode());
queryWrapper.eq(com.yeejoin.amos.boot.biz.common.entity.BaseEntity::getIsDelete, false); queryWrapper.eq(com.yeejoin.amos.boot.biz.common.entity.BaseEntity::getIsDelete, false);
// 业务负责人 待实现 // 业务负责人 待实现
// queryWrapper.like(TzsUserInfo::getNewPost, "6767"); queryWrapper.like(TzsUserInfo::getNewPost, UserPostEnum.YWFZR.getCode());
queryWrapper.isNotNull(TzsUserInfo::getAmosUserId); queryWrapper.isNotNull(TzsUserInfo::getAmosUserId);
queryWrapper.select(com.yeejoin.amos.boot.biz.common.entity.BaseEntity::getSequenceNbr, TzsUserInfo::getAmosUserId, TzsUserInfo::getName); queryWrapper.select(com.yeejoin.amos.boot.biz.common.entity.BaseEntity::getSequenceNbr, TzsUserInfo::getAmosUserId, TzsUserInfo::getName);
return userInfoMapper.selectList(queryWrapper); return userInfoMapper.selectList(queryWrapper);
......
...@@ -50,8 +50,10 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentClassifityEnum; ...@@ -50,8 +50,10 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentClassifityEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum; import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.EquipTechParamBoilerMapper; import com.yeejoin.amos.boot.module.ymt.api.mapper.EquipTechParamBoilerMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgProjectContraptionMapper; import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgProjectContraptionMapper;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.model.CompanyModel; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.model.DictionarieModel; import com.yeejoin.amos.feign.systemctl.model.DictionarieModel;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model; import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO; import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO; import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
...@@ -873,7 +875,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -873,7 +875,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
inspectionHistoryService.saveBySeq(model.getSequenceNbr(), hisData, model.getInspectionType()); inspectionHistoryService.saveBySeq(model.getSequenceNbr(), hisData, model.getInspectionType());
} else { } else {
JyjcInspectionHistory inspectionHistory = inspectionHistoryService.getBySSeq(model.getSequenceNbr()); JyjcInspectionHistory inspectionHistory = inspectionHistoryService.getBySSeq(model.getSequenceNbr());
if(inspectionHistory != null) { if (inspectionHistory != null) {
JSONObject hisData = inspectionHistory.getHistoryData(); JSONObject hisData = inspectionHistory.getHistoryData();
List<Map<String, Object>> arrayList = getEquipInfoList(model.getSequenceNbr(), model); List<Map<String, Object>> arrayList = getEquipInfoList(model.getSequenceNbr(), model);
hisData.put("equip", arrayList); hisData.put("equip", arrayList);
...@@ -1509,17 +1511,15 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -1509,17 +1511,15 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
} }
// 设备类别编码 // 设备类别编码
if (!ObjectUtils.isEmpty(map.getString("EQU_DEFINE_CODE"))) { if (!ObjectUtils.isEmpty(map.getString("EQU_DEFINE_CODE"))) {
boolMust.must(QueryBuilders.termQuery("EQU_DEFINE_CODE", QueryParser.escape(map.getString("EQU_DEFINE_CODE")))); boolMust.must(QueryBuilders.termQuery("EQU_DEFINE_CODE", QueryParser.escape(map.getString("EQU_DEFINE_CODE").toLowerCase())));
} }
// 地市 // 地市
if (!ObjectUtils.isEmpty(map.getString("CITY"))) { if (!ObjectUtils.isEmpty(map.getString("CITY"))) {
boolMust.must(QueryBuilders.wildcardQuery("USE_PLACE_CODE", "*" + map.getString("CITY") + "*")); boolMust.must(QueryBuilders.wildcardQuery("USE_PLACE_CODE", "*" + map.getString("CITY") + "*"));
} }
// 区县 // 区县筛选设置。雁塔时去掉高新数据;高新、经开、西咸时按照属地监管部门过滤
if (!ObjectUtils.isEmpty(map.getString("COUNTY"))) { this.setSpecificallyFilter(boolMust, map);
boolMust.must(QueryBuilders.wildcardQuery("USE_PLACE_CODE", "*" + map.getString("COUNTY") + "*"));
}
// 设备代码模糊查询 // 设备代码模糊查询
if (!ObjectUtils.isEmpty(map.getString(EQU_CODE))) { if (!ObjectUtils.isEmpty(map.getString(EQU_CODE))) {
String test = QueryParser.escape(map.getString(EQU_CODE)); String test = QueryParser.escape(map.getString(EQU_CODE));
...@@ -1583,6 +1583,27 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -1583,6 +1583,27 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
return result; return result;
} }
private void setSpecificallyFilter(BoolQueryBuilder boolMust, JSONObject map) {
if (ObjectUtils.isEmpty(map.getString("COUNTY"))) {
return;
}
// 雁塔时去掉高新数据
if(String.valueOf(BizCommonConstant.REGION_CODE_YT).equals(map.getString("COUNTY"))){
// 区县筛选
boolMust.must(QueryBuilders.wildcardQuery("USE_PLACE_CODE", "*" + map.getString("COUNTY") + "*"));
// 按照属地去掉高新数据
boolMust.mustNot(QueryBuilders.wildcardQuery("ORG_BRANCH_CODE.keyword", QueryParser.escape(SpeRegionInfoEnum.GX.getOrgCode()) + "*"));
return;
}
// 高新、经开、西咸时按照属地监管部门过滤
if(Arrays.stream(SpeRegionInfoEnum.values()).sequential().anyMatch(r-> r.getCode().equals(map.getIntValue("COUNTY")))){
boolMust.must(QueryBuilders.wildcardQuery("ORG_BRANCH_CODE.keyword", QueryParser.escape(Objects.requireNonNull(SpeRegionInfoEnum.getByCode(map.getInteger("COUNTY"))).getOrgCode()) + "*"));
return;
}
// 区县过滤
boolMust.must(QueryBuilders.wildcardQuery("USE_PLACE_CODE", "*" + map.getString("COUNTY") + "*"));
}
private void fillTechParamForGl(String equCategoryCode, List<JSONObject> list) { private void fillTechParamForGl(String equCategoryCode, List<JSONObject> list) {
if (BizCommonConstant.YLRQ_GL_CY.equals(equCategoryCode)) { if (BizCommonConstant.YLRQ_GL_CY.equals(equCategoryCode)) {
for (JSONObject jsonObject : list) { for (JSONObject jsonObject : list) {
...@@ -1817,4 +1838,23 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -1817,4 +1838,23 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
public Page<?> queryForEquipmentRegisterPageDispatch(JSONObject jsonObject) { public Page<?> queryForEquipmentRegisterPageDispatch(JSONObject jsonObject) {
return handleByInspectType(jsonObject.getString("inspectionType")).apply(jsonObject); return handleByInspectType(jsonObject.getString("inspectionType")).apply(jsonObject);
} }
public Object getRegion(String level, String parentId) {
List<RegionModel> regionModels = FeignUtil.remoteCall(() -> jgFeignClient.getRegion(level, parentId));
// 西安时增加:西咸、经开、高新;雁塔调整为雁塔(除去高新)
if (BizCommonConstant.REGION_CODE_XIAN.equals(parentId)) {
for (SpeRegionInfoEnum infoEnum : SpeRegionInfoEnum.values()) {
RegionModel regionModel = new RegionModel();
regionModel.setRegionCode(infoEnum.getCode());
regionModel.setRegionName(infoEnum.getName());
regionModels.add(regionModel);
}
regionModels.forEach(regionModel -> {
if (Objects.equals(regionModel.getRegionCode(), BizCommonConstant.REGION_CODE_YT)) {
regionModel.setRegionName("雁塔区(除高新)");
}
});
}
return regionModels;
}
} }
\ No newline at end of file
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