From fae72d9cb11a626cbfda8598613febf73147fe64 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期日, 05 五月 2019 12:36:36 +0800 Subject: [PATCH] 奖励券优化 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java | 26 +++++++++++++++++++++++--- 1 files changed, 23 insertions(+), 3 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java index 6478411..4ad0b51 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java @@ -34,6 +34,7 @@ import com.yeshi.fanli.entity.bus.user.ExtractRecord; import com.yeshi.fanli.entity.bus.user.HongBaoV2; import com.yeshi.fanli.entity.bus.user.PayInfo; +import com.yeshi.fanli.entity.bus.user.UserAccountBindingHistory; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.entity.money.UserMoneyDetail; @@ -46,10 +47,12 @@ import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SystemConfigService; import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service; +import com.yeshi.fanli.service.inter.money.UserMoneyDebtService; import com.yeshi.fanli.service.inter.msg.UserMoneyMsgNotificationService; import com.yeshi.fanli.service.inter.push.PushService; import com.yeshi.fanli.service.inter.user.ExtractRecordService; import com.yeshi.fanli.service.inter.user.ExtractService; +import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserMoneyDetailService; import com.yeshi.fanli.service.inter.user.UserNotificationService; @@ -118,6 +121,12 @@ @Resource private UserMoneyDetailService userMoneyDetailService; + + @Resource + private UserAccountBindingHistoryService userAccountBindingHistoryService; + + @Resource + private UserMoneyDebtService userMoneyDebtService; @Transactional public Integer addExtract(Extract extract) { @@ -228,6 +237,13 @@ */ @Transactional private Integer extract(Extract extract) { + UserAccountBindingHistory history = userAccountBindingHistoryService + .getLatestHistory(extract.getUserInfo().getId(), UserAccountBindingHistory.TYPE_PHONE); + // 鎵嬫満鍙锋洿鎹㈢粦瀹氱殑7澶╁唴涓嶈兘鎻愮幇 + if (history != null && !history.getFirst() + && (System.currentTimeMillis() - history.getCreateTime().getTime()) < 1000 * 60 * 60 * 24 * 7L) + return 111; + final String autoExtract = configService.get("extract_way"); // 鏄惁鑷姩杞处 final String maxCount = configService.get("extract_count_day"); final String maxMoney = configService.get("extract_money_day"); @@ -354,15 +370,15 @@ Constant.alipayConfig.getAppId(), privateKey, "json", "gbk", null, "RSA2"); AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest(); String uuid = UUID.randomUUID().toString().replace("-", ""); - String appName = systemConfigService.get("appName", extract.getSystem()); + String appName = Constant.systemCommonConfig.getProjectChineseName(); JSONObject json = new JSONObject(); json.put("out_biz_no", uuid); json.put("payee_type", "ALIPAY_LOGONID"); json.put("payee_account", extract.getAccount()); json.put("amount", extract.getMoney()); - json.put("payer_show_name", appName + "鎻愮幇"); + json.put("payer_show_name", appName + "App" + "鎻愮幇"); json.put("payee_real_name", extract.getName()); - json.put("remark", "鏉ヨ嚜" + appName + "鐨勬彁鐜�"); + json.put("remark", "鏉ヨ嚜" + appName + "App" + "鐨勬彁鐜�"); request.setBizContent(json.toString()); AlipayFundTransToaccountTransferResponse response = null; try { @@ -494,6 +510,10 @@ Long count = hongBaoV2Mapper.countByUidAndState(uid, HongBao.STATE_YILINGQU); if (count == null || count == 0) throw new ExtractException(1, "娌℃湁宸插埌璐︾殑绾㈠寘"); + // 鏌ヨ鏄惁鏈夋瑺璐� + boolean isDebt = userMoneyDebtService.isHaveDebtToRepay(uid); + if (isDebt) + throw new ExtractException(3, "鏈夋瑺璐︽湭杩�"); // 鑾峰彇鎵�鏈夋敹鍏ユ墍寰� BigDecimal hongBaoMoney = hongBaoV2Service.computeMoneyByUidAndState(uid, HongBaoV2.STATE_YILINGQU); -- Gitblit v1.8.0