package com.rrtx.services.common.entity;


import cn.hutool.core.util.StrUtil;

/**
 * ClassName: AdmConstant<br>
 * Description: 常量 <br>
 * Company: rrtx
 *
 * @author rrtx
 * @version v1.0.0    2019/7/24 4:48 PM  xugz    文件初始创建
 */
public class AdmConstant {

	// 注册用户角色ID
	public static final Long REGISTER_ROLE_ID = 2L;

	// 排序规则：降序
	public static final String ORDER_DESC = "desc";
	// 排序规则：升序
	public static final String ORDER_ASC = "asc";

	// 前端页面路径前缀
	public static final String VIEW_PREFIX = "fap/views/";

	// 验证码 Session Key
	public static final String CODE_PREFIX = "fap_captcha_";

	// 允许下载的文件类型，根据需求自己添加（小写）
	public static final String[] VALID_FILE_TYPE = {"xlsx", "zip"};

	/**
	 * {@link com.rrtx.services.common.controller.BaseController}
	 * getDataTable 中 HashMap 默认的初始化容量
	 */
	public static final int DATA_MAP_INITIAL_CAPACITY = 4;

	/**
	 * 异步线程池名称
	 */
	public static final String ASYNC_POOL = "fapAsyncThreadPool";

	/**
	 * 命名空间
	 */
	public static final String NAMESPACE = "wfk";

	public static final String LANGUAGE_ZH = "zh";

	public static final String LANGUAGE_EN = "en";


	public static final String REDIS_STAR = "*";

	public final static String DEFAULT_ERROR_MSG = "System Error";

	/**
	 * 	团购渠道
	 */
	public static final String CHANNEL_01 = "A01";

	/**
	 * 支付渠道	微信
	 */
	public static final String PAY_CHANNEL_WX = "WX";
	/**
	 * 支付渠道	微信
	 */
	public static final String PAY_CHANNEL_AL = "AL";

	/**
	 * 	订单支付类型	已重新支付
	 */
	public static final String PAY_ORDER_TYPE_80 = "已重新支付";
	/**
	 * 	订单支付类型	支付中
	 */
	public static final String PAY_ORDER_TYPE_89 = "支付中";
	/**
	 * 	订单支付类型	已取消
	 */
	public static final String PAY_ORDER_TYPE_90 = "已取消";
	/**
	 * 	订单支付类型	未支付
	 */
	public static final String PAY_ORDER_TYPE_91 = "未支付";
	/**
	 * 	订单支付类型	初始化
	 */
	public static final String PAY_ORDER_TYPE_92 = "初始化";
	/**
	 * 	订单支付类型	已支付
	 */
	public static final String PAY_ORDER_TYPE_00 = "已支付";

	/**
	 * 	订单支付类型	已退款
	 */
	public static final String PAY_ORDER_TYPE_99 = "已退款";

	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_00 = "充值";
	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_10 = "支付";
	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_20 = "转账";
	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_30 = "退款";
	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_40 = "提现";
	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_50 = "结算";
	/**
	 * payment表交易类型
	 */

	public static final String TRANS_TYPE_60 = "调账";


	/**
	 * 	分类表所属人 00平台
	 */
	public static final String CLASSIFICATION_TYPE_00 = "00";
	/**
	 * 	分类表所属人 01个人
	 */
	public static final String CLASSIFICATION_TYPE_01 = "01";

	/**
	 * 	文件类型00图片
	 */
	public static final String FILE_TYPE_00 = "00";
	/**
	 * 	文件类型01文档
	 */
	public static final String FILE_TYPE_01 = "01";
	/**
	 * 	文件类型02视频
	 */
	public static final String FILE_TYPE_02 = "02";
	/**
	 * 	文件类型03音频
	 */
	public static final String FILE_TYPE_03 = "03";


	/**
	 * 拼接RedisKey 不区分语言
	 * @param dictCode
	 * @param dictType
	 * @return
	 */
	public static String concatRedisPrefixKey(String dictCode, String dictType) {
		return NAMESPACE + StrUtil.COLON
				+ dictType + StrUtil.COLON
				+ dictCode + REDIS_STAR;
	}

	/**
	 * 拼接RedisKey
	 * @param dictCode
	 * @param type
	 * @param dictLang
	 * @return
	 */
	public static String concatRedisKey(String dictCode, String type, String dictLang) {
		return NAMESPACE + StrUtil.COLON
				+ type + StrUtil.COLON
				+ dictCode + StrUtil.COLON
				+ dictLang;

	}
}
