Files
sentcms/app/controller/api/Department.php
2020-03-28 12:10:40 +08:00

166 lines
4.1 KiB
PHP

<?php
// +----------------------------------------------------------------------
// | SentCMS [ WE CAN DO IT JUST THINK IT ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013 http://www.tensent.cn All rights reserved.
// +----------------------------------------------------------------------
// | Author: molong <molong@tensent.cn> <http://www.tensent.cn>
// +----------------------------------------------------------------------
namespace app\controller\api;
use app\model\Department as DepartmentM;
use app\model\Role;
use sent\tree\Tree;
/**
* @title 部门管理
*/
class Department extends Base {
/**
* @title 部门列表
* @param DepartmentM $depart [description]
* @return [type] [description]
*/
public function index(DepartmentM $depart) {
$param = $this->request->param();
$tree = isset($param['tree']) ? $param['tree'] : 0;
$map = [];
if (isset($param['name']) && $param['name'] != '') {
$map[] = ['name', 'LIKE', '%' . $param['name'] . '%'];
}
if (isset($param['status']) && $param['status'] != '') {
$map[] = ['status', '=', $param['status']];
}
$list = $depart->where($map)->select()->toArray();
if($tree == 1){
$tree = (new Tree())->listToTree($list, 'id', 'pid', 'children');
}else{
$tree = (new Tree())->toFormatTree($list);
}
$this->data['data'] = $tree;
return $this->data;
}
/**
* @title 部门添加
* @method POST
* @param CustomerM $customer [description]
* @return [type] [description]
*/
public function add(DepartmentM $depart) {
$data = $this->request->post();
$result = $depart->save($data);
if (false !== $result) {
$this->data['code'] = 1;
$this->data['msg'] = '添加成功!';
}else{
$this->data['code'] = 0;
$this->data['msg'] = '添加失败!';
}
return $this->data;
}
/**
* @title 部门编辑
* @method POST
* @param CustomerM $customer [description]
* @return [type] [description]
*/
public function edit(DepartmentM $depart) {
$data = $this->request->post();
$result = $depart->update($data, ['id'=>$data['id']]);
if (false !== $result) {
$this->data['code'] = 1;
$this->data['msg'] = '修改成功!';
}else{
$this->data['code'] = 0;
$this->data['msg'] = '修改失败!';
}
return $this->data;
}
/**
* @title 角色列表
* @param Role $role [description]
* @return [type] [description]
*/
public function role(Role $role) {
$list = $role->getDataList($this->request)
->append(['status_text'])
->toArray();
$this->data['data'] = $list;
return $this->data;
}
/**
* @title 角色添加
* @method POST
* @param CustomerM $customer [description]
* @return [type] [description]
*/
public function addrole(Role $role) {
$data = $this->request->post();
$result = $role->save($data);
if (false !== $result) {
$this->data['code'] = 1;
$this->data['msg'] = '添加成功!';
}else{
$this->data['code'] = 0;
$this->data['msg'] = '添加失败!';
}
return $this->data;
}
/**
* @title 角色编辑
* @method POST
* @param CustomerM $customer [description]
* @return [type] [description]
*/
public function editrole(Role $role) {
$data = $this->request->post();
$result = $role->update($data, ['id'=>$data['id']]);
if (false !== $result) {
$this->data['code'] = 1;
$this->data['msg'] = '修改成功!';
}else{
$this->data['code'] = 0;
$this->data['msg'] = '修改失败!';
}
return $this->data;
}
/**
* @title 删除角色
* @method GET
* @param CustomerM $customer [description]
* @return [type] [description]
*/
public function delrole(Role $role) {
$param = $this->request->param();
if (!isset($param['id']) || !$param['id']) {
$this->data['code'] = 0;
$this->data['msg'] = '非法操作!';
}
$result = $role->where('id', $param['id'])->delete();
if (false !== $result) {
$this->data['code'] = 1;
$this->data['msg'] = '删除成功!';
}else{
$this->data['code'] = 0;
$this->data['msg'] = '删除失败!';
}
return $this->data;
}
}