123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316 |
- package com.chinacreator.process.job;
- import java.net.URLEncoder;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import org.apache.commons.lang.StringUtils;
- import org.apache.commons.lang.math.NumberUtils;
- import org.apache.commons.lang.time.DateFormatUtils;
- import org.apache.log4j.Logger;
- import org.quartz.DisallowConcurrentExecution;
- import org.quartz.PersistJobDataAfterExecution;
- import org.springframework.beans.factory.annotation.Autowired;
- import com.chinacreator.common.util.DESUtil;
- import com.chinacreator.common.util.URLUtil;
- import com.chinacreator.process.dao.DictionaryDao;
- import com.chinacreator.process.util.JsonUtil;
- import com.chinacreator.video.queue.MessageService;
- import com.chinacreator.video.queue.bean.MessagePipe;
- @PersistJobDataAfterExecution
- @DisallowConcurrentExecution
- public class CShandleSmsJob {
- private Logger logger = Logger.getLogger("cssms");
- private Logger log = Logger.getLogger(CShandleSmsJob.class);
- @Autowired
- private DictionaryDao dictionaryDao;
- @Autowired
- private MessageService messageService;
- private final static String F_SMS_CONTENT ="很遗憾,由于系统错误{0},畅视业务办理失败,详情请咨询10010";
-
- private final static String T_SMS_CONTENT ="温馨提示,您申请的畅视业务正在办理中,稍后请以短信通知为准,详情请咨询10010超时时间要求:超时时间>30秒";
-
- private final static String E_SMS_CONTENT = "畅视生效提醒:您的畅视业务已生效。请完成以下步骤操作1、点开链接下载最新版畅视合作客户端http:// changshi.wo.cn/cs/xuanchuan.html 2、在合作客户端内激活畅视业务。注意:未激活客户端将无法正常免流量使用!【畅视如非自己开通,则为系统赠送,详情咨询:10010】";
-
- private final static String S_SMS_CONTENT = "温馨提示:您的畅视业务订购成功,请刷新页面查看最终订购状态。";
-
- private final static String B_SMS_CONTENT = "尊敬的用户,为感谢您对联通WO+视频定向流量产品的支持与使用,赠送您400MB省内流量包(当月有效,次月失效),本月赠送流量已经到账。WO+视频邀您畅享视频,流量无忧,详情可咨询4000600611";
-
- private final static String ECB_SMS_CONTENT = "亲爱的{0}用户,您已成功订购无限畅视业务,现可免费领取一个月爱奇艺会员,点击http://changshi.wo.cn/wx/index.html 享受省时跳广告、超清不卡顿等尊贵会员权益,数量有限,先到先得!更多精彩内容,请关注中国联通无限畅视业务!";
-
- private final static String WXCS_SMS_CONTENT = "感谢您对无限畅视业务的支持,祝您使用愉快!活动赠送的两个500M全国流量包将于48小时内到账,具体到账时间请以短信通知为准。";
-
- //private final static String TENCNETORDER_SMS_CONTENT = "温馨提示:您于{0}月{1}日订购的腾讯定向流量会员包月已办理成功,资费20元/月,自然月收费,次月自动续订。生效后请打开腾讯视频客户端进行手动激活(点击http://v.wo.cn/vipjh 了解),激活成功后在观看视频时有免流量标识即已免流量观看;订购当月务必通过 http://v.wo.cn/viphy 领取腾讯VIP会员,次月不能再领取上月会员。当月领取会员的次月续订用户会员自动续订,无需再次领取!";
- private final static String TENCNETORDER_SMS_CONTENT = "温馨提示:您于{0}月{1}日订购的腾讯定向流量会员包月已办理成功,资费20元/月,自然月收费,次月自动续订。生效后请打开腾讯视频客户端进行手动激活(点击 http://v.wo.cn/vipjh 了解),激活成功后在观看视频时有免流量标识即已免流量观看;订购当月务必通过 http://v.wo.cn/viphy 领取腾讯VIP会员,次月不能再领取上月会员。当月领取会员的次月续订用户会员自动续订,无需再次领取!您可在腾讯视频客户端进行退订";
-
- private final static String TENCENTCANCEL_SMS_CONTENT = "您已退订联通(腾讯)定向免流会员包";
- private final static String TENCENTCANCEL_FAIL_CONTENT = "尊敬的用户,因产品重叠,“WO+视频腾讯定向流量包月”退订失败,请通过10010或线下营业厅自行退订,给您带来的不便敬请谅解。";
- private final static String CCTVORDER_SMS_CONTENT = "温馨提示:您于{0}月{1}日订购的CCTV手机电视免流会员包月已办理成功,资费12元/月,自然月收费,次月自动续订。生效后请打开CCTV手机电视客户端进行手动激活(点击 http://v.wo.cn/fifajh 了解),激活成功后在观看视频时有免流量标识即已免流量观看;CCTV手机电视客户端会员会发放至本号码,请务必以本号码获取动态码登录CCTV手机电视客户端使用会员。祝您使用愉快!现关注“畅视互娱”公众号回复“邀请计划”,可领取福利哦!您可在CTV手机电视客户端进行退订";
-
- private final static String CCTVCANCEL_SMS_CONTENT = "您已退订中国联通CCTV手机电视定向流量会员包";
-
- private final static String AIQY_SMS_CONTENT = "您于{0}月{1}日订购的WO+视频爱奇艺定向流量产品已办理成功,资费15元/月,自然月收费,次月自动续订。同时感谢您参与送7天会员活动,请戳此链接进行领取 http://v.wo.cn/aqysms ,也可以在爱奇艺客户端领取。现关注“畅视互娱”公众号回复“邀请计划”,可领取福利哦!您可在爱奇艺客户端进行退订";
- private final static String TENCENTCONTINUE_FAILSMS_CONTENT = "尊敬的用户,万分抱歉的通知您,由于系统为您续订腾讯定向流量会员包月产品扣费失败,免流服务已于上月底截止,腾讯视频VIP会员有效期自会员领取日起31天失效,且本月不再续送。诚挚的邀请您继续使用本业务,请拨打10010或点链接进行重新订购 http://v.wo.cn/dx01 ";
-
- private final static String AIQY_GIVEVIP_CONTENT = "感谢参与WO+视频爱奇艺月会员领取活动,爱奇艺31天会员已赠送至此号码,通过此号码登录客户端即可使用,过期无效。";
-
- private final static String AIQY_ORDER_CONTENT = "感谢参与WO+视频爱奇艺定向流量送31天会员活动,请戳此链接进行领取 http://v.wo.cn/aqysms31 ,也可以在爱奇艺客户端领取。";
-
- private final static String AIQY_ORDER20_CONTENT="您于{0}月{1}日订购的联通免流+爱奇艺VIP月会员产品已办理成功,资费20元/月,自然月收费,次月自动续订。请戳此链接进行领取 http://v.wo.cn/aqy20sms ,也可以在爱奇艺客户端领取。您可在爱奇艺客户端进行退订";
-
- private final static String AIQY_GIVEVIP20_CONTENT="感谢您订购联通免流+爱奇艺VIP月会员产品,爱奇艺31天会员已赠送至此号码,通过此号码登录客户端即可使用,过期无效。";
-
- private final static String AIQY_CONTIMUEVIP20_CONTENT="感谢您订购联通免流+爱奇艺VIP月会员产品,这个月的爱奇艺31天会员已赠送至此号码,使用此号码登录客户端,赶快享用吧!";
-
- private final static String LESHI_ORDER_CONTENT="您于{0}月{1}日订购的联通免流+乐视VIP月会员产品已办理成功,资费12元/月,自然月收费,次月自动续订。请在乐视视频app中,点击我的-我的流量-乐视视频定向流量会员包,激活产品后领取会员。您可在乐视视频客户端进行退订";
-
- private final static String LESHI_CANCEL_CONTENT="您已退订中国联通乐视视频定向流量会员包";
-
- private final static String LESHI_CONTIMUEVIP_CONTENT="本月的乐视会员已经赠送到之前领取会员的乐视账户,感谢使用联通免流+乐视VIP月会员产品。";
-
- private final static String MGTV_ORDER_CONTENT="您于{0}月{1}日订购的联通免流+芒果VIP月会员产品已办理成功,资费16元/月,自然月收费,次月自动续订。请戳此链接进行领取会员:http://v.wo.cn/mgtv16 ,也可以在芒果TV客户端领取。您可在芒果TV客户端进行退订";
-
- private final static String MGTV_CANCEL_CONTENT="您已退订中国联通芒果TV定向流量会员包";
-
- private final static String MGTV_CONTIMUE_CONTENT="本月的芒果VIP会员已经赠送到本号码绑定的芒果TV账户,感谢使用联通免流+芒果VIP月会员产品。";
-
- private final static String KEY = "22fdse33";
-
- private final static String AIQY12_CANCEL_CONTENT ="您已退订中国联通爱奇艺定向流量包";
-
- private final static String TENCENT6_ORDER_CONTENT="您于{0}月{1}日订购的WO+视频腾讯定向流量包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在腾讯视频客户端进行退订";
-
- private final static String TENCENT6_CANCEL_CONTENT="您已退订WO+视频腾讯定向流量包月包";
- private final static String LESHILT952_ORDER_CONTENT="您于{0}月{1}日订购的WO+乐视视频定向流量包包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在乐视视频客户端进行退订";
- private final static String LESHILT952_CANCEL_CONTENT="您已退订WO+乐视视频定向流量包包月包";
- private final static String YOUTU21156_ORDER_CONTENT="您于{0}月{1}日订购的WO+视频优酷定向流量包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在优酷视频客户端进行退订";
- private final static String YOUTU21156_CANCEL_CONTENT="您已退订WO+视频优酷定向流量包月包";
- private final static String BILIBL979_ORDER_CONTENT="您于{0}月{1}日订购的WO+视频哔哩哔哩定向流量包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在哔哩哔哩视频客户端进行退订";
- private final static String BILIBL979_CANCEL_CONTENT="您已退订WO+视频哔哩哔哩定向流量包月包";
- private final static String MANGTV1005_ORDER_CONTENT="您于{0}月{1}日订购的WO+视频芒果TV定向流量包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在芒果TV视频客户端进行退订";
- private final static String MANGTV1005_CANCEL_CONTENT="您已退订WO+视频芒果TV定向流量包月包";
- private final static String PPTV11_ORDER_CONTENT="您于{0}月{1}日订购的WO+视频PPTV定向流量包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在PPTV视频客户端进行退订";
- private final static String PPTV11_CANCEL_CONTENT="您已退订WO+视频PPTV定向流量包月包";
- private final static String BESTV980_ORDER_CONTENT="您于{0}月{1}日订购的WO+bestv定向流量包包月产品已办理成功,资费15元/月,自然月收费,次月自动续订。如有问题,请咨询10010。您可在百事通视频客户端进行退订";
- private final static String BESTV980_CANCEL_CONTENT="您已退订WO+bestv定向流量包包月包";
-
- private final static String AIQY1018_CANCEL_CONTENT="您已退订爱奇艺定向流量会员包(前向)包";
-
- private final static String AIQY1017_CANCEL_CONTENT="您已退订WO+视频爱奇艺定向流量包月包";
-
- private final static String YOUTU15_GIVEVIP_CONTENT="感谢您参与订购优酷流量包送优酷7天VIP会员活动,优酷7天VIP会员已充值至订购号码,请您及时查收。活动期间订购且不退订用户,截止至2019年12月31日前每月初可获赠优酷7天VIP会员。《时间的朋友》跨年演讲,我在优酷等你。";
- private final static String TWOWEI10013_ORDER_CONTENT="尊敬的用户,您已开通中国联通-腾讯视频免流会员体验卡,请您通过领取时使用的手机号登录腾讯视频客户端激活使用(点击 http://v.wo.cn/vipjh 了解)。温馨提示:要在视频播放中看到免流标识,方可确认免流量使用,如未能正常显示请参见 http://v.wo.cn/vipjh 。祝您使用愉快。";
-
- private final static String TWOWEI10013_CANCEL_CONTENT="您体验的联通-腾讯视频定向免流将于本月底到期,到期后自动退订。搜索公众号“联通视频权益助手”,体验更多精彩视频服务。";
-
- private final static String TWOWEI10014_ORDER_CONTENT="尊敬的用户,您已开通中国联通-爱奇艺免流会员体验卡,请您通过领取时使用的手机号登录爱奇艺客户端激活使用(点击 http://v.wo.cn/iqiyi20 了解)。温馨提示:要在视频播放中看到免流标识,方可确认免流量使用,如未能正常显示请参见 http://v.wo.cn/iqiyi20 。祝您使用愉快。";
-
- private final static String TWOWEI10014_CANCEL_CONTENT="您体验的联通-爱奇艺视频定向免流将于本月底到期,到期后自动退订。搜索公众号“联通视频权益助手”,体验更多精彩视频服务。";
-
- public void doProcess() throws Exception {
- log.info("超时,生效短信job开始执行");
- if (dictionaryDao.getValue("recivemq").equals("0")) {
- List<MessagePipe> list = messageService.reciveBatchMessage("cssms", 500);
- if(list != null && list.size()>0){
- log.info("超时,生效短信需要发送:"+list.size());
- for (MessagePipe messagePipe : list) {
- String result ="";
- String resultcode =(String) messagePipe.getBody().get("result");
- String userid = (String) messagePipe.getBody().get("userid");
- String times = (String) messagePipe.getBody().get("times");
- int style = NumberUtils.toInt((String)messagePipe.getBody().get("style"));
- try{
- String content = "";
- switch (style) {
- case 0:
- content =F_SMS_CONTENT.replace("{0}", resultcode);
- break;
- case 1:
- content =T_SMS_CONTENT;
- break;
- case 2:
- content =E_SMS_CONTENT;
- break;
- case 3:
- content =S_SMS_CONTENT;
- break;
- case 4:
- content =B_SMS_CONTENT;
- break;
- case 5:
- content =ECB_SMS_CONTENT.replace("{0}", userid);
- break;
- case 6:
- content =WXCS_SMS_CONTENT;
- break;
- case 7:
- content =TENCNETORDER_SMS_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 8:
- content =TENCENTCANCEL_SMS_CONTENT;
- break;
- case 9:
- content =TENCENTCANCEL_FAIL_CONTENT;
- break;
- case 10:
- content =CCTVORDER_SMS_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 11:
- content =CCTVCANCEL_SMS_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 12:
- content =AIQY_SMS_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));;
- break;
- case 13:
- content =TENCENTCONTINUE_FAILSMS_CONTENT;
- break;
- case 14:
- content =AIQY_GIVEVIP_CONTENT;
- break;
- case 15:
- content =AIQY_ORDER_CONTENT;
- break;
- case 16:
- content =AIQY_ORDER20_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 17:
- content =AIQY_GIVEVIP20_CONTENT;
- break;
- case 18:
- content =AIQY_CONTIMUEVIP20_CONTENT;
- break;
- default:
- case 20:
- content =LESHI_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 21:
- content =LESHI_CANCEL_CONTENT;
- break;
- case 22:
- content =MGTV_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 23:
- content =MGTV_CANCEL_CONTENT ;
- break;
- case 24:
- content =LESHI_CONTIMUEVIP_CONTENT;
- break;
- case 25:
- content =MGTV_CONTIMUE_CONTENT;
- break;
- case 26:
- content =AIQY12_CANCEL_CONTENT;
- break;
- case 30:
- content =TENCENT6_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 31:
- content =LESHILT952_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 32:
- content =YOUTU21156_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 33:
- content =BILIBL979_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 34:
- content =MANGTV1005_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 35:
- content =PPTV11_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 36:
- content =BESTV980_ORDER_CONTENT.replace("{0}", DateFormatUtils.format(new Date(), "MM")).replace("{1}", DateFormatUtils.format(new Date(), "dd"));
- break;
- case 37:
- content =TENCENT6_CANCEL_CONTENT;
- break;
- case 38:
- content =LESHILT952_CANCEL_CONTENT;
- break;
- case 39:
- content =YOUTU21156_CANCEL_CONTENT;
- break;
- case 40:
- content =BILIBL979_CANCEL_CONTENT;
- break;
- case 41:
- content =MANGTV1005_CANCEL_CONTENT;
- break;
- case 42:
- content =PPTV11_CANCEL_CONTENT;
- break;
- case 43:
- content =BESTV980_CANCEL_CONTENT;
- break;
- case 45:
- content =AIQY1018_CANCEL_CONTENT;
- break;
- case 44:
- content =AIQY1017_CANCEL_CONTENT;
- break;
- case 50:
- content =YOUTU15_GIVEVIP_CONTENT;
- break;
- case 51:
- content =TWOWEI10013_ORDER_CONTENT;
- break;
- case 52:
- content =TWOWEI10013_CANCEL_CONTENT;
- break;
- case 53:
- content =TWOWEI10014_ORDER_CONTENT;
- break;
- case 54:
- content =TWOWEI10014_CANCEL_CONTENT;
- break;
- }
- if(StringUtils.isNotEmpty(content)){
- result = URLUtil.get("http://10.199.99.147:8092/videoif/channelSmsSend.do?userid="+URLEncoder.encode(DESUtil.encode(userid, KEY),"utf-8")+"&content="+URLEncoder.encode(content,"UTF-8")+"&channel=cssms", 2000);
- }
- }catch(Exception e){
- log.error(userid+"短信发送失败",e);
- }finally {
- Map<String,String> map = new HashMap<String, String>();
- map.put("userid", userid);
- map.put("style", style+"");
- map.put("result", result);
- map.put("times", times);
- logger.info(JsonUtil.objectToJson(map));
- }
- }
- }
- }
- }
- public static void main(String[] args) throws Exception {
- String url = "http://114.255.201.238:8092/videoif/channelSmsSend.do?userid="+URLEncoder.encode(DESUtil.encode("18574414678", KEY),"utf-8")+"&content="+URLEncoder.encode(F_SMS_CONTENT,"utf-8")+"&channel=cssms";
- System.out.println(url);
- System.out.println(URLUtil.get(url, 3000));
- }
-
- }
|