123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- <?php
- namespace wecom;
- use app\common\model\base\user\User;
- use app\common\model\base\user\UserRole;
- use app\common\model\enroll\JdfEnrollVolunteer;
- use app\common\model\msgPushConfig\MsgPushConfig;
- use daorui\platform\platformAuth;
- class Wecom
- {
-
- protected static function getPushIds($org_id)
- {
- $res = MsgPushConfig::where('org_id', $org_id)->find();
- if (!empty($res)) {
- $role_ids = $res['role_ids'];
- $user_ids = UserRole::where('role_id', 'IN', $role_ids)->column('user_id');
- if (empty($user_ids)) return Result(false, '未找到推送用户');
- $uuids = User::where('user_id', 'IN', $user_ids)->column('uuid');
- return $uuids;
- } else {
- return Result(false, '未配置推送用户');
- }
- }
-
- protected static function getMsgTemplate(string $student_name, string $grade_name, int $org_id, string $school_name, string $semester_date, string $former_school = '')
- {
-
- $transferCount = JdfEnrollVolunteer::alias('a')
- ->join('jdf_enroll_students b', 'a.enroll_id=b.enroll_id')
- ->where('b.is_transfer', 1)
- ->where('a.org_id', $org_id)
- ->count();
- $nonTransferCount = JdfEnrollVolunteer::alias('a')
- ->join('jdf_enroll_students b', 'a.enroll_id=b.enroll_id')
- ->where('b.is_transfer', 2)
- ->where('a.org_id', $org_id)
- ->count();
- $contet = "";
- $contet .= "【报名预约信息】\r\n";
- $contet .= "学生姓名:$student_name\r\n";
- $contet .= "预约年级:$grade_name\r\n";
- $contet .= "预约校区:$school_name\r\n";
- $contet .= "原就读园校:$former_school\r\n";
- $contet .= "预约日期:$semester_date\r\n";
- $contet .= "截止目前,预约新生$nonTransferCount.,插班生$transferCount\r\n";
- WLog('getPushId', $contet);
- return $contet;
- }
-
- public static function sendMsg($data)
- {
- $uuids = self::getPushIds($data['org_id']);
- WLog('getPushId', $uuids);
- $centent = self::getMsgTemplate($data['name'], $data['grade_name'], $data['org_id'], $data['school_name'], $data['semester_date'], $data['former_school']);
- WLog('getPushId', $centent);
- $sendData = [
- "uuid" => $uuids,
- "tal_data" => [
- "agentid" => 1000071,
- "msgtype" => "text",
- "text" => [
- "content" => $centent,
- ],
- ],
- ];
- WLog('getPushId', $sendData);
- $res = (new platformAuth())->interfaceRequest('sendWeComMsg', $sendData);
- WLog('getPushId', $res);
- if (!$res['code']) return Result(false, $res['msg']);
- return Result(true, '发送成功');
- }
-
- public static function sendMsgAdmin($data)
- {
- $uuids = self::getPushIds(1);
- $centent = self::getMsgTemplate($data['name'], $data['grade_name'], $data['org_id'], $data['school_name'], $data['semester_date'], $data['former_school']);
- WLog('getPushId', $centent);
- $sendData = [
- "uuid" => $uuids,
- "tal_data" => [
- "agentid" => 1000071,
- "msgtype" => "text",
- "text" => [
- "content" => $centent,
- ],
- ],
- ];
- WLog('getPushId', $sendData);
- $res = (new platformAuth())->interfaceRequest('sendWeComMsg', $sendData);
- WLog('getPushId', $res);
- if (!$res['code']) return Result(false, $res['msg']);
- return Result(true, '发送成功');
- }
- public function demo()
- {
- }
- }
|