package com.xzx.gc.common.utils;
|
|
|
import cn.hutool.core.lang.Singleton;
|
import cn.hutool.json.JSONUtil;
|
import cn.jiguang.common.ClientConfig;
|
import cn.jiguang.common.resp.APIConnectionException;
|
import cn.jiguang.common.resp.APIRequestException;
|
import cn.jpush.api.JPushClient;
|
import cn.jpush.api.push.model.Options;
|
import cn.jpush.api.push.model.Platform;
|
import cn.jpush.api.push.model.PushPayload;
|
import cn.jpush.api.push.model.audience.Audience;
|
import cn.jpush.api.push.model.notification.AndroidNotification;
|
import cn.jpush.api.push.model.notification.IosNotification;
|
import cn.jpush.api.push.model.notification.Notification;
|
import com.xzx.gc.common.constant.Constants;
|
import com.xzx.gc.model.order.ScanDto;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.stereotype.Component;
|
|
import javax.annotation.PostConstruct;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
|
/**
|
* 极光推送
|
*/
|
@Component
|
@Slf4j
|
public class JGPushUtil {
|
|
@Autowired
|
private JGUtil jgUtil;
|
|
|
/**
|
* 新的订单
|
*/
|
public void pushNewOrder(String tag,String townId){
|
//推送
|
Map<String, String> objectObjectHashMap = new HashMap<>();
|
objectObjectHashMap.put("newOrder", "{}");
|
jgUtil.sendByAnroid("您有新的订单", "抢单", objectObjectHashMap, Audience.tag(tag + "_" +townId));
|
}
|
|
|
/**
|
* 催单
|
* @param partnerId 合伙人ID
|
*/
|
public void pushRemindOrder(String partnerId){
|
Map<String, String> objectObjectHashMap = new HashMap<>();
|
objectObjectHashMap.put(Constants.REMINDER_ORDER_TAG, "{}");
|
jgUtil.sendByAnroid("订单已被催单", "催单",objectObjectHashMap, Audience.tag(Constants.REMINDER_ORDER_TAG + "_" + partnerId));
|
}
|
|
|
/**
|
* 轨迹
|
* @param traceIds 轨迹ID
|
* @param userId 用户ID
|
*/
|
public void pushTrace(String traceIds,String userId){
|
Map<String, String> map = new HashMap<>();
|
map.put("traceIds", traceIds);
|
jgUtil.sendByAnroid("", "轨迹", map, Audience.alias(userId));
|
}
|
|
/**
|
* 订单
|
*/
|
public void pushOrder(String orderId,String userId){
|
Map<String, String> map = new HashMap<>();
|
map.put("orderId", orderId);
|
jgUtil.sendByAnroid("", "订单信息", map, Audience.alias(userId));
|
}
|
|
|
|
/**
|
* 打卡
|
* @param scanDto
|
*/
|
public void pushClock(ScanDto scanDto){
|
Map<String, String> map = new HashMap<>();
|
map.put("scan", JSONUtil.toJsonStr(scanDto));
|
jgUtil.sendByAnroid("", "打卡", map, Audience.alias(scanDto.getUserId()));
|
}
|
|
}
|