From cc55ffcea74c7d23dadaa0860befbcdf98f35341 Mon Sep 17 00:00:00 2001
From: admin <2780501319@qq.com>
Date: 星期一, 16 九月 2019 23:22:13 +0800
Subject: [PATCH] 资金相关包目录修改

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java | 1151 +++++++++++++++++++--------------------------------------
 1 files changed, 388 insertions(+), 763 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
index 50c0d55..07854a5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
@@ -2,13 +2,12 @@
 
 import java.io.PrintWriter;
 import java.math.BigDecimal;
+import java.net.URLDecoder;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Date;
-import java.util.HashMap;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -17,46 +16,40 @@
 
 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.IPUtil;
 import org.yeshi.utils.JsonUtil;
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
+import com.google.gson.reflect.TypeToken;
+import com.yeshi.fanli.controller.admin.utils.AdminUtils;
 import com.yeshi.fanli.entity.bus.user.Extract;
 import com.yeshi.fanli.entity.bus.user.ExtractAuditRecord;
-import com.yeshi.fanli.entity.bus.user.HongBao;
-import com.yeshi.fanli.entity.bus.user.Order;
-import com.yeshi.fanli.entity.bus.user.OrderItem;
+import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.common.AdminUser;
-import com.yeshi.fanli.entity.taobao.PidOrder;
-import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
-import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
-import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
 import com.yeshi.fanli.exception.ExtractException;
 import com.yeshi.fanli.exception.NotExistObjectException;
 import com.yeshi.fanli.exception.ObjectStateException;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.AdminUserService;
-import com.yeshi.fanli.service.inter.count.ExtractCountService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
-import com.yeshi.fanli.service.inter.order.OrderItemServcie;
-import com.yeshi.fanli.service.inter.order.PidOrderService;
+import com.yeshi.fanli.service.inter.config.ConfigService;
+import com.yeshi.fanli.service.inter.count.HongBaoV2CountService;
+import com.yeshi.fanli.service.inter.count.UserInfoCountService;
+import com.yeshi.fanli.service.inter.money.extract.ExtractAuditRecordService;
+import com.yeshi.fanli.service.inter.money.extract.ExtractCountService;
+import com.yeshi.fanli.service.inter.money.extract.ExtractService;
 import com.yeshi.fanli.service.inter.push.PushRecordService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
-import com.yeshi.fanli.service.inter.user.AccountMessageService;
-import com.yeshi.fanli.service.inter.user.ExtractAuditRecordService;
-import com.yeshi.fanli.service.inter.user.ExtractService;
 import com.yeshi.fanli.tag.PageEntity;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.RedisManager;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TimeUtil;
-import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
 
+import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
 
 @Controller
@@ -67,10 +60,13 @@
 	private ExtractService extractService;
 
 	@Resource
-	private ExtractCountService extractCountService;
+	private ConfigService configService;
 
 	@Resource
-	private AccountMessageService accountMessageService;
+	private UserInfoCountService userInfoCountService;
+
+	@Resource
+	private ExtractCountService extractCountService;
 
 	@Resource
 	private PushRecordService pushRecordService;
@@ -82,16 +78,10 @@
 	private ExtractAuditRecordService extractAuditRecordService;
 
 	@Resource
-	private HongBaoService hongBaoService;
+	private HongBaoV2CountService hongBaoV2CountService;
 
 	@Resource
 	private AdminUserService adminUserService;
-
-	@Resource
-	private OrderItemServcie orderItemServcie;
-
-	@Resource
-	private PidOrderService pidOrderService;
 
 	@Resource
 	private RedisManager redisManager;
@@ -101,65 +91,6 @@
 
 	@Resource
 	private TaoBaoWeiQuanOrderService taoBaoWeiQuanOrderService;
-
-	private final static String TODAY = "1";
-	private final static String THREE = "2";
-	private final static String AWEEK = "3";
-
-	@RequestMapping(value = "getExtractList", method = RequestMethod.POST)
-	public void getExtractList(int pageIndex, PrintWriter out) {
-		List<Extract> extractList = extractService.getExtractList(pageIndex - 1);
-		int count = extractService.getCount();
-		int totalPage = count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE : count / Constant.PAGE_SIZE + 1;
-		PageEntity pe = new PageEntity(pageIndex, Constant.PAGE_SIZE, count, totalPage);
-		JSONObject data = new JSONObject();
-		data.put("pe", pe);
-		data.put("extractList", extractList);
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 閫氳繃鎻愮幇璇锋眰
-	 * 
-	 * @author mawurui createTime 2018骞�3鏈�14鏃� 涓嬪崍3:15:42
-	 * @param id
-	 * @param out
-	 * @param request
-	 */
-	@RequestMapping(value = "passExtract", method = RequestMethod.POST)
-	public void passExtract(String callback, long id, PrintWriter out, HttpServletRequest request) {
-
-		// TODO 闇�瑕侀偖绠卞彂閫佺煭淇¢獙璇�
-
-		AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
-
-		Integer integer = extractService.passExtract(id, admin);
-		Extract extract = extractService.getExtractById(id);
-		long uid = extract.getUserInfo().getId();
-
-		if (integer == null) {
-			out.print(JsonUtil.loadTrueResult("閫氳繃"));
-			LogHelper
-					.userInfo("[ip:" + IPUtil.getRemotIP(request) + "]" + admin.getName() + "閫氳繃浜哰id=" + id + "]鐨勬彁鐜扮敵璇�!"); // 鍚屾剰涔嬪悗鎴愬姛
-		} else if (integer == 1) {
-
-			out.print(JsonUtil.loadFalseResult("涓嶅瓨鍦ㄨ瀵硅薄")); // 鍚屾剰涔嬪悗澶辫触
-			LogHelper.userInfo(
-					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鍚屾剰鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇蜂笉瀛樺湪");
-			String title = "浣犵殑鎻愮幇鐢宠琚┏鍥�";
-			String content = "闈炲父閬楁喚锛屼綘鐨勬彁鐜扮敵璇疯椹冲洖銆傛垜浠�氳繃鏍稿鍙戠幇浣犵殑璐︾洰鏄庣粏鏈夎锛屾垜浠細鍦ㄥ璁″畬鎴愪箣鍚庣粰浣犲彂閫氱煡娑堟伅銆傚鏈夌枒闂鑱旂郴瀹㈡湇銆�";
-			// xingePushController.pushSystemZnx(uid, title, content, out);
-		} else {
-
-			LogHelper.userInfo(
-					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鍚屾剰鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇风姸鎬佸紓甯�");
-			out.print(JsonUtil.loadFalseResult("璇ョ姸鎬佷笉绛変簬涓嶄负鍒濆鐘舵��"));
-			String title = "浣犵殑鎻愮幇鐢宠涓嶆垚鍔�";
-			String content = "璇风‘淇濅綘鐨勬彁鐜拌处鎴风殑闅愮璁剧疆涓� 鍏佽閭銆佹墜鏈哄彿銆佷細鍛樺悕鎵惧埌鎴戙�傚惁鍒欐棤娉曟垚鍔熷畬鎴愯浆璐︺�傚鏈夌枒闂鑱旂郴瀹㈡湇銆�";
-			// xingePushController.pushSystemZnx(uid, title, content, out);
-		}
-	}
 
 	/**
 	 * 
@@ -191,74 +122,21 @@
 		/* 鍏佽鎻愮幇 鎿嶄綔 */
 		Integer integer = extractService.passExtract(id, admin);
 
-		Extract extract = extractService.getExtractById(id);
-		long uid = extract.getUserInfo().getId();
-
+		// 鏃ュ織璁板綍
 		if (integer == null) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("閫氳繃"));
-
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("宸查�氳繃"));
 			LogHelper
-					.userInfo("[ip:" + IPUtil.getRemotIP(request) + "]" + admin.getName() + "閫氳繃浜哰id=" + id + "]鐨勬彁鐜扮敵璇�!"); // 鍚屾剰涔嬪悗鎴愬姛
+					.userInfo("[ip:" + IPUtil.getRemotIP(request) + "]" + admin.getName() + "閫氳繃浜哰id=" + id + "]鐨勬彁鐜扮敵璇�!");
 		} else if (integer == 1) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("涓嶅瓨鍦ㄨ瀵硅薄"));
-
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ユ彁鐜拌褰曞凡涓嶅瓨鍦�,璇峰埛鏂�"));
 			LogHelper.userInfo(
 					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鍚屾剰鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇蜂笉瀛樺湪");
-			String title = "浣犵殑鎻愮幇鐢宠琚┏鍥�";
-			String content = "闈炲父閬楁喚锛屼綘鐨勬彁鐜扮敵璇疯椹冲洖銆傛垜浠�氳繃鏍稿鍙戠幇浣犵殑璐︾洰鏄庣粏鏈夎锛屾垜浠細鍦ㄥ璁″畬鎴愪箣鍚庣粰浣犲彂閫氱煡娑堟伅銆傚鏈夌枒闂鑱旂郴瀹㈡湇銆�";
-			// xingePushController.pushSystemZnx(uid, title, content, out);
 		} else {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ姸鎬佷笉绛変簬涓嶄负鍒濆鐘舵��"));
-
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴峰凡琚鐞�,璇峰埛鏂�"));
 			LogHelper.userInfo(
 					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鍚屾剰鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇风姸鎬佸紓甯�");
-			String title = "浣犵殑鎻愮幇鐢宠涓嶆垚鍔�";
-			String content = "璇风‘淇濅綘鐨勬彁鐜拌处鎴风殑闅愮璁剧疆涓� 鍏佽閭銆佹墜鏈哄彿銆佷細鍛樺悕鎵惧埌鎴戙�傚惁鍒欐棤娉曟垚鍔熷畬鎴愯浆璐︺�傚鏈夌枒闂鑱旂郴瀹㈡湇銆�";
-			// xingePushController.pushSystemZnx(uid, title, content, out);
 		}
 
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 鎷掔粷鎻愮幇璇锋眰
-	 * 
-	 * @author mawurui createTime 2018骞�3鏈�14鏃� 涓嬪崍3:15:55
-	 * @param id
-	 * @param reason
-	 * @param out
-	 * @param request
-	 */
-	@RequestMapping(value = "rejectExtract", method = RequestMethod.POST)
-	public void rejectExtract(String callback, long id, String reason, PrintWriter out, HttpServletRequest request) {
-		AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
-
-		Extract extract = extractService.getExtractById(id);
-		long uid = extract.getUserInfo().getId();
-		long extractTime = extract.getExtractTime();
-
-		try {
-			extractService.rejectExtract(id, reason, extractTime, admin);// 鎻愮幇澶辫触
-
-			// 璋冪敤鎺ㄩ�佺珯鍐呬俊缁欑敤鎴�
-			out.print(JsonUtil.loadTrueResult("鎷掔粷"));
-			LogHelper.userInfo("[ip:" + IPUtil.getRemotIP(request) + "]" + admin.getName() + "鎷掔粷浜哰id=" + id
-					+ "]鐨勬彁鐜扮敵璇�!鎷掔粷鍘熷洜鏄�" + reason);
-
-			String title = "浣犵殑鎻愮幇鐢宠琚┏鍥�";
-			String content = "闈炲父閬楁喚锛屼綘鐨勬彁鐜扮敵璇疯椹冲洖銆傛垜浠�氳繃鏍稿鍙戠幇浣犵殑璐︾洰鏄庣粏鏈夎锛屾垜浠細鍦ㄥ璁″畬鎴愪箣鍚庣粰浣犲彂閫氱煡娑堟伅銆傚鏈夌枒闂鑱旂郴瀹㈡湇銆�";
-			// xingePushController.pushSystemZnx(uid, title, content, out);
-		} catch (ObjectStateException e) {
-			LogHelper.userInfo(
-					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鎷掔粷鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇风姸鎬佸紓甯�!"); //
-
-			out.print(JsonUtil.loadFalseResult(e.getMessage()));
-		} catch (NotExistObjectException e) {
-			LogHelper.userInfo(
-					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鎷掔粷鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇蜂笉瀛樺湪!");
-
-			out.print(JsonUtil.loadFalseResult(e.getMessage()));
-		}
 	}
 
 	/**
@@ -288,23 +166,22 @@
 			return;
 		}
 
-		/* 鎷掔粷鎻愮幇 鎿嶄綔 */
+		try {
+			// 缂栫爜杞崲
+			reason = URLDecoder.decode(reason, "UTF-8");
+		} catch (Exception e1) {
+			e1.printStackTrace();
+		}
 
 		try {
-			Extract extract = extractService.getExtractById(id);
-			long extractTime = extract.getExtractTime();
-			extractService.rejectExtract(id, reason, extractTime, admin);// 鎻愮幇澶辫触
 
-			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎷掔粷"));
+			extractService.rejectExtract(id, reason, admin);// 鎻愮幇澶辫触
 
-			// 璋冪敤鎺ㄩ�佺珯鍐呬俊缁欑敤鎴�
-			// out.print(JsonUtil.loadTrueResult("鎷掔粷"));
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎷掔粷鎴愬姛"));
+
 			LogHelper.userInfo("[ip:" + IPUtil.getRemotIP(request) + "]" + admin.getName() + "鎷掔粷浜哰id=" + id
 					+ "]鐨勬彁鐜扮敵璇�!鎷掔粷鍘熷洜鏄�" + reason);
 
-			String title = "浣犵殑鎻愮幇鐢宠琚┏鍥�";
-			String content = "闈炲父閬楁喚锛屼綘鐨勬彁鐜扮敵璇疯椹冲洖銆傛垜浠�氳繃鏍稿鍙戠幇浣犵殑璐︾洰鏄庣粏鏈夎锛屾垜浠細鍦ㄥ璁″畬鎴愪箣鍚庣粰浣犲彂閫氱煡娑堟伅銆傚鏈夌枒闂鑱旂郴瀹㈡湇銆�";
-			// xingePushController.pushSystemZnx(uid, title, content, out);
 		} catch (ObjectStateException e) {
 			LogHelper.userInfo(
 					"[ip:" + IPUtil.getRemotIP(request) + "][绠$悊鍛�:" + admin.getName() + "] 鎷掔粷鎻愮幇id=" + id + "鐨勬彁鐜扮敵璇风姸鎬佸紓甯�!"); //
@@ -321,24 +198,6 @@
 	}
 
 	/**
-	 * 璧勯噾鏍¢獙鏄惁寮傚父
-	 * 
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "checkExtract", method = RequestMethod.POST)
-	public void checkExtract(String uid, PrintWriter out) {
-		JSONObject data = new JSONObject();
-		try {
-			extractService.checkExtract(uid);
-			data.put("code", "1"); // 姝e父
-		} catch (ExtractException e) {
-			data.put("code", "0");// 寮傚父
-		}
-		out.print(data);
-	}
-
-	/**
 	 * 鑾峰彇浠婃棩鎻愮幇璁板綍锛氫粖鏃ユ�婚銆佹�绘鏁般�佹垚鍔熸鏁般�佸け璐ユ鏁� 鑾峰彇绯荤粺鎻愮幇璁板綍锛氭�婚銆佹�绘鏁�
 	 * 
 	 * @param out
@@ -348,15 +207,31 @@
 
 		Map<String, Object> totalcount = extractCountService.getTodayCount();
 
-		BigDecimal totalmoney = extractCountService.getTodayTotalSuccessMoney();
+		// 浠婃棩鎻愮幇鎴愬姛閲戦
+		BigDecimal todayextractMoney = extractCountService.getTodayTotalSuccessMoney();
 
-		totalcount.put("totalmoney", totalmoney);
+		// 褰撳墠鐢ㄦ埛浣欓鎬昏锛氭墍鏈夌敤鎴锋�讳綑棰�
+		BigDecimal amountMoney = userInfoCountService.countAllMoney(null);
 
+		// 鍙彁鐜伴噾棰濋檺鍒�
+		String minMoney = configService.get(Constant.EXTRACT_MIN_MONEY);
+		if (minMoney == null) {
+			minMoney = "0";
+		}
+		// 褰撳墠鍙彁鐜伴噾棰濇�昏锛� 瓒呰繃鏈�浣庢彁鐜伴噾棰�---璁″叆缁熻
+		BigDecimal extractApply = userInfoCountService.countAllMoney(Double.parseDouble(minMoney));
+
+		// 绱宸叉彁鐜伴噾棰濇�昏锛氬凡鎻愮幇鎴愬姛鐨勬�婚/ 娆℃暟
 		Map<String, Object> resultData = extractCountService.countTotalSuccess();
 
 		JSONObject data = new JSONObject();
 		data.put("todayCount", totalcount);
-		data.put("totalount", resultData);
+		data.put("todayextractMoney", todayextractMoney);
+
+		data.put("amountMoney", amountMoney); // 鎵�鏈夌敤鎴锋�讳綑棰�
+		data.put("extractApply", extractApply); // 鍙彁鐜伴噾棰濇�昏
+		data.put("extractNumber", resultData.get("totalamount")); // 鎻愮幇鎴愬姛娆℃暟
+		data.put("extractMoney", resultData.get("totalmoney")); // 鎻愮幇鎴愬姛閲戦
 
 		out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
 	}
@@ -419,8 +294,8 @@
 					if (extract != null) {
 						UserInfo userInfo = extract.getUserInfo();
 						Long id = userInfo.getId();
-						countByUid = hongBaoService.getCountByUid(id);
-						countCancel = hongBaoService.getCountCancelByUid(id);
+						countByUid = hongBaoV2CountService.countNumberByUid(id);
+						countCancel = hongBaoV2CountService.countNumberByUidAndState(id, HongBaoV2.STATE_SHIXIAO);
 					}
 					extractAuditRecord.setCancelOrderNum((long) countCancel);
 					extractAuditRecord.setOrderNum((long) countByUid);
@@ -473,13 +348,12 @@
 			// }
 
 			int pageSize = Constant.PAGE_SIZE;
-
 			Integer days = null;
-			if (TODAY.equals(timeSlot)) {
+			if ("1".equals(timeSlot)) {
 				days = 0; // 浠婃棩
-			} else if (THREE.equals(timeSlot)) {
+			} else if ("2".equals(timeSlot)) {
 				days = 3; // 鍓�3澶�
-			} else if (AWEEK.equals(timeSlot)) {
+			} else if ("3".equals(timeSlot)) {
 				days = 7; // 鍓�7澶�
 			}
 
@@ -508,21 +382,44 @@
 				if (adminUser == null) {
 					record.setAdminUser(new AdminUser());
 				}
-				
+
 				int warnLevel = 0;
 				Extract extract = record.getExtract();
 				if (extract != null) {
 					Integer extractState = extract.getState();
-					if (extractState != null && extractState == 0) {
+					if (extractState != null && extractState == Extract.STATE_NOT_PROCESS) {
 						UserInfo userInfo = extract.getUserInfo();
 						if (userInfo != null) {
-							double countTodayMoney = extractService.countTodayMoney(userInfo.getId());
-							if (countTodayMoney >= 100) {
+							BigDecimal countTodayMoney = extractService.sumTodayApplyMoney(userInfo.getId(),
+									TimeUtil.getGernalTime(extract.getExtractTime()));
+							if (countTodayMoney.compareTo(new BigDecimal(100)) > 0) {
 								warnLevel = 1;
 							}
 						}
 					}
-					
+				}
+
+				if (record.getExtraInfo() != null) {
+					StringBuffer desc = new StringBuffer();
+					if (System.currentTimeMillis() > TimeUtil.convertToTimeTemp("2019-06-21", "yyyy-MM-dd")) {
+						desc.append("澶х瑪璁㈠崟鏁�:" + record.getExtraInfo().getOrderCount50More() + "\n#");
+						desc.append("缁存潈璁㈠崟鏁�:" + record.getExtraInfo().getWeiQuanOrderCount() + "\n#");
+						desc.append("缁存潈璁㈠崟浣i噾:" + record.getExtraInfo().getWeiQuanOrderFanAmount() + "\n#");
+						if (record.getExtraInfo().getOrderCount50More() > 0
+								|| record.getExtraInfo().getWeiQuanOrderCount() > 1
+								|| record.getExtraInfo().getWeiQuanOrderFanAmount().compareTo(new BigDecimal(10)) >= 0)
+							warnLevel = 2;
+					} else {
+						if (record.getExtraInfo().getOrderCount50More() > 0
+								|| record.getExtraInfo().getWeiQuanOrderCount() > 0
+								|| record.getExtraInfo().getWeiQuanOrderFanAmount().compareTo(new BigDecimal(0)) > 0)
+							warnLevel = 2;
+						desc.append("澶т簬50鍏冭鍗�:" + record.getExtraInfo().getOrderCount50More() + "\n#");
+						desc.append("缁存潈璁㈠崟鏁�:" + record.getExtraInfo().getWeiQuanOrderCount() + "\n#");
+						desc.append("缁存潈璁㈠崟閫�鍥為噾棰�:" + record.getExtraInfo().getWeiQuanOrderFanAmount() + "\n#");
+						desc.append("180澶╁畨鍏ㄨ鍗曟暟:" + record.getExtraInfo().getSafeOrderCount());
+					}
+					record.setExtraInfoStr(desc.toString());
 				}
 				record.setWarnLevel(warnLevel);
 			}
@@ -533,6 +430,8 @@
 
 			GsonBuilder gsonBuilder = new GsonBuilder();
 			gsonBuilder.serializeNulls();
+			gsonBuilder.setDateFormat("yyyy-MM-dd HH:mm:ss");
+			
 			Gson gson = gsonBuilder.create();
 
 			JSONObject data = new JSONObject();
@@ -757,6 +656,18 @@
 				return;
 			}
 
+			for (ExtractAuditRecord record : list) {
+
+				if (record.getExtraInfo() != null) {
+					StringBuffer desc = new StringBuffer();
+					desc.append("澶т簬50鍏冭鍗�:" + record.getExtraInfo().getOrderCount50More() + "\n#");
+					desc.append("缁存潈璁㈠崟鏁�:" + record.getExtraInfo().getWeiQuanOrderCount() + "\n#");
+					desc.append("缁存潈璁㈠崟閫�鍥為噾棰�:" + record.getExtraInfo().getWeiQuanOrderFanAmount() + "\n#");
+					desc.append("180澶╁畨鍏ㄨ鍗曟暟:" + record.getExtraInfo().getSafeOrderCount());
+					record.setExtraInfoStr(desc.toString());
+				}
+			}
+
 			int count = extractAuditRecordService.getByUidCount(uid);
 			int totalPage = count % pageSize == 0 ? count / pageSize : count / pageSize + 1;
 			PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
@@ -793,7 +704,10 @@
 		try {
 
 			// 缁熻宸查鍙栭噾棰� 璐︽埛鍘嗗彶鎬绘敹鐩�
-			double receiveMoneys = hongBaoService.countReceiveMoneysByUid(uid);
+			BigDecimal receiveMoneys = hongBaoV2CountService.countMoneyByUidAndState(uid, HongBaoV2.STATE_YILINGQU);
+			if (receiveMoneys == null) {
+				receiveMoneys = new BigDecimal(0);
+			}
 
 			// 鍘嗗彶鎻愮幇鎴愬姛閲戦
 			double successMoneys = extractCountService.countSuccessMoneysByUid(uid);
@@ -813,584 +727,9 @@
 			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
 
 		} catch (Exception e) {
-			// TODO: handle exception
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
 			e.printStackTrace();
 		}
-	}
-
-	/**
-	 * 鏍规嵁鐢ㄦ埛id鏌ヨ鐩稿簲璁㈠崟鍒楄〃
-	 * 
-	 * @param callback
-	 * @param pageIndex
-	 * @param key
-	 *            鐢ㄦ埛id
-	 * @param out
-	 */
-	@RequestMapping(value = "getOrderRecordList")
-	public void getOrderRecordList(String callback, Integer pageIndex, Integer pageSize, Long key, String startTime,
-			String endTime, PrintWriter out) {
-
-		try {
-
-			if (key == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏈幏鍙栧埌鐢ㄦ埛id"));
-				return;
-			}
-
-			if (!StringUtil.isNullOrEmpty(endTime)) {
-				SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-				Date enddate = sdf.parse(endTime);
-				Calendar c = Calendar.getInstance();
-				c.setTime(enddate);
-				c.add(Calendar.DAY_OF_MONTH, 1);// 浠婂ぉ+1澶�
-				endTime = sdf.format(c.getTime());
-			}
-
-			if (pageIndex == null)
-				pageIndex = 1;
-
-			if (pageSize == null)
-				pageSize = Constant.PAGE_SIZE;
-
-			List<HongBao> list = hongBaoService.selectOrderByUid(pageIndex, pageSize, key, startTime, endTime);
-			if (list == null || list.size() == 0) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴锋棤璁㈠崟璁板綍"));
-				return;
-			}
-
-			Map<String, List<TaoBaoWeiQuanOrder>> wq = new HashMap<String, List<TaoBaoWeiQuanOrder>>();
-			for (HongBao hongBao : list) {
-				String orderId = hongBao.getOrderId();
-
-				List<TaoBaoWeiQuanOrder> weiQuanList = taoBaoWeiQuanOrderService.getWeiQuanSuccessOrders(orderId);
-				if (weiQuanList != null && weiQuanList.size() > 0) {
-					wq.put(orderId, weiQuanList);
-				}
-			}
-
-			/* 楠岃瘉缃戠粶: */
-			StringBuffer auctionIdBuf = new StringBuffer();
-
-			List<Map<String, Object>> listmap = new ArrayList<Map<String, Object>>();
-
-			for (HongBao hongBao : list) {
-				Map<String, Object> map = new HashMap<String, Object>();
-
-				Long preGettime = hongBao.getPreGettime();
-				Long getTime = hongBao.getGetTime();
-				Integer state = hongBao.getState();
-				Integer type = hongBao.getType();
-				String orderId = hongBao.getOrderId();
-
-				// 鍗曠瑪鏀剁泭閲戦
-				BigDecimal money = hongBao.getMoney();
-
-				map.put("getTime", getTime);
-
-				// 瀛愯鍗曞彿
-				String orderItemId = "";
-				map.put("orderItemId", orderItemId);
-
-				/* 璁㈠崟鐘舵�佸垽鏂細1 璁㈠崟宸蹭粯娆� 2銆佽鍗曞凡缁撶畻 4銆佽鍗曞け鏁� */
-				if (state == HongBao.STATE_SHIXIAO) {
-					map.put("orderState", 4); // 璁㈠崟澶辨晥
-				} else if (state == HongBao.STATE_BUKELINGQU) {
-					Integer orderState = null;
-
-					if (type == HongBao.TYPE_SHARE_GOODS) {
-						// 鍒嗕韩璁㈠崟
-						Long hongbaoId = hongBao.getId();
-						PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-						String pidstate = pidOrder.getState();
-						if ("璁㈠崟浠樻".equals(pidstate)) {
-							orderState = 1;
-						} else if ("璁㈠崟缁撶畻".equals(pidstate)) {
-							orderState = 2;
-						} else if ("璁㈠崟澶辨晥".equals(pidstate)) {
-							orderState = 4;
-						}
-					} else {
-						if (preGettime != null && preGettime > 0) {
-							orderState = 2; // 璁㈠崟缁撶畻
-						} else {
-							orderState = 1; // 璁㈠崟宸蹭粯娆�
-						}
-					}
-					map.put("orderState", orderState);
-
-				} else if (state == HongBao.STATE_KELINGQU || state == HongBao.STATE_YILINGQU) {
-					map.put("orderState", 2); // 璁㈠崟缁撶畻
-				}
-
-				/* 璁㈠崟杩斿埄鐘舵�侊細 2鏈埌璐� 3宸插埌璐� 4宸插け鏁� */
-
-				if (HongBao.STATE_YILINGQU == state) {
-					map.put("moneyState", 3); // 宸插埌璐�
-				} else if (HongBao.STATE_BUKELINGQU == state || HongBao.STATE_KELINGQU == state) {
-					map.put("moneyState", 2); // 鏈埌璐�
-				} else {
-					map.put("moneyState", 4); // 宸插け鏁�
-				}
-
-				/* 璁㈠崟绫诲瀷锛�1绯荤粺绾㈠寘 2銆佽嚜璐鍗� 3銆侀個璇疯鍗� 4 鍒嗕韩璁㈠崟 */
-				int rebateSource = 0;
-				if (type == HongBao.TYPE_HUODONG || type == HongBao.TYPE_XINREN) {
-					// 3-娲诲姩绾㈠寘 4-鏂颁汉绾㈠寘
-					rebateSource = 1;
-				} else if (type == HongBao.TYPE_JINGDONG || type == HongBao.TYPE_TAOBAO) {
-					// 鑷喘璁㈠崟
-					rebateSource = 2;
-				} else if (type == HongBao.TYPE_YAOQING || type == HongBao.TYPE_YIJI || type == HongBao.TYPE_ERJI
-						|| type == HongBao.TYPE_SHARE_ERJI || type == HongBao.TYPE_SHARE_YIJI) {
-					// 閭�璇蜂汉鑷喘璁㈠崟+閭�璇蜂汉鍒嗕韩璁㈠崟
-					rebateSource = 3;
-				} else if (type == HongBao.TYPE_SHARE_GOODS) {
-					// 鍒嗕韩璁㈠崟
-					rebateSource = 4;
-				}
-				map.put("rebateSource", rebateSource);
-
-				// 鑾峰彇璁㈠崟淇℃伅
-				Map<String, Object> inMap = getOrderItem(hongBao);
-
-				OrderItem orderItem = (OrderItem) inMap.get("orderItem");
-				Long endtime = (Long) inMap.get("endtime");
-				Long thirdCreateTime = (Long) inMap.get("thirdCreateTime");
-
-				/* 鍒濆鍖� 绌哄�� */
-				if (orderItem == null) {
-					orderItem = new OrderItem();
-					map.put("goodsStae", "-1");
-				}
-
-				// 璁㈠崟鏉ユ簮 0 鏃� 1娣樺疂 2 浜笢
-				map.put("orderSource", 1);
-
-				// 褰撳墠瀹為檯杩斿埄閲戦
-				orderItem.setFanMoney(money);
-
-				String itemOrderId = orderItem.getOrderId();
-				// 绾㈠寘瀵瑰簲璁㈠崟鍙�
-				if (StringUtil.isNullOrEmpty(itemOrderId))
-					orderItem.setOrderId(orderId);
-
-				Long auctionId = orderItem.getAuctionId();
-				if (auctionId != null) {
-					auctionIdBuf.append(auctionId + ",");
-				} else {
-					if (!StringUtil.isNullOrEmpty(orderId)) {
-						List<TaoBaoOrder> taoBaoOrders = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
-						if (taoBaoOrders != null && taoBaoOrders.size() > 0) {
-							TaoBaoOrder taoBaoOrder = taoBaoOrders.get(0);
-							Long auctionId2 = taoBaoOrder.getAuctionId();
-							orderItem.setAuctionId(auctionId2);
-							auctionIdBuf.append(auctionId + ",");
-
-							orderItem.setPayMoney(taoBaoOrder.getPayment());
-							orderItem.setTitle(taoBaoOrder.getTitle());
-
-							String settlementTime = taoBaoOrder.getSettlementTime();
-
-							SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-							if (!StringUtil.isNullOrEmpty(settlementTime)) {
-								Date settleDate = sdf.parse(settlementTime);
-								endtime = settleDate.getTime();
-							}
-
-							String createTime = taoBaoOrder.getCreateTime();
-							if (!StringUtil.isNullOrEmpty(createTime)) {
-								Date createDate = sdf.parse(createTime);
-								thirdCreateTime = createDate.getTime();
-							}
-
-						}
-
-					}
-				}
-
-				map.put("orderItem", orderItem);
-
-				// 鏀惰揣鏃堕棿
-				map.put("endtime", endtime);
-				// 涓嬪崟鏃堕棿
-				map.put("thirdCreateTime", thirdCreateTime);
-
-				listmap.add(map);
-			}
-
-			/* 楠岃瘉缃戠粶: 鑾峰彇鍟嗗搧閾炬帴 鍥剧墖閾炬帴 */
-			List<TaoBaoGoodsBrief> goodsBriefList = null;
-			if (auctionIdBuf != null && auctionIdBuf.length() > 0) {
-				String auctionIds = auctionIdBuf.toString();
-
-				String ids = auctionIds.substring(0, auctionIds.length() - 1);
-				try {
-					goodsBriefList = TaoKeApiUtil.getBatchGoodsInfos(ids);
-				} catch (Exception e) {
-					e.printStackTrace();
-				}			
-			}
-
-			List<Map<String, Object>> listResult = new ArrayList<Map<String, Object>>();
-
-			Iterator<Map<String, Object>> iterator = listmap.iterator();
-			while (iterator.hasNext()) {
-
-				Map<String, Object> map = iterator.next();
-
-				int goodsStae = 1;
-				String auctionUrl = ""; // 鍟嗗搧閾炬帴
-
-				OrderItem orderItem = (OrderItem) map.get("orderItem");
-				Long auctionId = orderItem.getAuctionId();
-				if (auctionId != null) {
-					if (goodsBriefList != null && goodsBriefList.size() > 0) {
-						for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsBriefList) {
-							Long auctionIdTB = taoBaoGoodsBrief.getAuctionId();
-							if (auctionId.equals(auctionIdTB)) {
-								goodsStae = 0;// 鍦ㄥ敭
-								auctionUrl = taoBaoGoodsBrief.getAuctionUrl();
-								String pictUrl = taoBaoGoodsBrief.getPictUrl();
-								orderItem.setPicture(pictUrl);
-							}
-						}
-					}
-				}
-
-				map.put("goodsStae", goodsStae); //
-				map.put("auctionUrl", auctionUrl); // 鍟嗗搧閾炬帴
-				listResult.add(map);
-
-			}
-
-			int count = hongBaoService.countOrderByUid(key, startTime, endTime);
-			int totalPage = count % pageSize == 0 ? count / pageSize : count / pageSize + 1;
-			PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
-
-			// 璇ユ湡闂寸殑鎬绘敹鐩�
-			double countProfit = hongBaoService.countProfitByUid(key, startTime, endTime);
-
-			JSONObject data = new JSONObject();
-			data.put("pe", pe);
-			data.put("countProfit", countProfit);
-			data.put("listmap", listResult);
-
-			out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
-
-		} catch (Exception e) {
-			e.printStackTrace();
-			out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getMessage())));
-		}
-	}
-
-	/**
-	 * 鏍规嵁鐢ㄦ埛id鏌ヨ鐩稿簲璁㈠崟鍒楄〃
-	 * 
-	 * @param callback
-	 * @param pageIndex
-	 * @param key
-	 *            鐢ㄦ埛id
-	 * @param out
-	 */
-	@RequestMapping(value = "getOrderList")
-	public void getOrderList(String callback, Integer pageIndex, Integer pageSize, Long key, String startTime,
-			String endTime, PrintWriter out) {
-
-		try {
-
-			if (key == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏈幏鍙栧埌鐢ㄦ埛id"));
-				return;
-			}
-
-			if (!StringUtil.isNullOrEmpty(endTime)) {
-				SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-				Date enddate = sdf.parse(endTime);
-				Calendar c = Calendar.getInstance();
-				c.setTime(enddate);
-				c.add(Calendar.DAY_OF_MONTH, 1);// 浠婂ぉ+1澶�
-				endTime = sdf.format(c.getTime());
-			}
-
-			if (pageIndex == null)
-				pageIndex = 1;
-
-			if (pageSize == null)
-				pageSize = Constant.PAGE_SIZE;
-
-			List<HongBao> list = hongBaoService.selectOrderByUid(pageIndex, pageSize, key, startTime, endTime);
-			if (list == null || list.size() == 0) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴锋棤璁㈠崟璁板綍"));
-				return;
-			}
-
-			/* 楠岃瘉缃戠粶: */
-			StringBuffer auctionIdBuf = new StringBuffer();
-
-			List<Map<String, Object>> listmap = new ArrayList<Map<String, Object>>();
-
-			for (HongBao hongBao : list) {
-				Map<String, Object> map = new HashMap<String, Object>();
-
-				Long preGettime = hongBao.getPreGettime();
-				Long getTime = hongBao.getGetTime();
-				Integer state = hongBao.getState();
-				Integer type = hongBao.getType();
-				String orderId = hongBao.getOrderId();
-				Date balanceTime = hongBao.getBalanceTime();
-
-				// 鑷喘璁㈠崟id
-				Long orderItemId = hongBao.getOrderItemId();
-				// 鍗曠瑪鏀剁泭閲戦
-				BigDecimal money = hongBao.getMoney();
-
-				map.put("getTime", getTime);
-				map.put("orderItemId", orderItemId);
-
-				if (state == HongBao.STATE_SHIXIAO) {
-					if (balanceTime != null) {
-						map.put("orderState", 1); // 缁存潈鎴愬姛
-					} else {
-						map.put("orderState", 2); // 璁㈠崟澶辨晥
-					}
-				} else if (state == HongBao.STATE_BUKELINGQU || state == HongBao.STATE_KELINGQU) {
-					if (preGettime != null && preGettime > 0) {
-						map.put("orderState", 0); // 璁㈠崟缁撶畻
-					} else {
-						map.put("orderState", 3); // 璁㈠崟浠樻涓� 鏈粨绠�
-					}
-				} else {
-					map.put("orderState", 0); // 璁㈠崟宸蹭粯娆�-宸茬粨绠�
-				}
-
-				if (HongBao.STATE_YILINGQU == state) {
-					map.put("moneyState", 3); // 宸插埌璐�
-				} else if (HongBao.STATE_BUKELINGQU == state || HongBao.STATE_KELINGQU == state) {
-					map.put("moneyState", 2); // 鏈埌璐�
-				} else {
-					map.put("moneyState", 4); // 宸插け鏁�
-				}
-
-				/*
-				 * 1-娣樺疂璁㈠崟 2-浜笢璁㈠崟 3-娲诲姩绾㈠寘 4-鏂颁汉绾㈠寘 5.閭�璇峰ソ鍙嬬孩鍖�(甯冨績琛楃殑) 6.涓�绾у垎閿�绾㈠寘 7.浜岀骇鍒嗛攢绾㈠寘
-				 * 20-鍒嗕韩鍟嗗搧璁㈠崟
-				 */
-				int rebateSource = 0;
-				if (type == HongBao.TYPE_HUODONG || type == HongBao.TYPE_XINREN) {
-
-					/* 3-娲诲姩绾㈠寘 4-鏂颁汉绾㈠寘 */
-					rebateSource = 1;
-
-				} else if (type == HongBao.TYPE_JINGDONG || type == HongBao.TYPE_TAOBAO) {
-
-					/* 鑷喘璁㈠崟 */
-					rebateSource = 2;
-
-				} else if (type == HongBao.TYPE_YIJI || type == HongBao.TYPE_ERJI || type == HongBao.TYPE_YAOQING
-						|| type == HongBao.TYPE_SHARE_ERJI || type == HongBao.TYPE_SHARE_YIJI) {
-
-					/* 閭�璇疯鍗� 鍒嗛攢绾㈠寘瀵瑰簲鐨勬渶涓婄骇绾㈠寘 */
-					rebateSource = 3;
-
-				} else if (type == HongBao.TYPE_SHARE_GOODS) {
-
-					/* 鍒嗕韩璁㈠崟 */
-					rebateSource = 4;
-
-				}
-				map.put("rebateSource", rebateSource);
-
-				// 鑾峰彇璁㈠崟淇℃伅
-				Map<String, Object> inMap = getOrderItem(hongBao);
-
-				OrderItem orderItem = (OrderItem) inMap.get("orderItem");
-				Long endtime = (Long) inMap.get("endtime");
-				Long thirdCreateTime = (Long) inMap.get("thirdCreateTime");
-
-				/* 鍒濆鍖� 绌哄�� */
-				if (orderItem == null) {
-					orderItem = new OrderItem();
-					map.put("goodsStae", "-1");
-				}
-
-				// 璁㈠崟鏉ユ簮 0 鏃� 1娣樺疂 2 浜笢
-				map.put("orderSource", 1);
-
-				// 褰撳墠瀹為檯杩斿埄閲戦
-				orderItem.setFanMoney(money);
-
-				String itemOrderId = orderItem.getOrderId();
-				// 绾㈠寘瀵瑰簲璁㈠崟鍙�
-				if (StringUtil.isNullOrEmpty(itemOrderId))
-					orderItem.setOrderId(orderId);
-
-				Long auctionId = orderItem.getAuctionId();
-				if (auctionId == null) {
-					if (!StringUtil.isNullOrEmpty(orderId)) {
-						List<TaoBaoOrder> taoBaoOrders = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
-						if (taoBaoOrders != null && taoBaoOrders.size() > 0) {
-							TaoBaoOrder taoBaoOrder = taoBaoOrders.get(0);
-							Long auctionId2 = taoBaoOrder.getAuctionId();
-							orderItem.setAuctionId(auctionId2);
-							auctionIdBuf.append(auctionId + ",");
-
-							orderItem.setPayMoney(taoBaoOrder.getPayment());
-							orderItem.setTitle(taoBaoOrder.getTitle());
-
-							String settlementTime = taoBaoOrder.getSettlementTime();
-
-							SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-							if (!StringUtil.isNullOrEmpty(settlementTime)) {
-								Date settleDate = sdf.parse(settlementTime);
-								endtime = settleDate.getTime();
-							}
-
-							String createTime = taoBaoOrder.getCreateTime();
-							if (!StringUtil.isNullOrEmpty(createTime)) {
-								Date createDate = sdf.parse(createTime);
-								thirdCreateTime = createDate.getTime();
-							}
-
-						}
-
-					}
-				}
-
-				map.put("orderItem", orderItem);
-
-				// 鏀惰揣鏃堕棿
-				map.put("endtime", endtime);
-				// 涓嬪崟鏃堕棿
-				map.put("thirdCreateTime", thirdCreateTime);
-
-				listmap.add(map);
-			}
-
-			int count = hongBaoService.countOrderByUid(key, startTime, endTime);
-			int totalPage = count % pageSize == 0 ? count / pageSize : count / pageSize + 1;
-			PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
-
-			// 璇ユ湡闂寸殑鎬绘敹鐩�
-			double countProfit = hongBaoService.countProfitByUid(key, startTime, endTime);
-
-			JSONObject data = new JSONObject();
-			data.put("pe", pe);
-			data.put("countProfit", countProfit);
-			data.put("listmap", listmap);
-
-			out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
-
-		} catch (Exception e) {
-			e.printStackTrace();
-			out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getMessage())));
-		}
-	}
-
-	public Map<String, Object> getOrderItem(HongBao hongBao) {
-
-		OrderItem orderItem = null;
-
-		Long endtime = new Long(0);
-		Long thirdCreateTime = new Long(0);
-
-		Map<String, Object> map = new HashMap<String, Object>();
-
-		Integer type = hongBao.getType();
-		if (type == null) {
-			return map;
-		}
-
-		if (type == HongBao.TYPE_HUODONG || type == HongBao.TYPE_XINREN) {
-			/* 3-娲诲姩绾㈠寘 4-鏂颁汉绾㈠寘 */
-
-		} else if (type == HongBao.TYPE_JINGDONG || type == HongBao.TYPE_TAOBAO) {
-			/* 鑷喘璁㈠崟 */
-
-			Long orderItemId = hongBao.getOrderItemId();
-			orderItem = orderItemServcie.selectByPrimaryKey(orderItemId);
-
-			// 涓嬪崟鏃堕棿
-			Order order = hongBao.getOrder();
-			if (order != null) {
-				Date thirdCreateTime2 = order.getThirdCreateTime();
-				if (thirdCreateTime2 != null) {
-					thirdCreateTime = thirdCreateTime2.getTime();
-				}
-			}
-
-			if (orderItem != null) {
-
-				// 缁撴潫鏃堕棿
-				Long settlementTime = orderItem.getSettlementTime();
-				if (settlementTime != 0) {
-					endtime = settlementTime;
-				}
-
-				// 閫�娆炬椂闂翠笉涓虹┖ 鍒欏凡閫�娆炬椂闂翠负缁撴潫鏃堕棿
-				Long refundTime = orderItem.getRefundTime();
-				if (refundTime != 0) {
-					endtime = refundTime;
-				}
-
-			}
-
-		} else if (type == HongBao.TYPE_YIJI || type == HongBao.TYPE_ERJI || type == HongBao.TYPE_YAOQING
-				|| type == HongBao.TYPE_SHARE_ERJI || type == HongBao.TYPE_SHARE_YIJI) {
-			/* 閭�璇疯鍗� 鍒嗛攢绾㈠寘瀵瑰簲鐨勬渶涓婄骇绾㈠寘 */
-
-			HongBao parent = hongBao.getParent();
-
-			if (parent != null) {
-				Long pid = parent.getId();
-				HongBao phongbao = hongBaoService.selectByPrimaryKey(pid);
-				Map<String, Object> map2 = getOrderItem(phongbao);
-				return map2;
-			}
-
-		} else if (type == HongBao.TYPE_SHARE_GOODS) {
-			/* 鍒嗕韩璁㈠崟 */
-
-			Long hongbaoId = hongBao.getId();
-			PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-
-			if (pidOrder != null) {
-				orderItem = new OrderItem();
-
-				orderItem.setOrderId(pidOrder.getOrderId());
-				orderItem.setTitle(pidOrder.getGoodsTitle());
-				orderItem.setPayMoney(pidOrder.getPayMoney());
-				orderItem.setAuctionId(pidOrder.getAuctionId());
-
-				// 涓嬪崟鏃堕棿
-				Date createTime = pidOrder.getCreateTime();
-				if (createTime != null) {
-					thirdCreateTime = createTime.getTime();
-				}
-
-				// 缁撶畻鏃堕棿
-				Date balanceTime = pidOrder.getBalanceTime();
-				if (balanceTime != null) {
-					endtime = balanceTime.getTime();
-				}
-
-				String param = hongBao.getParam();
-				if (!StringUtil.isNullOrEmpty(param)) {
-					String picture = param.substring(11, param.length());
-					if (!StringUtil.isNullOrEmpty(picture)) {
-						orderItem.setPicture(picture.substring(0, picture.length() - 1));
-					}
-				}
-			}
-		}
-
-		map.put("orderItem", orderItem);
-		map.put("endtime", endtime);
-		map.put("thirdCreateTime", thirdCreateTime);
-
-		return map;
-
 	}
 
 	/**
@@ -1408,11 +747,297 @@
 		}
 
 		try {
-			extractService.checkExtract(uid);
+			extractService.checkExtract(Long.parseLong(uid));
 			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("璧勯噾姝e父"));
 		} catch (ExtractException e) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
 		}
 	}
 
+	/**
+	 * 缁熻瀹℃牳娆℃暟
+	 * 
+	 * @param callback
+	 * @param state
+	 *            瀹℃牳鐘舵�侊細鎵�鏈�-3 閫氳繃-1 鎷掔粷- 2
+	 * @param type
+	 *            缁熻绫诲瀷 1-24灏忔椂 2-鎵�鏈�3
+	 * @param dateType
+	 *            绫诲瀷 1鏃� 2鏈� 3骞�
+	 * @param year
+	 *            2018
+	 * @param startTime
+	 *            2018-12-01
+	 * @param endTime
+	 *            2018-12-01
+	 * @param out
+	 */
+	@RequestMapping(value = "getAuditTotal")
+	public void getAuditTotal(String callback, String stateArray, Integer dateType, String year, String startTime,
+			String endTime, PrintWriter out) {
+
+		String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime);
+		if (validateMsg != null) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg));
+			return;
+		}
+
+		if (dateType == 1 && year != null) {
+			year = null; // 璁剧疆涓虹┖
+		} else if (dateType == 2) {
+			if (startTime != null)
+				startTime = null;
+
+			if (endTime != null)
+				endTime = null;
+
+		} else if (dateType == 3) {
+			if (year != null)
+				year = null;
+
+			if (startTime != null)
+				startTime = null;
+
+			if (endTime != null)
+				endTime = null;
+		}
+
+		try {
+			Object objectDate = null;
+			List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year);
+
+			Gson gson = new Gson();
+			List<Integer> stateList = gson.fromJson(stateArray, new TypeToken<ArrayList<Integer>>() {
+			}.getType());
+
+			JSONArray line_list = new JSONArray();
+			for (Integer state : stateList) {
+				JSONObject innerList = new JSONObject();
+				if (state == null || state == 3) {
+					innerList.put("name", "鎬昏");
+				} else if (state == 1) {
+					innerList.put("name", "閫氳繃鏁�");
+				} else if (state == 2) {
+					innerList.put("name", "椹冲洖鏁�");
+				}
+
+				List<Map<String, Object>> list = extractAuditRecordService.countAuditTotal(state, dateType, year,
+						startTime, endTime);
+
+				if (dateType != 3) {
+					innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateType, dateList, list)));
+				} else {
+					// 骞磋鍥�
+					Map<String, Object> map = AdminUtils.yearsDataFactory(list);
+
+					if (objectDate == null) {
+						objectDate = map.get("date");
+					}
+					innerList.put("data", gson.toJson(map.get("value")));
+				}
+
+				line_list.add(innerList);
+			}
+
+			JSONObject data = new JSONObject();
+			if (objectDate != null) {
+				data.put("xAxis_list", gson.toJson(objectDate));
+			} else {
+				data.put("xAxis_list", gson.toJson(dateList));
+			}
+
+			data.put("line_list", line_list);
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+		} catch (Exception e) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
+			e.printStackTrace();
+		}
+	}
+
+	/**
+	 * 缁熻鎻愮幇鐢宠鎬婚
+	 * 
+	 * @param callback
+	 * @param type
+	 *            缁熻绫诲瀷 1-24灏忔椂 2-鎵�鏈�
+	 * @param dateType
+	 *            绫诲瀷 1鏃� 2鏈� 3
+	 * @param year
+	 *            2018
+	 * @param startTime
+	 *            2018-12-01
+	 * @param endTime
+	 *            2018-12-01
+	 * @param out
+	 */
+	@RequestMapping(value = "getExtractApplyMoney")
+	public void getExtractApplyMoney(String callback, Integer dateType, String year, String startTime, String endTime,
+			PrintWriter out) {
+
+		String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime);
+		if (validateMsg != null) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg));
+			return;
+		}
+
+		if (dateType == 1 && year != null) {
+			year = null; // 璁剧疆涓虹┖
+		} else if (dateType == 2) {
+			if (startTime != null)
+				startTime = null;
+
+			if (endTime != null)
+				endTime = null;
+
+		} else if (dateType == 3) {
+			if (year != null)
+				year = null;
+
+			if (startTime != null)
+				startTime = null;
+
+			if (endTime != null)
+				endTime = null;
+		}
+
+		try {
+
+			Object objectDate = null;
+			List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year);
+
+			Gson gson = new Gson();
+			JSONArray line_list = new JSONArray();
+
+			JSONObject innerList = new JSONObject();
+			innerList.put("name", "鎬昏");
+
+			List<Map<String, Object>> list = extractAuditRecordService.countExtractApplyMoney(null, dateType, year,
+					startTime, endTime);
+
+			if (dateType != 3) {
+				innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateType, dateList, list)));
+			} else {
+				// 骞磋鍥�
+				Map<String, Object> map = AdminUtils.yearsDataFactory(list);
+
+				if (objectDate == null) {
+					objectDate = map.get("date");
+				}
+				innerList.put("data", gson.toJson(map.get("value")));
+			}
+
+			line_list.add(innerList);
+
+			JSONObject data = new JSONObject();
+			if (objectDate != null) {
+				data.put("xAxis_list", gson.toJson(objectDate));
+			} else {
+				data.put("xAxis_list", gson.toJson(dateList));
+			}
+
+			data.put("line_list", line_list);
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+		} catch (Exception e) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
+			e.printStackTrace();
+		}
+	}
+
+	/**
+	 * 缁熻鎻愮幇鐢宠鎬绘鏁�
+	 * 
+	 * @param callback
+	 * @param state
+	 *            鎵�鏈�-绌哄�兼垨鑰呬笉浼� 寰呭鏍�-0 閫氳繃-1 鎷掔粷- 2
+	 * @param type
+	 *            缁熻绫诲瀷 1-24灏忔椂 2-鎵�鏈�
+	 * @param dateType
+	 *            绫诲瀷 1鏃� 2鏈� 3骞�
+	 * @param year
+	 *            2018
+	 * @param startTime
+	 *            2018-12-01
+	 * @param endTime
+	 *            2018-12-01
+	 * @param out
+	 */
+	@RequestMapping(value = "getExtractApplyNumber")
+	public void getExtractApplyNumber(String callback, Integer state, Integer dateType, String year, String startTime,
+			String endTime, PrintWriter out) {
+
+		String validateMsg = AdminUtils.validateParams(dateType, startTime, endTime);
+		if (validateMsg != null) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(validateMsg));
+			return;
+		}
+
+		if (dateType == 1 && year != null) {
+			year = null; // 璁剧疆涓虹┖
+		} else if (dateType == 2) {
+			if (startTime != null)
+				startTime = null;
+
+			if (endTime != null)
+				endTime = null;
+
+		} else if (dateType == 3) {
+			if (year != null)
+				year = null;
+
+			if (startTime != null)
+				startTime = null;
+
+			if (endTime != null)
+				endTime = null;
+		}
+
+		try {
+
+			Object objectDate = null;
+			List<String> dateList = AdminUtils.getDateList(dateType, startTime, endTime, year);
+
+			Gson gson = new Gson();
+			JSONArray line_list = new JSONArray();
+
+			JSONObject innerList = new JSONObject();
+			innerList.put("name", "鎬昏");
+
+			List<Map<String, Object>> list = extractAuditRecordService.countExtractApplyNumber(null, dateType, year,
+					startTime, endTime);
+
+			if (dateType != 3) {
+				innerList.put("data", gson.toJson(AdminUtils.dayOrMonthDataFactory(dateType, dateList, list)));
+			} else {
+				// 骞磋鍥�
+				Map<String, Object> map = AdminUtils.yearsDataFactory(list);
+
+				if (objectDate == null) {
+					objectDate = map.get("date");
+				}
+				innerList.put("data", gson.toJson(map.get("value")));
+			}
+
+			line_list.add(innerList);
+
+			JSONObject data = new JSONObject();
+			if (objectDate != null) {
+				data.put("xAxis_list", gson.toJson(objectDate));
+			} else {
+				data.put("xAxis_list", gson.toJson(dateList));
+			}
+
+			data.put("line_list", line_list);
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
+
+		} catch (Exception e) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
+			e.printStackTrace();
+		}
+	}
+
 }

--
Gitblit v1.8.0