package com.chinacreator.videoalliance.order.process; import java.util.Map; import java.util.TreeMap; import org.springframework.stereotype.Component; import com.chinacreator.common.exception.BusinessException; import com.chinacreator.videoalliance.order.bean.CustomSpInfo; import com.chinacreator.videoalliance.order.bean.MemberOutBean; import com.chinacreator.videoalliance.order.bean.MemberlogBean; import com.chinacreator.videoalliance.order.bean.OrderInfo; import com.chinacreator.videoalliance.order.util.JsonUtil; import com.chinacreator.videoalliance.order.util.SHA1Util; import com.chinacreator.videoalliance.order.util.URLUtil; @Component("manggtv") public class ManggtvViPHandle extends AbstractVipHandle{ @Override public void getVipInfo(OrderInfo orderInfo, MemberOutBean memberBean, CustomSpInfo customSpInfo,MemberlogBean logBean) throws Exception { String err ="", status ="", msg="", outparams="", inputparams ="",id=logBean.getId(),membertime="",pwd=""; StringBuilder datastr = new StringBuilder(); datastr.append("data="); datastr.append(JsonUtil.objectToJson(memberBean)); datastr.append("&"); datastr.append("invoker=blf&"); datastr.append("version=1.1&"); Map signMap = new TreeMap(); signMap.put("data", JsonUtil.objectToJson(memberBean)); signMap.put("invoker", "blf"); signMap.put("version", "1.1"); StringBuilder sign = new StringBuilder(); for (String key : signMap.keySet()) { sign =sign.append(key); sign.append("="); sign.append(signMap.get(key)); sign.append("&"); } sign.append("secret_key="); sign.append(customSpInfo.getPwd()); datastr.append("sign="+SHA1Util.SHA1(sign.toString().toLowerCase())); try{ String result = URLUtil.postForm(customSpInfo.getVipUrl(), datastr.toString(),15000); System.out.println("返回结果"+result); Map map = JsonUtil.jsonToMap(result); err = map.get("err").toString(); status = (String)map.get("status"); if(status.equals("0701")){ throw new BusinessException("9043", "您已是芒果TV OTT全屏会员,请更换手机号开通"); } if(Float.valueOf(err).floatValue() == 0){ Map msgmap = (Map)map.get("msg"); msg = JsonUtil.objectToJson(msgmap); pwd = (String) JsonUtil.jsonToMap(msg).get("password"); membertime = (String) JsonUtil.jsonToMap(msg).get("end_time"); membertime = membertime.trim().replace(" ",""); membertime = membertime.trim().replace("-",""); membertime = membertime.trim().replace(":",""); }else{ msg = map.get("msg").toString(); throw new BusinessException("9041", msg, new String[0]); } }catch(Exception e){ throw e; }finally{ logBean.setId(id); logBean.setErr(err); logBean.setPwd(pwd); logBean.setMsg(msg); logBean.setCode(status); //logBean.setProductid(memberBean.getProductid()); logBean.setOutparams(outparams); logBean.setInputparams(inputparams); logBean.setMembertime(membertime); } } }