|
|
<?php
|
|
|
// +----------------------------------------------------------------------
|
|
|
// | Description: 任务评论及基础
|
|
|
// +----------------------------------------------------------------------
|
|
|
// | Author: yykun
|
|
|
// +----------------------------------------------------------------------
|
|
|
|
|
|
namespace app\work\controller;
|
|
|
|
|
|
use think\Db;
|
|
|
use think\Request;
|
|
|
use think\Hook;
|
|
|
use app\admin\controller\ApiCommon;
|
|
|
|
|
|
class Taskcomment extends ApiCommon
|
|
|
{
|
|
|
/**
|
|
|
* 用于判断权限
|
|
|
* @permission 无限制
|
|
|
* @allow 登录用户可访问
|
|
|
* @other 其他根据系统设置
|
|
|
**/
|
|
|
public function _initialize()
|
|
|
{
|
|
|
$action = [
|
|
|
'permission'=>[''],
|
|
|
'allow'=>['index','save','delete']
|
|
|
];
|
|
|
Hook::listen('check_auth',$action);
|
|
|
$request = Request::instance();
|
|
|
$a = strtolower($request->action());
|
|
|
if (!in_array($a, $action['permission'])) {
|
|
|
parent::_initialize();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 添加评论
|
|
|
*
|
|
|
* @return \think\response\Json
|
|
|
* @throws \think\db\exception\DataNotFoundException
|
|
|
* @throws \think\db\exception\ModelNotFoundException
|
|
|
* @throws \think\exception\DbException
|
|
|
*/
|
|
|
public function save()
|
|
|
{
|
|
|
$param = $this->param;
|
|
|
$userId = $this->userInfo['id'];
|
|
|
|
|
|
if (empty($param['content'])) return resultArray(['error' => '缺少回复内容!']);
|
|
|
if (empty($param['type'])) return resultArray(['error' => '缺少回复类型:任务/日志']);
|
|
|
if (empty($param['type_id'])) return resultArray(['error' => '缺少回复数据ID']);
|
|
|
|
|
|
$commentModel = new \app\admin\model\Comment();
|
|
|
|
|
|
# 评论人ID
|
|
|
$param['user_id'] = $userId;
|
|
|
# 1:任务;2:日志
|
|
|
$param['type'] = !empty($param['type']) && $param['type'] == 2 ? 'oa_log' : 'task';
|
|
|
# 任务或日志的ID,取决于$param['type']的值
|
|
|
$param['type_id'] = $param['type_id'];
|
|
|
|
|
|
$flag = $commentModel->createData($param);
|
|
|
|
|
|
if ($flag) {
|
|
|
# 用户信息
|
|
|
$userInfo = Db::name('admin_user')->field(['realname', 'thumb_img'])->where('id', $flag['user_id'])->find();
|
|
|
$flag['userInfo'] = [
|
|
|
'user_id' => $flag['user_id'],
|
|
|
'realname' => $userInfo['realname'],
|
|
|
'thumb_img' => getFullPath($userInfo['thumb_img'])
|
|
|
];
|
|
|
|
|
|
# 时间格式
|
|
|
if (!empty($flag['create_time'])) $flag['create_time'] = date('Y-m-d H:i:s', $flag['create_time']);
|
|
|
|
|
|
return resultArray(['data' => $flag]);
|
|
|
} else {
|
|
|
return resultArray(['error' => $commentModel->getError()]);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 删除评论
|
|
|
* @author yykun
|
|
|
* @return
|
|
|
*/
|
|
|
public function delete()
|
|
|
{
|
|
|
$param = $this->param;
|
|
|
$commentModel = new \app\admin\model\Comment();
|
|
|
if (!$param['comment_id']) {
|
|
|
return resultArray(['error'=>'参数错误']);
|
|
|
}
|
|
|
$userInfo = $this->userInfo;
|
|
|
$param['create_user_id'] = $userInfo['id'];
|
|
|
$flag = $commentModel->delDataById($param);
|
|
|
if ( $flag ) {
|
|
|
return resultArray(['data'=>'删除成功']);
|
|
|
} else {
|
|
|
return resultArray(['error'=>$commentModel->getError()]);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|