Commit 6d7c161a authored by jiaorz's avatar jiaorz

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

parents 1f08330d ebd31ce4
...@@ -92,6 +92,8 @@ public class AccessGatewayFilter implements GlobalFilter { ...@@ -92,6 +92,8 @@ public class AccessGatewayFilter implements GlobalFilter {
@Override @Override
public Mono<Void> filter(ServerWebExchange serverWebExchange, GatewayFilterChain gatewayFilterChain) { public Mono<Void> filter(ServerWebExchange serverWebExchange, GatewayFilterChain gatewayFilterChain) {
log.error("请求进入:AccessGatewayFilter");
log.info("check token and user permission...."); log.info("check token and user permission....");
LinkedHashSet requiredAttribute = serverWebExchange.getRequiredAttribute(ServerWebExchangeUtils.GATEWAY_ORIGINAL_REQUEST_URL_ATTR); LinkedHashSet requiredAttribute = serverWebExchange.getRequiredAttribute(ServerWebExchangeUtils.GATEWAY_ORIGINAL_REQUEST_URL_ATTR);
ServerHttpRequest request = serverWebExchange.getRequest(); ServerHttpRequest request = serverWebExchange.getRequest();
......
...@@ -74,7 +74,7 @@ private static final ExchangeStrategies STRATEGIES; ...@@ -74,7 +74,7 @@ private static final ExchangeStrategies STRATEGIES;
@Override @Override
public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) { public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) {
log.error("请求进入:ResponseRecordFilter");
HttpHeaders httpHeaders = new HttpHeaders(); HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.add("Content-Type", "application/json"); httpHeaders.add("Content-Type", "application/json");
ResponseAdapter responseAdapter = new ResponseAdapter(body, httpHeaders); ResponseAdapter responseAdapter = new ResponseAdapter(body, httpHeaders);
......
...@@ -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<>();
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<mapper namespace="com.xxfc.platform.uccn.mapper.ArticleMapper"> <mapper namespace="com.xxfc.platform.uccn.mapper.ArticleMapper">
<select id="getArticleList" resultType="com.xxfc.platform.uccn.entity.Article"> <select id="getArticleList" resultType="com.xxfc.platform.uccn.entity.Article">
select title,epitome,add_time,cover_image from article select id, title,epitome,add_time,cover_image from article
where is_del=0 and status=1 and (type=#{type} or type=0) order by weight ASC ,add_time DESC where is_del=0 and status=1 and (type=#{type} or type=0) order by weight ASC ,add_time DESC
</select> </select>
......
...@@ -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());
......
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