Просмотр исходного кода

角色过滤用户接口修改

szjbdgzl 2 лет назад
Родитель
Сommit
468c8e9b7f

+ 15 - 1
ibps-base-root/modules/base-cloud/src/main/java/com/lc/ibps/cloud/entity/APIRequest.java

@@ -31,6 +31,12 @@ public class APIRequest implements Serializable {
 	 * serialVersionUID:
 	 */
 	private static final long serialVersionUID = -2647543499875978629L;
+
+	/**
+	 * customs:自定义参数对象,不会走封装的逻辑
+	 */
+	@ApiModelProperty(required = false , value = "自定义查询参数对象")
+	private Map<String,Object> customs;
 	
 	/**
 	 * parameters:请求参数列表
@@ -52,7 +58,15 @@ public class APIRequest implements Serializable {
 	public APIRequest(int pageNo, int limit) {
 		this.requestPage = new APIRequestPage(pageNo, limit);
 	}
-	
+
+	public Map<String, Object> getCustoms() {
+		return customs;
+	}
+
+	public void setCustoms(Map<String, Object> customs) {
+		this.customs = customs;
+	}
+
 	public String getParameter(String key){
 		if(BeanUtils.isNotEmpty(parameters))
 		{

+ 3 - 0
ibps-model-root/modules/org-model/src/main/resources/com/lc/ibps/org/party/persistence/mapping/DefaultPartyUser.map.xml

@@ -437,6 +437,9 @@
 			)
 		)
 		</if>
+		<if test="@o.Ognl@isNotEmpty(position)">
+			AND POSITIONS_ in(select id_ from ibps_party_entity where PATH_ like #{position} )
+		</if>
 		<if test="@o.Ognl@isNotEmpty(whereSql)">
 			AND ${whereSql}
 		</if>

+ 1 - 2
ibps-provider-base-root/modules/provider-platform-api/src/main/java/com/lc/ibps/org/api/IPartyEmployeeService.java

@@ -59,8 +59,7 @@ public interface IPartyEmployeeService {
 	 */
 	@RequestMapping(value = "/query", method = RequestMethod.POST)
 	public APIResult<APIPageList<PartyEmployeePo>> query(
-			@RequestBody(required = true) APIRequest request,
-			@RequestParam(name = "position", required = false) String position);
+			@RequestBody(required = true) APIRequest request);
 	
 	/**
 	 * 

+ 1 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/wx/services/impl/wxServicesImpl.java

@@ -189,7 +189,7 @@ public class wxServicesImpl implements wxServices {
         request.addParameters("Q^NAME_^SL",map.get("name").toString());
         request.addParameters("Q^MOBILE_^SL",map.get("mobile").toString());
 
-        APIResult<APIPageList<PartyEmployeePo>> query = employeeServiceClient.query(request,"");
+        APIResult<APIPageList<PartyEmployeePo>> query = employeeServiceClient.query(request);
 
         List<PartyEmployeePo> result = query.getData().getDataResult();
         if (result==null || result.size()==0){ //未查询到数据

+ 22 - 53
ibps-provider-root/modules/provider-platform-default/src/main/java/com/lc/ibps/org/provider/PartyEmployeeProvider.java

@@ -1,25 +1,5 @@
 package com.lc.ibps.org.provider;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-
-import javax.annotation.Resource;
-
-import com.lc.ibps.cloud.entity.*;
-import com.lc.ibps.org.party.persistence.entity.*;
-import org.apache.bcel.generic.I2F;
-import org.apache.commons.lang3.StringUtils;
-import org.slf4j.event.Level;
-import org.springframework.stereotype.Service;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
-
 import com.lc.ibps.api.base.constants.StateEnum;
 import com.lc.ibps.api.base.query.QueryFilter;
 import com.lc.ibps.api.base.query.QueryOP;
@@ -38,6 +18,10 @@ import com.lc.ibps.base.core.util.JacksonUtil;
 import com.lc.ibps.base.core.util.string.StringUtil;
 import com.lc.ibps.base.framework.id.UniqueIdUtil;
 import com.lc.ibps.base.framework.request.signature.annotation.Signature;
+import com.lc.ibps.cloud.entity.APIPageList;
+import com.lc.ibps.cloud.entity.APIRequest;
+import com.lc.ibps.cloud.entity.APIRequestParameter;
+import com.lc.ibps.cloud.entity.APIResult;
 import com.lc.ibps.cloud.oauth.constants.RedisKey;
 import com.lc.ibps.cloud.provider.GenericProvider;
 import com.lc.ibps.cloud.redis.config.AppConfig;
@@ -56,38 +40,23 @@ import com.lc.ibps.org.party.builder.PartyParamsValidator;
 import com.lc.ibps.org.party.builder.PartyRoleBuilder;
 import com.lc.ibps.org.party.builder.PartyUserGroupBuilder;
 import com.lc.ibps.org.party.domain.PartyEmployee;
-import com.lc.ibps.org.party.persistence.entity.PartyAttrPo;
-import com.lc.ibps.org.party.persistence.entity.PartyEmployeePo;
-import com.lc.ibps.org.party.persistence.entity.PartyEntityPo;
-import com.lc.ibps.org.party.persistence.entity.PartyGroupPo;
-import com.lc.ibps.org.party.persistence.entity.PartyLevelPo;
-import com.lc.ibps.org.party.persistence.entity.PartyOrgPo;
-import com.lc.ibps.org.party.persistence.entity.PartyPositionPo;
-import com.lc.ibps.org.party.persistence.entity.PartyRelPo;
-import com.lc.ibps.org.party.persistence.entity.PartyRolePo;
-import com.lc.ibps.org.party.persistence.entity.PartyUserGroupPo;
-import com.lc.ibps.org.party.persistence.entity.PartyUserPo;
+import com.lc.ibps.org.party.persistence.entity.*;
 import com.lc.ibps.org.party.persistence.helper.PartyEmlpoyeeValidator;
 import com.lc.ibps.org.party.persistence.vo.PartyEmployeeVo;
-import com.lc.ibps.org.party.repository.DefaultPartyUserRepository;
-import com.lc.ibps.org.party.repository.PartyAttrRepository;
-import com.lc.ibps.org.party.repository.PartyEmployeeRepository;
-import com.lc.ibps.org.party.repository.PartyEntityRepository;
-import com.lc.ibps.org.party.repository.PartyGroupRepository;
-import com.lc.ibps.org.party.repository.PartyLevelRepository;
-import com.lc.ibps.org.party.repository.PartyOrgRepository;
-import com.lc.ibps.org.party.repository.PartyPositionRepository;
-import com.lc.ibps.org.party.repository.PartyRelRepository;
-import com.lc.ibps.org.party.repository.PartyRoleRepository;
-import com.lc.ibps.org.party.repository.PartyUserGroupRepository;
-import com.lc.ibps.org.party.repository.PartyUserRepository;
+import com.lc.ibps.org.party.repository.*;
 import com.lc.ibps.org.vo.IdKeyVo;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.event.Level;
+import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
 
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import io.swagger.annotations.Extension;
-import io.swagger.annotations.ExtensionProperty;
+import javax.annotation.Resource;
+import java.util.*;
+import java.util.Map.Entry;
 
 /**
  * 员工管理
@@ -144,21 +113,21 @@ public class PartyEmployeeProvider extends GenericProvider implements IPartyEmpl
 	@Override
 	public APIResult<APIPageList<PartyEmployeePo>> query(
 			@ApiParam(name = "request", value = "传入查询请求json字符串", required = true)
-			@RequestBody(required = true) APIRequest request,
-			@RequestParam(name = "position", required = false) String position) {
+			@RequestBody(required = true) APIRequest request) {
 		APIResult<APIPageList<PartyEmployeePo>> result = new APIResult<>();
 		try {
 			List<PartyEmployeePo> list;
 			QueryFilter queryFilter = getQueryFilter(request);
-			if (StringUtil.isNotEmpty(position)){
-				queryFilter.addFilter("PATH_", "%" + position + "%" , QueryOP.LIKE);
+			if (request.getCustoms()!=null){
+				queryFilter.addFilter("PATH_", "%" + request.getCustoms().get("position") + "%" , QueryOP.LIKE);
+				partyEmployeeRepository.setQueryOrgPath();
 				list = partyEmployeeRepository.getEmployeeByPosition(queryFilter);
 			}else {
 				handleParams("query", request, queryFilter);
 				partyEmployeeRepository.setQueryOrgPath();
 				list = partyEmployeeRepository.query(queryFilter);
-				partyEmployeeRepository.removeQueryOrgPath();
 			}
+			partyEmployeeRepository.removeQueryOrgPath();
 			//List<PartyEmployeePo> data = partyEmployeeRepository.transferPoList(list);
 			//fillOrgName(data);
 			APIPageList<PartyEmployeePo> apiPageData = getAPIPageList(list);

+ 5 - 1
ibps-provider-root/modules/provider-platform-default/src/main/java/com/lc/ibps/org/provider/PartyUserProvider.java

@@ -181,6 +181,7 @@ public class PartyUserProvider extends GenericProvider implements IPartyUserServ
 			@ApiParam(name = "request", value = "传入查询请求json字符串", required = true) 
 			@RequestBody(required = true) APIRequest request) {
 		APIResult<APIPageList<PartyUserPo>> result = new APIResult<>();
+
 		try {
 			QueryFilter queryFilter = getQueryFilter(request);
 			
@@ -213,6 +214,7 @@ public class PartyUserProvider extends GenericProvider implements IPartyUserServ
 			@ApiParam(name = "request", value = "传入查询请求json字符串", required = true) 
 			@RequestBody(required = true) APIRequest request) {
 		APIResult<APIPageList<PartyUserPo>> result = new APIResult<>();
+
 		try {
 			logger.debug("com.lc.ibps.org.provider.PartyUserProvider.query4Role()--->params={}",
 					BeanUtils.isNotEmpty(request.getParameters()) ? request.getParameters().toString() : "");
@@ -228,7 +230,9 @@ public class PartyUserProvider extends GenericProvider implements IPartyUserServ
 			} catch (Exception e) {
 				return result;
 			}
-
+			if (request.getCustoms()!=null){
+				queryFilter.addParamsFilter("position", "%" + request.getCustoms().get("position") + "%");
+			}
 			List<PartyUserPo> list = partyUserRepository.queryDialogUserByParam4Role(queryFilter, roleId);
 			APIPageList<PartyUserPo> pageList = getAPIPageList(list);
 			result.setData(pageList);