213f6d68aed3533e79357a6c71710fa402f919e7.svn-base 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package com.chinacreator.videoalliance.query.action;
  2. import java.util.HashMap;
  3. import java.util.Iterator;
  4. import java.util.List;
  5. import java.util.Map;
  6. import javax.servlet.http.HttpServletRequest;
  7. import net.sf.json.JSONSerializer;
  8. import org.apache.commons.lang.StringUtils;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.stereotype.Controller;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import com.chinacreator.common.exception.BusinessException;
  13. import com.chinacreator.common.pipe.DataOutPipe;
  14. import com.chinacreator.videoalliance.common.annotation.DataOut;
  15. import com.chinacreator.videoalliance.order.bean.OrderInfo;
  16. import com.chinacreator.videoalliance.order.dao.OrderDao;
  17. import com.chinacreator.videoalliance.query.bean.ProductBean;
  18. import com.chinacreator.videoalliance.query.dao.ProductDao;
  19. import com.google.gson.Gson;
  20. import com.google.gson.GsonBuilder;
  21. import com.google.gson.JsonSerializer;
  22. @Controller
  23. public class QuerySpAction {
  24. @Autowired
  25. private OrderDao orderDao;
  26. @Autowired
  27. private ProductDao productDao;
  28. @RequestMapping("/querySP.do")
  29. @DataOut(callback="querySP")
  30. public DataOutPipe doOrder(HttpServletRequest request, String userid, String backurl,String apptype,String cpid) throws Exception {
  31. DataOutPipe pipe = new DataOutPipe();
  32. if(StringUtils.isEmpty(cpid)){
  33. throw new BusinessException("9002", "cpid参数不能为空");
  34. }
  35. if(StringUtils.isEmpty(userid)){
  36. throw new BusinessException("9002", "userid参数不能为空");
  37. }
  38. List<OrderInfo> list = orderDao.findByUser(userid, cpid);
  39. List<ProductBean> listproduct = productDao.query(cpid);
  40. for (OrderInfo orderInfo : list) {
  41. for (ProductBean productBean : listproduct) {
  42. if(orderInfo.getSpid().equals(productBean.getSpid())){
  43. orderInfo.setMutex(productBean.getMutex());
  44. }
  45. }
  46. }
  47. Iterator<ProductBean> iterator = listproduct.iterator();
  48. while(iterator.hasNext()){
  49. ProductBean productBean = iterator.next();
  50. for (OrderInfo orderInfo : list) {
  51. if(orderInfo.getSpid().equals(productBean.getSpid())){
  52. iterator.remove();
  53. }else if(StringUtils.isNotEmpty(orderInfo.getMutex())){
  54. String[] strs = orderInfo.getMutex().trim().split(",");
  55. for (String string : strs) {
  56. if(productBean.getSpid().equals(string)){
  57. iterator.remove();
  58. }
  59. }
  60. }
  61. }
  62. }
  63. Gson gson = new Gson();
  64. System.out.println(gson.toJson(listproduct));
  65. // System.out.println(JSONSerializer.toJSON(listproduct));
  66. pipe.add("product",listproduct);
  67. return pipe;
  68. }
  69. }