admin
2021-03-25 f13ed98e1de0ec7b85ed179212cc095f63480eed
src/main/java/com/yeshi/buwan/controller/api/VIPController.java
@@ -1,6 +1,7 @@
package com.yeshi.buwan.controller.api;
import com.google.gson.*;
import com.yeshi.buwan.domain.system.SystemConfig;
import com.yeshi.buwan.domain.user.LoginUser;
import com.yeshi.buwan.domain.vip.UserVIPInfo;
import com.yeshi.buwan.domain.vip.VIPOrderRecord;
@@ -8,6 +9,7 @@
import com.yeshi.buwan.domain.vip.VIPPriceType;
import com.yeshi.buwan.exception.vip.VIPException;
import com.yeshi.buwan.service.inter.LoginUserService;
import com.yeshi.buwan.service.inter.system.SystemConfigService;
import com.yeshi.buwan.service.inter.vip.VIPPriceService;
import com.yeshi.buwan.service.inter.vip.VIPService;
import com.yeshi.buwan.util.*;
@@ -26,6 +28,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.Type;
import java.util.Date;
import java.util.List;
import java.util.UUID;
@@ -46,6 +49,9 @@
    @Resource
    private VIPPriceService vipPriceService;
    @Resource
    private SystemConfigService systemConfigService;
    @RequestMapping("getVIPPriceList")
@@ -72,6 +78,11 @@
            userInfoVO.setId(user.getId());
            userInfoVO.setNickName(user.getName());
            userInfoVO.setPortrait(user.getPortrait());
            if (StringUtil.isNullOrEmpty(userInfoVO.getPortrait())) {
                String portrait = systemConfigService.getConfigValueByKeyCache("default_portrait");
                userInfoVO.setPortrait(portrait);
            }
            if (vipInfo != null && vipInfo.getExpireDate() != null)
                userInfoVO.setVipExpireTime(vipInfo.getExpireDate().getTime());
            root.put("user", new Gson().toJson(userInfoVO));
@@ -82,6 +93,42 @@
        return JsonUtilV2.loadTrueJson(root.toString());
    }
    @RequestMapping("getVIPOrderList")
    @ResponseBody
    public String getVIPOrderList(AcceptData acceptData, String loginUid, int page) {
        Gson gson = new GsonBuilder().registerTypeAdapter(VIPPriceType.class, new JsonSerializer<VIPPriceType>() {
            @Override
            public JsonElement serialize(VIPPriceType value, Type theType, JsonSerializationContext context) {
                if (value == null) {
                    return new JsonPrimitive("");
                } else {
                    return new JsonPrimitive(value.getName());
                }
            }
        }).registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
            @Override
            public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
                if (value == null) {
                    return new JsonPrimitive("");
                } else {
                    return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy.MM.dd HH:mm"));
                }
            }
        }).create();
        JSONObject root = new JSONObject();
        List<VIPOrderRecord> list = vipService.listOrderRecord(loginUid, null, page, Constant.pageCount);
        for (VIPOrderRecord record : list) {
            record.setIpInfo(null);
            record.setUpdateTime(null);
        }
        long count = vipService.countOrderRecord(loginUid, null);
        root.put("list", gson.toJson(list));
        root.put("count", count);
        return JsonUtilV2.loadTrueJson(root.toString());
    }
    /**
     * 生成订单
     *