<?php namespace App\Model; use Illuminate\Database\Eloquent\Model; use Request; use Excel; use DB; class UserSampleInviteModel extends Model { protected $connection = 'order'; protected $table = 'lie_user_sample_invite'; protected $primaryKey = 'invite_id'; public $timestamps = true; const CREATED_AT = 'create_time'; const UPDATED_AT = null; /** * @param \DateTime|int $value * @return false|int * @author dividez */ public function fromDateTime($value) { return strtotime(parent::fromDateTime($value)); } // 获取邀约列表 public function lists($request) { $user_id = $request->input('user_id'); $page = $request->input('page', 1); $limit = $request->input('limit', 10); $field = ['invite_id', 'user_id', 'account', 'invitee_uid', 'invitee_mobile', 'is_expire', 'type', 'create_time']; $list = $this->where('user_id', $user_id) ->select($field) ->orderBy('create_time', 'desc') ->orderBy('invite_id', 'asc') ->paginate($limit, ['*'], 'page', $page)->toArray(); $list['data'] = $this->handleData($list['data']); return [0, '获取成功', $list['data'], $list['total']]; } public function handleData($data) { if (!$data) return false; $OrderModel = new OrderModel(); foreach ($data as &$v) { $v['type_val'] = $v['type'] == 1 ? '样片' : '工具尺'; } return $data; } // 获取指定用户邀约人数 public function getUserInviteCount($user_id, $type=1) { $map = []; $map['user_id'] = $user_id; $map['type'] = $type; return $this->where($map)->where('is_expire', 1)->count(); } // 获取用户邀约列表 public function getUserInviteList($user_id) { return $this->where('user_id', $user_id)->select('invitee_uid', 'invitee_mobile', 'create_time')->get()->toArray(); } }