123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- package com.chinacreator.videoalliance.query.action;
- import java.net.URLEncoder;
- import java.text.ParseException;
- import java.util.Calendar;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.Map;
- import javax.servlet.http.HttpServletRequest;
- import org.apache.commons.lang.StringUtils;
- import org.apache.commons.lang.math.NumberUtils;
- import org.apache.commons.lang.time.DateFormatUtils;
- import org.apache.commons.lang.time.DateUtils;
- import org.apache.log4j.Logger;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import com.chinacreator.common.pipe.DataOutPipe;
- import com.chinacreator.common.util.DESUtil;
- import com.chinacreator.common.util.URLUtil;
- import com.chinacreator.videoalliance.common.annotation.DataOut;
- import com.chinacreator.videoalliance.order.bean.EcbProductInfo;
- import com.chinacreator.videoalliance.order.service.EcbService;
- import com.chinacreator.videoalliance.order.util.JsonUtil;
- import com.chinacreator.videoalliance.query.bean.EcbProductXmlBean;
- @Controller
- public class CsOrderXMLAction {
- private static Logger log = Logger.getLogger(CsOrderXMLAction.class);
-
- @Autowired
- private EcbService ecbService;
- @RequestMapping("/orderproductinfoxml.do")
- @DataOut(callback = "orderproductinfoxml")
- public DataOutPipe doOrder(HttpServletRequest request, EcbProductXmlBean ecbProductXmlBean, String type)
- throws Exception {
- DataOutPipe pipe = new DataOutPipe();
- String ecbstr = "";
- log.info(JsonUtil.objectToJson(ecbProductXmlBean));
- EcbProductInfo info = new EcbProductInfo();
- info.setDiscntCode(ecbProductXmlBean.getDiscntCode());
- if(!type.equals("2")){
- if(StringUtils.isEmpty(ecbProductXmlBean.getDiscntStartDate()) || NumberUtils.toLong(ecbProductXmlBean.getDiscntStartDate()) < NumberUtils.toLong(DateFormatUtils.format(new Date(), "yyyyMMddHHmmss"))){
- info.setDiscntStartDate(DateFormatUtils.format(new Date(), "yyyyMMddHHmmss"));
- }else{
- info.setDiscntStartDate(ecbProductXmlBean.getDiscntStartDate());
- }
- if(StringUtils.isNotEmpty(type) && type.equals("1")){
- info.setDiscntEndDate(getLastDay(DateFormatUtils.format(new Date(), "yyyyMMddHHmmss")));
- }else{
- info.setDiscntEndDate(ecbProductXmlBean.getDiscntEndDate());
- }
- }else{
- type = "0";
- info.setDiscntStartDate(ecbProductXmlBean.getDiscntStartDate());
- info.setDiscntEndDate(DateFormatUtils.format(new Date(), "yyyyMMddHHmmss"));
- }
- info.setPackageCode(ecbProductXmlBean.getPackageCode());
- info.setProductId(ecbProductXmlBean.getProductId());
- String resultecb = ecbService.ecbxml(info, type, ecbProductXmlBean.getUserid(), ecbProductXmlBean.getCpid(), ecbProductXmlBean.getSpid());
- log.info("resultecb="+resultecb);
- EcbProductXmlBean returnEcbProductXmlBean = (EcbProductXmlBean) JsonUtil.jsonToBean(resultecb, EcbProductXmlBean.class);
- try{
- if(!StringUtils.isEmpty(returnEcbProductXmlBean.getTransIdo())){
- Map<String,String> map = new HashMap<String,String>();
- map.put("phoneNo", ecbProductXmlBean.getUserid());
- map.put("requestno", returnEcbProductXmlBean.getTransIdo());
- map.put("dateTime", DateFormatUtils.format(new Date(), "yyyyMMddHHmmss"));
- ecbstr = URLUtil.post("http://172.16.2.169:9999/ecb/test", JsonUtil.objectToJson(map));
- }
- }catch(Exception e){
- log.error(e.getMessage(),e);
- }
- pipe.add("requeststr", returnEcbProductXmlBean.getRequeststr());
- pipe.add("responsestr", returnEcbProductXmlBean.getResponsestr());
- pipe.add("transido", returnEcbProductXmlBean.getTransIdo());
- pipe.add("ecbstr", ecbstr);
- pipe.add("code", returnEcbProductXmlBean.getCode());
- pipe.add("errorInfo", returnEcbProductXmlBean.getErrorInfo());
- log.info("pipe=:"+JsonUtil.objectToJson(pipe));
- return pipe;
- }
-
- public static String getLastDay(String timeStr) throws ParseException{
- Calendar calendar = Calendar.getInstance();
- if(!StringUtils.isEmpty(timeStr)){
- calendar.setTime(DateUtils.parseDate(timeStr, new String[]{"yyyyMMddHHmmss"}));
- }
- calendar.set(Calendar.DATE, calendar.getActualMaximum(Calendar.DATE));
- return DateFormatUtils.format(calendar, "yyyyMMdd")+"235959";
- }
- public static void main(String[] args) throws Exception {
- String url = "http://114.255.201.228:86/videoif/queryproductinfo.do?";
- String userid = DESUtil.encode("18667191697", "chsh5a1d");
- userid = URLEncoder.encode(userid, "UTF-8");
- String result = URLUtil.get(url + "cpid=changshi&userid=" + userid + "&apptype=2");
- System.out.println(result);
- }
- }
|