repository = $repository; } /** * 添加或更新零号线用户 * * @param AddZeroUserValidate $validate 验证器实例 * @return Json */ public function addZeroUser(AddZeroUserValidate $validate): Json { // 执行验证并获取实体 $validationResult = $this->validateRequest($validate, ZeroUserRequestEntity::class); if ($validationResult instanceof Json) { return $validationResult; } // 验证枚举数据 $enumValidationResult = $this->validateEnumData($validationResult->toUnderlineArray()); if ($enumValidationResult instanceof Json) { return $enumValidationResult; } try { // 执行插入或更新操作 $result = $this->repository->insertOrUpdate( $validationResult->getId(), $validationResult->toUnderlineArray() ); // 根据操作结果返回相应的响应 if ($result) { $response = ZeroUserLineResponseEntity::success(); return app('json')->success($response->toResponseArray()); } else { $response = ZeroUserLineResponseEntity::error(); return app('json')->fail($response->toResponseArray()); } } catch (\Exception $e) { // 记录详细异常日志 $errorMessage = '零号线用户操作异常: '.$e->getMessage(). ' File: '.$e->getFile(). ' Line: '.$e->getLine(); \think\facade\Log::error($errorMessage); // 根据环境返回不同的错误信息 $isDev = app()->isDebug(); if ($isDev) { // 开发环境返回详细错误信息 return app('json')->fail('操作失败: '.$e->getMessage()); } else { // 生产环境返回友好提示 return app('json')->fail('系统繁忙,请稍后重试'); } } } /** * 0号线用户列表 * @param ZeroUserListValidate $validate * @return Json */ public function getZeroUserList(ZeroUserListValidate $validate): Json { // 执行验证并获取实体 $validationResult = $this->validateRequest($validate, ZeroUserListRequestEntity::class); if ($validationResult instanceof Json) { return $validationResult; } // 验证枚举数据 $enumValidationResult = $this->validateEnumData($validationResult->toUnderlineArray()); if ($enumValidationResult instanceof Json) { return $enumValidationResult; } // 获取列表 $list = $this->repository->getList($validationResult); return ZeroUserListResponseEntity::response($list); } }