12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- <?php
- namespace App\Modules\User\Models;
- use Illuminate\Database\Eloquent\Model;
- use App\Modules\OfficialAccount\Models\ForceSubscribeUsers;
- use DB;
- class SubscribeRecord extends Model
- {
- protected $table = 'subscribe_records';
- protected $fillable = ['id', 'uid', 'appid', 'distribution_channel_id', 'openid','is_subscribed',
- 'subscribe_time','unsubscribe_time','created_at','updated_at'
- ];
-
- static public function create_subscribe_record($param){
- $data = [];
- $forceSubscribeUsers = ForceSubscribeUsers::forceSubscribeUsersByOpenidAndAC($param['openid'],$param['appid'],$param['distribution_channel_id']);
- $data['uid'] = isset($forceSubscribeUsers->uid)?$forceSubscribeUsers->uid:null;
-
- $data['appid'] = $param['appid'];
- $data['openid'] = $param['openid'];
- $data['is_subscribed'] = $param['is_subscribed'];
-
- if(isset($param['distribution_channel_id']) && $param['distribution_channel_id']){
- $data['distribution_channel_id'] = $param['distribution_channel_id'];
- }else{
- $data['distribution_channel_id'] = isset($forceSubscribeUsers->distribution_channel_id)?$forceSubscribeUsers->distribution_channel_id:null;
- }
- if(isset($param['subscribe_time']) && $param['subscribe_time']){
- $data['subscribe_time'] = $param['subscribe_time'];
- }else{
- $data['subscribe_time'] = isset($forceSubscribeUsers->subscribe_time)?$forceSubscribeUsers->subscribe_time:null;
- }
- if(isset($param['unsubscribe_time']) && $param['unsubscribe_time']){
- $data['unsubscribe_time'] = $param['unsubscribe_time'];
- }else{
- $data['unsubscribe_time'] = isset($forceSubscribeUsers->unsubscribe_time)?$forceSubscribeUsers->unsubscribe_time:null;
- }
- // \Log::info('create_subscribe_record:'.$data['uid'].' data:'.json_encode($data));
-
- self::firstOrCreate($data);
- }
- }
|