From 5f13dcc8eaac7cd26c0ec41bd1b3efbb70a08180 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 16 六月 2020 17:45:09 +0800 Subject: [PATCH] 云发单金额修改,增加获取电话号码接口 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java | 329 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 324 insertions(+), 5 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 9280dad..8317664 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; @@ -12,6 +13,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import org.apache.commons.beanutils.PropertyUtils; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.yeshi.utils.IPUtil; @@ -31,21 +33,28 @@ 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.dynamic.DynamicInfo; import com.yeshi.fanli.entity.integral.IntegralDetail; import com.yeshi.fanli.entity.money.UserMoneyDetail; import com.yeshi.fanli.entity.money.UserMoneyDetail.UserMoneyDetailTypeEnum; 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,8 +63,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.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; @@ -113,7 +125,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父鐢ㄦ埛/寮傚父鐢ㄦ埛 @@ -211,6 +243,291 @@ } } + /** + * 鐢ㄦ埛鍩虹淇℃伅鏌ヨ + * @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) { + + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + UserInfoVO userInfoVO = new UserInfoVO(); + userInfoVO.setPhone(user.getPhone()); + userInfoVO.setState(user.getState()); + userInfoVO.setCreatetime(user.getCreatetime()); + + UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid); + if (userInfoExtra != null) { + if (!StringUtil.isNullOrEmpty(userInfoExtra.getMark())) { + userInfoVO.setMark( userInfoExtra.getMark()); + } + userInfoVO.setInviteCode(userInfoExtra.getInviteCode()); + userInfoVO.setInviteCodeVip(userInfoExtra.getInviteCodeVip()); + } + + // 鏈�杩戜竴娆′笅鍗曟椂闂� + Date lastOrderTime = hongBaoV2CountService.getLastHongBaoTime(uid); + if (lastOrderTime != null) { + userInfoVO.setLastOrderTime(lastOrderTime.getTime()); + } + + // 鏈�杩戠櫥褰曟椂闂� + UserActiveLog userActiveLog = userActiveLogService.getUserLatestActiveInfo(uid); + if (userActiveLog != null) { + userInfoVO.setLastLoginTime(userActiveLog.getCreateTime().getTime()); + } + + // 鏄剧ず鐢ㄦ埛寰俊 娣樺疂 鑰佺増鏈瓨鍦� + String wxUnionId = user.getWxUnionId(); + if (wxUnionId == null || wxUnionId.trim().length() == 0) { + user.setWxName(null); + } + user.setWxName(user.getWxUnionId()); + + + // 鏄惁缁戝畾鏀粯瀹濓紙璐拱 + 鍒嗕韩鏉冮檺锛� + UserExtraTaoBaoInfo extraTaoBaoInfo = userExtraTaoBaoInfoService.getByUid(uid); + String taoBaoUid = extraTaoBaoInfo.getTaoBaoUid(); + String specialId = extraTaoBaoInfo.getSpecialId(); + String relationId = extraTaoBaoInfo.getRelationId(); + if (StringUtil.isNullOrEmpty(taoBaoUid) || StringUtil.isNullOrEmpty(specialId) + || StringUtil.isNullOrEmpty(relationId)) { + userInfoVO.setTbName(null); + userInfoVO.setTaoBaoUid(null); + } else { + userInfoVO.setTbName(extraTaoBaoInfo.getTaoBaoNickName()); + userInfoVO.setTaoBaoUid(extraTaoBaoInfo.getTaoBaoUid()); + } + + /* 缁戝畾鏀舵璐﹀彿淇℃伅 */ + List<BindingAccount> account = bindingAccountService.getBindingAccountByUid(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(userInfoVO)); + } + + /** * 缁熻浠婃棩鐢ㄦ埛鎬绘儏鍐� * @@ -1274,7 +1591,6 @@ continue; } - UserInfo user = userInfoService.selectByPKey(userInfo.getId()); if (user != null) { detail.setUserInfo(user); @@ -1282,10 +1598,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>() { @@ -1299,7 +1613,6 @@ } }); Gson gson = gsonBuilder.create(); - JSONObject data = new JSONObject(); data.put("pe", pe); @@ -1310,4 +1623,10 @@ JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触")); } } + + + + + + } -- Gitblit v1.8.0