全部
常见问题
产品动态
精选推荐

pro 2.1BETA 同步小程序订阅消息提示 队列中 临时处理办法

管理 管理 编辑 删除

将 \app\controller\admin\v1\application\routine\RoutineTemplate.php 这个文件的syncSubscribe方法

attachmentId-9557

第一个大括号内的所有代码删除
替换成

{
    if (!sys_config('routine_appId') || !sys_config('routine_appsecret')) {
        throw new AdminException('请先配置小程序appid、appSecret等参数');
    }
    $all = $this->services->getTemplateList(['status' => 1, 'type' => 0]);
    $errData = [];
    $errMessage = [
        '-1' => '系统繁忙,此时请稍候再试',
        '40001' => 'AppSecret错误或者AppSecret不属于这个小程序,请确认AppSecret 的正确性',
        '40002' => '请确保grant_type字段值为client_credential',
        '40013' => '不合法的AppID,请检查AppID的正确性,避免异常字符,注意大小写',
        '40125' => '小程序配置无效,请检查配置',
        '41002' => '缺少appid参数',
        '41004' => '缺少secret参数',
        '43104' => 'appid与openid不匹配',
        '45009' => '达到微信api每日限额上限',
        '200011' => '此账号已被封禁,无法操作',
        '200012' => '个人模版数已达上限,上限25个',
    ];
    if ($all['list']) {
        $time = time();
        foreach ($all['list'] as $template) {
            if ($template['tempkey']) {
                if (!isset($template['kid'])) {
                    return $this->fail('数据库模版表(template_message)缺少字段:kid');
                }
                if (isset($template['kid']) && $template['kid']) {
                    continue;
                }
                $works = [];
                try {
                    $works = MiniProgramService::getSubscribeTemplateKeyWords($template['tempkey']);
                } catch (\Throwable $e) {
                    $wechatErr = $e->getMessage();
                    if (is_string($wechatErr)) throw new AdminException($wechatErr);
                    if (in_array($wechatErr->getCode(), array_keys($errMessage))) {
                        throw new AdminException($errMessage[$wechatErr->getCode()]);
                    }
                    $errData[1] = '获取关键词列表失败:' . $wechatErr->getMessage();
                }
                $kid = [];
                if ($works) {
                    $works = array_combine(array_column($works, 'name'), $works);
                    $content = is_array($template['content']) ? $template['content'] : explode("\n", $template['content']);
                    foreach ($content as $c) {
                        $name = explode('{{', $c)[0] ?? '';
                        if ($name && isset($works[$name])) {
                            $kid[] = $works[$name]['kid'];
                        }
                    }
                }
                if ($kid && isset($template['kid']) && !$template['kid']) {
                    $tempid = '';
                    try {
                        $tempid = MiniProgramService::addSubscribeTemplate($template['tempkey'], $kid, $template['name']);
                    } catch (\Throwable $e) {
                        $wechatErr = $e->getMessage();
                        if (is_string($wechatErr)) throw new AdminException($wechatErr);
                        if (in_array($wechatErr->getCode(), array_keys($errMessage))) {
                            throw new AdminException($errMessage[$wechatErr->getCode()]);
                        }
                        $errData[2] = '添加订阅消息模版失败:' . $wechatErr->getMessage();
                    }
                    if ($tempid != $template['tempid']) {
                        $this->services->update($template['id'], ['tempid' => $tempid, 'kid' => json_encode($kid), 'add_time' => $time], 'id');
                    }
                }
            }
        }
        /** @var SystemNotificationServices $systemNotificationServices */
        $systemNotificationServices = app()->make(SystemNotificationServices::class);
        $systemNotificationServices->clearTemplateCache();
    }
    $msg = $errData ? implode('\n', $errData) : '同步成功';
    return $this->success($msg);
}

可以临时同步消息提示,仅限参考,具体以官方修复方法为准!

请登录后查看

不会用ps的UI设计师 最后编辑于2022-11-01 12:09:07

快捷回复
回复({{post_count}}) {{!is_user ? '我的回复' :'全部回复'}}
排序 默认正序 回复倒序 点赞倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}}

作者 管理员 企业

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest==1? '取消推荐': '推荐'}}
沙发 板凳 地板 {{item.floor}}#
{{item.user_info.title}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
{{item.like_count}}
{{item.showReply ? '取消回复' : '回复'}}
删除
回复
回复

{{itemc.user_info.nickname}}

{{itemc.user_name}}

作者 管理员 企业

回复 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}   {{itemc.ip_address}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回复' : '回复'}}
删除
回复
回复
查看更多
回复
回复
3744
{{like_count}}
{{collect_count}}
添加回复 ({{post_count}})

相关推荐

不会用ps的UI设计师 作者
承接小程序、app、web页面整体设计。banner、logo、icon设计。wx:___6c___

回答

7530

发布

13

经验

53832

今日热榜
本月热榜
$item.title
{{item.title}}
热度 {{item.heat}}

快速安全登录

使用微信扫码登录
{{item.label}} {{item.label}} {{item.label}} 板块推荐 常见问题 产品动态 精选推荐 首页头条 首页动态 首页推荐
加精
取 消 确 定
回复
回复
问题:
问题自动获取的帖子内容,不准确时需要手动修改. [获取答案]
答案:
提交
bug 需求 取 消 确 定

微信登录/注册

切换手机号登录

{{ bind_phone ? '绑定手机' : '手机登录'}}

{{codeText}}
切换微信登录/注册
暂不绑定
CRMEB客服

CRMEB咨询热线 咨询热线

400-8888-794

微信扫码咨询

CRMEB开源商城下载 源码下载 CRMEB帮助文档 帮助文档
返回顶部 返回顶部
CRMEB客服