huangsijun
2025-09-22 a78c011de350b188afb03beb2f26a73f35f71986
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
 
namespace app\api\model\settings;
 
use app\common\model\settings\Message as MessageModel;
use app\common\model\settings\MessageSettings as MessageSettingsModel;
 
/**
 * 消息模型
 */
class Message extends MessageModel
{
    /**
     * 获取消息
     */
    public static function getMessageByNameArr($platform = '', $message_ename_arr)
    {
        $template_arr = [];
        //只适用于微信
        if($platform != 'wx'){
            return $template_arr;
        }
        $model = new self();
        //子查询先过滤条件
        $settings_model = new MessageSettingsModel;
        $subsql = $settings_model->where('wx_status', '=', 1)
            ->where('app_id', '=', self::$app_id)
            ->buildSql();
 
        $template_list = $model->withoutGlobalScope()->alias('message')->field(['message.*','settings.wx_status','settings.wx_template'])
            ->where('message.message_ename', 'in', $message_ename_arr)
            ->where('message.is_delete', '=', 0)
            ->join([$subsql=> 'settings'], 'settings.message_id = message.message_id', 'left')
            ->order(['message.sort' => 'asc'])
            ->select()->toArray();
 
        foreach($template_list as $template){
            if($template['wx_template']){
                $json = json_decode($template['wx_template'], true);
                array_push($template_arr, $json['template_id']);
            }
        }
        return $template_arr;
    }
}