package com.njyunzhi.pet_identity.common;

import cn.binarywang.wx.miniapp.bean.WxMaSubscribeMessage;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;

import java.util.Formatter;
import java.util.List;

public class MessageUtil {

    public static List<WxMaSubscribeMessage.MsgData> getWxMessageData(String jsonStr, Object ...values) {
        String str = new Formatter().format(jsonStr, values).toString();

        return JSONArray.parseArray(str, WxMaSubscribeMessage.MsgData.class);
    }

//    public static WxMaSubscribeMessage getWxMaSubscribeMessage(TaMessageTemplate taMessageTemplate) {
//        if (null == taMessageTemplate) return null;
//
//        WxMaSubscribeMessage message = new WxMaSubscribeMessage();
//        message.setTemplateId(taMessageTemplate.getAppTplId());
//
//        return message;
//    }
//
//    public static SMSUtils.Message getSmsMessage(TaMessageTemplate taMessageTemplate) {
//        if (null == taMessageTemplate) return null;
//
//        SMSUtils.Message message = new SMSUtils.Message();
//        message.setCode(taMessageTemplate.getAppTplId());
//        message.setSign(taMessageTemplate.getAppTplSign());
//
//        return message;
//    }

    @Data
    public static class NaviPage {
        private String page;
        private String query;

        NaviPage() {}
        public static NaviPage fromJSON(String jsonStr) {
            JSONObject jsonObject = JSONObject.parseObject(jsonStr);
            NaviPage naviPage = new NaviPage();
            naviPage.page = (String) jsonObject.get("page");
            naviPage.query = (String) jsonObject.get("query");
            return naviPage;
        }

        public String toURL(Object ...values) {
            String queryString = new Formatter().format(this.query, values).toString();
            return this.page + "?" + queryString;
        }

    }

}
