Merge branch 'develop' into feature/crmAdmin0717

# Conflicts:
#	app/admin/controller/RoleController.php
#	app/common/controller/AuthController.php
#	app/common/logic/AuthLogic.php
#	app/common/logic/PermLogic.php
#	app/common/model/User.php
#	app/common/service/PermService.php
#	app/common/validate/RoleValidate.php
#	app/controller/IndexController.php
#	app/functions.php
#	app/ticket/controller/ConversationController.php
#	app/ticket/controller/TicketController.php
#	app/ticket/logic/TicketLogic.php
#	app/ticket/service/CategorieService.php
#	app/ticket/service/TicketService.php
#	app/view/index/qrcode.html
#	composer.json
#	composer.lock
#	config/middleware.php
#	config/route.php
#	config/whitelist.php
This commit is contained in:
2025-07-17 10:07:42 +08:00
38 changed files with 1854 additions and 379 deletions
+22 -2
View File
@@ -25,8 +25,6 @@ use Webman\Route;
// POST /admin/user/{user_id}/kickout // body: {"tokens": ["..."]} // 踢下线
// POST /admin/user/{user_id}/kickout_all // 一键踢全部
// 调试
Route::any('/perm', [app\controller\IndexController::class, 'perm']);
Route::group('/common', function () {
Route::group('/auth', function () {
@@ -66,7 +64,10 @@ Route::group('/ticket', function () {
Route::any('/ticket/add', [app\ticket\controller\TicketController::class, 'add']);
Route::any('/ticket/edit', [app\ticket\controller\TicketController::class, 'edit']);
Route::any('/ticket/list', [app\ticket\controller\TicketController::class, 'index']);
<<<<<<< HEAD
Route::any('/ticket/self', [app\ticket\controller\TicketController::class, 'self']);
=======
>>>>>>> feature/crmAdmin0715
Route::any('/ticket/status', [app\ticket\controller\TicketController::class, 'status']);
Route::any('/ticket/getStatus', [app\ticket\controller\TicketController::class, 'getStatus']);
@@ -87,3 +88,22 @@ Route::group('/ticket', function () {
});
//crm
Route::group('/crm', function () {
//跟进
Route::any('/follow/list', [app\crm\controller\FollowController::class, 'list']);
Route::any('/follow/detail', [app\crm\controller\FollowController::class, 'detail']);
Route::any('/follow/add', [app\crm\controller\FollowController::class, 'save']);
Route::any('/follow/getFollowType', [app\crm\controller\FollowController::class, 'getFollowType']);
//客户
Route::any('/customer/list', [app\crm\controller\CustomerController::class, 'list']);
Route::any('/customer/detail', [app\crm\controller\CustomerController::class, 'detail']);
Route::any('/customer/add', [app\crm\controller\CustomerController::class, 'save']);
Route::any('/customer/claim', [app\crm\controller\CustomerController::class, 'claim']);
Route::any('/customer/restore', [app\crm\controller\CustomerController::class, 'restore']);
Route::any('/customer/delete', [app\crm\controller\CustomerController::class, 'delete']);
Route::any('/customer/waitFollow', [app\crm\controller\CustomerController::class, 'waitFollow']);
Route::any('/customer/getChannel', [app\crm\controller\CustomerController::class, 'getChannel']);
});