| | |
| | | package com.yeshi.fanli.controller.admin;
|
| | |
|
| | | import java.io.File;
|
| | | import java.io.FileInputStream;
|
| | | import java.io.InputStream;
|
| | | import java.io.PrintWriter;
|
| | | import java.text.SimpleDateFormat;
|
| | | import java.util.ArrayList;
|
| | |
| | | import java.util.Map;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | | import javax.servlet.http.HttpServletResponse;
|
| | |
|
| | | import net.sf.json.JSONArray;
|
| | | import net.sf.json.JSONObject;
|
| | |
|
| | | import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
| | | import org.apache.poi.ss.usermodel.Cell;
|
| | | import org.apache.poi.ss.usermodel.Row;
|
| | | import org.apache.poi.ss.usermodel.Sheet;
|
| | | import org.apache.poi.ss.usermodel.Workbook;
|
| | | import org.apache.poi.ss.util.CellRangeAddress;
|
| | | import org.springframework.stereotype.Controller;
|
| | | import org.springframework.web.bind.annotation.RequestMapping;
|
| | | import org.springframework.web.bind.annotation.RequestMethod;
|
| | |
| | | import com.google.gson.GsonBuilder;
|
| | | import com.google.gson.reflect.TypeToken;
|
| | | import com.yeshi.fanli.controller.admin.utils.AdminUtils;
|
| | | import com.yeshi.fanli.entity.admin.UserInfoAdmin;
|
| | | import com.yeshi.fanli.entity.bus.user.AccountDetails;
|
| | | import com.yeshi.fanli.dto.money.AccountDetails;
|
| | | import com.yeshi.fanli.entity.bus.user.BindingAccount;
|
| | | import com.yeshi.fanli.entity.bus.user.Extract;
|
| | | import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
|
| | | import com.yeshi.fanli.entity.bus.user.HongBao;
|
| | | import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
|
| | | import com.yeshi.fanli.entity.bus.user.MoneyRecord;
|
| | | import com.yeshi.fanli.entity.bus.user.Order;
|
| | | import com.yeshi.fanli.entity.bus.user.ThreeSale;
|
| | | import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
|
| | | import com.yeshi.fanli.entity.bus.user.UserInfo;
|
| | | import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
|
| | | import com.yeshi.fanli.entity.taobao.PidOrder;
|
| | | import com.yeshi.fanli.entity.bus.user.UserRank;
|
| | | import com.yeshi.fanli.entity.money.UserMoneyDetail;
|
| | | import com.yeshi.fanli.entity.taobao.ScanHistory;
|
| | | import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
|
| | | import com.yeshi.fanli.service.inter.config.ConfigService;
|
| | | import com.yeshi.fanli.service.inter.count.UserInfoCountService;
|
| | | import com.yeshi.fanli.service.inter.goods.ShareService;
|
| | | import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
|
| | | import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
|
| | | import com.yeshi.fanli.service.inter.order.OrderItemServcie;
|
| | | import com.yeshi.fanli.service.inter.order.OrderService;
|
| | | import com.yeshi.fanli.service.inter.order.PidOrderService;
|
| | | import com.yeshi.fanli.service.inter.user.AccountDetailsService;
|
| | | import com.yeshi.fanli.service.inter.user.BindingAccountService;
|
| | | import com.yeshi.fanli.service.inter.user.ExtractService;
|
| | | import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
|
| | |
| | | import com.yeshi.fanli.service.inter.user.ScanHistoryService;
|
| | | import com.yeshi.fanli.service.inter.user.UserActiveLogService;
|
| | | import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
|
| | | 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.service.inter.user.UserRankService;
|
| | | import com.yeshi.fanli.tag.PageEntity;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.GsonUtil;
|
| | | import com.yeshi.fanli.util.HongBaoUtil;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | | import com.yeshi.fanli.util.TimeUtil;
|
| | | import com.yeshi.fanli.util.factory.AccountDetailsFactory;
|
| | | import com.yeshi.fanli.vo.user.UserInfoVO;
|
| | |
|
| | | import net.sf.json.JSONArray;
|
| | | import net.sf.json.JSONObject;
|
| | |
|
| | | @Controller
|
| | | @RequestMapping("admin/new/api/v1/user")
|
| | |
| | | private ConfigService configService;
|
| | |
|
| | | @Resource
|
| | | private HongBaoService hongBaoService;
|
| | |
|
| | | @Resource
|
| | | private ExtractService extractService;
|
| | |
|
| | | @Resource
|
| | | private ThreeSaleSerivce threeSaleService;
|
| | |
|
| | | @Resource
|
| | | private OrderItemServcie orderItemService;
|
| | |
|
| | | @Resource
|
| | | private ShareService shareService;
|
| | |
|
| | | @Resource
|
| | | private PidOrderService pidOrderService;
|
| | |
|
| | | @Resource
|
| | | private AccountDetailsService accountDetailsService;
|
| | |
|
| | | @Resource
|
| | | private BindingAccountService bindingAccountService;
|
| | |
| | |
|
| | | @Resource
|
| | | private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
|
| | |
|
| | | @Resource
|
| | | private UserInfoExtraService userInfoExtraService;
|
| | |
|
| | | @Resource
|
| | | private UserRankService userRankService;
|
| | | |
| | | @Resource
|
| | | private UserMoneyDetailService userMoneyDetailService;
|
| | |
|
| | | @RequestMapping(value = "getUserList", method = RequestMethod.POST)
|
| | | public void getUserList(int pageIndex, String key, PrintWriter out) {
|
| | |
| | | JSONObject data = new JSONObject();
|
| | | data.put("pe", pe);
|
| | | data.put("threeSaleList", list);
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | |
|
| | | /**
|
| | | * |
| | | * 方法说明: 查询所有用户分享赚列表
|
| | | * |
| | | * @author mawurui createTime 2018年4月24日 下午3:37:13
|
| | | * @param pageIndex
|
| | | * @param uid
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "getShareMoneyList", method = RequestMethod.POST)
|
| | | public void getShareList(int pageIndex, PrintWriter out, String key) {
|
| | |
|
| | | // int totalCount = shareService.getShareMoneyCount();
|
| | | // PageEntity pageEntity = new PageEntity();
|
| | | // pageEntity.setPageIndex(pageIndex);
|
| | | // pageEntity.setPageSize(Constant.PAGE_SIZE);
|
| | | // pageEntity.setTotalCount(totalCount);
|
| | |
|
| | | int count = shareService.getCountByKey(key);
|
| | | int totalPage = count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE : count / Constant.PAGE_SIZE + 1;
|
| | | PageEntity pe = new PageEntity(pageIndex, Constant.PAGE_SIZE, count, totalPage);
|
| | |
|
| | | List<PidOrder> shareMoneyList = shareService.getShareMoneyList(pageIndex, key);
|
| | | JSONObject data = new JSONObject();
|
| | | data.put("pageEntity", pe);
|
| | | data.put("shareMoneyList", JsonUtil.getSimpleGsonWithDate().toJson(shareMoneyList));
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | |
|
| | |
| | |
|
| | | /**
|
| | | *
|
| | | * 方法说明: 查询用户-红包详情列表
|
| | | * |
| | | * @author mawurui createTime 2018年5月10日 上午11:48:58
|
| | | * @param pageIndex
|
| | | * @param uid
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "getHongBaoList", method = RequestMethod.POST)
|
| | | public void getHongBaoList(int pageIndex, long uid, PrintWriter out) {
|
| | | JSONObject data = new JSONObject();
|
| | | List<HongBao> list = hongBaoService.getHongBaoList(pageIndex, uid);
|
| | | if (list.size() != 0 || list != null) {
|
| | | for (HongBao hb : list) {
|
| | | int hbType = hb.getType();
|
| | | if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
|
| | | Long hongbaoId = hb.getId();
|
| | | PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
|
| | | Order order = new Order();
|
| | | order.setThirdCreateTime(pidOrder.getOrderCreateTime());
|
| | | order.setOrderId(pidOrder.getOrderId());
|
| | | order.setThirdState(pidOrder.getState());
|
| | | order.setMoney(pidOrder.getPayMoney());
|
| | | hb.setOrder(order);
|
| | | } else if (hbType == HongBao.TYPE_SHARE_YIJI || hbType == HongBao.TYPE_SHARE_ERJI) {
|
| | | Long hongbaoId = hb.getParent().getId();
|
| | | PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
|
| | | Order order = new Order();
|
| | | order.setThirdCreateTime(pidOrder.getOrderCreateTime());
|
| | | order.setOrderId(pidOrder.getOrderId());
|
| | | order.setThirdState(pidOrder.getState());
|
| | | order.setMoney(pidOrder.getPayMoney());
|
| | | hb.setOrder(order);
|
| | | } else if (hbType == HongBao.TYPE_XINREN) {
|
| | | Order order = new Order();
|
| | | Long createtime = hb.getCreatetime();
|
| | | if (createtime != null) {
|
| | | Date ThirdCreateTime = new Date(createtime);
|
| | | order.setThirdCreateTime(ThirdCreateTime);
|
| | | }
|
| | |
|
| | | hb.setOrder(order);
|
| | |
|
| | | } else if (hb.getParent() != null) {
|
| | | hb.setOrder(hb.getParent().getOrder());
|
| | | }
|
| | | }
|
| | | }
|
| | | int count = hongBaoService.getCount(uid);
|
| | | PageEntity pe = new PageEntity();
|
| | | pe.setPageIndex(pageIndex);
|
| | | pe.setPageSize(Constant.PAGE_SIZE);
|
| | | pe.setTotalCount(count);
|
| | |
|
| | | data.put("pe", pe);
|
| | | data.put("list", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(list));
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | |
|
| | | /**
|
| | | * |
| | | * 方法说明: 查询 分享赚页面列表
|
| | | * |
| | | * @author mawurui createTime 2018年4月16日 上午9:54:39
|
| | | * @param pageIndex
|
| | | * @param uid
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "getShareList", method = RequestMethod.POST)
|
| | | public void getShareList(int pageIndex, long uid, PrintWriter out) {
|
| | | int totalCount = shareService.getCount(uid);
|
| | | PageEntity pageEntity = new PageEntity();
|
| | | pageEntity.setPageIndex(pageIndex);
|
| | | pageEntity.setPageSize(Constant.PAGE_SIZE);
|
| | | pageEntity.setTotalCount(totalCount);
|
| | |
|
| | | List<HongBao> shareList = shareService.getShareList(pageIndex, uid);
|
| | | if (shareList.size() != 0 || shareList != null) {
|
| | | for (HongBao hb : shareList) {
|
| | | int hbType = hb.getType();
|
| | | if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
|
| | | Long hongbaoId = hb.getId();
|
| | | PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
|
| | | Order order = new Order();
|
| | | order.setThirdCreateTime(pidOrder.getCreateTime());
|
| | | order.setThirdState(pidOrder.getState());
|
| | | hb.setOrder(order);
|
| | | } else if (hb.getParent() != null) {
|
| | | hb.setOrder(hb.getParent().getOrder());
|
| | | }
|
| | | }
|
| | | }
|
| | | JSONObject data = new JSONObject();
|
| | | data.put("pageEntity", pageEntity);
|
| | | data.put("shareList", GsonUtil.toJsonExpose(shareList));
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | |
|
| | | /**
|
| | | * |
| | | * 方法说明: 查询 邀请赚页面列表
|
| | | * |
| | | * @author mawurui createTime 2018年4月16日 上午9:54:39
|
| | | * @param pageIndex
|
| | | * @param uid
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "getInviteList", method = RequestMethod.POST)
|
| | | public void getInviteList(int pageIndex, long uid, PrintWriter out) {
|
| | | int totalCount = shareService.getInviteCount(uid);
|
| | | PageEntity pageEntity = new PageEntity();
|
| | | pageEntity.setPageIndex(pageIndex);
|
| | | pageEntity.setPageSize(Constant.PAGE_SIZE);
|
| | | pageEntity.setTotalCount(totalCount);
|
| | |
|
| | | List<HongBao> inviteList = shareService.getInviteList(pageIndex, uid);
|
| | | if (inviteList.size() != 0 || inviteList != null) {
|
| | | for (HongBao hb : inviteList) {
|
| | | int hbType = hb.getType();
|
| | | if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
|
| | | Long hongbaoId = hb.getId();
|
| | | PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
|
| | | Order order = new Order();
|
| | | order.setThirdCreateTime(pidOrder.getCreateTime());
|
| | | order.setThirdState(pidOrder.getState());
|
| | | hb.setOrder(order);
|
| | | } else if (hb.getParent() != null) {
|
| | | hb.setOrder(hb.getParent().getOrder());
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | JSONObject data = new JSONObject();
|
| | | data.put("pageEntity", pageEntity);
|
| | | data.put("inviteList", JsonUtil.getSimpleGsonWithDateAndSerialization().toJson(inviteList));
|
| | | out.print(JsonUtil.loadTrueResult(data));
|
| | | }
|
| | |
|
| | | /**
|
| | | * |
| | | * 方法说明: 清除用户手势密码
|
| | | *
|
| | | * @author mawurui createTime 2018年5月4日 下午4:47:29
|
| | |
| | | }
|
| | |
|
| | | /**
|
| | | * |
| | | * 方法说明: Excel表格下载
|
| | | * |
| | | * @author mawurui createTime 2018年5月21日 下午2:14:44
|
| | | * @param uid
|
| | | * @param response
|
| | | */
|
| | | @SuppressWarnings("unused")
|
| | | @RequestMapping(value = "downDetailedExcel", produces = { "application/vnd.ms-excel;charset=UTF-8" })
|
| | | public void downDetailedExcel(long uid, HttpServletResponse response) {
|
| | | try {
|
| | | List<HongBao> list = hongBaoService.getHongBaoListAll(uid);
|
| | | if (list.size() != 0 || list != null) {
|
| | | for (HongBao hb : list) {
|
| | | int hbType = hb.getType();
|
| | | if (hbType == HongBao.TYPE_SHARE_GOODS) { // type == 20
|
| | | Long hongbaoId = hb.getId();
|
| | | PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
|
| | | Order order = new Order();
|
| | | order.setOrderId(pidOrder.getOrderId());
|
| | | order.setMoney(pidOrder.getPayMoney());
|
| | | order.setThirdCreateTime(pidOrder.getCreateTime());
|
| | | order.setThirdState(pidOrder.getState());
|
| | | hb.setOrder(order);
|
| | | } else if (hbType == HongBao.TYPE_SHARE_ERJI || hbType == HongBao.TYPE_SHARE_YIJI) { // type
|
| | | // ==
|
| | | Long hongbaoId = hb.getParent().getId();
|
| | | PidOrder pidOrder = pidOrderService.getPidOrderByHongBaoId(hongbaoId);
|
| | | Order order = new Order();
|
| | | order.setOrderId(pidOrder.getOrderId());
|
| | | order.setMoney(pidOrder.getPayMoney());
|
| | | order.setThirdCreateTime(pidOrder.getCreateTime());
|
| | | order.setThirdState(pidOrder.getState());
|
| | | hb.setOrder(order);
|
| | | } else if (hb.getParent() != null) {
|
| | | hb.setOrder(hb.getParent().getOrder());
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | File desc = new File(this.getClass().getResource("/muban.xls").toURI());
|
| | | InputStream inStream = new FileInputStream(desc);
|
| | | Workbook wb = new HSSFWorkbook(inStream);
|
| | | Sheet sheet = wb.getSheetAt(0);
|
| | | int i = 1;
|
| | | for (; i <= list.size(); i++) {
|
| | | Row row = sheet.createRow(i);
|
| | | for (int c = 1; c < 10; c++) {
|
| | | row.createCell(c);
|
| | | }
|
| | | Cell cell = row.createCell(1);
|
| | | HongBao hongBao = list.get(i - 1);
|
| | | long createtime = hongBao.getCreatetime();
|
| | | String create = TimeUtil.getWholeTime(createtime);
|
| | | cell.setCellValue(create);
|
| | |
|
| | | Cell cell2 = row.getCell(2);
|
| | | String title = HongBaoUtil.getHongBaoTitle(hongBao.getType());
|
| | | cell2.setCellValue(title);
|
| | |
|
| | | Order order = hongBao.getOrder();
|
| | | if (order != null) {
|
| | | Cell cell3 = row.getCell(3);
|
| | | Integer orderType = order.getOrderType();
|
| | | if (orderType == null) {
|
| | | orderType = 1;
|
| | | }
|
| | | cell3.setCellValue(orderType == 1 ? "淘宝" : "其他");
|
| | |
|
| | | String orderId = order.getOrderId();
|
| | | if (orderId == null) {
|
| | | orderId = "";
|
| | | }
|
| | | Cell cell4 = row.getCell(4);
|
| | | cell4.setCellValue(orderId);
|
| | |
|
| | | Cell cell5 = row.getCell(5);
|
| | | // List<Order>
|
| | | // orderItemService.findByOrderId(order.getId());
|
| | | cell5.setCellValue(order.getMoney().doubleValue());
|
| | |
|
| | | Cell cell6 = row.getCell(6);
|
| | | String stateStr = order.getThirdState();
|
| | | cell6.setCellValue(stateStr);
|
| | | /*
|
| | | * Cell cell11 = row.getCell(11); //下单时间 long orderTime =
|
| | | * order.getCreatetime(); String oTime =
|
| | | * TimeUtil.getWholeTime(orderTime);
|
| | | * cell11.setCellValue(oTime);
|
| | | */
|
| | | } else if (order == null) {
|
| | | Cell cell3 = row.getCell(3);
|
| | | cell3.setCellValue("淘宝");
|
| | |
|
| | | Cell cell4 = row.getCell(4);
|
| | | cell4.setCellValue("");
|
| | |
|
| | | Cell cell5 = row.getCell(5);
|
| | | cell5.setCellValue("");
|
| | |
|
| | | Cell cell6 = row.getCell(6);
|
| | | cell6.setCellValue("");
|
| | | } else if (hongBao.getParent() != null) {// 属于分销红包
|
| | | String orderId = "";
|
| | | if (hongBao.getParent().getParent() != null) {
|
| | | orderId = hongBao.getParent().getParent().getOrder().getOrderId();
|
| | | } else {
|
| | | orderId = hongBao.getParent().getOrder().getOrderId();
|
| | | }
|
| | | Cell cell4 = row.getCell(4);
|
| | | cell4.setCellValue(orderId);
|
| | | }
|
| | | Cell cell7 = row.getCell(7);
|
| | | cell7.setCellValue(hongBao.getMoney().doubleValue());
|
| | |
|
| | | Cell cell8 = row.getCell(8);
|
| | | cell8.setCellValue(HongBaoUtil.convertState(hongBao.getState()));
|
| | |
|
| | | Cell cell9 = row.getCell(9);
|
| | | if (hongBao.getGetTime() != 0) {
|
| | | cell9.setCellValue(TimeUtil.getWholeTime(hongBao.getGetTime()));
|
| | | }
|
| | | }
|
| | | List<Extract> extractList = extractService.getExtractInfoByUid(uid);
|
| | | int ii = i;
|
| | | for (int m = 0; m < extractList.size(); m++, ii++) {
|
| | | Row row = sheet.createRow(ii);
|
| | | for (int c = 1; c < 10; c++) {
|
| | | row.createCell(c);
|
| | | }
|
| | | Cell cell = row.getCell(1);
|
| | | Extract extract = extractList.get(m);
|
| | | cell.setCellValue(TimeUtil.getWholeTime(extract.getExtractTime()));
|
| | | Cell cell2 = row.getCell(2);
|
| | | cell2.setCellValue("提现");
|
| | | Cell cell7 = row.getCell(7);
|
| | | cell7.setCellValue(-extract.getMoney().doubleValue());
|
| | | }
|
| | | CellRangeAddress cellRangeAddress = new CellRangeAddress(0, sheet.getLastRowNum(), 1, 9);
|
| | | sheet.setAutoFilter(cellRangeAddress);
|
| | | wb.write(response.getOutputStream());
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | }
|
| | |
|
| | | /**
|
| | | * 查询用户信息列表--相关数据统计
|
| | | *
|
| | | * @param callback
|
| | |
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "query")
|
| | | public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer userType, Integer days,
|
| | | String startTime, String endTime, Integer orderMode, PrintWriter out) {
|
| | | public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer keyType, Integer rank,
|
| | | Integer days, String startTime, String endTime, Integer orderMode, Integer type, PrintWriter out) {
|
| | |
|
| | | try {
|
| | |
|
| | | // 结束时间 2018-06-06 00:00:00 加上一天
|
| | | if (!StringUtil.isNullOrEmpty(endTime)) {
|
| | |
|
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
| | | Date enddate = sdf.parse(endTime);
|
| | | Calendar c = Calendar.getInstance();
|
| | | c.setTime(enddate);
|
| | | c.add(Calendar.DAY_OF_MONTH, 1);// 今天+1天
|
| | | endTime = sdf.format(c.getTime());
|
| | | if (type == null) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("用户类型type不能为空"));
|
| | | return;
|
| | | }
|
| | |
|
| | | |
| | | if (pageIndex == null)
|
| | | pageIndex = 1;
|
| | |
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | List<UserInfoAdmin> userList = userInfoService.query((pageIndex - 1) * pageSize, pageSize, key, userType,
|
| | | days, startTime, endTime, orderField, orderMode);
|
| | | 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.query((pageIndex - 1) * pageSize, pageSize, type, key, keyType,
|
| | | userRank, days, startTime, endTime, orderField, orderMode);
|
| | |
|
| | | if (userList == null || userList.size() == 0) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无相关数据"));
|
| | | return;
|
| | | }
|
| | |
|
| | | long count = userInfoService.queryCount(key, userType, days, startTime, endTime);
|
| | | long count = userInfoService.queryCount(type, key, keyType, userRank, days, startTime, endTime);
|
| | |
|
| | | int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
|
| | | PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
|
| | |
| | |
|
| | | JSONObject data = new JSONObject();
|
| | | data.put("pe", pe);
|
| | | // data.put("sumMoney", sumMoney);
|
| | | data.put("resultList", gson.toJson(userList));
|
| | |
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
|
| | |
| | | public void countInfo(String callback, PrintWriter out) {
|
| | | try {
|
| | |
|
| | | JSONObject data = new JSONObject();
|
| | | // 累计用户数量
|
| | | long totalUser = userInfoCountService.countNewUser(null, null);
|
| | | // 流失用户数量(180天未使用登录并且无任何资金流动的账号数量)
|
| | | long loseUser = userInfoCountService.countLoseUser(180);
|
| | | // 累计有购买用户数
|
| | | long orderUser = userInfoCountService.countHasOrderUser();
|
| | |
|
| | | // 总数-普通用户
|
| | | long countNormal = userInfoCountService.countRank(0);
|
| | | long countNormal = 0;
|
| | | // 总数-铜用户
|
| | | long countCuprum = userInfoCountService.countRank(1);
|
| | | long countCuprum = 0;
|
| | | // 总数-银用户
|
| | | long countSilver = userInfoCountService.countRank(2);
|
| | | long countSilver = 0;
|
| | | // 总数-金用户
|
| | | long countGold = userInfoCountService.countRank(3);
|
| | | long countGold = 0;
|
| | |
|
| | | List<UserRank> listRank = userRankService.getAllRank();
|
| | | if (listRank != null && listRank.size() > 0) {
|
| | | for (UserRank userRank : listRank) {
|
| | | Long id = userRank.getId();
|
| | | String name = userRank.getName();
|
| | | if ("青铜".equals(name)) {
|
| | | continue;
|
| | | }
|
| | |
|
| | | long count = userInfoExtraService.countByRankId(id);
|
| | | if ("白银".equals(name)) {
|
| | | countCuprum = count;
|
| | | } else if ("黄金".equals(name)) {
|
| | | countSilver = count;
|
| | | } else if ("铂金".equals(name)) {
|
| | | countGold = count;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | // 普通用户计算
|
| | | countNormal = totalUser - (countCuprum + countSilver + countGold);
|
| | |
|
| | | JSONObject data = new JSONObject();
|
| | | data.put("totalUser", totalUser);
|
| | | data.put("loseUser", loseUser);
|
| | | data.put("orderUser", orderUser);
|
| | | data.put("countNormal", countNormal);
|
| | | data.put("countCuprum", countCuprum);
|
| | | data.put("countSilver", countSilver);
|
| | |
| | | * data.put("countTotalMoney", countTotalMoney);
|
| | | * data.put("countCanAssets", countCanAssets);
|
| | | */
|
| | |
|
| | | // 累计用户数量
|
| | | long totalUser = userInfoCountService.countNewUser(null, null);
|
| | | // 流失用户数量(180天未使用登录并且无任何资金流动的账号数量)
|
| | | long loseUser = userInfoCountService.countLoseUser(180);
|
| | | // 累计有购买用户数
|
| | | long orderUser = userInfoCountService.countHasOrderUser();
|
| | |
|
| | | data.put("totalUser", totalUser);
|
| | | data.put("loseUser", loseUser);
|
| | | data.put("orderUser", orderUser);
|
| | |
|
| | | // 今日新增用户数量
|
| | | long todayUser = userInfoCountService.countNewUser(1, null);
|
| | |
| | |
|
| | | try {
|
| | |
|
| | | List<AccountDetails> detailsList = accountDetailsService.findAccountDetailsList(uid, pageIndex);
|
| | | if (detailsList == null || detailsList.size() == 0) {
|
| | | List<UserMoneyDetail> userMoneyDetailsList = userMoneyDetailService.listByUidWithState(uid, pageIndex,
|
| | | pageSize);
|
| | | if (userMoneyDetailsList == null || userMoneyDetailsList.size() == 0) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无数据"));
|
| | | return;
|
| | | }
|
| | |
|
| | | int count = accountDetailsService.getCount(uid);
|
| | | List<AccountDetails> detailList = new ArrayList<>();
|
| | | for (UserMoneyDetail detail : userMoneyDetailsList)
|
| | | detailList.add(AccountDetailsFactory.create(detail));
|
| | |
|
| | | long count = userMoneyDetailService.countByUidWithState(uid);
|
| | |
|
| | | int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
|
| | | PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
|
| | |
|
| | | JSONObject data = new JSONObject();
|
| | | data.put("pe", pe);
|
| | | data.put("result_list", GsonUtil.toJsonExpose(detailsList));
|
| | | data.put("result_list", GsonUtil.toJsonExpose(detailList));
|
| | |
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
|
| | |
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | |
| | | |
| | | /**
|
| | | * 用户账号- 封禁/解封 |
| | | * @param callback
|
| | | * @param code
|
| | | * @param type 1("微信unionId"), 2("淘宝ID"), 3("手机号"), 4("支付宝账号");
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "saveForbiddenInfo")
|
| | | public void saveForbiddenInfo(String callback, String code, Integer type, PrintWriter out) {
|
| | | try {
|
| | | if (code == null || code.trim().length() == 0 || type == null) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("参数不能为空"));
|
| | | }
|
| | | |
| | | forbiddenUserIdentifyCodeService.saveForbiddenInfo(code, type);
|
| | | |
| | | JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("修改成功"));
|
| | |
|
| | | } catch (ForbiddenUserIdentifyCodeException e) {
|
| | | e.printStackTrace();
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
|
| | | }
|
| | | |
| | | }
|
| | | |
| | | }
|