From 63bf3eac0b63606348e40d994a54de1cd4b6d3b9 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 28 三月 2020 16:44:50 +0800 Subject: [PATCH] 数据统计 + 会员 --- fanli/src/main/java/com/yeshi/fanli/controller/admin/UserInfoAdminController.java | 73 ++++++++++++++++++++++++++++++++++++ 1 files changed, 73 insertions(+), 0 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 b0bc74e..eb21b3c 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 @@ -1,6 +1,7 @@ package com.yeshi.fanli.controller.admin; import java.io.PrintWriter; +import java.lang.reflect.Type; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; @@ -18,6 +19,10 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import com.google.gson.JsonElement; +import com.google.gson.JsonPrimitive; +import com.google.gson.JsonSerializationContext; +import com.google.gson.JsonSerializer; import com.google.gson.reflect.TypeToken; import com.yeshi.fanli.controller.admin.utils.AdminUtils; import com.yeshi.fanli.dto.ChartTDO; @@ -34,6 +39,7 @@ import com.yeshi.fanli.entity.common.AdminUser; 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; @@ -1392,4 +1398,71 @@ } } + + + /** + * 鐢ㄦ埛璐︽埛鏄庣粏 + * + * @param callback + * @param pageIndex + * @param pageSize + * @param id + * @param out + */ + @RequestMapping(value = "getMoneyDetails") + public void getMoneyDetails(String callback, Integer pageIndex, String key, Integer keyType, PrintWriter out) { + if (pageIndex == null) { + pageIndex = 1; + } + int pageSize = Constant.PAGE_SIZE; + try { + List<UserMoneyDetail> list = userMoneyDetailService.listQuery(pageIndex, pageSize, key, keyType); + if (list == null || list.size() == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏆傛棤鏁版嵁")); + return; + } + + for (UserMoneyDetail detail: list) { + UserInfo userInfo = detail.getUserInfo(); + if (userInfo == null) { + detail.setUserInfo(new UserInfo()); + continue; + } + + + UserInfo user = userInfoService.selectByPKey(userInfo.getId()); + if (user != null) { + detail.setUserInfo(user); + } + } + + 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>() { + @Override + public JsonElement serialize(UserMoneyDetailTypeEnum value, Type theType, JsonSerializationContext context) { + if (value == null) { + return new JsonPrimitive(""); + } else { + return new JsonPrimitive(value.getDesc()); + } + } + }); + Gson gson = gsonBuilder.create(); + + + JSONObject data = new JSONObject(); + data.put("pe", pe); + data.put("result_list", gson.toJson(list)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + e.printStackTrace(); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触")); + } + } } -- Gitblit v1.8.0