From 4aadf484e193995c23ee1d5bb1971a497d2f9a0d Mon Sep 17 00:00:00 2001
From: yujian <yujian>
Date: 星期四, 14 三月 2019 15:02:18 +0800
Subject: [PATCH] System 对象更名为   BusinessSystem

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java |  358 +++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 222 insertions(+), 136 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java
index 4be4283..f6712b6 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java
@@ -9,92 +9,118 @@
 
 import javax.annotation.Resource;
 
-import net.sf.json.JSONObject;
-
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.yeshi.utils.DateUtil;
 import org.yeshi.utils.JsonUtil;
+import org.yeshi.utils.encrypt.DESUtil;
 
+import com.yeshi.fanli.entity.AppVersionInfo;
 import com.yeshi.fanli.entity.accept.AcceptData;
+import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.exception.order.CommonOrderException;
+import com.yeshi.fanli.service.inter.config.AppVersionService;
 import com.yeshi.fanli.service.inter.config.ConfigService;
 import com.yeshi.fanli.service.inter.count.HongBaoV2CountService;
 import com.yeshi.fanli.service.inter.order.CommonOrderService;
+import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
+import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
+import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.account.UserUtil;
 import com.yeshi.fanli.vo.order.CommonOrderVO;
+import com.yeshi.fanli.vo.user.UserInfoExtraVO;
+
+import net.sf.json.JSONObject;
 
 @Controller
 @RequestMapping("api/v1/user/order")
 public class UserOrderController {
-	
+
 	@Resource
 	private ConfigService configService;
 
 	@Resource
+	private AppVersionService appVersionService;
+
+	@Resource
 	private UserInfoService userInfoService;
-	
+
+	@Resource
+	private UserInfoExtraService userInfoExtraService;
+
 	@Resource
 	private CommonOrderService commonOrderService;
-	
+
 	@Resource
 	private HongBaoV2CountService hongBaoV2CountService;
 
+	@Resource
+	private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
+
 	/**
 	 * 璁㈠崟鍒楄〃
+	 * 
 	 * @param acceptData
 	 * @param page
 	 * @param uid
-	 * @param state  鐘舵�侊細1-鏈埌璐� 2-宸插埌璐� 3-宸插け鏁�
-	 * @param type   绫诲瀷锛�1-杩斿埄璁㈠崟 2-鍒嗕韩璁㈠崟 3-閭�璇疯鍗�
-	 * @param orderState   1鏈夋晥璁㈠崟 2 缁存潈璁㈠崟  3澶辨晥璁㈠崟
-	 * @param orderNo 璁㈠崟鍙�   
-	 * @param startTime  璧峰鏃堕棿
-	 * @param endTime   缁撴潫鏃堕棿
-	 * @param slotTime 鏃堕棿娈碉細1-鏈�杩戜笁澶� 2-鏈�杩戜竷澶� 3鏈�杩戝崐鏈� 4鏈湀 5杩戜笁鏈�  6杩戝崐骞�
-	 * @param dateType   1-浠婃棩 2-鏄ㄥぉ 3-鏈湀 4-涓婁釜鏈�  |
+	 * @param state
+	 *            鐘舵�侊細0鍏ㄩ儴 1-鏈埌璐� 2-宸插埌璐� 3-宸插け鏁�
+	 * @param type
+	 *            绫诲瀷锛�1-杩斿埄璁㈠崟 2-鍒嗕韩璁㈠崟 3-閭�璇疯鍗�
+	 * @param orderState
+	 *            1鏈夋晥璁㈠崟 2 缁存潈璁㈠崟 3澶辨晥璁㈠崟
+	 * @param orderNo
+	 *            璁㈠崟鍙�
+	 * @param startTime
+	 *            璧峰鏃堕棿
+	 * @param endTime
+	 *            缁撴潫鏃堕棿
+	 * @param slotTime
+	 *            鏃堕棿娈碉細1-鏈�杩戜笁澶� 2-鏈�杩戜竷澶� 3鏈�杩戝崐鏈� 4鏈湀 5杩戜笁鏈� 6杩戝崐骞�
+	 * @param dateType
+	 *            1-浠婃棩 2-鏄ㄥぉ 3-鏈湀 4-涓婁釜鏈� |
 	 * @param needCount
 	 * @param out
 	 */
 	@RequestMapping(value = "getorder", method = RequestMethod.POST)
-	public void getOrder(AcceptData acceptData, Integer page, Long uid, Integer state, Integer type, 
-			Integer orderState,String orderNo, String startTime, String endTime, Integer slotTime,
-			boolean needCount, Integer dateType, PrintWriter out) {
-		
+	public void getOrder(AcceptData acceptData, Integer page, Long uid, Integer state, Integer type, Integer orderState,
+			String orderNo, String startTime, String endTime, Integer slotTime, boolean needCount, Integer dateType,
+			PrintWriter out) {
+
 		if (uid == null) {
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		if (page == null || page < 1) {
 			page = 1;
 		}
-		
+
 		if (state != null && state == 0) {
 			state = null;// 鎵�鏈夌姸鎬�
 		}
-		
-		if (type != null && type == 0 ) {
+
+		if (type != null && type == 0) {
 			type = null; // 鎵�鏈夌被鍨嬭鍗�
 		}
-		
+
 		try {
 			if (slotTime != null) {
 				SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
-				endTime= sd.format(new Date());
+				endTime = sd.format(new Date());
 				startTime = convertDate(slotTime, endTime);
 			}
 		} catch (Exception e) {
 			e.printStackTrace();
 		}
-		
+
 		if (endTime != null && endTime.trim().length() > 0) {
 			endTime += " 23:59:59";
 		}
-		
+
 		try {
 			long count = 0;
 			int totalValid = 0;
@@ -102,94 +128,93 @@
 			int totalInvite = 0;
 			long todayTotal = 0;
 			BigDecimal todayMoney = null;
-			
-			
+
 			// 鏌ヨ鍒楄〃
-			List<CommonOrderVO> list = commonOrderService.getOrderByUid(page, uid, state, type, orderState,
-					orderNo, startTime, endTime, dateType);
-			
+			List<CommonOrderVO> list = commonOrderService.getOrderByUid(page, uid, state, type, orderState, orderNo,
+					startTime, endTime, dateType);
+
 			if (list != null && list.size() > 0) {
 				// 缁熻鎬绘暟
-				count = commonOrderService.countGroupOrderNoByUid(uid,  state, type, orderState, orderNo, 
-						startTime, endTime, dateType);
+				count = commonOrderService.countGroupOrderNoByUid(uid, state, type, orderState, orderNo, startTime,
+						endTime, dateType);
 			}
-			
+
 			// 闇�瑕佺粺璁$瓫閫変俊鎭� 锛氭湭澶辨晥鐨勬�婚噾棰� 浠ュ強璁㈠崟
 			if (needCount && page == 1) {
-				
+
 				todayMoney = commonOrderService.countBonusOrderMoney(uid, type, dateType, startTime, endTime);
-				
-				todayTotal =  commonOrderService.countBonusOrderNumber(uid, type, dateType, startTime, endTime);
-				
-				
+
+				todayTotal = commonOrderService.countBonusOrderNumber(uid, type, dateType, startTime, endTime);
+
 				// 缁熻鏈夋晥鐨勮鍗曟暟閲� 銆� 澶辨晥璁㈠崟鏁伴噺 銆佺淮鏉冭鍗曟暟閲�
-				Map<String, BigDecimal> countOrder = commonOrderService.countByUidAndOrderState(uid, type, 
-						startTime, endTime, dateType);
-				
+				Map<String, BigDecimal> countOrder = commonOrderService.countByUidAndOrderState(uid, type, startTime,
+						endTime, dateType);
+
 				if (countOrder.get("totalValid") != null) {
 					totalValid = countOrder.get("totalValid").intValue();
-				}	
-				
+				}
+
 				if (countOrder.get("totalProces") != null) {
 					totalProces = countOrder.get("totalProces").intValue();
-				}	
-				
+				}
+
 				if (countOrder.get("totalInvite") != null) {
 					totalInvite = countOrder.get("totalInvite").intValue();
-				}	
+				}
 			}
-			
+
 			if (todayMoney == null) {
 				todayMoney = new BigDecimal(0.00);
 			}
-			
-			
+
 			String helpUrl = configService.get("order_list_help");
-			
+
 			JSONObject data = new JSONObject();
 			data.put("count", count);
 			data.put("result_list", JsonUtil.getApiCommonGson().toJson(list));
-			
+
 			data.put("helpUrl", helpUrl);
-			
+
 			if (type != null && type == 1) {
 				data.put("todayMoney", "棰勪及杩斿埄鎬婚 楼" + todayMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
-			} else if (type != null &&(type == 2 || type == 3)) {
+			} else if (type != null && (type == 2 || type == 3)) {
 				data.put("todayMoney", "棰勪及濂栭噾鎬婚 楼" + todayMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
 			} else {
 				data.put("todayMoney", "棰勪及鎬婚 楼" + todayMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
 			}
-			
-			data.put("todayTotal", "鍏�"+ todayTotal+ "绗�");
+
+			data.put("todayTotal", "鍏�" + todayTotal + "绗�");
 			data.put("totalValid", totalValid); // 鏈夋晥鏁伴噺
 			data.put("totalProces", totalProces); // 缁存潈鏁伴噺
 			data.put("totalInvite", totalInvite); // 澶辨晥鏁伴噺
-			
+
 			out.print(JsonUtil.loadTrueResult(data));
-			
-		} catch(CommonOrderException e){
+
+		} catch (CommonOrderException e) {
 			out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
 		} catch (Exception e) {
 			out.print(JsonUtil.loadFalseResult(1, "鏌ヨ澶辫触"));
 			e.printStackTrace();
 		}
-		
+
 	}
 
 	/**
 	 * 鐢ㄦ埛璁㈠崟缁熻
+	 * 
 	 * @param acceptData
-	 * @param uid 鐢ㄦ埛id
+	 * @param uid
+	 *            鐢ㄦ埛id
 	 * @param out
 	 */
 	@RequestMapping(value = "countorder", method = RequestMethod.POST)
 	public void countOrder(AcceptData acceptData, Long uid, PrintWriter out) {
-		
+
 		if (uid == null) {
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		try {
 			UserInfo user = userInfoService.selectByPKey(uid);
 			if (user == null) {
@@ -198,193 +223,254 @@
 			}
 
 			UserInfo userInfo = UserUtil.filterForClientUser(user);
-			
+
+			// 1.5.0 鐗堟湰涔嬪悗杩斿洖鏂扮殑绛夌骇
+			String version = acceptData.getVersion();
+			if (version != null && version.trim().length() > 0) {
+				int versionCode = Integer.parseInt(version);
+				String platform = acceptData.getPlatform();
+
+				AppVersionInfo versionInfo = appVersionService.getByPlatformAndVersion(platform, "1.5.0");
+				if (versionInfo != null) {
+					int versionCode150 = versionInfo.getVersionCode();
+					if (versionCode >= versionCode150) {
+						UserInfoExtraVO userInfoExtra = userInfoExtraService.getInfoExtraVOByUid(user.getId());
+						if (userInfoExtra != null && userInfoExtra.getUserRank() != null) {
+							String picture = userInfoExtra.getUserRank().getPicture();
+							String icon = userInfoExtra.getUserRank().getIcon();
+
+							userInfo.setRankIcon(icon);
+							userInfo.setRankNamePicture(picture);
+						}
+					}
+				}
+
+			}
+
 			JSONObject data = new JSONObject();
 			data.put("userInfo", userInfo);
-			
-			/* 鎬昏鍗曠粺璁�   */
-			Map<String, BigDecimal> countOrder= commonOrderService.countHistoryOrder(uid, null);
+
+			/* 鎬昏鍗曠粺璁� */
+			Map<String, BigDecimal> countOrder = commonOrderService.countHistoryOrder(uid, null);
 			int self = 0;
 			if (countOrder.get("totalSelf") != null) {
 				self = countOrder.get("totalSelf").intValue();
-			}	
-					
+			}
+
 			int shared = 0;
 			if (countOrder.get("totalShared") != null) {
 				shared = countOrder.get("totalShared").intValue();
-			}	
-			
+			}
+
 			int invite = 0;
 			if (countOrder.get("totalInvite") != null) {
 				invite = countOrder.get("totalInvite").intValue();
-			}	
-			
+			}
+
 			int total = self + shared + invite;
-			
+
 			data.put("total", total);
 			data.put("self", self);
 			data.put("shared", shared);
 			data.put("invite", invite);
-			
-			/*  浠婃棩璁㈠崟缁熻  */
-			Map<String, BigDecimal> countToday= commonOrderService.countHistoryOrder(uid, 1);
-			
+
+			/* 浠婃棩璁㈠崟缁熻 */
+			Map<String, BigDecimal> countToday = commonOrderService.countHistoryOrder(uid, 1);
+
 			int todaySelf = 0;
 			if (countToday.get("totalSelf") != null) {
 				todaySelf = countToday.get("totalSelf").intValue();
-			}	
-			
+			}
+
 			int todayShared = 0;
 			if (countToday.get("totalShared") != null) {
 				todayShared = countToday.get("totalShared").intValue();
-			}	
-			
+			}
+
 			int todayInvite = 0;
 			if (countToday.get("totalInvite") != null) {
 				todayInvite = countToday.get("totalInvite").intValue();
-			}	
-			
+			}
+
 			int todayTotal = todaySelf + todayShared + todayInvite;
-			
+
 			JSONObject todaydata = new JSONObject();
 			todaydata.put("total", todayTotal);
 			todaydata.put("self", todaySelf);
 			todaydata.put("shared", todayShared);
 			todaydata.put("invite", todayInvite);
-			
+
 			data.put("today", todaydata);
-			
-			/*  鏄ㄦ棩璁㈠崟缁熻   */
-			Map<String, BigDecimal> countYesterday= commonOrderService.countHistoryOrder(uid, 2);
+
+			/* 鏄ㄦ棩璁㈠崟缁熻 */
+			Map<String, BigDecimal> countYesterday = commonOrderService.countHistoryOrder(uid, 2);
 			int yesterdaySelf = 0;
 			if (countYesterday.get("totalSelf") != null) {
 				yesterdaySelf = countYesterday.get("totalSelf").intValue();
-			}	
-			
+			}
+
 			int yesterdayShared = 0;
 			if (countYesterday.get("totalShared") != null) {
 				yesterdayShared = countYesterday.get("totalShared").intValue();
-			}	
+			}
 			int yesterdayInvite = 0;
 			if (countYesterday.get("totalInvite") != null) {
 				yesterdayInvite = countYesterday.get("totalInvite").intValue();
-			}	
+			}
 			int yesterdayTotal = yesterdaySelf + yesterdayShared + yesterdayInvite;
-			
+
 			JSONObject yesterdaydata = new JSONObject();
 			yesterdaydata.put("total", yesterdayTotal);
 			yesterdaydata.put("self", yesterdaySelf);
 			yesterdaydata.put("shared", yesterdayShared);
 			yesterdaydata.put("invite", yesterdayInvite);
-			
+
 			data.put("yesterday", yesterdaydata);
-			
+
 			out.print(JsonUtil.loadTrueResult(data));
-			
+
 		} catch (Exception e) {
 			out.print(JsonUtil.loadFalseResult(1, "鑾峰彇淇℃伅澶辫触"));
 			e.printStackTrace();
 		}
 	}
-	
+
 	/**
 	 * 缁熻濂栭噾
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param out
 	 */
 	@RequestMapping(value = "countBonus", method = RequestMethod.POST)
 	public void countBonus(AcceptData acceptData, Long uid, Integer dateType, PrintWriter out) {
-		
+
 		if (uid == null) {
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		try {
-			
+
 			Object shareCount = 0;
 			BigDecimal sharemoney = new BigDecimal(0.00);
 			Object inviteCount = 0;
 			BigDecimal inviteMoney = new BigDecimal(0.00);
-			
-			Map<String, Object> shareMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 2 , dateType, null, null);
+
+			Map<String, Object> shareMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 2, dateType, null,
+					null);
 			if (shareMap != null) {
 				Object totalNum = shareMap.get("totalNum");
 				if (totalNum != null) {
 					shareCount = totalNum;
 				}
-				
+
 				Object totalmoney = shareMap.get("totalmoney");
 				if (totalmoney != null) {
 					sharemoney = (BigDecimal) totalmoney;
 				}
 			}
-			
+
 			// 閭�璇风粺璁�
-			Map<String, Object> inviteMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 3 , dateType, null, null);
+			Map<String, Object> inviteMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 3, dateType, null,
+					null);
 			if (inviteMap != null) {
 				Object totalNum = inviteMap.get("totalNum");
 				if (totalNum != null) {
 					inviteCount = totalNum;
 				}
-				
+
 				Object totalmoney = inviteMap.get("totalmoney");
 				if (totalmoney != null) {
 					inviteMoney = (BigDecimal) totalmoney;
 				}
 			}
-			
-			
+
 			JSONObject data = new JSONObject();
 			data.put("shareCount", shareCount);
-			data.put("sharemoney",  sharemoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
+			data.put("sharemoney", sharemoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
 			data.put("inviteCount", inviteCount);
 			data.put("inviteMoney", inviteMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());
-			
+
 			data.put("showTiCheng", hongBaoV2CountService.getTotalTiChengCount(uid) > 0);
 			out.print(JsonUtil.loadTrueResult(data));
-			
+
 		} catch (Exception e) {
 			out.print(JsonUtil.loadFalseResult(1, "鑾峰彇淇℃伅澶辫触"));
 			e.printStackTrace();
 		}
 	}
-	
-	
+
+	/**
+	 * 涓婁紶瑙f瀽鍒扮殑娣樺疂璁㈠崟
+	 * 
+	 * @param acceptData
+	 * @param uid
+	 * @param orderData
+	 * @param source
+	 * @param out
+	 */
+	@RequestMapping(value = "uploadParsedOrder", method = RequestMethod.POST)
+	public void uploadParsedOrder(AcceptData acceptData, Long uid, String orderData, String source, PrintWriter out) {
+		if (uid == null || StringUtil.isNullOrEmpty(orderData)) {
+			out.print(JsonUtil.loadFalseResult(1, "鏁版嵁閿欒"));
+			return;
+		}
+		String orderId = null;
+		try {
+			orderId = DESUtil.decode(orderData, StringUtil.getBase64String("YeShiFANLI889*+"),
+					StringUtil.getBase64String("*M#34f?,"));
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+
+		if (!StringUtil.isNullOrEmpty(orderId) && orderId.length() > 6) {
+			orderId = orderId.substring(orderId.length() - 6, orderId.length());
+			UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService.getByUid(uid);
+			if (info != null) {
+				UserExtraTaoBaoInfo update=new UserExtraTaoBaoInfo();
+				update.setId(info.getId());
+				update.setTaoBaoOrderEnd6Num(orderId);
+				userExtraTaoBaoInfoService.updateSelective(update);
+			}
+		}
+		out.print(JsonUtil.loadTrueResult(""));
+	}
+
 	/**
 	 * 鏃堕棿杞崲
+	 * 
 	 * @param slotTime
 	 * @param startTime
 	 * @return
 	 * @throws Exception
 	 */
-	public String convertDate (Integer slotTime, String endTime) throws Exception {
+	public String convertDate(Integer slotTime, String endTime) throws Exception {
 		String startTime = null;
-		
+
 		switch (slotTime) {
-			case 1: // 鏈�杩戜笁澶�
-				startTime = DateUtil.reduceDay(2, endTime);
-				break;
-			case 2: // 鏈�杩戜竷澶�
-				startTime = DateUtil.reduceDay(6, endTime);
-				break;
-			case 3: // 鏈�杩�15澶� 锛堝崐鏈堬級
-				startTime = DateUtil.reduceDay(14, endTime);
-				break;
-			case 4: // 鏈�杩戜笁鍗佸ぉ 锛堟湰鏈堬級
-				startTime = DateUtil.reduceDay(29, endTime);
-				break;
-			case 5: // 鏈�杩戜節鍗佸ぉ锛堣繎涓夋湀锛�
-				startTime = DateUtil.reduceDay(3*30-1, endTime);
-				break;
-			case 6: // 鏈�杩戜竴鐧惧叓鍗佸ぉ锛堣繎鍗婂勾锛�
-				startTime = DateUtil.reduceDay(6*30-1, endTime);
-				break;
-			default:
-				break;
+		case 1: // 鏈�杩戜笁澶�
+			startTime = DateUtil.reduceDay(2, endTime);
+			break;
+		case 2: // 鏈�杩戜竷澶�
+			startTime = DateUtil.reduceDay(6, endTime);
+			break;
+		case 3: // 鏈�杩�15澶� 锛堝崐鏈堬級
+			startTime = DateUtil.reduceDay(14, endTime);
+			break;
+		case 4: // 鏈�杩戜笁鍗佸ぉ 锛堟湰鏈堬級
+			startTime = DateUtil.reduceDay(29, endTime);
+			break;
+		case 5: // 鏈�杩戜節鍗佸ぉ锛堣繎涓夋湀锛�
+			startTime = DateUtil.reduceDay(3 * 30 - 1, endTime);
+			break;
+		case 6: // 鏈�杩戜竴鐧惧叓鍗佸ぉ锛堣繎鍗婂勾锛�
+			startTime = DateUtil.reduceDay(6 * 30 - 1, endTime);
+			break;
+		default:
+			break;
 		}
-		
+
 		return startTime;
 	}
 }

--
Gitblit v1.8.0