Commit 80fa8c63 authored by hanfeng's avatar hanfeng

Merge branch 'base-modify' of http://10.5.52.3/youjj/cloud-platform into base-modify

parents f9028bb9 6ce02a22
...@@ -138,6 +138,10 @@ ...@@ -138,6 +138,10 @@
<groupId>org.springframework.cloud</groupId> <groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.cloud</groupId> <groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
......
...@@ -214,4 +214,9 @@ public class AuthController { ...@@ -214,4 +214,9 @@ public class AuthController {
return data; return data;
} }
@PostMapping("/imi/login")
public String loginImiWithToken(){
return authService.loginImiWithToken();
}
} }
...@@ -67,4 +67,8 @@ public interface IUserService { ...@@ -67,4 +67,8 @@ public interface IUserService {
@PostMapping("/api/app/applet/registry") @PostMapping("/api/app/applet/registry")
public JSONObject appletRegistry(@RequestParam(value="username")String username, @RequestParam(value="nickname")String nickname, public JSONObject appletRegistry(@RequestParam(value="username")String username, @RequestParam(value="nickname")String nickname,
@RequestParam(value="headimgurl")String headimgurl,@RequestParam(value="userid",defaultValue="0")Integer userid); @RequestParam(value="headimgurl")String headimgurl,@RequestParam(value="userid",defaultValue="0")Integer userid);
@PostMapping("/api/app/imi/login")
String loginImiWithToken();
} }
...@@ -8,6 +8,7 @@ import feign.RequestTemplate; ...@@ -8,6 +8,7 @@ import feign.RequestTemplate;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
...@@ -22,12 +23,16 @@ public class ClientTokenInterceptor implements RequestInterceptor { ...@@ -22,12 +23,16 @@ public class ClientTokenInterceptor implements RequestInterceptor {
@Autowired @Autowired
private AuthClientService authClientService; private AuthClientService authClientService;
@Value("${auth.user.token-header:Authorization}")
private String tokenHeader;
@Override @Override
public void apply(RequestTemplate requestTemplate) { public void apply(RequestTemplate requestTemplate) {
try { try {
ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
requestTemplate.header(clientConfiguration.getClientTokenHeader(), authClientService.apply(clientConfiguration.getClientId(), clientConfiguration.getClientSecret())); requestTemplate.header(clientConfiguration.getClientTokenHeader(), authClientService.apply(clientConfiguration.getClientId(), clientConfiguration.getClientSecret()));
requestTemplate.header("userHost", ClientUtil.getClientIp(requestAttributes.getRequest())); requestTemplate.header("userHost", ClientUtil.getClientIp(requestAttributes.getRequest()));
requestTemplate.header(tokenHeader,requestAttributes.getRequest().getHeader(tokenHeader));
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
......
...@@ -33,4 +33,6 @@ public interface AuthService { ...@@ -33,4 +33,6 @@ public interface AuthService {
* @return * @return
*/ */
JSONObject appletRegistry(String username,String headimgurl,String nickname,Integer userid); JSONObject appletRegistry(String username,String headimgurl,String nickname,Integer userid);
String loginImiWithToken();
} }
...@@ -96,4 +96,9 @@ public class AppAuthServiceImpl implements AuthService { ...@@ -96,4 +96,9 @@ public class AppAuthServiceImpl implements AuthService {
return userService.appletRegistry(username,headimgurl,nickname,userid); return userService.appletRegistry(username,headimgurl,nickname,userid);
} }
@Override
public String loginImiWithToken() {
return userService.loginImiWithToken();
}
} }
...@@ -93,4 +93,9 @@ public class AuthServiceImpl implements AuthService { ...@@ -93,4 +93,9 @@ public class AuthServiceImpl implements AuthService {
public JSONObject appletRegistry(String username,String headimgurl,String nickname,Integer userid) { public JSONObject appletRegistry(String username,String headimgurl,String nickname,Integer userid) {
return userService.appletRegistry(username,headimgurl,nickname,userid); return userService.appletRegistry(username,headimgurl,nickname,userid);
} }
@Override
public String loginImiWithToken() {
return userService.loginImiWithToken();
}
} }
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<artifactId>ace-monitor</artifactId> <artifactId>ace-monitor</artifactId>
<properties> <properties>
<boot.admin.version>2.1.2</boot.admin.version> <boot.admin.version>2.1.6</boot.admin.version>
</properties> </properties>
<dependencies> <dependencies>
......
/*
* Copyright (C) 2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.github.wxiaoqi.security.monitor.config;
import com.alibaba.nacos.api.naming.listener.EventListener;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cloud.alibaba.nacos.NacosDiscoveryProperties;
import org.springframework.cloud.client.discovery.event.HeartbeatEvent;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.ApplicationEventPublisherAware;
import org.springframework.context.SmartLifecycle;
import org.springframework.scheduling.TaskScheduler;
import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicLong;
/**
* @author xiaojing
*/
public class NacosWatch implements ApplicationEventPublisherAware, SmartLifecycle {
private static final Logger log = LoggerFactory.getLogger(NacosWatch.class);
private final NacosDiscoveryProperties properties;
private long watchDelay = 30000;
private final TaskScheduler taskScheduler;
private final AtomicLong nacosWatchIndex = new AtomicLong(0);
private final AtomicBoolean running = new AtomicBoolean(false);
private ApplicationEventPublisher publisher;
private ScheduledFuture<?> watchFuture;
private Set<String> cacheServices = new HashSet<>();
private HashMap<String, EventListener> subscribeListeners = new HashMap<>();
public NacosWatch(NacosDiscoveryProperties properties) {
this(properties, getTaskScheduler());
}
public NacosWatch(NacosDiscoveryProperties properties, TaskScheduler taskScheduler) {
this.properties = properties;
this.taskScheduler = taskScheduler;
}
private static ThreadPoolTaskScheduler getTaskScheduler() {
ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
taskScheduler.initialize();
return taskScheduler;
}
@Override
public void setApplicationEventPublisher(ApplicationEventPublisher publisher) {
this.publisher = publisher;
}
@Override
public boolean isAutoStartup() {
return true;
}
@Override
public void stop(Runnable callback) {
this.stop();
callback.run();
}
@Override
public void start() {
if (this.running.compareAndSet(false, true)) {
this.watchFuture = this.taskScheduler.scheduleWithFixedDelay(
this::nacosServicesWatch, watchDelay);
}
}
@Override
public void stop() {
if (this.running.compareAndSet(true, false) && this.watchFuture != null) {
this.watchFuture.cancel(true);
}
}
@Override
public boolean isRunning() {
return false;
}
@Override
public int getPhase() {
return 0;
}
public void nacosServicesWatch() {
// nacos doesn't support watch now , publish an event every 30 seconds.
this.publisher.publishEvent(
new HeartbeatEvent(this, nacosWatchIndex.getAndIncrement()));
}
}
package com.github.wxiaoqi.security.monitor.config;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.cloud.alibaba.nacos.NacosDiscoveryProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class NacosWatchAutoConfiguration {
@Bean
@ConditionalOnMissingBean
@ConditionalOnProperty(value = "spring.cloud.nacos.discovery.watch.enabled", matchIfMissing = true)
public NacosWatch nacosWatch(NacosDiscoveryProperties nacosDiscoveryProperties) {
return new NacosWatch(nacosDiscoveryProperties);
}
}
\ No newline at end of file
...@@ -6,6 +6,7 @@ import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel; ...@@ -6,6 +6,7 @@ import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO; import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.admin.vo.ImiVo;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -111,4 +112,8 @@ public interface UserFeign { ...@@ -111,4 +112,8 @@ public interface UserFeign {
@GetMapping("/app/user/one") @GetMapping("/app/user/one")
public AppUserLogin one(@RequestParam(value = "username")String username); public AppUserLogin one(@RequestParam(value = "username")String username);
@GetMapping("/api/app/imi/{imiId}")
public ImiVo findUserInfoByImiId(@PathVariable(value = "imiId") Integer imiId);
} }
package com.xxfc.platform.order.rest.common; package com.github.wxiaoqi.security.admin.feign.rest;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
...@@ -8,7 +8,7 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode; ...@@ -8,7 +8,7 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
public interface CommonInterface { public interface UserRestInterface {
public UserFeign getUserFeign(); public UserFeign getUserFeign();
public HttpServletRequest getRequest(); public HttpServletRequest getRequest();
......
package com.github.wxiaoqi.security.admin.vo;
import lombok.Data;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/15 16:35
*/
@Data
public class ImiVo {
private String nickname;
private String headimgurl;
}
...@@ -4,6 +4,10 @@ import io.swagger.annotations.ApiModelProperty; ...@@ -4,6 +4,10 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
/** /**
* @author libin * @author libin
...@@ -42,14 +46,16 @@ public class SellingWalletVo { ...@@ -42,14 +46,16 @@ public class SellingWalletVo {
@ApiModelProperty(value = "售价") @ApiModelProperty(value = "售价")
private BigDecimal price; private BigDecimal price;
@ApiModelProperty(value = "创建时间", hidden = true ) @ApiModelProperty(value = "创建时间", hidden = true)
private Long crtTime; private Long crtTime;
@ApiModelProperty(value = "更新时间", hidden = true ) @ApiModelProperty(value = "更新时间", hidden = true)
private Long updTime; private Long updTime;
@ApiModelProperty("是否入账:0-未入账;1-已入账")
private Integer waiting; private Integer waiting;
@ApiModelProperty("'类别:0-正;1-负(退款时)")
private Integer status; private Integer status;
/** /**
* 所获佣金 * 所获佣金
......
package com.github.wxiaoqi.security.admin.vo; package com.github.wxiaoqi.security.admin.vo;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.beans.BeanUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.Instant;
import java.util.ArrayList;
import java.util.List;
/** /**
* @author libin * @author libin
......
...@@ -179,4 +179,15 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> { ...@@ -179,4 +179,15 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
} }
return userIdAndAppUserLoginMap; return userIdAndAppUserLoginMap;
} }
public AppUserLogin findUserByImiId(Integer imiId) {
Example example = new Example(AppUserLogin.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("imUserid",imiId);
List<AppUserLogin> appUserLogins = mapper.selectByExample(example);
if (CollectionUtils.isNotEmpty(appUserLogins)){
return appUserLogins.get(0);
}
return null;
}
} }
...@@ -15,6 +15,7 @@ import tk.mybatis.mapper.entity.Example; ...@@ -15,6 +15,7 @@ import tk.mybatis.mapper.entity.Example;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
...@@ -40,6 +41,11 @@ public class MyWalletCathBiz extends BaseBiz<MyWalletCathMapper, MyWalletCath> { ...@@ -40,6 +41,11 @@ public class MyWalletCathBiz extends BaseBiz<MyWalletCathMapper, MyWalletCath> {
List<MyWalletCath> walletCaths = walletCathPage.getData(); List<MyWalletCath> walletCaths = walletCathPage.getData();
if (CollectionUtils.isEmpty(walletCaths)){ if (CollectionUtils.isEmpty(walletCaths)){
walletCathPageVo.setPageNum(pageNo);
walletCathPageVo.setPageSize(pageSize);
walletCathPageVo.setTotalCount(0);
walletCathPageVo.setTotalPage(0);
walletCathPageVo.setWalletCaths(Collections.EMPTY_LIST);
return walletCathPageVo; return walletCathPageVo;
} }
......
...@@ -33,14 +33,14 @@ public class MyWalletDetailBiz extends BaseBiz<MyWalletDetailMapper, MyWalletDet ...@@ -33,14 +33,14 @@ public class MyWalletDetailBiz extends BaseBiz<MyWalletDetailMapper, MyWalletDet
Example.Criteria criteria = example.createCriteria(); Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("userId",userId); criteria.andEqualTo("userId",userId);
PageDataVO<WalletDetailPageVo> walletDetailPageVoPageDataVO = PageDataVO.pageInfo(pageNo, pageSize, () -> mapper.selectByExample(example)); PageDataVO<MyWalletDetail> walletDetailPageVoPageDataVO = PageDataVO.pageInfo(pageNo, pageSize, () -> mapper.selectByExample(example));
List<WalletDetailPageVo> walletDetails = walletDetailPageVoPageDataVO.getData(); List<MyWalletDetail> walletDetails = walletDetailPageVoPageDataVO.getData();
if (CollectionUtils.isEmpty(walletDetails)){ if (CollectionUtils.isEmpty(walletDetails)){
return walletDetailPageVo; return walletDetailPageVo;
} }
List<WalletDetailPageVo> walletDetailPageVoList = new ArrayList<>(); List<WalletDetailPageVo> walletDetailPageVoList = new ArrayList<>();
WalletDetailPageVo walletDetail; WalletDetailPageVo walletDetail;
for (WalletDetailPageVo walletDetailPage : walletDetails) { for (MyWalletDetail walletDetailPage : walletDetails) {
walletDetail = new WalletDetailPageVo(); walletDetail = new WalletDetailPageVo();
BeanUtils.copyProperties(walletDetailPage,walletDetail); BeanUtils.copyProperties(walletDetailPage,walletDetail);
walletDetailPageVoList.add(walletDetail); walletDetailPageVoList.add(walletDetail);
......
package com.github.wxiaoqi.security.admin.config;
import org.springframework.amqp.core.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.HashMap;
import java.util.Map;
/**
* rabbitmq配置类
* 包含: 不知道什么orderWater队列
* @author zhoujw
* @date 2019/7/15
*/
@Configuration
public class RabbitConfig {
public static final String HZ_EXC = "hz_exchange";
public static final String ORDER_WATER_QUEUE = "orderWater_queue";
public static final String ORDER_WATER_KEY = "order";
/**
* 队列交换机
* 注意这里的交换机类型:CustomExchange
* @return
*/
@Bean
public DirectExchange directExchange(){
return new DirectExchange(HZ_EXC, true, false);
}
/**
* 队列
* @return
*/
@Bean
public Queue orderWaterQueue(){
return new Queue(ORDER_WATER_QUEUE,true);
}
/**
* 队列绑定交换机
* @return
*/
@Bean
public Binding orderWaterBinding(Queue orderWaterQueue, DirectExchange directExchange){
return BindingBuilder.bind(orderWaterQueue).to(directExchange).with(ORDER_WATER_KEY);
}
}
...@@ -4,9 +4,14 @@ import com.ace.cache.annotation.Cache; ...@@ -4,9 +4,14 @@ import com.ace.cache.annotation.Cache;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.rpc.service.AppPermissionService; import com.github.wxiaoqi.security.admin.rpc.service.AppPermissionService;
import com.github.wxiaoqi.security.admin.rpc.service.PermissionService; import com.github.wxiaoqi.security.admin.rpc.service.PermissionService;
import com.github.wxiaoqi.security.admin.vo.ImiVo;
import com.github.wxiaoqi.security.api.vo.authority.PermissionInfo; import com.github.wxiaoqi.security.api.vo.authority.PermissionInfo;
import com.github.wxiaoqi.security.api.vo.user.AppUserInfo; import com.github.wxiaoqi.security.api.vo.user.AppUserInfo;
import com.github.wxiaoqi.security.api.vo.user.UserInfo; import com.github.wxiaoqi.security.api.vo.user.UserInfo;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.auth.common.util.jwt.IJWTInfo;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.util.process.SystemConfig; import com.github.wxiaoqi.security.common.util.process.SystemConfig;
...@@ -14,7 +19,10 @@ import com.github.wxiaoqi.security.common.util.result.JsonResultUtil; ...@@ -14,7 +19,10 @@ import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -27,6 +35,12 @@ public class AppUserRest { ...@@ -27,6 +35,12 @@ public class AppUserRest {
@Autowired @Autowired
private AppPermissionService appPermissionService; private AppPermissionService appPermissionService;
@Autowired
private UserAuthUtil authUtil;
@Autowired
private UserAuthConfig userAuthConfig;
// @Cache(key="permission") // @Cache(key="permission")
// @RequestMapping(value = "/permissions", method = RequestMethod.GET) // @RequestMapping(value = "/permissions", method = RequestMethod.GET)
// public @ResponseBody // public @ResponseBody
...@@ -199,5 +213,20 @@ public class AppUserRest { ...@@ -199,5 +213,20 @@ public class AppUserRest {
return appPermissionService.appletRegistry(username,headimgurl,nickname,userid); return appPermissionService.appletRegistry(username,headimgurl,nickname,userid);
} }
@PostMapping("/imi/login")
public String loginImiWithToken(){
ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = servletRequestAttributes.getRequest();
try {
IJWTInfo infoFromToken = authUtil.getInfoFromToken(userAuthConfig.getToken(request));
return appPermissionService.loginImiWithUserId(Integer.valueOf(infoFromToken.getId()));
} catch (Exception e) {
throw new BaseException(e);
}
}
@GetMapping("/imi/{imiId}")
public ImiVo findUserInfoByImiId(@PathVariable(value = "imiId") Integer imiId){
return appPermissionService.findUserInoByImiId(imiId);
}
} }
...@@ -12,6 +12,7 @@ import com.github.wxiaoqi.security.admin.dto.BaseUserMemberExportDTO; ...@@ -12,6 +12,7 @@ import com.github.wxiaoqi.security.admin.dto.BaseUserMemberExportDTO;
import com.github.wxiaoqi.security.admin.dto.UserMemberDTO; import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
import com.github.wxiaoqi.security.admin.entity.*; import com.github.wxiaoqi.security.admin.entity.*;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.admin.vo.ImiVo;
import com.github.wxiaoqi.security.api.vo.authority.PermissionInfo; import com.github.wxiaoqi.security.api.vo.authority.PermissionInfo;
import com.github.wxiaoqi.security.api.vo.user.AppUserInfo; import com.github.wxiaoqi.security.api.vo.user.AppUserInfo;
import com.github.wxiaoqi.security.common.msg.BaseResponse; import com.github.wxiaoqi.security.common.msg.BaseResponse;
...@@ -37,14 +38,13 @@ import org.springframework.stereotype.Service; ...@@ -37,14 +38,13 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import javax.servlet.http.HttpServletRequest;
import java.util.HashMap; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
/** /**
...@@ -681,6 +681,12 @@ public class AppPermissionService { ...@@ -681,6 +681,12 @@ public class AppPermissionService {
} }
public String loginImiWithUserId(Integer userId){
AppUserLogin appUserLogin = appUserLoginBiz.getUserById(userId);
String token = loginIm(appUserLogin.getUsername(), appUserLogin.getImPassword(), userId);
return token;
}
//登录im //登录im
public String loginIm(String username, String password, Integer userId) { public String loginIm(String username, String password, Integer userId) {
...@@ -850,6 +856,20 @@ public class AppPermissionService { ...@@ -850,6 +856,20 @@ public class AppPermissionService {
} }
} }
public ImiVo findUserInoByImiId(Integer imiId) {
ImiVo imiVo = new ImiVo();
AppUserLogin appUserLogin= appUserLoginBiz.findUserByImiId(imiId);
if (appUserLogin==null){
return imiVo;
}
Map<Integer, AppUserDetail> userIdAndAppUserDetail = appUserDetailBiz.findUserIdAndUserDetailMapByMemberIds(Arrays.asList(appUserLogin.getId()));
AppUserDetail appUserDetail = userIdAndAppUserDetail.get(appUserLogin.getId());
imiVo.setNickname(appUserDetail.getNickname());
imiVo.setHeadimgurl(appUserDetail.getHeadimgurl());
return imiVo;
}
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public void insertUserMemberByUserIdAndPhone(Integer userId, String phone) throws Exception { public void insertUserMemberByUserIdAndPhone(Integer userId, String phone) throws Exception {
List<BaseUserMemberExportDTO> memberExportDTOS = baseUserMemberExportBiz.findUserMemberExportDataByPhoneAndHashEffective(phone); List<BaseUserMemberExportDTO> memberExportDTOS = baseUserMemberExportBiz.findUserMemberExportDataByPhoneAndHashEffective(phone);
...@@ -910,7 +930,6 @@ public class AppPermissionService { ...@@ -910,7 +930,6 @@ public class AppPermissionService {
} }
} }
/** /**
* @author libin * @author libin
* @version 1.0.0 * @version 1.0.0
......
...@@ -82,6 +82,11 @@ public class BuyVehicleForm implements Serializable { ...@@ -82,6 +82,11 @@ public class BuyVehicleForm implements Serializable {
@Column(name = "remark") @Column(name = "remark")
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String remark; private String remark;
/**
* 用户id
*/
@Column(name = "user_id")
@ApiModelProperty(value = "用户id")
private Integer userId;
} }
package com.xxfc.platform.app.rest; package com.xxfc.platform.app.rest;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.app.biz.BuyVehicleFormBiz; import com.xxfc.platform.app.biz.BuyVehicleFormBiz;
import com.xxfc.platform.app.entity.BuyVehicleForm; import com.xxfc.platform.app.entity.BuyVehicleForm;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping("buyVehicleForm") @RequestMapping("buyVehicleForm")
public class BuyVehicleFormController extends BaseController<BuyVehicleFormBiz,BuyVehicleForm> { public class BuyVehicleFormController extends BaseController<BuyVehicleFormBiz,BuyVehicleForm> implements UserRestInterface {
@Autowired
UserFeign userFeign;
@Override
public UserFeign getUserFeign() {
return userFeign;
}
@ApiOperation("添加表单")
@RequestMapping(value = "form-add",method = RequestMethod.POST)
@IgnoreClientToken
@ResponseBody
public ObjectRestResponse<BuyVehicleForm> formAdd(@RequestBody BuyVehicleForm entity){
checkAppUser();
entity.setUserId(getAppUser().getUserid());
baseBiz.insertSelective(entity);
return ObjectRestResponse.succ();
}
} }
\ No newline at end of file
...@@ -42,7 +42,10 @@ ...@@ -42,7 +42,10 @@
<groupId>org.springframework.cloud</groupId> <groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter</artifactId> <artifactId>spring-cloud-starter</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- 持久层 --> <!-- 持久层 -->
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
......
...@@ -6,6 +6,7 @@ import cn.hutool.json.JSONUtil; ...@@ -6,6 +6,7 @@ import cn.hutool.json.JSONUtil;
import com.github.wxiaoqi.security.admin.entity.AppUserLogin; import com.github.wxiaoqi.security.admin.entity.AppUserLogin;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO; import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
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;
...@@ -17,7 +18,6 @@ import com.github.wxiaoqi.security.common.util.ClientUtil; ...@@ -17,7 +18,6 @@ import com.github.wxiaoqi.security.common.util.ClientUtil;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.github.wxiaoqi.security.common.vo.PageParam;
import com.xxfc.platform.order.biz.BaseOrderBiz; import com.xxfc.platform.order.biz.BaseOrderBiz;
import com.xxfc.platform.order.biz.OrderMemberDetailBiz; import com.xxfc.platform.order.biz.OrderMemberDetailBiz;
import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum; import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
...@@ -25,7 +25,6 @@ import com.xxfc.platform.order.entity.BaseOrder; ...@@ -25,7 +25,6 @@ import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.mqhandler.RabbitProduct; import com.xxfc.platform.order.mqhandler.RabbitProduct;
import com.xxfc.platform.order.pojo.order.*; import com.xxfc.platform.order.pojo.order.*;
import com.xxfc.platform.order.pojo.pay.OrderPayDTO; import com.xxfc.platform.order.pojo.pay.OrderPayDTO;
import com.xxfc.platform.order.rest.common.CommonInterface;
import com.xxfc.platform.universal.constant.DictionaryKey; import com.xxfc.platform.universal.constant.DictionaryKey;
import com.xxfc.platform.universal.entity.Dictionary; import com.xxfc.platform.universal.entity.Dictionary;
import com.xxfc.platform.universal.feign.ThirdFeign; import com.xxfc.platform.universal.feign.ThirdFeign;
...@@ -58,7 +57,7 @@ import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER; ...@@ -58,7 +57,7 @@ import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER;
@RequestMapping("baseOrder") @RequestMapping("baseOrder")
@Api(value = "订单", tags = {"订单"}) @Api(value = "订单", tags = {"订单"})
@Slf4j @Slf4j
public class BaseOrderController extends CommonBaseController implements CommonInterface { public class BaseOrderController extends CommonBaseController implements UserRestInterface {
public static final Integer STATUS_SUCCESS = 1; public static final Integer STATUS_SUCCESS = 1;
@Autowired @Autowired
......
package com.xxfc.platform.order.rest; package com.xxfc.platform.order.rest;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
...@@ -11,7 +12,6 @@ import com.xxfc.platform.order.biz.OrderRefundBiz; ...@@ -11,7 +12,6 @@ import com.xxfc.platform.order.biz.OrderRefundBiz;
import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum; import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.entity.OrderRefund; import com.xxfc.platform.order.entity.OrderRefund;
import com.xxfc.platform.order.pojo.order.OrderPageVO; import com.xxfc.platform.order.pojo.order.OrderPageVO;
import com.xxfc.platform.order.rest.common.CommonInterface;
import com.xxfc.platform.universal.constant.DictionaryKey; import com.xxfc.platform.universal.constant.DictionaryKey;
import lombok.Data; import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -27,7 +27,7 @@ import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FA ...@@ -27,7 +27,7 @@ import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FA
@Controller @Controller
@RequestMapping("orderRefund") @RequestMapping("orderRefund")
public class OrderRefundController extends BaseController<OrderRefundBiz,OrderRefund> implements CommonInterface { public class OrderRefundController extends BaseController<OrderRefundBiz,OrderRefund> implements UserRestInterface {
@Autowired @Autowired
BaseOrderBiz baseOrderBiz; BaseOrderBiz baseOrderBiz;
......
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