部分前台接口
This commit is contained in:
@@ -61,9 +61,31 @@ class CollectionService extends BaseService
|
||||
*/
|
||||
public function create($params): mixed
|
||||
{
|
||||
$myCollectionModel = $this->model::where('user_id', $this->userId)->where('project_id', $params['project_id'])->first();
|
||||
if ($myCollectionModel) {
|
||||
if (!empty($myCollectionModel['deleted_at'])) {
|
||||
return $this->model::where('id', $myCollectionModel['id'])->update([
|
||||
'deleted_at' => 0
|
||||
]);
|
||||
}
|
||||
$this->utils->errorThrow('您已收藏过该项目');
|
||||
}
|
||||
$params['user_id'] = $this->userId;
|
||||
return $this->insert($params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 取消收藏
|
||||
* @param $projectId
|
||||
* @return mixed
|
||||
*/
|
||||
public function unCollection($projectId)
|
||||
{
|
||||
return $this->model::where('user_id', $this->userId)->where('project_id', $projectId)->update([
|
||||
'deleted_at' => get_time()
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑用户收藏
|
||||
* @param $id
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace App\Service;
|
||||
use App\BaseApp\BaseService;
|
||||
use App\Enum\ProjectStatusEnum;
|
||||
use App\Enum\StatusEnum;
|
||||
use App\Models\CollectionModel;
|
||||
use App\Models\FeatureModel;
|
||||
use App\Models\ProjectLabelRelationModel;
|
||||
use App\Models\ProjectModel;
|
||||
@@ -71,6 +72,12 @@ class HomeService extends BaseService
|
||||
'features:id,project_id,name',
|
||||
'author:id,nick_name,avatar,email'
|
||||
];
|
||||
return $this->getDetail($id);
|
||||
$result = $this->getDetail($id);
|
||||
if (!empty($this->userId)) {
|
||||
$result['is_collection'] = CollectionModel::where('project_id', $id)->where('user_id', $this->userId)->exists();
|
||||
} else {
|
||||
$result['is_collection'] = false;
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace App\Service;
|
||||
use App\BaseApp\BaseService;
|
||||
use App\Enum\ProjectStatusEnum;
|
||||
use App\Enum\StatusEnum;
|
||||
use App\Models\CollectionModel;
|
||||
use App\Models\FeatureModel;
|
||||
use App\Models\ProjectLabelRelationModel;
|
||||
use App\Models\ProjectModel;
|
||||
@@ -60,6 +61,7 @@ class ProjectService extends BaseService
|
||||
'features:id,project_id,name',
|
||||
'author:id,nick_name,avatar'
|
||||
];
|
||||
|
||||
return $this->getDetail($id);
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ class UserService extends BaseService
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->selectField = [ 'id', 'account', 'nick_name', 'avatar', 'email', 'balance', 'qr_code', 'role_id', 'ip', 'ip_table', 'status', 'last_reset_password_at', 'created_at', 'updated_at', 'deleted_at', ];
|
||||
$this->selectField = [ 'id', 'account', 'nick_name', 'avatar', 'email', 'balance', 'is_sys_notifications', 'is_collection_notifications', 'is_marketing_notifications', 'qr_code', 'role_id', 'ip', 'ip_table', 'status', 'last_reset_password_at', 'created_at', 'updated_at', 'deleted_at', ];
|
||||
$this->model = UserModel::class;
|
||||
$this->queryField = [
|
||||
'account' => 'like',
|
||||
|
||||
@@ -61,7 +61,7 @@ class UtilsService
|
||||
*/
|
||||
public function notAuth($msg): mixed
|
||||
{
|
||||
exit(json_encode(['msg' => $msg, 'code' => ErrorEnum::NOT_AUTH->value]));
|
||||
return self::errorThrow($msg, ErrorEnum::NOT_AUTH);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user