From 900c0ff1cf220b47921264748ac1f1e1aa28c6f5 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 26 六月 2019 17:01:18 +0800
Subject: [PATCH] 分享奖励红包消息取消 + 查询最近30分享红包  + 分享tid加密

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java | 1090 ++++++++++++++------------------------------------------
 1 files changed, 281 insertions(+), 809 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java
index 3a7d769..4988bef 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java
@@ -1,76 +1,52 @@
 package com.yeshi.fanli.controller.admin;
 
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
 import java.io.PrintWriter;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Date;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Resource;
-import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpServletRequest;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.util.CellRangeAddress;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
 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.admin.UserInfoAdmin;
-import com.yeshi.fanli.entity.bus.user.AccountDetails;
+import com.yeshi.fanli.dto.money.AccountDetails;
 import com.yeshi.fanli.entity.bus.user.BindingAccount;
-import com.yeshi.fanli.entity.bus.user.Extract;
 import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
 import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
-import com.yeshi.fanli.entity.bus.user.HongBao;
-import com.yeshi.fanli.entity.bus.user.MoneyRecord;
-import com.yeshi.fanli.entity.bus.user.Order;
 import com.yeshi.fanli.entity.bus.user.ThreeSale;
 import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.bus.user.UserRank;
-import com.yeshi.fanli.entity.taobao.PidOrder;
-import com.yeshi.fanli.entity.taobao.ScanHistory;
+import com.yeshi.fanli.entity.common.AdminUser;
+import com.yeshi.fanli.entity.money.UserMoneyDetail;
 import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
-import com.yeshi.fanli.service.inter.config.ConfigService;
 import com.yeshi.fanli.service.inter.count.UserInfoCountService;
-import com.yeshi.fanli.service.inter.goods.ShareService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
 import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
-import com.yeshi.fanli.service.inter.order.OrderItemServcie;
-import com.yeshi.fanli.service.inter.order.OrderService;
-import com.yeshi.fanli.service.inter.order.PidOrderService;
-import com.yeshi.fanli.service.inter.user.AccountDetailsService;
 import com.yeshi.fanli.service.inter.user.BindingAccountService;
-import com.yeshi.fanli.service.inter.user.ExtractService;
 import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
-import com.yeshi.fanli.service.inter.user.MoneyRecordService;
-import com.yeshi.fanli.service.inter.user.ScanHistoryService;
-import com.yeshi.fanli.service.inter.user.UserActiveLogService;
+import com.yeshi.fanli.service.inter.user.UserAccountService;
 import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
+import com.yeshi.fanli.service.inter.user.UserInfoDeleteRecordService;
 import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
+import com.yeshi.fanli.service.inter.user.UserMoneyDetailService;
 import com.yeshi.fanli.service.inter.user.UserRankService;
 import com.yeshi.fanli.tag.PageEntity;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.GsonUtil;
-import com.yeshi.fanli.util.HongBaoUtil;
 import com.yeshi.fanli.util.StringUtil;
-import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.factory.AccountDetailsFactory;
+import com.yeshi.fanli.vo.user.UserInfoVO;
 
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
@@ -82,37 +58,7 @@
 	private UserInfoService userInfoService;
 
 	@Resource
-	private MoneyRecordService moneyRecordService;
-
-	@Resource
-	private OrderService orderService;
-
-	@Resource
-	private ScanHistoryService scanHistoryService;
-
-	@Resource
-	private ConfigService configService;
-
-	@Resource
-	private HongBaoService hongBaoService;
-
-	@Resource
-	private ExtractService extractService;
-
-	@Resource
 	private ThreeSaleSerivce threeSaleService;
-
-	@Resource
-	private OrderItemServcie orderItemService;
-
-	@Resource
-	private ShareService shareService;
-
-	@Resource
-	private PidOrderService pidOrderService;
-
-	@Resource
-	private AccountDetailsService accountDetailsService;
 
 	@Resource
 	private BindingAccountService bindingAccountService;
@@ -121,507 +67,28 @@
 	private UserInfoCountService userInfoCountService;
 
 	@Resource
-	private UserActiveLogService userActiveLogService;
-
-	@Resource
 	private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService;
 
 	@Resource
 	private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
-	
+
 	@Resource
-	private UserInfoExtraService  userInfoExtraService;
-	
+	private UserInfoExtraService userInfoExtraService;
+
 	@Resource
 	private UserRankService userRankService;
 
-	@RequestMapping(value = "getUserList", method = RequestMethod.POST)
-	public void getUserList(int pageIndex, String key, PrintWriter out) {
-
-		List<UserInfo> userList = userInfoService.getUserList(pageIndex - 1, key);
-		int count = userInfoService.getUserCount(key);
-
-		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);
-		Map<String, String> map = new HashMap<String, String>();
-		map.put("key", key);
-		pe.setParams(map);
-		JSONObject data = new JSONObject();
-		data.put("pe", pe);
-		data.put("userList", userList);
-		out.print(JsonUtil.loadTrueResult(data));
-	}
+	@Resource
+	private UserMoneyDetailService userMoneyDetailService;
+	
+	@Resource
+	private UserInfoDeleteRecordService userInfoDeleteRecordService;
+	
+	@Resource
+	private UserAccountService  userAccountService;
 
 	/**
-	 * 
-	 * 鏂规硶璇存槑: 涓夌骇鍒嗛攢
-	 * 
-	 * @author mawurui createTime 2018骞�5鏈�21鏃� 涓嬪崍4:55:07
-	 * @param pageIndex
-	 * @param key
-	 * @param out
-	 */
-	@RequestMapping(value = "getThreeSaleList", method = RequestMethod.POST)
-	public void getThreeSaleList(int pageIndex, String key, PrintWriter out) {
-		List<ThreeSale> list = threeSaleService.getLastestThreeSaleList(pageIndex, key);
-		int count = threeSaleService.getLastestThreeSaleCount(key);
-
-		int totalPage = (int) (count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE
-				: count / Constant.PAGE_SIZE + 1);
-		PageEntity pe = new PageEntity(pageIndex, Constant.PAGE_SIZE, count, totalPage);
-		Map<String, String> map = new HashMap<String, String>();
-		map.put("key", key);
-		pe.setParams(map);
-		JSONObject data = new JSONObject();
-		data.put("pe", pe);
-		data.put("threeSaleList", list);
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 鏌ヨ鎵�鏈夌敤鎴峰垎浜禋鍒楄〃
-	 * 
-	 * @author mawurui createTime 2018骞�4鏈�24鏃� 涓嬪崍3:37:13
-	 * @param pageIndex
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getShareMoneyList", method = RequestMethod.POST)
-	public void getShareList(int pageIndex, PrintWriter out, String key) {
-
-		// int totalCount = shareService.getShareMoneyCount();
-		// PageEntity pageEntity = new PageEntity();
-		// pageEntity.setPageIndex(pageIndex);
-		// pageEntity.setPageSize(Constant.PAGE_SIZE);
-		// pageEntity.setTotalCount(totalCount);
-
-		int count = shareService.getCountByKey(key);
-		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);
-
-		List<PidOrder> shareMoneyList = shareService.getShareMoneyList(pageIndex, key);
-		JSONObject data = new JSONObject();
-		data.put("pageEntity", pe);
-		data.put("shareMoneyList", JsonUtil.getSimpleGsonWithDate().toJson(shareMoneyList));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * @param pageIndex
-	 * @param type
-	 *            1- 1绾у垎閿� 2-2绾у垎閿�
-	 * @param uid
-	 * @param key
-	 * @param out
-	 */
-	@RequestMapping(value = "getThreeSaleDetailList", method = RequestMethod.POST)
-	public void getThreeSaleDetailList(int pageIndex, int type, long uid, String key, PrintWriter out) {
-		List<UserInfo> userList = null;
-		long count = 0;
-		if (type == 1) {
-			userList = threeSaleService.getFirstUsers(uid, pageIndex);
-			count = threeSaleService.getFirstUsersCount(uid);
-		} else if (type == 2) {
-			userList = threeSaleService.getSecondUsers(uid, pageIndex);
-			count = threeSaleService.getSecondUsersCount(uid);
-		}
-
-		int totalPage = (int) (count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE
-				: count / Constant.PAGE_SIZE + 1);
-		PageEntity pe = new PageEntity(pageIndex, Constant.PAGE_SIZE, count, totalPage);
-		Map<String, String> map = new HashMap<String, String>();
-		map.put("key", key);
-		pe.setParams(map);
-		JSONObject data = new JSONObject();
-		data.put("pe", pe);
-		data.put("userList", userList);
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	@RequestMapping(value = "getUserListByUid", method = RequestMethod.POST)
-	public void getUserListByUid(long uid, PrintWriter out) {
-
-		List<UserInfo> userList = userInfoService.getUserListByUid(uid);
-		int count = userList.size();
-
-		int totalPage = count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE : count / Constant.PAGE_SIZE + 1;
-		PageEntity pe = new PageEntity(1, Constant.PAGE_SIZE, count, totalPage);
-		Map<String, String> map = new HashMap<String, String>();
-		pe.setParams(map);
-		JSONObject data = new JSONObject();
-		data.put("pe", pe);
-		data.put("userList", userList);
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 鏌ヨ鐢ㄦ埛璁㈠崟鐘舵��
-	 * 
-	 * @author mawurui createTime 2018骞�5鏈�17鏃� 涓婂崍10:55:41
-	 * @param pageIndex
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getUserOrderList", method = RequestMethod.POST)
-	public void getUserOrderList(int pageIndex, long uid, PrintWriter out) {
-		List<Order> orderList = orderService.getOrderByUid(pageIndex - 1, uid);
-		int count = orderService.getCount(uid);
-		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("orderList", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(orderList));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	@RequestMapping(value = "getMoneyRecordList", method = RequestMethod.POST)
-	public void getMoneyRecordList(int pageIndex, long uid, PrintWriter out) {
-		List<MoneyRecord> moneyRecordList = moneyRecordService.getMoneyRecord(uid, pageIndex - 1);
-		if (moneyRecordList != null)
-			for (MoneyRecord mr : moneyRecordList) {
-				mr.setExtract(null);
-				mr.setUserInfo(null);
-				mr.setHongBao(null);
-			}
-
-		int count = moneyRecordService.getCount(uid);
-		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("moneyRecordList", GsonUtil.toJsonExpose(moneyRecordList));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 鏌ヨ鐢ㄦ埛-绾㈠寘璇︽儏鍒楄〃
-	 * 
-	 * @author mawurui createTime 2018骞�5鏈�10鏃� 涓婂崍11:48:58
-	 * @param pageIndex
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getHongBaoList", method = RequestMethod.POST)
-	public void getHongBaoList(int pageIndex, long uid, PrintWriter out) {
-		JSONObject data = new JSONObject();
-		List<HongBao> list = hongBaoService.getHongBaoList(pageIndex, uid);
-		if (list.size() != 0 || list != null) {
-			for (HongBao hb : list) {
-				int hbType = hb.getType();
-				if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
-					Long hongbaoId = hb.getId();
-					PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-					Order order = new Order();
-					order.setThirdCreateTime(pidOrder.getOrderCreateTime());
-					order.setOrderId(pidOrder.getOrderId());
-					order.setThirdState(pidOrder.getState());
-					order.setMoney(pidOrder.getPayMoney());
-					hb.setOrder(order);
-				} else if (hbType == HongBao.TYPE_SHARE_YIJI || hbType == HongBao.TYPE_SHARE_ERJI) {
-					Long hongbaoId = hb.getParent().getId();
-					PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-					Order order = new Order();
-					order.setThirdCreateTime(pidOrder.getOrderCreateTime());
-					order.setOrderId(pidOrder.getOrderId());
-					order.setThirdState(pidOrder.getState());
-					order.setMoney(pidOrder.getPayMoney());
-					hb.setOrder(order);
-				} else if (hbType == HongBao.TYPE_XINREN) {
-					Order order = new Order();
-					Long createtime = hb.getCreatetime();
-					if (createtime != null) {
-						Date ThirdCreateTime = new Date(createtime);
-						order.setThirdCreateTime(ThirdCreateTime);
-					}
-
-					hb.setOrder(order);
-
-				} else if (hb.getParent() != null) {
-					hb.setOrder(hb.getParent().getOrder());
-				}
-			}
-		}
-		int count = hongBaoService.getCount(uid);
-		PageEntity pe = new PageEntity();
-		pe.setPageIndex(pageIndex);
-		pe.setPageSize(Constant.PAGE_SIZE);
-		pe.setTotalCount(count);
-
-		data.put("pe", pe);
-		data.put("list", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(list));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 鏌ヨ 鍒嗕韩璧氶〉闈㈠垪琛�
-	 * 
-	 * @author mawurui createTime 2018骞�4鏈�16鏃� 涓婂崍9:54:39
-	 * @param pageIndex
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getShareList", method = RequestMethod.POST)
-	public void getShareList(int pageIndex, long uid, PrintWriter out) {
-		int totalCount = shareService.getCount(uid);
-		PageEntity pageEntity = new PageEntity();
-		pageEntity.setPageIndex(pageIndex);
-		pageEntity.setPageSize(Constant.PAGE_SIZE);
-		pageEntity.setTotalCount(totalCount);
-
-		List<HongBao> shareList = shareService.getShareList(pageIndex, uid);
-		if (shareList.size() != 0 || shareList != null) {
-			for (HongBao hb : shareList) {
-				int hbType = hb.getType();
-				if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
-					Long hongbaoId = hb.getId();
-					PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-					Order order = new Order();
-					order.setThirdCreateTime(pidOrder.getCreateTime());
-					order.setThirdState(pidOrder.getState());
-					hb.setOrder(order);
-				} else if (hb.getParent() != null) {
-					hb.setOrder(hb.getParent().getOrder());
-				}
-			}
-		}
-		JSONObject data = new JSONObject();
-		data.put("pageEntity", pageEntity);
-		data.put("shareList", GsonUtil.toJsonExpose(shareList));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 鏌ヨ 閭�璇疯禋椤甸潰鍒楄〃
-	 * 
-	 * @author mawurui createTime 2018骞�4鏈�16鏃� 涓婂崍9:54:39
-	 * @param pageIndex
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "getInviteList", method = RequestMethod.POST)
-	public void getInviteList(int pageIndex, long uid, PrintWriter out) {
-		int totalCount = shareService.getInviteCount(uid);
-		PageEntity pageEntity = new PageEntity();
-		pageEntity.setPageIndex(pageIndex);
-		pageEntity.setPageSize(Constant.PAGE_SIZE);
-		pageEntity.setTotalCount(totalCount);
-
-		List<HongBao> inviteList = shareService.getInviteList(pageIndex, uid);
-		if (inviteList.size() != 0 || inviteList != null) {
-			for (HongBao hb : inviteList) {
-				int hbType = hb.getType();
-				if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
-					Long hongbaoId = hb.getId();
-					PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-					Order order = new Order();
-					order.setThirdCreateTime(pidOrder.getCreateTime());
-					order.setThirdState(pidOrder.getState());
-					hb.setOrder(order);
-				} else if (hb.getParent() != null) {
-					hb.setOrder(hb.getParent().getOrder());
-				}
-			}
-		}
-
-		JSONObject data = new JSONObject();
-		data.put("pageEntity", pageEntity);
-		data.put("inviteList", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(inviteList));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 娓呴櫎鐢ㄦ埛鎵嬪娍瀵嗙爜
-	 * 
-	 * @author mawurui createTime 2018骞�5鏈�4鏃� 涓嬪崍4:47:29
-	 * @param uid
-	 * @param out
-	 */
-	@RequestMapping(value = "cleanPassword", method = RequestMethod.POST)
-	public void cleanPassword(long id, PrintWriter out) {
-		userInfoService.cleanPassword(id);
-		out.print(JsonUtil.loadTrueResult("娓呴櫎鎴愬姛"));
-	}
-
-	@RequestMapping(value = "getScanHistoryList", method = RequestMethod.POST)
-	public void getScanHistoryList(int pageIndex, long uid, PrintWriter out) {
-		List<ScanHistory> scanHistoryList = scanHistoryService.getScanHistoryByUid(pageIndex - 1, uid);
-		int count = scanHistoryService.getCountByUid(uid);
-		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("scanHistoryList", GsonUtil.toDFJson(scanHistoryList));
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	@RequestMapping(value = "getAssets", method = RequestMethod.POST)
-	public void getAssets(PrintWriter out) {
-		String minMoney = configService.get(Constant.EXTRACT_MIN_MONEY);
-		double min = Double.parseDouble(minMoney);
-		double freeze = userInfoService.getFreezeAssets(min);
-		double canAssets = userInfoService.getCanAssets(min);
-		JSONObject data = new JSONObject();
-		data.put("freeze", freeze);
-		data.put("can", canAssets);
-		out.print(JsonUtil.loadTrueResult(data));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: Excel琛ㄦ牸涓嬭浇
-	 * 
-	 * @author mawurui createTime 2018骞�5鏈�21鏃� 涓嬪崍2:14:44
-	 * @param uid
-	 * @param response
-	 */
-	@SuppressWarnings("unused")
-	@RequestMapping(value = "downDetailedExcel", produces = { "application/vnd.ms-excel;charset=UTF-8" })
-	public void downDetailedExcel(long uid, HttpServletResponse response) {
-		try {
-			List<HongBao> list = hongBaoService.getHongBaoListAll(uid);
-			if (list.size() != 0 || list != null) {
-				for (HongBao hb : list) {
-					int hbType = hb.getType();
-					if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
-						Long hongbaoId = hb.getId();
-						PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-						Order order = new Order();
-						order.setOrderId(pidOrder.getOrderId());
-						order.setMoney(pidOrder.getPayMoney());
-						order.setThirdCreateTime(pidOrder.getCreateTime());
-						order.setThirdState(pidOrder.getState());
-						hb.setOrder(order);
-					} else if (hbType == HongBao.TYPE_SHARE_ERJI || hbType == HongBao.TYPE_SHARE_YIJI) { // type
-																											// ==
-						Long hongbaoId = hb.getParent().getId();
-						PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
-						Order order = new Order();
-						order.setOrderId(pidOrder.getOrderId());
-						order.setMoney(pidOrder.getPayMoney());
-						order.setThirdCreateTime(pidOrder.getCreateTime());
-						order.setThirdState(pidOrder.getState());
-						hb.setOrder(order);
-					} else if (hb.getParent() != null) {
-						hb.setOrder(hb.getParent().getOrder());
-					}
-				}
-			}
-
-			File desc = new File(this.getClass().getResource("/muban.xls").toURI());
-			InputStream inStream = new FileInputStream(desc);
-			Workbook wb = new HSSFWorkbook(inStream);
-			Sheet sheet = wb.getSheetAt(0);
-			int i = 1;
-			for (; i <= list.size(); i++) {
-				Row row = sheet.createRow(i);
-				for (int c = 1; c < 10; c++) {
-					row.createCell(c);
-				}
-				Cell cell = row.createCell(1);
-				HongBao hongBao = list.get(i - 1);
-				long createtime = hongBao.getCreatetime();
-				String create = TimeUtil.getWholeTime(createtime);
-				cell.setCellValue(create);
-
-				Cell cell2 = row.getCell(2);
-				String title = HongBaoUtil.getHongBaoTitle(hongBao.getType());
-				cell2.setCellValue(title);
-
-				Order order = hongBao.getOrder();
-				if (order != null) {
-					Cell cell3 = row.getCell(3);
-					Integer orderType = order.getOrderType();
-					if (orderType == null) {
-						orderType = 1;
-					}
-					cell3.setCellValue(orderType == 1 ? "娣樺疂" : "鍏朵粬");
-
-					String orderId = order.getOrderId();
-					if (orderId == null) {
-						orderId = "";
-					}
-					Cell cell4 = row.getCell(4);
-					cell4.setCellValue(orderId);
-
-					Cell cell5 = row.getCell(5);
-					// List<Order>
-					// orderItemService.findByOrderId(order.getId());
-					cell5.setCellValue(order.getMoney().doubleValue());
-
-					Cell cell6 = row.getCell(6);
-					String stateStr = order.getThirdState();
-					cell6.setCellValue(stateStr);
-					/*
-					 * Cell cell11 = row.getCell(11); //涓嬪崟鏃堕棿 long orderTime =
-					 * order.getCreatetime(); String oTime =
-					 * TimeUtil.getWholeTime(orderTime);
-					 * cell11.setCellValue(oTime);
-					 */
-				} else if (order == null) {
-					Cell cell3 = row.getCell(3);
-					cell3.setCellValue("娣樺疂");
-
-					Cell cell4 = row.getCell(4);
-					cell4.setCellValue("");
-
-					Cell cell5 = row.getCell(5);
-					cell5.setCellValue("");
-
-					Cell cell6 = row.getCell(6);
-					cell6.setCellValue("");
-				} else if (hongBao.getParent() != null) {// 灞炰簬鍒嗛攢绾㈠寘
-					String orderId = "";
-					if (hongBao.getParent().getParent() != null) {
-						orderId = hongBao.getParent().getParent().getOrder().getOrderId();
-					} else {
-						orderId = hongBao.getParent().getOrder().getOrderId();
-					}
-					Cell cell4 = row.getCell(4);
-					cell4.setCellValue(orderId);
-				}
-				Cell cell7 = row.getCell(7);
-				cell7.setCellValue(hongBao.getMoney().doubleValue());
-
-				Cell cell8 = row.getCell(8);
-				cell8.setCellValue(HongBaoUtil.convertState(hongBao.getState()));
-
-				Cell cell9 = row.getCell(9);
-				if (hongBao.getGetTime() != 0) {
-					cell9.setCellValue(TimeUtil.getWholeTime(hongBao.getGetTime()));
-				}
-			}
-			List<Extract> extractList = extractService.getExtractInfoByUid(uid);
-			int ii = i;
-			for (int m = 0; m < extractList.size(); m++, ii++) {
-				Row row = sheet.createRow(ii);
-				for (int c = 1; c < 10; c++) {
-					row.createCell(c);
-				}
-				Cell cell = row.getCell(1);
-				Extract extract = extractList.get(m);
-				cell.setCellValue(TimeUtil.getWholeTime(extract.getExtractTime()));
-				Cell cell2 = row.getCell(2);
-				cell2.setCellValue("鎻愮幇");
-				Cell cell7 = row.getCell(7);
-				cell7.setCellValue(-extract.getMoney().doubleValue());
-			}
-			CellRangeAddress cellRangeAddress = new CellRangeAddress(0, sheet.getLastRowNum(), 1, 9);
-			sheet.setAutoFilter(cellRangeAddress);
-			wb.write(response.getOutputStream());
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * 鏌ヨ鐢ㄦ埛淇℃伅鍒楄〃--鐩稿叧鏁版嵁缁熻
+	 * 鏌ヨ鐢ㄦ埛淇℃伅鍒楄〃 姝e父鐢ㄦ埛/寮傚父鐢ㄦ埛
 	 * 
 	 * @param callback
 	 * @param pageIndex
@@ -640,20 +107,13 @@
 	 * @param out
 	 */
 	@RequestMapping(value = "query")
-	public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer userType, Integer days,
-			String startTime, String endTime, Integer orderMode, PrintWriter out) {
+	public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer keyType, Integer rank,
+			Integer days, String startTime, String endTime, Integer orderMode, Integer type, PrintWriter out) {
 
 		try {
-
-			// 缁撴潫鏃堕棿 2018-06-06 00:00:00 鍔犱笂涓�澶�
-			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 (type == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛绫诲瀷type涓嶈兘涓虹┖"));
+				return;
 			}
 
 			if (pageIndex == null)
@@ -676,15 +136,35 @@
 				}
 			}
 
-			List<UserInfoAdmin> userList = userInfoService.query((pageIndex - 1) * pageSize, pageSize, key, userType,
-					days, startTime, endTime, orderField, orderMode);
+			String userRank = null;
+			if (rank != null) {
+				switch (rank) {
+				case 1:
+					userRank = "闈掗摐";
+					break;
+				case 2:
+					userRank = "鐧介摱";
+					break;
+				case 3:
+					userRank = "榛勯噾";
+					break;
+				case 4:
+					userRank = "閾傞噾";
+					break;
+				default:
+					break;
+				}
+			}
+
+			List<UserInfoVO> userList = userInfoService.query((pageIndex - 1) * pageSize, pageSize, type, key, keyType,
+					userRank, days, startTime, endTime, orderField, orderMode);
 
 			if (userList == null || userList.size() == 0) {
 				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鐩稿叧鏁版嵁"));
 				return;
 			}
 
-			long count = userInfoService.queryCount(key, userType, days, startTime, endTime);
+			long count = userInfoService.queryCount(type, key, keyType, userRank, days, startTime, endTime);
 
 			int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
 			PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
@@ -695,7 +175,6 @@
 
 			JSONObject data = new JSONObject();
 			data.put("pe", pe);
-			// data.put("sumMoney", sumMoney);
 			data.put("resultList", gson.toJson(userList));
 
 			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
@@ -722,10 +201,7 @@
 			long loseUser = userInfoCountService.countLoseUser(180);
 			// 绱鏈夎喘涔扮敤鎴锋暟
 			long orderUser = userInfoCountService.countHasOrderUser();
-			
-		
-			
-			
+
 			// 鎬绘暟-鏅�氱敤鎴�
 			long countNormal = 0;
 			// 鎬绘暟-閾滅敤鎴�
@@ -734,16 +210,16 @@
 			long countSilver = 0;
 			// 鎬绘暟-閲戠敤鎴�
 			long countGold = 0;
-			
+
 			List<UserRank> listRank = userRankService.getAllRank();
 			if (listRank != null && listRank.size() > 0) {
-				for (UserRank userRank: listRank) {
+				for (UserRank userRank : listRank) {
 					Long id = userRank.getId();
 					String name = userRank.getName();
 					if ("闈掗摐".equals(name)) {
-						continue; 
-					} 
-					
+						continue;
+					}
+
 					long count = userInfoExtraService.countByRankId(id);
 					if ("鐧介摱".equals(name)) {
 						countCuprum = count;
@@ -754,11 +230,10 @@
 					}
 				}
 			}
-			
+
 			// 鏅�氱敤鎴疯绠�
 			countNormal = totalUser - (countCuprum + countSilver + countGold);
-			
-			
+
 			JSONObject data = new JSONObject();
 			data.put("totalUser", totalUser);
 			data.put("loseUser", loseUser);
@@ -781,8 +256,6 @@
 			 * data.put("countCanAssets", countCanAssets);
 			 */
 
-		
-
 			// 浠婃棩鏂板鐢ㄦ埛鏁伴噺
 			long todayUser = userInfoCountService.countNewUser(1, null);
 			// 鏈湀鏂板鐢ㄦ埛鏁伴噺
@@ -799,177 +272,6 @@
 	}
 
 	/**
-	 * 淇敼鐢ㄦ埛鐨勭姸鎬併�佺瓑绾т俊鎭�
-	 * 
-	 * @param callback
-	 * @param userInfo
-	 * @param out
-	 */
-	@RequestMapping(value = "setInfo")
-	public void setInfo(String callback, UserInfo userInfo, PrintWriter out) {
-		try {
-
-			Long id = userInfo.getId();
-
-			if (id == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂紶閫掓纭暟鎹�"));
-				return;
-			}
-
-			UserInfo currentInfo = userInfoService.selectByPKey(id);
-			if (currentInfo == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴峰凡涓嶅瓨鍦�"));
-				return;
-			}
-
-			currentInfo = new UserInfo(id);
-
-			boolean hasChange = false;
-
-			// 绛夌骇淇敼
-			Integer rank = userInfo.getRank();
-			if (rank != null) {
-				hasChange = true;
-				currentInfo.setRank(rank);
-			}
-
-			// 鐘舵�佷慨鏀�
-			Integer state = userInfo.getState();
-			if (state != null) {
-				hasChange = true;
-				currentInfo.setState(state);
-				if (state != null && state == UserInfo.STATE_FORBIDDEN)
-					currentInfo.setStateDesc("绠$悊鍛樺皝绂�");
-			}
-
-			if (hasChange) {
-				userInfoService.updateByPrimaryKeySelective(currentInfo);
-				UserInfo nowUser = userInfoService.selectByPKey(id);
-				if (state != null && state == UserInfo.STATE_FORBIDDEN) {
-					// 鍔犲叆灏佺鐨勮处鍙峰垪琛�
-					ForbiddenUserIdentifyCode forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
-					forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId);
-					forbiddenUserIdentifyCode.setIdentifyCode(nowUser.getWxUnionId());
-					forbiddenUserIdentifyCode.setBeiZhu(nowUser.getWxName());
-					try {
-						forbiddenUserIdentifyCodeService.addIdentifyCode(forbiddenUserIdentifyCode);
-					} catch (ForbiddenUserIdentifyCodeException e) {
-						e.printStackTrace();
-					}
-
-					// 鐢佃瘽鍙风爜
-					forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
-					forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.phone);
-					forbiddenUserIdentifyCode.setIdentifyCode(nowUser.getPhone());
-					try {
-						forbiddenUserIdentifyCodeService.addIdentifyCode(forbiddenUserIdentifyCode);
-					} catch (ForbiddenUserIdentifyCodeException e) {
-						e.printStackTrace();
-					}
-
-					// 娣樺疂
-					UserExtraTaoBaoInfo taoBao = userExtraTaoBaoInfoService.getByUid(nowUser.getId());
-					if (taoBao != null && !StringUtil.isNullOrEmpty(taoBao.getTaoBaoUid())) {
-						forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
-						forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid);
-						forbiddenUserIdentifyCode.setIdentifyCode(taoBao.getTaoBaoUid());
-						try {
-							forbiddenUserIdentifyCodeService.addIdentifyCode(forbiddenUserIdentifyCode);
-						} catch (ForbiddenUserIdentifyCodeException e) {
-							e.printStackTrace();
-						}
-					}
-
-					// 鏌ヨ鏀粯瀹濈粦瀹�
-
-					List<BindingAccount> list = bindingAccountService.getBindingAccountByUid(nowUser.getId());
-					if (list != null)
-						for (BindingAccount ba : list) {
-							forbiddenUserIdentifyCode = new ForbiddenUserIdentifyCode();
-							forbiddenUserIdentifyCode.setType(ForbiddenUserIdentifyCodeTypeEnum.alipayAccount);
-							forbiddenUserIdentifyCode.setIdentifyCode(ba.getAccount());
-							forbiddenUserIdentifyCode.setBeiZhu(ba.getName());
-							try {
-								forbiddenUserIdentifyCodeService.addIdentifyCode(forbiddenUserIdentifyCode);
-							} catch (ForbiddenUserIdentifyCodeException e) {
-								e.printStackTrace();
-							}
-						}
-				} else if (state != null && state == UserInfo.STATE_NORMAL) {
-					// 瑙e皝寰俊
-					ForbiddenUserIdentifyCode forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService
-							.listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId,
-									nowUser.getWxUnionId());
-					if (forbiddenUserIdentifyCode != null)
-						forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
-					// 瑙e皝鎵嬫満
-					forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService
-							.listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, nowUser.getPhone());
-					if (forbiddenUserIdentifyCode != null)
-						forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
-					// 瑙e皝娣樺疂
-					UserExtraTaoBaoInfo taoBao = userExtraTaoBaoInfoService.getByUid(nowUser.getId());
-					if (taoBao != null && !StringUtil.isNullOrEmpty(taoBao.getTaoBaoUid())) {
-						forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
-								ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBao.getTaoBaoUid());
-						if (forbiddenUserIdentifyCode != null)
-							forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
-					}
-					// 瑙e皝鏀粯瀹�
-					List<BindingAccount> list = bindingAccountService.getBindingAccountByUid(nowUser.getId());
-					if (list != null)
-						for (BindingAccount ba : list) {
-							forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
-									ForbiddenUserIdentifyCodeTypeEnum.alipayAccount, ba.getAccount());
-							if (forbiddenUserIdentifyCode != null)
-								forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
-						}
-				}
-
-				JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("淇敼鎴愬姛"));
-			} else {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏃犲彲淇敼鍐呭"));
-			}
-
-		} catch (
-
-		Exception e) {
-			e.printStackTrace();
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("淇敼澶辫触"));
-		}
-	}
-
-	/**
-	 * 鍒犻櫎缁戝畾鐨勮处鎴蜂俊鎭細 鏀粯瀹� 寰俊
-	 * 
-	 * @param callback
-	 * @param bindId
-	 * @param out
-	 */
-	@RequestMapping(value = "deleteBindingAccount")
-	public void deleteBindingAccount(String callback, Long bindId, PrintWriter out) {
-		try {
-
-			if (bindId == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂紶閫掓纭暟鎹�"));
-				return;
-			}
-
-			int count = bindingAccountService.deleteByPrimaryKey(bindId);
-
-			if (count > 0) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鍒犻櫎鎴愬姛"));
-			} else {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍒犻櫎澶辫触"));
-			}
-
-		} catch (Exception e) {
-			e.printStackTrace();
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
-		}
-	}
-
-	/**
 	 * 
 	 * @param data
 	 * @param uid
@@ -978,52 +280,240 @@
 	 *            闇�瑕佽В缁戠殑璐︽埛绫诲瀷
 	 */
 	@RequestMapping("unBindUserInfo")
-	public void unBindUserInfo(String callback, Long id, Integer type, PrintWriter out) {
+	public void unBindUserInfo(String callback, Long uid, String typeArray, PrintWriter out) {
 		try {
-
-			if (id == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("涓嶅瓨鍦ㄨ鐢ㄦ埛锛�"));
+			if (typeArray == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("娌℃湁鍙洿鏀圭殑鍐呭"));
 				return;
 			}
 
-			if (type == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璐︽埛绫诲瀷涓嶅彲涓虹┖锛�"));
+			Gson gson = new Gson();
+			List<Integer> list = gson.fromJson(typeArray, new TypeToken<ArrayList<Integer>>() {
+			}.getType());
+			if (list == null || list.size() == 0) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("娌℃湁鍙洿鏀圭殑鍐呭"));
 				return;
 			}
 
-			UserInfo find = userInfoService.getUserById(id);
+			if (uid == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛id涓嶈兘涓虹┖"));
+				return;
+			}
 
+			UserInfo find = userInfoService.getUserById(uid);
 			if (find == null) {
 				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("涓嶅瓨鍦ㄨ鐢ㄦ埛锛�"));
 				return;
 			}
 
-			String openid = find.getOpenid();
-			String wxUnionId = find.getWxUnionId();
-			String phone = find.getPhone();
-			if (1 == type) {
-				if (StringUtil.isNullOrEmpty(openid)) {
-					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氭敮浠樺疂锛�"));
+			for (Integer type : list) {
+				String openid = find.getOpenid();
+				String wxUnionId = find.getWxUnionId();
+				String phone = find.getPhone();
+				if (1 == type) {
+					if (StringUtil.isNullOrEmpty(openid)) {
+						JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氭窐瀹濓紒"));
+						return;
+					} else {
+						userInfoService.deleteBindInfo(find, type);
+					}
+				} else if (2 == type) {
+					if (StringUtil.isNullOrEmpty(wxUnionId)) {
+						JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氬井淇★紒"));
+						return;
+					} else {
+						userInfoService.deleteBindInfo(find, type);
+					}
+				} else if (3 == type) {
+					if (StringUtil.isNullOrEmpty(phone)) {
+						JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氭墜鏈哄彿锛�"));
+						return;
+					} else {
+						userInfoService.deleteBindInfo(find, type);
+					}
+				} else if (4 == type) {
+					// 鏌ヨ鏀粯瀹濈粦瀹�
+					BindingAccount account = bindingAccountService.getBindingAccountByUidAndType(uid,
+							BindingAccount.TYPE_ALIPAY);
+					if (account == null) {
+						JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氭敮浠樺疂锛�"));
+						return;
+					} else {
+						bindingAccountService.deleteBindingAccount(account);
+					}
+				} else {
+					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璐︽埛绫诲瀷涓嶅尮閰嶏紒"));
 					return;
 				}
-			} else if (2 == type) {
-				if (StringUtil.isNullOrEmpty(wxUnionId)) {
-					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氬井淇★紒"));
-					return;
-				}
-			} else if (3 == type) {
-				if (StringUtil.isNullOrEmpty(phone)) {
-					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("褰撳墠鐢ㄦ埛鏈粦瀹氭墜鏈哄彿锛�"));
-					return;
-				}
-			} else {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璐︽埛绫诲瀷鏈夎锛�"));
+			}
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("瑙g粦鎴愬姛"));
+
+		} catch (Exception e) {
+			e.printStackTrace();
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
+		}
+	}
+
+	/**
+	 * 灏佺鐢ㄦ埛ID
+	 * 
+	 * @param callback
+	 * @param uid
+	 * @param out
+	 */
+	@RequestMapping(value = "forbiddenUser")
+	public void forbiddenUser(String callback, Long uid, HttpServletRequest request,  PrintWriter out) {
+		try {
+
+			if (uid == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂紶閫掓纭暟鎹�"));
 				return;
 			}
 
-			userInfoService.deleteBindInfo(find, type);
+			UserInfo currentInfo = userInfoService.selectByPKey(uid);
+			if (currentInfo == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴峰凡涓嶅瓨鍦�"));
+				return;
+			}
 
-			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("瑙g粦鎴愬姛"));
+			AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
+			if (admin == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐧诲綍澶辨晥,璇风櫥褰�"));
+				return;
+			} 
+			
+			String reason = "鍚庡彴灏佺锛屾搷浣滀汉锛�" + admin.getId() + "-" + admin.getName();
+			userAccountService.forbiddenUserAll(uid, reason);
+
+			
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鐢ㄦ埛灏佺鎴愬姛"));
+
+		} catch (Exception e) {
+			e.printStackTrace();
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔澶辫触"));
+		}
+	}
+
+	/**
+	 * 瑙i櫎灏佺鐢ㄦ埛ID
+	 * 
+	 * @param callback
+	 * @param uid
+	 * @param out
+	 */
+	@RequestMapping(value = "relieveForbiddenUser")
+	public void relieveForbiddenUser(String callback, Long uid, PrintWriter out) {
+		try {
+
+			if (uid == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂紶閫掓纭暟鎹�"));
+				return;
+			}
+
+			UserInfo currentInfo = userInfoService.selectByPKey(uid);
+			if (currentInfo == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴峰凡涓嶅瓨鍦�"));
+				return;
+			}
+
+			currentInfo.setState(UserInfo.STATE_NORMAL);
+			currentInfo.setStateDesc("绠$悊鍛樺凡瑙e皝");
+			userInfoService.updateByPrimaryKeySelective(currentInfo);
+
+			// 瑙e皝寰俊
+			ForbiddenUserIdentifyCode forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService
+					.listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, currentInfo.getWxUnionId());
+			if (forbiddenUserIdentifyCode != null)
+				forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
+
+			// 瑙e皝鎵嬫満
+			forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService
+					.listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, currentInfo.getPhone());
+			if (forbiddenUserIdentifyCode != null)
+				forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
+
+			// 瑙e皝娣樺疂
+			UserExtraTaoBaoInfo taoBao = userExtraTaoBaoInfoService.getByUid(uid);
+			if (taoBao != null && !StringUtil.isNullOrEmpty(taoBao.getTaoBaoUid())) {
+				forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService
+						.listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBao.getTaoBaoUid());
+				if (forbiddenUserIdentifyCode != null)
+					forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
+			}
+
+			// 瑙e皝鏀粯瀹�
+			List<BindingAccount> list = bindingAccountService.getBindingAccountByUid(uid);
+			if (list != null) {
+				for (BindingAccount ba : list) {
+					forbiddenUserIdentifyCode = forbiddenUserIdentifyCodeService.listByTypeAndIdentifyCode(
+							ForbiddenUserIdentifyCodeTypeEnum.alipayAccount, ba.getAccount());
+					if (forbiddenUserIdentifyCode != null)
+						forbiddenUserIdentifyCodeService.delete(forbiddenUserIdentifyCode);
+				}
+			}
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鐢ㄦ埛瑙e皝鎴愬姛"));
+
+		} catch (Exception e) {
+			e.printStackTrace();
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔澶辫触"));
+		}
+	}
+
+	/**
+	 * 鐢ㄦ埛璐﹀彿- 灏佺/瑙e皝
+	 * 
+	 * @param callback
+	 * @param code
+	 * @param type
+	 *            1("寰俊unionId"), 2("娣樺疂ID"), 3("鎵嬫満鍙�"), 4("鏀粯瀹濊处鍙�");
+	 * @param out
+	 */
+	@RequestMapping(value = "saveForbiddenInfo")
+	public void saveForbiddenInfo(String callback, String code, Integer type, PrintWriter out) {
+		try {
+			if (code == null || code.trim().length() == 0 || type == null || "NULL".equalsIgnoreCase(code)) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍙傛暟涓嶈兘涓虹┖"));
+				return;
+			}
+
+			forbiddenUserIdentifyCodeService.saveForbiddenInfo(code, type);
+
+			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("淇敼鎴愬姛"));
+
+		} catch (ForbiddenUserIdentifyCodeException e) {
+			e.printStackTrace();
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
+		} catch (Exception e) {
+			e.printStackTrace();
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
+		}
+	}
+
+	/**
+	 * 鍒犻櫎闃熷憳鍏崇郴
+	 * 
+	 * @param callback
+	 * @param id
+	 * @param out
+	 */
+	@RequestMapping(value = "deleteThreeSale")
+	public void deleteThreeSale(String callback, Long id, PrintWriter out) {
+		try {
+
+			if (id == null) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂紶閫掓纭暟鎹�"));
+				return;
+			}
+
+			int count = threeSaleService.deleteByPrimaryKey(id);
+
+			if (count > 0) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鍒犻櫎鎴愬姛"));
+			} else {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍒犻櫎澶辫触"));
+			}
 
 		} catch (Exception e) {
 			e.printStackTrace();
@@ -1153,29 +643,6 @@
 		}
 	}
 
-	@RequestMapping(value = "deleteThreeSale")
-	public void deleteThreeSale(String callback, Long id, PrintWriter out) {
-		try {
-
-			if (id == null) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇蜂紶閫掓纭暟鎹�"));
-				return;
-			}
-
-			int count = threeSaleService.deleteByPrimaryKey(id);
-
-			if (count > 0) {
-				JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鍒犻櫎鎴愬姛"));
-			} else {
-				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍒犻櫎澶辫触"));
-			}
-
-		} catch (Exception e) {
-			e.printStackTrace();
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父"));
-		}
-	}
-
 	/**
 	 * 闃熷憳鍏崇郴
 	 * 
@@ -1298,20 +765,25 @@
 
 		try {
 
-			List<AccountDetails> detailsList = accountDetailsService.findAccountDetailsList(uid, pageIndex);
-			if (detailsList == null || detailsList.size() == 0) {
+			List<UserMoneyDetail> userMoneyDetailsList = userMoneyDetailService.listByUidWithState(uid, pageIndex,
+					pageSize);
+			if (userMoneyDetailsList == null || userMoneyDetailsList.size() == 0) {
 				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁"));
 				return;
 			}
 
-			int count = accountDetailsService.getCount(uid);
+			List<AccountDetails> detailList = new ArrayList<>();
+			for (UserMoneyDetail detail : userMoneyDetailsList)
+				detailList.add(AccountDetailsFactory.create(detail));
+
+			long count = userMoneyDetailService.countByUidWithState(uid);
 
 			int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
 			PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
 
 			JSONObject data = new JSONObject();
 			data.put("pe", pe);
-			data.put("result_list", GsonUtil.toJsonExpose(detailsList));
+			data.put("result_list", GsonUtil.toJsonExpose(detailList));
 
 			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
 

--
Gitblit v1.8.0