From d28bed1a1275131a5ca37f7da37961e2b518ac07 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 26 八月 2019 13:44:00 +0800
Subject: [PATCH] 淘礼金创建异常处理

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java |  708 +++++++++++++++++++++-------------------------------------
 1 files changed, 254 insertions(+), 454 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 894c274..a1731be 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
@@ -5,15 +5,14 @@
 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.HttpServletRequest;
 
 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;
@@ -21,33 +20,23 @@
 import com.google.gson.reflect.TypeToken;
 import com.yeshi.fanli.controller.admin.utils.AdminUtils;
 import com.yeshi.fanli.dto.money.AccountDetails;
-import com.yeshi.fanli.entity.admin.UserInfoAdmin;
 import com.yeshi.fanli.entity.bus.user.BindingAccount;
 import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
 import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
-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.common.AdminUser;
 import com.yeshi.fanli.entity.money.UserMoneyDetail;
-import com.yeshi.fanli.entity.taobao.ScanHistory;
 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.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;
@@ -57,6 +46,7 @@
 import com.yeshi.fanli.util.GsonUtil;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.factory.AccountDetailsFactory;
+import com.yeshi.fanli.vo.user.UserInfoVO;
 
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
@@ -68,40 +58,13 @@
 	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 BindingAccountService bindingAccountService;
 
 	@Resource
 	private UserInfoCountService userInfoCountService;
-
-	@Resource
-	private UserActiveLogService userActiveLogService;
 
 	@Resource
 	private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService;
@@ -118,178 +81,14 @@
 	@Resource
 	private UserMoneyDetailService userMoneyDetailService;
 
-	@RequestMapping(value = "getUserList", method = RequestMethod.POST)
-	public void getUserList(int pageIndex, String key, PrintWriter out) {
+	@Resource
+	private UserInfoDeleteRecordService userInfoDeleteRecordService;
 
-		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 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));
-	}
-
-	/**
-	 * 
-	 * @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鏈�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));
-	}
-
-	/**
-	 * 鏌ヨ鐢ㄦ埛淇℃伅鍒楄〃--鐩稿叧鏁版嵁缁熻
+	 * 鏌ヨ鐢ㄦ埛淇℃伅鍒楄〃 姝e父鐢ㄦ埛/寮傚父鐢ㄦ埛
 	 * 
 	 * @param callback
 	 * @param pageIndex
@@ -308,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)
@@ -344,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);
@@ -363,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));
@@ -461,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
@@ -640,52 +280,239 @@
 	 *            闇�瑕佽В缁戠殑璐︽埛绫诲瀷
 	 */
 	@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();
@@ -815,29 +642,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("鎿嶄綔寮傚父"));
-		}
-	}
-
 	/**
 	 * 闃熷憳鍏崇郴
 	 * 
@@ -959,7 +763,6 @@
 		}
 
 		try {
-
 			List<UserMoneyDetail> userMoneyDetailsList = userMoneyDetailService.listByUidWithState(uid, pageIndex,
 					pageSize);
 			if (userMoneyDetailsList == null || userMoneyDetailsList.size() == 0) {
@@ -967,18 +770,15 @@
 				return;
 			}
 
-			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);
 
+			Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
 			JSONObject data = new JSONObject();
 			data.put("pe", pe);
-			data.put("result_list", GsonUtil.toJsonExpose(detailList));
+			data.put("result_list", gson.toJson(userMoneyDetailsList));
 
 			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
 

--
Gitblit v1.8.0