From bf5c02aaecb3f7a42daa4fa356c62a2e6bca0db5 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期一, 28 十月 2019 09:55:59 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/ExtractServiceImpl.java |  361 +++++++++++++++++++++++++-------------------------
 1 files changed, 181 insertions(+), 180 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/ExtractServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/ExtractServiceImpl.java
index 1d9f049..4a5a8cd 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/ExtractServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/ExtractServiceImpl.java
@@ -147,10 +147,9 @@
 
 	@Resource
 	private OrderUserStatisticService orderUserStatisticService;
-	
+
 	@Resource
 	private ExtractWeiXinRecordService extractWeiXinRecordService;
-	
 
 	@Transactional
 	public Integer addExtract(Extract extract) {
@@ -394,17 +393,17 @@
 	 * @param extract
 	 * @param session
 	 */
-	//TODO 杞处閫昏緫闇�瑕佹敼鍙橈紝鍥哄畾IP
+	// TODO 杞处閫昏緫闇�瑕佹敼鍙橈紝鍥哄畾IP
 	@Transactional
 	private void extractByZhiFuBao(Extract extract, AdminUser adminUser) {
-		LogHelper.userErrorInfo("鎻愮幇:寮�濮嬮�氳繃鎻愮幇-"+extract.getId());
+		LogHelper.userErrorInfo("鎻愮幇:寮�濮嬮�氳繃鎻愮幇-" + extract.getId());
 		String privateKey = Constant.alipayConfig.getPrivateKey();
 		AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",
 				Constant.alipayConfig.getAppId(), privateKey, "json", "gbk", null, "RSA2");
 		AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest();
 		String appName = Constant.systemCommonConfig.getProjectChineseName();
 		JSONObject json = new JSONObject();
-		json.put("out_biz_no", "widthdraw_"+extract.getId());//鏈�闀块暱搴�64浣嶏紝鏀寔鑻辨枃锛屼笅鍒掔嚎锛屾暟瀛�
+		json.put("out_biz_no", "widthdraw_" + extract.getId());// 鏈�闀块暱搴�64浣嶏紝鏀寔鑻辨枃锛屼笅鍒掔嚎锛屾暟瀛�
 		json.put("payee_type", "ALIPAY_LOGONID");
 		json.put("payee_account", extract.getAccount());
 		json.put("amount", extract.getMoney());
@@ -415,7 +414,7 @@
 		AlipayFundTransToaccountTransferResponse response = null;
 		try {
 			response = alipayClient.execute(request);
-			LogHelper.userErrorInfo("鎻愮幇:鏀粯瀹濋�氳繃鎻愮幇鎴愬姛-"+extract.getId());
+			LogHelper.userErrorInfo("鎻愮幇:鏀粯瀹濋�氳繃鎻愮幇鎴愬姛-" + extract.getId());
 		} catch (AlipayApiException e) {
 			e.printStackTrace();
 			LogHelper.userErrorInfo("鎻愮幇:鏀粯瀹濇彁鐜板紓甯革細" + response + ",鎻愮幇淇℃伅" + GsonUtil.toJson(extract));
@@ -423,9 +422,10 @@
 
 		try {
 			CMQManager.getInstance().addExtractResultMsg(extract, response, adminUser);
-			LogHelper.userErrorInfo("鎻愮幇:娣诲姞澶勭悊闃熷垪鎴愬姛-"+extract.getId());
+			LogHelper.userErrorInfo("鎻愮幇:娣诲姞澶勭悊闃熷垪鎴愬姛-" + extract.getId());
 		} catch (Exception e) {
-			LogHelper.userErrorInfo("鎻愮幇:鏀粯瀹濇彁鐜癈MQ寮傚父锛�" + new Gson().toJson(response) + ",鎻愮幇淇℃伅" + GsonUtil.toJson(extract));
+			LogHelper
+					.userErrorInfo("鎻愮幇:鏀粯瀹濇彁鐜癈MQ寮傚父锛�" + new Gson().toJson(response) + ",鎻愮幇淇℃伅" + GsonUtil.toJson(extract));
 		}
 	}
 
@@ -683,7 +683,16 @@
 
 			// 鏇存柊鎻愮幇璁板綍瀹℃牳琛�
 			extractAuditRecordMapper.updateByPrimaryKeySelective(auditRecord);
+		}
 
+		// 澶栨樉璐︽埛鏄庣粏
+		UserMoneyDetail userMoneyDetail = userMoneyDetailMapper.selectByTypeAndUidAndIdentifyCode(
+				UserMoneyDetailTypeEnum.extract, extract.getUserInfo().getId(), extract.getId());
+		if (userMoneyDetail != null) {
+			UserMoneyDetail detail = new UserMoneyDetail(userMoneyDetail.getId());
+			detail.setShow(true);
+			detail.setUpdateTime(new Date());
+			userMoneyDetailMapper.updateByPrimaryKeySelective(detail);
 		}
 
 	}
@@ -737,55 +746,53 @@
 	}
 
 	@Override
-	public BigDecimal sumTodayApplyMoney(Long uid,String day) {
-		return extractMapper.sumToadyApplyByUid(uid,day);
+	public BigDecimal sumTodayApplyMoney(Long uid, String day) {
+		return extractMapper.sumToadyApplyByUid(uid, day);
 	}
 
 	@Override
 	public BigDecimal sumVerifyingMoney(Long uid) {
-		List<Integer> stateList=new ArrayList<>();
-        stateList.add(Extract.STATE_NOT_PROCESS);
-        stateList.add(Extract.STATE_PROCESSING);
-		BigDecimal money= extractMapper.sumMoneyByUidAndState(uid, stateList);
-		if(money==null)
+		List<Integer> stateList = new ArrayList<>();
+		stateList.add(Extract.STATE_NOT_PROCESS);
+		stateList.add(Extract.STATE_PROCESSING);
+		BigDecimal money = extractMapper.sumMoneyByUidAndState(uid, stateList);
+		if (money == null)
 			return new BigDecimal(0);
 		else
 			return money;
 	}
-	
-	
-	
+
 	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void autoExtract(UserInfo user) {
-		if (user == null || user.getWxOpenId() == null || user.getWxUnionId() == null ||
-				user.getState() != UserInfo.STATE_NORMAL)
+		if (user == null || user.getWxOpenId() == null || user.getWxUnionId() == null
+				|| user.getState() != UserInfo.STATE_NORMAL)
 			return;
-		
+
 		Date date = new Date();
 		BigDecimal money = new BigDecimal(Constant.AUTO_EXTRACT_MONEY);
-		
+
 		// 1銆佹彃鍏ヨ褰�
 		ExtractWeiXinRecord extractRecord = new ExtractWeiXinRecord();
 		extractRecord.setUid(user.getId());
 		extractRecord.setOpenId(user.getWxOpenId());
-		extractRecord.setUnionId(user.getWxUnionId() );
+		extractRecord.setUnionId(user.getWxUnionId());
 		extractRecord.setMoney(money);
 		extractRecord.setCreateTime(date);
 		extractRecord.setUpdateTime(date);
 		extractWeiXinRecordService.insertSelective(extractRecord);
-		
+
 		// 浜ゆ槗鍙�
 		Long recordId = extractRecord.getId();
 		String billno = "BanLiExtract" + recordId;
-		
+
 		// 鏇存柊璁板綍
 		ExtractWeiXinRecord updeteRecord = null;
-		
+
 		String mchId = "1520950211";
 		String appId = "wx5c0d167c6e3ad726";
 		String key = "XYJkJ2018FAfaodCCx899mLl138rfGVd";
-		
+
 		// 2銆佸彂鏀惧井淇$孩鍖�
 		RedPackParams redPackParams = new RedPackParams();
 		redPackParams.setBillno(billno);
@@ -800,22 +807,22 @@
 		redPackParams.setActName("鑷姩鎻愮幇");
 		redPackParams.setKey(key);
 		redPackParams.setRemark("寰俊鑷姩鎻愮幇");
-		//redPackParams.setSceneId(null);
-		//redPackParams.setRiskInfo(null);
-		
-		
+		// redPackParams.setSceneId(null);
+		// redPackParams.setRiskInfo(null);
+
 		// 鍙戠敓绾㈠寘鐘舵��
 		boolean stateRedPack = false;
-		
+
 		String pwd = "1520950211";
-		InputStream cert = ExtractServiceImpl.class.getClassLoader().getResourceAsStream("certificate/apiclient_cert.p12"); // 璇诲彇.p12鏂囦欢
+		InputStream cert = ExtractServiceImpl.class.getClassLoader()
+				.getResourceAsStream("certificate/apiclient_cert.p12"); // 璇诲彇.p12鏂囦欢
 		// 鎵ц鍙戞斁绾㈠寘
 		try {
 			String result = WXPayUtil.redPackToOpenId(redPackParams, pwd, cert);
 			if (!StringUtil.isNullOrEmpty(result)) {
 				stateRedPack = parseSendResult(result);
 			}
-			
+
 			if (!stateRedPack) {
 				String redPackRecord = WXPayUtil.getRedPackRecord(billno, mchId, appId, key, pwd, cert);
 				if (!StringUtil.isNullOrEmpty(redPackRecord)) {
@@ -834,23 +841,23 @@
 		} catch (IOException e1) {
 			e1.printStackTrace();
 		}
-		
+
 		// 鏇存柊淇℃伅
 		if (updeteRecord == null) {
 			updeteRecord = new ExtractWeiXinRecord();
 		} else {
 			stateRedPack = true;
 		}
-		
+
 		updeteRecord.setId(recordId);
 		updeteRecord.setStatus(ExtractWeiXinRecord.SENDING);
 		updeteRecord.setBillno(billno);
 		extractWeiXinRecordService.updateByPrimaryKeySelective(updeteRecord);
-		
+
 		// 绾㈠寘鍙戞斁澶辫触
-		if (!stateRedPack) 
-			return; 
-		
+		if (!stateRedPack)
+			return;
+
 		// 3銆佸姞鍏ヨ祫閲戞槑缁�
 		UserMoneyDetail detail = new UserMoneyDetail();
 		detail.setCreateTime(new Date());
@@ -865,96 +872,92 @@
 		} catch (UserMoneyDetailException e) {
 			LogHelper.errorDetailInfo(e);
 		}
-		
+
 		// 4銆佸彂閫佹秷鎭�氱煡
 		String desc = "涓轰繚闅滀綘鐨勮处鎴蜂綑棰濆畨鍏紝鑷姩鎻愮幇閲戦灏嗕笉浼氶珮浜�5鍏�";
 		String beizu = "璐︽埛涓墿浣欎綑棰濊鍦ㄦ湰App鍐呭畬鎴愭彁鐜�";
 		userMoneyMsgNotificationService.extractAuto(extractRecord, "鏈鍙�-鎻愮幇涓�", desc, beizu);
 	}
 
-	
 	private boolean parseSendResult(String result) {
 		try {
 			Document document = DocumentHelper.parseText(result);
 			// 鑾峰彇鏍硅妭鐐瑰厓绱犲璞�
-		    Element root = document.getRootElement();
-		    Element returnCode = root.element("return_code");
-		   
-		    if (!"SUCCESS".equalsIgnoreCase(returnCode.getText())) {
-		    	Element returnMsg = root.element("return_msg");
-		    	System.out.println(returnMsg.getText()); 
-		    	return false;
-		    } 
-		    
-	    	Element resultCode = root.element("result_code");
-	    	if (!"SUCCESS".equalsIgnoreCase(resultCode.getText())) {
-		    	Element errCode = root.element("err_code");
-		    	Element errCodeDes = root.element("err_code_des");
-		    	System.out.println(errCode.getText() + ":" + errCodeDes.getText()); 
-		    	return false;
-	    	}
-	    	return true;
+			Element root = document.getRootElement();
+			Element returnCode = root.element("return_code");
+
+			if (!"SUCCESS".equalsIgnoreCase(returnCode.getText())) {
+				Element returnMsg = root.element("return_msg");
+				System.out.println(returnMsg.getText());
+				return false;
+			}
+
+			Element resultCode = root.element("result_code");
+			if (!"SUCCESS".equalsIgnoreCase(resultCode.getText())) {
+				Element errCode = root.element("err_code");
+				Element errCodeDes = root.element("err_code_des");
+				System.out.println(errCode.getText() + ":" + errCodeDes.getText());
+				return false;
+			}
+			return true;
 		} catch (DocumentException e) {
 			e.printStackTrace();
 			LogHelper.errorDetailInfo(e);
 		}
 		return false;
 	}
-	
-	
+
 	private ExtractWeiXinRecord parseDTO(String result) {
 		try {
-			
+
 			Document document = DocumentHelper.parseText(result);
 			// 鑾峰彇鏍硅妭鐐瑰厓绱犲璞�
-		    Element root = document.getRootElement();
-		    Element returnCode = root.element("return_code");
-		   
-		    if (!"SUCCESS".equalsIgnoreCase(returnCode.getText())) {
-		    	Element returnMsg = root.element("return_msg");
-		    	System.out.println(returnMsg.getText()); 
-		    	return null;
-		    } 
-		    
-	    	Element resultCode = root.element("result_code");
-	    	if (!"SUCCESS".equalsIgnoreCase(resultCode.getText())) {
-		    	Element errCode = root.element("err_code");
-		    	Element errCodeDes = root.element("err_code_des");
-		    	System.out.println(errCode.getText() + ":" + errCodeDes.getText()); 
-	    	}
-		    	
-	    	ExtractWeiXinRecord resultRecord = new ExtractWeiXinRecord();
-	    	resultRecord.setBillno(root.element("result_code").getText());
-	    	resultRecord.setDetailno(root.element("detail_id").getText());
-	    	resultRecord.setStatus(root.element("status").getText());
-	    	resultRecord.setSendType(root.element("send_type").getText());
-	    	resultRecord.setHbType(root.element("result_code").getText());
-	    	
-	    	String totalNum = root.element("total_num").getText();
-	    	resultRecord.setTotalNum(Integer.parseInt(totalNum));
-	    	
-	    	String sendTime = root.element("send_time").getText();
-	    	resultRecord.setSendTime(new Date(TimeUtil.convertDateToTemp2(sendTime)));
-	    	
-	    	 Element element = root.element("hblist");
-	    	 Iterator<?> iterator = element.elementIterator();
-	         while (iterator.hasNext()) {
-	             Element childElement = (Element)iterator.next();
-                 Element rcvTime = childElement.element("rcv_time");
-                 resultRecord.setRcvTime(new Date(TimeUtil.convertDateToTemp2(rcvTime.getText())));
-                 break;
-	        } 
-	    	return resultRecord;
-	    	
+			Element root = document.getRootElement();
+			Element returnCode = root.element("return_code");
+
+			if (!"SUCCESS".equalsIgnoreCase(returnCode.getText())) {
+				Element returnMsg = root.element("return_msg");
+				System.out.println(returnMsg.getText());
+				return null;
+			}
+
+			Element resultCode = root.element("result_code");
+			if (!"SUCCESS".equalsIgnoreCase(resultCode.getText())) {
+				Element errCode = root.element("err_code");
+				Element errCodeDes = root.element("err_code_des");
+				System.out.println(errCode.getText() + ":" + errCodeDes.getText());
+			}
+
+			ExtractWeiXinRecord resultRecord = new ExtractWeiXinRecord();
+			resultRecord.setBillno(root.element("result_code").getText());
+			resultRecord.setDetailno(root.element("detail_id").getText());
+			resultRecord.setStatus(root.element("status").getText());
+			resultRecord.setSendType(root.element("send_type").getText());
+			resultRecord.setHbType(root.element("result_code").getText());
+
+			String totalNum = root.element("total_num").getText();
+			resultRecord.setTotalNum(Integer.parseInt(totalNum));
+
+			String sendTime = root.element("send_time").getText();
+			resultRecord.setSendTime(new Date(TimeUtil.convertDateToTemp2(sendTime)));
+
+			Element element = root.element("hblist");
+			Iterator<?> iterator = element.elementIterator();
+			while (iterator.hasNext()) {
+				Element childElement = (Element) iterator.next();
+				Element rcvTime = childElement.element("rcv_time");
+				resultRecord.setRcvTime(new Date(TimeUtil.convertDateToTemp2(rcvTime.getText())));
+				break;
+			}
+			return resultRecord;
+
 		} catch (DocumentException e) {
 			e.printStackTrace();
 			LogHelper.errorDetailInfo(e);
 		}
 		return null;
 	}
-	
-	
-	
+
 	@Override
 	public List<UserInfo> preAutoUser() throws Exception {
 		int page = 0;
@@ -968,54 +971,53 @@
 		String receivedDate = DateUtil.reduceDayTostring(30, nowDate);
 		// 鏉′欢4锛氳窛绂讳笂涓�娆℃湭鎴愬姛棰嗗彇寰俊绾㈠寘宸茬粡瓒呰繃浜�15澶╂椂闂达紝鍙湪绗�16澶╁啀娆′笅鍙戯紱
 		String refundDate = DateUtil.reduceDayTostring(15, nowDate);
-		
+
 		// 浣欓鏈�浣庨檺鍒�
 		BigDecimal minSurplus = BigDecimal.valueOf(Constant.AUTO_EXTRACT_MIN_SURPLUS);
-		
+
 		List<UserInfo> list = new ArrayList<UserInfo>();
-		
+
 		while (true) {
 			// 鏌ヨ婊¤冻鏉′欢 1銆�2 鐨剈id
-			List<UserInfo> listUser = userInfoService.getAutoExtractUser(page * pageSize, pageSize, minSurplus, beganDate, endDate);
+			List<UserInfo> listUser = userInfoService.getAutoExtractUser(page * pageSize, pageSize, minSurplus,
+					beganDate, endDate);
 			if (listUser == null || listUser.isEmpty())
 				break;
-			
+
 			List<Long> listId = new ArrayList<Long>();
-			for (UserInfo userInfo: listUser) {
+			for (UserInfo userInfo : listUser) {
 				listId.add(userInfo.getId());
 			}
-			
+
 			// 鏌ヨ璁板綍鏄惁婊¤冻
 			List<Long> listValid = extractWeiXinRecordService.getValidUsers(listId, receivedDate, refundDate);
 			if (listValid == null || listValid.isEmpty()) {
-				page ++;
+				page++;
 				continue;
 			}
-			
-			for (Long uid: listValid) {
+
+			for (Long uid : listValid) {
 				if (list.size() >= maxSize)
 					break;
-				for (UserInfo userInfo: listUser) {
+				for (UserInfo userInfo : listUser) {
 					if (list.size() >= maxSize)
 						break;
-					
+
 					if (userInfo.getId().longValue() == uid.longValue()) {
 						list.add(userInfo);
 						break;
 					}
 				}
 			}
-			
+
 			if (list.size() >= maxSize)
 				break;
-			
-			page ++;
+
+			page++;
 		}
 		return list;
 	}
-	
-	
-	
+
 	@Override
 	public List<String> getAutoExtractOpenIds() throws Exception {
 		int page = 0;
@@ -1029,35 +1031,36 @@
 		String receivedDate = DateUtil.reduceDayTostring(30, nowDate);
 		// 鏉′欢4锛氳窛绂讳笂涓�娆℃湭鎴愬姛棰嗗彇寰俊绾㈠寘宸茬粡瓒呰繃浜�15澶╂椂闂达紝鍙湪绗�16澶╁啀娆′笅鍙戯紱
 		String refundDate = DateUtil.reduceDayTostring(15, nowDate);
-		
+
 		// 鎻愮幇閲戦
 		BigDecimal money = BigDecimal.valueOf(Constant.AUTO_EXTRACT_MONEY);
 		// 浣欓鏈�浣庨檺鍒�
 		BigDecimal minSurplus = BigDecimal.valueOf(Constant.AUTO_EXTRACT_MIN_SURPLUS);
-		
+
 		List<String> listOpendIDs = new ArrayList<String>();
 		// 棣栬appID
 		listOpendIDs.add(Constant.getWXAccount(null, null).getAppId());
-		
+
 		while (true) {
 			// 鏌ヨ婊¤冻鏉′欢 1銆�2 鐨剈id
-			List<UserInfo> listUser = userInfoService.getAutoExtractUser(page * pageSize, pageSize, minSurplus, beganDate, endDate);
+			List<UserInfo> listUser = userInfoService.getAutoExtractUser(page * pageSize, pageSize, minSurplus,
+					beganDate, endDate);
 			if (listUser == null || listUser.isEmpty())
 				break;
-			
+
 			List<Long> listId = new ArrayList<Long>();
-			for (UserInfo userInfo: listUser) {
+			for (UserInfo userInfo : listUser) {
 				listId.add(userInfo.getId());
 			}
-			
+
 			// 鏌ヨ璁板綍鏄惁婊¤冻
 			List<Long> listValid = extractWeiXinRecordService.getValidUsers(listId, receivedDate, refundDate);
 			if (listValid == null || listValid.isEmpty()) {
-				page ++;
+				page++;
 				continue;
 			}
-			
-			for (Long uid: listValid) {
+
+			for (Long uid : listValid) {
 				UserInfo userInfo = subHongBaoByUid(uid, money, minSurplus);
 				if (userInfo != null) {
 					listOpendIDs.add(userInfo.getWxOpenId());
@@ -1065,22 +1068,21 @@
 						break;
 				}
 			}
-			
+
 			if (listOpendIDs.size() >= maxSize)
 				break;
-			
-			page ++;
+
+			page++;
 		}
 		return listOpendIDs;
 	}
-	
-	
-	
+
 	@Transactional(rollbackFor = Exception.class)
 	private UserInfo subHongBaoByUid(Long uid, BigDecimal money, BigDecimal minSurplus) {
 		UserInfo userInfo = userInfoMapper.selectByPrimaryKeyForUpdate(uid);
 		if (userInfo != null && !StringUtil.isNullOrEmpty(userInfo.getWxOpenId())
-				&& !StringUtil.isNullOrEmpty(userInfo.getWxUnionId()) && userInfo.getMyHongBao().compareTo(minSurplus) >= 0) {
+				&& !StringUtil.isNullOrEmpty(userInfo.getWxUnionId())
+				&& userInfo.getMyHongBao().compareTo(minSurplus) >= 0) {
 			// 寰俊鎻愮幇璁板綍
 			ExtractWeiXinRecord extractRecord = new ExtractWeiXinRecord();
 			extractRecord.setUid(uid);
@@ -1094,17 +1096,17 @@
 			extractWeiXinRecordService.insertSelective(extractRecord);
 			// 璁板綍id
 			Long recordId = extractRecord.getId();
-			
+
 			// 璧勯噾鏄庣粏
 			UserMoneyDetail detail = new UserMoneyDetail();
 			detail.setCreateTime(new Date());
 			detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.extractAutoWX.name() + ":" + recordId));
-			detail.setMoney(new BigDecimal("-"+ money.toString()));
+			detail.setMoney(new BigDecimal("-" + money.toString()));
 			detail.setTitle(UserMoneyDetailTypeEnum.extractAutoWX.getDesc());
 			detail.setType(UserMoneyDetailTypeEnum.extractAutoWX);
 			detail.setUpdateTime(new Date());
 			detail.setUserInfo(userInfo);
-			
+
 			// 璧勯噾璁$畻
 			userMoneyService.subUserMoney(userInfo.getId(), money, detail);
 
@@ -1112,54 +1114,52 @@
 			String desc = "涓轰繚闅滀綘鐨勮处鎴蜂綑棰濆畨鍏紝鑷姩鎻愮幇閲戦灏嗕笉浼氶珮浜�5鍏�";
 			String beizu = "璐︽埛涓墿浣欎綑棰濊鍦ㄦ湰App鍐呭畬鎴愭彁鐜�";
 			userMoneyMsgNotificationService.extractAuto(extractRecord, "鏈鍙�-鎻愮幇涓�", desc, beizu);
-			
+
 			// 婊¤冻鏉′欢杩斿洖淇℃伅
 			return userInfo;
 		}
 		return null;
 	}
-	
-	
+
 	@Override
-	public void updateManualExtractRecord(List<RedPackRecord> list) throws ExtractException{
+	public void updateManualExtractRecord(List<RedPackRecord> list) throws ExtractException {
 		if (list == null || list.isEmpty())
 			throw new ExtractException(1, "绾㈠寘璁板綍淇℃伅涓虹┖");
-		
-		for (RedPackRecord redPackRecord: list) {
+
+		for (RedPackRecord redPackRecord : list) {
 			updateWeiXinRecord(redPackRecord);
 		}
 	}
-	
-	
+
 	@Transactional(rollbackFor = Exception.class)
-	private void updateWeiXinRecord(RedPackRecord redPackRecord){
+	private void updateWeiXinRecord(RedPackRecord redPackRecord) {
 		if (StringUtil.isNullOrEmpty(redPackRecord.getOpenId()))
 			return;
-		
-		ExtractWeiXinRecord record  = extractWeiXinRecordService.getByOpenIdAndType(redPackRecord.getOpenId(), ExtractWeiXinRecord.TYPE_MANUAL);
+
+		ExtractWeiXinRecord record = extractWeiXinRecordService.getByOpenIdAndType(redPackRecord.getOpenId(),
+				ExtractWeiXinRecord.TYPE_MANUAL);
 		if (record == null)
 			return;
-			
+
 		// 鐘舵�佽繃婊�
 		String statusOld = record.getStatus();
-		if (StringUtil.isNullOrEmpty(statusOld) || ExtractWeiXinRecord.REFUND.equals(statusOld) 
-				|| ExtractWeiXinRecord.RECEIVED.equals(statusOld)) 
+		if (StringUtil.isNullOrEmpty(statusOld) || ExtractWeiXinRecord.REFUND.equals(statusOld)
+				|| ExtractWeiXinRecord.RECEIVED.equals(statusOld))
 			return;
-		
+
 		ExtractWeiXinRecord updeteRecord = new ExtractWeiXinRecord();
 		updeteRecord.setId(record.getId());
 		updeteRecord.setUpdateTime(new Date());
-		
+
 		String billno = redPackRecord.getBillno();
 		if (!StringUtil.isNullOrEmpty(billno)) {
 			updeteRecord.setBillno(billno.replace("`", "").replace("'", ""));
 		}
-		
+
 		String detailno = redPackRecord.getDetailno();
 		if (!StringUtil.isNullOrEmpty(detailno)) {
 			updeteRecord.setDetailno(detailno.replace("`", "").replace("'", ""));
 		}
-		
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
 		String rcvTime = redPackRecord.getRcvTime();
 		if (!StringUtil.isNullOrEmpty(rcvTime)) {
@@ -1169,7 +1169,7 @@
 				e.printStackTrace();
 			}
 		}
-		
+
 		String sendTime = redPackRecord.getSendTime();
 		if (!StringUtil.isNullOrEmpty(sendTime)) {
 			try {
@@ -1178,27 +1178,27 @@
 				e.printStackTrace();
 			}
 		}
-		
+
 		String status = redPackRecord.getStatus();
 		if (!StringUtil.isNullOrEmpty(status)) {
 			switch (status) {
-				case "宸插彂鏀惧緟棰嗗彇":
-					status = ExtractWeiXinRecord.SENT;
-					break;
-				case "杩囨湡鏈閫�娆�":
-					status = ExtractWeiXinRecord.REFUND;
-					break;
-				case "宸查鍙�":
-					status = ExtractWeiXinRecord.RECEIVED;
-					break;
-				default:
-					status = null;
-					break;
-			}  
+			case "宸插彂鏀惧緟棰嗗彇":
+				status = ExtractWeiXinRecord.SENT;
+				break;
+			case "杩囨湡鏈閫�娆�":
+				status = ExtractWeiXinRecord.REFUND;
+				break;
+			case "宸查鍙�":
+				status = ExtractWeiXinRecord.RECEIVED;
+				break;
+			default:
+				status = null;
+				break;
+			}
 		}
 		updeteRecord.setStatus(status);
 		extractWeiXinRecordService.updateByPrimaryKeySelective(updeteRecord);
-		
+
 		if (ExtractWeiXinRecord.RECEIVED.equals(status)) {
 			// 鍙戦�佹秷鎭�氱煡
 			userMoneyMsgNotificationService.extractAuto(record, "宸查鍙�-宸叉彁鐜�", null, null);
@@ -1206,19 +1206,20 @@
 			// 璧勯噾鏄庣粏
 			UserMoneyDetail detail = new UserMoneyDetail();
 			detail.setCreateTime(new Date());
-			detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.extractAutoWXRefund.name() + ":" + record.getId()));
+			detail.setIdentifyCode(
+					StringUtil.Md5(UserMoneyDetailTypeEnum.extractAutoWXRefund.name() + ":" + record.getId()));
 			detail.setMoney(record.getMoney());
 			detail.setTitle(UserMoneyDetailTypeEnum.extractAutoWXRefund.getDesc());
 			detail.setType(UserMoneyDetailTypeEnum.extractAutoWXRefund);
 			detail.setUpdateTime(new Date());
 			detail.setUserInfo(new UserInfo(record.getUid()));
-			
+
 			// 璧勯噾璁$畻
 			userMoneyService.addUserMoney(record.getUid(), record.getMoney(), detail);
-			
+
 			// 鍙戦�佹秷鎭�氱煡
 			userMoneyMsgNotificationService.extractAuto(record, "宸查��鍥�-浣欓涓�", null, null);
 		}
 	}
-	
+
 }

--
Gitblit v1.8.0