Commit 1e124bd8 authored by 周健威's avatar 周健威

添加数据权限相关代码

parent 16f0e3c6
...@@ -19,4 +19,11 @@ public class CommonConstants { ...@@ -19,4 +19,11 @@ public class CommonConstants {
public static final String CONTEXT_KEY_USER_TOKEN = "currentUserToken"; public static final String CONTEXT_KEY_USER_TOKEN = "currentUserToken";
public static final String JWT_KEY_USER_ID = "userId"; public static final String JWT_KEY_USER_ID = "userId";
public static final String JWT_KEY_NAME = "name"; public static final String JWT_KEY_NAME = "name";
public static final String JWT_KEY_DATA_ALL = "dataAll";
public static final String JWT_KEY_DATA_ZONE = "dataZone";
public static final String JWT_KEY_DATA_COMMPANY = "dataCommpany";
//数据权限相关
public final static Integer DATA_ALL_TRUE = 1;
public final static Integer DATA_ALL_FALSE = 1;
} }
...@@ -21,4 +21,23 @@ public interface IJWTInfo { ...@@ -21,4 +21,23 @@ public interface IJWTInfo {
* @return * @return
*/ */
String getName(); String getName();
// /**
// * 数据权限 是否拥有所有数据
// * @return
// */
// public Integer getDataAll();
//
// /**
// * 数据权限区域片区
// * @return
// */
// public String getDataZone();
//
// /**
// * 数据权限公司
// * @return
// */
// public String getDataCompany();
} }
...@@ -9,11 +9,17 @@ public class JWTInfo implements Serializable,IJWTInfo { ...@@ -9,11 +9,17 @@ public class JWTInfo implements Serializable,IJWTInfo {
private String username; private String username;
private String userId; private String userId;
private String name; private String name;
// private Integer dataAll;
// private String dataZone;
// private String dataCompany;
public JWTInfo(String username, String userId, String name) { public JWTInfo(String username, String userId, String name) {
this.username = username; this.username = username;
this.userId = userId; this.userId = userId;
this.name = name; this.name = name;
// this.dataAll = dataAll;
// this.dataZone = dataZone;
// this.dataCompany = dataCompany;
} }
@Override @Override
......
...@@ -14,6 +14,9 @@ public class ClientInfo implements IJWTInfo { ...@@ -14,6 +14,9 @@ public class ClientInfo implements IJWTInfo {
this.clientId = clientId; this.clientId = clientId;
this.name = name; this.name = name;
this.id = id; this.id = id;
// this.dataAll = dataAll;
// this.dataZone = dataZone;
// this.dataCompany = dataCompany;
} }
public void setId(String id) { public void setId(String id) {
...@@ -21,6 +24,10 @@ public class ClientInfo implements IJWTInfo { ...@@ -21,6 +24,10 @@ public class ClientInfo implements IJWTInfo {
} }
String id; String id;
// Integer dataAll;
// String dataZone;
// String dataCompany;
public String getClientId() { public String getClientId() {
return clientId; return clientId;
} }
...@@ -33,6 +40,18 @@ public class ClientInfo implements IJWTInfo { ...@@ -33,6 +40,18 @@ public class ClientInfo implements IJWTInfo {
this.name = name; this.name = name;
} }
// public void setDataAll(Integer dataAll) {
// this.dataAll = dataAll;
// }
//
// public void setDataZone(String dataZone) {
// this.dataZone = dataZone;
// }
//
// public void setDataCompany(String dataCompany) {
// this.dataCompany = dataCompany;
// }
@Override @Override
public String getUniqueName() { public String getUniqueName() {
return clientId; return clientId;
...@@ -47,4 +66,19 @@ public class ClientInfo implements IJWTInfo { ...@@ -47,4 +66,19 @@ public class ClientInfo implements IJWTInfo {
public String getName() { public String getName() {
return name; return name;
} }
// @Override
// public Integer getDataAll() {
// return null;
// }
//
// @Override
// public String getDataZone() {
// return null;
// }
//
// @Override
// public String getDataCompany() {
// return null;
// }
} }
...@@ -53,6 +53,11 @@ public class BaseContextHandler { ...@@ -53,6 +53,11 @@ public class BaseContextHandler {
return StringHelper.getObjectValue(value); return StringHelper.getObjectValue(value);
} }
// public static Integer getDataALL(){
// Object value = get(CommonConstants.CONTEXT_KEY_USER_NAME);
// return Integer.valueOf(StringHelper.getObjectValue(value));
// }
public static String getToken(){ public static String getToken(){
Object value = get(CommonConstants.CONTEXT_KEY_USER_TOKEN); Object value = get(CommonConstants.CONTEXT_KEY_USER_TOKEN);
return StringHelper.getObjectValue(value); return StringHelper.getObjectValue(value);
......
...@@ -174,6 +174,11 @@ ...@@ -174,6 +174,11 @@
<groupId>org.springframework.cloud</groupId> <groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies> </dependencies>
<build> <build>
<finalName>ace-admin</finalName> <finalName>ace-admin</finalName>
......
...@@ -66,7 +66,7 @@ public class GroupBiz extends BaseBiz<GroupMapper, Group> { ...@@ -66,7 +66,7 @@ public class GroupBiz extends BaseBiz<GroupMapper, Group> {
* @param userId * @param userId
* @return * @return
*/ */
public Group getUserGroups(int userId) { public List<Group> getUserGroups(int userId) {
return groupMapper.selectMemberGroupByUserId(userId); return groupMapper.selectMemberGroupByUserId(userId);
} }
......
...@@ -2,16 +2,29 @@ package com.github.wxiaoqi.security.admin.biz; ...@@ -2,16 +2,29 @@ package com.github.wxiaoqi.security.admin.biz;
import com.ace.cache.annotation.Cache; import com.ace.cache.annotation.Cache;
import com.ace.cache.annotation.CacheClear; import com.ace.cache.annotation.CacheClear;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.wxiaoqi.security.admin.entity.User; import com.github.wxiaoqi.security.admin.entity.User;
import com.github.wxiaoqi.security.admin.mapper.MenuMapper; import com.github.wxiaoqi.security.admin.mapper.MenuMapper;
import com.github.wxiaoqi.security.admin.mapper.UserMapper; import com.github.wxiaoqi.security.admin.mapper.UserMapper;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil; import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.constant.UserConstant; import com.github.wxiaoqi.security.common.constant.UserConstant;
import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import com.github.wxiaoqi.security.common.util.Query;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.lang.reflect.ParameterizedType;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import static com.github.wxiaoqi.security.auth.common.constatns.CommonConstants.DATA_ALL_TRUE;
/** /**
* ${DESCRIPTION} * ${DESCRIPTION}
...@@ -25,6 +38,7 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -25,6 +38,7 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
@Autowired @Autowired
private MenuMapper menuMapper; private MenuMapper menuMapper;
@Autowired @Autowired
private UserAuthUtil userAuthUtil; private UserAuthUtil userAuthUtil;
@Override @Override
...@@ -52,5 +66,26 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -52,5 +66,26 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
return mapper.selectOne(user); return mapper.selectOne(user);
} }
public TableResultResponse<User> selectPage(Query query, User currentUser) {
if(DATA_ALL_TRUE.equals(currentUser.getDataAll())) {
return super.selectByQuery(query);
}else {
Example example = new Example(User.class);
if(query.entrySet().size()>0) {
Example.Criteria criteria = example.createCriteria();
for (Map.Entry<String, Object> entry : query.entrySet()) {
criteria.andLike(entry.getKey(), "%" + entry.getValue().toString() + "%");
}
}
if(StringUtils.isNotBlank(currentUser.getDataCompany())){
example.createCriteria().andIn("companyId", Arrays.asList(currentUser.getDataCompany().split(",")));
}
if(StringUtils.isNotBlank(currentUser.getDataZone())){
example.createCriteria().andIn("zone", Arrays.asList(currentUser.getDataZone().split(",")));
}
Page<Object> result = PageHelper.startPage(query.getPage(), query.getLimit());
List<User> list = mapper.selectByExample(example);
return new TableResultResponse<User>(result.getTotal(), list);
}
}
} }
...@@ -33,6 +33,9 @@ public class User { ...@@ -33,6 +33,9 @@ public class User {
@Column(name = "status") @Column(name = "status")
private Integer status; private Integer status;
@Column(name = "zone_id")
private Integer zoneId;
private String description; private String description;
@Column(name = "crt_time") @Column(name = "crt_time")
......
...@@ -4,10 +4,12 @@ import com.github.wxiaoqi.security.admin.entity.Group; ...@@ -4,10 +4,12 @@ import com.github.wxiaoqi.security.admin.entity.Group;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.Mapper;
import java.util.List;
public interface GroupMapper extends Mapper<Group> { public interface GroupMapper extends Mapper<Group> {
public void deleteGroupMembersById (@Param("groupId") int groupId); public void deleteGroupMembersById (@Param("groupId") int groupId);
public void deleteGroupLeadersById (@Param("groupId") int groupId); public void deleteGroupLeadersById (@Param("groupId") int groupId);
public void insertGroupMembersById (@Param("groupId") int groupId,@Param("userId") int userId); public void insertGroupMembersById (@Param("groupId") int groupId,@Param("userId") int userId);
public void insertGroupLeadersById (@Param("groupId") int groupId,@Param("userId") int userId); public void insertGroupLeadersById (@Param("groupId") int groupId,@Param("userId") int userId);
public Group selectMemberGroupByUserId(@Param("userId") int userId); public List<Group> selectMemberGroupByUserId(@Param("userId") int userId);
} }
\ No newline at end of file
...@@ -9,4 +9,5 @@ import java.util.List; ...@@ -9,4 +9,5 @@ import java.util.List;
public interface UserMapper extends Mapper<User> { public interface UserMapper extends Mapper<User> {
public List<User> selectMemberByGroupId(@Param("groupId") int groupId); public List<User> selectMemberByGroupId(@Param("groupId") int groupId);
public List<User> selectLeaderByGroupId(@Param("groupId") int groupId); public List<User> selectLeaderByGroupId(@Param("groupId") int groupId);
// public List<User> userPage(@Param("groupId") String name);
} }
\ No newline at end of file
...@@ -6,6 +6,7 @@ import com.github.wxiaoqi.security.admin.biz.UserBiz; ...@@ -6,6 +6,7 @@ import com.github.wxiaoqi.security.admin.biz.UserBiz;
import com.github.wxiaoqi.security.admin.entity.Group; import com.github.wxiaoqi.security.admin.entity.Group;
import com.github.wxiaoqi.security.admin.entity.User; import com.github.wxiaoqi.security.admin.entity.User;
import com.github.wxiaoqi.security.admin.vo.GroupUsers; import com.github.wxiaoqi.security.admin.vo.GroupUsers;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil; import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.common.msg.BaseResponse; import com.github.wxiaoqi.security.common.msg.BaseResponse;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
...@@ -15,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestMethod; ...@@ -15,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
/** /**
* ${DESCRIPTION} * ${DESCRIPTION}
* *
...@@ -33,10 +36,16 @@ public class CurrentController { ...@@ -33,10 +36,16 @@ public class CurrentController {
@Autowired @Autowired
private UserAuthUtil userAuthUtil; private UserAuthUtil userAuthUtil;
@Autowired
private UserAuthConfig userAuthConfig;
@Autowired
protected HttpServletRequest request;
@RequestMapping(value = "/groups", method = RequestMethod.GET) @RequestMapping(value = "/groups", method = RequestMethod.GET)
public @ResponseBody public @ResponseBody
BaseResponse getGroups(String token) throws Exception { BaseResponse getGroups() throws Exception {
String username = userAuthUtil.getInfoFromToken(token).getUniqueName(); String username = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request)).getUniqueName();
if (username == null) { if (username == null) {
throw new Exception(); throw new Exception();
} }
......
...@@ -120,6 +120,22 @@ public class GroupController extends BaseController<GroupBiz, Group> { ...@@ -120,6 +120,22 @@ public class GroupController extends BaseController<GroupBiz, Group> {
return getTree(baseBiz.selectByExample(example), AdminCommonConstant.ROOT); return getTree(baseBiz.selectByExample(example), AdminCommonConstant.ROOT);
} }
// @RequestMapping(value = "/like/{name}", method = RequestMethod.GET)
// @ResponseBody
// public List<Group> getGroupsByName(@PathVariable String name) {
// if(StringUtils.isBlank(name)&&StringUtils.isBlank(name)) {
// return new ArrayList<Group>();
// }
// Example example = new Example(Group.class);
// if (StringUtils.isNotBlank(name)) {
// example.createCriteria().andLike("name", "%" + name + "%");
// }
// if (StringUtils.isNotBlank(groupType)) {
// example.createCriteria().andEqualTo("groupType", groupType);
// }
// return getTree(baseBiz.selectByExample(example), AdminCommonConstant.ROOT);
// }
private List<GroupTree> getTree(List<Group> groups,int root) { private List<GroupTree> getTree(List<Group> groups,int root) {
List<GroupTree> trees = new ArrayList<GroupTree>(); List<GroupTree> trees = new ArrayList<GroupTree>();
......
...@@ -8,13 +8,19 @@ import com.github.wxiaoqi.security.admin.rpc.service.PermissionService; ...@@ -8,13 +8,19 @@ import com.github.wxiaoqi.security.admin.rpc.service.PermissionService;
import com.github.wxiaoqi.security.admin.vo.FrontUser; import com.github.wxiaoqi.security.admin.vo.FrontUser;
import com.github.wxiaoqi.security.admin.vo.MenuTree; import com.github.wxiaoqi.security.admin.vo.MenuTree;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
import com.github.wxiaoqi.security.common.util.Query;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* ${DESCRIPTION} * ${DESCRIPTION}
...@@ -24,6 +30,7 @@ import java.util.List; ...@@ -24,6 +30,7 @@ import java.util.List;
*/ */
@RestController @RestController
@RequestMapping("user") @RequestMapping("user")
@Slf4j
public class UserController extends BaseController<UserBiz,User> { public class UserController extends BaseController<UserBiz,User> {
@Autowired @Autowired
private PermissionService permissionService; private PermissionService permissionService;
...@@ -31,6 +38,12 @@ public class UserController extends BaseController<UserBiz,User> { ...@@ -31,6 +38,12 @@ public class UserController extends BaseController<UserBiz,User> {
@Autowired @Autowired
private MenuBiz menuBiz; private MenuBiz menuBiz;
@Autowired
private UserAuthUtil userAuthUtil;
@Autowired
private UserAuthConfig userAuthConfig;
@Override @Override
@RequestMapping(value = "",method = RequestMethod.POST) @RequestMapping(value = "",method = RequestMethod.POST)
@IgnoreClientToken @IgnoreClientToken
...@@ -60,4 +73,18 @@ public class UserController extends BaseController<UserBiz,User> { ...@@ -60,4 +73,18 @@ public class UserController extends BaseController<UserBiz,User> {
List<Menu> getAllMenus() throws Exception { List<Menu> getAllMenus() throws Exception {
return menuBiz.selectListAll(); return menuBiz.selectListAll();
} }
// @RequestMapping(value = "/page",method = RequestMethod.GET)
// @ResponseBody
// @Override
// public TableResultResponse<User> list(@RequestParam Map<String, Object> params){
// //查询列表数据
// Query query = new Query(params);
// try {
// return baseBiz.selectPage(query, baseBiz.getUserByUsername(userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request)).getUniqueName()));
// }catch (Exception e) {
// log.error(e.getMessage());
// return new TableResultResponse<User>();
// }
// }
} }
...@@ -40,9 +40,16 @@ ...@@ -40,9 +40,16 @@
left join base_group_member gm left join base_group_member gm
on gm.user_id = u.id where gm.group_id = #{groupId} on gm.user_id = u.id where gm.group_id = #{groupId}
</select> </select>
<select id="selectLeaderByGroupId" resultMap="BaseResultMap"> <select id="selectLeaderByGroupId" resultMap="BaseResultMap">
select u.* from base_user u select u.* from base_user u
left join base_group_leader gm left join base_group_leader gm
on gm.user_id = u.id where gm.group_id = #{groupId} on gm.user_id = u.id where gm.group_id = #{groupId}
</select> </select>
<!-- <select id="userPage" resultMap="BaseResultMap">-->
<!-- select u.* from base_user u-->
<!-- left join base_group_leader gm-->
<!-- on gm.user_id = u.id where gm.group_id = #{groupId}-->
<!-- </select>-->
</mapper> </mapper>
\ No newline at end of file
...@@ -15,6 +15,9 @@ public class UserInfo implements Serializable{ ...@@ -15,6 +15,9 @@ public class UserInfo implements Serializable{
public String password; public String password;
public String name; public String name;
private String description; private String description;
private Integer dataAll;
private String dataZone;
private String dataCompany;
public Date getUpdTime() { public Date getUpdTime() {
return updTime; return updTime;
...@@ -65,4 +68,28 @@ public class UserInfo implements Serializable{ ...@@ -65,4 +68,28 @@ public class UserInfo implements Serializable{
public void setDescription(String description) { public void setDescription(String description) {
this.description = description; this.description = description;
} }
public Integer getDataAll() {
return dataAll;
}
public void setDataAll(Integer dataAll) {
this.dataAll = dataAll;
}
public String getDataZone() {
return dataZone;
}
public void setDataZone(String dataZone) {
this.dataZone = dataZone;
}
public String getDataCompany() {
return dataCompany;
}
public void setDataCompany(String dataCompany) {
this.dataCompany = dataCompany;
}
} }
...@@ -15,6 +15,7 @@ import com.xinxincaravan.caravan.vehicle.vo.PageDataVo; ...@@ -15,6 +15,7 @@ import com.xinxincaravan.caravan.vehicle.vo.PageDataVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.io.FileUtils; import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime; import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter; import org.joda.time.format.DateTimeFormatter;
...@@ -27,8 +28,11 @@ import org.springframework.web.multipart.MultipartFile; ...@@ -27,8 +28,11 @@ import org.springframework.web.multipart.MultipartFile;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
import java.io.File; import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Service @Service
@Slf4j @Slf4j
...@@ -150,6 +154,16 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany ...@@ -150,6 +154,16 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany
return RestResponse.suc(realFileRelPath); return RestResponse.suc(realFileRelPath);
} }
@Cache(key="branchCompany:dataCompany{1}")
public List<BranchCompany> dataCompany(String dataZone) {
if(StringUtils.isBlank(dataZone)) {
return new ArrayList<BranchCompany>();
}
List<Integer> zoneIds = Arrays.asList(dataZone.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
Example example = new Example(BranchCompany.class);
example.createCriteria().andIn("zoneId", zoneIds);
List<BranchCompany> zoneCompanys = selectByExample(example);
return zoneCompanys;
}
} }
package com.xinxincaravan.caravan.vehicle.biz; package com.xinxincaravan.caravan.vehicle.biz;
import com.ace.cache.annotation.Cache;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
...@@ -9,6 +10,7 @@ import com.xinxincaravan.caravan.vehicle.common.CustomIllegalParamException; ...@@ -9,6 +10,7 @@ import com.xinxincaravan.caravan.vehicle.common.CustomIllegalParamException;
import com.xinxincaravan.caravan.vehicle.common.RestResponse; import com.xinxincaravan.caravan.vehicle.common.RestResponse;
import com.xinxincaravan.caravan.vehicle.constant.*; import com.xinxincaravan.caravan.vehicle.constant.*;
import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode; import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode;
import com.xinxincaravan.caravan.vehicle.entity.BranchCompany;
import com.xinxincaravan.caravan.vehicle.entity.Vehicle; import com.xinxincaravan.caravan.vehicle.entity.Vehicle;
import com.xinxincaravan.caravan.vehicle.entity.VehicleBookInfo; import com.xinxincaravan.caravan.vehicle.entity.VehicleBookInfo;
import com.xinxincaravan.caravan.vehicle.entity.VehicleBookRecord; import com.xinxincaravan.caravan.vehicle.entity.VehicleBookRecord;
...@@ -27,6 +29,7 @@ import org.apache.commons.lang3.StringUtils; ...@@ -27,6 +29,7 @@ import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime; import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter; import org.joda.time.format.DateTimeFormatter;
import org.springframework.aop.framework.AopContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
...@@ -43,6 +46,7 @@ import java.io.File; ...@@ -43,6 +46,7 @@ import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.*; import java.util.*;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Service @Service
@Slf4j @Slf4j
...@@ -790,4 +794,15 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> { ...@@ -790,4 +794,15 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
return PageDataVo.pageInfo(vehiclePageInfo); return PageDataVo.pageInfo(vehiclePageInfo);
} }
public List<Integer> dataCompany(String dataZone, String dataCompany) {
List<BranchCompany> zoneCompanys = branchCompanyBiz.dataCompany(dataZone);
//((VehicleBiz)AopContext.currentProxy()).dataCompany(dataZone);
List<Integer> zoneCompanyIds = zoneCompanys.parallelStream().map(BranchCompany::getId).collect(Collectors.toList());
if(StringUtils.isNotBlank(dataCompany)) {
List<Integer> dataCompanyIds = Arrays.asList(dataCompany.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
zoneCompanyIds.addAll(dataCompanyIds);
}
//去重
return zoneCompanyIds.parallelStream().distinct().collect(Collectors.toList());
}
} }
...@@ -87,4 +87,6 @@ public class BranchCompany { ...@@ -87,4 +87,6 @@ public class BranchCompany {
private BigDecimal longitude; private BigDecimal longitude;
private String companyPic; private String companyPic;
private Integer zoneId;
} }
\ No newline at end of file
...@@ -5,11 +5,14 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,11 +5,14 @@ import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig; import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.xinxincaravan.caravan.vehicle.biz.BranchCompanyBiz; import com.xinxincaravan.caravan.vehicle.biz.BranchCompanyBiz;
import com.xinxincaravan.caravan.vehicle.biz.VehicleBiz;
import com.xinxincaravan.caravan.vehicle.common.BaseController; import com.xinxincaravan.caravan.vehicle.common.BaseController;
import com.xinxincaravan.caravan.vehicle.common.RestResponse; import com.xinxincaravan.caravan.vehicle.common.RestResponse;
import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode; import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode;
import com.xinxincaravan.caravan.vehicle.entity.BranchCompany; import com.xinxincaravan.caravan.vehicle.entity.BranchCompany;
import com.xinxincaravan.caravan.vehicle.entity.Vehicle;
import com.xinxincaravan.caravan.vehicle.feign.UserFeign; import com.xinxincaravan.caravan.vehicle.feign.UserFeign;
import com.xinxincaravan.caravan.vehicle.feign.dto.UserDTO; import com.xinxincaravan.caravan.vehicle.feign.dto.UserDTO;
import com.xinxincaravan.caravan.vehicle.vo.BranchCompanyVo; import com.xinxincaravan.caravan.vehicle.vo.BranchCompanyVo;
...@@ -32,6 +35,9 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> { ...@@ -32,6 +35,9 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> {
@Autowired @Autowired
UserFeign userFeign; UserFeign userFeign;
@Autowired
VehicleBiz vehicleBiz;
@Autowired @Autowired
private UserAuthConfig userAuthConfig; private UserAuthConfig userAuthConfig;
...@@ -42,6 +48,7 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> { ...@@ -42,6 +48,7 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> {
@RequestParam(required = false) Integer addrTown) { @RequestParam(required = false) Integer addrTown) {
UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData(); UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData();
log.info(JSONObject.toJSONString(userDTO)); log.info(JSONObject.toJSONString(userDTO));
log.info(JSONObject.toJSONString(vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany())));
return RestResponse.data(baseBiz.getAll(page,limit,addrProvince, addrCity, return RestResponse.data(baseBiz.getAll(page,limit,addrProvince, addrCity,
addrTown)); addrTown));
} }
......
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