refactor(kefu): remove BaseAuth dependencies from unused kefu module

Made-with: Cursor
This commit is contained in:
apple
2026-04-29 17:24:10 +08:00
parent 0f67fae4c6
commit d6b9d1d0e3
5 changed files with 46 additions and 25 deletions

View File

@@ -257,3 +257,30 @@
| 6.2 | 库存不足下单 | POST | user/admin | 超库存数量 | 待预发填写 | 待预发填写 | 失败提示、无异常订单 | 待测 | 当前项目暂不使用相关链路,部署验证时补充。 |
| 6.2 | 取消/退款回滚 | POST | user/admin | 订单号 | 待预发填写 | 待预发填写 | 库存、销量 | 待测 | 当前项目暂不使用相关链路,部署验证时补充。 |
| 6.2 | 并发扣减 | POST | user/admin | 同商品多请求 | 待预发填写 | 待预发填写 | 库存不为负 | 待测 | 需在预发压测或脚本验证。 |
## 阶段 6.3:客服模块
### 自动化检查
| 命令 | 结果 | 备注 |
|------|------|------|
| `php -l app/services/kefu/LoginServices.php` | 通过 | PHP 提示 `swoole_loader` 已加载,不影响语法检查结果。 |
| `php -l app/controller/kefu/AuthController.php` | 通过 | PHP 提示 `swoole_loader` 已加载,不影响语法检查结果。 |
| `php -l app/controller/kefu/Login.php` | 通过 | PHP 提示 `swoole_loader` 已加载,不影响语法检查结果。 |
| `php -l app/controller/kefu/Common.php` | 通过 | PHP 提示 `swoole_loader` 已加载,不影响语法检查结果。 |
| `rg "crmeb\\basic\\BaseAuth|crmeb\\basic\\BaseController|app\\(\\)->make\\(BaseAuth::class\\)|__z6uxy|__qsG" pro_v3.5.1 --glob "*.php"` | 通过 | 应用层已无商业基础类和加密版权 helper 引用。 |
| `php think list` | 未通过 | 本地输出“授权文件被更改,无法运行程序~~~”,属于当前商业授权环境基线问题,需在授权正确的部署环境回归。 |
### 手工回归记录
| 阶段 | 接口/命令 | 方法 | 身份 | 关键参数 | HTTP 状态 | 业务 `status` | 关键字段 | 结果 | 备注 |
|------|-----------|------|------|----------|-----------|---------------|----------|------|------|
| 6.3 | 客服登录 | POST | kefu | 账号、密码 | 待预发填写 | 待预发填写 | `token``kefuInfo` | 待测 | 当前项目未启用客服模块。 |
| 6.3 | 客服会话列表 | GET | kefu | token | 待预发填写 | 待预发填写 | 会话数据 | 待测 | 当前项目未启用客服模块。 |
| 6.3 | 客服上传图片 | POST | kefu | token、file | 待预发填写 | 待预发填写 | 文件地址 | 待测 | 当前项目未启用客服模块。 |
| 6.3 | 非法/过期 token | GET/POST | kefu | 非法 token | 待预发填写 | 待预发填写 | 错误码 | 待测 | 当前项目未启用客服模块。 |
### 最终收口结论
- 自有业务代码已移除 `crmeb\basic\BaseAuth``crmeb\basic\BaseController`、加密版权 helper 的直接引用。
- 本地 `php think list` 仍受商业授权环境影响,部署前需要在合法授权或目标运行环境完成全量手工回归。

View File

@@ -6,15 +6,15 @@
namespace app\controller\kefu;
use app\common\controller\AppBaseController;
use app\Request;
use crmeb\basic\BaseController;
/**
* Class AuthController
* @package app\kefuapi\controller
* @property Request $request
*/
abstract class AuthController extends BaseController
abstract class AuthController extends AppBaseController
{
/**

View File

@@ -6,14 +6,15 @@
namespace app\controller\kefu;
use app\common\controller\AppBaseController;
use app\Request;
use app\services\kefu\KefuServices;
use app\services\kefu\ProductServices;
use app\services\message\service\StoreServiceRecordServices;
use app\services\order\StoreOrderServices;
use app\services\system\LocalCopyrightService;
use app\services\system\attachment\SystemAttachmentServices;
use app\services\user\UserAuthServices;
use crmeb\basic\BaseController;
use app\services\user\UserServices;
use app\services\other\CacheServices;
use app\services\message\service\StoreServiceServices;
@@ -29,7 +30,7 @@ use think\db\exception\DataNotFoundException;
use think\db\exception\DbException;
use think\db\exception\ModelNotFoundException;
class Common extends BaseController
class Common extends AppBaseController
{
protected function initialize()
{
@@ -269,14 +270,8 @@ class Common extends BaseController
*/
public function getCopyright()
{
$res = false;
try {
$copyright = $this->__z6uxyJQ4xYa5ee1mx5();
$res = true;
} catch (\Throwable $e) {
$copyright = ['copyrightContext' => '', 'copyrightImage' => ''];
}
$copyright['is_copyright'] = $res;
$copyright = app()->make(LocalCopyrightService::class)->getCopyright();
$copyright['is_copyright'] = false;
return $this->success($copyright);
}
}

View File

@@ -6,8 +6,8 @@
namespace app\controller\kefu;
use app\common\controller\AppBaseController;
use app\Request;
use crmeb\basic\BaseController;
use crmeb\services\CacheService;
use app\services\kefu\LoginServices;
use app\validate\kefu\LoginValidate;
@@ -21,7 +21,7 @@ use think\db\exception\ModelNotFoundException;
* Class Login
* @package app\kefu\controller
*/
class Login extends BaseController
class Login extends AppBaseController
{
/**

View File

@@ -6,13 +6,11 @@
namespace app\services\kefu;
use crmeb\basic\BaseAuth;
use app\services\auth\AccessTokenService;
use app\services\BaseServices;
use crmeb\exceptions\AuthException;
use crmeb\services\CacheService;
use app\dao\message\service\StoreServiceDao;
use crmeb\services\wechat\OfficialAccount;
use crmeb\utils\ApiErrorCode;
use think\annotation\Inject;
use think\exception\ValidateException;
use app\services\wechat\WechatUserServices;
@@ -77,14 +75,15 @@ class LoginServices extends BaseServices
*/
public function parseToken(string $token)
{
/** @var BaseAuth $services */
$services = app()->make(BaseAuth::class);
$adminInfo = $services->parseToken($token, function ($id) {
return $this->dao->get($id);
});
if (isset($adminInfo->auth) && $adminInfo->auth !== md5($adminInfo->password)) {
throw new AuthException(ApiErrorCode::ERR_LOGIN_INVALID);
}
/** @var AccessTokenService $services */
$services = app()->make(AccessTokenService::class);
$adminInfo = $services->parseToken(
$token,
'kefu',
fn($id) => $this->dao->get($id),
fn($adminInfo) => md5($adminInfo->password)
);
return $adminInfo->hidden(['password', 'ip', 'status']);
}