From 3579201658f94480a8421507c24d2ece83dbf0c7 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期一, 15 六月 2020 14:55:00 +0800 Subject: [PATCH] 云发单相关 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java | 341 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 333 insertions(+), 8 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 31a69d5..f8a877c 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 @@ -2,6 +2,7 @@ import java.io.PrintWriter; import java.lang.reflect.Type; +import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; @@ -31,10 +32,13 @@ import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode; import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum; import com.yeshi.fanli.entity.bus.user.ThreeSale; +import com.yeshi.fanli.entity.bus.user.UserActiveLog; import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.bus.user.UserInfoExtra; +import com.yeshi.fanli.entity.bus.user.UserInviteValidNum; import com.yeshi.fanli.entity.bus.user.UserRank; +import com.yeshi.fanli.entity.bus.user.vip.TearcherInfo; import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo; import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.entity.integral.IntegralDetail; @@ -43,9 +47,12 @@ import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException; import com.yeshi.fanli.exception.user.vip.UserVIPInfoException; import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.count.UserInfoCountService; import com.yeshi.fanli.service.inter.money.UserMoneyDetailService; import com.yeshi.fanli.service.inter.money.extract.BindingAccountService; +import com.yeshi.fanli.service.inter.money.extract.ExtractService; +import com.yeshi.fanli.service.inter.order.HongBaoV2Service; import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService; import com.yeshi.fanli.service.inter.user.UserAccountService; import com.yeshi.fanli.service.inter.user.UserActiveLogService; @@ -54,9 +61,11 @@ import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserRankService; import com.yeshi.fanli.service.inter.user.integral.IntegralDetailService; +import com.yeshi.fanli.service.inter.user.invite.ThreeSaleDetailService; import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; -import com.yeshi.fanli.service.inter.user.invite.UserInviteValidRecordService; +import com.yeshi.fanli.service.inter.user.invite.UserInviteValidNumService; import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService; +import com.yeshi.fanli.service.inter.user.vip.TearcherService; import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService; import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; @@ -114,7 +123,27 @@ @Resource private IntegralDetailService integralDetailService; - + @Resource + private UserInviteValidNumService userInviteValidNumService; + + @Resource + private ThreeSaleSerivce threeSaleSerivce; + + @Resource + private ExtractService extractService; + + @Resource + private HongBaoV2Service hongBaoV2Service; + + @Resource + private TearcherService tearcherService; + + @Resource + private ThreeSaleDetailService threeSaleDetailService; + + @Resource + private HongBaoV2CountService hongBaoV2CountService; + /** * 鏌ヨ鐢ㄦ埛淇℃伅鍒楄〃 姝e父鐢ㄦ埛/寮傚父鐢ㄦ埛 @@ -212,6 +241,302 @@ } } + /** + * 鐢ㄦ埛鍩虹淇℃伅鏌ヨ + * @param callback + * @param pageIndex + * @param pageSize + * @param key + * @param keyType + * @param rank + * @param userType + * @param days + * @param startTime + * @param endTime + * @param type + * @param level + * @param activeCode + * @param out + */ + @RequestMapping(value = "queryInfo") + public void queryInfo(String callback, Integer pageIndex, Integer pageSize, String key, Integer keyType, Integer rank,Integer userType, + Integer days, String startTime, String endTime, Integer state,String level, + Integer activeCode, PrintWriter out) { + try { + if (pageIndex == null) + pageIndex = 1; + + if (pageSize == null) + pageSize = Constant.PAGE_SIZE; + + 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.queryInfo((pageIndex - 1) * pageSize, pageSize, state, key, keyType, + userRank, days, startTime, endTime, userType, level, activeCode); + + if (userList == null || userList.size() == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鐩稿叧鏁版嵁")); + return; + } + + long count = userInfoService.countInfo(state, key, keyType, userRank, days, startTime, endTime,userType, level, activeCode); + + int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); + PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage); + + GsonBuilder gsonBuilder = new GsonBuilder(); + gsonBuilder.serializeNulls(); + Gson gson = gsonBuilder.create(); + + JSONObject data = new JSONObject(); + data.put("pe", pe); + data.put("resultList", gson.toJson(userList)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + e.printStackTrace(); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); + } + } + + + /** + * 璧勯噾缁熻 + * @param callback + * @param uid + * @param out + */ + @RequestMapping(value = "statisticsMoney") + public void statisticsMoney(String callback, Long uid, PrintWriter out) { + try { + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + if (user == null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇ョ敤鎴稩D涓嶅瓨鍦�")); + return; + } + + Date minDate = null; + Date maxDate = null; + long timeStamp = System.currentTimeMillis(); + Calendar calendar = Calendar.getInstance(); + calendar.setTimeInMillis(timeStamp); + List<UserMoneyDetailTypeEnum> typeList = new ArrayList<>(); + typeList.add(UserMoneyDetailTypeEnum.extract); + typeList.add(UserMoneyDetailTypeEnum.extractNew); + typeList.add(UserMoneyDetailTypeEnum.extractVerify); + typeList.add(UserMoneyDetailTypeEnum.extractVerifyNew); + typeList.add(UserMoneyDetailTypeEnum.extractReject); + typeList.add(UserMoneyDetailTypeEnum.extractAutoWX); + minDate = new Date(0L); + maxDate = new Date(timeStamp); + // 绱鎴愬姛鎻愮幇 + BigDecimal totalExtractMoney = userMoneyDetailService.statisticUserTypeMoneyWithDate(uid, typeList, minDate, + maxDate, 1).abs(); + // 鎻愮幇涓噾棰� + BigDecimal extractingMoney = extractService.sumVerifyingMoney(uid); + + // 鍏ㄩ儴鏈埌璐� + minDate = new Date(0); + maxDate = new Date(timeStamp); + BigDecimal unRecievedMoney = hongBaoV2Service.getUnRecievedMoneyWithCreateTime(uid, minDate, maxDate); + + JSONObject data = new JSONObject(); + data.put("totalExtractMoney", totalExtractMoney); + data.put("extractingMoney", extractingMoney); + data.put("balanceMoney", user.getMyHongBao()); + data.put("unRecievedMoney", unRecievedMoney); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); + e.printStackTrace(); + } + } + + + /** + * 鏉冪泭缁熻 + * @param callback + * @param uid + * @param out + */ + @RequestMapping(value = "statisticsGoldCoin") + public void statisticsEquity(String callback, Long uid, PrintWriter out) { + try { + int goldCoin = 0; + UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid); + if (userInfoExtra != null) { + goldCoin = userInfoExtra.getGoldCoin(); + } + + JSONObject data = new JSONObject(); + data.put("goldCoin", goldCoin); + data.put("exchangeGoldCoin",new BigDecimal(integralDetailService.sumUseGoldCoin(uid)).abs()); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔寮傚父")); + e.printStackTrace(); + } + } + + + /** + * 鐢ㄦ埛绮変笣缁熻 + * + * @param callback + * @param pageIndex + * @param pageSize + * @param id + * @param out + */ + @RequestMapping(value = "countTeamFans") + public void countTeamFans(String callback, Long uid, PrintWriter out) { + JSONObject data = new JSONObject(); + + // 瀵煎笀 + String tearcherName = ""; + TearcherInfo tearcherInfo = tearcherService.selectByUid(uid); + if (tearcherInfo != null) { + tearcherName = tearcherInfo.getNickName(); + } + data.put("tearcherName", tearcherName); + + // 閭�璇蜂汉 + String bossName = ""; + UserInfo boss = threeSaleSerivce.getBoss(uid); + if (boss != null) { + bossName = boss.getNickName(); + } + data.put("bossName", bossName); + + // 閭�璇风矇涓� + int doneFirst = 0; + int doneSecond = 0; + UserInviteValidNum userInviteValidNum = userInviteValidNumService.selectByPrimaryKey(uid); + if (userInviteValidNum != null) { + doneFirst = userInviteValidNum.getNumFirst() == null ? 0 : userInviteValidNum.getNumFirst(); + doneSecond = userInviteValidNum.getNumSecond() == null ? 0 : userInviteValidNum.getNumSecond(); + } + data.put("doneFirst", doneFirst); + data.put("doneSecond", doneSecond); + + // 涔濅唬绮変笣鏁伴噺 + data.put("nineFans", threeSaleDetailService.countByBossUidAndMaxLevel(uid, 9)); + + // 鏈夋晥绮変笣 + data.put("first", threeSaleSerivce.countFirstTeam(uid)); + data.put("second", threeSaleSerivce.countSecondTeam(uid)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } + + + + /** + * 鐢ㄦ埛璇︾粏淇℃伅 + * @param callback + * @param uid + * @param out + */ + @RequestMapping(value = "getInfoDetail") + public void getInfoDetail(String callback, Long uid, PrintWriter out) { + JSONObject data = new JSONObject(); + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + data.put("phone", user.getPhone()); + data.put("state", user.getState()); + data.put("createtime", user.getCreatetime()); + + + String mark = ""; + String activation = "鏈縺娲�"; + UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid); + if (userInfoExtra != null) { + if (!StringUtil.isNullOrEmpty(userInfoExtra.getMark())) { + mark = userInfoExtra.getMark(); + } + + String inviteCode = userInfoExtra.getInviteCode(); + if (!StringUtil.isNullOrEmpty(inviteCode)) { + activation = "宸叉縺娲�"; + } else { + activation = "鏈縺娲�"; + } + } + data.put("mark", mark); + data.put("activation", activation); + + // 鏈�杩戜竴娆′笅鍗曟椂闂� + String orderTime = ""; + Date lastOrderTime = hongBaoV2CountService.getLastHongBaoTime(uid); + if (lastOrderTime != null) { + orderTime = TimeUtil.formatDate(lastOrderTime); + } + data.put("orderTime", orderTime); + + + // 鏈�杩戠櫥褰曟椂闂� + String activeTime = ""; + UserActiveLog userActiveLog = userActiveLogService.getUserLatestActiveInfo(uid); + if (userActiveLog != null) { + activeTime = TimeUtil.formatDate(userActiveLog.getCreateTime()); + } + data.put("activeTime", activeTime); +// +// // 鏄剧ず鐢ㄦ埛寰俊 娣樺疂 鑰佺増鏈瓨鍦� +// String wxUnionId = userInfoVO.getWxUnionId(); +// if (wxUnionId == null || wxUnionId.trim().length() == 0) { +// userInfoVO.setWxName(null); +// } +// +// // 鏄惁缁戝畾鏀粯瀹濓紙璐拱 + 鍒嗕韩鏉冮檺锛� +// String taoBaoUid = userInfoVO.getTaoBaoUid(); +// String tbSpecialId = userInfoVO.getTbSpecialId(); +// String tbRelationId = userInfoVO.getTbRelationId(); +// if (StringUtil.isNullOrEmpty(taoBaoUid) || StringUtil.isNullOrEmpty(tbSpecialId) +// || StringUtil.isNullOrEmpty(tbRelationId)) { +// userInfoVO.setTbName(null); +// userInfoVO.setTaoBaoUid(null); +// } +// +// Long uid = userInfoVO.getId(); +// /* 缁戝畾鏀舵璐﹀彿淇℃伅 */ +// List<BindingAccount> account = bindingAccountMapper.selectByUid(uid); +// if (account != null && account.size() > 0) { +// BindingAccount bindingAccount = account.get(0); +// Integer type = bindingAccount.getType(); +// if (type != null && type == 1) { +// // 鏀粯瀹� +// userInfoVO.setAccountAlipay(bindingAccount.getAccount()); +// userInfoVO.setAccountName(bindingAccount.getName()); +// userInfoVO.setAccountBindId(bindingAccount.getId()); +// +// } else if (type != null && type == 2) { +// // 寰俊 +// userInfoVO.setAccountWX(bindingAccount.getAccount()); +// userInfoVO.setAccountNameWX(bindingAccount.getName()); +// userInfoVO.setAccountBindIdWX(bindingAccount.getId()); +// } +// } + + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } + + /** * 缁熻浠婃棩鐢ㄦ埛鎬绘儏鍐� * @@ -652,8 +977,6 @@ } } } - - long count = 0; @@ -1277,7 +1600,6 @@ continue; } - UserInfo user = userInfoService.selectByPKey(userInfo.getId()); if (user != null) { detail.setUserInfo(user); @@ -1285,10 +1607,8 @@ } long count = userMoneyDetailService.countQuery(key, keyType); - int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage); - GsonBuilder gsonBuilder = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss"); gsonBuilder.registerTypeAdapter(UserMoneyDetailTypeEnum.class, new JsonSerializer<UserMoneyDetailTypeEnum>() { @@ -1302,7 +1622,6 @@ } }); Gson gson = gsonBuilder.create(); - JSONObject data = new JSONObject(); data.put("pe", pe); @@ -1313,4 +1632,10 @@ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触")); } } + + + + + + } -- Gitblit v1.8.0