43223b3d160dfe4d06ab8c825310cc48a344dbc7.svn-base 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package com.chinacreator.videoalliance.order.action;
  2. import java.io.UnsupportedEncodingException;
  3. import java.net.URLDecoder;
  4. import javax.servlet.http.HttpServletRequest;
  5. import com.chinacreator.common.util.DESUtil;
  6. import org.apache.commons.lang.StringUtils;
  7. import org.apache.log4j.Logger;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Controller;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import com.chinacreator.common.exception.BusinessException;
  12. import com.chinacreator.common.pipe.DataOutPipe;
  13. import com.chinacreator.videoalliance.common.annotation.DataOut;
  14. import com.chinacreator.videoalliance.common.util.ConfigUtil;
  15. import com.chinacreator.videoalliance.order.bean.BussinessBean;
  16. import com.chinacreator.videoalliance.order.bean.OrderInfo;
  17. import com.chinacreator.videoalliance.order.bean.WxcsBean;
  18. import com.chinacreator.videoalliance.order.dao.BussinessDao;
  19. import com.chinacreator.videoalliance.order.dao.CsOrderControlDao;
  20. import com.chinacreator.videoalliance.order.dao.OrderDao;
  21. import com.chinacreator.videoalliance.order.dao.WxcsDao;
  22. import com.chinacreator.videoalliance.order.service.WxcsService;
  23. import com.chinacreator.videoalliance.order.util.JsonUtil;
  24. @Controller
  25. public class CanOrderAction {
  26. private static Logger log = Logger.getLogger(CanOrderAction.class);
  27. @Autowired
  28. private WxcsService wxcsService;
  29. @Autowired
  30. private WxcsDao wxcsDao;
  31. @Autowired
  32. private BussinessDao bussinessDao;
  33. @Autowired
  34. private CsOrderControlDao csOrderControlDao;
  35. @Autowired
  36. private OrderDao orderDao;
  37. @RequestMapping({ "/canorder.do" })
  38. @DataOut(callback = "canorder")
  39. public DataOutPipe doOrder(HttpServletRequest request, String cpid, String spid, String userid, String discntFee,
  40. String discntCode) throws Exception {
  41. DataOutPipe pipe = new DataOutPipe();
  42. int vipstatus = 0;
  43. int flowstatus = 0;
  44. if (StringUtils.isNotEmpty(userid)) {
  45. userid = ConfigUtil.decrypt(userid, cpid);
  46. if ((userid != null) && (userid.length() > 11)) {
  47. userid = ConfigUtil.getUserid(userid, cpid);
  48. }
  49. WxcsBean wxcsBean = wxcsDao.getConfig(cpid, spid);
  50. if(wxcsBean == null){
  51. throw new BusinessException("7002", "参数错误");
  52. }
  53. vipstatus = wxcsService.checkVipConfig(wxcsBean, discntFee);
  54. flowstatus = wxcsService.checkFlowConfig(wxcsBean, discntFee);
  55. if(vipstatus == 0 || flowstatus == 0){
  56. if(csOrderControlDao.discntFeeControl(discntCode, cpid, spid)){
  57. if(vipstatus == 0){
  58. vipstatus =6;
  59. }
  60. if(flowstatus == 0){
  61. flowstatus =5;
  62. }
  63. }
  64. }
  65. if (vipstatus == 0 || flowstatus == 0) {
  66. BussinessBean bussinessBean = bussinessDao.getBussinessInfo(cpid, spid, userid);
  67. if(bussinessBean == null){
  68. OrderInfo orderInfo = orderDao.findByUser(userid, cpid, spid);
  69. if(orderInfo == null){
  70. if(vipstatus == 0){
  71. vipstatus = 2;
  72. }
  73. if(flowstatus == 0){
  74. flowstatus = 2;
  75. }
  76. }else{
  77. if(vipstatus == 0){
  78. vipstatus = 0;
  79. }
  80. if(flowstatus == 0){
  81. flowstatus = 0;
  82. }
  83. }
  84. }
  85. if (vipstatus == 0 && bussinessBean !=null) {
  86. vipstatus = wxcsService.checkVip(bussinessBean);
  87. }
  88. if (flowstatus == 0 && bussinessBean !=null) {
  89. flowstatus = wxcsService.checkFlow(bussinessBean);
  90. }
  91. }
  92. pipe.add("vipcode", "");
  93. pipe.add("vipname", "");
  94. pipe.add("vipstatus", vipstatus);
  95. pipe.add("flowstatus", flowstatus);
  96. log.info("会员+流量赠送结果查询"+JsonUtil.objectToJson(pipe));
  97. }
  98. return pipe;
  99. }
  100. public static void main(String[] args) throws UnsupportedEncodingException, Exception {
  101. System.out.println(DESUtil.decode(URLDecoder.decode("TIdFDJ3zAoOo4gf7at91aA%3D%3D", "utf-8"), "ed8d9d3a"));
  102. }
  103. }