123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- package com.chinacreator.process.service;
- import com.chinacreator.common.util.URLUtil;
- import com.chinacreator.process.bean.OrderBean;
- import com.chinacreator.process.dao.DictionaryDao;
- import com.chinacreator.process.util.JsonUtil;
- import com.chinacreator.process.util.fakeid.MD5;
- import org.apache.log4j.Logger;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import java.sql.SQLException;
- import java.util.Date;
- import java.util.Map;
- /**
- * N天后订购送N天会员
- * 20190903
- * zzb
- */
- @Component
- public class OrderToVipService {
-
- private Logger logger = Logger.getLogger("recivemq");
- private Logger log = Logger.getLogger(OrderToVipService.class);
-
- @Autowired
- private DictionaryDao dictionaryDao;
-
- /**
- * N天后订购送N天会员
- * @param orderInfo
- * @throws SQLException
- */
- public String sendVip(OrderBean orderBean) throws SQLException {
- String resultcode = "1"; //无权限领取
- //目前支持优酷20元
- if(orderBean.getCpid().equals("youtu") && orderBean.getSpid().equals("1167")){
- String days = this.dictionaryDao.getValue("youkutwoDay");//多少天后订购送会员
- //String vips = this.dictionaryDao.getValue("youkutwoVip");//送多少天会员,由于送会员不能指定多少天,暂时默认七天
- Integer nowday = Integer.parseInt(days);
- int day = new Date().getDay();
- if(day>=nowday){
- try {
- logger.info("优酷20订购送7天会员,userId:"+orderBean.getUserid());
- String userid = orderBean.getUserid();
- String orderid = getOrderIdByUUId();
- //测试接口地址:http://114.255.201.228:86/vip/giveVip
- //正式接口地址:http://114.255.201.238:8090/videovip/giveVip
- String vipurl = this.dictionaryDao.getValue("youkutwoUrl");
- String apptype="2";
- String channel=this.dictionaryDao.getValue("youkutwoChannel");
- String timestamp = (System.currentTimeMillis() / 1000) + "";
- String usertype="4";
- String userval=userid;
- String vipid=this.dictionaryDao.getValue("youkutwoVipid");
- String viptype="1";//1:星期 2: 月 3:季 4:年
- String vipval="1";
- String pwd=this.dictionaryDao.getValue("youkutwoPwd");
- //md5(orderid+channel+vipid+userval+pwd+timestamp)
- String signature = MD5.MD5Encode(orderid + channel + vipid + userval + pwd + timestamp);
- signature = signature.toLowerCase();
- vipurl = vipurl + "?apptype="+apptype+"&orderid="+orderid+"&channel="+channel + "×tamp=" + timestamp+ "&usertype=" + usertype+ "&userval=" + userval+
- "&vipid=" + vipid+ "&viptype=" + viptype+ "&vipval=" + vipval + "&signature=" + signature;
- logger.info("vipurl: "+vipurl);
- String result = URLUtil.get(vipurl,30*1000); //调赠送会员接口,超时时间设置为10秒
- logger.info("赠送会员结果=> userid: " +userid+", result: "+result);
- Map<?,?> map = JsonUtil.jsonToMap(result);
- resultcode = (String)map.get("resultcode");
- if(resultcode.equals("0")){
- log.info("赠送成功");
- }
- } catch (Exception e) {
- resultcode="2";//失败
- e.printStackTrace();
- logger.error("userid: "+orderBean.getUserid()+"赠送会员失败,"+e);
- }
- }
- }
-
- return resultcode;
-
- }
-
- public static String getOrderIdByUUId() {
- long a = System.currentTimeMillis();
- int b = (int)(Math.random()*900 + 100);
- StringBuffer bf = new StringBuffer();
- bf.append(a);
- bf.append(b);
- return bf.toString();
- }
-
- /*public static void main(String[] args) throws SQLException {
- String paths[]={"applicationContext.xml"};
- //加载spring的配置文件
- ApplicationContext context=new ClassPathXmlApplicationContext(paths);
- BeanFactory factory = (BeanFactory) context;
- OrderToVipService atu=(OrderToVipService) factory.getBean(OrderToVipService.class);
- OrderBean orderBean = new OrderBean();
- orderBean.setCpid("youtu");
- orderBean.setSpid("1167");
- orderBean.setUserid("18974646566");
- String aaa = atu.sendVip(orderBean);
- System.out.println(aaa);
- }*/
- }
|