From b59fef5c00b15fdfdfa9d4be26e5bf6b41c75458 Mon Sep 17 00:00:00 2001 From: admin <2780501319@qq.com> Date: 星期日, 23 二月 2020 00:16:52 +0800 Subject: [PATCH] 2.0.7相关服务端功能添加 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMoneyController.java | 140 +++++++++++++++++++++++++++++++++++++++------- 1 files changed, 119 insertions(+), 21 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMoneyController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMoneyController.java index ff64900..217959a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMoneyController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMoneyController.java @@ -4,6 +4,7 @@ import java.io.PrintWriter; import java.lang.reflect.Type; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -28,13 +29,18 @@ import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.bus.user.UserInfoExtra; import com.yeshi.fanli.entity.money.UserMoneyDetail.UserMoneyDetailTypeEnum; -import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service; -import com.yeshi.fanli.service.inter.user.ExtractService; +import com.yeshi.fanli.entity.system.ConfigKeyEnum; +import com.yeshi.fanli.exception.user.UserInfoExtraException; +import com.yeshi.fanli.service.inter.config.ConfigService; +import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; +import com.yeshi.fanli.service.inter.money.UserMoneyDetailService; +import com.yeshi.fanli.service.inter.money.extract.ExtractService; +import com.yeshi.fanli.service.inter.order.HongBaoV2Service; 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.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; +import com.yeshi.fanli.util.VersionUtil; import com.yeshi.fanli.vo.money.UserMoneyDetailHistoryVO; import com.yeshi.fanli.vo.money.UserMoneyStatisticVO; @@ -65,6 +71,12 @@ @Resource private UserInfoExtraService userInfoExtraService; + @Resource + private ConfigService configService; + + @Resource + private HongBaoV2CountService hongBaoV2CountService; + /** * 鏂扮増璧勯噾璇︽儏锛�1.4.9锛� * @@ -76,11 +88,14 @@ * 骞翠唤 * @param month * 鏈堜唤 + * @param type + * 1-鏀跺叆 2-鏀嚭 0-鍏ㄩ儴 + * * @param out */ @RequestMapping(value = "getUserMoneyDetailList") public void getUserMoneyDetailList(AcceptData acceptData, Long uid, Long index, Integer year, Integer month, - PrintWriter out) { + Integer type, PrintWriter out) { if (uid == null || uid == 0) { out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); return; @@ -101,8 +116,9 @@ date = new Date(ca.getTimeInMillis() - 1); } - List<UserMoneyDetailHistoryVO> list = userMoneyDetailService.listUserMoneyDetailForClient(uid, index, date); - long count = userMoneyDetailService.countUserMoneyDetailForClient(uid, index, date); + List<UserMoneyDetailHistoryVO> list = userMoneyDetailService.listUserMoneyDetailForClient(uid, index, type, + date); + long count = userMoneyDetailService.countUserMoneyDetailForClient(uid, index, type, date); GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation(); gsonBuilder.registerTypeAdapter(UserMoneyDetailTypeEnum.class, new TypeAdapter<UserMoneyDetailTypeEnum>() { @Override @@ -278,7 +294,8 @@ TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy-MM"), "yyyy-MM")); // 鏈湀鏈埌璐� - vo.setMonthUnRecievedMoney(hongBaoV2Service.getUnRecievedMoneyWithPreGetTime(uid, minDate, maxDate)); + BigDecimal monthUnRecievedMoney = hongBaoV2Service.getUnRecievedMoneyWithPreGetTime(uid, minDate, maxDate); + vo.setMonthUnRecievedMoney(monthUnRecievedMoney); // 鍏ㄩ儴鏈埌璐� minDate = new Date(0); @@ -298,24 +315,105 @@ } }); - // 鑾峰彇鎻愮幇涓殑淇℃伅 + if (VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion())) { + // 鑾峰彇鎻愮幇涓殑淇℃伅 + BigDecimal extractingMoney = extractService.sumVerifyingMoney(uid); + if (extractingMoney.compareTo(new BigDecimal(0)) > 0) + vo.setExtractingMoneyInfo("鎻愮幇涓�:楼" + extractingMoney.setScale(2, RoundingMode.HALF_UP)); + // 鑾峰彇鏄惁缁戝畾浜嗗井淇� + if (!StringUtil.isNullOrEmpty(user.getWxUnionId())) { + vo.setBindingWX(true); + } else + vo.setBindingWX(false); - BigDecimal extractingMoney = extractService.sumVerifyingMoney(uid); - if (extractingMoney.compareTo(new BigDecimal(0)) > 0) - vo.setExtractingMoneyInfo("鎻愮幇涓�:楼" + extractingMoney.setScale(2)); - // 鑾峰彇鏄惁缁戝畾浜嗗井淇� - if (!StringUtil.isNullOrEmpty(user.getWxUnionId())) { - vo.setBindingWX(true); - } else - vo.setBindingWX(false); + UserInfoExtra extra = userInfoExtraService.getUserInfoExtra(uid); + // 濡傛灉缁戝畾浜嗗井淇¤�屼笖鏈紑閫氳嚜鍔ㄦ彁鐜板氨鍏堝紑閫氳嚜鍔ㄦ彁鐜� + if (extra.getAutoExtract() == null && !StringUtil.isNullOrEmpty(user.getWxUnionId())) { + UserInfoExtra update = new UserInfoExtra(); + update.setId(extra.getId()); + update.setAutoExtract(true); + try { + userInfoExtraService.saveUserInfoExtra(update);// 璁剧疆鑷姩鎻愮幇寮�鍚� + extra.setAutoExtract(true); + } catch (UserInfoExtraException e) { + e.printStackTrace(); + } + } - UserInfoExtra extra = userInfoExtraService.getUserInfoExtra(uid); - if (extra != null && extra.getAutoExtract() != null && extra.getAutoExtract() == true) - vo.setAutoExtract(true); - else - vo.setAutoExtract(false); + if (extra != null && extra.getAutoExtract() != null && extra.getAutoExtract() == true) + vo.setAutoExtract(true); + else + vo.setAutoExtract(false); + + vo.setAutoExtractHelpUrl(configService.get(ConfigKeyEnum.autoExtractHelpUrl.getKey())); + vo.setOpenAutoExtractMsg("鑷姩鎻愮幇蹇呴』瑕佸井淇℃巿鏉冿紝褰撹处鎴蜂腑鐨勪綑棰濃墺2鍏冩椂锛岀郴缁熷湪淇濋殰浣犺祫閲戝畨鍏ㄧ殑鎯呭喌涓嬶紝浠ュ井淇$孩鍖呯殑褰㈠紡瀹屾垚鎻愮幇"); + vo.setCloseAutoExtractMsg("鍏抽棴鑷姩鎻愮幇鍚庯紝60澶╀互鍐呭皢涓嶈嚜鍔ㄦ彁鐜帮紝60澶╁悗绯荤粺灏嗕細鑷姩寮�鍚紝鏁鐭ユ檽"); + } out.print(JsonUtil.loadTrueResult(builder.create().toJson(vo))); } + /** + * 鑷姩鎻愮幇 + * + * @param acceptData + * @param type + * @param out + */ + @RequestMapping("autoExtract") + public void autoExtract(AcceptData acceptData, Long uid, Integer type, PrintWriter out) { + if (type == null) { + out.print(JsonUtil.loadFalseResult("璇蜂笂浼爐ype")); + return; + } + if (uid == null) { + out.print(JsonUtil.loadFalseResult("鐢ㄦ埗鏈櫥褰�")); + return; + } + + UserInfoExtra userExtra = userInfoExtraService.getUserInfoExtra(uid); + UserInfo user = userInfoService.selectByPKey(uid); + if (user == null) { + out.print(JsonUtil.loadFalseResult("鐢ㄦ埗涓嶅瓨鍦�")); + return; + } + if (type == 1)// 寮�鍚� + { + if (userExtra.getAutoExtract() == null || userExtra.getAutoExtract() == false) { + if (StringUtil.isNullOrEmpty(user.getWxUnionId()))// 灏氭湭缍佸畾寰俊 + { + out.print(JsonUtil.loadFalseResult("鏈秮瀹氬井淇�")); + return; + } + // 璁剧疆鑷姩鎻愮幇 + UserInfoExtra update = new UserInfoExtra(); + update.setId(userExtra.getId()); + update.setAutoExtract(true); + try { + userInfoExtraService.saveUserInfoExtra(update); + } catch (UserInfoExtraException e) { + e.printStackTrace(); + } + out.print(JsonUtil.loadTrueResult("")); + return; + } else { + out.print(JsonUtil.loadTrueResult("")); + return; + } + } else {// 鍏抽棴 + UserInfoExtra update = new UserInfoExtra(); + update.setId(userExtra.getId()); + update.setAutoExtract(false); + update.setCloseTimeExtract(new Date()); + try { + userInfoExtraService.saveUserInfoExtra(update); + } catch (UserInfoExtraException e) { + e.printStackTrace(); + } + out.print(JsonUtil.loadTrueResult("")); + return; + } + + } + } -- Gitblit v1.8.0