'业务通知', self::VERIFICATION_CODE => '验证码' ]; if ($value === true) { return $data; } return $data[$value]; } /** * @notes 获取场景描述 * @param $sceneId * @param false $flag * @return string|string[] * @author 段誉 * @date 2022/3/29 11:33 */ public static function getSceneDesc($sceneId, $flag = false) { $desc = [ self::LOGIN_CAPTCHA => '登录验证码', self::BIND_MOBILE_CAPTCHA => '绑定手机验证码', self::CHANGE_MOBILE_CAPTCHA => '变更手机验证码', self::FIND_LOGIN_PASSWORD_CAPTCHA => '找回登录密码验证码', ]; if ($flag) { return $desc; } return $desc[$sceneId] ?? ''; } /** * @notes 更具标记获取场景 * @param $tag * @return int|string * @author 段誉 * @date 2022/9/15 15:08 */ public static function getSceneByTag($tag) { $scene = [ // 手机验证码登录 'YZMDL' => self::LOGIN_CAPTCHA, // 绑定手机号验证码 'BDSJHM' => self::BIND_MOBILE_CAPTCHA, // 变更手机号验证码 'BGSJHM' => self::CHANGE_MOBILE_CAPTCHA, // 找回登录密码 'ZHDLMM' => self::FIND_LOGIN_PASSWORD_CAPTCHA, ]; return $scene[$tag] ?? ''; } /** * @notes 获取场景变量 * @param $sceneId * @param false $flag * @return array|string[] * @author 段誉 * @date 2022/3/29 11:33 */ public static function getVars($sceneId, $flag = false) { $desc = [ self::LOGIN_CAPTCHA => '验证码:code', self::BIND_MOBILE_CAPTCHA => '验证码:code', self::CHANGE_MOBILE_CAPTCHA => '验证码:code', self::FIND_LOGIN_PASSWORD_CAPTCHA => '验证码:code', ]; if ($flag) { return $desc; } return isset($desc[$sceneId]) ? ['可选变量 ' . $desc[$sceneId]] : []; } /** * @notes 获取系统通知示例 * @param $sceneId * @param false $flag * @return array|string[] * @author 段誉 * @date 2022/3/29 11:33 */ public static function getSystemExample($sceneId, $flag = false) { $desc = []; if ($flag) { return $desc; } return isset($desc[$sceneId]) ? [$desc[$sceneId]] : []; } /** * @notes 获取短信通知示例 * @param $sceneId * @param false $flag * @return array|string[] * @author 段誉 * @date 2022/3/29 11:33 */ public static function getSmsExample($sceneId, $flag = false) { $desc = [ self::LOGIN_CAPTCHA => '您正在登录,验证码${code},切勿将验证码泄露于他人,本条验证码有效期5分钟。', self::BIND_MOBILE_CAPTCHA => '您正在绑定手机号,验证码${code},切勿将验证码泄露于他人,本条验证码有效期5分钟。', self::CHANGE_MOBILE_CAPTCHA => '您正在变更手机号,验证码${code},切勿将验证码泄露于他人,本条验证码有效期5分钟。', self::FIND_LOGIN_PASSWORD_CAPTCHA => '您正在找回登录密码,验证码${code},切勿将验证码泄露于他人,本条验证码有效期5分钟。', ]; if ($flag) { return $desc; } return isset($desc[$sceneId]) ? ['示例:' . $desc[$sceneId]] : []; } /** * @notes 获取公众号模板消息示例 * @param $sceneId * @param false $flag * @return array|string[]|\string[][] * @author 段誉 * @date 2022/3/29 11:33 */ public static function getOaExample($sceneId, $flag = false) { $desc = []; if ($flag) { return $desc; } return $desc[$sceneId] ?? []; } /** * @notes 获取小程序订阅消息示例 * @param $sceneId * @param false $flag * @return array|mixed * @author 段誉 * @date 2022/3/29 11:33 */ public static function getMnpExample($sceneId, $flag = false) { $desc = []; if ($flag) { return $desc; } return $desc[$sceneId] ?? []; } /** * @notes 提示 * @param $type * @param $sceneId * @return array|string|string[]|\string[][] * @author 段誉 * @date 2022/3/29 11:33 */ public static function getOperationTips($type, $sceneId) { // 场景变量 $vars = self::getVars($sceneId); // 其他提示 $other = []; // 示例 switch ($type) { case self::SYSTEM: $example = self::getSystemExample($sceneId); break; case self::SMS: $other[] = '生效条件:1、管理后台完成短信设置。 2、第三方短信平台申请模板 3、若是腾讯云模板变量名须换成变量名出现顺序对应的数字(例:您好{nickname},您的订单{order_sn}已发货! 须改为 您好{1},您的订单{2}已发货!)'; $example = self::getSmsExample($sceneId); break; case self::OA: $other[] = '配置路径:公众号后台 > 广告与服务 > 模板消息'; $other[] = '推荐行业:主营行业:IT科技/互联网|电子商务 副营行业:消费品/消费品'; $example = self::getOaExample($sceneId); break; case self::MNP: $other[] = '配置路径:小程序后台 > 功能 > 订阅消息'; $example = self::getMnpExample($sceneId); break; } $tips = array_merge($vars, $example, $other); return $tips; } }