Browse Source
- 新增 Campus 控制器,实现获取员工下的全部校区接口 - 新增 CampusService服务类,提供校区相关的业务逻辑 - 在路由文件中添加新的校区接口路由master
3 changed files with 126 additions and 0 deletions
@ -0,0 +1,42 @@ |
|||||
|
<?php |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | Niucloud-admin 企业快速开发的多应用管理平台 |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | 官方网址:https://www.niucloud.com |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | niucloud团队 版权所有 开源版本可自由商用 |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | Author: Niucloud Team |
||||
|
// +---------------------------------------------------------------------- |
||||
|
|
||||
|
namespace app\api\controller\apiController; |
||||
|
|
||||
|
use app\Request; |
||||
|
use app\service\api\apiService\CampusService; |
||||
|
use app\service\api\apiService\CommonService; |
||||
|
use core\base\BaseApiService; |
||||
|
|
||||
|
/** |
||||
|
* 校区控制器相关接口 |
||||
|
* Class Personnel |
||||
|
* @package app\api\controller\apiController |
||||
|
*/ |
||||
|
class Campus extends BaseApiService |
||||
|
{ |
||||
|
|
||||
|
//校区-获取员工下的全部校区 |
||||
|
public function getPersonnelCampus(Request $request){ |
||||
|
$personnel_id =$request->param('personnel_id',''); |
||||
|
if(empty($personnel_id)){ |
||||
|
return fail('缺少参数'); |
||||
|
} |
||||
|
$where = [ |
||||
|
'personnel_id'=>$personnel_id |
||||
|
]; |
||||
|
$res = (new CampusService())->getAll($where); |
||||
|
if(!$res['code']){ |
||||
|
return fail($res['msg']); |
||||
|
} |
||||
|
return success($res['data']); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,81 @@ |
|||||
|
<?php |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | Niucloud-admin 企业快速开发的多应用管理平台 |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | 官方网址:https://www.niucloud.com |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | niucloud团队 版权所有 开源版本可自由商用 |
||||
|
// +---------------------------------------------------------------------- |
||||
|
// | Author: Niucloud Team |
||||
|
// +---------------------------------------------------------------------- |
||||
|
|
||||
|
namespace app\service\api\apiService; |
||||
|
|
||||
|
use app\model\campus\Campus; |
||||
|
use app\model\campus_person_role\CampusPersonRole; |
||||
|
use app\model\dict\Dict; |
||||
|
use core\base\BaseApiService; |
||||
|
|
||||
|
/** |
||||
|
* 校区服务层 |
||||
|
* Class MemberService |
||||
|
* @package app\service\api\member |
||||
|
*/ |
||||
|
class CampusService extends BaseApiService |
||||
|
{ |
||||
|
public function __construct() |
||||
|
{ |
||||
|
parent::__construct(); |
||||
|
$this->model = (new Campus()); |
||||
|
} |
||||
|
|
||||
|
//获取全部校区 |
||||
|
public function getAll(array $where){ |
||||
|
$res = [ |
||||
|
'code'=>0, |
||||
|
'msg'=>'缺少筛选条件', |
||||
|
'data'=>[] |
||||
|
]; |
||||
|
if(!$where){ |
||||
|
return $res; |
||||
|
} |
||||
|
|
||||
|
$model = $this->model; |
||||
|
//判断用没有员工id |
||||
|
if(!empty($where['personnel_id'])){ |
||||
|
//获取员工归属的校区id |
||||
|
$campus_id = $this->getPersonnelCamousId($where['personnel_id']); |
||||
|
if(!$campus_id){ |
||||
|
$res = [ |
||||
|
'code'=>0, |
||||
|
'msg'=>'暂无归属校区', |
||||
|
'data'=>[] |
||||
|
]; |
||||
|
return $res; |
||||
|
} |
||||
|
$model = $model->whereIn('id',$campus_id); |
||||
|
} |
||||
|
$data = $model->select()->toArray(); |
||||
|
$res = [ |
||||
|
'code'=>1, |
||||
|
'msg'=>'操作成功', |
||||
|
'data'=>$data |
||||
|
]; |
||||
|
return $res; |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 查询员工归属的校区id |
||||
|
* @param $personnel_id 员工表id |
||||
|
*/ |
||||
|
private function getPersonnelCamousId($personnel_id){ |
||||
|
//这里要去重 |
||||
|
$campus_id = CampusPersonRole::where('person_id',$personnel_id) |
||||
|
->distinct(true) |
||||
|
->column('campus_id'); |
||||
|
return $campus_id; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
Loading…
Reference in new issue