You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

163 lines
5.3 KiB

<?php
/**
* 日志规则控制器
*
* @author qifan
* @date 2020-12-03
*/
namespace app\admin\controller;
use app\admin\logic\DailyRuleLogic;
use think\Hook;
use think\Request;
class DailyRule extends ApiCommon
{
/**
* 用于判断权限
* @permission 无限制
* @allow 登录用户可访问
* @other 其他根据系统设置
**/
public function _initialize()
{
$action = [
'permission'=>[''],
'allow'=>['welcome', 'setwelcome', 'worklogrule', 'setworklogrule','schedulelist','addschedule','setschedule','delschedule']
];
Hook::listen('check_auth',$action);
$request = Request::instance();
$a = strtolower($request->action());
if (!in_array($a, $action['permission'])) {
parent::_initialize();
}
}
/**
* 获取欢迎语
*
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
*/
public function welcome(DailyRuleLogic $dailyRuleLogic)
{
$data = $dailyRuleLogic->welcome();
return resultArray(['data' => $data]);
}
/**
* 添加欢迎语
*
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
* @throws \think\Exception
* @throws \think\exception\PDOException
*/
public function setWelcome(DailyRuleLogic $dailyRuleLogic)
{
$mark = $this->param['welcome'];
$userInfo=$this->userInfo;
if (empty($mark)) return resultArray(['error' => '缺少日志欢迎语!']);
if (!$dailyRuleLogic->setWelcome($mark)) return resultArray(['error' => '添加失败!']);
# 系统操作日志
SystemActionLog($userInfo['id'], 'admin_oalog_rule','work_task','1','update','日志欢迎语' , '', '','设置了日志欢迎语');
return resultArray(['data' => '添加成功!']);
}
/**
* 获取日志规则
*
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\ModelNotFoundException
* @throws \think\exception\DbException
*/
public function workLogRule(DailyRuleLogic $dailyRuleLogic)
{
$data = $dailyRuleLogic->workLogRule();
return resultArray(['data' => $data]);
}
/**
* 设置日志规则
*
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
* @throws \think\Exception
* @throws \think\exception\PDOException
*/
public function setWorkLogRule(DailyRuleLogic $dailyRuleLogic)
{
if (empty($this->param['rule'])) return resultArray(['error' => '缺少规则参数!']);
$userInfo=$this->userInfo;
$dailyRuleLogic->setWorkLogRule($this->param['rule']);
# 系统操作日志
SystemActionLog($userInfo['id'], 'admin_oalog_rule','work_task', 1, 'update','日志规则' , '', '','设置了日志规则');
return resultArray(['data' => '设置成功!']);
}
/**
* 获取日程规则
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\ModelNotFoundException
* @throws \think\exception\DbException
*/
public function scheduleList(DailyRuleLogic $dailyRuleLogic){
$data = $dailyRuleLogic->schedule();
return resultArray(['data' => $data]);
}
/**
* 设置日程自定义规则
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
* @throws \think\Exception
* @throws \think\exception\PDOException
*/
public function setSchedule(DailyRuleLogic $dailyRuleLogic){
$userInfo=$this->userInfo;
if(empty($this->param['id'])) return resultArray(['error'=>'缺少参数']);
$dailyRuleLogic->setSchedule($this->param);
# 系统操作日志
SystemActionLog($userInfo['id'], 'admin_oalog_rule','work_task', 1, 'update','日程类型' , '', '','设置了日程类型');
return resultArray(['data' => '设置成功!']);
}
/**
* 添加日程自定义规则
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
*/
public function addSchedule(DailyRuleLogic $dailyRuleLogic){
$userInfo=$this->userInfo;
if(empty($this->param['name'])) return resultArray(['error'=>'缺少参数']);
$dailyRuleLogic->addSchedule($this->param);
# 系统操作日志
SystemActionLog($userInfo['id'], 'admin_oalog_rule','work_task', 1, 'save','日程类型' , '', '','新增了日程类型');
return resultArray(['data' => '添加成功!']);
}
/**
* 删除日程自定义规则
* @param DailyRuleLogic $dailyRuleLogic
* @return \think\response\Json
*/
public function delSchedule(DailyRuleLogic $dailyRuleLogic){
$userInfo=$this->userInfo;
if(empty($this->param['id'])) return resultArray(['error'=>'缺少参数']);
$dailyRuleLogic->delSchedule($this->param['id']);
# 系统操作日志
SystemActionLog($userInfo['id'], 'admin_oalog_rule','work_task', 1, 'update','日程类型' , '', '','删除了日程类型');
return resultArray(['data' => '删除成功!']);
}
}