<?php
|
|
namespace app\operations\model\supplier;
|
|
use app\common\model\supplier\member\Plan as MemberPlanModel;
|
|
/**
|
* 供应商年卡套餐模型
|
*/
|
class Plan extends MemberPlanModel
|
{
|
/**
|
* 获取列表记录
|
*/
|
public function getList($data)
|
{
|
$model = $this;
|
if (!empty($data['name'])) {
|
$model = $model->where('name', 'like', '%' . $data['name'] . '%');
|
}
|
if ($data['status'] >= 0) {
|
$model = $model->where('status', '=', $data['status']);
|
}
|
$list = $model->with('plan_access')
|
->where(['is_delete'=>0])
|
->order(['sort' => 'asc', 'create_time' => 'desc'])
|
->paginate($data);
|
if (empty($list)) {
|
$addDate=[
|
'name' => '默认套餐',
|
'price' => 0,
|
'sort' => 0,
|
'status' => 1,
|
'is_default' => 1,
|
'app_id' => self::$app_id,
|
];
|
$this->save($addDate);
|
$list = $model->with('plan_access')
|
->order(['sort' => 'asc', 'create_time' => 'desc'])
|
->paginate($data);
|
}
|
|
return $list;
|
}
|
|
/**
|
* 新增记录
|
*/
|
public function add($data)
|
{
|
$data['app_id'] = self::$app_id;
|
$this->transaction(function () use ($data) {
|
$this->save($data);
|
$this->addPlanAccess($data['access_ids']);
|
});
|
return $this;
|
}
|
|
/**
|
* 编辑记录
|
*/
|
public function edit($data)
|
{
|
$this->transaction(function () use ($data) {
|
$this->save($data);
|
$this->addPlanAccess($data['access_ids']);
|
});
|
return $this;
|
}
|
private function addPlanAccess($list)
|
{
|
$this->planAccess()->where('plan_id', $this->plan_id)->delete();
|
$list = json_decode($list);
|
$data=array_map(function($item){
|
return [
|
'access_id' => $item,
|
'app_id' => self::$app_id,
|
];
|
},$list);
|
return $this->planAccess()->saveAll($data);
|
}
|
/**
|
* 软删除
|
*/
|
public function setDelete()
|
{
|
return $this->save(['is_delete' => 1]);
|
}
|
}
|