package com.chinacreator.videoalliance.query.action; import java.net.URLEncoder; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.chinacreator.common.exception.BusinessException; import com.chinacreator.common.util.DESUtil; import com.chinacreator.common.util.URLUtil; import com.chinacreator.videoalliance.order.bean.EmeiBean; import com.chinacreator.videoalliance.order.bean.OrderInfo; import com.chinacreator.videoalliance.order.dao.OrderDao; import com.chinacreator.videoalliance.query.dao.ImeiDao; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; @Controller public class ImeiQueryAction { @Autowired ImeiDao imeiDao; @Autowired OrderDao orderDao; @RequestMapping("/imeiQuery.do") @ResponseBody public Object query(HttpServletRequest request) throws Exception { Map outmap = new HashMap(); String resultcode = "0"; String resultinfo = ""; String orderInfo = ""; String content = null; Map orderInfoMap = new HashMap(); Gson gson = new GsonBuilder().disableHtmlEscaping().serializeNulls().create(); try{ content = URLUtil.readInputStream(request.getInputStream()); HashMap requestmap = gson.fromJson(content, new TypeToken>(){}.getType()); String cpid = requestmap.get("cpid"); String spid = requestmap.get("spid"); String imeiNum = requestmap.get("imeiNum"); if(StringUtils.isEmpty(cpid) || !cpid.equals("huasheng")){ throw new BusinessException("8002", "参数[{0}]无效","cpid"); } if(StringUtils.isEmpty(spid) || !spid.equals("57")){ throw new BusinessException("8002", "参数[{0}]无效","spid"); } if(StringUtils.isEmpty(imeiNum)){ throw new BusinessException("8002", "参数[{0}]无效","imeiNum"); } EmeiBean bean = imeiDao.queryListBean(imeiNum); if(bean == null){ throw new BusinessException("9016", "IMEI号[{0}]无效",imeiNum); } if(bean.getStatus().equals("0")){ throw new BusinessException("9017", "IMEI号[{0}]未激活",imeiNum); } orderInfoMap.put("userid", bean.getUserid()); OrderInfo orderBean = orderDao.findByUser(bean.getUserid(), cpid, spid); if(orderBean != null){ orderInfoMap.put("ordertime",orderBean.getOrdertime()); orderInfoMap.put("endtime", orderBean.getEndtime()); }else{ orderInfoMap.put("ordertime",""); orderInfoMap.put("endtime",""); } }catch(Exception e){ e.printStackTrace(); if(e instanceof BusinessException){ resultcode = ((BusinessException) e).getCode(); resultinfo = e.getMessage(); if(((BusinessException) e).getParams().length != 0){ resultinfo = resultinfo.replace("[{0}]",((BusinessException) e).getParams()[0]); } }else{ resultcode = "8000"; resultinfo = "系统忙,请稍后再试!"; } } if(!orderInfoMap.isEmpty()){ orderInfo = URLEncoder.encode(DESUtil.encode(gson.toJson(orderInfoMap), "7dda13d5"),"utf-8"); } outmap.put("resultcode", resultcode); outmap.put("resultinfo", resultinfo); outmap.put("orderInfo", orderInfo); return outmap; } public static void main(String[] args) { String cpid =""; if(StringUtils.isEmpty(cpid)){ try { throw new BusinessException("8002", "参数[{0}]无效","cpid"); } catch (BusinessException e) { if(e instanceof BusinessException){ System.out.println(e.getParams()[0]); System.out.println(e.getMessage()); String resultcode = ((BusinessException) e).getMessage().replace("[{0}]",((BusinessException) e).getParams()[0]); System.out.println(resultcode); } } } } }