bd88caa639837ed6b951a26d2ad5c2c8ceffa7c2.svn-base 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package com.chinacreator.videoalliance.order.process;
  2. import java.util.Map;
  3. import java.util.TreeMap;
  4. import org.springframework.stereotype.Component;
  5. import com.chinacreator.common.exception.BusinessException;
  6. import com.chinacreator.videoalliance.order.bean.CustomSpInfo;
  7. import com.chinacreator.videoalliance.order.bean.MemberOutBean;
  8. import com.chinacreator.videoalliance.order.bean.MemberlogBean;
  9. import com.chinacreator.videoalliance.order.bean.OrderInfo;
  10. import com.chinacreator.videoalliance.order.util.JsonUtil;
  11. import com.chinacreator.videoalliance.order.util.SHA1Util;
  12. import com.chinacreator.videoalliance.order.util.URLUtil;
  13. @Component("manggtv")
  14. public class ManggtvViPHandle extends AbstractVipHandle{
  15. @Override
  16. public void getVipInfo(OrderInfo orderInfo, MemberOutBean memberBean, CustomSpInfo customSpInfo,MemberlogBean logBean) throws Exception {
  17. String err ="", status ="", msg="", outparams="", inputparams ="",id=logBean.getId(),membertime="",pwd="";
  18. StringBuilder datastr = new StringBuilder();
  19. datastr.append("data=");
  20. datastr.append(JsonUtil.objectToJson(memberBean));
  21. datastr.append("&");
  22. datastr.append("invoker=blf&");
  23. datastr.append("version=1.1&");
  24. Map<String, String> signMap = new TreeMap<String, String>();
  25. signMap.put("data", JsonUtil.objectToJson(memberBean));
  26. signMap.put("invoker", "blf");
  27. signMap.put("version", "1.1");
  28. StringBuilder sign = new StringBuilder();
  29. for (String key : signMap.keySet()) {
  30. sign =sign.append(key);
  31. sign.append("=");
  32. sign.append(signMap.get(key));
  33. sign.append("&");
  34. }
  35. sign.append("secret_key=");
  36. sign.append(customSpInfo.getPwd());
  37. datastr.append("sign="+SHA1Util.SHA1(sign.toString().toLowerCase()));
  38. try{
  39. String result = URLUtil.postForm(customSpInfo.getVipUrl(), datastr.toString(),15000);
  40. System.out.println("返回结果"+result);
  41. Map<?,?> map = JsonUtil.jsonToMap(result);
  42. err = map.get("err").toString();
  43. status = (String)map.get("status");
  44. if(status.equals("0701")){
  45. throw new BusinessException("9043", "您已是芒果TV OTT全屏会员,请更换手机号开通");
  46. }
  47. if(Float.valueOf(err).floatValue() == 0){
  48. Map<?,?> msgmap = (Map<?,?>)map.get("msg");
  49. msg = JsonUtil.objectToJson(msgmap);
  50. pwd = (String) JsonUtil.jsonToMap(msg).get("password");
  51. membertime = (String) JsonUtil.jsonToMap(msg).get("end_time");
  52. membertime = membertime.trim().replace(" ","");
  53. membertime = membertime.trim().replace("-","");
  54. membertime = membertime.trim().replace(":","");
  55. }else{
  56. msg = map.get("msg").toString();
  57. throw new BusinessException("9041", msg, new String[0]);
  58. }
  59. }catch(Exception e){
  60. throw e;
  61. }finally{
  62. logBean.setId(id);
  63. logBean.setErr(err);
  64. logBean.setPwd(pwd);
  65. logBean.setMsg(msg);
  66. logBean.setCode(status);
  67. //logBean.setProductid(memberBean.getProductid());
  68. logBean.setOutparams(outparams);
  69. logBean.setInputparams(inputparams);
  70. logBean.setMembertime(membertime);
  71. }
  72. }
  73. }