package com.skr.mdm.constant;

import java.util.*;

/**
 * @ProjectName: mdm_new
 * @Package: com.skr.mdm.constant
 * @ClassName: SendCmdTypeContants
 * @Author: Tty
 * @Description: 安全管理 下发推送常量
 * @Date: 2020/9/17 14:38
 * @Version: 1.0
 */
public class SendCmdTypeConstants {
	/**
	 * 推送通知
	 */
	public static final String SEND_MSG = "sendMsg";
	/**
	 * 推送通知
	 */
	public static final String SEND_FORCE_MSG = "forceSendMsg";
	/**
	 * 设置回传
	 */
	public static final String SET_LOCATION_TIME = "setLocationTimeInterval";
	/**
	 * 推送铃声
	 */
	public static final String RING_BELL = "ringBell";
	/**
	 * 锁屏
	 */
	public static final String LOCK_SCREEN = "lockScreen";
	/**
	 * 解锁
	 */
	public static final String UNLOCK_SCREEN = "unlockScreen";
	/**
	 * 切入安全域
	 */
	public static final String CHANGE_SAFETY_SCOPE = "changeSafetyScope";
	/**
	 * 流量阈值
	 */
	public static final String FLOW_CONTROLLER = "flowController";
	/**
	 * 拍照
	 */
	public static final String TASK_PHOTO = "takePhoto";
	/**
	 * 截屏
	 */
	public static final String SCREE_CAPTURE = "screenCapture";
	/**
	 * 点名
	 */
	public static final String ROLL_CALL = "rollCall";
	/**
	 * 设备丢失(擦除设备数据)
	 */
	public static final String LOSS_EQ_CLEAR_DATA = "lossEqClearData";
	/**
	 * 设备丢失(不擦除设备数据)
	 */
	public static final String LOSS_EQ_DATA = "lossEqData";
	/**
	 * 找回
	 */
	public static final String BACK_EQ = "backEq";
	/**
	 * 淘汰设备擦除全部数据
	 */
	public static final String RESTORE_FACTORY = "restoreFactory";
	/**
	 *  开启移动数据
	 */
	public static final String OPEN_MOBILE_DATA = "openMobileData";
	/**
	 *  恢复出厂设置
	 */
	public static final String ONLY_RESTORE_FACTORY = "onlyRestoreFactory";
	/**
	 *  文件获取
	 */
	public static final String FILE_ACCESS = "getFileAccess";
	/**
	 *  文件上传信息
	 */
	public static final String UPLOAD_FILE = "clientUploadFile";
	/**
	 * 微信日志回传周期
	 */
	public static final String WECHAT_UPLOAD_PERIOD = "wechatUploadPeriod";
	/**
	 * 管控离线告警触发周期
	 */
	public static final String OFFLINE_WARN_PERIOD = "offlineWarnPeriod";
	/**
	 * 关机
	 */
	public static final String SHUTDOWN = "shutdown";


	public static final Integer DELETE_FACTORY = 4;


	public static final Map<String, Integer> DATA_BASE_CMD_TYPE = Collections.unmodifiableMap(new HashMap<String, Integer>() {
		private static final long serialVersionUID = 1L;

		{
			put(SEND_MSG, 1);
			put(SEND_FORCE_MSG, 4);
			put(SET_LOCATION_TIME, 3);
			put(RING_BELL, 1);
			put(LOCK_SCREEN, 1);
			put(UNLOCK_SCREEN, 2);
			put(CHANGE_SAFETY_SCOPE, 3);
			put(FLOW_CONTROLLER, 2);
			put(TASK_PHOTO, 1);
			put(SCREE_CAPTURE, 2);
			put(ROLL_CALL, 2);
			put(LOSS_EQ_CLEAR_DATA, 1);
			put(LOSS_EQ_DATA, 2);
			put(BACK_EQ, 3);
			put(RESTORE_FACTORY, 4);
			put(OPEN_MOBILE_DATA, 0);
			put(ONLY_RESTORE_FACTORY, 0);
			put(WECHAT_UPLOAD_PERIOD, 5);
			put(OFFLINE_WARN_PERIOD, 6);
			put(SHUTDOWN, 4);
		}
	});

	public static final List<String> SEND_CMD_INFORM = Collections.unmodifiableList(new ArrayList<String>() {
		private static final long serialVersionUID = 1L;

		{
			add(SEND_MSG);
			add(SET_LOCATION_TIME);
			add(FLOW_CONTROLLER);
			add(SEND_FORCE_MSG);
			add(WECHAT_UPLOAD_PERIOD);
			add(OFFLINE_WARN_PERIOD);
		}
	});
	public static final List<String> SEND_CMD_LOCK_SCREEN = Collections.unmodifiableList(new ArrayList<String>() {
		private static final long serialVersionUID = 1L;

		{
			add(LOCK_SCREEN);
			add(UNLOCK_SCREEN);
		}
	});
	public static final List<String> SEND_CMD_PUSH = Collections.unmodifiableList(new ArrayList<String>() {
		private static final long serialVersionUID = 1L;

		{
			add(RING_BELL);
			add(CHANGE_SAFETY_SCOPE);
			add(ROLL_CALL);
			add(SHUTDOWN);
		}
	});
	public static final List<String> SEND_CMD_CAPTURE_IMAGE = Collections.unmodifiableList(new ArrayList<String>() {
		private static final long serialVersionUID = 1L;

		{
			add(TASK_PHOTO);
			add(SCREE_CAPTURE);
		}
	});
	public static final List<String> SEND_CMD_USER_STATUS = Collections.unmodifiableList(new ArrayList<String>() {
		private static final long serialVersionUID = 1L;

		{
			add(LOSS_EQ_CLEAR_DATA);
			add(LOSS_EQ_DATA);
			add(BACK_EQ);
			add(RESTORE_FACTORY);
		}
	});
}
