From f6d57d47a19b2c13f78951ad078ca1786b8471fa Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期三, 10 六月 2020 12:18:52 +0800
Subject: [PATCH] 云发单支付

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java |   67 ++++++++++++++++++---------------
 1 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java
index 916f4ae..3ced83e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserCloudControllerV2.java
@@ -8,6 +8,7 @@
 import java.util.List;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.springframework.stereotype.Controller;
@@ -25,6 +26,7 @@
 import com.yeshi.fanli.dto.aitaoker.QrcodeLoginDTO;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.bus.user.cloud.CloudOrderMenuEnum;
 import com.yeshi.fanli.entity.bus.user.cloud.UserCloud;
 import com.yeshi.fanli.entity.bus.user.cloud.UserCloudGoods;
 import com.yeshi.fanli.entity.bus.user.cloud.UserCloudGroup;
@@ -50,6 +52,8 @@
 import com.yeshi.fanli.service.inter.user.cloud.UserCloudService;
 import com.yeshi.fanli.service.manger.alipay.UserCloudAlipayManager;
 import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.RedisKeyEnum;
+import com.yeshi.fanli.util.RedisManager;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.aitaoker.AitaokerApiUtil;
@@ -57,6 +61,7 @@
 import com.yeshi.fanli.util.suning.SuningUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
 import com.yeshi.fanli.vo.goods.GoodsDetailVO;
+import com.yeshi.fanli.vo.user.cloud.CloudOrderMenuVO;
 import com.yeshi.fanli.vo.user.cloud.UserCloudInfoVO;
 
 import net.sf.json.JSONArray;
@@ -95,6 +100,10 @@
 	
 	@Resource
 	private ConfigService configService;
+	
+	@Resource
+	private RedisManager redisManager;
+	
 
 	/**
 	 * 鏌ヨ寮�閫氳褰�
@@ -173,11 +182,24 @@
 			return;
 		}
 
+		List<CloudOrderMenuVO> listMenu = new ArrayList<>();
+		CloudOrderMenuEnum[] menus = CloudOrderMenuEnum.values();
+		for (CloudOrderMenuEnum menuEnum: menus) {
+			CloudOrderMenuVO menuVO = new CloudOrderMenuVO();
+			menuVO.setMoney(BigDecimal.valueOf(menuEnum.getMoney()) );
+			menuVO.setType(menuEnum.name());
+			menuVO.setDesc(menuEnum.getDescShow());
+			listMenu.add(menuVO);
+		}
+		
+		
 		UserCloudInfoVO cloudInfoVO = new UserCloudInfoVO();
 		cloudInfoVO.setNickName(userInfo.getNickName());
 		cloudInfoVO.setPortrait(userInfo.getPortrait());
 		cloudInfoVO.setOpenState(0); // 鏈紑閫�
-
+		cloudInfoVO.setListMenu(listMenu);
+		
+		
 		// 鏄惁寮�閫�
 		UserCloud userCloud = userCloudService.getLastByUid(uid);
 		if (userCloud == null) {
@@ -627,8 +649,7 @@
 	 * @param out
 	 */
 	@RequestMapping(value = "pay")
-	public void pay(String callback, AcceptData acceptData, Long uid, String type, HttpServletResponse response,
-			PrintWriter out) {
+	public void pay(String callback, AcceptData acceptData, Long uid, String type, PrintWriter out) {
 		try {
 			if (uid == null) {
 				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
@@ -643,42 +664,28 @@
 			// 鍒涘缓鏀粯淇℃伅
 			String alipayForm = userCloudAlipayManager.getAlipayForm(uid, type);
 
-			// 杩斿洖淇℃伅
-			response.setContentType("text/html;charset=utf-8");
-			PrintWriter print = response.getWriter();
+			// 杩斿洖淇℃伅 - 缂撳瓨鍒皊ession
 			StringBuilder builder = new StringBuilder();
 			builder.append("<html><head><title>alipay</title></head>");
 			builder.append("<body>" + alipayForm + "</body></html>");
-			JsonUtil.printMode(print, callback, builder.toString());
-			print.close();
+			
+			// 缂撳瓨鍒皉edis- 涓�鍒嗛挓
+			String key = RedisKeyEnum.cloudAlipayLink.getKey() + uid + "_" + type;
+			key = StringUtil.Md5(key);
+			redisManager.cacheCommonString(key , builder.toString() , 60*10);
+			
+			System.out.println(builder.toString());
+			
+			String link = "http://192.168.1.200:8008/fanli/client/v1/cloud/callback/payUrl?key=%s";
+			JSONObject dataObject = new JSONObject();
+			dataObject.put("link", String.format(link, key));
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(dataObject));
 		} catch (Exception e) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "鍒涘缓鏀粯淇℃伅澶辫触"));
 			LogHelper.errorDetailInfo(e);
 		}
 	}
 
-	/**
-	 * 鏀粯瀹屾垚
-	 * 
-	 * @param callback
-	 * @param acceptData
-	 * @param id
-	 * @param out
-	 */
-	@RequestMapping(value = "payEnd")
-	public void payEnd(String callback, AcceptData acceptData, Long id, PrintWriter out) {
-		if (id == null) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "鍙傛暟淇℃伅缂哄け"));
-			return;
-		}
-		try {
-			userCloudAlipayManager.tradeQueryByOrderId(id);
-		} catch (Exception e) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "妫�娴嬪け璐�"));
-			LogHelper.errorDetailInfo(e);
-		}
-	}
-	
 	
 	/**
 	 * 鍔ㄦ�佷竴閿彂鍗�

--
Gitblit v1.8.0