Commit ff3428d9 authored by 周健威's avatar 周健威

Merge branch 'dev' into base-modify

# Conflicts:
#	ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/AppUserLoginBiz.java
#	xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
parents 3a415542 606ae041
...@@ -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();
}
} }
...@@ -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.github.wxiaoqi.security.admin.vo;
import lombok.Data;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/15 18:15
*/
@Data
public class ImiVo {
private String nickname;
private String headimgurl;
}
...@@ -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;
}
} }
...@@ -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,12 @@ import org.springframework.stereotype.Service; ...@@ -37,14 +38,12 @@ 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 java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
/** /**
...@@ -681,6 +680,12 @@ public class AppPermissionService { ...@@ -681,6 +680,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 +855,20 @@ public class AppPermissionService { ...@@ -850,6 +855,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);
......
...@@ -3,6 +3,7 @@ package com.github.wxiaoqi.security.api.vo.config; ...@@ -3,6 +3,7 @@ package com.github.wxiaoqi.security.api.vo.config;
import feign.Logger; import feign.Logger;
import feign.RequestInterceptor; import feign.RequestInterceptor;
import feign.RequestTemplate; import feign.RequestTemplate;
import org.springframework.util.StringUtils;
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;
...@@ -30,11 +31,13 @@ public class HeaderConfig implements RequestInterceptor { ...@@ -30,11 +31,13 @@ public class HeaderConfig implements RequestInterceptor {
while (headerNames.hasMoreElements()){ while (headerNames.hasMoreElements()){
String headerName = headerNames.nextElement(); String headerName = headerNames.nextElement();
String headerValue = request.getHeader(headerName); String headerValue = request.getHeader(headerName);
if("Authorization".equals(headerName)) {
template.header(headerName,headerValue); template.header(headerName,headerValue);
} }
} }
} }
} }
}
} }
...@@ -56,6 +56,10 @@ ...@@ -56,6 +56,10 @@
<artifactId>mybatis-spring-boot-starter</artifactId> <artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.4</version> <version>1.3.4</version>
</dependency> </dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency> <dependency>
<groupId>com.github.pagehelper</groupId> <groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId> <artifactId>pagehelper-spring-boot-starter</artifactId>
......
...@@ -11,6 +11,7 @@ import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; ...@@ -11,6 +11,7 @@ import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.IntervalUtil; import com.github.wxiaoqi.security.common.util.IntervalUtil;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.xxfc.platform.order.biz.inner.OrderMsgBiz;
import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum; import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum; import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.contant.enumerate.RefundStatusEnum; import com.xxfc.platform.order.contant.enumerate.RefundStatusEnum;
...@@ -82,6 +83,9 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -82,6 +83,9 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
@Autowired @Autowired
UserFeign userFeign; UserFeign userFeign;
@Autowired
OrderMsgBiz orderMsgBiz;
public List<OrderPageVO> pageByParm(Map<String, Object> paramMap){ public List<OrderPageVO> pageByParm(Map<String, Object> paramMap){
return mapper.pageByParm(paramMap); return mapper.pageByParm(paramMap);
} }
...@@ -206,6 +210,15 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -206,6 +210,15 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
//退款流程 //退款流程
rentRefundProcess(hasUpdateOrder, orvd.getDeposit(), timeLag, APP_ORDER+ "_"+ RENT_REFUND); rentRefundProcess(hasUpdateOrder, orvd.getDeposit(), timeLag, APP_ORDER+ "_"+ RENT_REFUND);
//已付款的取消订单发送消息
try {
AppUserDTO appUserDTO = userFeign.userDetailById(baseOrder.getUserId()).getData();
//处理后台用户提醒短信的发送
orderMsgBiz.handelBgUserMsg4Pay(orvd, baseOrder, appUserDTO, OrderMsgBiz.RENT_CANCEL);
}catch (Exception e) {
log.error(e.getMessage(), e);
}
}else if (OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) { }else if (OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) {
OrderTourDetail otd = orderTourDetailBiz.selectOne(new OrderTourDetail(){{ OrderTourDetail otd = orderTourDetailBiz.selectOne(new OrderTourDetail(){{
setOrderId(baseOrder.getId()); setOrderId(baseOrder.getId());
...@@ -244,7 +257,6 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -244,7 +257,6 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
throw new BaseException(ResultCode.FAILED_CODE); throw new BaseException(ResultCode.FAILED_CODE);
} }
} }
}else if(OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) { }else if(OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) {
OrderTourDetail otd = orderTourDetailBiz.selectOne(new OrderTourDetail(){{ OrderTourDetail otd = orderTourDetailBiz.selectOne(new OrderTourDetail(){{
setOrderId(baseOrder.getId()); setOrderId(baseOrder.getId());
...@@ -452,51 +464,24 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -452,51 +464,24 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
try { try {
this.updateSelectiveByIdRe(updateOrder); this.updateSelectiveByIdRe(updateOrder);
}finally { }finally {
OrderTypeEnum orderTypeEnum = OrderTypeEnum.codeAndDesc.get(baseOrder.getType());
AppUserDTO appUserDTO = userFeign.userDetailById(baseOrder.getUserId()).getData(); AppUserDTO appUserDTO = userFeign.userDetailById(baseOrder.getUserId()).getData();
Integer smstype;
List<String> smsParams = new ArrayList<String>(); //处理App用户提醒短信的发送
smsParams.add(baseOrder.getRealAmount().toString()); //orderMsgBiz.handelAppUserMsg(orvd, omd, baseOrder, appUserDTO);
switch (orderTypeEnum) {
case RENT_VEHICLE: //处理后台用户提醒短信的发送
if(orvd.getFreeDays() > 0) { orderMsgBiz.handelBgUserMsg4Pay(orvd, baseOrder, appUserDTO, OrderMsgBiz.RENT_PAY);
smstype = SmsTemplateDTO.RENT_MEMENT;
smsParams.add(orvd.getFreeDays().toString());
smsParams.add(appUserDTO.getRentFreeDays().toString());
}else {
smstype = SmsTemplateDTO.RENT_NORMAL;
}
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(appUserDTO.getUsername());
setType(smstype);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
break;
case TOUR:
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(appUserDTO.getUsername());
setType(SmsTemplateDTO.TOUR);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
break;
case MEMBER:
smsParams.add(omd.getRentFreeNum().toString());
smsParams.add(appUserDTO.getRentFreeDays().toString());
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(appUserDTO.getUsername());
setType(SmsTemplateDTO.MEMENT);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
break;
default:
break;
}
} }
} else { } else {
log.error(" order has payed , orderNo:{}, tradeNo:{} ", orderNo, tradeNo); log.error(" order has payed , orderNo:{}, tradeNo:{} ", orderNo, tradeNo);
} }
} }
/**
* 更新(不成功抛异常)
* @param baseOrder
* @return
*/
public BaseOrder updateSelectiveByIdReT(BaseOrder baseOrder) { public BaseOrder updateSelectiveByIdReT(BaseOrder baseOrder) {
if(updateSelectiveByIdRe(baseOrder) > 0) { if(updateSelectiveByIdRe(baseOrder) > 0) {
return selectById(baseOrder.getId()); return selectById(baseOrder.getId());
......
package com.xxfc.platform.order.biz.inner;
import cn.hutool.core.date.DateUtil;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderMemberDetail;
import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import com.xxfc.platform.universal.dto.SmsTemplateDTO;
import com.xxfc.platform.universal.feign.ThirdFeign;
import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE;
/**
* 订单退款记录表
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-18 11:08:09
*/
@Slf4j
@Service
public class OrderMsgBiz {
//客户通知
public static final int RENT_PAY = 1;
public static final int RENT_DELIVERY = 2;
public static final int RENT_CANCEL = 3;
@Autowired
UserFeign userFeign;
@Autowired
ThirdFeign thirdFeign;
@Autowired
VehicleFeign vehicleFeign;
/**
* 处理App用户提醒短信的发送
* @param orvd
* @param omd
* @param baseOrder
* @param appUserDTO
*/
public void handelAppUserMsg(OrderRentVehicleDetail orvd, OrderMemberDetail omd, BaseOrder baseOrder, AppUserDTO appUserDTO) {
try {
OrderTypeEnum orderTypeEnum = OrderTypeEnum.codeAndDesc.get(baseOrder.getType());
Integer smstype;
List<String> smsParams = new ArrayList<String>();
smsParams.add(baseOrder.getRealAmount().toString());
switch (orderTypeEnum) {
case RentVehicle:
if(orvd.getFreeDays() > 0) {
smstype = SmsTemplateDTO.RENT_MEMENT;
smsParams.add(orvd.getFreeDays().toString());
smsParams.add(appUserDTO.getRentFreeDays().toString());
}else {
smstype = SmsTemplateDTO.RENT_NORMAL;
}
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(appUserDTO.getUsername());
setType(smstype);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
break;
case TOUR:
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(appUserDTO.getUsername());
setType(SmsTemplateDTO.TOUR);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
break;
case MEMBER:
smsParams.add(omd.getRentFreeNum().toString());
smsParams.add(appUserDTO.getRentFreeDays().toString());
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(appUserDTO.getUsername());
setType(SmsTemplateDTO.MEMENT);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
break;
default:
break;
}
}catch (Exception e) {
log.error(e.getMessage(), e);
}
}
/**
* 处理后台用户提醒短信的发送
* @param orvd
* @param baseOrder
* @param appUserDTO
*/
public void handelBgUserMsg4Pay(OrderRentVehicleDetail orvd, BaseOrder baseOrder, AppUserDTO appUserDTO, Integer handelType) {
try {
OrderTypeEnum orderTypeEnum = OrderTypeEnum.codeAndDesc.get(baseOrder.getType());
Integer smstype;
List<String> smsParams = new ArrayList<String>();
switch (orderTypeEnum) {
case RentVehicle:
switch (handelType) {
case RENT_PAY:
//如果公司相同
if(null != orvd.getStartCompanyId() && !SYS_FALSE.equals(orvd.getStartCompanyId())) {
CompanyDetail companyDetail = vehicleFeign.getCompanyDetail(orvd.getStartCompanyId()).getData();
if(orvd.getStartCompanyId().equals(orvd.getEndCompanyId())) {
smstype = SmsTemplateDTO.TAAKE_CAR;
}else {
smstype = SmsTemplateDTO.DIFFERENT_TAAKE_CAR;
}
handelSmsParam(orvd, baseOrder, smsParams, appUserDTO, RENT_PAY);
SmsTemplateDTO smsTemplateDTO = new SmsTemplateDTO(){{
setPhoneNumbers(companyDetail.getVehiceServicePhone());
setType(smstype);
setParams(smsParams.toArray(new String[smsParams.size()]));
}};
thirdFeign.sendTemplate(smsTemplateDTO);
}else {
log.error("通知后台客户短信异常,开始公司id 不存在或者为0 订单号:{}", baseOrder.getId());
}
break;
case RENT_DELIVERY:
//如果公司相同
if(null != orvd.getEndCompanyId() && !SYS_FALSE.equals(orvd.getEndCompanyId())) {
CompanyDetail companyDetail = vehicleFeign.getCompanyDetail(orvd.getEndCompanyId()).getData();
//不相同发送,相同不用发送
if(!orvd.getEndCompanyId().equals(orvd.getStartCompanyId())) {
handelSmsParam(orvd, baseOrder, smsParams, appUserDTO, RENT_DELIVERY);
thirdFeign.sendTemplate(new SmsTemplateDTO(){{
setPhoneNumbers(companyDetail.getVehiceServicePhone());
setType(SmsTemplateDTO.ALSO_CAR);
setParams(smsParams.toArray(new String[smsParams.size()]));
}});
}
}else {
log.error("通知后台客户短信异常,结束公司id 不存在或者为0 订单号:{}", baseOrder.getId());
}
break;
case RENT_CANCEL:
if(null != orvd.getEndCompanyId() && !SYS_FALSE.equals(orvd.getEndCompanyId())) {
handelSmsParam(orvd, baseOrder, smsParams, appUserDTO, RENT_CANCEL);
CompanyDetail companyDetail2 = vehicleFeign.getCompanyDetail(orvd.getEndCompanyId()).getData();
SmsTemplateDTO smsTemplateDTO = new SmsTemplateDTO();
smsTemplateDTO.setPhoneNumbers(companyDetail2.getVehiceServicePhone());
smsTemplateDTO.setType(Integer.valueOf(SmsTemplateDTO.CANCEL));
List<String> smsParams2 = smsParams;
smsTemplateDTO.setParams(smsParams2.toArray(new String[smsParams2.size()]));
thirdFeign.sendTemplate(smsTemplateDTO);
}else {
log.error("通知后台客户短信异常,结束公司id 不存在或者为0 订单号:{}", baseOrder.getId());
}
break;
default:
break;
}
break;
default:
break;
}
}catch (Exception e) {
log.error(e.getMessage(), e);
}
}
private void handelSmsParam(OrderRentVehicleDetail orvd, BaseOrder baseOrder, List<String> smsParams, AppUserDTO appUserDTO, int handelType) {
if(RENT_DELIVERY == handelType) {
smsParams.add(appUserDTO.getRealname());
smsParams.add(DateUtil.formatDateTime(DateUtil.date(orvd.getEndTime())));
smsParams.add(orvd.getEndAddr());
smsParams.add(baseOrder.getName());
smsParams.add(appUserDTO.getUsername());
}else {
smsParams.add(appUserDTO.getRealname());
smsParams.add(baseOrder.getName());
smsParams.add(orvd.getStartAddr());
smsParams.add(orvd.getEndAddr());
smsParams.add(DateUtil.formatDateTime(DateUtil.date(orvd.getStartTime())));
smsParams.add(DateUtil.formatDateTime(DateUtil.date(orvd.getEndTime())));
smsParams.add(orvd.getDayNum().toString());
smsParams.add(appUserDTO.getUsername());
}
}
}
\ No newline at end of file
...@@ -2,16 +2,22 @@ package com.xxfc.platform.order.rest; ...@@ -2,16 +2,22 @@ package com.xxfc.platform.order.rest;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.bean.copier.CopyOptions;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
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.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.order.biz.BaseOrderBiz; import com.xxfc.platform.order.biz.BaseOrderBiz;
import com.xxfc.platform.order.biz.OrderRentVehicleBiz;
import com.xxfc.platform.order.biz.OrderUserLicenseBiz; import com.xxfc.platform.order.biz.OrderUserLicenseBiz;
import com.xxfc.platform.order.biz.OrderVehicalCrosstownBiz; import com.xxfc.platform.order.biz.OrderVehicalCrosstownBiz;
import com.xxfc.platform.order.biz.inner.OrderMsgBiz;
import com.xxfc.platform.order.entity.BaseOrder; import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import com.xxfc.platform.order.entity.OrderUserLicense; import com.xxfc.platform.order.entity.OrderUserLicense;
import com.xxfc.platform.order.entity.OrderVehicaleCrosstown; import com.xxfc.platform.order.entity.OrderVehicaleCrosstown;
import com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto; import com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto;
import com.xxfc.platform.universal.dto.SmsTemplateDTO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -36,6 +42,15 @@ public class OrderVehicleCrosstownController { ...@@ -36,6 +42,15 @@ public class OrderVehicleCrosstownController {
@Autowired @Autowired
BaseOrderBiz baseOrderBiz; BaseOrderBiz baseOrderBiz;
@Autowired
OrderMsgBiz orderMsgBiz;
@Autowired
OrderRentVehicleBiz orderRentVehicleBiz;
@Autowired
UserFeign userFeign;
@PostMapping(value = "/add") @PostMapping(value = "/add")
@ApiOperation(value = "添加交还车记录") @ApiOperation(value = "添加交还车记录")
@Transactional @Transactional
...@@ -76,6 +91,12 @@ public class OrderVehicleCrosstownController { ...@@ -76,6 +91,12 @@ public class OrderVehicleCrosstownController {
if(baseOrder.getStatus() == 4) { if(baseOrder.getStatus() == 4) {
baseOrder.setStatus(5); baseOrder.setStatus(5);
baseOrderBiz.updateSelectiveById(baseOrder); baseOrderBiz.updateSelectiveById(baseOrder);
//更新orderdetail
OrderRentVehicleDetail orvd = orderRentVehicleBiz.selectOne(new OrderRentVehicleDetail(){{
setOrderId(baseOrder.getId());
}});
AppUserDTO appUserDTO = userFeign.userDetailById( baseOrder.getUserId()).getData();
orderMsgBiz.handelBgUserMsg4Pay(orvd, baseOrder, appUserDTO, OrderMsgBiz.RENT_DELIVERY);
} else if(baseOrder.getStatus() == 5) { } else if(baseOrder.getStatus() == 5) {
baseOrder.setStatus(6); baseOrder.setStatus(6);
baseOrderBiz.updateSelectiveById(baseOrder); baseOrderBiz.updateSelectiveById(baseOrder);
......
...@@ -22,9 +22,11 @@ import com.xxfc.platform.order.pojo.order.RentVehicleBO; ...@@ -22,9 +22,11 @@ import com.xxfc.platform.order.pojo.order.RentVehicleBO;
import com.xxfc.platform.order.pojo.price.RentVehiclePriceVO; import com.xxfc.platform.order.pojo.price.RentVehiclePriceVO;
import com.xxfc.platform.universal.constant.DictionaryKey; import com.xxfc.platform.universal.constant.DictionaryKey;
import com.xxfc.platform.universal.feign.ThirdFeign; import com.xxfc.platform.universal.feign.ThirdFeign;
import com.xxfc.platform.vehicle.entity.BranchCompany;
import com.xxfc.platform.vehicle.entity.VehicleBookRecord; import com.xxfc.platform.vehicle.entity.VehicleBookRecord;
import com.xxfc.platform.vehicle.entity.VehicleModel; import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.feign.VehicleFeign; import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO; import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -34,8 +36,10 @@ import javax.annotation.PostConstruct; ...@@ -34,8 +36,10 @@ import javax.annotation.PostConstruct;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.List;
import static com.github.wxiaoqi.security.admin.constant.enumerate.MemberEnum.*; import static com.github.wxiaoqi.security.admin.constant.enumerate.MemberEnum.*;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE; import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE;
import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER; import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER;
...@@ -83,6 +87,24 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -83,6 +87,24 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
initDictionary(); initDictionary();
VehicleModel vehicleModel = vehicleFeign.get(bo.getModelId()).getData(); VehicleModel vehicleModel = vehicleFeign.get(bo.getModelId()).getData();
bo.setVehicleModel(vehicleModel); bo.setVehicleModel(vehicleModel);
//根据还车城市设置还车公司id
if(SYS_FALSE.equals(bo.getEndCompanyId())) {
if(null != bo.getEndCity() && null != bo.getStartCity()) {
if(bo.getEndCity().equals(bo.getStartCity())) {
bo.setEndCompanyId(bo.getStartCompanyId());
}else {
//查询结束城市分公司
List<BranchCompany> companyDetails = vehicleFeign.branchCompanyEntityList(
BeanUtil.beanToMap(new BranchCompany(){{
setAddrCity(bo.getEndCity());
}}, false, true)).getData();
if(null != companyDetails && companyDetails.size() > 0) {
bo.setEndCompanyId(companyDetails.get(0).getId());
}
}
}
}
} }
public void initDictionary() { public void initDictionary() {
......
...@@ -12,11 +12,26 @@ import lombok.Data; ...@@ -12,11 +12,26 @@ import lombok.Data;
*/ */
@Data @Data
public class SmsTemplateDTO { public class SmsTemplateDTO {
//客户通知
public static final int RENT_NORMAL = 1; public static final int RENT_NORMAL = 1;
public static final int RENT_MEMENT = 2; public static final int RENT_MEMENT = 2;
public static final int TOUR = 3; public static final int TOUR = 3;
public static final int MEMENT = 4; public static final int MEMENT = 4;
//后台客服通知
//订单支付完
//租/还车公司相同(订单支付后立即发送给相关负责人)
public static final int TAAKE_CAR = 5;
//租/还车公司不同(发给租车公司负责人,订单支付后发送)
public static final int DIFFERENT_TAAKE_CAR = 6;
//已交车
// 租/还车公司不同(发给还车公司负责人,订单出车后发))(租/还车公司相同不发)
public static final int ALSO_CAR = 7;
//取消订单
public static final int CANCEL = 8;
//类型:1-租车订单通知(普通用户),2-租车订单短信(会员权益),3-旅游订单短信,4-加入会员通知 //类型:1-租车订单通知(普通用户),2-租车订单短信(会员权益),3-旅游订单短信,4-加入会员通知
private Integer type; private Integer type;
//手机号码(多个短信逗号隔开) //手机号码(多个短信逗号隔开)
......
...@@ -11,7 +11,7 @@ import org.springframework.web.bind.annotation.RequestParam; ...@@ -11,7 +11,7 @@ import org.springframework.web.bind.annotation.RequestParam;
* @description 区域码 接口 * @description 区域码 接口
* @data 2019/7/3 20:00 * @data 2019/7/3 20:00
*/ */
@FeignClient(value = "xx-universal",contextId = "region") @FeignClient(value = "xx-universal", contextId = "region")
public interface RegionFeign { public interface RegionFeign {
/** /**
......
...@@ -23,7 +23,7 @@ import java.util.Map; ...@@ -23,7 +23,7 @@ import java.util.Map;
* @author wanghaobin * @author wanghaobin
* @create 2017-06-21 8:11 * @create 2017-06-21 8:11
*/ */
@FeignClient(value = "xx-universal") @FeignClient(value = "xx-universal", contextId = "universal-base")
public interface ThirdFeign { public interface ThirdFeign {
@RequestMapping(value = "/sms/app/unauth/send", method = RequestMethod.GET) @RequestMapping(value = "/sms/app/unauth/send", method = RequestMethod.GET)
public JSONObject send(@RequestParam(value = "phone") String phone); public JSONObject send(@RequestParam(value = "phone") String phone);
...@@ -32,7 +32,7 @@ public interface ThirdFeign { ...@@ -32,7 +32,7 @@ public interface ThirdFeign {
public JSONObject sendCode(@RequestParam("phone") String phone, @RequestParam("code")String code, @RequestParam("templateCode")String templateCode ); public JSONObject sendCode(@RequestParam("phone") String phone, @RequestParam("code")String code, @RequestParam("templateCode")String templateCode );
//云通讯短信机 //云通讯短信机
@RequestMapping(value = "/sms/app/unauth/sendTemplate", method = RequestMethod.POST) @RequestMapping(value = "/sms/app/unauth/sendTemplate", method = RequestMethod.POST)
public ObjectRestResponse sendTemplate(SmsTemplateDTO smsTemplateDTO); public ObjectRestResponse sendTemplate(@RequestBody SmsTemplateDTO smsTemplateDTO);
@RequestMapping(value = "/file/app/unauth/uploadFiles", method = RequestMethod.POST) @RequestMapping(value = "/file/app/unauth/uploadFiles", method = RequestMethod.POST)
public JSONObject uploadFiles(@RequestParam(value = "files") MultipartFile[] files); public JSONObject uploadFiles(@RequestParam(value = "files") MultipartFile[] files);
@RequestMapping(value = "/pay/app/wx", method = RequestMethod.POST) @RequestMapping(value = "/pay/app/wx", method = RequestMethod.POST)
......
...@@ -79,12 +79,6 @@ ...@@ -79,12 +79,6 @@
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.github.wxiaoqi</groupId>
<artifactId>ace-admin-api</artifactId>
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency> <dependency>
<groupId>com.alipay.sdk</groupId> <groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java</artifactId> <artifactId>alipay-sdk-java</artifactId>
......
...@@ -17,6 +17,14 @@ public class CCPRestSmsBiz{ ...@@ -17,6 +17,14 @@ public class CCPRestSmsBiz{
public static final String TEMPLATE_ID_ORDER_TOUR = "457272"; public static final String TEMPLATE_ID_ORDER_TOUR = "457272";
//加入会员通知4 //加入会员通知4
public static final String TEMPLATE_ID_MEMBER = "457273"; public static final String TEMPLATE_ID_MEMBER = "457273";
//租/还车公司相同(订单支付后立即发送给相关负责人)5
public static final String TEMPLATE_ID_TAAKE_CAR = "457501";
//租/还车公司不同(发给租车公司负责人,订单支付后发送)6
public static final String TEMPLATE_ID_DIFFERENT_TAAKE_CAR = "457502";
// 租/还车公司不同(发给还车公司负责人,订单出车后发))(相同不发)7
public static final String TEMPLATE_ID_ALSO_CAR = "457503";
//取消订单8
public static final String TEMPLATE_ID_CANCEL = "457506";
//发送模板消息 //发送模板消息
...@@ -34,6 +42,18 @@ public class CCPRestSmsBiz{ ...@@ -34,6 +42,18 @@ public class CCPRestSmsBiz{
case 4 : case 4 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_MEMBER); CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_MEMBER);
break; break;
case 5 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_TAAKE_CAR);
break;
case 6 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_DIFFERENT_TAAKE_CAR);
break;
case 7 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_ALSO_CAR);
break;
case 8 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_CANCEL);
break;
} }
} }
......
package com.xxfc.platform.universal.controller; package com.xxfc.platform.universal.controller;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
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.result.JsonResultUtil; import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
...@@ -16,8 +17,6 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -16,8 +17,6 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("refund") @RequestMapping("refund")
public class OrderRefundController extends BaseController<OrderRefundBiz,OrderRefund> { public class OrderRefundController extends BaseController<OrderRefundBiz,OrderRefund> {
@RequestMapping(value = "/app/wx", method = RequestMethod.POST) //匹配的是href中的download请求 @RequestMapping(value = "/app/wx", method = RequestMethod.POST) //匹配的是href中的download请求
public JSONObject refund(@RequestBody OrderRefundVo orderRefundVo) { public JSONObject refund(@RequestBody OrderRefundVo orderRefundVo) {
try { try {
......
...@@ -105,4 +105,18 @@ public class BranchCompany { ...@@ -105,4 +105,18 @@ public class BranchCompany {
private Integer zoneId; private Integer zoneId;
private String phone; private String phone;
/**
* 租车客服电话
*/
@Column(name = "vehice_service_phone")
@ApiModelProperty("租车客服电话")
private String vehiceServicePhone;
/**
* 旅游客服电话
*/
@Column(name = "tour_service_phone")
@ApiModelProperty("旅游客服电话")
private String tourServicePhone;
} }
\ No newline at end of file
...@@ -10,6 +10,7 @@ import org.springframework.cloud.openfeign.FeignClient; ...@@ -10,6 +10,7 @@ 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;
import java.util.Map;
/** /**
* Created by ace on 2017/9/15. * Created by ace on 2017/9/15.
...@@ -55,9 +56,11 @@ public interface VehicleFeign { ...@@ -55,9 +56,11 @@ public interface VehicleFeign {
public List<BranchCompany> companyAll( public List<BranchCompany> companyAll(
@RequestParam(value = "dataAll")Integer dataAll, @RequestParam(value = "dataAll")Integer dataAll,
@RequestParam(value = "dataCompany")String dataCompany, @RequestParam(value = "dataCompany")String dataCompany,
@RequestParam(value = "dataZone")String dataZone); @RequestParam(value = "dataZone")String dataZone);
@GetMapping("/branchCompany/entityList")
public ObjectRestResponse<List<BranchCompany>> branchCompanyEntityList(@RequestParam("entity") Map<String, Object> entity);
@RequestMapping(value = "/user/license/one", method = RequestMethod.GET) @RequestMapping(value = "/user/license/one", method = RequestMethod.GET)
public RestResponse<VehicleUserLicense> one(@RequestParam(value="id",defaultValue="0")Integer id) throws Exception; public RestResponse<VehicleUserLicense> one(@RequestParam(value="id",defaultValue="0")Integer id) throws Exception;
......
package com.xxfc.platform.vehicle.common; package com.xxfc.platform.vehicle.common;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.List;
@Slf4j @Slf4j
public class BaseController<Biz extends BaseBiz> { public class BaseController<Biz extends BaseBiz> {
...@@ -12,5 +18,4 @@ public class BaseController<Biz extends BaseBiz> { ...@@ -12,5 +18,4 @@ public class BaseController<Biz extends BaseBiz> {
protected HttpServletRequest request; protected HttpServletRequest request;
@Autowired @Autowired
protected Biz baseBiz; protected Biz baseBiz;
} }
...@@ -151,4 +151,12 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> { ...@@ -151,4 +151,12 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> {
} }
return baseBiz.getListByUser(userDTO); return baseBiz.getListByUser(userDTO);
} }
@ApiOperation("根据参数查询,等于")
@RequestMapping(value = "/entityList",method = RequestMethod.GET)
@ResponseBody
public ObjectRestResponse<List<BranchCompany>> entityList(BranchCompany entity){
//查询列表数据
return ObjectRestResponse.succ(baseBiz.selectList(entity));
}
} }
...@@ -3,13 +3,19 @@ package com.xxfc.platform.vehicle; ...@@ -3,13 +3,19 @@ package com.xxfc.platform.vehicle;
import org.junit.Test; import org.junit.Test;
import java.lang.reflect.Array; import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
public class ListTest { public class ListTest {
@Test //@Test
public void ListTest(){ public void ListTest(){
List<Object> objects = Arrays.asList(); List<Object> objects = Arrays.asList();
System.out.println("objects.size()"+objects.get(0)); System.out.println("objects.size()"+objects.get(0));
} }
public static void main(String[] args) {
List<Object> objects = new ArrayList<Object>();
System.out.println("objects.size()"+objects.get(0));
}
} }
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