From 0823f56bdfb4f9515fdb23d5aff226614b795dc4 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Fri, 20 May 2022 17:51:42 +0800 Subject: [PATCH 1/4] feat: There is no way the, --- doc/es/es 创建索引字段_fulltextserch.txt | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/doc/es/es 创建索引字段_fulltextserch.txt b/doc/es/es 创建索引字段_fulltextserch.txt index 22a5eb7f..ecaf2c1b 100644 --- a/doc/es/es 创建索引字段_fulltextserch.txt +++ b/doc/es/es 创建索引字段_fulltextserch.txt @@ -85,6 +85,26 @@ fulltextserch/fulltextserch/_mapping?pretty&include_type_name=true }, "fielddata": true }, + "standSortOrder": { + "type": "text", + "fields": { + "keyword": { + "type": "keyword", + "ignore_above": 256 + } + }, + "fielddata": true + }, + "standTypeOrder": { + "type": "text", + "fields": { + "keyword": { + "type": "keyword", + "ignore_above": 256 + } + }, + "fielddata": true + }, "textContent": { "type": "text", "analyzer": "ik_max_word", From 4d82138c5451a47b80d313ec7d53b4f693dc3ac4 Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Mon, 23 May 2022 09:24:36 +0800 Subject: [PATCH 2/4] feat: There is no way the, rest full search --- .../service/impl/ElasticsearchServiceImpl.java | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java index c2f7ae08..95ad0101 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/ElasticsearchServiceImpl.java @@ -295,18 +295,13 @@ public class ElasticsearchServiceImpl implements ElasticsearchService { .get(); SearchHits hits = sResponse.getHits(); if(hits.getTotalHits().value > 0){ - BoolQueryBuilder boolSelectValue = new BoolQueryBuilder(); + QueryBuilder queryBuilder1 = QueryBuilders.multiMatchQuery(""); if(StringUtils.isNotBlank(search)){ - boolSelectValue - .should(QueryBuilders.wildcardQuery("sortTitle.keyword", "*" + search.toUpperCase() + "*").boost(1005f)) - .should(QueryBuilders.wildcardQuery("numberTitle.keyword", "*" + search.toUpperCase() + "*").boost(1003f)) - .should(QueryBuilders.wildcardQuery("yearOrder.keyword", "*" + search.toUpperCase() + "*").boost(1002f)) - .should(QueryBuilders.wildcardQuery("nameTitle.keyword", "*" + search.toUpperCase() + "*").boost(1001f)) - .should(QueryBuilders.wildcardQuery("title.keyword", "*" + search + "*").boost(1000f)) - .should(QueryBuilders.wildcardQuery("textContent.keyword", "*" + search.toUpperCase() + "*").boost(0.0000000000000000000000000000000001f)) - .should(QueryBuilders.wildcardQuery("issue_time", "*" + search.toUpperCase() + "*")); + queryBuilder1 = QueryBuilders.multiMatchQuery(search, + "sortTitle","numberTitle","yearOrder","nameTitle","title","textContent","issue_time" + ).minimumShouldMatch("100%").field("sortTitle",1005f).field("numberTitle",1004f).field("yearOrder",1003f).field("nameTitle",1002f).field("title",1000f).field("textContent",100f).field("issue_time",10f); } - SearchResponse scrollResp = search(index,boolSelectValue, 1,(int) hits.getTotalHits().value); + SearchResponse scrollResp = search(index,queryBuilder1, 1,(int) hits.getTotalHits().value); for (SearchHit hit : scrollResp.getHits().getHits()) { sourceList.add(hit.getSourceAsMap()); } From 426728c35963db0586724ecd85ddf24742646907 Mon Sep 17 00:00:00 2001 From: "wangxiahui@91isoft.com" <140316hui> Date: Mon, 23 May 2022 14:37:00 +0800 Subject: [PATCH 3/4] =?UTF-8?q?update:=E7=94=A8=E6=88=B7=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=BF=AE=E6=94=B91.=E5=BC=80=E5=90=AF?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=EF=BC=8C=E6=AF=8F=E5=A4=A9?= =?UTF-8?q?=E5=87=8C=E6=99=A82=E7=82=B9=E6=89=A7=E8=A1=8C=20=202.=E5=B7=B2?= =?UTF-8?q?=E7=A6=BB=E8=81=8C=E7=94=A8=E6=88=B7=E7=9A=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/adc/da/scheduled/ScheduledSync.java | 4 ++-- .../da/slrs/DataSync/service/impl/DataSyncServiceImpl.java | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java index fa2fed00..14248747 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java @@ -23,8 +23,8 @@ public class ScheduledSync { private IDataSyncService iDataSyncService; -// @Scheduled(cron = "0 */40 * * * ?") //40分钟执行同步一次 -// @Scheduled(cron="*/5 * * * * ?") + //每天凌晨两点执行 + @Scheduled(cron="0 0 2 * * ?") @Async public void syncSchedulingTasks() throws Exception { diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java index 501ddc10..74c1c951 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java @@ -95,7 +95,8 @@ public class DataSyncServiceImpl implements IDataSyncService { tsUser.setAccount(jsonObject.getString("userid")); tsUser.setInstitutionId(null!=jsonObject.getString("orgNumber")?jsonObject.getString("orgNumber"):"" ); tsUser.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" ); - if (null == useDistinct.get(jsonObject.getString("userid"))) { + //2022-05-23:用户同步增加状态标识,将停用的用户过滤掉 + if (null == useDistinct.get(jsonObject.getString("userid")) && "1".equals(jsonObject.getString("userStatus"))) { tsUsers.add(tsUser); } From ba47fd5481db2c48905eb7b7733d2a9f6c14d01c Mon Sep 17 00:00:00 2001 From: qk <1005180704@qq。com> Date: Mon, 23 May 2022 15:28:05 +0800 Subject: [PATCH 4/4] =?UTF-8?q?update:=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/login/rest/LoginRestController.java | 1 + .../controller/TsInstitutionController.java | 6 + .../sarInstitution/dao/TsInstitutionDao.java | 5 + .../da/slrs/sarInstitution/entity/TreeVo.java | 149 ++++++++++++++++++ .../service/ITsInstitutionService.java | 3 + .../impl/TsInstitutionServiceImpl.java | 28 ++++ .../sarInstitution/TsInstitutionMapper.xml | 26 +++ .../mybatis/mapper/sarUser/TsUserMapper.xml | 13 +- .../java/com/adc/da/sys/dao/UserEODao.java | 2 + .../java/com/adc/da/sys/entity/UserEO.java | 1 + .../adc/da/sys/service/IUserEOService.java | 2 + .../sys/service/impl/UserEOServiceImpl.java | 5 + .../mapper/person/PersonCollectEOMapper.xml | 2 +- .../mybatis/mapper/sys/UserEOMapper.xml | 17 ++ 14 files changed, 257 insertions(+), 3 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TreeVo.java diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java index 7bf4eb82..478694a7 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/rest/LoginRestController.java @@ -59,6 +59,7 @@ public class LoginRestController { @RequestParam @NotNull(message = "请输入密码") String password, @RequestParam(value = "isRememberMe", defaultValue = "false") Boolean isRememberMe, String verifyCode) throws UnsupportedEncodingException { UserEO userEO = userService.getUserByLoginNameNotDeleted(username); + userEO.setInstitutionNameDepartment(userService.getName(userEO.getInstitutionId())); if (null == userEO) { log.info("用户[{}]身份验证失败", username); return Result.error("r0011", "您输入的帐号或密码有误"); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java index 11557a38..48c379de 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarInstitution.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarInstitution.entity.TreeVo; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; @@ -104,6 +105,11 @@ public class TsInstitutionController extends BaseController { return tsInstitutionService.getNext(institutionId,userName); } + @GetMapping("/getNextTwo") + public List getNextTwo(String userName){ + return tsInstitutionService.getNextTwo(userName); + } + @ApiOperation("获得下一级的部门和人员") @GetMapping("/getNextById") public List getNextById(String ids){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java index fae48109..ee5884f0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.sarInstitution.dao; import com.adc.da.slrs.sarInstitution.entity.InstitutionAndUser; +import com.adc.da.slrs.sarInstitution.entity.TreeVo; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -24,6 +25,10 @@ public interface TsInstitutionDao extends BaseMapper { */ List selectNextInstitution(String institutionId); + List selectPreviousInstitution(@Param("userName") String name); + + List selectInstitution(@Param("pId") List pId); + /** * 根据部门id查询此部门的子一级人员 * @return diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TreeVo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TreeVo.java new file mode 100644 index 00000000..37e2c2dd --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TreeVo.java @@ -0,0 +1,149 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import java.sql.Timestamp; +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/20 0020 10:54 + * @Version 1.0 + */ +@Data +public class TreeVo { + + public interface disable{ + } + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty(value = "上级机构") + @TableField("parent_id") + private String parentId; + + @ApiModelProperty(value = "机构层级") + @TableField("level") + private Integer level; + + @TableField(exist = false) + @ApiModelProperty("是否是机构") + private Boolean disabled; + + @TableField("has_child") + @ApiModelProperty("是否有子节点(1有,0没有)") + private String hasChild; + + @ApiModelProperty(value = "帐户") + @TableField("ACCOUNT") + private String account; + + @ApiModelProperty(value = "密码") + @TableField("PASSWORD") + private String password; + + @ApiModelProperty(value = "用户姓名") + private String name; + + @ApiModelProperty(value = "用户性别(1为男,2为女)") + @TableField("SEX") + private String sex; + + @ApiModelProperty(value = "用户来源") + @TableField("USER_SOURCE") + private String userSource; + + @ApiModelProperty(value = "用户手机号") + @TableField("PHONE") + private String phone; + + @ApiModelProperty(value = "用户状态") + @TableField("STATE") + private String state; + + @ApiModelProperty(value = "用户邮箱") + @TableField("EMAIL") + private String email; + + @ApiModelProperty(value = "所属部门名称") + @TableField("INSTITUTION_NAME") + private String institutionName; + + @ApiModelProperty(value = "所属部门ID") + @TableField("INSTITUTION_ID") + private String institutionId; + + @ApiModelProperty(value = "岗位名") + @TableField("POSITION_NAME") + private String positionName; + + @ApiModelProperty(value = "岗位ID") + @TableField("POSITION_ID") + private String positionId; + + @ApiModelProperty(value = "工号") + @TableField("WORK_NUM") + private String workNum; + + @ApiModelProperty(value = "备注") + @TableField("EXT_INFO") + private String extInfo; + + @TableField("OPER_USER") + private String operUser; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp modifyTime; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "是否禁用(0为未禁用,1为已禁用)") + @NotNull(message = "disableFlag不能为空",groups = {TsUserVO.disable.class}) + @TableField("DISABLE_FLAG") + private String disableFlag; + + @ApiModelProperty(value = "是否锁定") + @TableField("UNLOCK_FLAG") + private String unlockFlag; + + @ApiModelProperty(value = "用户类型") + @TableField("USER_TYPE") + private String userType; + + @ApiModelProperty(value = "对接单点登录用户ID") + @TableField("SSO_ID") + private String ssoId; + + @ApiModelProperty(value = "岗位") + @TableField(exist = false) + private List positions; + + @ApiModelProperty(value = "单位") + @TableField(exist = false) + private String unit; + + @ApiModelProperty(value = "单位Id") + @TableField(exist = false) + private String unitId; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java index 2fefaaf6..1e079bd4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -1,5 +1,6 @@ package com.adc.da.slrs.sarInstitution.service; +import com.adc.da.slrs.sarInstitution.entity.TreeVo; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.baomidou.mybatisplus.extension.service.IService; @@ -38,6 +39,8 @@ public interface ITsInstitutionService extends IService { */ public List getNext(String institutionId,String userName); + public List getNextTwo(String userName); + public List getInstitutionIdToDept(String institutionIds,String userName); public List getNextById(String ids); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index caa2a30f..5ae6190b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarInstitution.service.impl; import com.adc.da.slrs.sarInstitution.dao.TsInstitutionDao; import com.adc.da.slrs.sarInstitution.entity.SyncInstitution; +import com.adc.da.slrs.sarInstitution.entity.TreeVo; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; @@ -226,6 +227,33 @@ public class TsInstitutionServiceImpl extends ServiceImpl getNextTwo(String userName){ + List tsInstitutions = new ArrayList<>(); + List tsUser = tsInstitutionDao.selectPreviousInstitution(userName); + if(tsUser.size() != 0){ + + List pId = new ArrayList<>(); + for (TsUserVO t:tsUser) { + pId.add(t.getInstitutionId()); + } + tsInstitutions = tsInstitutionDao.selectInstitution(pId); + + for(TsInstitution tsInstitution:tsInstitutions){ + tsInstitution.setDisabled(true); + } + for (TsInstitution t:tsInstitutions){ + List uers = new ArrayList<>(); + for (TsUserVO user:tsUser) { + if(t.getId().equals(user.getInstitutionId())){ + uers.add(user); + } + t.setChildren(uers); + } + } + } + return tsInstitutions; + } + public List getNextById(String ids){ List strings=new ArrayList<>(Arrays.asList(ids.split(","))); List tsUsers=tsInstitutionDao.selectNextUserByIds(strings); diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml index fdf3da7b..dfde8487 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml @@ -21,6 +21,15 @@ + + + + + + + + + @@ -35,6 +44,23 @@ WHERE parent_id=#{institutionId} + + + + +