Commit ebd31ce4 authored by hanfeng's avatar hanfeng

Merge remote-tracking branch 'origin/dev' into dev

parents a54d4d50 ef4f04d0
...@@ -234,4 +234,14 @@ public class AuthController { ...@@ -234,4 +234,14 @@ public class AuthController {
return JsonResultUtil.createSuccessResultWithObj(authService.loginImiWithToken()); return JsonResultUtil.createSuccessResultWithObj(authService.loginImiWithToken());
} }
/**
* 检查token是否失效
* @param token
* @return
*/
@RequestMapping(value = "checkToken", method = RequestMethod.GET)
public ObjectRestResponse checkToken(String token){
return authService.checkToken(token);
}
} }
...@@ -37,4 +37,6 @@ public interface AuthService { ...@@ -37,4 +37,6 @@ public interface AuthService {
JSONObject appletRegistry(String username,String headimgurl,String nickname,Integer userid); JSONObject appletRegistry(String username,String headimgurl,String nickname,Integer userid);
String loginImiWithToken(); String loginImiWithToken();
ObjectRestResponse checkToken(String token);
} }
...@@ -3,6 +3,7 @@ package com.github.wxiaoqi.security.auth.service.impl; ...@@ -3,6 +3,7 @@ package com.github.wxiaoqi.security.auth.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
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.common.util.jwt.IJWTInfo;
import com.github.wxiaoqi.security.auth.common.util.jwt.JWTInfo; import com.github.wxiaoqi.security.auth.common.util.jwt.JWTInfo;
import com.github.wxiaoqi.security.auth.feign.IUserService; import com.github.wxiaoqi.security.auth.feign.IUserService;
import com.github.wxiaoqi.security.auth.service.AuthService; import com.github.wxiaoqi.security.auth.service.AuthService;
...@@ -11,6 +12,7 @@ import com.github.wxiaoqi.security.auth.util.user.JwtTokenUtil; ...@@ -11,6 +12,7 @@ import com.github.wxiaoqi.security.auth.util.user.JwtTokenUtil;
import com.github.wxiaoqi.security.common.constant.RequestTypeConstants; import com.github.wxiaoqi.security.common.constant.RequestTypeConstants;
import com.github.wxiaoqi.security.common.exception.auth.UserInvalidException; import com.github.wxiaoqi.security.common.exception.auth.UserInvalidException;
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 org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
...@@ -117,4 +119,22 @@ public class AppAuthServiceImpl implements AuthService { ...@@ -117,4 +119,22 @@ public class AppAuthServiceImpl implements AuthService {
return userService.loginImiWithToken(); return userService.loginImiWithToken();
} }
@Override
public ObjectRestResponse checkToken(String token) {
try {
if (StringUtils.isEmpty(token)){
return ObjectRestResponse.createFailedResult(ResultCode.NULL_CODE,"参数不能为空");
}
IJWTInfo ijwtInfo=jwtTokenUtil.getInfoFromToken(token);
if (ijwtInfo==null){
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE,"token失效");
}
return ObjectRestResponse.succ();
}catch (Exception e){
e.printStackTrace();
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE,"token失效");
}
}
} }
...@@ -2,6 +2,7 @@ package com.github.wxiaoqi.security.auth.service.impl; ...@@ -2,6 +2,7 @@ package com.github.wxiaoqi.security.auth.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.api.vo.user.UserInfo; import com.github.wxiaoqi.security.api.vo.user.UserInfo;
import com.github.wxiaoqi.security.auth.common.util.jwt.IJWTInfo;
import com.github.wxiaoqi.security.auth.common.util.jwt.JWTInfo; import com.github.wxiaoqi.security.auth.common.util.jwt.JWTInfo;
import com.github.wxiaoqi.security.auth.feign.IUserService; import com.github.wxiaoqi.security.auth.feign.IUserService;
import com.github.wxiaoqi.security.auth.service.AuthService; import com.github.wxiaoqi.security.auth.service.AuthService;
...@@ -10,6 +11,7 @@ import com.github.wxiaoqi.security.auth.util.user.JwtTokenUtil; ...@@ -10,6 +11,7 @@ import com.github.wxiaoqi.security.auth.util.user.JwtTokenUtil;
import com.github.wxiaoqi.security.common.constant.RequestTypeConstants; import com.github.wxiaoqi.security.common.constant.RequestTypeConstants;
import com.github.wxiaoqi.security.common.exception.auth.UserInvalidException; import com.github.wxiaoqi.security.common.exception.auth.UserInvalidException;
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 org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
...@@ -113,4 +115,22 @@ public class AuthServiceImpl implements AuthService { ...@@ -113,4 +115,22 @@ public class AuthServiceImpl implements AuthService {
public String loginImiWithToken() { public String loginImiWithToken() {
return userService.loginImiWithToken(); return userService.loginImiWithToken();
} }
@Override
public ObjectRestResponse checkToken(String token) {
try {
if (StringUtils.isEmpty(token)){
return ObjectRestResponse.createFailedResult(ResultCode.NULL_CODE,"参数不能为空");
}
IJWTInfo ijwtInfo=jwtTokenUtil.getInfoFromToken(token);
if (ijwtInfo==null){
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE,"token失效");
}
return ObjectRestResponse.succ();
}catch (Exception e){
e.printStackTrace();
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE,"token失效");
}
}
} }
...@@ -16,7 +16,7 @@ spring: ...@@ -16,7 +16,7 @@ spring:
cloud: cloud:
nacos: nacos:
config: config:
server-addr: 127.0.0.1:8848,10.1.37.166:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
--- ---
......
...@@ -224,6 +224,9 @@ public class SummitActivityBiz extends BaseBiz<SummitActivityMapper, SummitActiv ...@@ -224,6 +224,9 @@ public class SummitActivityBiz extends BaseBiz<SummitActivityMapper, SummitActiv
PageDataVO<SummitActivity> summitActivityPageDataVO = PageDataVO.pageInfo(page, limit, () -> mapper.selectByExample(example)); PageDataVO<SummitActivity> summitActivityPageDataVO = PageDataVO.pageInfo(page, limit, () -> mapper.selectByExample(example));
List<SummitActivity> summitActivities = summitActivityPageDataVO.getData(); List<SummitActivity> summitActivities = summitActivityPageDataVO.getData();
if (CollectionUtils.isEmpty(summitActivities)){ if (CollectionUtils.isEmpty(summitActivities)){
dataVO.setPageNum(page);
dataVO.setPageSize(limit);
dataVO.setData(Collections.EMPTY_LIST);
return dataVO; return dataVO;
} }
List<SummitActivityVo> summitActivityVos = new ArrayList<>(); List<SummitActivityVo> summitActivityVos = new ArrayList<>();
......
package com.xxfc.platform.uccn.rest; package com.xxfc.platform.uccn.rest;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
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.github.wxiaoqi.security.common.rest.CommonBaseController; import com.github.wxiaoqi.security.common.rest.CommonBaseController;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.entity.VehicleModel; import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.entity.VehiclePlatCata;
import com.xxfc.platform.vehicle.feign.VehicleFeign; import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.VModelDetailVO; import com.xxfc.platform.vehicle.pojo.VModelDetailVO;
import com.xxfc.platform.vehicle.pojo.VehicleModelQueryCondition; import com.xxfc.platform.vehicle.pojo.VehicleModelQueryCondition;
...@@ -20,6 +23,9 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -20,6 +23,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
@RestController @RestController
@RequestMapping("/vehicleModel/app/unauth") @RequestMapping("/vehicleModel/app/unauth")
...@@ -57,6 +63,23 @@ public class VehicleModelController extends CommonBaseController { ...@@ -57,6 +63,23 @@ public class VehicleModelController extends CommonBaseController {
@IgnoreUserToken @IgnoreUserToken
public ObjectRestResponse<PageDataVO<VehicleModelVo>> findVehicleModelPageUnauthfind(VehicleModelQueryCondition vmqc) { public ObjectRestResponse<PageDataVO<VehicleModelVo>> findVehicleModelPageUnauthfind(VehicleModelQueryCondition vmqc) {
ObjectRestResponse<PageDataVO<VehicleModelVo>> objectRestResponse = vehicleFeign.findVehicleModelPageUnauthfind(vmqc); ObjectRestResponse<PageDataVO<VehicleModelVo>> objectRestResponse = vehicleFeign.findVehicleModelPageUnauthfind(vmqc);
PageDataVO<VehicleModelVo> pageDataVOs = objectRestResponse.getData();
pageDataVOs.getData().forEach( v -> {
List<VehiclePlatCata> vehiclePlatCataList = vehicleFeign.getCatasByIds(v.getConfig()).getData();
StrUtil.splitToInt("14,7,11", ",");
v.setUccnCataList(vehiclePlatCataList.parallelStream().filter(v1 -> {return ArrayUtil.contains(StrUtil.splitToInt("14,7,11", ","), v1.getParentId());}).sorted(Comparator.comparing(VehiclePlatCata::getParentId, (x, y) -> {
int xx = 0,yy = 0;
int[] array = StrUtil.splitToInt("14,7,11", ",");
for(int i = 0; i < array.length; i++) {
if(x == array[i]) {
xx = i;
}else if(y == array[i]) {
yy = i;
}
}
return (xx - yy);
})).collect(Collectors.toList()));
});
return objectRestResponse; return objectRestResponse;
} }
} }
...@@ -66,6 +66,10 @@ public class SmsTemplateDTO { ...@@ -66,6 +66,10 @@ public class SmsTemplateDTO {
public static final int PAY_H = 24; public static final int PAY_H = 24;
//取消旅游订单(客服) //取消旅游订单(客服)
public static final int CANCEL_F = 25; public static final int CANCEL_F = 25;
//租车(取车提醒)26
public static final int PAY_I= 26;
//旅游(上车通知)27
public static final int PAY_J= 27;
......
package com.xxfc.platform.universal.biz;
import com.xxfc.platform.universal.service.SmsService;
import com.xxfc.platform.universal.utils.CCPRestSmsUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@Slf4j
public class AliYunSmsBiz {
//租车订单通知(普通用户)1
public static final String TEMPLATE_ID_ORDER = "SMS_173247815";
//租车订单短信(会员权益)2
public static final String TEMPLATE_ID_ORDER_MEMBER = "SMS_173252767";
//旅游订单短信3
public static final String TEMPLATE_ID_ORDER_TOUR = "SMS_173247826";
//加入会员通知4
public static final String TEMPLATE_ID_MEMBER = "SMS_173247829";
//租/还车公司相同(订单支付后立即发送给相关负责人)5
public static final String TEMPLATE_ID_TAAKE_CAR = "SMS_173247836";
//租/还车公司不同(发给租车公司负责人,订单支付后发送)6
public static final String TEMPLATE_ID_DIFFERENT_TAAKE_CAR = "458621";
// 租/还车公司不同(发给还车公司负责人,订单出车后发))(相同不发)7
public static final String TEMPLATE_ID_ALSO_CAR = "458620";
//取消订单9
public static final String TEMPLATE_ID_CANCEL = "458627";
//租车(通用)10
//public static final String TEMPLATE_ID_PAY_A = "460759";
public static final String TEMPLATE_ID_PAY_A = "SMS_171112286";
//租车(使用会员权益)11
//public static final String TEMPLATE_ID_PAY_B = "460760";
public static final String TEMPLATE_ID_PAY_B = "SMS_173340577";
//租车内部通知(客服)12
//public static final String TEMPLATE_ID_PAY_C = "460763";
public static final String TEMPLATE_ID_PAY_C = "SMS_173345572";
//租车内部通知(出车人)13
//public static final String TEMPLATE_ID_PAY_D = "460762";
public static final String TEMPLATE_ID_PAY_D = "SMS_173340609";
//租车内部通知(收车人)14
//public static final String TEMPLATE_ID_PAY_E = "460764";
public static final String TEMPLATE_ID_PAY_E = "SMS_173345589";
//旅游(通用)15
//public static final String TEMPLATE_ID_PAY_F = "460765";
public static final String TEMPLATE_ID_PAY_F = "SMS_173345597";
//会员购买(通用)16
//public static final String TEMPLATE_ID_PAY_G = "460766";
public static final String TEMPLATE_ID_PAY_G = "SMS_173340637";
//取消租车(通用)17
//public static final String TEMPLATE_ID_CANCEL_A= "460767";
public static final String TEMPLATE_ID_CANCEL_A= "SMS_173345633";
//取消租车(使用会员权益)18
//public static final String TEMPLATE_ID_CANCEL_B = "460768";
public static final String TEMPLATE_ID_CANCEL_B = "SMS_173340658";
//取消租车(通用扣违约金)19
//public static final String TEMPLATE_ID_CANCEL_C = "460769";
public static final String TEMPLATE_ID_CANCEL_C = "SMS_173345646";
//取消租车(会员权益&扣违 20
//public static final String TEMPLATE_ID_CANCEL_D = "460770";
public static final String TEMPLATE_ID_CANCEL_D = "SMS_173340671";
//取消租车(出车人)21
//public static final String TEMPLATE_ID_CANCEL_E = "460771";
public static final String TEMPLATE_ID_CANCEL_E = "SMS_173345667";
//租车押金退还 22
//public static final String TEMPLATE_ID_FINISH_A = "460772";
public static final String TEMPLATE_ID_FINISH_A = "SMS_173340710";
//违章押金退还 23
//public static final String TEMPLATE_ID_FINISH_B = "460773";
public static final String TEMPLATE_ID_FINISH_B = "SMS_173340712";
//旅游内部通知(客服)24
//public static final String TEMPLATE_ID_PAY_H = "461421";
public static final String TEMPLATE_ID_PAY_H = "SMS_173340630";
//取消旅游订单(客服)25
//public static final String TEMPLATE_ID_CANCEL_F = "461424";
public static final String TEMPLATE_ID_CANCEL_F = "SMS_173340695";
//租车(取车提醒)26
public static final String TEMPLATE_ID_PAY_I= "SMS_173345539";
//旅游(上车通知)27
public static final String TEMPLATE_ID_PAY_J= "SMS_173345606";
//发送模板消息
public void sendTemplateSMS(Integer type,String phoneNumbers,String[]params){
switch (type){
case 1 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_ORDER);
break;
case 2 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_ORDER_MEMBER);
break;
case 3 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_ORDER_TOUR);
break;
case 4 :
CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_MEMBER);
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;
case 10 :
//CCPRestSmsUtils.sendTemplateSMS(phoneNumbers,params,TEMPLATE_ID_PAY_A);
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_A);
break;
case 11:
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_B);
break;
case 12 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_C);
break;
case 13 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_D);
break;
case 14 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_E);
break;
case 15 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_F);
break;
case 16 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_G);
break;
case 17 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_CANCEL_A);
break;
case 18 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_CANCEL_B);
break;
case 19 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_CANCEL_C);
break;
case 20 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_CANCEL_D);
break;
case 21 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_CANCEL_E);
break;
case 22 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_FINISH_A);
break;
case 23 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_FINISH_B);
break;
case 24 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_H);
break;
case 25 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_CANCEL_F);
break;
case 26 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_I);
break;
case 27 :
SmsService.sendTemplateToJson(phoneNumbers,params,TEMPLATE_ID_PAY_J);
break;
}
}
}
...@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
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.github.wxiaoqi.security.common.util.result.JsonResultUtil; import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
import com.xxfc.platform.universal.biz.AliYunSmsBiz;
import com.xxfc.platform.universal.biz.CCPRestSmsBiz; import com.xxfc.platform.universal.biz.CCPRestSmsBiz;
import com.xxfc.platform.universal.dto.SmsTemplateDTO; import com.xxfc.platform.universal.dto.SmsTemplateDTO;
import com.xxfc.platform.universal.service.SmsService; import com.xxfc.platform.universal.service.SmsService;
...@@ -32,6 +33,9 @@ public class SmsController { ...@@ -32,6 +33,9 @@ public class SmsController {
@Autowired @Autowired
CCPRestSmsBiz smsBiz; CCPRestSmsBiz smsBiz;
@Autowired
AliYunSmsBiz aliYunSmsBiz;
@RequestMapping(value = "/app/unauth/send", method = RequestMethod.GET) //匹配的是href中的download请求 @RequestMapping(value = "/app/unauth/send", method = RequestMethod.GET) //匹配的是href中的download请求
public JSONObject sendSms(@RequestParam("phone") String phone) throws Exception { public JSONObject sendSms(@RequestParam("phone") String phone) throws Exception {
return smsService.smsCode(phone); return smsService.smsCode(phone);
...@@ -52,7 +56,7 @@ public class SmsController { ...@@ -52,7 +56,7 @@ public class SmsController {
Integer type=smsTemplateDTO.getType(); Integer type=smsTemplateDTO.getType();
String[] params=smsTemplateDTO.getParams(); String[] params=smsTemplateDTO.getParams();
String phoneNumbers=smsTemplateDTO.getPhoneNumbers(); String phoneNumbers=smsTemplateDTO.getPhoneNumbers();
smsBiz.sendTemplateSMS(type,phoneNumbers,params); aliYunSmsBiz.sendTemplateSMS(type,phoneNumbers,params);
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
} }
......
...@@ -6,19 +6,9 @@ import com.aliyuncs.IAcsClient; ...@@ -6,19 +6,9 @@ import com.aliyuncs.IAcsClient;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;
import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.http.FormatType;
import com.aliyuncs.http.HttpResponse;
import com.aliyuncs.http.MethodType; import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.DefaultProfile; import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile; import com.aliyuncs.profile.IClientProfile;
import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import com.github.wxiaoqi.security.common.util.RandomUtil; import com.github.wxiaoqi.security.common.util.RandomUtil;
import com.github.wxiaoqi.security.common.util.process.SystemConfig; import com.github.wxiaoqi.security.common.util.process.SystemConfig;
import com.github.wxiaoqi.security.common.util.result.JsonResultUtil; import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
...@@ -43,6 +33,7 @@ public class SmsService { ...@@ -43,6 +33,7 @@ public class SmsService {
//短信模板id //短信模板id
static final String TemplateCode = SystemConfig.TEMPLATECODE; static final String TemplateCode = SystemConfig.TEMPLATECODE;
static final String TemplateParam="{\"code\":\"str\"}"; static final String TemplateParam="{\"code\":\"str\"}";
static final String param = "param";
public JSONObject smsCode(String mobile){ public JSONObject smsCode(String mobile){
...@@ -157,7 +148,7 @@ public class SmsService { ...@@ -157,7 +148,7 @@ public class SmsService {
return false; return false;
} }
public boolean sendTemplate(String PhoneNumbers,String params,String templateCode) throws ClientException { public static boolean sendTemplate(String PhoneNumbers,String params,String templateCode) throws ClientException {
//可自助调整超时时间 //可自助调整超时时间
System.setProperty("sun.net.client.defaultConnectTimeout", "10000"); System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
...@@ -168,9 +159,9 @@ public class SmsService { ...@@ -168,9 +159,9 @@ public class SmsService {
DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain); DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile); IAcsClient acsClient = new DefaultAcsClient(profile);
//组装请求对象-具体描述见控制台-文档部分内容 //组装请求对象
SendSmsRequest request = new SendSmsRequest(); SendSmsRequest request = new SendSmsRequest ();
//必填:待发送手机号 //必填:待发送手机号。支持JSON格式的批量调用,批量上限为100个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式
request.setPhoneNumbers(PhoneNumbers); request.setPhoneNumbers(PhoneNumbers);
//必填:短信签名-可在短信控制台中找到 //必填:短信签名-可在短信控制台中找到
request.setSignName(SignName); request.setSignName(SignName);
...@@ -186,7 +177,7 @@ public class SmsService { ...@@ -186,7 +177,7 @@ public class SmsService {
//可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者 //可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者
//request.setOutId("yourOutId"); //request.setOutId("yourOutId");
//hint 此处可能会抛出异常,注意catch //hint 此处可能会抛出异常,注意catch
SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request); SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);
log.info("短信接口返回的数据----------------mobile======"+PhoneNumbers+"----templateParam===="+params); log.info("短信接口返回的数据----------------mobile======"+PhoneNumbers+"----templateParam===="+params);
log.info("Code=" + sendSmsResponse.getCode()); log.info("Code=" + sendSmsResponse.getCode());
log.info("Message=" + sendSmsResponse.getMessage()); log.info("Message=" + sendSmsResponse.getMessage());
...@@ -200,60 +191,26 @@ public class SmsService { ...@@ -200,60 +191,26 @@ public class SmsService {
return false; return false;
} }
public String getString(Map<String,Object> params){ public static void sendTemplateToJson(String PhoneNumbers,String[] params,String templateCode){
if(params!=null){ try {
StringBuilder sb = new StringBuilder("{"); JSONObject jsonParams=new JSONObject();
for (Object o : params.keySet()) { for (int i=0;i<params.length;i++){
sb.append("\"" + o + "\"" +":"+"\"" + params.get(o) + "\"" +","); jsonParams.put(param+(i+1),params[i]);
} }
sb.replace(sb.length() - 1, sb.length(), "}");
return sb.toString();
}
return null;
}
/* public static QuerySendDetailsResponse querySendDetails(String bizId) throws ClientException {
//可自助调整超时时间 sendTemplate(PhoneNumbers,jsonParams.toJSONString(),templateCode);
System.setProperty("sun.net.client.defaultConnectTimeout", "10000"); }catch (Exception e){
System.setProperty("sun.net.client.defaultReadTimeout", "10000"); e.printStackTrace();
}
//初始化acsClient,暂不支持region化
IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);
DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile);
//组装请求对象
QuerySendDetailsRequest request = new QuerySendDetailsRequest();
//必填-号码
request.setPhoneNumber("15000000000");
//可选-流水号
request.setBizId(bizId);
//必填-发送日期 支持30天内记录查询,格式yyyyMMdd
SimpleDateFormat ft = new SimpleDateFormat("yyyyMMdd");
request.setSendDate(ft.format(new Date()));
//必填-页大小
request.setPageSize(10L);
//必填-当前页码从1开始计数
request.setCurrentPage(1L);
//hint 此处可能会抛出异常,注意catch }
QuerySendDetailsResponse querySendDetailsResponse = acsClient.getAcsResponse(request);
return querySendDetailsResponse;
}
*/
public static void main(String[] args) throws ClientException, InterruptedException { public static void main(String[] args) throws ClientException, InterruptedException {
SmsService smsService=new SmsService(); SmsService smsService=new SmsService();
//发短信 //发短信
Map<String,Object> params=new HashMap<>(); String[] params={"1","2","3","2019-08-29","松山湖"};
params.put("name","何振"); SmsService.sendTemplateToJson("13612688539,13265487972",params,"SMS_169904346");
params.put("code","123456");
params.put("time",5);
params.put("other","何振2");
smsService.sendTemplate("13612688539","123","SMS_171112286");
/*System.out.println("短信接口返回的数据----------------"); /*System.out.println("短信接口返回的数据----------------");
System.out.println("Code=" + response.getCode()); System.out.println("Code=" + response.getCode());
System.out.println("Message=" + response.getMessage()); System.out.println("Message=" + response.getMessage());
......
...@@ -160,4 +160,8 @@ public class VehicleModel implements Serializable { ...@@ -160,4 +160,8 @@ public class VehicleModel implements Serializable {
@Column(name = "sort") @Column(name = "sort")
@ApiModelProperty(value = "排序") @ApiModelProperty(value = "排序")
private Integer sort; private Integer sort;
@Column(name = "intro")
@ApiModelProperty(value = "简介")
private String intro;
} }
...@@ -135,4 +135,14 @@ public interface VehicleFeign { ...@@ -135,4 +135,14 @@ public interface VehicleFeign {
@PostMapping("/vehicleModel/app/unauth/findVehicleModelPage") @PostMapping("/vehicleModel/app/unauth/findVehicleModelPage")
public ObjectRestResponse<PageDataVO<VehicleModelVo>> findVehicleModelPageUnauthfind(@RequestBody VehicleModelQueryCondition vmqc); public ObjectRestResponse<PageDataVO<VehicleModelVo>> findVehicleModelPageUnauthfind(@RequestBody VehicleModelQueryCondition vmqc);
//cata
/**
* 查询当前车型拥有的标签
* @param ids
* @return
*/
@GetMapping("/cata/add/getCatasByIds/{ids}")
public ObjectRestResponse<List<VehiclePlatCata>> getCatasByIds(@PathVariable("ids") String ids);
} }
...@@ -2,6 +2,7 @@ package com.xxfc.platform.vehicle.pojo; ...@@ -2,6 +2,7 @@ package com.xxfc.platform.vehicle.pojo;
import com.xxfc.platform.vehicle.entity.Vehicle; import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.entity.VehicleModel; import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.entity.VehiclePlatCata;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -12,6 +13,7 @@ import javax.persistence.Table; ...@@ -12,6 +13,7 @@ import javax.persistence.Table;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
...@@ -25,128 +27,6 @@ import java.util.Date; ...@@ -25,128 +27,6 @@ import java.util.Date;
@Table(name = "vehicle_model") @Table(name = "vehicle_model")
public class VehicleModelVo extends VehicleModel implements Serializable { public class VehicleModelVo extends VehicleModel implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
//主键
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键")
private Integer id;
//名称
@Column(name = "name")
@ApiModelProperty(value = "名称")
private String name;
//房车配置,code逗号分割
@Column(name = "config")
@ApiModelProperty(value = "房车配置,code逗号分割")
private String config;
@Column(name = "number")
@ApiModelProperty(value = "乘卧数id")
private String number;
@Column(name = "brand")
@ApiModelProperty(value = "品牌id")
private String brand;
//关键标签,code逗号分割
@Column(name = "keyword")
@ApiModelProperty(value = "关键标签,code逗号分割")
private String keyword;
//车型详情
@Column(name = "models_details")
@ApiModelProperty(value = "车型详情")
private String modelsDetails;
//参数
@Column(name = "model_param")
@ApiModelProperty(value = "参数")
private String modelParam;
//图片地址 多张为逗号分割
@Column(name = "picture")
@ApiModelProperty(value = "图片地址 多张为逗号分割")
private String picture;
//价格
@Column(name = "price")
@ApiModelProperty(value = "价格")
private BigDecimal price;
//总押金
@Column(name = "deposit")
@ApiModelProperty(value = "总押金")
private BigDecimal deposit;
//违章押金
@Column(name = "vio_deposit")
@ApiModelProperty(value = "违章押金")
private BigDecimal vioDeposit;
//创建时间
@Column(name = "crt_time")
@ApiModelProperty(value = "创建时间", hidden = true )
private Date crtTime;
//创建者id
@Column(name = "crt_user")
@ApiModelProperty(value = "创建者id")
private Integer crtUser;
//创建者名称
@Column(name = "crt_name")
@ApiModelProperty(value = "创建者名称")
private String crtName;
//创建者host
@Column(name = "crt_host")
@ApiModelProperty(value = "创建者host")
private String crtHost;
//修改时间
@Column(name = "upd_time")
@ApiModelProperty(value = "修改时间", hidden = true )
private Date updTime;
//修改者
@Column(name = "upd_user")
@ApiModelProperty(value = "修改者")
private Integer updUser;
//修改者名称
@Column(name = "upd_name")
@ApiModelProperty(value = "修改者名称")
private String updName;
//修改者host
@Column(name = "upd_host")
@ApiModelProperty(value = "修改者host")
private String updHost;
//评分
@Column(name = "score")
@ApiModelProperty(value = "评分")
private Integer score;
@Column(name = "hot_sign")
@ApiModelProperty(value = "热度标记,1--热门;2--非热门")
private Integer hotSign;
@ApiModelProperty(value = "是否删除")
private Integer isdel;
@Column(name = "rent_discount_status")
@ApiModelProperty(value = "租车优惠状态 0--没有优惠;1--会员折扣;2--固定值")
private Integer rentDiscountStatus;
@Column(name = "rent_discount_price")
@ApiModelProperty(value = "租车优惠价格")
private String rentDiscountPrice;
@Column(name = "buy_price")
@ApiModelProperty(value = "购买价格")
private BigDecimal buyPrice;
@ApiModelProperty(value = "总数量") @ApiModelProperty(value = "总数量")
private Integer sum; private Integer sum;
...@@ -168,17 +48,6 @@ public class VehicleModelVo extends VehicleModel implements Serializable { ...@@ -168,17 +48,6 @@ public class VehicleModelVo extends VehicleModel implements Serializable {
@ApiModelProperty(value = "品牌") @ApiModelProperty(value = "品牌")
private String brandName; private String brandName;
@Column(name = "sort") List<VehiclePlatCata> UccnCataList;
@ApiModelProperty(value = "排序")
private Integer sort;
// @Column(name = "status")
// @ApiModelProperty(value = "状态 0--下架;1--上架")
// private String status;
// @Column(name = "cover_pic")
// @ApiModelProperty(value = "封面图")
// private String coverPic;
} }
...@@ -123,6 +123,11 @@ public class CompanyBaseBiz extends BaseBiz<CompanyBaseMapper, CompanyBase> { ...@@ -123,6 +123,11 @@ public class CompanyBaseBiz extends BaseBiz<CompanyBaseMapper, CompanyBase> {
|| companyVo.getAddrCity()==null||companyVo.getAddrCity()==0){ || companyVo.getAddrCity()==null||companyVo.getAddrCity()==0){
return ObjectRestResponse.createFailedResult(ResultCode.NULL_CODE,"参数不能为空"); return ObjectRestResponse.createFailedResult(ResultCode.NULL_CODE,"参数不能为空");
} }
Area area=areaBiz.selectById(companyVo.getZoneId());
Integer provinc=companyVo.getAddrProvince();
if (area==null||StringUtils.isBlank(area.getProvinceIds())||!area.getProvinceIds().contains(provinc+"")){
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"片区和省份不一致");
}
Integer state=companyVo.getState()==null?2:companyVo.getState(); Integer state=companyVo.getState()==null?2:companyVo.getState();
BigDecimal latitude=companyVo.getLatitude(); BigDecimal latitude=companyVo.getLatitude();
BigDecimal longitude=companyVo.getLongitude(); BigDecimal longitude=companyVo.getLongitude();
......
...@@ -198,10 +198,10 @@ public class VehicleActiveService { ...@@ -198,10 +198,10 @@ public class VehicleActiveService {
throw new BaseException(ResCode.CHECKUSER_AND_PHONE_NOT_NULL.getDesc(), throw new BaseException(ResCode.CHECKUSER_AND_PHONE_NOT_NULL.getDesc(),
ResCode.CHECKUSER_AND_PHONE_NOT_NULL.getCode()); ResCode.CHECKUSER_AND_PHONE_NOT_NULL.getCode());
} }
if (!vehicle.getStatus().equals(VehicleStatus.DEPARTURE.getCode())) { // if (!vehicle.getStatus().equals(VehicleStatus.DEPARTURE.getCode())) {
throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc() + ", 车辆状态是:" + getVehicleStatus(vehicle.getStatus(), vehicle.getId()), // throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc() + ", 车辆状态是:" + getVehicleStatus(vehicle.getStatus(), vehicle.getId()),
ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getCode()); // ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getCode());
} // }
Integer Mileagerest = vehicle.getMileageLastUpdate(); Integer Mileagerest = vehicle.getMileageLastUpdate();
Integer Mileagerest1 = arrivalVo.getMileage(); Integer Mileagerest1 = arrivalVo.getMileage();
if (Mileagerest1 == null) { if (Mileagerest1 == null) {
...@@ -223,21 +223,33 @@ public class VehicleActiveService { ...@@ -223,21 +223,33 @@ public class VehicleActiveService {
vehicle.setExpectDestinationBranchCompanyId(0); vehicle.setExpectDestinationBranchCompanyId(0);
vehicleMapper.updateByPrimaryKeySelective(vehicle); vehicleMapper.updateByPrimaryKeySelective(vehicle);
// 修改状态,确认是出车状态
int result = vehicleMapper.updateStatusByIdAndStatus(arrivalVo.getVehicleId(), VehicleStatus.NORMAL.getCode(),
VehicleStatus.DEPARTURE.getCode());
if (result == 0) {
throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc(),
ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getCode());
}
// 出车记录 // 出车记录
VehicleDepartureLog departureLog = vehicleDepartureLogMapper.selectLastByVehicleId(arrivalVo.getVehicleId()); VehicleDepartureLogVo departureLogVo = vehicleDepartureLogMapper.selectByBookRecordId(arrivalVo.getBookRecordId());
if (departureLog == null) {
if (departureLogVo == null) {
throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc(), throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc(),
ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getCode()); ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getCode());
} }
// 修改状态,确认是出车状态
//兼容错误还车流程,先查询,是否有其他出行记录
boolean flag = true;
VehicleDepartureLog departureLog = departureLogVo.getVehicleDeparture(departureLogVo);
List<VehicleDepartureLog> list = vehicleDepartureLogMapper.selectByVehicle(arrivalVo.getVehicleId());
for(VehicleDepartureLog vehicleDepartureLogVo : list) {
if(vehicleDepartureLogVo.getState() != 1 && vehicleDepartureLogVo.getId() > departureLog.getId()) { //后面还有未收车的记录
flag = false;
}
}
if(flag) { //如果此条记录后面还有未收车记录,就不修改车辆状态
int result = vehicleMapper.updateStatus(arrivalVo.getVehicleId(), VehicleStatus.NORMAL.getCode());
// if (result == 0) {
// throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getDesc(),
// ResCode.VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE.getCode());
// }
}
DateTime arrivalDate = new DateTime(vehicleBookRecord.getBookEndDate()); DateTime arrivalDate = new DateTime(vehicleBookRecord.getBookEndDate());
DateTime actualArrivalDate = new DateTime(new Date()); DateTime actualArrivalDate = new DateTime(new Date());
//提前还车处理 //提前还车处理
......
...@@ -804,10 +804,10 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR ...@@ -804,10 +804,10 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
if (vehicle == null) { if (vehicle == null) {
return false; return false;
} }
if (vehicle.getStatus().equals(VehicleStatus.DISCARD.getCode())) { // if (vehicle.getStatus().equals(VehicleStatus.DISCARD.getCode())) {
throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_DISABLE.getDesc() + ", 车辆状态是:" + getVehicleStatus(vehicle.getStatus(), vehicle.getId()), // throw new BaseException(ResCode.VEHICLE_DEPARTURE_VEHICLE_DISABLE.getDesc() + ", 车辆状态是:" + getVehicleStatus(vehicle.getStatus(), vehicle.getId()),
ResCode.VEHICLE_DEPARTURE_VEHICLE_DISABLE.getCode()); // ResCode.VEHICLE_DEPARTURE_VEHICLE_DISABLE.getCode());
} // }
return true; return true;
} }
......
...@@ -410,7 +410,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -410,7 +410,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
* @param ids * @param ids
* @return * @return
*/ */
public ObjectRestResponse getCatasByIds(String ids) { public ObjectRestResponse<List<VehiclePlatCata>> getCatasByIds(String ids) {
Example exa = Example.builder(VehiclePlatCata.class).where( Example exa = Example.builder(VehiclePlatCata.class).where(
WeekendSqls.<VehiclePlatCata>custom() WeekendSqls.<VehiclePlatCata>custom()
.andIn(VehiclePlatCata::getId, Arrays.asList(ids.split(","))) .andIn(VehiclePlatCata::getId, Arrays.asList(ids.split(",")))
......
...@@ -9,6 +9,7 @@ import com.xxl.job.core.biz.model.ReturnT; ...@@ -9,6 +9,7 @@ import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler; import com.xxl.job.core.handler.IJobHandler;
import com.xxl.job.core.handler.annotation.JobHandler; import com.xxl.job.core.handler.annotation.JobHandler;
import com.xxl.job.core.log.XxlJobLogger; import com.xxl.job.core.log.XxlJobLogger;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -25,16 +26,14 @@ import java.util.stream.Collectors; ...@@ -25,16 +26,14 @@ import java.util.stream.Collectors;
*/ */
@JobHandler(value = "vehicle_job_handler") @JobHandler(value = "vehicle_job_handler")
@Component("vehicle_job_handler") @Component("vehicle_job_handler")
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class VehicleJobHandler extends IJobHandler { public class VehicleJobHandler extends IJobHandler {
@Autowired private final VehicleBiz vehicleBiz;
private VehicleBiz vehicleBiz;
@Autowired private final VehicleBookInfoBiz vehicleBookInfoBiz;
private VehicleBookInfoBiz vehicleBookInfoBiz;
@Autowired private final ThirdFeign thirdFeign;
private ThirdFeign thirdFeign;
private static final String DIC_VEHICLE_TYPE="VEHICLE"; private static final String DIC_VEHICLE_TYPE="VEHICLE";
......
...@@ -13,7 +13,7 @@ public interface VehicleDepartureLogMapper extends BaseMapper<VehicleDepartureLo ...@@ -13,7 +13,7 @@ public interface VehicleDepartureLogMapper extends BaseMapper<VehicleDepartureLo
VehicleDepartureLog selectLastByVehicleId(String vehicleId); VehicleDepartureLog selectLastByVehicleId(String vehicleId);
List<VehicleDepartureLogVo> selectByVehicleId(String vehicleId); List<VehicleDepartureLogVo> selectByVehicleId(String vehicleId);
List<VehicleDepartureLog> selectByVehicle(String vehicleId);
List<VehicleDepartureLogVo> selectVoAll(@Param("numberPlate") String numberPlate, @Param("time") String time); List<VehicleDepartureLogVo> selectVoAll(@Param("numberPlate") String numberPlate, @Param("time") String time);
List<VehicleDepartureLogVo> selectVoAllNotAllData(@Param("numberPlate") String numberPlate, @Param("time") String time, @Param("companyList") List<Integer> companyList); List<VehicleDepartureLogVo> selectVoAllNotAllData(@Param("numberPlate") String numberPlate, @Param("time") String time, @Param("companyList") List<Integer> companyList);
......
...@@ -29,6 +29,8 @@ public interface VehicleMapper extends Mapper<Vehicle> { ...@@ -29,6 +29,8 @@ public interface VehicleMapper extends Mapper<Vehicle> {
int updateStatusByIdAndStatus(@Param("vehicleId") String vehicleId, @Param("status") Integer status, int updateStatusByIdAndStatus(@Param("vehicleId") String vehicleId, @Param("status") Integer status,
@Param("lastStatus") Integer lastStatus); @Param("lastStatus") Integer lastStatus);
int updateStatus(@Param("vehicleId") String vehicleId, @Param("status") Integer status);
Vehicle selectByNumberPlate(String numberPlate); Vehicle selectByNumberPlate(String numberPlate);
List<UsableVehicleModelVO> searchUsableModel(Map<String, Object> params); List<UsableVehicleModelVO> searchUsableModel(Map<String, Object> params);
......
...@@ -16,6 +16,8 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -16,6 +16,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController @RestController
@RequestMapping("/cata") @RequestMapping("/cata")
@Slf4j @Slf4j
...@@ -146,7 +148,7 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata ...@@ -146,7 +148,7 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata
* @return * @return
*/ */
@GetMapping("/add/getCatasByIds/{ids}") @GetMapping("/add/getCatasByIds/{ids}")
public ObjectRestResponse getCatasByIds(@PathVariable String ids){ public ObjectRestResponse<List<VehiclePlatCata>> getCatasByIds(@PathVariable String ids){
return baseBiz.getCatasByIds(ids); return baseBiz.getCatasByIds(ids);
} }
...@@ -184,6 +186,8 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata ...@@ -184,6 +186,8 @@ public class VehicleCataController extends VehicleBaseController<VehiclePlatCata
} }
/* @RequestMapping(value = "/{id}", method = RequestMethod.GET) /* @RequestMapping(value = "/{id}", method = RequestMethod.GET)
public RestResponse<Vehicle> get(@PathVariable String id) { public RestResponse<Vehicle> get(@PathVariable String id) {
return RestResponse.data(baseBiz.get(id)); return RestResponse.data(baseBiz.get(id));
......
...@@ -17,6 +17,13 @@ ...@@ -17,6 +17,13 @@
order by create_time desc order by create_time desc
</select> </select>
<select id="selectByVehicle" parameterType="java.lang.String" resultType="com.xxfc.platform.vehicle.entity.VehicleDepartureLog">
select vehicle_departure_log.*
from vehicle_departure_log
where vehicle_id = #{vehicleId}
order by create_time desc
</select>
<select id="selectByBookRecordId" parameterType="java.lang.Long" resultType="com.xxfc.platform.vehicle.pojo.VehicleDepartureLogVo"> <select id="selectByBookRecordId" parameterType="java.lang.Long" resultType="com.xxfc.platform.vehicle.pojo.VehicleDepartureLogVo">
select vehicle_departure_log.* select vehicle_departure_log.*
from vehicle_departure_log from vehicle_departure_log
......
...@@ -359,6 +359,12 @@ ...@@ -359,6 +359,12 @@
where id = #{vehicleId} and status = #{lastStatus} where id = #{vehicleId} and status = #{lastStatus}
</update> </update>
<update id="updateStatus">
update vehicle
set status = #{status}
where id = #{vehicleId} and status != 3
</update>
<update id="updateMileageStatusByIdAndStatus"> <update id="updateMileageStatusByIdAndStatus">
update vehicle update vehicle
set status = #{status},maintenance_mileage=#{mileage} set status = #{status},maintenance_mileage=#{mileage}
......
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