From 9183ee09c0dacd4f5456a2315328645387deeec0 Mon Sep 17 00:00:00 2001 From: zpc Date: Tue, 11 Nov 2025 23:15:34 +0800 Subject: [PATCH 1/3] =?UTF-8?q?Revert=20"=E5=9F=BA=E7=A1=80=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 5bef68f4aaa060be8cfd13544332347b5dc451b2. --- .../TCharacterLabelService.ts | 74 + .../Apps/T_Characters/T_CharacterService.ts | 86 + .../T_Image_Configs/TImageConfigService.ts | 127 + .../T_User_Currency_LogService.ts | 74 + .../M_MusicGenress/M_MusicGenresService.ts | 74 + .../services/apps/M_Songss/M_SongsService.ts | 74 + .../T_Category_Child_MenuService.ts | 84 + .../T_Character_Label_RelationService.ts | 93 + .../T_Character_LabelService.ts | 74 + ...T_Character_Personality_RelationService.ts | 93 + .../T_Character_PersonalityService.ts | 74 + .../T_Character_Type_IntimacyService.ts | 91 + .../T_Character_TypeService.ts | 74 + .../services/apps/T_Chats/T_ChatService.ts | 74 + .../T_Model_Configs/T_Model_ConfigService.ts | 74 + .../apps/T_OrderItemss/T_OrderItemsService.ts | 74 + .../services/apps/T_Orders/T_OrderService.ts | 74 + .../T_Products_RewardService.ts | 81 + .../apps/T_Productss/T_ProductsService.ts | 92 + .../T_User_CurrencyService.ts | 74 + .../T_User_IntentOrderService.ts | 74 + .../T_User_Phone_AccountService.ts | 74 + .../services/apps/T_Users/T_UserService.ts | 74 + .../T_Verification_CodeService.ts | 74 + .../views/Apps/T_Character_Labels/Index.vue | 232 ++ .../views/Apps/T_Character_Labels/Info.vue | 92 + .../src/views/Apps/T_Characters/Index.vue | 599 +++++ .../src/views/Apps/T_Characters/Info.vue | 218 ++ .../src/views/Apps/T_Image_Configs/Index.vue | 330 +++ .../src/views/Apps/T_Image_Configs/Info.vue | 188 ++ .../views/Apps/T_User_Currency_Logs/Info.vue | 107 + .../src/views/apps/M_MusicGenress/Index.vue | 232 ++ .../src/views/apps/M_MusicGenress/Info.vue | 102 + .../src/views/apps/M_Songss/Index.vue | 233 ++ admin-client/src/views/apps/M_Songss/Info.vue | 147 ++ .../apps/T_Category_Child_Menus/Index.vue | 371 +++ .../apps/T_Category_Child_Menus/Info.vue | 197 ++ .../T_Character_Label_Relations/Index.vue | 242 ++ .../apps/T_Character_Label_Relations/Info.vue | 92 + .../Index.vue | 232 ++ .../Info.vue | 92 + .../apps/T_Character_Personalitys/Index.vue | 237 ++ .../apps/T_Character_Personalitys/Info.vue | 92 + .../apps/T_Character_Type_Intimacys/Index.vue | 232 ++ .../apps/T_Character_Type_Intimacys/Info.vue | 102 + .../views/apps/T_Character_Types/Index.vue | 232 ++ .../src/views/apps/T_Character_Types/Info.vue | 97 + admin-client/src/views/apps/T_Chats/Index.vue | 247 ++ admin-client/src/views/apps/T_Chats/Info.vue | 157 ++ .../src/views/apps/T_Model_Configs/Index.vue | 251 ++ .../src/views/apps/T_Model_Configs/Info.vue | 242 ++ .../src/views/apps/T_OrderItemss/Index.vue | 232 ++ .../src/views/apps/T_OrderItemss/Info.vue | 117 + .../src/views/apps/T_Orders/Index.vue | 232 ++ admin-client/src/views/apps/T_Orders/Info.vue | 137 + .../views/apps/T_Products_Rewards/Index.vue | 232 ++ .../views/apps/T_Products_Rewards/Info.vue | 155 ++ .../src/views/apps/T_Productss/Index.vue | 584 +++++ .../src/views/apps/T_Productss/Info.vue | 206 ++ .../views/apps/T_Productss/InfoRawards.vue | 137 + .../src/views/apps/T_Productss/Rewards.vue | 165 ++ .../views/apps/T_User_Currency_Logs/Index.vue | 247 ++ .../src/views/apps/T_User_Currencys/Index.vue | 242 ++ .../src/views/apps/T_User_Currencys/Info.vue | 102 + .../views/apps/T_User_IntentOrders/Index.vue | 232 ++ .../views/apps/T_User_IntentOrders/Info.vue | 137 + .../apps/T_User_Phone_Accounts/Index.vue | 242 ++ .../views/apps/T_User_Phone_Accounts/Info.vue | 117 + admin-client/src/views/apps/T_Users/Index.vue | 247 ++ admin-client/src/views/apps/T_Users/Info.vue | 137 + .../views/apps/T_Verification_Codes/Index.vue | 232 ++ .../views/apps/T_Verification_Codes/Info.vue | 112 + admin-server/MiaoYu.Admin.sln | 11 +- .../MiaoYu.Api.Admin/ApiAdminStartup.cs | 1 + .../Apps/MiaoYuChat/M_MusicGenresService.cs | 109 + .../Apps/MiaoYuChat/M_SongsService.cs | 109 + .../Apps/MiaoYuChat/TImageConfigService.cs | 227 ++ .../T_Category_Child_MenuService.cs | 187 ++ .../Apps/MiaoYuChat/T_CharacterService.cs | 223 ++ .../MiaoYuChat/T_Character_LabelService.cs | 109 + .../T_Character_Label_RelationService.cs | 157 ++ .../T_Character_PersonalityService.cs | 119 + ...T_Character_Personality_RelationService.cs | 158 ++ .../MiaoYuChat/T_Character_TypeService.cs | 109 + .../T_Character_Type_IntimacyService.cs | 151 ++ .../Apps/MiaoYuChat/T_ChatService.cs | 132 + .../Apps/MiaoYuChat/T_Model_ConfigService.cs | 136 + .../Apps/MiaoYuChat/T_OrderItemsService.cs | 109 + .../Apps/MiaoYuChat/T_OrderService.cs | 109 + .../Apps/MiaoYuChat/T_ProductsService.cs | 174 ++ .../MiaoYuChat/T_Products_RewardService.cs | 126 + .../Apps/MiaoYuChat/T_UserService.cs | 145 ++ .../Apps/MiaoYuChat/T_User_CurrencyService.cs | 119 + .../MiaoYuChat/T_User_Currency_LogService.cs | 124 + .../MiaoYuChat/T_User_IntentOrderService.cs | 109 + .../MiaoYuChat/T_User_Phone_AccountService.cs | 116 + .../MiaoYuChat/T_Verification_CodeService.cs | 109 + .../LowCode/Impl/LowCodeTableService.cs | 1 + .../MiaoYuChat/M_MusicGenresController.cs | 100 + .../Apps/MiaoYuChat/M_SongsController.cs | 100 + .../Apps/MiaoYuChat/TImageConfigController.cs | 166 ++ .../T_Category_Child_MenuController.cs | 111 + .../Apps/MiaoYuChat/T_CharacterController.cs | 111 + .../MiaoYuChat/T_Character_LabelController.cs | 104 + .../T_Character_Label_RelationController.cs | 130 + .../T_Character_PersonalityController.cs | 100 + ...haracter_Personality_RelationController.cs | 131 + .../MiaoYuChat/T_Character_TypeController.cs | 104 + .../T_Character_Type_IntimacyController.cs | 127 + .../Apps/MiaoYuChat/T_ChatController.cs | 100 + .../MiaoYuChat/T_Model_ConfigController.cs | 100 + .../Apps/MiaoYuChat/T_OrderController.cs | 100 + .../Apps/MiaoYuChat/T_OrderItemsController.cs | 100 + .../Apps/MiaoYuChat/T_ProductsController.cs | 124 + .../MiaoYuChat/T_Products_RewardController.cs | 110 + .../Apps/MiaoYuChat/T_UserController.cs | 111 + .../MiaoYuChat/T_User_CurrencyController.cs | 100 + .../T_User_Currency_LogController.cs | 100 + .../T_User_IntentOrderController.cs | 100 + .../T_User_Phone_AccountController.cs | 100 + .../T_Verification_CodeController.cs | 100 + admin-server/MiaoYu.Api.Admin/Dockerfile | 38 + .../MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj | 1 + .../MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml | 2243 +++++++++++++++++ admin-server/MiaoYu.Api.Admin/Usings.cs | 3 +- .../ChatAdminDbContext.cs | 44 + .../ChatAdminRepositoryStartup.cs | 139 + .../Entities/Apps/M_MusicGenres.cs | 36 + .../Entities/Apps/M_Songs.cs | 90 + .../Entities/Apps/T_Category_Child_Menu.cs | 65 + .../Entities/Apps/T_Character.cs | 95 + .../Entities/Apps/T_Character_Label.cs | 35 + .../Apps/T_Character_Label_Relation.cs | 35 + .../Entities/Apps/T_Character_Personality.cs | 35 + .../Apps/T_Character_Personality_Relation.cs | 29 + .../Entities/Apps/T_Character_Type.cs | 41 + .../Apps/T_Character_Type_Intimacy.cs | 41 + .../Entities/Apps/T_Chat.cs | 113 + .../Entities/Apps/T_Image_Config.cs | 28 + .../Entities/Apps/T_Model_Config.cs | 92 + .../Entities/Apps/T_Order.cs | 77 + .../Entities/Apps/T_OrderItems.cs | 54 + .../Entities/Apps/T_Products.cs | 86 + .../Entities/Apps/T_Products_Reward.cs | 41 + .../Entities/Apps/T_User.cs | 86 + .../Entities/Apps/T_User_Currency.cs | 47 + .../Entities/Apps/T_User_Currency_Log.cs | 53 + .../Entities/Apps/T_User_IntentOrder.cs | 78 + .../Entities/Apps/T_User_Phone_Account.cs | 55 + .../Entities/Apps/T_Verification_Code.cs | 53 + .../Entities/T_Image_Config.cs | 72 + .../Entities/__razor.cshtml.txt | 67 + .../Entities/__重新生成.bat | 2 + .../FodyWeavers.xml | 3 + .../FodyWeavers.xsd | 26 + .../MiaoYu.Repository.ChatAI.Admin.csproj | 31 + .../MiaoYu.Repository.ChatAI.Admin.xml | 1121 ++++++++ .../ChatAdminDbContextModelSnapshot.cs | 60 + .../Models/ChatAdminRepositoryOptions.cs | 8 + .../Providers/MiaoYuChatDataSourceProvider.cs | 78 + .../MiaoYu.Repository.ChatAI.Admin/Usings.cs | 33 + 161 files changed, 22809 insertions(+), 3 deletions(-) create mode 100644 admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts create mode 100644 admin-client/src/services/Apps/T_Characters/T_CharacterService.ts create mode 100644 admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts create mode 100644 admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts create mode 100644 admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts create mode 100644 admin-client/src/services/apps/M_Songss/M_SongsService.ts create mode 100644 admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts create mode 100644 admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts create mode 100644 admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts create mode 100644 admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts create mode 100644 admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts create mode 100644 admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts create mode 100644 admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts create mode 100644 admin-client/src/services/apps/T_Chats/T_ChatService.ts create mode 100644 admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts create mode 100644 admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts create mode 100644 admin-client/src/services/apps/T_Orders/T_OrderService.ts create mode 100644 admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts create mode 100644 admin-client/src/services/apps/T_Productss/T_ProductsService.ts create mode 100644 admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts create mode 100644 admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts create mode 100644 admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts create mode 100644 admin-client/src/services/apps/T_Users/T_UserService.ts create mode 100644 admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts create mode 100644 admin-client/src/views/Apps/T_Character_Labels/Index.vue create mode 100644 admin-client/src/views/Apps/T_Character_Labels/Info.vue create mode 100644 admin-client/src/views/Apps/T_Characters/Index.vue create mode 100644 admin-client/src/views/Apps/T_Characters/Info.vue create mode 100644 admin-client/src/views/Apps/T_Image_Configs/Index.vue create mode 100644 admin-client/src/views/Apps/T_Image_Configs/Info.vue create mode 100644 admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue create mode 100644 admin-client/src/views/apps/M_MusicGenress/Index.vue create mode 100644 admin-client/src/views/apps/M_MusicGenress/Info.vue create mode 100644 admin-client/src/views/apps/M_Songss/Index.vue create mode 100644 admin-client/src/views/apps/M_Songss/Info.vue create mode 100644 admin-client/src/views/apps/T_Category_Child_Menus/Index.vue create mode 100644 admin-client/src/views/apps/T_Category_Child_Menus/Info.vue create mode 100644 admin-client/src/views/apps/T_Character_Label_Relations/Index.vue create mode 100644 admin-client/src/views/apps/T_Character_Label_Relations/Info.vue create mode 100644 admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue create mode 100644 admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue create mode 100644 admin-client/src/views/apps/T_Character_Personalitys/Index.vue create mode 100644 admin-client/src/views/apps/T_Character_Personalitys/Info.vue create mode 100644 admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue create mode 100644 admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue create mode 100644 admin-client/src/views/apps/T_Character_Types/Index.vue create mode 100644 admin-client/src/views/apps/T_Character_Types/Info.vue create mode 100644 admin-client/src/views/apps/T_Chats/Index.vue create mode 100644 admin-client/src/views/apps/T_Chats/Info.vue create mode 100644 admin-client/src/views/apps/T_Model_Configs/Index.vue create mode 100644 admin-client/src/views/apps/T_Model_Configs/Info.vue create mode 100644 admin-client/src/views/apps/T_OrderItemss/Index.vue create mode 100644 admin-client/src/views/apps/T_OrderItemss/Info.vue create mode 100644 admin-client/src/views/apps/T_Orders/Index.vue create mode 100644 admin-client/src/views/apps/T_Orders/Info.vue create mode 100644 admin-client/src/views/apps/T_Products_Rewards/Index.vue create mode 100644 admin-client/src/views/apps/T_Products_Rewards/Info.vue create mode 100644 admin-client/src/views/apps/T_Productss/Index.vue create mode 100644 admin-client/src/views/apps/T_Productss/Info.vue create mode 100644 admin-client/src/views/apps/T_Productss/InfoRawards.vue create mode 100644 admin-client/src/views/apps/T_Productss/Rewards.vue create mode 100644 admin-client/src/views/apps/T_User_Currency_Logs/Index.vue create mode 100644 admin-client/src/views/apps/T_User_Currencys/Index.vue create mode 100644 admin-client/src/views/apps/T_User_Currencys/Info.vue create mode 100644 admin-client/src/views/apps/T_User_IntentOrders/Index.vue create mode 100644 admin-client/src/views/apps/T_User_IntentOrders/Info.vue create mode 100644 admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue create mode 100644 admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue create mode 100644 admin-client/src/views/apps/T_Users/Index.vue create mode 100644 admin-client/src/views/apps/T_Users/Info.vue create mode 100644 admin-client/src/views/apps/T_Verification_Codes/Index.vue create mode 100644 admin-client/src/views/apps/T_Verification_Codes/Info.vue create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Dockerfile create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminDbContext.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminRepositoryStartup.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_MusicGenres.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_Songs.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Category_Child_Menu.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label_Relation.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality_Relation.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type_Intimacy.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Chat.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Image_Config.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Model_Config.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Order.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_OrderItems.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products_Reward.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency_Log.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_IntentOrder.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Phone_Account.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Verification_Code.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/T_Image_Config.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__razor.cshtml.txt create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__重新生成.bat create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xml create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xsd create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.csproj create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.xml create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Migrations/ChatAdminDbContextModelSnapshot.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Models/ChatAdminRepositoryOptions.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Providers/MiaoYuChatDataSourceProvider.cs create mode 100644 admin-server/MiaoYu.Repository.ChatAI.Admin/Usings.cs diff --git a/admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts b/admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts new file mode 100644 index 0000000..14b1b17 --- /dev/null +++ b/admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Label服务 + */ +export default class T_Character_LabelService { + + static urlPrefix = "/api/v1/admin/T_Character_Label"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/Apps/T_Characters/T_CharacterService.ts b/admin-client/src/services/Apps/T_Characters/T_CharacterService.ts new file mode 100644 index 0000000..d44a699 --- /dev/null +++ b/admin-client/src/services/Apps/T_Characters/T_CharacterService.ts @@ -0,0 +1,86 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character服务 + */ +export default class T_CharacterService { + + static urlPrefix = "/api/v1/admin/T_Character"; + static url: string = Http.baseURL + "/api/v1/admin/TImageConfig/image/"; + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + +/** + * 修改状态 + * @param id + * @param v + * @returns + */ + static async setVisibility(id: number | undefined, v: boolean | undefined) { + return await Http.post(`${this.urlPrefix}/updateState/${id}/${(v == true ? "1" : "0")}`) + } + + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts b/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts new file mode 100644 index 0000000..a193c5c --- /dev/null +++ b/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts @@ -0,0 +1,127 @@ +import Http from "@/core/utils/Http"; + +/** + * TImageConfig服务 + */ +export default class TImageConfigService { + static urlPrefix = "/api/v1/admin/TImageConfig"; + static baseUrl = Http.baseURL + this.urlPrefix + "/image/"; + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList( + current: number, + pageSize: number, + search: any = {}, + searchSort: any[] = [] + ) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort, + }); + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids); + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined | number) { + return Http.get(`${this.urlPrefix}/findForm${id ? "/" + id : ""}`); + } + /** + * 获取上传key + * + * @param + * @returns + */ + static getCosSign() { + return Http.get(`${this.urlPrefix}/GetCosSign`); + } + + /** + * 获取上传的临时token + * + * @param + * @returns + */ + static getGenerateTemporaryKey(fileName?: string, modelName?: string) { + if (fileName != null) { + fileName = escape(fileName); + // query + } + return Http.get( + `${this.urlPrefix + }/GetGenerateTemporaryKey?fileName=${fileName}&modelName=${escape( + modelName || "" + )}` + ); + } + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? "update" : "create"}`, formData); + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort, + }); + } + + /** + * 查询图片数据源 + * + * @param id + * @returns + */ + static getImageList(name?: string | undefined) { + return Http.get(`${this.urlPrefix}/getImageList?name=${name}`); + } + + /** +* 查询图片数据源 +* +* @param id +* @returns +*/ + static getImageUrl(imageId?: number | undefined) { + if (imageId == null) { + return ""; + } + return this.baseUrl + imageId; + } +} diff --git a/admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts b/admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts new file mode 100644 index 0000000..6bc3022 --- /dev/null +++ b/admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_User_Currency_Log服务 + */ +export default class T_User_Currency_LogService { + + static urlPrefix = "/api/v1/admin/T_User_Currency_Log"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts b/admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts new file mode 100644 index 0000000..0d96667 --- /dev/null +++ b/admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * M_MusicGenres服务 + */ +export default class M_MusicGenresService { + + static urlPrefix = "/api/v1/admin/M_MusicGenres"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/M_Songss/M_SongsService.ts b/admin-client/src/services/apps/M_Songss/M_SongsService.ts new file mode 100644 index 0000000..2036f5f --- /dev/null +++ b/admin-client/src/services/apps/M_Songss/M_SongsService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * M_Songs服务 + */ +export default class M_SongsService { + + static urlPrefix = "/api/v1/admin/M_Songs"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts b/admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts new file mode 100644 index 0000000..96ca48e --- /dev/null +++ b/admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts @@ -0,0 +1,84 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Category_Child_Menu服务 + */ +export default class T_Category_Child_MenuService { + + static urlPrefix = "/api/v1/admin/T_Category_Child_Menu"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +/** + * 修改状态 + * @param id + * @param v + * @returns + */ +static async setVisibility(id: number | undefined, v: boolean | undefined) { + return await Http.post(`${this.urlPrefix}/updateState/${id}/${(v == true ? "1" : "0")}`) +} + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts b/admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts new file mode 100644 index 0000000..e465d6c --- /dev/null +++ b/admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts @@ -0,0 +1,93 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Label_Relation服务 + */ +export default class T_Character_Label_RelationService { + + static urlPrefix = "/api/v1/admin/T_Character_Label_Relation"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static delete(id: number, ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteCIdList/${id}`, ids) + } + /** + * 批量配置角色性格 + * @param id 角色id + * @param ids 性格类型 + * @returns + */ + static async setCharacterPersonality(id: number, ids: any[]) { + return Http.post(`${this.urlPrefix}/setCharacterLabel/${id}`, ids) + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts b/admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts new file mode 100644 index 0000000..14b1b17 --- /dev/null +++ b/admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Label服务 + */ +export default class T_Character_LabelService { + + static urlPrefix = "/api/v1/admin/T_Character_Label"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts b/admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts new file mode 100644 index 0000000..caa7941 --- /dev/null +++ b/admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts @@ -0,0 +1,93 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Personality_Relation服务 + */ +export default class T_Character_Personality_RelationService { + + static urlPrefix = "/api/v1/admin/T_Character_Personality_Relation"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static delete(id: number, ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteCIdList/${id}`, ids) + } + /** + * 批量配置角色性格 + * @param id 角色id + * @param ids 性格类型 + * @returns + */ + static async setCharacterPersonality(id: number, ids: any[]) { + return Http.post(`${this.urlPrefix}/setCharacterPersonality/${id}`, ids) + } +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts b/admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts new file mode 100644 index 0000000..a386ae5 --- /dev/null +++ b/admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Personality服务 + */ +export default class T_Character_PersonalityService { + + static urlPrefix = "/api/v1/admin/T_Character_Personality"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts b/admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts new file mode 100644 index 0000000..a094721 --- /dev/null +++ b/admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts @@ -0,0 +1,91 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Type_Intimacy服务 + */ +export default class T_Character_Type_IntimacyService { + + static urlPrefix = "/api/v1/admin/T_Character_Type_Intimacy"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static delete(id: number, ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteCIdList/${id}`, ids) + } + /** + * 批量配置角色性格 + * @param id 角色id + * @param ids 性格类型 + * @returns + */ + static async setCharacterPersonality(id: number, ids: any[]) { + return Http.post(`${this.urlPrefix}/setCharacterTypes/${id}`, ids) + } +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts b/admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts new file mode 100644 index 0000000..4556947 --- /dev/null +++ b/admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Character_Type服务 + */ +export default class T_Character_TypeService { + + static urlPrefix = "/api/v1/admin/T_Character_Type"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Chats/T_ChatService.ts b/admin-client/src/services/apps/T_Chats/T_ChatService.ts new file mode 100644 index 0000000..177adf7 --- /dev/null +++ b/admin-client/src/services/apps/T_Chats/T_ChatService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Chat服务 + */ +export default class T_ChatService { + + static urlPrefix = "/api/v1/admin/T_Chat"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts b/admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts new file mode 100644 index 0000000..9c3aae3 --- /dev/null +++ b/admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Model_Config服务 + */ +export default class T_Model_ConfigService { + + static urlPrefix = "/api/v1/admin/T_Model_Config"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts b/admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts new file mode 100644 index 0000000..2862409 --- /dev/null +++ b/admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_OrderItems服务 + */ +export default class T_OrderItemsService { + + static urlPrefix = "/api/v1/admin/T_OrderItems"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Orders/T_OrderService.ts b/admin-client/src/services/apps/T_Orders/T_OrderService.ts new file mode 100644 index 0000000..a79e8f3 --- /dev/null +++ b/admin-client/src/services/apps/T_Orders/T_OrderService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Order服务 + */ +export default class T_OrderService { + + static urlPrefix = "/api/v1/admin/T_Order"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts b/admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts new file mode 100644 index 0000000..2461a90 --- /dev/null +++ b/admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts @@ -0,0 +1,81 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Products_Reward服务 + */ +export default class T_Products_RewardService { + + static urlPrefix = "/api/v1/admin/T_Products_Reward"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + /** + * 获取数据列表 + * @param productId + * @returns + */ + static getList(productId: number) { + return Http.get(`${this.urlPrefix}/findList/${productId}`,) + } +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Productss/T_ProductsService.ts b/admin-client/src/services/apps/T_Productss/T_ProductsService.ts new file mode 100644 index 0000000..e02a792 --- /dev/null +++ b/admin-client/src/services/apps/T_Productss/T_ProductsService.ts @@ -0,0 +1,92 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Products服务 + */ +export default class T_ProductsService { + + static urlPrefix = "/api/v1/admin/T_Products"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + /** + * 修改首充状态 + * @param id + * @param v + * @returns + */ + static async setFirstCharge(id: number | undefined, v: boolean | undefined) { + return await Http.post(`${this.urlPrefix}/UpdateFirstCharge/${id}/${(v == true ? "1" : "0")}`) + } + + /** + * 修改修改上架,下架状态 + * @param id + * @param v + * @returns + */ + static async setState(id: number | undefined, v: boolean | undefined) { + return await Http.post(`${this.urlPrefix}/UpdateState/${id}/${(v == true ? "1" : "0")}`) + } +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts b/admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts new file mode 100644 index 0000000..ff07da7 --- /dev/null +++ b/admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_User_Currency服务 + */ +export default class T_User_CurrencyService { + + static urlPrefix = "/api/v1/admin/T_User_Currency"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts b/admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts new file mode 100644 index 0000000..ebb90f0 --- /dev/null +++ b/admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_User_IntentOrder服务 + */ +export default class T_User_IntentOrderService { + + static urlPrefix = "/api/v1/admin/T_User_IntentOrder"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts b/admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts new file mode 100644 index 0000000..0fe67f3 --- /dev/null +++ b/admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_User_Phone_Account服务 + */ +export default class T_User_Phone_AccountService { + + static urlPrefix = "/api/v1/admin/T_User_Phone_Account"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Users/T_UserService.ts b/admin-client/src/services/apps/T_Users/T_UserService.ts new file mode 100644 index 0000000..937f135 --- /dev/null +++ b/admin-client/src/services/apps/T_Users/T_UserService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_User服务 + */ +export default class T_UserService { + + static urlPrefix = "/api/v1/admin/T_User"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts b/admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts new file mode 100644 index 0000000..84b2b25 --- /dev/null +++ b/admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts @@ -0,0 +1,74 @@ +import Http from "@/core/utils/Http"; + +/** + * T_Verification_Code服务 + */ +export default class T_Verification_CodeService { + + static urlPrefix = "/api/v1/admin/T_Verification_Code"; + + /** + * 获取数据列表 + * @param current + * @param pageSize + * @param search + * @param searchSort + * @returns + */ + static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { + return Http.post(`${this.urlPrefix}/findList`, { + page: current, + size: pageSize, + search, + searchSort + }) + } + + /** + * 删除集合数据 + * + * @param ids + * @returns + */ + static deleteList(ids: string[]) { + return Http.post(`${this.urlPrefix}/deleteList`, ids) + } + + /** + * 查询表单 + * + * @param id + * @returns + */ + static findForm(id?: string | undefined) { + return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) + } + + /** + * 保存表单数据 + * + * @param id + * @param formData + * @returns + */ + static saveForm(id: string | undefined, formData: any) { + return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) + } + + /** + * 导出 excel + * + * @param search + * @param searchSort + * @returns + */ + static exportExcel(search: any = {}, searchSort: any[] = []) { + return Http.download(`${this.urlPrefix}/exportExcel`, { + page: -1, + size: -1, + search, + searchSort + }); + } + +} \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Character_Labels/Index.vue b/admin-client/src/views/Apps/T_Character_Labels/Index.vue new file mode 100644 index 0000000..05c6fc4 --- /dev/null +++ b/admin-client/src/views/Apps/T_Character_Labels/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Character_Labels/Info.vue b/admin-client/src/views/Apps/T_Character_Labels/Info.vue new file mode 100644 index 0000000..8869618 --- /dev/null +++ b/admin-client/src/views/Apps/T_Character_Labels/Info.vue @@ -0,0 +1,92 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Characters/Index.vue b/admin-client/src/views/Apps/T_Characters/Index.vue new file mode 100644 index 0000000..7ad6b7b --- /dev/null +++ b/admin-client/src/views/Apps/T_Characters/Index.vue @@ -0,0 +1,599 @@ + + + diff --git a/admin-client/src/views/Apps/T_Characters/Info.vue b/admin-client/src/views/Apps/T_Characters/Info.vue new file mode 100644 index 0000000..47a9e72 --- /dev/null +++ b/admin-client/src/views/Apps/T_Characters/Info.vue @@ -0,0 +1,218 @@ + + + diff --git a/admin-client/src/views/Apps/T_Image_Configs/Index.vue b/admin-client/src/views/Apps/T_Image_Configs/Index.vue new file mode 100644 index 0000000..eb35016 --- /dev/null +++ b/admin-client/src/views/Apps/T_Image_Configs/Index.vue @@ -0,0 +1,330 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Image_Configs/Info.vue b/admin-client/src/views/Apps/T_Image_Configs/Info.vue new file mode 100644 index 0000000..1e5efe8 --- /dev/null +++ b/admin-client/src/views/Apps/T_Image_Configs/Info.vue @@ -0,0 +1,188 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue b/admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue new file mode 100644 index 0000000..5efd185 --- /dev/null +++ b/admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue @@ -0,0 +1,107 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/M_MusicGenress/Index.vue b/admin-client/src/views/apps/M_MusicGenress/Index.vue new file mode 100644 index 0000000..ff0bae1 --- /dev/null +++ b/admin-client/src/views/apps/M_MusicGenress/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/M_MusicGenress/Info.vue b/admin-client/src/views/apps/M_MusicGenress/Info.vue new file mode 100644 index 0000000..bcedd18 --- /dev/null +++ b/admin-client/src/views/apps/M_MusicGenress/Info.vue @@ -0,0 +1,102 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/M_Songss/Index.vue b/admin-client/src/views/apps/M_Songss/Index.vue new file mode 100644 index 0000000..9be9ce7 --- /dev/null +++ b/admin-client/src/views/apps/M_Songss/Index.vue @@ -0,0 +1,233 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/M_Songss/Info.vue b/admin-client/src/views/apps/M_Songss/Info.vue new file mode 100644 index 0000000..17e5c35 --- /dev/null +++ b/admin-client/src/views/apps/M_Songss/Info.vue @@ -0,0 +1,147 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Category_Child_Menus/Index.vue b/admin-client/src/views/apps/T_Category_Child_Menus/Index.vue new file mode 100644 index 0000000..51d4afe --- /dev/null +++ b/admin-client/src/views/apps/T_Category_Child_Menus/Index.vue @@ -0,0 +1,371 @@ + + + diff --git a/admin-client/src/views/apps/T_Category_Child_Menus/Info.vue b/admin-client/src/views/apps/T_Category_Child_Menus/Info.vue new file mode 100644 index 0000000..fd4e33b --- /dev/null +++ b/admin-client/src/views/apps/T_Category_Child_Menus/Info.vue @@ -0,0 +1,197 @@ + + + diff --git a/admin-client/src/views/apps/T_Character_Label_Relations/Index.vue b/admin-client/src/views/apps/T_Character_Label_Relations/Index.vue new file mode 100644 index 0000000..3248d36 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Label_Relations/Index.vue @@ -0,0 +1,242 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Label_Relations/Info.vue b/admin-client/src/views/apps/T_Character_Label_Relations/Info.vue new file mode 100644 index 0000000..01c5615 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Label_Relations/Info.vue @@ -0,0 +1,92 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue b/admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue new file mode 100644 index 0000000..3566919 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue b/admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue new file mode 100644 index 0000000..35196f2 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue @@ -0,0 +1,92 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personalitys/Index.vue b/admin-client/src/views/apps/T_Character_Personalitys/Index.vue new file mode 100644 index 0000000..e777986 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Personalitys/Index.vue @@ -0,0 +1,237 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personalitys/Info.vue b/admin-client/src/views/apps/T_Character_Personalitys/Info.vue new file mode 100644 index 0000000..8798df8 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Personalitys/Info.vue @@ -0,0 +1,92 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue b/admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue new file mode 100644 index 0000000..babb66f --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue b/admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue new file mode 100644 index 0000000..2e688d6 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue @@ -0,0 +1,102 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Types/Index.vue b/admin-client/src/views/apps/T_Character_Types/Index.vue new file mode 100644 index 0000000..260b4f7 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Types/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Types/Info.vue b/admin-client/src/views/apps/T_Character_Types/Info.vue new file mode 100644 index 0000000..d6aace1 --- /dev/null +++ b/admin-client/src/views/apps/T_Character_Types/Info.vue @@ -0,0 +1,97 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Chats/Index.vue b/admin-client/src/views/apps/T_Chats/Index.vue new file mode 100644 index 0000000..bef0a6f --- /dev/null +++ b/admin-client/src/views/apps/T_Chats/Index.vue @@ -0,0 +1,247 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Chats/Info.vue b/admin-client/src/views/apps/T_Chats/Info.vue new file mode 100644 index 0000000..e268ad2 --- /dev/null +++ b/admin-client/src/views/apps/T_Chats/Info.vue @@ -0,0 +1,157 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Model_Configs/Index.vue b/admin-client/src/views/apps/T_Model_Configs/Index.vue new file mode 100644 index 0000000..ff9fc2f --- /dev/null +++ b/admin-client/src/views/apps/T_Model_Configs/Index.vue @@ -0,0 +1,251 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Model_Configs/Info.vue b/admin-client/src/views/apps/T_Model_Configs/Info.vue new file mode 100644 index 0000000..1b5777e --- /dev/null +++ b/admin-client/src/views/apps/T_Model_Configs/Info.vue @@ -0,0 +1,242 @@ + + + diff --git a/admin-client/src/views/apps/T_OrderItemss/Index.vue b/admin-client/src/views/apps/T_OrderItemss/Index.vue new file mode 100644 index 0000000..e9cac1e --- /dev/null +++ b/admin-client/src/views/apps/T_OrderItemss/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_OrderItemss/Info.vue b/admin-client/src/views/apps/T_OrderItemss/Info.vue new file mode 100644 index 0000000..76c775e --- /dev/null +++ b/admin-client/src/views/apps/T_OrderItemss/Info.vue @@ -0,0 +1,117 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Orders/Index.vue b/admin-client/src/views/apps/T_Orders/Index.vue new file mode 100644 index 0000000..10afa3e --- /dev/null +++ b/admin-client/src/views/apps/T_Orders/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Orders/Info.vue b/admin-client/src/views/apps/T_Orders/Info.vue new file mode 100644 index 0000000..17e2701 --- /dev/null +++ b/admin-client/src/views/apps/T_Orders/Info.vue @@ -0,0 +1,137 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Products_Rewards/Index.vue b/admin-client/src/views/apps/T_Products_Rewards/Index.vue new file mode 100644 index 0000000..498be6e --- /dev/null +++ b/admin-client/src/views/apps/T_Products_Rewards/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Products_Rewards/Info.vue b/admin-client/src/views/apps/T_Products_Rewards/Info.vue new file mode 100644 index 0000000..c6d658d --- /dev/null +++ b/admin-client/src/views/apps/T_Products_Rewards/Info.vue @@ -0,0 +1,155 @@ + + + diff --git a/admin-client/src/views/apps/T_Productss/Index.vue b/admin-client/src/views/apps/T_Productss/Index.vue new file mode 100644 index 0000000..ab3c0eb --- /dev/null +++ b/admin-client/src/views/apps/T_Productss/Index.vue @@ -0,0 +1,584 @@ + + + diff --git a/admin-client/src/views/apps/T_Productss/Info.vue b/admin-client/src/views/apps/T_Productss/Info.vue new file mode 100644 index 0000000..0fd0b7a --- /dev/null +++ b/admin-client/src/views/apps/T_Productss/Info.vue @@ -0,0 +1,206 @@ + + + diff --git a/admin-client/src/views/apps/T_Productss/InfoRawards.vue b/admin-client/src/views/apps/T_Productss/InfoRawards.vue new file mode 100644 index 0000000..6596caa --- /dev/null +++ b/admin-client/src/views/apps/T_Productss/InfoRawards.vue @@ -0,0 +1,137 @@ + + + diff --git a/admin-client/src/views/apps/T_Productss/Rewards.vue b/admin-client/src/views/apps/T_Productss/Rewards.vue new file mode 100644 index 0000000..66e2ba5 --- /dev/null +++ b/admin-client/src/views/apps/T_Productss/Rewards.vue @@ -0,0 +1,165 @@ + + + diff --git a/admin-client/src/views/apps/T_User_Currency_Logs/Index.vue b/admin-client/src/views/apps/T_User_Currency_Logs/Index.vue new file mode 100644 index 0000000..a9259df --- /dev/null +++ b/admin-client/src/views/apps/T_User_Currency_Logs/Index.vue @@ -0,0 +1,247 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Currencys/Index.vue b/admin-client/src/views/apps/T_User_Currencys/Index.vue new file mode 100644 index 0000000..0501954 --- /dev/null +++ b/admin-client/src/views/apps/T_User_Currencys/Index.vue @@ -0,0 +1,242 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Currencys/Info.vue b/admin-client/src/views/apps/T_User_Currencys/Info.vue new file mode 100644 index 0000000..dfeefa3 --- /dev/null +++ b/admin-client/src/views/apps/T_User_Currencys/Info.vue @@ -0,0 +1,102 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_IntentOrders/Index.vue b/admin-client/src/views/apps/T_User_IntentOrders/Index.vue new file mode 100644 index 0000000..9da395c --- /dev/null +++ b/admin-client/src/views/apps/T_User_IntentOrders/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_IntentOrders/Info.vue b/admin-client/src/views/apps/T_User_IntentOrders/Info.vue new file mode 100644 index 0000000..22aaf14 --- /dev/null +++ b/admin-client/src/views/apps/T_User_IntentOrders/Info.vue @@ -0,0 +1,137 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue b/admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue new file mode 100644 index 0000000..c7dba66 --- /dev/null +++ b/admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue @@ -0,0 +1,242 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue b/admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue new file mode 100644 index 0000000..185e787 --- /dev/null +++ b/admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue @@ -0,0 +1,117 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Users/Index.vue b/admin-client/src/views/apps/T_Users/Index.vue new file mode 100644 index 0000000..1e20169 --- /dev/null +++ b/admin-client/src/views/apps/T_Users/Index.vue @@ -0,0 +1,247 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Users/Info.vue b/admin-client/src/views/apps/T_Users/Info.vue new file mode 100644 index 0000000..b173a84 --- /dev/null +++ b/admin-client/src/views/apps/T_Users/Info.vue @@ -0,0 +1,137 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Verification_Codes/Index.vue b/admin-client/src/views/apps/T_Verification_Codes/Index.vue new file mode 100644 index 0000000..a4ab7c4 --- /dev/null +++ b/admin-client/src/views/apps/T_Verification_Codes/Index.vue @@ -0,0 +1,232 @@ + + + \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Verification_Codes/Info.vue b/admin-client/src/views/apps/T_Verification_Codes/Info.vue new file mode 100644 index 0000000..f9e195e --- /dev/null +++ b/admin-client/src/views/apps/T_Verification_Codes/Info.vue @@ -0,0 +1,112 @@ + + + \ No newline at end of file diff --git a/admin-server/MiaoYu.Admin.sln b/admin-server/MiaoYu.Admin.sln index c27b116..3aab373 100644 --- a/admin-server/MiaoYu.Admin.sln +++ b/admin-server/MiaoYu.Admin.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.13.35913.81 +# Visual Studio Version 18 +VisualStudioVersion = 18.0.11201.2 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "00 Core", "00 Core", "{DB46F54A-9F53-44EC-80F8-9E53F0B871CF}" EndProject @@ -45,6 +45,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiaoYu.WinFormDemo", "MiaoY EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiaoYu.Shared.Admin", "MiaoYu.Shared.Admin\MiaoYu.Shared.Admin.csproj", "{925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiaoYu.Repository.ChatAI.Admin", "MiaoYu.Repository.ChatAI.Admin\MiaoYu.Repository.ChatAI.Admin.csproj", "{39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}" +EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{735E8EDC-21A6-4604-B955-B40603B973FF}" ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig @@ -126,6 +128,10 @@ Global {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}.Debug|Any CPU.Build.0 = Debug|Any CPU {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}.Release|Any CPU.ActiveCfg = Release|Any CPU {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}.Release|Any CPU.Build.0 = Release|Any CPU + {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Release|Any CPU.Build.0 = Release|Any CPU {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7}.Debug|Any CPU.Build.0 = Debug|Any CPU {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -159,6 +165,7 @@ Global {452F4EDD-E92B-4673-B5FB-863595996614} = {DB46F54A-9F53-44EC-80F8-9E53F0B871CF} {75959B17-A901-49E1-A5E7-667349DC4203} = {DC7A7E4A-B4DC-4958-BAA5-2BBB1A153B5F} {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7} = {DC7A7E4A-B4DC-4958-BAA5-2BBB1A153B5F} + {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF} = {451BE0BB-26ED-47ED-ABC7-23001D21410C} {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7} = {DB46F54A-9F53-44EC-80F8-9E53F0B871CF} {2AF20E5B-478F-46FE-8F8C-A385BB5D5EC7} = {451BE0BB-26ED-47ED-ABC7-23001D21410C} {428143F9-9D59-4DF6-A43A-41CA52C4E113} = {DB46F54A-9F53-44EC-80F8-9E53F0B871CF} diff --git a/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs b/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs index 366a2b2..0e75b58 100644 --- a/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs +++ b/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs @@ -15,6 +15,7 @@ namespace MiaoYu.Api.Admin; CoreRedisStartup, CoreIdentityStartup, AdminRepositoryStartup, + ChatAdminRepositoryStartup, LiveForumAdminRepositoryStartup, CoreSwaggerJwtStartup, SharedAdminStartup, diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs new file mode 100644 index 0000000..6f79fe9 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 存储不同音乐风格的信息。 服务 M_MusicGenresService +/// +public class M_MusicGenresService : ApplicationService> +{ + public M_MusicGenresService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.GenreName,w.Description,w.TenantId,w.OrderId,w.IsEnabled, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(M_MusicGenres form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs new file mode 100644 index 0000000..2907332 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 存储所有生成的歌曲的信息。 服务 M_SongsService +/// +public class M_SongsService : ApplicationService> +{ + public M_SongsService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.Title,w.AuthorId,w.Genre,w.Lyrics,w.IsPublic,w.CreationTimestamp,w.Duration,w.PlayCount,w.LikeCount,w.DownloadCount,w.MusicAddress,w.CoverImage,w.GenreId, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(M_Songs form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs new file mode 100644 index 0000000..2e090d3 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs @@ -0,0 +1,227 @@ +using HZY.Framework.Repository.EntityFramework.Extensions; + +using IdGen; + +using MiaoYu.Api.Admin.Models.Dtos.Apps.Cos; +using MiaoYu.Core.Cos.Models; +using MiaoYu.Core.Cos.Services; +using MiaoYu.Repository.ChatAI.Admin.Entities; + +using NPOI.SS.Formula.Functions; +using NPOI.Util; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 图片表 服务 TImageConfigService +/// +public class TImageConfigService : ApplicationService> +{ + private ICodeCosService codeCosService; + public TImageConfigService(IRepository defaultRepository, + ICodeCosService codeCosService) + : base(defaultRepository) + { + this.codeCosService = codeCosService; + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + if (pagingSearchInput == null) + { + pagingSearchInput = new PagingSearchInput(); + } + var query = this._defaultRepository.Select + .WhereIf(pagingSearchInput != null && !string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Name), w => w.Name.Contains(pagingSearchInput.Search.Name ?? "")) + //.WhereIf(pagingSearchInput.Search?.TenantId != null, + //w => w.TenantId == pagingSearchInput.Search.TenantId) + .WhereIf(pagingSearchInput != null && pagingSearchInput.Search?.ImageType > 0, w => w.ImageType == pagingSearchInput.Search.ImageType) + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.ImageId, + w.Name, + w.Url, + w.OssPath, + w.Bucket, + w.Region, + w.UpdateAt, + w.TenantId, + w.ImageType + //w.LastModificationTime, + //w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + + // 覆盖值 + //result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + + // 设置列 + result.GetColumn(query, w => w.Url).SetColumn(width: ""); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public async Task SaveFormAsync(T_Image_Config form, bool isUpdate) + { + form.UpdateAt = DateTime.Now; + if (form.CreateAt == DateTime.MinValue) + { + form.CreateAt = DateTime.Now; + } + + //var isUpdate = false; + //if (form.Id != 0) + //{ + // var _tempform = this._defaultRepository.FindById(form.Id); + // if (_tempform != null) + // { + // form.CreateAt = _tempform.CreateAt; + // isUpdate = true; + // } + //} + var x = await this._defaultRepository.InsertOrUpdateAsync(form); + if (x.ImageId == 0 && !isUpdate) + { + x.ImageId = x.Id; + } + await this._defaultRepository.InsertOrUpdateAsync(x); + return x; + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + /// + /// 获取签名 + /// + /// + public string GetCosSign() + { + var (sign, ex) = codeCosService.GenerateSignURL(new MiaoYu.Core.Cos.Models.CosGenerateSign()); + return sign; + } + + /// + /// 获取临时签名 + /// + /// + public GenerateTemporaryModel GetGenerateTemporaryKey(string fileName = "", string modelName = "") + { + var t = new CosGenerateSign() + { + Prefixes = "miaoyu" + }; + if (string.IsNullOrEmpty(modelName)) + { + modelName = $"images"; + } + var tempFile = fileName; + if (!string.IsNullOrEmpty(tempFile)) + { + var ext = Path.GetExtension(tempFile); + if (!string.IsNullOrEmpty(ext)) + { + Random random = new Random(); + + tempFile = $"{DateTime.Now.ToUnixTimeSeconds()}{ext}"; + } + } + var model = codeCosService.GenerateTemporaryKey(t); + // + GenerateTemporaryModel generateTemporaryModel = model.CopyObject() ?? new GenerateTemporaryModel(); + generateTemporaryModel.Bucket = t.Bucket + "-" + t.AppId; + generateTemporaryModel.Region = t.Region; + generateTemporaryModel.Prefixes = t.Prefixes; + generateTemporaryModel.FilePath = $"{t.Prefixes}/{modelName}/{DateTime.Now.ToString("yyyMMdd")}/{tempFile}"; + generateTemporaryModel.DomainName = "https://cos.shhuanmeng.com/"; + return generateTemporaryModel; + + } + + + /// + /// 获取图片url + /// + /// + /// + public async Task GetImageUrl(int imageId) + { + var form = await this._defaultRepository.GetAsync(it => it.ImageId == imageId); + return form?.Url ?? ""; + } + + + /// + /// 获取图片列表 + /// + /// + /// + public async Task GetImageList(string name) + { + var list = await this._defaultRepository.Select + .WhereIf(name!=null&&!string.IsNullOrEmpty(name.Trim()), w => w.Name.Contains(name)) + .OrderByDescending(w => w.Id).Take(20) + .Select(w => new + { + w.ImageId, + w.Name, + w.Url, + }).ToListAsync() + ; + return list; + } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs new file mode 100644 index 0000000..600bb6f --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs @@ -0,0 +1,187 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +using TencentCloud.Tsf.V20180326.Models; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 发现页类别菜单 服务 T_Category_Child_MenuService +/// +public class T_Category_Child_MenuService( + IRepository defaultRepository, + IRepository imageRepository, + IRepository character, + IRepository sysDictionary) + : ApplicationService>(defaultRepository) +{ + + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + .WhereIf(!string.IsNullOrEmpty(pagingSearchInput.Search?.Type), + w => w.Type == pagingSearchInput.Search.Type) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + TypeName = "", + w.TenantId, + w.Id, + w.Type, + Name = w.Name == null && w.ActionType == "Chat" ? character.Select.FirstOrDefault(it => it.Id.ToString() == w.ActionId).Name : w.Name, + w.ActionId, + w.ActionType, + ImageId = w.ImageId == 0 && w.ActionType == "Chat" ? character.Select.FirstOrDefault(it => it.Id.ToString() == w.ActionId).BgImg : w.ImageId, + w.OrderById, + w.ImageUrl, + w.IsEnabled, + w.SubTitle, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + + var imageIds = new List(); + result.DataSource.ForEach(it => + { + + if (it.TryGetValue("ImageId", out var bgImg)) + { + if (int.TryParse(bgImg?.ToString()?? "0", out var t)) + { + imageIds.Add(t); + } + } + + + }); + var imageList = imageRepository.GetAllList(it => imageIds.Contains(it.ImageId)); + + + result.DataSource.ForEach(it => + { + if (it.TryGetValue("Type", out var type)) + { + it["TypeName"] = sysDictionary.Select.FirstOrDefault(item => item.Code == type.ToString())?.Name ?? ""; + } + if (string.IsNullOrEmpty(it["ImageUrl"]?.ToString())) + { + setImageId(it, imageList, "ImageId", "ImageUrl"); + } + + }); + return result; + } + + private void setImageId(Dictionary it, List imageList, string key, string keyurl) + { + it.TryAdd(keyurl, ""); + if (it.TryGetValue(key, out var bgImg)) + { + if (int.TryParse((bgImg ?? "0").ToString(), out var t)) + { + var img = imageList.FirstOrDefault(it => it.ImageId == t); + if (img != null) + { + it[keyurl] = img.Url ?? ""; + } + } + } + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + //form = form.NullSafe(); + if (form == null) + { + form = new T_Category_Child_Menu() + { + IsEnabled = true + }; + } + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Category_Child_Menu form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + /// + /// 修改状态 + /// + /// + /// + /// + + public async Task UpdateState(bool state, int id) + { + var form = await this._defaultRepository.FindByIdAsync(id); + if (form == null) + { + return false; + } + form.IsEnabled = state; + await SaveFormAsync(form); + return true; + } +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs new file mode 100644 index 0000000..fb8eb04 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs @@ -0,0 +1,223 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +using NPOI.SS.Formula.Functions; + +using TencentCloud.Tci.V20190318.Models; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 人物表 服务 T_CharacterService +/// +public class T_CharacterService( + IRepository defaultRepository, + IRepository T_Character_Label, + IRepository T_Character_Label_Relation, + IRepository T_Character_Personality, + IRepository T_Character_Personality_Relation, + IRepository T_Character_Type, + IRepository T_Character_Type_Intimacy, + IRepository imageRepository + ) + : ApplicationService>(defaultRepository) +{ + //public T_CharacterService() + // : base(defaultRepository) + //{ + + //} + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Name), + w => w.Name.Contains(pagingSearchInput.Search.Name ?? "")) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.Name, + w.Biography, + w.TenantId, + w.Prologue, + w.ModelConfigId, + w.Visibility, + w.CreateTime, + w.UpdateTime, + w.Gender, + w.System, + w.BgImg, + w.IconImg, + //标签 + Lables = T_Character_Label.Select.Where(l => + T_Character_Label_Relation.Select.Any(ll => ll.CharacterId == w.Id && ll.CharacterLabelId == l.Id) + ).Select(l => new + { + Name = l.LabelName, + Code = l.LabelValue ?? l.LabelName, + Value = l.Id + }).ToList(), + //分类 + Types = + T_Character_Type.Select.Where(t => + T_Character_Type_Intimacy.Select.Any(tt => tt.CharacterId == w.Id && tt.TypeId == t.Id) + ) + .Select(t => new + { + Name = t.Name, + Code = t.Name, + Value = t.Id + }).ToList(), + //性格 + Personas = + T_Character_Personality.Select.Where(p => + T_Character_Personality_Relation.Select.Any(pp => pp.CharacterId == w.Id && pp.PersonalityId == p.Id) + ) + .Select(p => new + { + Name = p.Name, + Code = p.Value ?? p.Name, + Value = p.Id + }).ToList(), + + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + var imageIds = new List(); + var characteIds = new List(); + + result.DataSource.ForEach(it => + { + characteIds.Add(int.Parse(it["Id"]?.ToString() ?? "0")); + if (it.TryGetValue("BgImg", out var bgImg)) + { + if (int.TryParse(bgImg.ToString(), out var t)) + { + imageIds.Add(t); + } + } + if (it.TryGetValue("IconImg", out var IconImg)) + { + if (int.TryParse(IconImg.ToString(), out var t)) + { + imageIds.Add(t); + } + } + + }); + var imageList = imageRepository.GetAllList(it => imageIds.Contains(it.ImageId)); + + + result.DataSource.ForEach(it => + { + setImageId(it, imageList, "BgImg", "BgImgUrl"); + setImageId(it, imageList, "IconImg", "IconImgUrl"); + }); + return result; + } + + private void setImageId(Dictionary it, List imageList, string key, string keyurl) + { + it.TryAdd(keyurl, ""); + if (it.TryGetValue(key, out var bgImg)) + { + if (int.TryParse(bgImg.ToString(), out var t)) + { + var img = imageList.FirstOrDefault(it => it.ImageId == t); + if (img != null) + { + it[keyurl] = img.Url ?? ""; + } + } + } + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + /// + /// 修改状态 + /// + /// + /// + /// + + public async Task UpdateState(bool state, int id) + { + var form = await this._defaultRepository.FindByIdAsync(id); + if (form == null) + { + return false; + } + form.Visibility = state; + await SaveFormAsync(form); + return true; + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs new file mode 100644 index 0000000..996c9d6 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 角色标签表 服务 T_Character_LabelService +/// +public class T_Character_LabelService : ApplicationService> +{ + public T_Character_LabelService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.LabelName,w.CreateTime,w.UpdateTime,w.LabelValue, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character_Label form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs new file mode 100644 index 0000000..d4d08d7 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs @@ -0,0 +1,157 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 关联角色和标签 服务 T_Character_Label_RelationService +/// +public class T_Character_Label_RelationService : ApplicationService> +{ + public T_Character_Label_RelationService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + //人物Id + .WhereIf(pagingSearchInput.Search?.CharacterId!=null&&pagingSearchInput.Search?.CharacterId>0, + w => w.CharacterId== pagingSearchInput.Search.CharacterId) + + + //人物标签id + .WhereIf(pagingSearchInput.Search?.CharacterLabelId!=null&&pagingSearchInput.Search?.CharacterLabelId>0, + w => w.CharacterLabelId== pagingSearchInput.Search.CharacterLabelId) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.CharacterId,w.CharacterLabelId,w.CreateTime,w.UpdateTime, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character_Label_Relation form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(int id, List ids) + { + var list = await this._defaultRepository.Select.Where(it => it.CharacterId == id && ids.Contains(it.CharacterLabelId)).ToListAsync(); + await this._defaultRepository.DeleteAsync(list); + } + /// + /// 保存数据 + /// + /// form + /// + public async Task SaveFormAsync(int characterId, List ids) + { + var list = await this._defaultRepository.Select.Where(it => it.CharacterId == characterId).ToListAsync(); + await this._defaultRepository.DeleteAsync(list); + List newList = new List(); + foreach (var personalityId in ids) + { + var t_Character_Label_Relation = new T_Character_Label_Relation + { + CharacterId = characterId, + CreateTime = DateTime.Now, + CharacterLabelId = personalityId, + UpdateTime = DateTime.Now, + TenantId = Guid.Empty, + }; + //this._defaultRepository.Insert(t_Character_Label_Relation); + newList.Add(t_Character_Label_Relation); + } + //var delList = list.Where(it => newList.Any(item => item.CharacterId != it.PersonalityId)).ToList(); + //await this._defaultRepository.DeleteAsync(delList); + + return await this._defaultRepository.InsertRangeAsync(newList); + } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs new file mode 100644 index 0000000..fce628f --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs @@ -0,0 +1,119 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 角色性格表 服务 T_Character_PersonalityService +/// +public class T_Character_PersonalityService : ApplicationService> +{ + public T_Character_PersonalityService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + //性格名称 + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Name), + w => w.Name.Contains(pagingSearchInput.Search.Name ?? "")) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.Name,w.Value,w.CreateTime,w.UpdateTime, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character_Personality form) + { + form.UpdateTime = DateTime.Now; + if (form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs new file mode 100644 index 0000000..22097e2 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs @@ -0,0 +1,158 @@ +using IdGen; + +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +using NPOI.HSSF.Record.Chart; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 角色和性格关联表 服务 T_Character_Personality_RelationService +/// +public class T_Character_Personality_RelationService : ApplicationService> +{ + public T_Character_Personality_RelationService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + .WhereIf(pagingSearchInput.Search?.CharacterId != 0, + w => w.CharacterId == pagingSearchInput.Search.CharacterId) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId, + w.PersonalityId, + w.CharacterId, + w.CreateTime, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + + + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + //if (form. == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character_Personality_Relation form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(int id, List ids) + { + var list = await this._defaultRepository.Select.Where(it => it.CharacterId == id && ids.Contains(it.PersonalityId)).ToListAsync(); + await this._defaultRepository.DeleteAsync(list); + } + /// + /// 保存数据 + /// + /// form + /// + public async Task SaveFormAsync(int characterId, List ids) + { + var list = await this._defaultRepository.Select.Where(it => it.CharacterId == characterId).ToListAsync(); + await this._defaultRepository.DeleteAsync(list); + List newList = new List(); + foreach (var personalityId in ids) + { + var t_Character_Personality_Relation = new T_Character_Personality_Relation + { + CharacterId = characterId, + CreateTime = DateTime.Now, + PersonalityId = personalityId, + TenantId = Guid.Empty, + }; + //this._defaultRepository.Insert(t_Character_Personality_Relation); + newList.Add(t_Character_Personality_Relation); + } + //var delList = list.Where(it => newList.Any(item => item.CharacterId != it.PersonalityId)).ToList(); + //await this._defaultRepository.DeleteAsync(delList); + + return await this._defaultRepository.InsertRangeAsync(newList); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs new file mode 100644 index 0000000..44ff349 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 发现页类型分类 服务 T_Character_TypeService +/// +public class T_Character_TypeService : ApplicationService> +{ + public T_Character_TypeService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.Name,w.CreateTime,w.UpdateTime,w.TenantId,w.IsNotCategoryShow,w.OrderBy, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character_Type form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs new file mode 100644 index 0000000..77537fc --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs @@ -0,0 +1,151 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 角色和角色类型关联表 服务 T_Character_Type_IntimacyService +/// +public class T_Character_Type_IntimacyService : ApplicationService> +{ + public T_Character_Type_IntimacyService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + .WhereIf(pagingSearchInput.Search?.CharacterId != 0, + w => w.CharacterId == pagingSearchInput.Search.CharacterId) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.TypeId,w.CharacterId,w.UpdateTIme,w.CreateTime,w.OrderBy, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Character_Type_Intimacy form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(int id, List ids) + { + var list = await this._defaultRepository.Select.Where(it => it.CharacterId == id && ids.Contains(it.TypeId)).ToListAsync(); + await this._defaultRepository.DeleteAsync(list); + } + /// + /// 保存数据 + /// + /// form + /// + public async Task SaveFormAsync(int characterId, List ids) + { + var list = await this._defaultRepository.Select.Where(it => it.CharacterId == characterId).ToListAsync(); + await this._defaultRepository.DeleteAsync(list); + List newList = new List(); + foreach (var personalityId in ids) + { + var t_Character_Type_Intimacy = new T_Character_Type_Intimacy + { + CharacterId = characterId, + CreateTime = DateTime.Now, + TypeId = personalityId, + OrderBy=1, + UpdateTIme=DateTime.Now, + TenantId = Guid.Empty, + }; + //this._defaultRepository.Insert(t_Character_Type_Intimacy); + newList.Add(t_Character_Type_Intimacy); + } + //var delList = list.Where(it => newList.Any(item => item.CharacterId != it.PersonalityId)).ToList(); + //await this._defaultRepository.DeleteAsync(delList); + + return await this._defaultRepository.InsertRangeAsync(newList); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs new file mode 100644 index 0000000..8966611 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs @@ -0,0 +1,132 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 聊天记录表 服务 T_ChatService +/// +public class T_ChatService : ApplicationService> +{ + public T_ChatService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + //人物表Id + .WhereIf(pagingSearchInput.Search?.CharacterId != null && pagingSearchInput.Search?.CharacterId > 0, + w => w.CharacterId == pagingSearchInput.Search.CharacterId) + .WhereIf(pagingSearchInput.Search?.SessionId != Guid.Empty, + w => w.SessionId == pagingSearchInput.Search.SessionId) + //聊天内容 + .WhereIf(pagingSearchInput.Search?.UserId != null && pagingSearchInput.Search?.UserId > 0, + w => w.UserId == pagingSearchInput.Search.UserId) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId, + w.UserId, + w.Content, + w.TimeStamp, + w.CreateTime, + w.UpdateTime, + w.Input_tokens, + w.Output_tokens, + w.CharacterId, + w.Role, + w.SessionId, + w.SendDateDay, + w.SendMessageDay, + w.Type, + w.ClaudeType, + w.ClaudeId, + w.ClaudeModel, + w.Tokens, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Chat form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs new file mode 100644 index 0000000..805b461 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs @@ -0,0 +1,136 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 模型配置表 服务 T_Model_ConfigService +/// +public class T_Model_ConfigService : ApplicationService> +{ + public T_Model_ConfigService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + + + + //模型名称 + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.ModelName), + w => w.ModelName.Contains(pagingSearchInput.Search.ModelName ?? "")) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.ModelName, + w.Model, + w.MaxTokens, + w.ApiKey, + w.Url, + w.AnthropicVersion, + w.CreateTime, + w.UpdateTime, + w.TenantId, + w.SystemTemplate, + w.RequestTemplate, + w.HeadersTemplate, + w.ResponseTemplate, + w.IsDefabult, + w.OtherTemplate, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Model_Config form) + { + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs new file mode 100644 index 0000000..f1e9fc4 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 订单详情表 服务 T_OrderItemsService +/// +public class T_OrderItemsService : ApplicationService> +{ + public T_OrderItemsService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.ProductId,w.OrderId,w.RewardInfo,w.Product,w.PaymentInfo,w.RewardTips,w.PayUrl, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_OrderItems form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs new file mode 100644 index 0000000..755588d --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 订单完成表 服务 T_OrderService +/// +public class T_OrderService : ApplicationService> +{ + public T_OrderService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.OrderId,w.UserId,w.OrderDate,w.PaymentDate,w.PaymentMethod,w.ProductId,w.TotalPrice,w.Status,w.CreatedAt,w.UpdatedAt,w.PaymentDay, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Order form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs new file mode 100644 index 0000000..c6a2fba --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs @@ -0,0 +1,174 @@ +using FreeSql; + +using MiaoYu.Repository.ChatAI.Admin.Entities; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +using TencentCloud.Tsf.V20180326.Models; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 商城表 服务 T_ProductsService +/// +public class T_ProductsService : ApplicationService> +{ + private IRepository imageRepository; + public T_ProductsService(IRepository defaultRepository, + IRepository imageRepository) + : base(defaultRepository) + { + this.imageRepository = imageRepository; + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + + + + //道具名称 + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.ProductName), + w => w.ProductName.Contains(pagingSearchInput.Search.ProductName ?? "")) + + + //道具类型 + .WhereIf(pagingSearchInput.Search?.ProductType != null && pagingSearchInput.Search?.ProductType > 0, + w => w.ProductType == pagingSearchInput.Search.ProductType) + .OrderBy(it=>it.ProductType).ThenBy(it=>it.OrderById) + .Select(w => new + { + w.Id, + w.TenantId, + w.ProductId, + w.ProductName, + w.ProductType, + w.ProductDesc, + w.Price, + w.ProductImgId, + w.IsProductDelisting, + w.IsFirstCharge, + w.FirstChargeImgId, + w.FirstChargePrice, + w.CreateTime, + w.UpdateTime, + w.OrderById, + ProductImg = w.ProductImgId == 0 ? "" : imageRepository.Select.FirstOrDefault(it => it.ImageId == w.ProductImgId).Url, + FirstChargeImg = (w.FirstChargeImgId == null || w.FirstChargeImgId == 0) ? "" : imageRepository.Select.FirstOrDefault(it => it.ImageId == w.FirstChargeImgId).Url + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + { + form.CreateTime = DateTime.Now; + } + if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + { + form.UpdateTime = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Products form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + /// + /// 修改首充状态 + /// + /// + /// + /// + + public async Task UpdateFirstCharge(bool state, int id) + { + var form = await this._defaultRepository.FindByIdAsync(id); + if (form == null) + { + return false; + } + form.IsFirstCharge = state; + await SaveFormAsync(form); + return true; + } + /// + /// 修改上架,下架状态 + /// + /// + /// + /// + + public async Task UpdateFirstCharge(int state, int id) + { + var form = await this._defaultRepository.FindByIdAsync(id); + if (form == null) + { + return false; + } + form.IsProductDelisting = state; + await SaveFormAsync(form); + return true; + } +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs new file mode 100644 index 0000000..ae7ec54 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs @@ -0,0 +1,126 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 产品表奖励 服务 T_Products_RewardService +/// +public class T_Products_RewardService : ApplicationService> +{ + public T_Products_RewardService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.CurrencyType, + w.Money, + w.T_ProductId, + w.FirstChargeMoney, + w.ProductId, + w.TenantId, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + + /// + /// 获取列表数据 + /// + /// + /// + public async Task> FindListAsync(int productId) + { + var query = await this._defaultRepository.SelectNoTracking.Where(it => it.T_ProductId == productId).OrderByDescending(w => w.Id).ToListAsync(); + return query; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Products_Reward form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs new file mode 100644 index 0000000..1e6df90 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs @@ -0,0 +1,145 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 用户表 服务 T_UserService +/// +public class T_UserService : ApplicationService> +{ + public T_UserService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + //邮箱 + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Email), + w => w.Email.Contains(pagingSearchInput.Search.Email ?? "")) + //用户昵称 + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.NickName), + w => w.NickName.Contains(pagingSearchInput.Search.NickName ?? "")) + //手机号 + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.PhoneNum), + w => w.PhoneNum.Contains(pagingSearchInput.Search.PhoneNum ?? "")) + .OrderByDescending(w => w.LastLoginAt) + .Select(w => new + { + w.Id, + w.TenantId, + w.NickName, + w.UserName, + w.PhoneNum, + w.Email, + w.IsActive, + w.CreatedAt, + w.LastLoginTypeAt, + w.LastLoginAt, + w.UpdatedAt, + w.RegisterType, + w.Ip, + w.State, + w.IsTest + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + if (form.CreatedAt == null || form.CreatedAt == DateTime.MinValue) + { + form.CreatedAt = DateTime.Now; + } + if (form.UpdatedAt == null || form.UpdatedAt == DateTime.MinValue) + { + form.UpdatedAt = DateTime.Now; + } + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_User form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + /// + /// 修改是否是测试账号 + /// + /// + /// + /// + + public async Task UpdateIsTest(bool isTest, int id) + { + var form = await this._defaultRepository.FindByIdAsync(id); + if (form == null) + { + return false; + } + form.IsTest = isTest; + await SaveFormAsync(form); + return true; + } +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs new file mode 100644 index 0000000..5efec82 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs @@ -0,0 +1,119 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 用户货币表 服务 T_User_CurrencyService +/// +public class T_User_CurrencyService : ApplicationService> +{ + public T_User_CurrencyService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + //货币类型 + .WhereIf(pagingSearchInput.Search?.CurrencyType!=null&&pagingSearchInput.Search?.CurrencyType>0, + w => w.CurrencyType== pagingSearchInput.Search.CurrencyType) + + + //用户Id + .WhereIf(pagingSearchInput.Search?.UserId!=null&&pagingSearchInput.Search?.UserId>0, + w => w.UserId== pagingSearchInput.Search.UserId) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.CurrencyType,w.CurrencyName,w.CurrencyMoney,w.UpdateAt,w.CreateAt,w.UserId,w.TenantId, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_User_Currency form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs new file mode 100644 index 0000000..019a7db --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs @@ -0,0 +1,124 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 用户金额记录表 服务 T_User_Currency_LogService +/// +public class T_User_Currency_LogService : ApplicationService> +{ + public T_User_Currency_LogService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + //消耗类型 + .WhereIf(pagingSearchInput.Search?.ConsumeType!=null&&pagingSearchInput.Search?.ConsumeType>0, + w => w.ConsumeType== pagingSearchInput.Search.ConsumeType) + + + //金额类型 + .WhereIf(pagingSearchInput.Search?.CurrencyType!=null&&pagingSearchInput.Search?.CurrencyType>0, + w => w.CurrencyType== pagingSearchInput.Search.CurrencyType) + + + //用户 + .WhereIf(pagingSearchInput.Search?.UserId!=null&&pagingSearchInput.Search?.UserId>0, + w => w.UserId== pagingSearchInput.Search.UserId) + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId,w.UserId,w.CurrencyType,w.Consume,w.ConsumeType,w.Remarks,w.CreateTime,w.UpdateTime, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_User_Currency_Log form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs new file mode 100644 index 0000000..3f66388 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 意向订单表 服务 T_User_IntentOrderService +/// +public class T_User_IntentOrderService : ApplicationService> +{ + public T_User_IntentOrderService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.UserId,w.ProductId,w.Method,w.Price,w.Quantity,w.Status,w.Notes,w.IntentDate,w.CreatedAt,w.UpdatedAt,w.TenantId,w.OrderId, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_User_IntentOrder form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs new file mode 100644 index 0000000..99b9beb --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs @@ -0,0 +1,116 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 手机号登录表 服务 T_User_Phone_AccountService +/// +public class T_User_Phone_AccountService : ApplicationService> +{ + public T_User_Phone_AccountService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId != null, + w => w.TenantId == pagingSearchInput.Search.TenantId) + .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.PhoneNum), + w => w.PhoneNum.Contains(pagingSearchInput.Search.PhoneNum ?? "")) + .WhereIf(pagingSearchInput.Search?.UserId != null && pagingSearchInput.Search?.UserId > 0, + w => w.UserId == pagingSearchInput.Search.UserId) + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.TenantId, + w.UserId, + w.PhoneNum, + w.VerificationCode, + w.LastLoginAt, + w.CreatedAt, + w.UpdatedAt, + w.NikeName, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_User_Phone_Account form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs new file mode 100644 index 0000000..d5e052f --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs @@ -0,0 +1,109 @@ +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.ApplicationServices.Apps; + +/// +/// 验证码表 服务 T_Verification_CodeService +/// +public class T_Verification_CodeService : ApplicationService> +{ + public T_Verification_CodeService(IRepository defaultRepository) + : base(defaultRepository) + { + + } + + /// + /// 获取列表数据 + /// + /// + /// + public async Task FindListAsync(PagingSearchInput pagingSearchInput) + { + var query = this._defaultRepository.Select + + //项目 + .WhereIf(pagingSearchInput.Search?.TenantId!=null, + w => w.TenantId==pagingSearchInput.Search.TenantId) + + + + .OrderByDescending(w => w.Id) + .Select(w => new + { + w.Id, + w.Key,w.Code,w.CreateDay,w.ExpireAt,w.CreateAt,w.Remarks,w.TenantId,w.VerificationType, + // w.LastModificationTime, + // w.CreationTime + }) + ; + + var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); + // result + // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) + // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) + // ; + // 设置列 + //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); + //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); + + return result; + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + public async Task DeleteListAsync(List ids) + { + await this._defaultRepository.DeleteByIdsAsync(ids); + } + + /// + /// 查询表单数据 + /// + /// id + /// + public async Task> FindFormAsync(int id) + { + var res = new Dictionary(); + var form = await this._defaultRepository.FindByIdAsync(id); + form = form.NullSafe(); + //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) + //{ + // form.CreateTime = DateTime.Now; + //} + //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) + //{ + // form.UpdateTime = DateTime.Now; + //} + res[nameof(id)] = id; + res[nameof(form)] = form; + return res; + } + + /// + /// 保存数据 + /// + /// form + /// + public Task SaveFormAsync(T_Verification_Code form) + { + return this._defaultRepository.InsertOrUpdateAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) + { + pagingSearchInput.Page = -1; + var tableViewModel = await this.FindListAsync(pagingSearchInput); + return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs index 313ad55..a6577e8 100644 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs @@ -1,6 +1,7 @@ using HZY.Framework.Repository.EntityFramework.Models.Standard; using MiaoYu.Repository.Admin.Entities.LowCode; +using MiaoYu.Repository.ChatAI.Admin.Entities; using MiaoYu.Shared.Admin.Models.LowCodes; using CoreColumnMetaConfig = MiaoYu.Core.CodeGenerator.Models.ColumnMetaConfig; diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs new file mode 100644 index 0000000..1ec577d --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 存储不同音乐风格的信息。 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "存储不同音乐风格的信息。")] +public class M_MusicGenresController : AdminControllerBase +{ + public M_MusicGenresController(M_MusicGenresService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] M_MusicGenres form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] M_MusicGenres form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs new file mode 100644 index 0000000..47f40ff --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 存储所有生成的歌曲的信息。 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "存储所有生成的歌曲的信息。")] +public class M_SongsController : AdminControllerBase +{ + public M_SongsController(M_SongsService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] M_Songs form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] M_Songs form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs new file mode 100644 index 0000000..d7ce509 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs @@ -0,0 +1,166 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Api.Admin.Models.Dtos.Apps.Cos; +using MiaoYu.Core.Cos.Models; +using MiaoYu.Repository.ChatAI.Admin.Entities; + +using Microsoft.AspNetCore.Http.Extensions; +using Microsoft.AspNetCore.Mvc.ModelBinding; + +using NPOI.HPSF; + +using System.Net; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 图片表 控制器 +/// +[ControllerDescriptor(MenuId = "44", DisplayName = "图片表")] +public class TImageConfigController : AdminControllerBase +{ + public TImageConfigController(TImageConfigService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public async Task CreateAsync([FromBody] T_Image_Config form) + { + + form.UpdateAt = DateTime.Now; + form.CreateAt = DateTime.Now; + var image = await this._defaultService.SaveFormAsync(form, false); + return image?.ImageId ?? 0; + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public async Task UpdateAsync([FromBody] T_Image_Config form) + { + form.UpdateAt = DateTime.Now; + var image = await this._defaultService.SaveFormAsync(form, true); + return image?.ImageId ?? 0; + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + /// + /// + /// + /// + [HttpGet] + [ActionDescriptor(DisplayName = "获取cos加密")] + public string GetCosSign() + { + return this._defaultService.GetCosSign(); + } + + /// + /// 获取临时密钥 + /// + /// + [HttpGet] + [ActionDescriptor(DisplayName = "获取cos临时密钥")] + public GenerateTemporaryModel GetGenerateTemporaryKey(string fileName = "", string modelName = "") + { + return this._defaultService.GetGenerateTemporaryKey(fileName, modelName); + } + + /// + /// 获取临时密钥 + /// + /// + [ActionDescriptor(DisplayName = "获取图片")] + [HttpGet("{imageId?}")] + [AllowAnonymous] + public async Task Image([FromRoute] int imageId) + { + var url = await this._defaultService.GetImageUrl(imageId); + if (!string.IsNullOrEmpty(url)) + { + Response.Redirect(url); + } + } + + /// + /// 获取图片数据源 + /// + /// + /// + [ActionDescriptor(DisplayName = "获取图片数据源")] + [HttpGet] + public async Task GetImageList([FromQuery] string? name) + { + name = WebUtility.UrlDecode(name); + + return await this._defaultService.GetImageList(name); + } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs new file mode 100644 index 0000000..7ef0bd7 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs @@ -0,0 +1,111 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 发现页类别菜单 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "发现页类别菜单")] +public class T_Category_Child_MenuController : AdminControllerBase +{ + public T_Category_Child_MenuController(T_Category_Child_MenuService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Category_Child_Menu form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Category_Child_Menu form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + /// + /// 修改角色状态 + /// + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改角色状态")] + [HttpPost("{id?}/{v?}")] + public async Task UpdateState([FromRoute] int id, [FromRoute] int v) + { + return await this._defaultService.UpdateState(v == 0 ? false : true, id); + } + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs new file mode 100644 index 0000000..43d0fea --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs @@ -0,0 +1,111 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 人物表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "人物表")] +public class T_CharacterController : AdminControllerBase +{ + public T_CharacterController(T_CharacterService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + /// + /// 修改角色状态 + /// + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改角色状态")] + [HttpPost("{id?}/{v?}")] + public async Task UpdateState([FromRoute] int id, [FromRoute] int v) + { + return await this._defaultService.UpdateState(v == 0 ? false : true, id); + } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs new file mode 100644 index 0000000..2cd7a2b --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs @@ -0,0 +1,104 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 角色标签表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色标签表")] +public class T_Character_LabelController : AdminControllerBase +{ + public T_Character_LabelController(T_Character_LabelService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character_Label form) + { + form.CreateTime = DateTime.Now; + form.UpdateTime = DateTime.Now; + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character_Label form) + { + form.CreateTime = DateTime.Now; + form.UpdateTime = DateTime.Now; + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs new file mode 100644 index 0000000..0ede397 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs @@ -0,0 +1,130 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 关联角色和标签 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "关联角色和标签")] +public class T_Character_Label_RelationController : AdminControllerBase +{ + public T_Character_Label_RelationController(T_Character_Label_RelationService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character_Label_Relation form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character_Label_Relation form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost("{id?}")] + public async Task DeleteCIdListAsync([FromRoute] int id, [FromBody] List ids) + { + await this._defaultService.DeleteListAsync(id, ids); + return true; + } + + + /// + /// 批量配置标签 + /// + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "批量配置标签")] + [HttpPost(("{id?}"))] + [ApiCheckModel] + public Task SetCharacterLabel([FromRoute] int id, [FromBody] List ids) + { + return this._defaultService.SaveFormAsync(id, ids); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs new file mode 100644 index 0000000..5be03f9 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 角色性格表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色性格表")] +public class T_Character_PersonalityController : AdminControllerBase +{ + public T_Character_PersonalityController(T_Character_PersonalityService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character_Personality form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character_Personality form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs new file mode 100644 index 0000000..01ec0a5 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs @@ -0,0 +1,131 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 角色和性格关联表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色和性格关联表")] +public class T_Character_Personality_RelationController : AdminControllerBase +{ + public T_Character_Personality_RelationController(T_Character_Personality_RelationService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character_Personality_Relation form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character_Personality_Relation form) + { + return this._defaultService.SaveFormAsync(form); + } + + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost("{id?}")] + public async Task DeleteCIdListAsync([FromRoute] int id, [FromBody] List ids) + { + await this._defaultService.DeleteListAsync(id, ids); + return true; + } + + + /// + /// 批量配置性格 + /// + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "批量配置性格")] + [HttpPost(("{id?}"))] + [ApiCheckModel] + public Task SetCharacterPersonality([FromRoute] int id, [FromBody] List ids) + { + return this._defaultService.SaveFormAsync(id, ids); + } + + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs new file mode 100644 index 0000000..084d7a7 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs @@ -0,0 +1,104 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 发现页类型分类 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "发现页类型分类")] +public class T_Character_TypeController : AdminControllerBase +{ + public T_Character_TypeController(T_Character_TypeService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character_Type form) + { + form.CreateTime = DateTime.Now; + form.UpdateTime = DateTime.Now; + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character_Type form) + { + form.CreateTime = DateTime.Now; + form.UpdateTime = DateTime.Now; + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs new file mode 100644 index 0000000..4bfd0e4 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs @@ -0,0 +1,127 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 角色和角色类型关联表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色和角色类型关联表")] +public class T_Character_Type_IntimacyController : AdminControllerBase +{ + public T_Character_Type_IntimacyController(T_Character_Type_IntimacyService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Character_Type_Intimacy form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Character_Type_Intimacy form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost("{id?}")] + public async Task DeleteCIdListAsync([FromRoute] int id, [FromBody] List ids) + { + await this._defaultService.DeleteListAsync(id, ids); + return true; + } + + + /// + /// 批量配置类型 + /// + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "批量配置类型")] + [HttpPost(("{id?}"))] + [ApiCheckModel] + public Task SetCharacterTypes([FromRoute] int id, [FromBody] List ids) + { + return this._defaultService.SaveFormAsync(id, ids); + } + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs new file mode 100644 index 0000000..8f1f710 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 聊天记录表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "聊天记录表")] +public class T_ChatController : AdminControllerBase +{ + public T_ChatController(T_ChatService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Chat form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Chat form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs new file mode 100644 index 0000000..b112f92 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 模型配置表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "模型配置表")] +public class T_Model_ConfigController : AdminControllerBase +{ + public T_Model_ConfigController(T_Model_ConfigService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Model_Config form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Model_Config form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs new file mode 100644 index 0000000..e15ee2a --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 订单完成表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "订单完成表")] +public class T_OrderController : AdminControllerBase +{ + public T_OrderController(T_OrderService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Order form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Order form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs new file mode 100644 index 0000000..1c850de --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 订单详情表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "订单详情表")] +public class T_OrderItemsController : AdminControllerBase +{ + public T_OrderItemsController(T_OrderItemsService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_OrderItems form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_OrderItems form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs new file mode 100644 index 0000000..eedc26b --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs @@ -0,0 +1,124 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 商城表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "商城表")] +public class T_ProductsController : AdminControllerBase +{ + public T_ProductsController(T_ProductsService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Products form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Products form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + /// + /// 修改角色状态 + /// + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改首充")] + [HttpPost("{id?}/{v?}")] + public async Task UpdateFirstCharge([FromRoute] int id, [FromRoute] int v) + { + return await this._defaultService.UpdateFirstCharge(v == 0 ? false : true, id); + } + + + /// + /// 修改角色状态 + /// + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改上线,下线")] + [HttpPost("{id?}/{v?}")] + public async Task UpdateState([FromRoute] int id, [FromRoute] int v) + { + return await this._defaultService.UpdateFirstCharge(v, id); + } + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs new file mode 100644 index 0000000..d6bd6b2 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs @@ -0,0 +1,110 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 产品表奖励 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "产品表奖励")] +public class T_Products_RewardController : AdminControllerBase +{ + public T_Products_RewardController(T_Products_RewardService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpGet("{productId?}")] + public async Task> FindListAsync([FromRoute] int productId) + { + return await this._defaultService.FindListAsync(productId); + } + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Products_Reward form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Products_Reward form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs new file mode 100644 index 0000000..c9b9170 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs @@ -0,0 +1,111 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 用户表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "用户表")] +public class T_UserController : AdminControllerBase +{ + public T_UserController(T_UserService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_User form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_User form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + /// + /// 修改角色状态 + /// + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改角色状态")] + [HttpPost("{id?}/{isTest?}")] + public async Task UpdateIsTest(int id, bool isTest) + { + return await this._defaultService.UpdateIsTest(isTest, id); + } + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs new file mode 100644 index 0000000..fac2812 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 用户货币表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "用户货币表")] +public class T_User_CurrencyController : AdminControllerBase +{ + public T_User_CurrencyController(T_User_CurrencyService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_User_Currency form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_User_Currency form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs new file mode 100644 index 0000000..b8f989f --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 用户金额记录表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "用户金额记录表")] +public class T_User_Currency_LogController : AdminControllerBase +{ + public T_User_Currency_LogController(T_User_Currency_LogService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_User_Currency_Log form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_User_Currency_Log form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs new file mode 100644 index 0000000..174ddac --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 意向订单表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "意向订单表")] +public class T_User_IntentOrderController : AdminControllerBase +{ + public T_User_IntentOrderController(T_User_IntentOrderService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_User_IntentOrder form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_User_IntentOrder form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs new file mode 100644 index 0000000..4ec3265 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 手机号登录表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "手机号登录表")] +public class T_User_Phone_AccountController : AdminControllerBase +{ + public T_User_Phone_AccountController(T_User_Phone_AccountService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_User_Phone_Account form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_User_Phone_Account form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs new file mode 100644 index 0000000..3d9969e --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs @@ -0,0 +1,100 @@ +using MiaoYu.Api.Admin.ApplicationServices.Apps; +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; +namespace MiaoYu.Api.Admin.Controllers.Apps; + +/// +/// 验证码表 控制器 +/// +[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "验证码表")] +public class T_Verification_CodeController : AdminControllerBase +{ + public T_Verification_CodeController(T_Verification_CodeService defaultService) + : base(defaultService) + { + + } + + /// + /// 获取列表 + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] + [HttpPost] + public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) + { + return this._defaultService.FindListAsync(pagingSearchInput); + } + + /// + /// 根据id数组删除 + /// + /// ids + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] + [HttpPost] + public async Task DeleteListAsync([FromBody] List ids) + { + await this._defaultService.DeleteListAsync(ids); + return true; + } + + /// + /// 查询表单数据 + /// + /// id + /// + [ActionDescriptor(DisplayName = "查看表单")] + [HttpGet("{id?}")] + public Task> FindFormAsync([FromRoute] int id) + { + return this._defaultService.FindFormAsync(id); + } + + /// + /// 添加 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] + [HttpPost] + [ApiCheckModel] + public Task CreateAsync([FromBody] T_Verification_Code form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 编辑 + /// + /// + /// + [RequestLimitFilter(Duration = 1, LimitCount = 1)] + [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] + [HttpPost] + [ApiCheckModel] + public Task UpdateAsync([FromBody] T_Verification_Code form) + { + return this._defaultService.SaveFormAsync(form); + } + + /// + /// 导出Excel + /// + /// + /// + [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] + [ApiResourceCacheFilter(10)] + [HttpPost] + public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) + { + var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); + var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; + base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); + } + + + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Dockerfile b/admin-server/MiaoYu.Api.Admin/Dockerfile new file mode 100644 index 0000000..8341b72 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Dockerfile @@ -0,0 +1,38 @@ +#See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging. + +FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base +USER app +WORKDIR /app +EXPOSE 80 + +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build +ARG BUILD_CONFIGURATION=Release +WORKDIR /src +COPY ["MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj", "MiaoYu.Api.Admin/"] +COPY ["MiaoYu.Core.Cos/MiaoYu.Core.Cos.csproj", "MiaoYu.Core.Cos/"] +COPY ["MiaoYu.Core.EntityFramework/MiaoYu.Core.EntityFramework.csproj", "MiaoYu.Core.EntityFramework/"] +COPY ["MiaoYu.Core.Identity/MiaoYu.Core.Identity.csproj", "MiaoYu.Core.Identity/"] +COPY ["MiaoYu.Core/MiaoYu.Core.csproj", "MiaoYu.Core/"] +COPY ["MiaoYu.Core.Quartz/MiaoYu.Core.Quartz.csproj", "MiaoYu.Core.Quartz/"] +COPY ["MiaoYu.Core.Razor/MiaoYu.Core.Razor.csproj", "MiaoYu.Core.Razor/"] +COPY ["MiaoYu.Core.Redis/MiaoYu.Core.Redis.csproj", "MiaoYu.Core.Redis/"] +COPY ["MiaoYu.Core.Swagger/MiaoYu.Core.Swagger.csproj", "MiaoYu.Core.Swagger/"] +COPY ["MiaoYu.Repository.Admin/MiaoYu.Repository.Admin.csproj", "MiaoYu.Repository.Admin/"] +COPY ["MiaoYu.Core.Logs/MiaoYu.Core.Logs.csproj", "MiaoYu.Core.Logs/"] +COPY ["MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.csproj", "MiaoYu.Repository.ChatAI.Admin/"] +COPY ["MiaoYu.Shared.Admin/MiaoYu.Shared.Admin.csproj", "MiaoYu.Shared.Admin/"] +COPY ["MiaoYu.Shared/MiaoYu.Shared.csproj", "MiaoYu.Shared/"] +RUN ls +RUN dotnet restore "./MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj" +COPY . . +WORKDIR "/src/MiaoYu.Api.Admin" +RUN dotnet build "./MiaoYu.Api.Admin.csproj" -c $BUILD_CONFIGURATION -o /app/build + +FROM build AS publish +ARG BUILD_CONFIGURATION=Release +RUN dotnet publish "./MiaoYu.Api.Admin.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false + +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . +ENTRYPOINT ["dotnet", "MiaoYu.Api.Admin.dll"] \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj index 27890c0..a6e0f75 100644 --- a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj +++ b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj @@ -28,6 +28,7 @@ + diff --git a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml index 7e25a34..8deb540 100644 --- a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml +++ b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml @@ -169,6 +169,1051 @@ + + + 存储不同音乐风格的信息。 服务 M_MusicGenresService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 存储所有生成的歌曲的信息。 服务 M_SongsService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 图片表 服务 TImageConfigService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 获取签名 + + + + + + 获取临时签名 + + + + + + 获取图片url + + + + + + + 获取图片列表 + + + + + + + 发现页类别菜单 服务 T_Category_Child_MenuService + + + + + 发现页类别菜单 服务 T_Category_Child_MenuService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 修改状态 + + + + + + + + 人物表 服务 T_CharacterService + + + + + 人物表 服务 T_CharacterService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 修改状态 + + + + + + + + 角色标签表 服务 T_Character_LabelService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 关联角色和标签 服务 T_Character_Label_RelationService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 根据id数组删除 + + ids + + + + + 保存数据 + + form + + + + + 角色性格表 服务 T_Character_PersonalityService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 角色和性格关联表 服务 T_Character_Personality_RelationService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 根据id数组删除 + + ids + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 发现页类型分类 服务 T_Character_TypeService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 角色和角色类型关联表 服务 T_Character_Type_IntimacyService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 根据id数组删除 + + ids + + + + + 保存数据 + + form + + + + + 聊天记录表 服务 T_ChatService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 模型配置表 服务 T_Model_ConfigService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 订单详情表 服务 T_OrderItemsService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 订单完成表 服务 T_OrderService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 商城表 服务 T_ProductsService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 修改首充状态 + + + + + + + + 修改上架,下架状态 + + + + + + + + 产品表奖励 服务 T_Products_RewardService + + + + + 获取列表数据 + + + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 用户表 服务 T_UserService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 修改是否是测试账号 + + + + + + + + 用户货币表 服务 T_User_CurrencyService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 用户金额记录表 服务 T_User_Currency_LogService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 意向订单表 服务 T_User_IntentOrderService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 手机号登录表 服务 T_User_Phone_AccountService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + + + + 验证码表 服务 T_Verification_CodeService + + + + + 获取列表数据 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 保存数据 + + form + + + + + 导出Excel + + + + 会员服务 @@ -1152,6 +2197,1204 @@ + + + 存储不同音乐风格的信息。 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 存储所有生成的歌曲的信息。 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 图片表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + + + + + + + 获取临时密钥 + + + + + + 获取临时密钥 + + + + + + 获取图片数据源 + + + + + + + 发现页类别菜单 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 修改角色状态 + + + + + + + + 人物表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 修改角色状态 + + + + + + + + 角色标签表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 关联角色和标签 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 根据id数组删除 + + ids + + + + + 批量配置标签 + + + + + + + + 角色性格表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 角色和性格关联表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 根据id数组删除 + + ids + + + + + 批量配置性格 + + + + + + + + 导出Excel + + + + + + + 发现页类型分类 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 角色和角色类型关联表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 根据id数组删除 + + ids + + + + + 批量配置类型 + + + + + + + + 聊天记录表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 模型配置表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 订单完成表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 订单详情表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 商城表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 修改角色状态 + + + + + + + + 修改角色状态 + + + + + + + + 产品表奖励 控制器 + + + + + 获取列表 + + + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 用户表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 修改角色状态 + + + + + + + + 用户货币表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 用户金额记录表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 意向订单表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 手机号登录表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + + + + 验证码表 控制器 + + + + + 获取列表 + + + + + + + 根据id数组删除 + + ids + + + + + 查询表单数据 + + id + + + + + 添加 + + + + + + + 编辑 + + + + + + + 导出Excel + + + + 会员控制器 diff --git a/admin-server/MiaoYu.Api.Admin/Usings.cs b/admin-server/MiaoYu.Api.Admin/Usings.cs index 934fb55..db32c09 100644 --- a/admin-server/MiaoYu.Api.Admin/Usings.cs +++ b/admin-server/MiaoYu.Api.Admin/Usings.cs @@ -83,4 +83,5 @@ global using System.ComponentModel; global using System.Reflection; global using System.Text; global using System.Text.Encodings.Web; -global using System.Text.Unicode; \ No newline at end of file +global using System.Text.Unicode; +global using MiaoYu.Repository.ChatAI.Admin; \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminDbContext.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminDbContext.cs new file mode 100644 index 0000000..d4c89e7 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminDbContext.cs @@ -0,0 +1,44 @@ + + +using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +namespace MiaoYu.Repository.ChatAI.Admin +{ + /// + /// 后台管理系统数据库上下文 + /// + [DbContextConfig($"Repository.*.Entities.*")] + public class ChatAdminDbContext : DbContext, IBaseDbContext + { + /// + /// 工作单元 + /// + public IUnitOfWork UnitOfWork { get; } + + public ChatAdminDbContext(DbContextOptions dbContextOptions) : base(dbContextOptions) + { + UnitOfWork = new UnitOfWorkImpl(this); + } + + /// + /// 模型创建 + /// + /// + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + #region 自动迁移种子数据 + + //OnModelCreatingPartial(modelBuilder); + //ModelBuilderExtensions.Seed(modelBuilder); + + #endregion + var dbContextConfigAttribute = GetType().GetCustomAttribute()!; + var t = dbContextConfigAttribute.GetModelTypes(GetType()); + dbContextConfigAttribute!.OnModelCreating(modelBuilder, t); + + + } + + + } +} diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminRepositoryStartup.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminRepositoryStartup.cs new file mode 100644 index 0000000..15527b2 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/ChatAdminRepositoryStartup.cs @@ -0,0 +1,139 @@ + +using MiaoYu.Repository.ChatAI.Admin.Models; + +namespace MiaoYu.Repository.ChatAI.Admin +{ + /// + /// 程序启动器 + /// + [ImportStartupModule] + public class ChatAdminRepositoryStartup : StartupModule + { + /// + /// 程序启动器 + /// + /// + public override void ConfigureServices(WebApplicationBuilder webApplicationBuilder) + { + var configuration = webApplicationBuilder.Configuration; + var services = webApplicationBuilder.Services; + var webHostEnvironment = webApplicationBuilder.Environment; + + var repositoriesOptions = configuration + .GetSection(nameof(ChatAdminRepositoryOptions)) + .Get() ?? throw new Exception("配置对象 空 异常!"); + + var connectionString = repositoriesOptions?.ConnectionString; + + connectionString = string.IsNullOrWhiteSpace(connectionString) ? + configuration["ConnectionStrings:" + repositoriesOptions!.DefaultDatabaseType.ToString()] : + connectionString; + + services.AddDbContextFactory(optionsBuilder => + { + switch (repositoriesOptions.DefaultDatabaseType) + { + case DefaultDatabaseType.SqlServer: + optionsBuilder + .UseSqlServer(connectionString, w => w.MinBatchSize(1).MaxBatchSize(1000)) + ; + break; + case DefaultDatabaseType.MySql: + optionsBuilder + .UseMySql(connectionString, MySqlServerVersion.LatestSupportedServerVersion, w => w.MinBatchSize(1).MaxBatchSize(1000)) + ; + break; + case DefaultDatabaseType.PostgreSql: + //EnableLegacyTimestampBehavior 启动旧行为,避免时区问题,存储时间报错 + AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true); + optionsBuilder + .UseNpgsql(connectionString, w => w.MinBatchSize(1).MaxBatchSize(1000)) + ; + break; + case DefaultDatabaseType.Oracle: + optionsBuilder + .UseOracle(connectionString, w => w.MinBatchSize(1).MaxBatchSize(1000)) + ; + break; + default: + break; + } + + if (webHostEnvironment.IsDevelopment()) + { + var loggerFactory = LoggerFactory.Create(builder => builder.AddConsole()); + // sql 日志写入控制台 + optionsBuilder.UseLoggerFactory(loggerFactory); + } + + // 懒加载代理 + //options.UseLazyLoadingProxies(); + //添加 EFCore 监控 和 动态表名 + optionsBuilder.AddEntityFrameworkMonitor(repositoriesOptions.IsMonitorEFCore); + optionsBuilder.AddInterceptors(new AuditInterceptor()); + }); + + services.AddEntityFrameworkRepositories(repositoriesOptions, (auditOptions) => + { + // 你的自定义审计字段 ... + //auditOptions.Add(new AuditOptions() + //{ + // CreationTimeFieldName = nameof(ICreateEntityV2.CreateTime), + // CreatorUserIdFieldName = "", + // LastModificationTimeFieldName = nameof(IUpdateEntityV2.UpdateTime), + // LastModifierUserIdFieldName = "", + // DeletionTimeFieldName = "UpdateTime", + // DeleterUserIdFieldName = "UpdateBy", + // IsDeletedFieldName = "DelFlag", + //}); + }, (freesqlOptions) => + { + freesqlOptions.FreeSqlAuditAopList?.Add(new FreeSqlAuditAop()); + freesqlOptions.FreeSqlAction = (freeSql) => + { + freeSql.Aop.CurdAfter += (object? sender, FreeSql.Aop.CurdAfterEventArgs curdAfter) => + { + var stringBuilder = new StringBuilder(); + stringBuilder.Append($"\r\n====[FreeSql 开始 耗时: {curdAfter.ElapsedMilliseconds} ms]========="); + stringBuilder.Append($"\r\n{curdAfter.Sql}"); + stringBuilder.Append($"\r\n====[FreeSql 结束 线程Id:{Environment.CurrentManagedThreadId}]========="); + LogUtil.Log.Warning(stringBuilder.ToString()); + }; + }; + }); + } + + /// + /// Configure + /// + /// + public override void Configure(WebApplication webApplication) + { + // 使用 DbContext + #region 开发环境检测是否需要数据库迁移 + + //if (webApplication.Environment.IsDevelopment()) + //{ + // // 自动迁移 (如果迁移文件有变动) + // using var scope = webApplication.Services.CreateScope(); + // using var adminDbContext = scope.ServiceProvider.GetService(); + // if (adminDbContext!.Database.GetPendingMigrations().Count() > 0) + // { + // try + // { + // adminDbContext.Database.Migrate(); + // } + // catch (Exception ex) + // { + // LogUtil.Log.Error(ex.Message, ex); + // } + // } + //} + + #endregion + + } + + + } +} diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_MusicGenres.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_MusicGenres.cs new file mode 100644 index 0000000..a823636 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_MusicGenres.cs @@ -0,0 +1,36 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 存储不同音乐风格的信息。 +/// +[EntityDescription(FieldIgnored = true)] +[Table("M_MusicGenres")] +public class M_MusicGenres : DefaultEntityV4 +{ + + + /// + /// 音乐风格名称 => 备注: 音乐风格名称 + /// + public string? GenreName { get; set; } + + + /// + /// 音乐风格描述 => 备注: 音乐风格描述 + /// + public string? Description { get; set; } + + + /// + /// 排序 => 备注: 排序 + /// + public Int32 OrderId { get; set; } + + + /// + /// 是否启用 => 备注: 是否启用 + /// + public Boolean IsEnabled { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_Songs.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_Songs.cs new file mode 100644 index 0000000..3734cc4 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/M_Songs.cs @@ -0,0 +1,90 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 存储所有生成的歌曲的信息。 +/// +[EntityDescription(FieldIgnored = true)] +[Table("M_Songs")] +public class M_Songs : DefaultEntityV4 +{ + + + /// + /// 歌曲名称 => 备注: 歌曲名称 + /// + public string? Title { get; set; } + + + /// + /// 用户Id => 备注: 歌曲作者ID + /// + public Int32 AuthorId { get; set; } + + + /// + /// 音乐风格 => 备注: 音乐风格 + /// + public string? Genre { get; set; } + + + /// + /// 歌词内容 => 备注: 歌词内容 + /// + public string? Lyrics { get; set; } + + + /// + /// 歌曲是否公开展示 => 备注: 歌曲是否公开展示 + /// + public Boolean IsPublic { get; set; } + + + /// + /// 歌曲创建时间 => 备注: 歌曲创建时间 + /// + public DateTime CreationTimestamp { get; set; } + + + /// + /// 歌曲时长 => 备注: 歌曲时长 + /// + public TimeSpan? Duration { get; set; } + + + /// + /// 播放次数 => 备注: 播放次数 + /// + public Int32 PlayCount { get; set; } + + + /// + /// 点赞次数 => 备注: 点赞次数 + /// + public Int32 LikeCount { get; set; } + + + /// + /// 下载次数 => 备注: 下载次数 + /// + public Int32 DownloadCount { get; set; } + + + /// + /// 音乐下载地址 => 备注: 音乐下载地址 + /// + public string? MusicAddress { get; set; } + + + /// + /// 封面图 => 备注: 封面图 + /// + public string? CoverImage { get; set; } + + + /// + /// 音乐风格Id => 备注: 音乐风格Id + /// + public Int32? GenreId { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Category_Child_Menu.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Category_Child_Menu.cs new file mode 100644 index 0000000..ef96ef4 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Category_Child_Menu.cs @@ -0,0 +1,65 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 发现页类别菜单 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Category_Child_Menu : DefaultEntityV4 +{ + + + /// + /// 菜单类型 => 备注: 菜单类型(banner,热门推荐,热门小说) + /// + public string? Type { get; set; } + + + /// + /// 名称 => 备注: 名称 + /// + public string? Name { get; set; } + + + /// + /// 动作I => 备注: 动作Id + /// + public string? ActionId { get; set; } + + + /// + /// 动作类型 => 备注: 动作类型 + /// + public string? ActionType { get; set; } + + + /// + /// 图片Id => 备注: 图片Id + /// + public Int32 ImageId { get; set; } + + + /// + /// 排序 => 备注: 排序 + /// + public Int32 OrderById { get; set; } + + + /// + /// 图片补位 => 备注: 图片补位 + /// + public string? ImageUrl { get; set; } + + + /// + /// 是否启用 => 备注: IsEnabled + /// + public Boolean IsEnabled { get; set; } + + + /// + /// 副标题 => 备注: SubTitle + /// + public string? SubTitle { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character.cs new file mode 100644 index 0000000..8100095 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character.cs @@ -0,0 +1,95 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 人物表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character : DefaultEntityV4 +{ + + + /// + /// 人物名字 => 备注: 人物名字 + /// + public string? Name { get; set; } + + + /// + /// 人物简介 => 备注: 人物简介 + /// + public string? Biography { get; set; } + + + /// + /// 开场白,剧情 => 备注: 开场白,剧情 + /// + public string? Prologue { get; set; } + + + /// + /// 模型Id => 备注: 模型Id + /// + public Int32 ModelConfigId { get; set; } + + + /// + /// 公开/私密 0公开 1私密 => 备注: 公开/私密 0公开 1私密 + /// + public Boolean Visibility { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime? CreateTime { get; set; } + + + /// + /// 更新时间 => 备注: 更新时间 + /// + public DateTime? UpdateTime { get; set; } + + + /// + /// 性别0男1女2其他 => 备注: 性别0男1女2其他 + /// + public Int32 Gender { get; set; } + + + /// + /// 人物初始设定 => 备注: 人物初始设定 + /// + public string? System { get; set; } + + + /// + /// 背景图片 => 备注: 背景图片 + /// + public Int32? BgImg { get; set; } + + + /// + /// 角色头像(是id) => 备注: 角色头像(是id) + /// + public Int32? IconImg { get; set; } + + + /// + /// 对话名字 => 备注: 对话名字 + /// + public string? UserName { get; set; } + + + /// + /// 对话性别 => 备注: 对话性别 + /// + public string? UserSex { get; set; } + + + /// + /// system最大的token数 => 备注: system最大的token数 + /// + public Int32? Token { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label.cs new file mode 100644 index 0000000..9859739 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label.cs @@ -0,0 +1,35 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 角色标签表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character_Label : DefaultEntityV4 +{ + + + /// + /// 标签名称 => 备注: 标签名称 + /// + public string? LabelName { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 更新时间 => 备注: 更新时间 + /// + public DateTime UpdateTime { get; set; } + + + /// + /// 标签值 => 备注: 标签值 + /// + public string? LabelValue { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label_Relation.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label_Relation.cs new file mode 100644 index 0000000..eb4c0e7 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Label_Relation.cs @@ -0,0 +1,35 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 关联角色和标签 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character_Label_Relation : DefaultEntityV4 +{ + + + /// + /// 人物Id => 备注: 人物Id + /// + public Int32 CharacterId { get; set; } + + + /// + /// 人物标签id => 备注: 人物标签id + /// + public Int32 CharacterLabelId { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 更新时间 => 备注: 更新时间 + /// + public DateTime UpdateTime { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality.cs new file mode 100644 index 0000000..c4c31f7 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality.cs @@ -0,0 +1,35 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 角色性格表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character_Personality : DefaultEntityV4 +{ + + + /// + /// 性格名称 => 备注: 性格名称 + /// + public string? Name { get; set; } + + + /// + /// 性格值 => 备注: 性格值 + /// + public string? Value { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdateTime { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality_Relation.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality_Relation.cs new file mode 100644 index 0000000..c8b97dd --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Personality_Relation.cs @@ -0,0 +1,29 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 角色和性格关联表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character_Personality_Relation : DefaultEntityV4 +{ + + + /// + /// 性格Id => 备注: 性格Id + /// + public Int32 PersonalityId { get; set; } + + + /// + /// 角色Id => 备注: 角色Id + /// + public Int32 CharacterId { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type.cs new file mode 100644 index 0000000..5510280 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type.cs @@ -0,0 +1,41 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 发现页类型分类 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character_Type : DefaultEntityV4 +{ + + + /// + /// 类型名称 => 备注: 类型名称 + /// + public string? Name { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 更新时间 => 备注: 更新时间 + /// + public DateTime UpdateTime { get; set; } + + + /// + /// 分类页不显示 => 备注: 分类页不显示 + /// + public Boolean IsNotCategoryShow { get; set; } + + + /// + /// 序号 => 备注: 序号 + /// + public Int32 OrderBy { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type_Intimacy.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type_Intimacy.cs new file mode 100644 index 0000000..7b3b63e --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Character_Type_Intimacy.cs @@ -0,0 +1,41 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 角色和角色类型关联表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Character_Type_Intimacy : DefaultEntityV4 +{ + + + /// + /// 列表Id => 备注: 列表Id + /// + public Int32 TypeId { get; set; } + + + /// + /// 角色Id => 备注: 角色Id + /// + public Int32 CharacterId { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdateTIme { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 类别表排序 => 备注: 类别表排序 + /// + public Int32 OrderBy { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Chat.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Chat.cs new file mode 100644 index 0000000..5f06258 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Chat.cs @@ -0,0 +1,113 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 聊天记录表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Chat : DefaultEntityV4 +{ + + + /// + /// 聊天内容 => 备注: 聊天内容 + /// + public Int32 UserId { get; set; } + + + /// + /// 消息内容 => 备注: 消息内容 + /// + public string? Content { get; set; } + + + /// + /// 发送时间 => 备注: 发送时间 + /// + public DateTime TimeStamp { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 更新时间 => 备注: 更新时间 + /// + public DateTime UpdateTime { get; set; } + + + /// + /// 输入token => 备注: 输入token + /// + public Int32 Input_tokens { get; set; } + + + /// + /// 输出token => 备注: 输出token + /// + public Int32 Output_tokens { get; set; } + + + /// + /// 人物表Id => 备注: 人物表Id + /// + public Int32 CharacterId { get; set; } + + + /// + /// 角色 => 备注: user/assistant + /// + public string? Role { get; set; } + + + /// + /// 会话Id => 备注: SessionId + /// + public Guid SessionId { get; set; } + + + /// + /// 发送消息 => 备注: 发送消息,天 + /// + public Int64 SendDateDay { get; set; } + + + /// + /// 发送消息时间戳 => 备注: 发送消息时间戳 + /// + public Int64 SendMessageDay { get; set; } + + + /// + /// 消息状态 => 备注: 0正常,1重新生成,2 删除 + /// + public Int32 Type { get; set; } + + + /// + /// 消息类型 => 备注: 聊天返回的消息的类型 + /// + public string? ClaudeType { get; set; } + + + /// + /// ClaudeId => 备注: 聊天返回的Id + /// + public string? ClaudeId { get; set; } + + + /// + /// 人物模型 => 备注: 人物模型,聊天返回的模型 + /// + public string? ClaudeModel { get; set; } + + + /// + /// 总Tokens => 备注: 消耗的token + /// + public Int32? Tokens { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Image_Config.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Image_Config.cs new file mode 100644 index 0000000..d84007e --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Image_Config.cs @@ -0,0 +1,28 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 图片表 +/// +public class T_Image_Config : DefaultEntityV4 +{ + + + /// + /// 图片Id => 备注: 图片Id + /// + public Int32 ImageId { get; set; } + + + /// + /// 图片名称 => 备注: 图片名称 + /// + public string? Name { get; set; } + + + /// + /// 图片地址 => 备注: 图片地址 + /// + public string? Url { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Model_Config.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Model_Config.cs new file mode 100644 index 0000000..fc389ab --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Model_Config.cs @@ -0,0 +1,92 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 模型配置表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Model_Config : DefaultEntityV4 +{ + + + /// + /// 模型名称 => 备注: 模型名称 + /// + public string? ModelName { get; set; } + + + /// + /// 模型model => 备注: 模型model + /// + public string? Model { get; set; } + + + /// + /// max_tokens => 备注: 模型运行最大的max_tokens + /// + public Int32 MaxTokens { get; set; } + + + /// + /// key x-api-key => 备注: 模型key x-api-key + /// + public string? ApiKey { get; set; } + + + /// + /// 模型请求地址 => 备注: 模型请求地址 + /// + public string? Url { get; set; } + + + /// + /// 模型版本 => 备注: 模型版本 anthropic-version + /// + public string? AnthropicVersion { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdateTime { get; set; } + + + /// + /// 上下文模板 => 备注: system上下文模板 + /// + public string? SystemTemplate { get; set; } + + + /// + /// 请求模板 => 备注: 请求模板 + /// + public string? RequestTemplate { get; set; } + + + /// + /// headers对象 => 备注: headers对象 + /// + public string? HeadersTemplate { get; set; } + + + /// + /// 返回数据模板 => 备注: 返回数据模板 + /// + public string? ResponseTemplate { get; set; } + + + /// + /// 是否默认 => 备注: 是否默认 + /// + public Boolean? IsDefabult { get; set; } + + /// + /// 其它的模板 + /// + public virtual string? OtherTemplate { get; set; } +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Order.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Order.cs new file mode 100644 index 0000000..0bd064e --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Order.cs @@ -0,0 +1,77 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 订单完成表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Order : DefaultEntityV4 +{ + + + /// + /// 订单编号 => 备注: 订单编号 + /// + public string? OrderId { get; set; } + + + /// + /// 用户Id => 备注: 用户Id + /// + public Int32 UserId { get; set; } + + + /// + /// 订单创建时间 => 备注: 订单创建时间 + /// + public DateTime OrderDate { get; set; } + + + /// + /// 订单支付时间 => 备注: 订单支付时间 + /// + public DateTime PaymentDate { get; set; } + + + /// + /// 订单支付方式 => 备注: 订单支付方式 + /// + public string? PaymentMethod { get; set; } + + + /// + /// 购买的产品Id => 备注: 购买的产品Id + /// + public string? ProductId { get; set; } + + + /// + /// 价格 => 备注: 价格 + /// + public Decimal TotalPrice { get; set; } + + + /// + /// 订单状态 => 备注: 订单状态 + /// + public Int32 Status { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreatedAt { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdatedAt { get; set; } + + + /// + /// 订单创建天 => 备注: 订单创建天 + /// + public DateTime PaymentDay { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_OrderItems.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_OrderItems.cs new file mode 100644 index 0000000..7fa7593 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_OrderItems.cs @@ -0,0 +1,54 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 订单详情表 +/// +[EntityDescription(FieldIgnored = true)] +[Table("T_OrderItems")] +public class T_OrderItems : DefaultEntityV4 +{ + + + /// + /// 产品id => 备注: 产品id + /// + public string? ProductId { get; set; } + + + /// + /// 订单id => 备注: 订单id + /// + public string? OrderId { get; set; } + + + /// + /// 发放奖励信息 => 备注: 发放奖励信息 + /// + public string? RewardInfo { get; set; } + + + /// + /// 产品id、主键 => 备注: 产品id、主键 + /// + public Int32 Product { get; set; } + + + /// + /// 支付信息 => 备注: 支付信息 + /// + public string? PaymentInfo { get; set; } + + + /// + /// 发放奖励提示 => 备注: 发放奖励提示 + /// + public string? RewardTips { get; set; } + + + /// + /// 支付地址 => 备注: 支付地址 + /// + public string? PayUrl { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products.cs new file mode 100644 index 0000000..928f8dc --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products.cs @@ -0,0 +1,86 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 商城表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Products : DefaultEntityV4 +{ + + + /// + /// 道具Id => 备注: 道具Id + /// + public string? ProductId { get; set; } + + + /// + /// 道具名称 => 备注: 道具名称 + /// + public string? ProductName { get; set; } + + + /// + /// 道具类型 => 备注: 道具类型,0商城,1商店 + /// + public Int32 ProductType { get; set; } + + + /// + /// 道具描述 => 备注: 道具描述 + /// + public string? ProductDesc { get; set; } + + + /// + /// 价格 => 备注: 价格 + /// + public Decimal Price { get; set; } + + + /// + /// 道具图片 => 备注: 道具图片配置 图片id + /// + public Int32 ProductImgId { get; set; } + + + /// + /// 商品状态 => 备注: 商品是否下架 0否1是 + /// + public Int32 IsProductDelisting { get; set; } + + + /// + /// 首充 => 备注: 是否有首充 + /// + public Boolean IsFirstCharge { get; set; } + + + /// + /// 首充图片 => 备注: 首充图片 + /// + public Int32? FirstChargeImgId { get; set; } + + + /// + /// 首充价格 => 备注: 首充价格 + /// + public Decimal? FirstChargePrice { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 更新时间 => 备注: 更新时间 + /// + public DateTime? UpdateTime { get; set; } + + /// + /// 排序 => 备注: 排序 + /// + public Int32? OrderById { get; set; } +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products_Reward.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products_Reward.cs new file mode 100644 index 0000000..caffbd0 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Products_Reward.cs @@ -0,0 +1,41 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 产品表奖励 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Products_Reward : DefaultEntityV4 +{ + + + /// + /// 奖励类型 => 备注: 奖励类型 + /// + public Int32 CurrencyType { get; set; } + + + /// + /// 送多少奖励 => 备注: 送多少奖励 + /// + public Int32 Money { get; set; } + + + /// + /// 所属商品 => 备注: 所属商品 + /// + public Int32 T_ProductId { get; set; } + + + /// + /// 首充送多少奖励 => 备注: 首充送多少奖励 + /// + public Int32? FirstChargeMoney { get; set; } + + + /// + /// 所属商品 => 备注: 所属商品 + /// + public string? ProductId { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User.cs new file mode 100644 index 0000000..03a18cc --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User.cs @@ -0,0 +1,86 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 用户表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_User : DefaultEntityV4 +{ + + + /// + /// 用户昵称 => 备注: 用户昵称 + /// + public string? NickName { get; set; } + + + /// + /// 用户姓名 => 备注: 用户姓名 + /// + public string? UserName { get; set; } + + + /// + /// 手机号 => 备注: 绑定的手机号 + /// + public string? PhoneNum { get; set; } + + + /// + /// 邮箱 => 备注: 绑定的邮箱 + /// + public string? Email { get; set; } + + + /// + /// 是否活跃 => 备注: 是否活跃 + /// + public Boolean IsActive { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreatedAt { get; set; } + + + /// + /// 最后一次登录方式,1手机号 => 备注: 最后一次登录方式,1手机号 + /// + public Int32 LastLoginTypeAt { get; set; } + + + /// + /// 登录时间 => 备注: 最后一次登录时间 + /// + public DateTime LastLoginAt { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdatedAt { get; set; } + + + /// + /// 首次注册方式 => 备注: 首次注册方式 + /// + public Int32 RegisterType { get; set; } + + + /// + /// Ip地址 => 备注: Ip地址 + /// + public string? Ip { get; set; } + + + /// + /// 0正常,1注销 + /// + public virtual int State { get; set; } + + /// + /// 是否是测试账号 + /// + public virtual bool? IsTest { get; set; } +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency.cs new file mode 100644 index 0000000..4d60fbf --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency.cs @@ -0,0 +1,47 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 用户货币表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_User_Currency : DefaultEntityV4 +{ + + + /// + /// 货币类型 => 备注: 货币类型 + /// + public Int32 CurrencyType { get; set; } + + + /// + /// 货币名称 => 备注: 货币名称 + /// + public string? CurrencyName { get; set; } + + + /// + /// 货币余额 => 备注: 货币余额 + /// + public Decimal CurrencyMoney { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdateAt { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateAt { get; set; } + + + /// + /// 用户Id => 备注: 用户Id + /// + public Int32 UserId { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency_Log.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency_Log.cs new file mode 100644 index 0000000..1e2d679 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Currency_Log.cs @@ -0,0 +1,53 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 用户金额记录表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_User_Currency_Log : DefaultEntityV4 +{ + + + /// + /// 用户 => 备注: 用户 + /// + public Int32 UserId { get; set; } + + + /// + /// 金额类型 => 备注: 金额类型 + /// + public Int32 CurrencyType { get; set; } + + + /// + /// 金额 => 备注: 金额 + /// + public Decimal Consume { get; set; } + + + /// + /// 消耗类型 => 备注: 消耗类型,0消耗,1增加 + /// + public Int32 ConsumeType { get; set; } + + + /// + /// 备注 => 备注: 备注 + /// + public string? Remarks { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateTime { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdateTime { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_IntentOrder.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_IntentOrder.cs new file mode 100644 index 0000000..03383f6 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_IntentOrder.cs @@ -0,0 +1,78 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 意向订单表 +/// +[EntityDescription(FieldIgnored = true)] +[Table("T_User_IntentOrder")] +public class T_User_IntentOrder : DefaultEntityV4 +{ + + + /// + /// 用户Id => 备注: 用户Id + /// + public Int32 UserId { get; set; } + + + /// + /// 产品id => 备注: 产品id + /// + public string? ProductId { get; set; } + + + /// + /// 支付方式 => 备注: 支付方式 + /// + public string? Method { get; set; } + + + /// + /// 价格 => 备注: 价格 + /// + public Decimal Price { get; set; } + + + /// + /// 数量 => 备注: 数量 + /// + public Int32 Quantity { get; set; } + + + /// + /// 状态 => 备注: 状态 + /// + public Int32 Status { get; set; } + + + /// + /// 备注 => 备注: 备注 + /// + public string? Notes { get; set; } + + + /// + /// 订单创建时间 => 备注: 订单创建时间 + /// + public DateTime IntentDate { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreatedAt { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime UpdatedAt { get; set; } + + + /// + /// 订单Id => 备注: 订单Id + /// + public string? OrderId { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Phone_Account.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Phone_Account.cs new file mode 100644 index 0000000..5074d85 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_User_Phone_Account.cs @@ -0,0 +1,55 @@ +using MiaoYu.Core.EntityFramework.Models; + +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 手机号登录表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_User_Phone_Account : DefaultEntityV4 +{ + + + /// + /// 用户Id => 备注: 用户Id + /// + public Int32 UserId { get; set; } + + + /// + /// 手机号 => 备注: 手机号 + /// + public string? PhoneNum { get; set; } + + + /// + /// 验证码 => 备注: 验证码 + /// + public string? VerificationCode { get; set; } + + + /// + /// 最后一次登录时间 => 备注: 最后一次登录时间 + /// + public DateTime LastLoginAt { get; set; } + + + /// + /// 修改时间 => 备注: 修改时间 + /// + public DateTime CreatedAt { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime UpdatedAt { get; set; } + + + /// + /// 用户昵称 => 备注: 用户昵称 + /// + public string? NikeName { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Verification_Code.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Verification_Code.cs new file mode 100644 index 0000000..06e4cef --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/Apps/T_Verification_Code.cs @@ -0,0 +1,53 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Entities.Apps; + +/// +/// 验证码表 +/// +[EntityDescription(FieldIgnored = true)] +public class T_Verification_Code : DefaultEntityV4 +{ + + + /// + /// 手机号或者邮箱 => 备注: 手机号或者邮箱 + /// + public string? Key { get; set; } + + + /// + /// 验证码 => 备注: 验证码 + /// + public string? Code { get; set; } + + + /// + /// 创建天 => 备注: 创建天 + /// + public Int32 CreateDay { get; set; } + + + /// + /// 过期时间 => 备注: 过期时间 + /// + public DateTime ExpireAt { get; set; } + + + /// + /// 创建时间 => 备注: 创建时间 + /// + public DateTime CreateAt { get; set; } + + + /// + /// 备注 => 备注: 备注 + /// + public string? Remarks { get; set; } + + + /// + /// 0手机,1邮箱 => 备注: 0手机,1邮箱 + /// + public Int32 VerificationType { get; set; } + + +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/T_Image_Config.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/T_Image_Config.cs new file mode 100644 index 0000000..3ad8ac2 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/T_Image_Config.cs @@ -0,0 +1,72 @@ +using FreeSql.DatabaseModel; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Threading.Tasks; +using Newtonsoft.Json; +using FreeSql.DataAnnotations; +using MiaoYu.Core.EntityFramework.Models; + +namespace MiaoYu.Repository.ChatAI.Admin.Entities +{ + + /// + /// 图片表 + /// + [EntityDescription(FieldIgnored = true)] + public partial class T_Image_Config : DefaultEntityV4 + { + + + + + /// + /// 图片Id + /// + public int ImageId { get; set; } + + /// + /// 图片名称 + /// + public string Name { get; set; } = null!; + + /// + /// 图片地址 + /// + public string Url { get; set; } = null!; + + /// + /// 创建时间 + /// + public DateTime CreateAt { get; set; } + + /// + /// 修改时间 + /// + public DateTime UpdateAt { get; set; } + + /// + /// oss存放路径 + /// + public string? OssPath { get; set; } + + /// + /// 存储桶 + /// + public string? Bucket { get; set; } + + /// + /// 地域 + /// + public string? Region { get; set; } + + /// + /// 图片类型 + /// + public int ImageType { get; set; } + + } + +} diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__razor.cshtml.txt b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__razor.cshtml.txt new file mode 100644 index 0000000..8997b3b --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__razor.cshtml.txt @@ -0,0 +1,67 @@ +using FreeSql.DatabaseModel;@{ +var gen = Model as RazorModel; + +Func GetAttributeString = attr => { + if (string.IsNullOrEmpty(attr)) return ""; + return string.Concat(", ", attr.Trim('[', ']')); +}; +Func GetDefaultValue = defval => { + if (string.IsNullOrEmpty(defval)) return ""; + return " = " + defval + ";"; +}; +}@{ +switch (gen.fsql.Ado.DataType) { + case FreeSql.DataType.PostgreSQL: +@:using System; +@:using System.Collections; +@:using System.Collections.Generic; +@:using System.Linq; +@:using System.Reflection; +@:using System.Threading.Tasks; +@:using Newtonsoft.Json; +@:using FreeSql.DataAnnotations; +@:using System.Net; +@:using Newtonsoft.Json.Linq; +@:using System.Net.NetworkInformation; +@:using NpgsqlTypes; +@:using Npgsql.LegacyPostgis; + break; + case FreeSql.DataType.SqlServer: + case FreeSql.DataType.MySql: + default: +@:using System; +@:using System.Collections; +@:using System.Collections.Generic; +@:using System.Linq; +@:using System.Reflection; +@:using System.Threading.Tasks; +@:using Newtonsoft.Json; +@:using FreeSql.DataAnnotations; + break; +} +} + +namespace @gen.NameSpace { + +@if (string.IsNullOrEmpty(gen.table.Comment) == false) { + @:/// + @:/// @gen.table.Comment.Replace("\r\n", "\n").Replace("\n", "\r\n /// ") + @:/// +} + [JsonObject(MemberSerialization.OptIn)@GetAttributeString(gen.GetTableAttribute())] + public partial class @gen.GetCsName(gen.FullTableName) { + + @foreach (var col in gen.columns) { + + if (string.IsNullOrEmpty(col.Comment) == false) { + @:/// + @:/// @col.Comment.Replace("\r\n", "\n").Replace("\n", "\r\n /// ") + @:/// + } + @:@("[JsonProperty" + GetAttributeString(gen.GetColumnAttribute(col, true)) + "]") + @:public @gen.GetCsType(col) @gen.GetCsName(col.Name) { get; set; }@GetDefaultValue(gen.GetColumnDefaultValue(col, false)) +@: + } + } +@gen.GetMySqlEnumSetDefine() +} \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__重新生成.bat b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__重新生成.bat new file mode 100644 index 0000000..db5a665 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Entities/__重新生成.bat @@ -0,0 +1,2 @@ + +FreeSql.Generator -Razor "__razor.cshtml.txt" -NameOptions 1,0,0,0 -NameSpace MiaoYu.Repository.ChatAI.Admin.Entities -DB "SqlServer,data source=192.168.195.2;initial catalog=MiaoYu;User Id=zpc;Password=zpc;TrustServerCertificate=true;pooling=true;max pool size=2" -FileName "{name}.cs" diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xml b/admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xml new file mode 100644 index 0000000..a6a2edf --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xsd b/admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xsd new file mode 100644 index 0000000..f35a69b --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/FodyWeavers.xsd @@ -0,0 +1,26 @@ + + + + + + + + + + + 'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed. + + + + + A comma-separated list of error codes that can be safely ignored in assembly verification. + + + + + 'false' to turn off automatic generation of the XML Schema file. + + + + + \ No newline at end of file diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.csproj b/admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.csproj new file mode 100644 index 0000000..e44d366 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.csproj @@ -0,0 +1,31 @@ + + + + net8.0 + enable + enable + True + $(MSBuildProjectName).xml + + + + + + + + + + + + + + + + + + + + + + + diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.xml b/admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.xml new file mode 100644 index 0000000..cc03e50 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/MiaoYu.Repository.ChatAI.Admin.xml @@ -0,0 +1,1121 @@ + + + + MiaoYu.Repository.ChatAI.Admin + + + + + 后台管理系统数据库上下文 + + + + + 工作单元 + + + + + 模型创建 + + + + + + 程序启动器 + + + + + 程序启动器 + + + + + + Configure + + + + + + 存储不同音乐风格的信息。 + + + + + 音乐风格名称 => 备注: 音乐风格名称 + + + + + 音乐风格描述 => 备注: 音乐风格描述 + + + + + 排序 => 备注: 排序 + + + + + 是否启用 => 备注: 是否启用 + + + + + 存储所有生成的歌曲的信息。 + + + + + 歌曲名称 => 备注: 歌曲名称 + + + + + 用户Id => 备注: 歌曲作者ID + + + + + 音乐风格 => 备注: 音乐风格 + + + + + 歌词内容 => 备注: 歌词内容 + + + + + 歌曲是否公开展示 => 备注: 歌曲是否公开展示 + + + + + 歌曲创建时间 => 备注: 歌曲创建时间 + + + + + 歌曲时长 => 备注: 歌曲时长 + + + + + 播放次数 => 备注: 播放次数 + + + + + 点赞次数 => 备注: 点赞次数 + + + + + 下载次数 => 备注: 下载次数 + + + + + 音乐下载地址 => 备注: 音乐下载地址 + + + + + 封面图 => 备注: 封面图 + + + + + 音乐风格Id => 备注: 音乐风格Id + + + + + 发现页类别菜单 + + + + + 菜单类型 => 备注: 菜单类型(banner,热门推荐,热门小说) + + + + + 名称 => 备注: 名称 + + + + + 动作I => 备注: 动作Id + + + + + 动作类型 => 备注: 动作类型 + + + + + 图片Id => 备注: 图片Id + + + + + 排序 => 备注: 排序 + + + + + 图片补位 => 备注: 图片补位 + + + + + 是否启用 => 备注: IsEnabled + + + + + 副标题 => 备注: SubTitle + + + + + 人物表 + + + + + 人物名字 => 备注: 人物名字 + + + + + 人物简介 => 备注: 人物简介 + + + + + 开场白,剧情 => 备注: 开场白,剧情 + + + + + 模型Id => 备注: 模型Id + + + + + 公开/私密 0公开 1私密 => 备注: 公开/私密 0公开 1私密 + + + + + 创建时间 => 备注: 创建时间 + + + + + 更新时间 => 备注: 更新时间 + + + + + 性别0男1女2其他 => 备注: 性别0男1女2其他 + + + + + 人物初始设定 => 备注: 人物初始设定 + + + + + 背景图片 => 备注: 背景图片 + + + + + 角色头像(是id) => 备注: 角色头像(是id) + + + + + 对话名字 => 备注: 对话名字 + + + + + 对话性别 => 备注: 对话性别 + + + + + system最大的token数 => 备注: system最大的token数 + + + + + 角色标签表 + + + + + 标签名称 => 备注: 标签名称 + + + + + 创建时间 => 备注: 创建时间 + + + + + 更新时间 => 备注: 更新时间 + + + + + 标签值 => 备注: 标签值 + + + + + 关联角色和标签 + + + + + 人物Id => 备注: 人物Id + + + + + 人物标签id => 备注: 人物标签id + + + + + 创建时间 => 备注: 创建时间 + + + + + 更新时间 => 备注: 更新时间 + + + + + 角色性格表 + + + + + 性格名称 => 备注: 性格名称 + + + + + 性格值 => 备注: 性格值 + + + + + 创建时间 => 备注: 创建时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 角色和性格关联表 + + + + + 性格Id => 备注: 性格Id + + + + + 角色Id => 备注: 角色Id + + + + + 创建时间 => 备注: 创建时间 + + + + + 发现页类型分类 + + + + + 类型名称 => 备注: 类型名称 + + + + + 创建时间 => 备注: 创建时间 + + + + + 更新时间 => 备注: 更新时间 + + + + + 分类页不显示 => 备注: 分类页不显示 + + + + + 序号 => 备注: 序号 + + + + + 角色和角色类型关联表 + + + + + 列表Id => 备注: 列表Id + + + + + 角色Id => 备注: 角色Id + + + + + 修改时间 => 备注: 修改时间 + + + + + 创建时间 => 备注: 创建时间 + + + + + 类别表排序 => 备注: 类别表排序 + + + + + 聊天记录表 + + + + + 聊天内容 => 备注: 聊天内容 + + + + + 消息内容 => 备注: 消息内容 + + + + + 发送时间 => 备注: 发送时间 + + + + + 创建时间 => 备注: 创建时间 + + + + + 更新时间 => 备注: 更新时间 + + + + + 输入token => 备注: 输入token + + + + + 输出token => 备注: 输出token + + + + + 人物表Id => 备注: 人物表Id + + + + + 角色 => 备注: user/assistant + + + + + 会话Id => 备注: SessionId + + + + + 发送消息 => 备注: 发送消息,天 + + + + + 发送消息时间戳 => 备注: 发送消息时间戳 + + + + + 消息状态 => 备注: 0正常,1重新生成,2 删除 + + + + + 消息类型 => 备注: 聊天返回的消息的类型 + + + + + ClaudeId => 备注: 聊天返回的Id + + + + + 人物模型 => 备注: 人物模型,聊天返回的模型 + + + + + 总Tokens => 备注: 消耗的token + + + + + 模型配置表 + + + + + 模型名称 => 备注: 模型名称 + + + + + 模型model => 备注: 模型model + + + + + max_tokens => 备注: 模型运行最大的max_tokens + + + + + key x-api-key => 备注: 模型key x-api-key + + + + + 模型请求地址 => 备注: 模型请求地址 + + + + + 模型版本 => 备注: 模型版本 anthropic-version + + + + + 创建时间 => 备注: 创建时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 上下文模板 => 备注: system上下文模板 + + + + + 请求模板 => 备注: 请求模板 + + + + + headers对象 => 备注: headers对象 + + + + + 返回数据模板 => 备注: 返回数据模板 + + + + + 是否默认 => 备注: 是否默认 + + + + + 其它的模板 + + + + + 订单完成表 + + + + + 订单编号 => 备注: 订单编号 + + + + + 用户Id => 备注: 用户Id + + + + + 订单创建时间 => 备注: 订单创建时间 + + + + + 订单支付时间 => 备注: 订单支付时间 + + + + + 订单支付方式 => 备注: 订单支付方式 + + + + + 购买的产品Id => 备注: 购买的产品Id + + + + + 价格 => 备注: 价格 + + + + + 订单状态 => 备注: 订单状态 + + + + + 创建时间 => 备注: 创建时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 订单创建天 => 备注: 订单创建天 + + + + + 订单详情表 + + + + + 产品id => 备注: 产品id + + + + + 订单id => 备注: 订单id + + + + + 发放奖励信息 => 备注: 发放奖励信息 + + + + + 产品id、主键 => 备注: 产品id、主键 + + + + + 支付信息 => 备注: 支付信息 + + + + + 发放奖励提示 => 备注: 发放奖励提示 + + + + + 支付地址 => 备注: 支付地址 + + + + + 商城表 + + + + + 道具Id => 备注: 道具Id + + + + + 道具名称 => 备注: 道具名称 + + + + + 道具类型 => 备注: 道具类型,0商城,1商店 + + + + + 道具描述 => 备注: 道具描述 + + + + + 价格 => 备注: 价格 + + + + + 道具图片 => 备注: 道具图片配置 图片id + + + + + 商品状态 => 备注: 商品是否下架 0否1是 + + + + + 首充 => 备注: 是否有首充 + + + + + 首充图片 => 备注: 首充图片 + + + + + 首充价格 => 备注: 首充价格 + + + + + 创建时间 => 备注: 创建时间 + + + + + 更新时间 => 备注: 更新时间 + + + + + 排序 => 备注: 排序 + + + + + 产品表奖励 + + + + + 奖励类型 => 备注: 奖励类型 + + + + + 送多少奖励 => 备注: 送多少奖励 + + + + + 所属商品 => 备注: 所属商品 + + + + + 首充送多少奖励 => 备注: 首充送多少奖励 + + + + + 所属商品 => 备注: 所属商品 + + + + + 用户表 + + + + + 用户昵称 => 备注: 用户昵称 + + + + + 用户姓名 => 备注: 用户姓名 + + + + + 手机号 => 备注: 绑定的手机号 + + + + + 邮箱 => 备注: 绑定的邮箱 + + + + + 是否活跃 => 备注: 是否活跃 + + + + + 创建时间 => 备注: 创建时间 + + + + + 最后一次登录方式,1手机号 => 备注: 最后一次登录方式,1手机号 + + + + + 登录时间 => 备注: 最后一次登录时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 首次注册方式 => 备注: 首次注册方式 + + + + + Ip地址 => 备注: Ip地址 + + + + + 0正常,1注销 + + + + + 是否是测试账号 + + + + + 用户货币表 + + + + + 货币类型 => 备注: 货币类型 + + + + + 货币名称 => 备注: 货币名称 + + + + + 货币余额 => 备注: 货币余额 + + + + + 修改时间 => 备注: 修改时间 + + + + + 创建时间 => 备注: 创建时间 + + + + + 用户Id => 备注: 用户Id + + + + + 用户金额记录表 + + + + + 用户 => 备注: 用户 + + + + + 金额类型 => 备注: 金额类型 + + + + + 金额 => 备注: 金额 + + + + + 消耗类型 => 备注: 消耗类型,0消耗,1增加 + + + + + 备注 => 备注: 备注 + + + + + 创建时间 => 备注: 创建时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 意向订单表 + + + + + 用户Id => 备注: 用户Id + + + + + 产品id => 备注: 产品id + + + + + 支付方式 => 备注: 支付方式 + + + + + 价格 => 备注: 价格 + + + + + 数量 => 备注: 数量 + + + + + 状态 => 备注: 状态 + + + + + 备注 => 备注: 备注 + + + + + 订单创建时间 => 备注: 订单创建时间 + + + + + 创建时间 => 备注: 创建时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 订单Id => 备注: 订单Id + + + + + 手机号登录表 + + + + + 用户Id => 备注: 用户Id + + + + + 手机号 => 备注: 手机号 + + + + + 验证码 => 备注: 验证码 + + + + + 最后一次登录时间 => 备注: 最后一次登录时间 + + + + + 修改时间 => 备注: 修改时间 + + + + + 创建时间 => 备注: 创建时间 + + + + + 用户昵称 => 备注: 用户昵称 + + + + + 验证码表 + + + + + 手机号或者邮箱 => 备注: 手机号或者邮箱 + + + + + 验证码 => 备注: 验证码 + + + + + 创建天 => 备注: 创建天 + + + + + 过期时间 => 备注: 过期时间 + + + + + 创建时间 => 备注: 创建时间 + + + + + 备注 => 备注: 备注 + + + + + 0手机,1邮箱 => 备注: 0手机,1邮箱 + + + + + 图片表 + + + + + 图片Id + + + + + 图片名称 + + + + + 图片地址 + + + + + 创建时间 + + + + + 修改时间 + + + + + oss存放路径 + + + + + 存储桶 + + + + + 地域 + + + + + 图片类型 + + + + + MiaoYuChat 数据源提供者 + + + + diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Migrations/ChatAdminDbContextModelSnapshot.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Migrations/ChatAdminDbContextModelSnapshot.cs new file mode 100644 index 0000000..9804890 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Migrations/ChatAdminDbContextModelSnapshot.cs @@ -0,0 +1,60 @@ + +using MiaoYu.Repository.ChatAI.Admin.Entities; + +#nullable disable +namespace MiaoYu.Repository.ChatAI.Admin.Migrations +{ + [DbContext(typeof(ChatAdminDbContext))] + public class ChatAdminDbContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "8.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PK__T_Image___3214EC072BCFE4E5"); + + entity.ToTable(tb => tb.HasComment("图片表")); + + entity.Property(e => e.Bucket) + .HasMaxLength(100) + .HasComment("存储桶"); + entity.Property(e => e.CreateAt) + .HasComment("创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.ImageId).HasComment("图片Id"); + entity.Property(e => e.Name) + .HasMaxLength(50) + .HasComment("图片名称"); + entity.Property(e => e.OssPath) + .HasMaxLength(200) + .HasComment("oss存放路径"); + entity.Property(e => e.Region) + .HasMaxLength(100) + .HasComment("地域"); + entity.Property(e => e.TenantId).HasComment("租户"); + entity.Property(e => e.UpdateAt) + .HasComment("修改时间") + .HasColumnType("datetime"); + entity.Property(e => e.Url) + .HasMaxLength(500) + .HasComment("图片地址"); + //添加全局筛选器 + //if (this.TenantInfo != null) + //{ + // entity.HasQueryFilter(it => it.TenantId == this.TenantInfo.TenantId); + //} + }); + + + + +#pragma warning restore 612, 618 + } + } +} diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Models/ChatAdminRepositoryOptions.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Models/ChatAdminRepositoryOptions.cs new file mode 100644 index 0000000..eef5233 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Models/ChatAdminRepositoryOptions.cs @@ -0,0 +1,8 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Models; + +public class ChatAdminRepositoryOptions : RepositoryOptions +{ + +} + + diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Providers/MiaoYuChatDataSourceProvider.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Providers/MiaoYuChatDataSourceProvider.cs new file mode 100644 index 0000000..66270b8 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Providers/MiaoYuChatDataSourceProvider.cs @@ -0,0 +1,78 @@ +namespace MiaoYu.Repository.ChatAI.Admin.Providers; + +/// +/// MiaoYuChat 数据源提供者 +/// +[Component] +public class MiaoYuChatDataSourceProvider : IDataSourceProvider, IScopedDependency +{ + private readonly IRepository _repository; + + public MiaoYuChatDataSourceProvider(IRepository repository) + { + _repository = repository; + } + + public DataSourceConfig Config => new DataSourceConfig + { + DatabaseKey = DataSourceConstants.MiaoYuChat, + DisplayName = "妙语聊天", + EntityNamespace = typeof(ChatAdminRepositoryStartup).Namespace!, + ServiceNamespace = "MiaoYu.Api.Admin.ApplicationServices.Apps", + ControllerNamespace = "MiaoYu.Api.Admin.Controllers.Apps", + ClientServiceNamespace = "", + ModelPathTemplate = "{RootPath}\\{Namespace}\\Entities\\Apps\\{EntityNamePlural}", + ServicePathTemplate = "{AppPath}\\ApplicationServices\\Apps\\ChatAI\\{EntityNamePlural}", + ControllerPathTemplate = "{AppPath}\\Controllers\\Apps\\ChatAI\\{EntityNamePlural}", + ClientIndexPathTemplate = "{RootPath}\\admin-client\\src\\views\\apps\\chatai\\{TableNameLower}s", + ClientInfoPathTemplate = "{RootPath}\\admin-client\\src\\views\\apps\\chatai\\{TableNameLower}s", + ClientServicePathTemplate = "{RootPath}\\admin-client\\src\\services\\apps\\chatai\\{TableNameLower}s", + MenuPathTemplate = "views/apps/chatai/{TableNameLower}s/Index.vue", + RouterPathTemplate = "/apps/chatai/{TableNameLower}s", + TemplatePath = "/wwwroot/code_generation/template/", + NamingStrategy = EntityNamingStrategy.ToPascalCase, + Order = 2, + EnableEntityPrefix = false, + EntityPrefix = "", + UsesPluralPath = true + }; + + public List GetTables() + { + var freeSqlTables = _repository.UnitOfWork.FreeSqlOrm.DbFirst.GetTablesByDatabase(); + return ConvertToDbTableInfoList(freeSqlTables); + } + + public object GetDbContext() => _repository.GetContext()!; + + private List ConvertToDbTableInfoList(List freeSqlTables) + { + var result = new List(); + foreach (var table in freeSqlTables) + { + var dbTableInfo = new CoreDbTableInfo + { + DataBase = Config.DatabaseKey, + Schema = table.Schema, + Name = table.Name, + Type = table.Type.ToString(), + Comment = table.Comment, + Columns = table.Columns?.Select(c => new CoreDbColumnInfo + { + Name = c.Name, + Comment = c.Comment, + IsPrimary = c.IsPrimary, + IsIdentity = c.IsIdentity, + IsNullable = c.IsNullable, + Position = c.Position, + DbType = c.DbTypeTextFull, + CsType = c.CsType?.Name, + MaxLength = c.MaxLength + }).ToList() + }; + result.Add(dbTableInfo); + } + return result; + } +} + diff --git a/admin-server/MiaoYu.Repository.ChatAI.Admin/Usings.cs b/admin-server/MiaoYu.Repository.ChatAI.Admin/Usings.cs new file mode 100644 index 0000000..cb82a99 --- /dev/null +++ b/admin-server/MiaoYu.Repository.ChatAI.Admin/Usings.cs @@ -0,0 +1,33 @@ +global using MiaoYu.Core.EntityFramework; +global using MiaoYu.Core.EntityFramework.Interceptors; +global using MiaoYu.Core.Quartz.Models; +global using HZY.Framework.Core.AspNetCore; +global using HZY.Framework.Core.Quartz; +global using HZY.Framework.Repository.EntityFramework; +global using HZY.Framework.Repository.EntityFramework.Attributes; +global using HZY.Framework.Repository.EntityFramework.Models; +global using HZY.Framework.Repository.EntityFramework.Models.Enums; +global using HZY.Framework.Repository.EntityFramework.Models.Standard; +global using HZY.Framework.Repository.EntityFramework.Repositories; +global using HZY.Framework.Repository.EntityFramework.Repositories.Impl; +global using Microsoft.AspNetCore.Builder; +global using Microsoft.AspNetCore.Hosting; +global using Microsoft.EntityFrameworkCore; +global using Microsoft.EntityFrameworkCore.Infrastructure; +global using Microsoft.Extensions.Caching.Memory; +global using Microsoft.Extensions.Configuration; +global using Microsoft.Extensions.DependencyInjection; +global using Microsoft.Extensions.Hosting; +global using Microsoft.Extensions.Logging; +global using System.ComponentModel.DataAnnotations; +global using System.ComponentModel.DataAnnotations.Schema; +global using System.Reflection; +global using MiaoYu.Core.Logs; +global using System.Text; +global using MiaoYu.Core.EntityFramework.Models; +global using HZY.Framework.DependencyInjection; +global using HZY.Framework.DependencyInjection.Attributes; +global using MiaoYu.Core.CodeGenerator.Abstractions; +global using CoreDbTableInfo = MiaoYu.Core.CodeGenerator.Models.DbTableInfo; +global using CoreDbColumnInfo = MiaoYu.Core.CodeGenerator.Models.DbColumnInfo; +global using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; \ No newline at end of file From 215107a6257415d786b181afe70f1380bf16f26b Mon Sep 17 00:00:00 2001 From: zpc Date: Wed, 12 Nov 2025 00:13:56 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=8A=BD=E7=A6=BBcos=E6=9C=8D=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- admin-client/dist/index.html | 2 +- .../static/css/CodeGeneration-BJIGFQKe.css | 1 - .../dist/static/css/Login-BBVeVb3S.css | 1 - admin-client/src/components.d.ts | 2 - admin-client/src/core/utils/Tools.ts | 3 +- .../T_Image_Configs/TImageConfigService.ts | 28 -- .../src/services/system/CosService.ts | 39 +++ admin-client/src/services/system/types/cos.ts | 17 ++ admin-client/src/views/apps/T_Orders/Info.vue | 262 ++++++++--------- .../腾讯云COS服务接口迁移文档.md | 264 ++++++++++++++++++ .../Apps/MiaoYuChat/TImageConfigService.cs | 56 +--- .../Systems/Cos/CosService.cs | 83 ++++++ .../Cos/Dtos/GenerateTemporaryModel.cs | 36 +++ .../Apps/MiaoYuChat/TImageConfigController.cs | 27 +- .../Controllers/Systems/CosController.cs | 41 +++ .../MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml | 124 ++++---- .../Dtos/Apps/Cos/GenerateTemporaryModel.cs | 36 --- .../腾讯云COS服务接口迁移文档.md | 264 ++++++++++++++++++ 18 files changed, 955 insertions(+), 331 deletions(-) delete mode 100644 admin-client/dist/static/css/CodeGeneration-BJIGFQKe.css delete mode 100644 admin-client/dist/static/css/Login-BBVeVb3S.css create mode 100644 admin-client/src/services/system/CosService.ts create mode 100644 admin-client/src/services/system/types/cos.ts create mode 100644 admin-client/腾讯云COS服务接口迁移文档.md create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/CosService.cs create mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/Dtos/GenerateTemporaryModel.cs create mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Systems/CosController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Models/Dtos/Apps/Cos/GenerateTemporaryModel.cs create mode 100644 admin-server/腾讯云COS服务接口迁移文档.md diff --git a/admin-client/dist/index.html b/admin-client/dist/index.html index 0f851b6..6a7cf01 100644 --- a/admin-client/dist/index.html +++ b/admin-client/dist/index.html @@ -7,7 +7,7 @@ 寰梦后台管理 - + diff --git a/admin-client/dist/static/css/CodeGeneration-BJIGFQKe.css b/admin-client/dist/static/css/CodeGeneration-BJIGFQKe.css deleted file mode 100644 index a0c9f1e..0000000 --- a/admin-client/dist/static/css/CodeGeneration-BJIGFQKe.css +++ /dev/null @@ -1 +0,0 @@ -.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor,.monaco-diff-editor .synthetic-focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-diff-editor button:focus,.monaco-diff-editor input[type=button]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-diff-editor select:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background)}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-workbench .workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-workbench .workbench-hover hr{border-bottom:none}.monaco-workbench .workbench-hover:not(.skip-fade-in){animation:fadein .1s linear}.monaco-workbench .workbench-hover.compact{font-size:12px}.monaco-workbench .workbench-hover.compact .hover-contents{padding:2px 8px}.monaco-workbench .workbench-hover-container.locked .workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,.monaco-workbench .workbench-hover-lock:focus{outline:1px solid var(--vscode-focusBorder)}.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-workbench .workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.monaco-workbench .workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.monaco-workbench .workbench-hover-pointer.left{left:-3px}.monaco-workbench .workbench-hover-pointer.right{right:3px}.monaco-workbench .workbench-hover-pointer.top{top:-3px}.monaco-workbench .workbench-hover-pointer.bottom{bottom:3px}.monaco-workbench .workbench-hover-pointer.left:after{transform:rotate(135deg)}.monaco-workbench .workbench-hover-pointer.right:after{transform:rotate(315deg)}.monaco-workbench .workbench-hover-pointer.top:after{transform:rotate(225deg)}.monaco-workbench .workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-workbench .workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-workbench .workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-workbench .workbench-hover a:hover,.monaco-workbench .workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-workbench .workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-workbench .workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-workbench .workbench-hover.right-aligned{left:1px}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px;width:100%}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{color:var(--vscode-disabledForeground)}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-radius:inherit}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;height:100%;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:0 2px 2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:0px;width:100%}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-iconpath{width:16px;height:16px;padding-left:2px;margin-top:2px;display:flex}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}.monaco-diff-editor .gutter>div{position:absolute}.monaco-diff-editor .gutter .gutterItem{opacity:0;transition:opacity .7s}.monaco-diff-editor .gutter .gutterItem.showAlways{opacity:1;transition:none}.monaco-diff-editor .gutter .gutterItem.noTransition{transition:none}.monaco-diff-editor .gutter:hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}.monaco-diff-editor .gutter .gutterItem .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-border) solid}.monaco-diff-editor .gutter .gutterItem .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar{height:fit-content}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar{line-height:1}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container{width:fit-content;border-radius:4px;background:var(--vscode-editorGutter-commentRangeForeground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item .action-label{padding:1px 2px}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);position:relative;height:100%;width:100%;overflow-y:hidden}.monaco-component.multiDiffEditor>div{position:absolute;top:0;left:0;height:100%;width:100%}.monaco-component.multiDiffEditor>div.placeholder{visibility:hidden;display:grid;place-items:center;place-content:center}.monaco-component.multiDiffEditor>div.placeholder.visible{visibility:visible}.monaco-component.multiDiffEditor .active{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button a{display:block}.monaco-component.multiDiffEditor .multiDiffEntry .header{z-index:1000;background:var(--vscode-editor-background)}.monaco-component.multiDiffEditor .multiDiffEntry .header:not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content{margin:8px 0 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path{display:flex;flex:1;min-width:0}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title{font-size:14px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title.original{flex:1;min-width:0;text-overflow:ellipsis}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .actions{padding:0 8px}.monaco-component.multiDiffEditor .multiDiffEntry .editorParent{flex:1;display:flex;flex-direction:column;border-bottom:1px solid var(--vscode-multiDiffEditor-border);overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .editorContainer{flex:1}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:var(--vscode-icon-x-content);font-family:var(--vscode-icon-x-font-family)}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}@font-face{font-family:codicon;font-display:block;src:url(/static/ttf/codicon-DCmgc-ay.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;background-color:var(--vscode-editor-background);z-index:1}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:2px;background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-quickInputList-focusBackground)!important;color:var(--vscode-quickInputList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:6px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorHoverWidget-statusBarBackground);border-top:1px solid var(--vscode-editorHoverWidget-border)}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:0 8px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover-content{padding-right:2px;padding-bottom:2px;box-sizing:border-box}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row .hover-row-contents{min-width:0;display:flex;flex-direction:column}.monaco-editor .monaco-hover .hover-row .verbosity-actions{display:flex;flex-direction:column;padding-left:5px;padding-right:5px;justify-content:end;border-right:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:gray;margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .inline-edit-remove{background-color:var(--vscode-editorGhostText-background);font-style:italic;text-decoration:line-through}.monaco-editor .inline-edit-remove.backgroundColoring{background-color:var(--vscode-diffEditor-removedLineBackground)}.monaco-editor .inline-edit-hidden{opacity:0;font-size:0}.monaco-editor .inline-edit-decoration,.monaco-editor .suggest-preview-text .inline-edit{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .inline-edit-decoration,.monaco-editor .inline-edit-decoration-preview,.monaco-editor .suggest-preview-text .inline-edit{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .inlineEditHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineEditHints a,.monaco-editor .inlineEditHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineEditHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineEditStatusBarItemLabel{margin-right:2px}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input-with-button{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-input{width:calc(100% - 8px);padding:0}.monaco-editor .rename-box .rename-input:focus{outline:none}.monaco-editor .rename-box .rename-suggestions-button{display:flex;align-items:center;padding:3px;background-color:transparent;border:none;border-radius:5px;cursor:pointer}.monaco-editor .rename-box .rename-suggestions-button:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row{border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget{border-bottom:1px solid var(--vscode-editorStickyScroll-border)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 3px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background);right:initial!important}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.csharpEditorContainer[data-v-c05db217]{height:calc(100vh - 200px)!important} diff --git a/admin-client/dist/static/css/Login-BBVeVb3S.css b/admin-client/dist/static/css/Login-BBVeVb3S.css deleted file mode 100644 index 146e911..0000000 --- a/admin-client/dist/static/css/Login-BBVeVb3S.css +++ /dev/null @@ -1 +0,0 @@ -body[data-v-b95e5a42]{margin:0;padding:0;overflow:hidden}.login[data-v-b95e5a42]{display:flex;justify-content:center;align-items:center;height:100vh;background:url(/static/jpg/login-1-DvL7JDPn.jpg) no-repeat;background-size:cover}.login .login-card[data-v-b95e5a42]{height:600px;width:1000px;box-shadow:0 16px 48px 16px #000000b8,0 12px 32px #000,0 8px 16px -8px #000;display:flex;border-radius:5px}.login .login-card .flex-left[data-v-b95e5a42]{flex:1;width:450px}.login .login-card .flex-left img[data-v-b95e5a42]{height:100%}.login .login-card .flex-right[data-v-b95e5a42]{flex:1;background-color:#fff;display:flex;justify-content:center;flex-direction:column;border-top-right-radius:5px;border-bottom-right-radius:5px}.login .login-card .title[data-v-b95e5a42]{text-align:center;font-size:30px;padding:20px;font-weight:700}.login .login-card .el-input-group__append[data-v-b95e5a42]{padding:0!important}.login .login-card .el-input-group__append .login-code[data-v-b95e5a42]{height:38px}@media (max-width: 1024px){.flex-left[data-v-b95e5a42]{display:none;flex:0!important}.flex-left img[data-v-b95e5a42]{height:auto!important;width:80%!important}.flex-right[data-v-b95e5a42]{border-radius:5px}}@media (min-width: 600px) and (max-width: 1024px){.login-card[data-v-b95e5a42]{width:70%!important}}@media (max-width: 600px){.login-card[data-v-b95e5a42]{width:100%!important}}.lang-content[data-v-b95e5a42]{position:absolute;right:24px;top:20px} diff --git a/admin-client/src/components.d.ts b/admin-client/src/components.d.ts index cf60ae0..3d51c86 100644 --- a/admin-client/src/components.d.ts +++ b/admin-client/src/components.d.ts @@ -40,7 +40,6 @@ declare module 'vue' { AInputSearch: typeof import('ant-design-vue/es')['InputSearch'] ALayout: typeof import('ant-design-vue/es')['Layout'] ALayoutContent: typeof import('ant-design-vue/es')['LayoutContent'] - ALayoutFooter: typeof import('ant-design-vue/es')['LayoutFooter'] ALayoutHeader: typeof import('ant-design-vue/es')['LayoutHeader'] ALayoutSider: typeof import('ant-design-vue/es')['LayoutSider'] AMenu: typeof import('ant-design-vue/es')['Menu'] @@ -82,7 +81,6 @@ declare module 'vue' { AUploadDragger: typeof import('ant-design-vue/es')['UploadDragger'] BarChartTransverse: typeof import('./core/components/charts/BarChartTransverse.vue')['default'] ColumnSetting: typeof import('./core/components/curd/components/ColumnSetting.vue')['default'] - copy: typeof import('./core/components/layouts/LayoutMode1 copy.vue')['default'] ExternalJump: typeof import('./core/components/ExternalJump.vue')['default'] FindBack: typeof import('./core/components/FindBack.vue')['default'] GenerateCron: typeof import('./core/components/GenerateCron.vue')['default'] diff --git a/admin-client/src/core/utils/Tools.ts b/admin-client/src/core/utils/Tools.ts index f9532c9..55a2375 100644 --- a/admin-client/src/core/utils/Tools.ts +++ b/admin-client/src/core/utils/Tools.ts @@ -8,6 +8,7 @@ import NProgress from "nprogress"; import Cookies from "universal-cookie"; import AppConsts from "../../utils/AppConsts"; import TImageConfigService from "@/services/apps/T_Image_Configs/TImageConfigService"; +import CosService from "@/services/system/CosService"; import COS from "cos-js-sdk-v5"; import { log } from "@antv/g2plot/lib/utils"; /** @@ -390,7 +391,7 @@ class Tools { * @returns */ static async cosUploadFile(file: File, modelName?: string) { - var request = await TImageConfigService.getGenerateTemporaryKey( + const request = await CosService.getGenerateTemporaryKey( file.name, modelName ); diff --git a/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts b/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts index a193c5c..691db99 100644 --- a/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts +++ b/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts @@ -47,34 +47,6 @@ export default class TImageConfigService { static findForm(id?: string | undefined | number) { return Http.get(`${this.urlPrefix}/findForm${id ? "/" + id : ""}`); } - /** - * 获取上传key - * - * @param - * @returns - */ - static getCosSign() { - return Http.get(`${this.urlPrefix}/GetCosSign`); - } - - /** - * 获取上传的临时token - * - * @param - * @returns - */ - static getGenerateTemporaryKey(fileName?: string, modelName?: string) { - if (fileName != null) { - fileName = escape(fileName); - // query - } - return Http.get( - `${this.urlPrefix - }/GetGenerateTemporaryKey?fileName=${fileName}&modelName=${escape( - modelName || "" - )}` - ); - } /** * 保存表单数据 * diff --git a/admin-client/src/services/system/CosService.ts b/admin-client/src/services/system/CosService.ts new file mode 100644 index 0000000..b9b54aa --- /dev/null +++ b/admin-client/src/services/system/CosService.ts @@ -0,0 +1,39 @@ +import Http from "@/core/utils/Http"; +import type ApiResult from "@/core/typings/ApiResult"; +import type { GenerateTemporaryModel } from "./types/cos"; + +/** + * COS 系统服务 + */ +export default class CosService { + static urlPrefix = "/api/v1/admin/Cos"; + + /** + * 获取 COS 预签名 URL + */ + static getCosSign(): Promise> { + return Http.get(`${this.urlPrefix}/GetCosSign`); + } + + /** + * 获取上传所需的临时密钥 + * @param fileName 文件名 + * @param modelName 模块名称 + */ + static getGenerateTemporaryKey( + fileName?: string, + modelName?: string + ): Promise> { + const params: Record = {}; + if (fileName != null) { + params.fileName = escape(fileName); + } + if (modelName != null) { + params.modelName = escape(modelName); + } + return Http.get(`${this.urlPrefix}/GetGenerateTemporaryKey`, params) as Promise< + ApiResult + >; + } +} + diff --git a/admin-client/src/services/system/types/cos.ts b/admin-client/src/services/system/types/cos.ts new file mode 100644 index 0000000..6bdc051 --- /dev/null +++ b/admin-client/src/services/system/types/cos.ts @@ -0,0 +1,17 @@ +export interface GenerateTemporaryModel { + credentials: { + token: string; + tmpSecretId: string; + tmpSecretKey: string; + }; + expiration: string; + expiredTime: number; + startTime: number; + requestId: string; + bucket: string; + region: string; + prefixes: string; + filePath: string; + domainName: string; +} + diff --git a/admin-client/src/views/apps/T_Orders/Info.vue b/admin-client/src/views/apps/T_Orders/Info.vue index 17e2701..47f0bbb 100644 --- a/admin-client/src/views/apps/T_Orders/Info.vue +++ b/admin-client/src/views/apps/T_Orders/Info.vue @@ -1,137 +1,149 @@  \ No newline at end of file diff --git a/admin-client/腾讯云COS服务接口迁移文档.md b/admin-client/腾讯云COS服务接口迁移文档.md new file mode 100644 index 0000000..e076d12 --- /dev/null +++ b/admin-client/腾讯云COS服务接口迁移文档.md @@ -0,0 +1,264 @@ +# 腾讯云COS服务接口迁移文档 + +## 📋 更新概述 + +本次更新将腾讯云COS相关接口从 `TImageConfigController` 迁移到独立的 `CosController`,实现服务分离,COS服务不再与业务数据库关联。 + +--- + +## 🆕 一、新增接口 + +### 1.1 获取COS签名 + +**接口信息:** +- **请求路径**:`GET /api/v1/admin/Cos/GetCosSign` +- **请求方法**:`GET` +- **是否需要认证**:是 +- **描述**:获取腾讯云COS预签名URL + +**请求参数:** +无 + +**响应示例:** +```json +"https://cos.ap-shanghai.myqcloud.com/miaoyu-1308826010/exampleobject?sign=..." +``` + +**响应字段说明:** +- 返回类型:`string` +- 说明:预签名的COS上传URL + +--- + +### 1.2 获取临时密钥 + +**接口信息:** +- **请求路径**:`GET /api/v1/admin/Cos/GetGenerateTemporaryKey` +- **请求方法**:`GET` +- **是否需要认证**:是 +- **描述**:获取腾讯云COS临时访问密钥(STS) + +**请求参数:** + +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| fileName | string | 否 | 文件名,不传则生成时间戳文件名 | +| modelName | string | 否 | 模型名称,默认值为 "images" | + +**请求示例:** +```http +GET /api/v1/admin/Cos/GetGenerateTemporaryKey?fileName=test.jpg&modelName=images +``` + +**响应示例:** +```json +{ + "credentials": { + "token": "xxx", + "tmpSecretId": "xxx", + "tmpSecretKey": "xxx" + }, + "expiration": "2024-12-07T10:00:00Z", + "expiredTime": 1701936000, + "startTime": 1701935400, + "requestId": "xxx", + "bucket": "miaoyu-1308826010", + "region": "ap-shanghai", + "prefixes": "miaoyu", + "filePath": "miaoyu/images/20241207/1701936000.jpg", + "domainName": "https://cos.shhuanmeng.com/" +} +``` + +**响应字段说明:** + +| 字段名 | 类型 | 说明 | +|--------|------|------| +| credentials | object | 临时访问凭证 | +| credentials.token | string | 临时Token | +| credentials.tmpSecretId | string | 临时SecretId | +| credentials.tmpSecretKey | string | 临时SecretKey | +| expiration | string | 过期时间(ISO8601格式) | +| expiredTime | number | 过期时间(Unix时间戳) | +| startTime | number | 开始时间(Unix时间戳) | +| requestId | string | 请求ID | +| bucket | string | 存储桶名称 | +| region | string | 地域 | +| prefixes | string | 路径前缀 | +| filePath | string | 文件路径 | +| domainName | string | 访问域名 | + +--- + +## ⚠️ 二、废弃接口 + +以下接口已废弃,请使用新的接口替代: + +### 2.1 废弃:获取COS签名 + +- **旧接口路径**:`GET /api/v1/admin/TImageConfig/GetCosSign` +- **新接口路径**:`GET /api/v1/admin/Cos/GetCosSign` +- **状态**:❌ 已废弃,请使用新接口 + +### 2.2 废弃:获取临时密钥 + +- **旧接口路径**:`GET /api/v1/admin/TImageConfig/GetGenerateTemporaryKey` +- **新接口路径**:`GET /api/v1/admin/Cos/GetGenerateTemporaryKey` +- **状态**:❌ 已废弃,请使用新接口 + +--- + +## 🔄 三、接口迁移对照表 + +| 功能 | 旧接口 | 新接口 | 状态 | +|------|--------|--------|------| +| 获取COS签名 | `GET /api/v1/admin/TImageConfig/GetCosSign` | `GET /api/v1/admin/Cos/GetCosSign` | ✅ 已迁移 | +| 获取临时密钥 | `GET /api/v1/admin/TImageConfig/GetGenerateTemporaryKey` | `GET /api/v1/admin/Cos/GetGenerateTemporaryKey` | ✅ 已迁移 | + +--- + +## 📝 四、前端修改说明 + +### 4.1 接口地址变更 + +**修改前:** +```typescript +// 获取COS签名 +const getCosSign = async () => { + return axios.get('/api/v1/admin/TImageConfig/GetCosSign'); +}; + +// 获取临时密钥 +const getTemporaryKey = async (fileName?: string, modelName?: string) => { + return axios.get('/api/v1/admin/TImageConfig/GetGenerateTemporaryKey', { + params: { fileName, modelName } + }); +}; +``` + +**修改后:** +```typescript +// 获取COS签名 +const getCosSign = async () => { + return axios.get('/api/v1/admin/Cos/GetCosSign'); +}; + +// 获取临时密钥 +const getTemporaryKey = async (fileName?: string, modelName?: string) => { + return axios.get('/api/v1/admin/Cos/GetGenerateTemporaryKey', { + params: { fileName, modelName } + }); +}; +``` + +### 4.2 API服务更新 + +**建议更新 API 服务文件:** +```typescript +// api/cos.ts +export const cosApi = { + // 获取COS签名 + getCosSign: (): Promise => { + return axios.get('/api/v1/admin/Cos/GetCosSign').then(res => res.data); + }, + + // 获取临时密钥 + getTemporaryKey: (params?: { + fileName?: string; + modelName?: string; + }): Promise => { + return axios.get('/api/v1/admin/Cos/GetGenerateTemporaryKey', { + params + }).then(res => res.data); + } +}; +``` + +### 4.3 类型定义(如需要) + +```typescript +// types/cos.ts +export interface GenerateTemporaryModel { + credentials: { + token: string; + tmpSecretId: string; + tmpSecretKey: string; + }; + expiration: string; + expiredTime: number; + startTime: number; + requestId: string; + bucket: string; + region: string; + prefixes: string; + filePath: string; + domainName: string; +} +``` + +--- + +## ✨ 五、注意事项 + +### 5.1 接口兼容性 + +- **旧接口已完全废弃**,不再可用 +- **新接口的参数和返回值与旧接口完全一致**,仅路径变更 +- **无需修改业务逻辑**,只需更新接口地址 + +### 5.2 权限控制 + +- 新接口需要认证(`[Authorize]`) +- 权限控制规则与旧接口一致 +- 如果旧接口有特殊权限配置,新接口保持相同配置 + +### 5.3 错误处理 + +- 错误响应格式保持不变 +- 错误码和错误信息保持一致 +- 前端错误处理逻辑无需修改 + +--- + +## 🔍 六、验证清单 + +请确认以下内容已完成: + +- [ ] 更新所有调用 `TImageConfig/GetCosSign` 的代码 +- [ ] 更新所有调用 `TImageConfig/GetGenerateTemporaryKey` 的代码 +- [ ] 更新 API 服务文件中的接口地址 +- [ ] 测试新接口是否正常工作 +- [ ] 移除对旧接口的引用 +- [ ] 更新相关文档和注释 + +--- + +## 📞 七、技术支持 + +如有疑问,请联系后端开发团队。 + +**文档版本**:v1.0 +**更新日期**:2024年12月 +**后端版本**:COS服务分离重构版本 + +--- + +## 📚 附录:完整接口列表 + +### 新接口列表 + +1. **获取COS签名** + - `GET /api/v1/admin/Cos/GetCosSign` + +2. **获取临时密钥** + - `GET /api/v1/admin/Cos/GetGenerateTemporaryKey?fileName={fileName}&modelName={modelName}` + +### 已废弃接口列表 + +1. ~~`GET /api/v1/admin/TImageConfig/GetCosSign`~~ ❌ +2. ~~`GET /api/v1/admin/TImageConfig/GetGenerateTemporaryKey`~~ ❌ + +--- + +**文档结束** + diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs index 2e090d3..ba83feb 100644 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs @@ -2,9 +2,6 @@ using HZY.Framework.Repository.EntityFramework.Extensions; using IdGen; -using MiaoYu.Api.Admin.Models.Dtos.Apps.Cos; -using MiaoYu.Core.Cos.Models; -using MiaoYu.Core.Cos.Services; using MiaoYu.Repository.ChatAI.Admin.Entities; using NPOI.SS.Formula.Functions; @@ -16,12 +13,9 @@ namespace MiaoYu.Api.Admin.ApplicationServices.Apps; /// public class TImageConfigService : ApplicationService> { - private ICodeCosService codeCosService; - public TImageConfigService(IRepository defaultRepository, - ICodeCosService codeCosService) + public TImageConfigService(IRepository defaultRepository) : base(defaultRepository) { - this.codeCosService = codeCosService; } /// @@ -143,54 +137,6 @@ public class TImageConfigService : ApplicationService - /// 获取签名 - /// - /// - public string GetCosSign() - { - var (sign, ex) = codeCosService.GenerateSignURL(new MiaoYu.Core.Cos.Models.CosGenerateSign()); - return sign; - } - - /// - /// 获取临时签名 - /// - /// - public GenerateTemporaryModel GetGenerateTemporaryKey(string fileName = "", string modelName = "") - { - var t = new CosGenerateSign() - { - Prefixes = "miaoyu" - }; - if (string.IsNullOrEmpty(modelName)) - { - modelName = $"images"; - } - var tempFile = fileName; - if (!string.IsNullOrEmpty(tempFile)) - { - var ext = Path.GetExtension(tempFile); - if (!string.IsNullOrEmpty(ext)) - { - Random random = new Random(); - - tempFile = $"{DateTime.Now.ToUnixTimeSeconds()}{ext}"; - } - } - var model = codeCosService.GenerateTemporaryKey(t); - // - GenerateTemporaryModel generateTemporaryModel = model.CopyObject() ?? new GenerateTemporaryModel(); - generateTemporaryModel.Bucket = t.Bucket + "-" + t.AppId; - generateTemporaryModel.Region = t.Region; - generateTemporaryModel.Prefixes = t.Prefixes; - generateTemporaryModel.FilePath = $"{t.Prefixes}/{modelName}/{DateTime.Now.ToString("yyyMMdd")}/{tempFile}"; - generateTemporaryModel.DomainName = "https://cos.shhuanmeng.com/"; - return generateTemporaryModel; - - } - - /// /// 获取图片url /// diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/CosService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/CosService.cs new file mode 100644 index 0000000..225b1aa --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/CosService.cs @@ -0,0 +1,83 @@ +using MiaoYu.Api.Admin.ApplicationServices.Systems.Cos.Dtos; +using MiaoYu.Core.ApplicationServices; +using MiaoYu.Core.Cos.Configs; +using MiaoYu.Core.Cos.Models; +using MiaoYu.Core.Cos.Services; + +namespace MiaoYu.Api.Admin.ApplicationServices.Systems.Cos; + +/// +/// 腾讯云COS服务 +/// +public class CosService : ApplicationService +{ + private readonly ICodeCosService _codeCosService; + private readonly TencentConfig _tencentConfig; + + public CosService(ICodeCosService codeCosService, TencentConfig tencentConfig) + { + _codeCosService = codeCosService; + _tencentConfig = tencentConfig; + } + + /// + /// 获取签名 + /// + /// + public string GetCosSign() + { + var (sign, ex) = _codeCosService.GenerateSignURL(new CosGenerateSign()); + return sign; + } + + /// + /// 获取临时签名 + /// + /// 文件名 + /// 模型名称 + /// + public GenerateTemporaryModel GetGenerateTemporaryKey(string fileName = "", string modelName = "") + { + var cosConfig = _tencentConfig.CosConfig; + var t = new CosGenerateSign() + { + Prefixes = "miaoyu", + Bucket = cosConfig?.Bucket, + Region = cosConfig?.Region, + AppId = cosConfig?.AppId, + SecretId = cosConfig?.SecretId, + SecretKey = cosConfig?.SecretKey, + DurationSecond = cosConfig?.DurationSecond ?? 300 + }; + + if (string.IsNullOrEmpty(modelName)) + { + modelName = "images"; + } + + var tempFile = fileName; + if (!string.IsNullOrEmpty(tempFile)) + { + var ext = Path.GetExtension(tempFile); + if (!string.IsNullOrEmpty(ext)) + { + // 使用 UTC 时间生成时间戳文件名 + tempFile = $"{DateTimeOffset.UtcNow.ToUnixTimeSeconds()}{ext}"; + } + } + + var model = _codeCosService.GenerateTemporaryKey(t); + + // 复制对象属性 + var generateTemporaryModel = model.CopyObject() ?? new GenerateTemporaryModel(); + generateTemporaryModel.Bucket = t.Bucket + "-" + t.AppId; + generateTemporaryModel.Region = t.Region; + generateTemporaryModel.Prefixes = t.Prefixes; + // 修复日期格式:yyyMMdd -> yyyyMMdd + generateTemporaryModel.FilePath = $"{t.Prefixes}/{modelName}/{DateTime.Now.ToString("yyyyMMdd")}/{tempFile}"; + generateTemporaryModel.DomainName = "https://cos.shhuanmeng.com/"; + + return generateTemporaryModel; + } +} + diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/Dtos/GenerateTemporaryModel.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/Dtos/GenerateTemporaryModel.cs new file mode 100644 index 0000000..c4cff53 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Systems/Cos/Dtos/GenerateTemporaryModel.cs @@ -0,0 +1,36 @@ +using MiaoYu.Core.Cos.Models; + +namespace MiaoYu.Api.Admin.ApplicationServices.Systems.Cos.Dtos; + +/// +/// cos临时密钥 +/// +public class GenerateTemporaryModel : CodeCosGenerateTemporaryKeyEntity +{ + /// + /// 存储桶名称 + /// + public string Bucket { get; set; } + + /// + /// 关于地域的详情见 + /// + public string Region { get; set; } + + /// + /// 前缀 + /// + public string Prefixes { get; set; } + + /// + /// 文件路径 + /// + public string FilePath { get; set; } + + + /// + /// 域名 + /// + public string DomainName { get; set; } +} + diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs index d7ce509..203eccf 100644 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs @@ -1,6 +1,4 @@ using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Api.Admin.Models.Dtos.Apps.Cos; -using MiaoYu.Core.Cos.Models; using MiaoYu.Repository.ChatAI.Admin.Entities; using Microsoft.AspNetCore.Http.Extensions; @@ -109,31 +107,8 @@ public class TImageConfigController : AdminControllerBase base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); } - /// - /// - /// - /// - [HttpGet] - [ActionDescriptor(DisplayName = "获取cos加密")] - public string GetCosSign() - { - return this._defaultService.GetCosSign(); - } - - /// - /// 获取临时密钥 - /// - /// - [HttpGet] - [ActionDescriptor(DisplayName = "获取cos临时密钥")] - public GenerateTemporaryModel GetGenerateTemporaryKey(string fileName = "", string modelName = "") - { - return this._defaultService.GetGenerateTemporaryKey(fileName, modelName); - } - - /// - /// 获取临时密钥 + /// 获取图片 /// /// [ActionDescriptor(DisplayName = "获取图片")] diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Systems/CosController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Systems/CosController.cs new file mode 100644 index 0000000..9888127 --- /dev/null +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Systems/CosController.cs @@ -0,0 +1,41 @@ +using MiaoYu.Api.Admin.ApplicationServices.Systems.Cos; +using MiaoYu.Api.Admin.ApplicationServices.Systems.Cos.Dtos; + +namespace MiaoYu.Api.Admin.Controllers.Systems; + +/// +/// 腾讯云COS控制器 +/// +[ControllerDescriptor(DisplayName = "腾讯云COS")] +public class CosController : AdminControllerBase +{ + public CosController(CosService defaultService) + : base(defaultService) + { + } + + /// + /// 获取COS签名 + /// + /// + [HttpGet] + [ActionDescriptor(DisplayName = "获取COS签名")] + public string GetCosSign() + { + return this._defaultService.GetCosSign(); + } + + /// + /// 获取临时密钥 + /// + /// 文件名 + /// 模型名称 + /// + [HttpGet] + [ActionDescriptor(DisplayName = "获取COS临时密钥")] + public GenerateTemporaryModel GetGenerateTemporaryKey(string fileName = "", string modelName = "") + { + return this._defaultService.GetGenerateTemporaryKey(fileName, modelName); + } +} + diff --git a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml index 8deb540..e6360b3 100644 --- a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml +++ b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml @@ -289,18 +289,6 @@ - - - 获取签名 - - - - - - 获取临时签名 - - - 获取图片url @@ -1634,6 +1622,55 @@ + + + 腾讯云COS服务 + + + + + 获取签名 + + + + + + 获取临时签名 + + 文件名 + 模型名称 + + + + + cos临时密钥 + + + + + 存储桶名称 + + + + + 关于地域的详情见 + + + + + 前缀 + + + + + 文件路径 + + + + + 域名 + + 系统权限服务 @@ -2338,21 +2375,9 @@ - - - - - - - - - 获取临时密钥 - - - - 获取临时密钥 + 获取图片 @@ -3745,6 +3770,25 @@ 路由前缀 + + + 腾讯云COS控制器 + + + + + 获取COS签名 + + + + + + 获取临时密钥 + + 文件名 + 模型名称 + + 个人中心 @@ -4367,36 +4411,6 @@ - - - cos临时密钥 - - - - - 存储桶名称 - - - - - 关于地域的详情见 - - - - - 前缀 - - - - - 文件路径 - - - - - 域名 - - 数据源信息 DTO diff --git a/admin-server/MiaoYu.Api.Admin/Models/Dtos/Apps/Cos/GenerateTemporaryModel.cs b/admin-server/MiaoYu.Api.Admin/Models/Dtos/Apps/Cos/GenerateTemporaryModel.cs deleted file mode 100644 index d9480d7..0000000 --- a/admin-server/MiaoYu.Api.Admin/Models/Dtos/Apps/Cos/GenerateTemporaryModel.cs +++ /dev/null @@ -1,36 +0,0 @@ -using MiaoYu.Core.Cos.Models; - -namespace MiaoYu.Api.Admin.Models.Dtos.Apps.Cos -{ - /// - /// cos临时密钥 - /// - public class GenerateTemporaryModel : CodeCosGenerateTemporaryKeyEntity - { - /// - /// 存储桶名称 - /// - public string Bucket { get; set; } - - /// - /// 关于地域的详情见 - /// - public string Region { get; set; } - - /// - /// 前缀 - /// - public string Prefixes { get; set; } - - /// - /// 文件路径 - /// - public string FilePath { get; set; } - - - /// - /// 域名 - /// - public string DomainName { get; set; } - } -} diff --git a/admin-server/腾讯云COS服务接口迁移文档.md b/admin-server/腾讯云COS服务接口迁移文档.md new file mode 100644 index 0000000..e076d12 --- /dev/null +++ b/admin-server/腾讯云COS服务接口迁移文档.md @@ -0,0 +1,264 @@ +# 腾讯云COS服务接口迁移文档 + +## 📋 更新概述 + +本次更新将腾讯云COS相关接口从 `TImageConfigController` 迁移到独立的 `CosController`,实现服务分离,COS服务不再与业务数据库关联。 + +--- + +## 🆕 一、新增接口 + +### 1.1 获取COS签名 + +**接口信息:** +- **请求路径**:`GET /api/v1/admin/Cos/GetCosSign` +- **请求方法**:`GET` +- **是否需要认证**:是 +- **描述**:获取腾讯云COS预签名URL + +**请求参数:** +无 + +**响应示例:** +```json +"https://cos.ap-shanghai.myqcloud.com/miaoyu-1308826010/exampleobject?sign=..." +``` + +**响应字段说明:** +- 返回类型:`string` +- 说明:预签名的COS上传URL + +--- + +### 1.2 获取临时密钥 + +**接口信息:** +- **请求路径**:`GET /api/v1/admin/Cos/GetGenerateTemporaryKey` +- **请求方法**:`GET` +- **是否需要认证**:是 +- **描述**:获取腾讯云COS临时访问密钥(STS) + +**请求参数:** + +| 参数名 | 类型 | 必填 | 说明 | +|--------|------|------|------| +| fileName | string | 否 | 文件名,不传则生成时间戳文件名 | +| modelName | string | 否 | 模型名称,默认值为 "images" | + +**请求示例:** +```http +GET /api/v1/admin/Cos/GetGenerateTemporaryKey?fileName=test.jpg&modelName=images +``` + +**响应示例:** +```json +{ + "credentials": { + "token": "xxx", + "tmpSecretId": "xxx", + "tmpSecretKey": "xxx" + }, + "expiration": "2024-12-07T10:00:00Z", + "expiredTime": 1701936000, + "startTime": 1701935400, + "requestId": "xxx", + "bucket": "miaoyu-1308826010", + "region": "ap-shanghai", + "prefixes": "miaoyu", + "filePath": "miaoyu/images/20241207/1701936000.jpg", + "domainName": "https://cos.shhuanmeng.com/" +} +``` + +**响应字段说明:** + +| 字段名 | 类型 | 说明 | +|--------|------|------| +| credentials | object | 临时访问凭证 | +| credentials.token | string | 临时Token | +| credentials.tmpSecretId | string | 临时SecretId | +| credentials.tmpSecretKey | string | 临时SecretKey | +| expiration | string | 过期时间(ISO8601格式) | +| expiredTime | number | 过期时间(Unix时间戳) | +| startTime | number | 开始时间(Unix时间戳) | +| requestId | string | 请求ID | +| bucket | string | 存储桶名称 | +| region | string | 地域 | +| prefixes | string | 路径前缀 | +| filePath | string | 文件路径 | +| domainName | string | 访问域名 | + +--- + +## ⚠️ 二、废弃接口 + +以下接口已废弃,请使用新的接口替代: + +### 2.1 废弃:获取COS签名 + +- **旧接口路径**:`GET /api/v1/admin/TImageConfig/GetCosSign` +- **新接口路径**:`GET /api/v1/admin/Cos/GetCosSign` +- **状态**:❌ 已废弃,请使用新接口 + +### 2.2 废弃:获取临时密钥 + +- **旧接口路径**:`GET /api/v1/admin/TImageConfig/GetGenerateTemporaryKey` +- **新接口路径**:`GET /api/v1/admin/Cos/GetGenerateTemporaryKey` +- **状态**:❌ 已废弃,请使用新接口 + +--- + +## 🔄 三、接口迁移对照表 + +| 功能 | 旧接口 | 新接口 | 状态 | +|------|--------|--------|------| +| 获取COS签名 | `GET /api/v1/admin/TImageConfig/GetCosSign` | `GET /api/v1/admin/Cos/GetCosSign` | ✅ 已迁移 | +| 获取临时密钥 | `GET /api/v1/admin/TImageConfig/GetGenerateTemporaryKey` | `GET /api/v1/admin/Cos/GetGenerateTemporaryKey` | ✅ 已迁移 | + +--- + +## 📝 四、前端修改说明 + +### 4.1 接口地址变更 + +**修改前:** +```typescript +// 获取COS签名 +const getCosSign = async () => { + return axios.get('/api/v1/admin/TImageConfig/GetCosSign'); +}; + +// 获取临时密钥 +const getTemporaryKey = async (fileName?: string, modelName?: string) => { + return axios.get('/api/v1/admin/TImageConfig/GetGenerateTemporaryKey', { + params: { fileName, modelName } + }); +}; +``` + +**修改后:** +```typescript +// 获取COS签名 +const getCosSign = async () => { + return axios.get('/api/v1/admin/Cos/GetCosSign'); +}; + +// 获取临时密钥 +const getTemporaryKey = async (fileName?: string, modelName?: string) => { + return axios.get('/api/v1/admin/Cos/GetGenerateTemporaryKey', { + params: { fileName, modelName } + }); +}; +``` + +### 4.2 API服务更新 + +**建议更新 API 服务文件:** +```typescript +// api/cos.ts +export const cosApi = { + // 获取COS签名 + getCosSign: (): Promise => { + return axios.get('/api/v1/admin/Cos/GetCosSign').then(res => res.data); + }, + + // 获取临时密钥 + getTemporaryKey: (params?: { + fileName?: string; + modelName?: string; + }): Promise => { + return axios.get('/api/v1/admin/Cos/GetGenerateTemporaryKey', { + params + }).then(res => res.data); + } +}; +``` + +### 4.3 类型定义(如需要) + +```typescript +// types/cos.ts +export interface GenerateTemporaryModel { + credentials: { + token: string; + tmpSecretId: string; + tmpSecretKey: string; + }; + expiration: string; + expiredTime: number; + startTime: number; + requestId: string; + bucket: string; + region: string; + prefixes: string; + filePath: string; + domainName: string; +} +``` + +--- + +## ✨ 五、注意事项 + +### 5.1 接口兼容性 + +- **旧接口已完全废弃**,不再可用 +- **新接口的参数和返回值与旧接口完全一致**,仅路径变更 +- **无需修改业务逻辑**,只需更新接口地址 + +### 5.2 权限控制 + +- 新接口需要认证(`[Authorize]`) +- 权限控制规则与旧接口一致 +- 如果旧接口有特殊权限配置,新接口保持相同配置 + +### 5.3 错误处理 + +- 错误响应格式保持不变 +- 错误码和错误信息保持一致 +- 前端错误处理逻辑无需修改 + +--- + +## 🔍 六、验证清单 + +请确认以下内容已完成: + +- [ ] 更新所有调用 `TImageConfig/GetCosSign` 的代码 +- [ ] 更新所有调用 `TImageConfig/GetGenerateTemporaryKey` 的代码 +- [ ] 更新 API 服务文件中的接口地址 +- [ ] 测试新接口是否正常工作 +- [ ] 移除对旧接口的引用 +- [ ] 更新相关文档和注释 + +--- + +## 📞 七、技术支持 + +如有疑问,请联系后端开发团队。 + +**文档版本**:v1.0 +**更新日期**:2024年12月 +**后端版本**:COS服务分离重构版本 + +--- + +## 📚 附录:完整接口列表 + +### 新接口列表 + +1. **获取COS签名** + - `GET /api/v1/admin/Cos/GetCosSign` + +2. **获取临时密钥** + - `GET /api/v1/admin/Cos/GetGenerateTemporaryKey?fileName={fileName}&modelName={modelName}` + +### 已废弃接口列表 + +1. ~~`GET /api/v1/admin/TImageConfig/GetCosSign`~~ ❌ +2. ~~`GET /api/v1/admin/TImageConfig/GetGenerateTemporaryKey`~~ ❌ + +--- + +**文档结束** + From 88fc51002889f6c3f2608c337a9c78cb3ac81413 Mon Sep 17 00:00:00 2001 From: zpc Date: Wed, 12 Nov 2025 00:22:38 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TCharacterLabelService.ts | 74 - .../Apps/T_Characters/T_CharacterService.ts | 86 - .../T_Image_Configs/TImageConfigService.ts | 99 - .../T_User_Currency_LogService.ts | 74 - .../M_MusicGenress/M_MusicGenresService.ts | 74 - .../services/apps/M_Songss/M_SongsService.ts | 74 - .../T_Category_Child_MenuService.ts | 84 - .../T_Character_Label_RelationService.ts | 93 - .../T_Character_LabelService.ts | 74 - ...T_Character_Personality_RelationService.ts | 93 - .../T_Character_PersonalityService.ts | 74 - .../T_Character_Type_IntimacyService.ts | 91 - .../T_Character_TypeService.ts | 74 - .../services/apps/T_Chats/T_ChatService.ts | 74 - .../T_Model_Configs/T_Model_ConfigService.ts | 74 - .../apps/T_OrderItemss/T_OrderItemsService.ts | 74 - .../services/apps/T_Orders/T_OrderService.ts | 74 - .../T_Products_RewardService.ts | 81 - .../apps/T_Productss/T_ProductsService.ts | 92 - .../T_User_CurrencyService.ts | 74 - .../T_User_IntentOrderService.ts | 74 - .../T_User_Phone_AccountService.ts | 74 - .../services/apps/T_Users/T_UserService.ts | 74 - .../T_Verification_CodeService.ts | 74 - .../views/Apps/T_Character_Labels/Index.vue | 232 -- .../views/Apps/T_Character_Labels/Info.vue | 92 - .../src/views/Apps/T_Characters/Index.vue | 599 ----- .../src/views/Apps/T_Characters/Info.vue | 218 -- .../src/views/Apps/T_Image_Configs/Index.vue | 330 --- .../src/views/Apps/T_Image_Configs/Info.vue | 188 -- .../views/Apps/T_User_Currency_Logs/Info.vue | 107 - .../src/views/apps/M_MusicGenress/Index.vue | 232 -- .../src/views/apps/M_MusicGenress/Info.vue | 102 - .../src/views/apps/M_Songss/Index.vue | 233 -- admin-client/src/views/apps/M_Songss/Info.vue | 147 -- .../apps/T_Category_Child_Menus/Index.vue | 371 --- .../apps/T_Category_Child_Menus/Info.vue | 197 -- .../T_Character_Label_Relations/Index.vue | 242 -- .../apps/T_Character_Label_Relations/Info.vue | 92 - .../Index.vue | 232 -- .../Info.vue | 92 - .../apps/T_Character_Personalitys/Index.vue | 237 -- .../apps/T_Character_Personalitys/Info.vue | 92 - .../apps/T_Character_Type_Intimacys/Index.vue | 232 -- .../apps/T_Character_Type_Intimacys/Info.vue | 102 - .../views/apps/T_Character_Types/Index.vue | 232 -- .../src/views/apps/T_Character_Types/Info.vue | 97 - admin-client/src/views/apps/T_Chats/Index.vue | 247 -- admin-client/src/views/apps/T_Chats/Info.vue | 157 -- .../src/views/apps/T_Model_Configs/Index.vue | 251 -- .../src/views/apps/T_Model_Configs/Info.vue | 242 -- .../src/views/apps/T_OrderItemss/Index.vue | 232 -- .../src/views/apps/T_OrderItemss/Info.vue | 117 - .../src/views/apps/T_Orders/Index.vue | 232 -- admin-client/src/views/apps/T_Orders/Info.vue | 149 -- .../views/apps/T_Products_Rewards/Index.vue | 232 -- .../views/apps/T_Products_Rewards/Info.vue | 155 -- .../src/views/apps/T_Productss/Index.vue | 584 ----- .../src/views/apps/T_Productss/Info.vue | 206 -- .../views/apps/T_Productss/InfoRawards.vue | 137 - .../src/views/apps/T_Productss/Rewards.vue | 165 -- .../views/apps/T_User_Currency_Logs/Index.vue | 247 -- .../src/views/apps/T_User_Currencys/Index.vue | 242 -- .../src/views/apps/T_User_Currencys/Info.vue | 102 - .../views/apps/T_User_IntentOrders/Index.vue | 232 -- .../views/apps/T_User_IntentOrders/Info.vue | 137 - .../apps/T_User_Phone_Accounts/Index.vue | 242 -- .../views/apps/T_User_Phone_Accounts/Info.vue | 117 - admin-client/src/views/apps/T_Users/Index.vue | 247 -- admin-client/src/views/apps/T_Users/Info.vue | 137 - .../views/apps/T_Verification_Codes/Index.vue | 232 -- .../views/apps/T_Verification_Codes/Info.vue | 112 - admin-server/MiaoYu.Admin.sln | 7 - .../MiaoYu.Api.Admin/ApiAdminStartup.cs | 2 +- .../Apps/MiaoYuChat/M_MusicGenresService.cs | 109 - .../Apps/MiaoYuChat/M_SongsService.cs | 109 - .../Apps/MiaoYuChat/TImageConfigService.cs | 173 -- .../T_Category_Child_MenuService.cs | 187 -- .../Apps/MiaoYuChat/T_CharacterService.cs | 223 -- .../MiaoYuChat/T_Character_LabelService.cs | 109 - .../T_Character_Label_RelationService.cs | 157 -- .../T_Character_PersonalityService.cs | 119 - ...T_Character_Personality_RelationService.cs | 158 -- .../MiaoYuChat/T_Character_TypeService.cs | 109 - .../T_Character_Type_IntimacyService.cs | 151 -- .../Apps/MiaoYuChat/T_ChatService.cs | 132 - .../Apps/MiaoYuChat/T_Model_ConfigService.cs | 136 - .../Apps/MiaoYuChat/T_OrderItemsService.cs | 109 - .../Apps/MiaoYuChat/T_OrderService.cs | 109 - .../Apps/MiaoYuChat/T_ProductsService.cs | 174 -- .../MiaoYuChat/T_Products_RewardService.cs | 126 - .../Apps/MiaoYuChat/T_UserService.cs | 145 -- .../Apps/MiaoYuChat/T_User_CurrencyService.cs | 119 - .../MiaoYuChat/T_User_Currency_LogService.cs | 124 - .../MiaoYuChat/T_User_IntentOrderService.cs | 109 - .../MiaoYuChat/T_User_Phone_AccountService.cs | 116 - .../MiaoYuChat/T_Verification_CodeService.cs | 109 - .../LowCode/Impl/LowCodeTableService.cs | 1 - .../Apps/LiveForum/T_UsersController.cs | 3 +- .../MiaoYuChat/M_MusicGenresController.cs | 100 - .../Apps/MiaoYuChat/M_SongsController.cs | 100 - .../Apps/MiaoYuChat/TImageConfigController.cs | 141 -- .../T_Category_Child_MenuController.cs | 111 - .../Apps/MiaoYuChat/T_CharacterController.cs | 111 - .../MiaoYuChat/T_Character_LabelController.cs | 104 - .../T_Character_Label_RelationController.cs | 130 - .../T_Character_PersonalityController.cs | 100 - ...haracter_Personality_RelationController.cs | 131 - .../MiaoYuChat/T_Character_TypeController.cs | 104 - .../T_Character_Type_IntimacyController.cs | 127 - .../Apps/MiaoYuChat/T_ChatController.cs | 100 - .../MiaoYuChat/T_Model_ConfigController.cs | 100 - .../Apps/MiaoYuChat/T_OrderController.cs | 100 - .../Apps/MiaoYuChat/T_OrderItemsController.cs | 100 - .../Apps/MiaoYuChat/T_ProductsController.cs | 124 - .../MiaoYuChat/T_Products_RewardController.cs | 110 - .../Apps/MiaoYuChat/T_UserController.cs | 111 - .../MiaoYuChat/T_User_CurrencyController.cs | 100 - .../T_User_Currency_LogController.cs | 100 - .../T_User_IntentOrderController.cs | 100 - .../T_User_Phone_AccountController.cs | 100 - .../T_Verification_CodeController.cs | 100 - .../MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj | 2 +- .../MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml | 2219 ----------------- admin-server/MiaoYu.Api.Admin/Usings.cs | 1 - .../appsettings.Development.json | 8 - 126 files changed, 4 insertions(+), 19609 deletions(-) delete mode 100644 admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts delete mode 100644 admin-client/src/services/Apps/T_Characters/T_CharacterService.ts delete mode 100644 admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts delete mode 100644 admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts delete mode 100644 admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts delete mode 100644 admin-client/src/services/apps/M_Songss/M_SongsService.ts delete mode 100644 admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts delete mode 100644 admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts delete mode 100644 admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts delete mode 100644 admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts delete mode 100644 admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts delete mode 100644 admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts delete mode 100644 admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts delete mode 100644 admin-client/src/services/apps/T_Chats/T_ChatService.ts delete mode 100644 admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts delete mode 100644 admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts delete mode 100644 admin-client/src/services/apps/T_Orders/T_OrderService.ts delete mode 100644 admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts delete mode 100644 admin-client/src/services/apps/T_Productss/T_ProductsService.ts delete mode 100644 admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts delete mode 100644 admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts delete mode 100644 admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts delete mode 100644 admin-client/src/services/apps/T_Users/T_UserService.ts delete mode 100644 admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts delete mode 100644 admin-client/src/views/Apps/T_Character_Labels/Index.vue delete mode 100644 admin-client/src/views/Apps/T_Character_Labels/Info.vue delete mode 100644 admin-client/src/views/Apps/T_Characters/Index.vue delete mode 100644 admin-client/src/views/Apps/T_Characters/Info.vue delete mode 100644 admin-client/src/views/Apps/T_Image_Configs/Index.vue delete mode 100644 admin-client/src/views/Apps/T_Image_Configs/Info.vue delete mode 100644 admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue delete mode 100644 admin-client/src/views/apps/M_MusicGenress/Index.vue delete mode 100644 admin-client/src/views/apps/M_MusicGenress/Info.vue delete mode 100644 admin-client/src/views/apps/M_Songss/Index.vue delete mode 100644 admin-client/src/views/apps/M_Songss/Info.vue delete mode 100644 admin-client/src/views/apps/T_Category_Child_Menus/Index.vue delete mode 100644 admin-client/src/views/apps/T_Category_Child_Menus/Info.vue delete mode 100644 admin-client/src/views/apps/T_Character_Label_Relations/Index.vue delete mode 100644 admin-client/src/views/apps/T_Character_Label_Relations/Info.vue delete mode 100644 admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue delete mode 100644 admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue delete mode 100644 admin-client/src/views/apps/T_Character_Personalitys/Index.vue delete mode 100644 admin-client/src/views/apps/T_Character_Personalitys/Info.vue delete mode 100644 admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue delete mode 100644 admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue delete mode 100644 admin-client/src/views/apps/T_Character_Types/Index.vue delete mode 100644 admin-client/src/views/apps/T_Character_Types/Info.vue delete mode 100644 admin-client/src/views/apps/T_Chats/Index.vue delete mode 100644 admin-client/src/views/apps/T_Chats/Info.vue delete mode 100644 admin-client/src/views/apps/T_Model_Configs/Index.vue delete mode 100644 admin-client/src/views/apps/T_Model_Configs/Info.vue delete mode 100644 admin-client/src/views/apps/T_OrderItemss/Index.vue delete mode 100644 admin-client/src/views/apps/T_OrderItemss/Info.vue delete mode 100644 admin-client/src/views/apps/T_Orders/Index.vue delete mode 100644 admin-client/src/views/apps/T_Orders/Info.vue delete mode 100644 admin-client/src/views/apps/T_Products_Rewards/Index.vue delete mode 100644 admin-client/src/views/apps/T_Products_Rewards/Info.vue delete mode 100644 admin-client/src/views/apps/T_Productss/Index.vue delete mode 100644 admin-client/src/views/apps/T_Productss/Info.vue delete mode 100644 admin-client/src/views/apps/T_Productss/InfoRawards.vue delete mode 100644 admin-client/src/views/apps/T_Productss/Rewards.vue delete mode 100644 admin-client/src/views/apps/T_User_Currency_Logs/Index.vue delete mode 100644 admin-client/src/views/apps/T_User_Currencys/Index.vue delete mode 100644 admin-client/src/views/apps/T_User_Currencys/Info.vue delete mode 100644 admin-client/src/views/apps/T_User_IntentOrders/Index.vue delete mode 100644 admin-client/src/views/apps/T_User_IntentOrders/Info.vue delete mode 100644 admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue delete mode 100644 admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue delete mode 100644 admin-client/src/views/apps/T_Users/Index.vue delete mode 100644 admin-client/src/views/apps/T_Users/Info.vue delete mode 100644 admin-client/src/views/apps/T_Verification_Codes/Index.vue delete mode 100644 admin-client/src/views/apps/T_Verification_Codes/Info.vue delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs delete mode 100644 admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs diff --git a/admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts b/admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts deleted file mode 100644 index 14b1b17..0000000 --- a/admin-client/src/services/Apps/T_Character_Labels/TCharacterLabelService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Label服务 - */ -export default class T_Character_LabelService { - - static urlPrefix = "/api/v1/admin/T_Character_Label"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/Apps/T_Characters/T_CharacterService.ts b/admin-client/src/services/Apps/T_Characters/T_CharacterService.ts deleted file mode 100644 index d44a699..0000000 --- a/admin-client/src/services/Apps/T_Characters/T_CharacterService.ts +++ /dev/null @@ -1,86 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character服务 - */ -export default class T_CharacterService { - - static urlPrefix = "/api/v1/admin/T_Character"; - static url: string = Http.baseURL + "/api/v1/admin/TImageConfig/image/"; - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - -/** - * 修改状态 - * @param id - * @param v - * @returns - */ - static async setVisibility(id: number | undefined, v: boolean | undefined) { - return await Http.post(`${this.urlPrefix}/updateState/${id}/${(v == true ? "1" : "0")}`) - } - - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts b/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts deleted file mode 100644 index 691db99..0000000 --- a/admin-client/src/services/Apps/T_Image_Configs/TImageConfigService.ts +++ /dev/null @@ -1,99 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * TImageConfig服务 - */ -export default class TImageConfigService { - static urlPrefix = "/api/v1/admin/TImageConfig"; - static baseUrl = Http.baseURL + this.urlPrefix + "/image/"; - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList( - current: number, - pageSize: number, - search: any = {}, - searchSort: any[] = [] - ) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort, - }); - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids); - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined | number) { - return Http.get(`${this.urlPrefix}/findForm${id ? "/" + id : ""}`); - } - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? "update" : "create"}`, formData); - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort, - }); - } - - /** - * 查询图片数据源 - * - * @param id - * @returns - */ - static getImageList(name?: string | undefined) { - return Http.get(`${this.urlPrefix}/getImageList?name=${name}`); - } - - /** -* 查询图片数据源 -* -* @param id -* @returns -*/ - static getImageUrl(imageId?: number | undefined) { - if (imageId == null) { - return ""; - } - return this.baseUrl + imageId; - } -} diff --git a/admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts b/admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts deleted file mode 100644 index 6bc3022..0000000 --- a/admin-client/src/services/Apps/T_User_Currency_Logs/T_User_Currency_LogService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_User_Currency_Log服务 - */ -export default class T_User_Currency_LogService { - - static urlPrefix = "/api/v1/admin/T_User_Currency_Log"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts b/admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts deleted file mode 100644 index 0d96667..0000000 --- a/admin-client/src/services/apps/M_MusicGenress/M_MusicGenresService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * M_MusicGenres服务 - */ -export default class M_MusicGenresService { - - static urlPrefix = "/api/v1/admin/M_MusicGenres"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/M_Songss/M_SongsService.ts b/admin-client/src/services/apps/M_Songss/M_SongsService.ts deleted file mode 100644 index 2036f5f..0000000 --- a/admin-client/src/services/apps/M_Songss/M_SongsService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * M_Songs服务 - */ -export default class M_SongsService { - - static urlPrefix = "/api/v1/admin/M_Songs"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts b/admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts deleted file mode 100644 index 96ca48e..0000000 --- a/admin-client/src/services/apps/T_Category_Child_Menus/T_Category_Child_MenuService.ts +++ /dev/null @@ -1,84 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Category_Child_Menu服务 - */ -export default class T_Category_Child_MenuService { - - static urlPrefix = "/api/v1/admin/T_Category_Child_Menu"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -/** - * 修改状态 - * @param id - * @param v - * @returns - */ -static async setVisibility(id: number | undefined, v: boolean | undefined) { - return await Http.post(`${this.urlPrefix}/updateState/${id}/${(v == true ? "1" : "0")}`) -} - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts b/admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts deleted file mode 100644 index e465d6c..0000000 --- a/admin-client/src/services/apps/T_Character_Label_Relations/T_Character_Label_RelationService.ts +++ /dev/null @@ -1,93 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Label_Relation服务 - */ -export default class T_Character_Label_RelationService { - - static urlPrefix = "/api/v1/admin/T_Character_Label_Relation"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static delete(id: number, ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteCIdList/${id}`, ids) - } - /** - * 批量配置角色性格 - * @param id 角色id - * @param ids 性格类型 - * @returns - */ - static async setCharacterPersonality(id: number, ids: any[]) { - return Http.post(`${this.urlPrefix}/setCharacterLabel/${id}`, ids) - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts b/admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts deleted file mode 100644 index 14b1b17..0000000 --- a/admin-client/src/services/apps/T_Character_Labels/T_Character_LabelService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Label服务 - */ -export default class T_Character_LabelService { - - static urlPrefix = "/api/v1/admin/T_Character_Label"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts b/admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts deleted file mode 100644 index caa7941..0000000 --- a/admin-client/src/services/apps/T_Character_Personality_Relations/T_Character_Personality_RelationService.ts +++ /dev/null @@ -1,93 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Personality_Relation服务 - */ -export default class T_Character_Personality_RelationService { - - static urlPrefix = "/api/v1/admin/T_Character_Personality_Relation"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static delete(id: number, ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteCIdList/${id}`, ids) - } - /** - * 批量配置角色性格 - * @param id 角色id - * @param ids 性格类型 - * @returns - */ - static async setCharacterPersonality(id: number, ids: any[]) { - return Http.post(`${this.urlPrefix}/setCharacterPersonality/${id}`, ids) - } -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts b/admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts deleted file mode 100644 index a386ae5..0000000 --- a/admin-client/src/services/apps/T_Character_Personalitys/T_Character_PersonalityService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Personality服务 - */ -export default class T_Character_PersonalityService { - - static urlPrefix = "/api/v1/admin/T_Character_Personality"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts b/admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts deleted file mode 100644 index a094721..0000000 --- a/admin-client/src/services/apps/T_Character_Type_Intimacys/T_Character_Type_IntimacyService.ts +++ /dev/null @@ -1,91 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Type_Intimacy服务 - */ -export default class T_Character_Type_IntimacyService { - - static urlPrefix = "/api/v1/admin/T_Character_Type_Intimacy"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static delete(id: number, ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteCIdList/${id}`, ids) - } - /** - * 批量配置角色性格 - * @param id 角色id - * @param ids 性格类型 - * @returns - */ - static async setCharacterPersonality(id: number, ids: any[]) { - return Http.post(`${this.urlPrefix}/setCharacterTypes/${id}`, ids) - } -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts b/admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts deleted file mode 100644 index 4556947..0000000 --- a/admin-client/src/services/apps/T_Character_Types/T_Character_TypeService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Character_Type服务 - */ -export default class T_Character_TypeService { - - static urlPrefix = "/api/v1/admin/T_Character_Type"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Chats/T_ChatService.ts b/admin-client/src/services/apps/T_Chats/T_ChatService.ts deleted file mode 100644 index 177adf7..0000000 --- a/admin-client/src/services/apps/T_Chats/T_ChatService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Chat服务 - */ -export default class T_ChatService { - - static urlPrefix = "/api/v1/admin/T_Chat"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts b/admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts deleted file mode 100644 index 9c3aae3..0000000 --- a/admin-client/src/services/apps/T_Model_Configs/T_Model_ConfigService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Model_Config服务 - */ -export default class T_Model_ConfigService { - - static urlPrefix = "/api/v1/admin/T_Model_Config"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts b/admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts deleted file mode 100644 index 2862409..0000000 --- a/admin-client/src/services/apps/T_OrderItemss/T_OrderItemsService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_OrderItems服务 - */ -export default class T_OrderItemsService { - - static urlPrefix = "/api/v1/admin/T_OrderItems"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Orders/T_OrderService.ts b/admin-client/src/services/apps/T_Orders/T_OrderService.ts deleted file mode 100644 index a79e8f3..0000000 --- a/admin-client/src/services/apps/T_Orders/T_OrderService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Order服务 - */ -export default class T_OrderService { - - static urlPrefix = "/api/v1/admin/T_Order"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts b/admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts deleted file mode 100644 index 2461a90..0000000 --- a/admin-client/src/services/apps/T_Products_Rewards/T_Products_RewardService.ts +++ /dev/null @@ -1,81 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Products_Reward服务 - */ -export default class T_Products_RewardService { - - static urlPrefix = "/api/v1/admin/T_Products_Reward"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - /** - * 获取数据列表 - * @param productId - * @returns - */ - static getList(productId: number) { - return Http.get(`${this.urlPrefix}/findList/${productId}`,) - } -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Productss/T_ProductsService.ts b/admin-client/src/services/apps/T_Productss/T_ProductsService.ts deleted file mode 100644 index e02a792..0000000 --- a/admin-client/src/services/apps/T_Productss/T_ProductsService.ts +++ /dev/null @@ -1,92 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Products服务 - */ -export default class T_ProductsService { - - static urlPrefix = "/api/v1/admin/T_Products"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - /** - * 修改首充状态 - * @param id - * @param v - * @returns - */ - static async setFirstCharge(id: number | undefined, v: boolean | undefined) { - return await Http.post(`${this.urlPrefix}/UpdateFirstCharge/${id}/${(v == true ? "1" : "0")}`) - } - - /** - * 修改修改上架,下架状态 - * @param id - * @param v - * @returns - */ - static async setState(id: number | undefined, v: boolean | undefined) { - return await Http.post(`${this.urlPrefix}/UpdateState/${id}/${(v == true ? "1" : "0")}`) - } -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts b/admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts deleted file mode 100644 index ff07da7..0000000 --- a/admin-client/src/services/apps/T_User_Currencys/T_User_CurrencyService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_User_Currency服务 - */ -export default class T_User_CurrencyService { - - static urlPrefix = "/api/v1/admin/T_User_Currency"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts b/admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts deleted file mode 100644 index ebb90f0..0000000 --- a/admin-client/src/services/apps/T_User_IntentOrders/T_User_IntentOrderService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_User_IntentOrder服务 - */ -export default class T_User_IntentOrderService { - - static urlPrefix = "/api/v1/admin/T_User_IntentOrder"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts b/admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts deleted file mode 100644 index 0fe67f3..0000000 --- a/admin-client/src/services/apps/T_User_Phone_Accounts/T_User_Phone_AccountService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_User_Phone_Account服务 - */ -export default class T_User_Phone_AccountService { - - static urlPrefix = "/api/v1/admin/T_User_Phone_Account"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Users/T_UserService.ts b/admin-client/src/services/apps/T_Users/T_UserService.ts deleted file mode 100644 index 937f135..0000000 --- a/admin-client/src/services/apps/T_Users/T_UserService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_User服务 - */ -export default class T_UserService { - - static urlPrefix = "/api/v1/admin/T_User"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts b/admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts deleted file mode 100644 index 84b2b25..0000000 --- a/admin-client/src/services/apps/T_Verification_Codes/T_Verification_CodeService.ts +++ /dev/null @@ -1,74 +0,0 @@ -import Http from "@/core/utils/Http"; - -/** - * T_Verification_Code服务 - */ -export default class T_Verification_CodeService { - - static urlPrefix = "/api/v1/admin/T_Verification_Code"; - - /** - * 获取数据列表 - * @param current - * @param pageSize - * @param search - * @param searchSort - * @returns - */ - static findList(current: number, pageSize: number, search: any = {}, searchSort: any[] = []) { - return Http.post(`${this.urlPrefix}/findList`, { - page: current, - size: pageSize, - search, - searchSort - }) - } - - /** - * 删除集合数据 - * - * @param ids - * @returns - */ - static deleteList(ids: string[]) { - return Http.post(`${this.urlPrefix}/deleteList`, ids) - } - - /** - * 查询表单 - * - * @param id - * @returns - */ - static findForm(id?: string | undefined) { - return Http.get(`${this.urlPrefix}/findForm${(id ? '/' + id : '')}`) - } - - /** - * 保存表单数据 - * - * @param id - * @param formData - * @returns - */ - static saveForm(id: string | undefined, formData: any) { - return Http.post(`${this.urlPrefix}/${id ? 'update' : 'create'}`, formData) - } - - /** - * 导出 excel - * - * @param search - * @param searchSort - * @returns - */ - static exportExcel(search: any = {}, searchSort: any[] = []) { - return Http.download(`${this.urlPrefix}/exportExcel`, { - page: -1, - size: -1, - search, - searchSort - }); - } - -} \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Character_Labels/Index.vue b/admin-client/src/views/Apps/T_Character_Labels/Index.vue deleted file mode 100644 index 05c6fc4..0000000 --- a/admin-client/src/views/Apps/T_Character_Labels/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Character_Labels/Info.vue b/admin-client/src/views/Apps/T_Character_Labels/Info.vue deleted file mode 100644 index 8869618..0000000 --- a/admin-client/src/views/Apps/T_Character_Labels/Info.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Characters/Index.vue b/admin-client/src/views/Apps/T_Characters/Index.vue deleted file mode 100644 index 7ad6b7b..0000000 --- a/admin-client/src/views/Apps/T_Characters/Index.vue +++ /dev/null @@ -1,599 +0,0 @@ - - - diff --git a/admin-client/src/views/Apps/T_Characters/Info.vue b/admin-client/src/views/Apps/T_Characters/Info.vue deleted file mode 100644 index 47a9e72..0000000 --- a/admin-client/src/views/Apps/T_Characters/Info.vue +++ /dev/null @@ -1,218 +0,0 @@ - - - diff --git a/admin-client/src/views/Apps/T_Image_Configs/Index.vue b/admin-client/src/views/Apps/T_Image_Configs/Index.vue deleted file mode 100644 index eb35016..0000000 --- a/admin-client/src/views/Apps/T_Image_Configs/Index.vue +++ /dev/null @@ -1,330 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_Image_Configs/Info.vue b/admin-client/src/views/Apps/T_Image_Configs/Info.vue deleted file mode 100644 index 1e5efe8..0000000 --- a/admin-client/src/views/Apps/T_Image_Configs/Info.vue +++ /dev/null @@ -1,188 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue b/admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue deleted file mode 100644 index 5efd185..0000000 --- a/admin-client/src/views/Apps/T_User_Currency_Logs/Info.vue +++ /dev/null @@ -1,107 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/M_MusicGenress/Index.vue b/admin-client/src/views/apps/M_MusicGenress/Index.vue deleted file mode 100644 index ff0bae1..0000000 --- a/admin-client/src/views/apps/M_MusicGenress/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/M_MusicGenress/Info.vue b/admin-client/src/views/apps/M_MusicGenress/Info.vue deleted file mode 100644 index bcedd18..0000000 --- a/admin-client/src/views/apps/M_MusicGenress/Info.vue +++ /dev/null @@ -1,102 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/M_Songss/Index.vue b/admin-client/src/views/apps/M_Songss/Index.vue deleted file mode 100644 index 9be9ce7..0000000 --- a/admin-client/src/views/apps/M_Songss/Index.vue +++ /dev/null @@ -1,233 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/M_Songss/Info.vue b/admin-client/src/views/apps/M_Songss/Info.vue deleted file mode 100644 index 17e5c35..0000000 --- a/admin-client/src/views/apps/M_Songss/Info.vue +++ /dev/null @@ -1,147 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Category_Child_Menus/Index.vue b/admin-client/src/views/apps/T_Category_Child_Menus/Index.vue deleted file mode 100644 index 51d4afe..0000000 --- a/admin-client/src/views/apps/T_Category_Child_Menus/Index.vue +++ /dev/null @@ -1,371 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_Category_Child_Menus/Info.vue b/admin-client/src/views/apps/T_Category_Child_Menus/Info.vue deleted file mode 100644 index fd4e33b..0000000 --- a/admin-client/src/views/apps/T_Category_Child_Menus/Info.vue +++ /dev/null @@ -1,197 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_Character_Label_Relations/Index.vue b/admin-client/src/views/apps/T_Character_Label_Relations/Index.vue deleted file mode 100644 index 3248d36..0000000 --- a/admin-client/src/views/apps/T_Character_Label_Relations/Index.vue +++ /dev/null @@ -1,242 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Label_Relations/Info.vue b/admin-client/src/views/apps/T_Character_Label_Relations/Info.vue deleted file mode 100644 index 01c5615..0000000 --- a/admin-client/src/views/apps/T_Character_Label_Relations/Info.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue b/admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue deleted file mode 100644 index 3566919..0000000 --- a/admin-client/src/views/apps/T_Character_Personality_Relations/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue b/admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue deleted file mode 100644 index 35196f2..0000000 --- a/admin-client/src/views/apps/T_Character_Personality_Relations/Info.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personalitys/Index.vue b/admin-client/src/views/apps/T_Character_Personalitys/Index.vue deleted file mode 100644 index e777986..0000000 --- a/admin-client/src/views/apps/T_Character_Personalitys/Index.vue +++ /dev/null @@ -1,237 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Personalitys/Info.vue b/admin-client/src/views/apps/T_Character_Personalitys/Info.vue deleted file mode 100644 index 8798df8..0000000 --- a/admin-client/src/views/apps/T_Character_Personalitys/Info.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue b/admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue deleted file mode 100644 index babb66f..0000000 --- a/admin-client/src/views/apps/T_Character_Type_Intimacys/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue b/admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue deleted file mode 100644 index 2e688d6..0000000 --- a/admin-client/src/views/apps/T_Character_Type_Intimacys/Info.vue +++ /dev/null @@ -1,102 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Types/Index.vue b/admin-client/src/views/apps/T_Character_Types/Index.vue deleted file mode 100644 index 260b4f7..0000000 --- a/admin-client/src/views/apps/T_Character_Types/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Character_Types/Info.vue b/admin-client/src/views/apps/T_Character_Types/Info.vue deleted file mode 100644 index d6aace1..0000000 --- a/admin-client/src/views/apps/T_Character_Types/Info.vue +++ /dev/null @@ -1,97 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Chats/Index.vue b/admin-client/src/views/apps/T_Chats/Index.vue deleted file mode 100644 index bef0a6f..0000000 --- a/admin-client/src/views/apps/T_Chats/Index.vue +++ /dev/null @@ -1,247 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Chats/Info.vue b/admin-client/src/views/apps/T_Chats/Info.vue deleted file mode 100644 index e268ad2..0000000 --- a/admin-client/src/views/apps/T_Chats/Info.vue +++ /dev/null @@ -1,157 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Model_Configs/Index.vue b/admin-client/src/views/apps/T_Model_Configs/Index.vue deleted file mode 100644 index ff9fc2f..0000000 --- a/admin-client/src/views/apps/T_Model_Configs/Index.vue +++ /dev/null @@ -1,251 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Model_Configs/Info.vue b/admin-client/src/views/apps/T_Model_Configs/Info.vue deleted file mode 100644 index 1b5777e..0000000 --- a/admin-client/src/views/apps/T_Model_Configs/Info.vue +++ /dev/null @@ -1,242 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_OrderItemss/Index.vue b/admin-client/src/views/apps/T_OrderItemss/Index.vue deleted file mode 100644 index e9cac1e..0000000 --- a/admin-client/src/views/apps/T_OrderItemss/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_OrderItemss/Info.vue b/admin-client/src/views/apps/T_OrderItemss/Info.vue deleted file mode 100644 index 76c775e..0000000 --- a/admin-client/src/views/apps/T_OrderItemss/Info.vue +++ /dev/null @@ -1,117 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Orders/Index.vue b/admin-client/src/views/apps/T_Orders/Index.vue deleted file mode 100644 index 10afa3e..0000000 --- a/admin-client/src/views/apps/T_Orders/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Orders/Info.vue b/admin-client/src/views/apps/T_Orders/Info.vue deleted file mode 100644 index 47f0bbb..0000000 --- a/admin-client/src/views/apps/T_Orders/Info.vue +++ /dev/null @@ -1,149 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Products_Rewards/Index.vue b/admin-client/src/views/apps/T_Products_Rewards/Index.vue deleted file mode 100644 index 498be6e..0000000 --- a/admin-client/src/views/apps/T_Products_Rewards/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Products_Rewards/Info.vue b/admin-client/src/views/apps/T_Products_Rewards/Info.vue deleted file mode 100644 index c6d658d..0000000 --- a/admin-client/src/views/apps/T_Products_Rewards/Info.vue +++ /dev/null @@ -1,155 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_Productss/Index.vue b/admin-client/src/views/apps/T_Productss/Index.vue deleted file mode 100644 index ab3c0eb..0000000 --- a/admin-client/src/views/apps/T_Productss/Index.vue +++ /dev/null @@ -1,584 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_Productss/Info.vue b/admin-client/src/views/apps/T_Productss/Info.vue deleted file mode 100644 index 0fd0b7a..0000000 --- a/admin-client/src/views/apps/T_Productss/Info.vue +++ /dev/null @@ -1,206 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_Productss/InfoRawards.vue b/admin-client/src/views/apps/T_Productss/InfoRawards.vue deleted file mode 100644 index 6596caa..0000000 --- a/admin-client/src/views/apps/T_Productss/InfoRawards.vue +++ /dev/null @@ -1,137 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_Productss/Rewards.vue b/admin-client/src/views/apps/T_Productss/Rewards.vue deleted file mode 100644 index 66e2ba5..0000000 --- a/admin-client/src/views/apps/T_Productss/Rewards.vue +++ /dev/null @@ -1,165 +0,0 @@ - - - diff --git a/admin-client/src/views/apps/T_User_Currency_Logs/Index.vue b/admin-client/src/views/apps/T_User_Currency_Logs/Index.vue deleted file mode 100644 index a9259df..0000000 --- a/admin-client/src/views/apps/T_User_Currency_Logs/Index.vue +++ /dev/null @@ -1,247 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Currencys/Index.vue b/admin-client/src/views/apps/T_User_Currencys/Index.vue deleted file mode 100644 index 0501954..0000000 --- a/admin-client/src/views/apps/T_User_Currencys/Index.vue +++ /dev/null @@ -1,242 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Currencys/Info.vue b/admin-client/src/views/apps/T_User_Currencys/Info.vue deleted file mode 100644 index dfeefa3..0000000 --- a/admin-client/src/views/apps/T_User_Currencys/Info.vue +++ /dev/null @@ -1,102 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_IntentOrders/Index.vue b/admin-client/src/views/apps/T_User_IntentOrders/Index.vue deleted file mode 100644 index 9da395c..0000000 --- a/admin-client/src/views/apps/T_User_IntentOrders/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_IntentOrders/Info.vue b/admin-client/src/views/apps/T_User_IntentOrders/Info.vue deleted file mode 100644 index 22aaf14..0000000 --- a/admin-client/src/views/apps/T_User_IntentOrders/Info.vue +++ /dev/null @@ -1,137 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue b/admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue deleted file mode 100644 index c7dba66..0000000 --- a/admin-client/src/views/apps/T_User_Phone_Accounts/Index.vue +++ /dev/null @@ -1,242 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue b/admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue deleted file mode 100644 index 185e787..0000000 --- a/admin-client/src/views/apps/T_User_Phone_Accounts/Info.vue +++ /dev/null @@ -1,117 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Users/Index.vue b/admin-client/src/views/apps/T_Users/Index.vue deleted file mode 100644 index 1e20169..0000000 --- a/admin-client/src/views/apps/T_Users/Index.vue +++ /dev/null @@ -1,247 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Users/Info.vue b/admin-client/src/views/apps/T_Users/Info.vue deleted file mode 100644 index b173a84..0000000 --- a/admin-client/src/views/apps/T_Users/Info.vue +++ /dev/null @@ -1,137 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Verification_Codes/Index.vue b/admin-client/src/views/apps/T_Verification_Codes/Index.vue deleted file mode 100644 index a4ab7c4..0000000 --- a/admin-client/src/views/apps/T_Verification_Codes/Index.vue +++ /dev/null @@ -1,232 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-client/src/views/apps/T_Verification_Codes/Info.vue b/admin-client/src/views/apps/T_Verification_Codes/Info.vue deleted file mode 100644 index f9e195e..0000000 --- a/admin-client/src/views/apps/T_Verification_Codes/Info.vue +++ /dev/null @@ -1,112 +0,0 @@ - - - \ No newline at end of file diff --git a/admin-server/MiaoYu.Admin.sln b/admin-server/MiaoYu.Admin.sln index 3aab373..22b361c 100644 --- a/admin-server/MiaoYu.Admin.sln +++ b/admin-server/MiaoYu.Admin.sln @@ -45,8 +45,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiaoYu.WinFormDemo", "MiaoY EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiaoYu.Shared.Admin", "MiaoYu.Shared.Admin\MiaoYu.Shared.Admin.csproj", "{925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiaoYu.Repository.ChatAI.Admin", "MiaoYu.Repository.ChatAI.Admin\MiaoYu.Repository.ChatAI.Admin.csproj", "{39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{735E8EDC-21A6-4604-B955-B40603B973FF}" ProjectSection(SolutionItems) = preProject .editorconfig = .editorconfig @@ -128,10 +126,6 @@ Global {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}.Debug|Any CPU.Build.0 = Debug|Any CPU {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}.Release|Any CPU.ActiveCfg = Release|Any CPU {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7}.Release|Any CPU.Build.0 = Release|Any CPU - {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF}.Release|Any CPU.Build.0 = Release|Any CPU {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7}.Debug|Any CPU.Build.0 = Debug|Any CPU {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -165,7 +159,6 @@ Global {452F4EDD-E92B-4673-B5FB-863595996614} = {DB46F54A-9F53-44EC-80F8-9E53F0B871CF} {75959B17-A901-49E1-A5E7-667349DC4203} = {DC7A7E4A-B4DC-4958-BAA5-2BBB1A153B5F} {925EF035-4A41-42E4-A3A4-B8E9AE52F6B7} = {DC7A7E4A-B4DC-4958-BAA5-2BBB1A153B5F} - {39C765DB-41E7-4BC6-B75E-2A90CFF3A8EF} = {451BE0BB-26ED-47ED-ABC7-23001D21410C} {3FBBDE5E-2D2C-428B-A2BF-298499ABA5A7} = {DB46F54A-9F53-44EC-80F8-9E53F0B871CF} {2AF20E5B-478F-46FE-8F8C-A385BB5D5EC7} = {451BE0BB-26ED-47ED-ABC7-23001D21410C} {428143F9-9D59-4DF6-A43A-41CA52C4E113} = {DB46F54A-9F53-44EC-80F8-9E53F0B871CF} diff --git a/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs b/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs index 0e75b58..215e75d 100644 --- a/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs +++ b/admin-server/MiaoYu.Api.Admin/ApiAdminStartup.cs @@ -15,7 +15,7 @@ namespace MiaoYu.Api.Admin; CoreRedisStartup, CoreIdentityStartup, AdminRepositoryStartup, - ChatAdminRepositoryStartup, + //ChatAdminRepositoryStartup, LiveForumAdminRepositoryStartup, CoreSwaggerJwtStartup, SharedAdminStartup, diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs deleted file mode 100644 index 6f79fe9..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_MusicGenresService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 存储不同音乐风格的信息。 服务 M_MusicGenresService -/// -public class M_MusicGenresService : ApplicationService> -{ - public M_MusicGenresService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.GenreName,w.Description,w.TenantId,w.OrderId,w.IsEnabled, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(M_MusicGenres form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs deleted file mode 100644 index 2907332..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/M_SongsService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 存储所有生成的歌曲的信息。 服务 M_SongsService -/// -public class M_SongsService : ApplicationService> -{ - public M_SongsService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.Title,w.AuthorId,w.Genre,w.Lyrics,w.IsPublic,w.CreationTimestamp,w.Duration,w.PlayCount,w.LikeCount,w.DownloadCount,w.MusicAddress,w.CoverImage,w.GenreId, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(M_Songs form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs deleted file mode 100644 index ba83feb..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/TImageConfigService.cs +++ /dev/null @@ -1,173 +0,0 @@ -using HZY.Framework.Repository.EntityFramework.Extensions; - -using IdGen; - -using MiaoYu.Repository.ChatAI.Admin.Entities; - -using NPOI.SS.Formula.Functions; -using NPOI.Util; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 图片表 服务 TImageConfigService -/// -public class TImageConfigService : ApplicationService> -{ - public TImageConfigService(IRepository defaultRepository) - : base(defaultRepository) - { - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - if (pagingSearchInput == null) - { - pagingSearchInput = new PagingSearchInput(); - } - var query = this._defaultRepository.Select - .WhereIf(pagingSearchInput != null && !string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Name), w => w.Name.Contains(pagingSearchInput.Search.Name ?? "")) - //.WhereIf(pagingSearchInput.Search?.TenantId != null, - //w => w.TenantId == pagingSearchInput.Search.TenantId) - .WhereIf(pagingSearchInput != null && pagingSearchInput.Search?.ImageType > 0, w => w.ImageType == pagingSearchInput.Search.ImageType) - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.ImageId, - w.Name, - w.Url, - w.OssPath, - w.Bucket, - w.Region, - w.UpdateAt, - w.TenantId, - w.ImageType - //w.LastModificationTime, - //w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - - // 覆盖值 - //result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - - // 设置列 - result.GetColumn(query, w => w.Url).SetColumn(width: ""); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public async Task SaveFormAsync(T_Image_Config form, bool isUpdate) - { - form.UpdateAt = DateTime.Now; - if (form.CreateAt == DateTime.MinValue) - { - form.CreateAt = DateTime.Now; - } - - //var isUpdate = false; - //if (form.Id != 0) - //{ - // var _tempform = this._defaultRepository.FindById(form.Id); - // if (_tempform != null) - // { - // form.CreateAt = _tempform.CreateAt; - // isUpdate = true; - // } - //} - var x = await this._defaultRepository.InsertOrUpdateAsync(form); - if (x.ImageId == 0 && !isUpdate) - { - x.ImageId = x.Id; - } - await this._defaultRepository.InsertOrUpdateAsync(x); - return x; - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - /// - /// 获取图片url - /// - /// - /// - public async Task GetImageUrl(int imageId) - { - var form = await this._defaultRepository.GetAsync(it => it.ImageId == imageId); - return form?.Url ?? ""; - } - - - /// - /// 获取图片列表 - /// - /// - /// - public async Task GetImageList(string name) - { - var list = await this._defaultRepository.Select - .WhereIf(name!=null&&!string.IsNullOrEmpty(name.Trim()), w => w.Name.Contains(name)) - .OrderByDescending(w => w.Id).Take(20) - .Select(w => new - { - w.ImageId, - w.Name, - w.Url, - }).ToListAsync() - ; - return list; - } - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs deleted file mode 100644 index 600bb6f..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Category_Child_MenuService.cs +++ /dev/null @@ -1,187 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; - -using TencentCloud.Tsf.V20180326.Models; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 发现页类别菜单 服务 T_Category_Child_MenuService -/// -public class T_Category_Child_MenuService( - IRepository defaultRepository, - IRepository imageRepository, - IRepository character, - IRepository sysDictionary) - : ApplicationService>(defaultRepository) -{ - - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - .WhereIf(!string.IsNullOrEmpty(pagingSearchInput.Search?.Type), - w => w.Type == pagingSearchInput.Search.Type) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - TypeName = "", - w.TenantId, - w.Id, - w.Type, - Name = w.Name == null && w.ActionType == "Chat" ? character.Select.FirstOrDefault(it => it.Id.ToString() == w.ActionId).Name : w.Name, - w.ActionId, - w.ActionType, - ImageId = w.ImageId == 0 && w.ActionType == "Chat" ? character.Select.FirstOrDefault(it => it.Id.ToString() == w.ActionId).BgImg : w.ImageId, - w.OrderById, - w.ImageUrl, - w.IsEnabled, - w.SubTitle, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - - var imageIds = new List(); - result.DataSource.ForEach(it => - { - - if (it.TryGetValue("ImageId", out var bgImg)) - { - if (int.TryParse(bgImg?.ToString()?? "0", out var t)) - { - imageIds.Add(t); - } - } - - - }); - var imageList = imageRepository.GetAllList(it => imageIds.Contains(it.ImageId)); - - - result.DataSource.ForEach(it => - { - if (it.TryGetValue("Type", out var type)) - { - it["TypeName"] = sysDictionary.Select.FirstOrDefault(item => item.Code == type.ToString())?.Name ?? ""; - } - if (string.IsNullOrEmpty(it["ImageUrl"]?.ToString())) - { - setImageId(it, imageList, "ImageId", "ImageUrl"); - } - - }); - return result; - } - - private void setImageId(Dictionary it, List imageList, string key, string keyurl) - { - it.TryAdd(keyurl, ""); - if (it.TryGetValue(key, out var bgImg)) - { - if (int.TryParse((bgImg ?? "0").ToString(), out var t)) - { - var img = imageList.FirstOrDefault(it => it.ImageId == t); - if (img != null) - { - it[keyurl] = img.Url ?? ""; - } - } - } - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - //form = form.NullSafe(); - if (form == null) - { - form = new T_Category_Child_Menu() - { - IsEnabled = true - }; - } - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Category_Child_Menu form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - /// - /// 修改状态 - /// - /// - /// - /// - - public async Task UpdateState(bool state, int id) - { - var form = await this._defaultRepository.FindByIdAsync(id); - if (form == null) - { - return false; - } - form.IsEnabled = state; - await SaveFormAsync(form); - return true; - } -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs deleted file mode 100644 index fb8eb04..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_CharacterService.cs +++ /dev/null @@ -1,223 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; - -using NPOI.SS.Formula.Functions; - -using TencentCloud.Tci.V20190318.Models; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 人物表 服务 T_CharacterService -/// -public class T_CharacterService( - IRepository defaultRepository, - IRepository T_Character_Label, - IRepository T_Character_Label_Relation, - IRepository T_Character_Personality, - IRepository T_Character_Personality_Relation, - IRepository T_Character_Type, - IRepository T_Character_Type_Intimacy, - IRepository imageRepository - ) - : ApplicationService>(defaultRepository) -{ - //public T_CharacterService() - // : base(defaultRepository) - //{ - - //} - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Name), - w => w.Name.Contains(pagingSearchInput.Search.Name ?? "")) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.Name, - w.Biography, - w.TenantId, - w.Prologue, - w.ModelConfigId, - w.Visibility, - w.CreateTime, - w.UpdateTime, - w.Gender, - w.System, - w.BgImg, - w.IconImg, - //标签 - Lables = T_Character_Label.Select.Where(l => - T_Character_Label_Relation.Select.Any(ll => ll.CharacterId == w.Id && ll.CharacterLabelId == l.Id) - ).Select(l => new - { - Name = l.LabelName, - Code = l.LabelValue ?? l.LabelName, - Value = l.Id - }).ToList(), - //分类 - Types = - T_Character_Type.Select.Where(t => - T_Character_Type_Intimacy.Select.Any(tt => tt.CharacterId == w.Id && tt.TypeId == t.Id) - ) - .Select(t => new - { - Name = t.Name, - Code = t.Name, - Value = t.Id - }).ToList(), - //性格 - Personas = - T_Character_Personality.Select.Where(p => - T_Character_Personality_Relation.Select.Any(pp => pp.CharacterId == w.Id && pp.PersonalityId == p.Id) - ) - .Select(p => new - { - Name = p.Name, - Code = p.Value ?? p.Name, - Value = p.Id - }).ToList(), - - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - var imageIds = new List(); - var characteIds = new List(); - - result.DataSource.ForEach(it => - { - characteIds.Add(int.Parse(it["Id"]?.ToString() ?? "0")); - if (it.TryGetValue("BgImg", out var bgImg)) - { - if (int.TryParse(bgImg.ToString(), out var t)) - { - imageIds.Add(t); - } - } - if (it.TryGetValue("IconImg", out var IconImg)) - { - if (int.TryParse(IconImg.ToString(), out var t)) - { - imageIds.Add(t); - } - } - - }); - var imageList = imageRepository.GetAllList(it => imageIds.Contains(it.ImageId)); - - - result.DataSource.ForEach(it => - { - setImageId(it, imageList, "BgImg", "BgImgUrl"); - setImageId(it, imageList, "IconImg", "IconImgUrl"); - }); - return result; - } - - private void setImageId(Dictionary it, List imageList, string key, string keyurl) - { - it.TryAdd(keyurl, ""); - if (it.TryGetValue(key, out var bgImg)) - { - if (int.TryParse(bgImg.ToString(), out var t)) - { - var img = imageList.FirstOrDefault(it => it.ImageId == t); - if (img != null) - { - it[keyurl] = img.Url ?? ""; - } - } - } - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - /// - /// 修改状态 - /// - /// - /// - /// - - public async Task UpdateState(bool state, int id) - { - var form = await this._defaultRepository.FindByIdAsync(id); - if (form == null) - { - return false; - } - form.Visibility = state; - await SaveFormAsync(form); - return true; - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs deleted file mode 100644 index 996c9d6..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_LabelService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 角色标签表 服务 T_Character_LabelService -/// -public class T_Character_LabelService : ApplicationService> -{ - public T_Character_LabelService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.LabelName,w.CreateTime,w.UpdateTime,w.LabelValue, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character_Label form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs deleted file mode 100644 index d4d08d7..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Label_RelationService.cs +++ /dev/null @@ -1,157 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 关联角色和标签 服务 T_Character_Label_RelationService -/// -public class T_Character_Label_RelationService : ApplicationService> -{ - public T_Character_Label_RelationService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - //人物Id - .WhereIf(pagingSearchInput.Search?.CharacterId!=null&&pagingSearchInput.Search?.CharacterId>0, - w => w.CharacterId== pagingSearchInput.Search.CharacterId) - - - //人物标签id - .WhereIf(pagingSearchInput.Search?.CharacterLabelId!=null&&pagingSearchInput.Search?.CharacterLabelId>0, - w => w.CharacterLabelId== pagingSearchInput.Search.CharacterLabelId) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.CharacterId,w.CharacterLabelId,w.CreateTime,w.UpdateTime, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character_Label_Relation form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(int id, List ids) - { - var list = await this._defaultRepository.Select.Where(it => it.CharacterId == id && ids.Contains(it.CharacterLabelId)).ToListAsync(); - await this._defaultRepository.DeleteAsync(list); - } - /// - /// 保存数据 - /// - /// form - /// - public async Task SaveFormAsync(int characterId, List ids) - { - var list = await this._defaultRepository.Select.Where(it => it.CharacterId == characterId).ToListAsync(); - await this._defaultRepository.DeleteAsync(list); - List newList = new List(); - foreach (var personalityId in ids) - { - var t_Character_Label_Relation = new T_Character_Label_Relation - { - CharacterId = characterId, - CreateTime = DateTime.Now, - CharacterLabelId = personalityId, - UpdateTime = DateTime.Now, - TenantId = Guid.Empty, - }; - //this._defaultRepository.Insert(t_Character_Label_Relation); - newList.Add(t_Character_Label_Relation); - } - //var delList = list.Where(it => newList.Any(item => item.CharacterId != it.PersonalityId)).ToList(); - //await this._defaultRepository.DeleteAsync(delList); - - return await this._defaultRepository.InsertRangeAsync(newList); - } - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs deleted file mode 100644 index fce628f..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_PersonalityService.cs +++ /dev/null @@ -1,119 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 角色性格表 服务 T_Character_PersonalityService -/// -public class T_Character_PersonalityService : ApplicationService> -{ - public T_Character_PersonalityService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - //性格名称 - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Name), - w => w.Name.Contains(pagingSearchInput.Search.Name ?? "")) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.Name,w.Value,w.CreateTime,w.UpdateTime, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character_Personality form) - { - form.UpdateTime = DateTime.Now; - if (form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs deleted file mode 100644 index 22097e2..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Personality_RelationService.cs +++ /dev/null @@ -1,158 +0,0 @@ -using IdGen; - -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; - -using NPOI.HSSF.Record.Chart; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 角色和性格关联表 服务 T_Character_Personality_RelationService -/// -public class T_Character_Personality_RelationService : ApplicationService> -{ - public T_Character_Personality_RelationService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - .WhereIf(pagingSearchInput.Search?.CharacterId != 0, - w => w.CharacterId == pagingSearchInput.Search.CharacterId) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId, - w.PersonalityId, - w.CharacterId, - w.CreateTime, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - - - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - //if (form. == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character_Personality_Relation form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(int id, List ids) - { - var list = await this._defaultRepository.Select.Where(it => it.CharacterId == id && ids.Contains(it.PersonalityId)).ToListAsync(); - await this._defaultRepository.DeleteAsync(list); - } - /// - /// 保存数据 - /// - /// form - /// - public async Task SaveFormAsync(int characterId, List ids) - { - var list = await this._defaultRepository.Select.Where(it => it.CharacterId == characterId).ToListAsync(); - await this._defaultRepository.DeleteAsync(list); - List newList = new List(); - foreach (var personalityId in ids) - { - var t_Character_Personality_Relation = new T_Character_Personality_Relation - { - CharacterId = characterId, - CreateTime = DateTime.Now, - PersonalityId = personalityId, - TenantId = Guid.Empty, - }; - //this._defaultRepository.Insert(t_Character_Personality_Relation); - newList.Add(t_Character_Personality_Relation); - } - //var delList = list.Where(it => newList.Any(item => item.CharacterId != it.PersonalityId)).ToList(); - //await this._defaultRepository.DeleteAsync(delList); - - return await this._defaultRepository.InsertRangeAsync(newList); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs deleted file mode 100644 index 44ff349..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_TypeService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 发现页类型分类 服务 T_Character_TypeService -/// -public class T_Character_TypeService : ApplicationService> -{ - public T_Character_TypeService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.Name,w.CreateTime,w.UpdateTime,w.TenantId,w.IsNotCategoryShow,w.OrderBy, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character_Type form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs deleted file mode 100644 index 77537fc..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Character_Type_IntimacyService.cs +++ /dev/null @@ -1,151 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 角色和角色类型关联表 服务 T_Character_Type_IntimacyService -/// -public class T_Character_Type_IntimacyService : ApplicationService> -{ - public T_Character_Type_IntimacyService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - .WhereIf(pagingSearchInput.Search?.CharacterId != 0, - w => w.CharacterId == pagingSearchInput.Search.CharacterId) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.TypeId,w.CharacterId,w.UpdateTIme,w.CreateTime,w.OrderBy, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Character_Type_Intimacy form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(int id, List ids) - { - var list = await this._defaultRepository.Select.Where(it => it.CharacterId == id && ids.Contains(it.TypeId)).ToListAsync(); - await this._defaultRepository.DeleteAsync(list); - } - /// - /// 保存数据 - /// - /// form - /// - public async Task SaveFormAsync(int characterId, List ids) - { - var list = await this._defaultRepository.Select.Where(it => it.CharacterId == characterId).ToListAsync(); - await this._defaultRepository.DeleteAsync(list); - List newList = new List(); - foreach (var personalityId in ids) - { - var t_Character_Type_Intimacy = new T_Character_Type_Intimacy - { - CharacterId = characterId, - CreateTime = DateTime.Now, - TypeId = personalityId, - OrderBy=1, - UpdateTIme=DateTime.Now, - TenantId = Guid.Empty, - }; - //this._defaultRepository.Insert(t_Character_Type_Intimacy); - newList.Add(t_Character_Type_Intimacy); - } - //var delList = list.Where(it => newList.Any(item => item.CharacterId != it.PersonalityId)).ToList(); - //await this._defaultRepository.DeleteAsync(delList); - - return await this._defaultRepository.InsertRangeAsync(newList); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs deleted file mode 100644 index 8966611..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ChatService.cs +++ /dev/null @@ -1,132 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 聊天记录表 服务 T_ChatService -/// -public class T_ChatService : ApplicationService> -{ - public T_ChatService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - //人物表Id - .WhereIf(pagingSearchInput.Search?.CharacterId != null && pagingSearchInput.Search?.CharacterId > 0, - w => w.CharacterId == pagingSearchInput.Search.CharacterId) - .WhereIf(pagingSearchInput.Search?.SessionId != Guid.Empty, - w => w.SessionId == pagingSearchInput.Search.SessionId) - //聊天内容 - .WhereIf(pagingSearchInput.Search?.UserId != null && pagingSearchInput.Search?.UserId > 0, - w => w.UserId == pagingSearchInput.Search.UserId) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId, - w.UserId, - w.Content, - w.TimeStamp, - w.CreateTime, - w.UpdateTime, - w.Input_tokens, - w.Output_tokens, - w.CharacterId, - w.Role, - w.SessionId, - w.SendDateDay, - w.SendMessageDay, - w.Type, - w.ClaudeType, - w.ClaudeId, - w.ClaudeModel, - w.Tokens, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Chat form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs deleted file mode 100644 index 805b461..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Model_ConfigService.cs +++ /dev/null @@ -1,136 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 模型配置表 服务 T_Model_ConfigService -/// -public class T_Model_ConfigService : ApplicationService> -{ - public T_Model_ConfigService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - - - - //模型名称 - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.ModelName), - w => w.ModelName.Contains(pagingSearchInput.Search.ModelName ?? "")) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.ModelName, - w.Model, - w.MaxTokens, - w.ApiKey, - w.Url, - w.AnthropicVersion, - w.CreateTime, - w.UpdateTime, - w.TenantId, - w.SystemTemplate, - w.RequestTemplate, - w.HeadersTemplate, - w.ResponseTemplate, - w.IsDefabult, - w.OtherTemplate, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Model_Config form) - { - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs deleted file mode 100644 index f1e9fc4..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderItemsService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 订单详情表 服务 T_OrderItemsService -/// -public class T_OrderItemsService : ApplicationService> -{ - public T_OrderItemsService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.ProductId,w.OrderId,w.RewardInfo,w.Product,w.PaymentInfo,w.RewardTips,w.PayUrl, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_OrderItems form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs deleted file mode 100644 index 755588d..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_OrderService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 订单完成表 服务 T_OrderService -/// -public class T_OrderService : ApplicationService> -{ - public T_OrderService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.OrderId,w.UserId,w.OrderDate,w.PaymentDate,w.PaymentMethod,w.ProductId,w.TotalPrice,w.Status,w.CreatedAt,w.UpdatedAt,w.PaymentDay, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Order form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs deleted file mode 100644 index c6a2fba..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_ProductsService.cs +++ /dev/null @@ -1,174 +0,0 @@ -using FreeSql; - -using MiaoYu.Repository.ChatAI.Admin.Entities; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; - -using TencentCloud.Tsf.V20180326.Models; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 商城表 服务 T_ProductsService -/// -public class T_ProductsService : ApplicationService> -{ - private IRepository imageRepository; - public T_ProductsService(IRepository defaultRepository, - IRepository imageRepository) - : base(defaultRepository) - { - this.imageRepository = imageRepository; - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - - - - //道具名称 - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.ProductName), - w => w.ProductName.Contains(pagingSearchInput.Search.ProductName ?? "")) - - - //道具类型 - .WhereIf(pagingSearchInput.Search?.ProductType != null && pagingSearchInput.Search?.ProductType > 0, - w => w.ProductType == pagingSearchInput.Search.ProductType) - .OrderBy(it=>it.ProductType).ThenBy(it=>it.OrderById) - .Select(w => new - { - w.Id, - w.TenantId, - w.ProductId, - w.ProductName, - w.ProductType, - w.ProductDesc, - w.Price, - w.ProductImgId, - w.IsProductDelisting, - w.IsFirstCharge, - w.FirstChargeImgId, - w.FirstChargePrice, - w.CreateTime, - w.UpdateTime, - w.OrderById, - ProductImg = w.ProductImgId == 0 ? "" : imageRepository.Select.FirstOrDefault(it => it.ImageId == w.ProductImgId).Url, - FirstChargeImg = (w.FirstChargeImgId == null || w.FirstChargeImgId == 0) ? "" : imageRepository.Select.FirstOrDefault(it => it.ImageId == w.FirstChargeImgId).Url - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - { - form.CreateTime = DateTime.Now; - } - if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - { - form.UpdateTime = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Products form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - /// - /// 修改首充状态 - /// - /// - /// - /// - - public async Task UpdateFirstCharge(bool state, int id) - { - var form = await this._defaultRepository.FindByIdAsync(id); - if (form == null) - { - return false; - } - form.IsFirstCharge = state; - await SaveFormAsync(form); - return true; - } - /// - /// 修改上架,下架状态 - /// - /// - /// - /// - - public async Task UpdateFirstCharge(int state, int id) - { - var form = await this._defaultRepository.FindByIdAsync(id); - if (form == null) - { - return false; - } - form.IsProductDelisting = state; - await SaveFormAsync(form); - return true; - } -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs deleted file mode 100644 index ae7ec54..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Products_RewardService.cs +++ /dev/null @@ -1,126 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 产品表奖励 服务 T_Products_RewardService -/// -public class T_Products_RewardService : ApplicationService> -{ - public T_Products_RewardService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.CurrencyType, - w.Money, - w.T_ProductId, - w.FirstChargeMoney, - w.ProductId, - w.TenantId, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - - /// - /// 获取列表数据 - /// - /// - /// - public async Task> FindListAsync(int productId) - { - var query = await this._defaultRepository.SelectNoTracking.Where(it => it.T_ProductId == productId).OrderByDescending(w => w.Id).ToListAsync(); - return query; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Products_Reward form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs deleted file mode 100644 index 1e6df90..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_UserService.cs +++ /dev/null @@ -1,145 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 用户表 服务 T_UserService -/// -public class T_UserService : ApplicationService> -{ - public T_UserService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - //邮箱 - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.Email), - w => w.Email.Contains(pagingSearchInput.Search.Email ?? "")) - //用户昵称 - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.NickName), - w => w.NickName.Contains(pagingSearchInput.Search.NickName ?? "")) - //手机号 - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.PhoneNum), - w => w.PhoneNum.Contains(pagingSearchInput.Search.PhoneNum ?? "")) - .OrderByDescending(w => w.LastLoginAt) - .Select(w => new - { - w.Id, - w.TenantId, - w.NickName, - w.UserName, - w.PhoneNum, - w.Email, - w.IsActive, - w.CreatedAt, - w.LastLoginTypeAt, - w.LastLoginAt, - w.UpdatedAt, - w.RegisterType, - w.Ip, - w.State, - w.IsTest - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - if (form.CreatedAt == null || form.CreatedAt == DateTime.MinValue) - { - form.CreatedAt = DateTime.Now; - } - if (form.UpdatedAt == null || form.UpdatedAt == DateTime.MinValue) - { - form.UpdatedAt = DateTime.Now; - } - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_User form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - /// - /// 修改是否是测试账号 - /// - /// - /// - /// - - public async Task UpdateIsTest(bool isTest, int id) - { - var form = await this._defaultRepository.FindByIdAsync(id); - if (form == null) - { - return false; - } - form.IsTest = isTest; - await SaveFormAsync(form); - return true; - } -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs deleted file mode 100644 index 5efec82..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_CurrencyService.cs +++ /dev/null @@ -1,119 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 用户货币表 服务 T_User_CurrencyService -/// -public class T_User_CurrencyService : ApplicationService> -{ - public T_User_CurrencyService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - //货币类型 - .WhereIf(pagingSearchInput.Search?.CurrencyType!=null&&pagingSearchInput.Search?.CurrencyType>0, - w => w.CurrencyType== pagingSearchInput.Search.CurrencyType) - - - //用户Id - .WhereIf(pagingSearchInput.Search?.UserId!=null&&pagingSearchInput.Search?.UserId>0, - w => w.UserId== pagingSearchInput.Search.UserId) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.CurrencyType,w.CurrencyName,w.CurrencyMoney,w.UpdateAt,w.CreateAt,w.UserId,w.TenantId, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_User_Currency form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs deleted file mode 100644 index 019a7db..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Currency_LogService.cs +++ /dev/null @@ -1,124 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 用户金额记录表 服务 T_User_Currency_LogService -/// -public class T_User_Currency_LogService : ApplicationService> -{ - public T_User_Currency_LogService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - //消耗类型 - .WhereIf(pagingSearchInput.Search?.ConsumeType!=null&&pagingSearchInput.Search?.ConsumeType>0, - w => w.ConsumeType== pagingSearchInput.Search.ConsumeType) - - - //金额类型 - .WhereIf(pagingSearchInput.Search?.CurrencyType!=null&&pagingSearchInput.Search?.CurrencyType>0, - w => w.CurrencyType== pagingSearchInput.Search.CurrencyType) - - - //用户 - .WhereIf(pagingSearchInput.Search?.UserId!=null&&pagingSearchInput.Search?.UserId>0, - w => w.UserId== pagingSearchInput.Search.UserId) - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId,w.UserId,w.CurrencyType,w.Consume,w.ConsumeType,w.Remarks,w.CreateTime,w.UpdateTime, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_User_Currency_Log form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs deleted file mode 100644 index 3f66388..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_IntentOrderService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 意向订单表 服务 T_User_IntentOrderService -/// -public class T_User_IntentOrderService : ApplicationService> -{ - public T_User_IntentOrderService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.UserId,w.ProductId,w.Method,w.Price,w.Quantity,w.Status,w.Notes,w.IntentDate,w.CreatedAt,w.UpdatedAt,w.TenantId,w.OrderId, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_User_IntentOrder form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs deleted file mode 100644 index 99b9beb..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_User_Phone_AccountService.cs +++ /dev/null @@ -1,116 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 手机号登录表 服务 T_User_Phone_AccountService -/// -public class T_User_Phone_AccountService : ApplicationService> -{ - public T_User_Phone_AccountService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId != null, - w => w.TenantId == pagingSearchInput.Search.TenantId) - .WhereIf(!string.IsNullOrWhiteSpace(pagingSearchInput.Search?.PhoneNum), - w => w.PhoneNum.Contains(pagingSearchInput.Search.PhoneNum ?? "")) - .WhereIf(pagingSearchInput.Search?.UserId != null && pagingSearchInput.Search?.UserId > 0, - w => w.UserId == pagingSearchInput.Search.UserId) - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.TenantId, - w.UserId, - w.PhoneNum, - w.VerificationCode, - w.LastLoginAt, - w.CreatedAt, - w.UpdatedAt, - w.NikeName, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_User_Phone_Account form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs deleted file mode 100644 index d5e052f..0000000 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/Apps/MiaoYuChat/T_Verification_CodeService.cs +++ /dev/null @@ -1,109 +0,0 @@ -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.ApplicationServices.Apps; - -/// -/// 验证码表 服务 T_Verification_CodeService -/// -public class T_Verification_CodeService : ApplicationService> -{ - public T_Verification_CodeService(IRepository defaultRepository) - : base(defaultRepository) - { - - } - - /// - /// 获取列表数据 - /// - /// - /// - public async Task FindListAsync(PagingSearchInput pagingSearchInput) - { - var query = this._defaultRepository.Select - - //项目 - .WhereIf(pagingSearchInput.Search?.TenantId!=null, - w => w.TenantId==pagingSearchInput.Search.TenantId) - - - - .OrderByDescending(w => w.Id) - .Select(w => new - { - w.Id, - w.Key,w.Code,w.CreateDay,w.ExpireAt,w.CreateAt,w.Remarks,w.TenantId,w.VerificationType, - // w.LastModificationTime, - // w.CreationTime - }) - ; - - var result = await _defaultRepository.AsPagingViewAsync(query, pagingSearchInput); - // result - // .FormatValue(query, w => w.CreationTime, (oldValue) => oldValue.ToString("yyyy-MM-dd")) - // .FormatValue(query, w => w.LastModificationTime, (oldValue) => oldValue?.ToString("yyyy-MM-dd")) - // ; - // 设置列 - //result.GetColumn(query, w => w.OperatorName).SetColumn("操作人"); - //result.GetColumn(query, w => w.OperatorName!).SetColumn(w => w.Name!); - - return result; - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - public async Task DeleteListAsync(List ids) - { - await this._defaultRepository.DeleteByIdsAsync(ids); - } - - /// - /// 查询表单数据 - /// - /// id - /// - public async Task> FindFormAsync(int id) - { - var res = new Dictionary(); - var form = await this._defaultRepository.FindByIdAsync(id); - form = form.NullSafe(); - //if (form.CreateTime == null || form.CreateTime == DateTime.MinValue) - //{ - // form.CreateTime = DateTime.Now; - //} - //if (form.UpdateTime == null || form.UpdateTime == DateTime.MinValue) - //{ - // form.UpdateTime = DateTime.Now; - //} - res[nameof(id)] = id; - res[nameof(form)] = form; - return res; - } - - /// - /// 保存数据 - /// - /// form - /// - public Task SaveFormAsync(T_Verification_Code form) - { - return this._defaultRepository.InsertOrUpdateAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - public async Task ExportExcelAsync(PagingSearchInput pagingSearchInput) - { - pagingSearchInput.Page = -1; - var tableViewModel = await this.FindListAsync(pagingSearchInput); - return ExcelUtil.ExportExcelByPagingView(tableViewModel, null, "Id"); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs b/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs index a6577e8..313ad55 100644 --- a/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs +++ b/admin-server/MiaoYu.Api.Admin/ApplicationServices/DevelopmentTools/LowCode/Impl/LowCodeTableService.cs @@ -1,7 +1,6 @@ using HZY.Framework.Repository.EntityFramework.Models.Standard; using MiaoYu.Repository.Admin.Entities.LowCode; -using MiaoYu.Repository.ChatAI.Admin.Entities; using MiaoYu.Shared.Admin.Models.LowCodes; using CoreColumnMetaConfig = MiaoYu.Core.CodeGenerator.Models.ColumnMetaConfig; diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/LiveForum/T_UsersController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/LiveForum/T_UsersController.cs index 0f3c1db..59cc760 100644 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/LiveForum/T_UsersController.cs +++ b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/LiveForum/T_UsersController.cs @@ -1,4 +1,5 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps.LiveForum; + +using MiaoYu.Api.Admin.ApplicationServices.Apps.LiveForum; using MiaoYu.Repository.LiveForum.Admin.Entities.Apps; namespace MiaoYu.Api.Admin.Controllers.Apps.LiveForum; diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs deleted file mode 100644 index 1ec577d..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_MusicGenresController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 存储不同音乐风格的信息。 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "存储不同音乐风格的信息。")] -public class M_MusicGenresController : AdminControllerBase -{ - public M_MusicGenresController(M_MusicGenresService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] M_MusicGenres form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] M_MusicGenres form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs deleted file mode 100644 index 47f40ff..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/M_SongsController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 存储所有生成的歌曲的信息。 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "存储所有生成的歌曲的信息。")] -public class M_SongsController : AdminControllerBase -{ - public M_SongsController(M_SongsService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] M_Songs form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] M_Songs form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs deleted file mode 100644 index 203eccf..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/TImageConfigController.cs +++ /dev/null @@ -1,141 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities; - -using Microsoft.AspNetCore.Http.Extensions; -using Microsoft.AspNetCore.Mvc.ModelBinding; - -using NPOI.HPSF; - -using System.Net; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 图片表 控制器 -/// -[ControllerDescriptor(MenuId = "44", DisplayName = "图片表")] -public class TImageConfigController : AdminControllerBase -{ - public TImageConfigController(TImageConfigService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public async Task CreateAsync([FromBody] T_Image_Config form) - { - - form.UpdateAt = DateTime.Now; - form.CreateAt = DateTime.Now; - var image = await this._defaultService.SaveFormAsync(form, false); - return image?.ImageId ?? 0; - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public async Task UpdateAsync([FromBody] T_Image_Config form) - { - form.UpdateAt = DateTime.Now; - var image = await this._defaultService.SaveFormAsync(form, true); - return image?.ImageId ?? 0; - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - /// - /// 获取图片 - /// - /// - [ActionDescriptor(DisplayName = "获取图片")] - [HttpGet("{imageId?}")] - [AllowAnonymous] - public async Task Image([FromRoute] int imageId) - { - var url = await this._defaultService.GetImageUrl(imageId); - if (!string.IsNullOrEmpty(url)) - { - Response.Redirect(url); - } - } - - /// - /// 获取图片数据源 - /// - /// - /// - [ActionDescriptor(DisplayName = "获取图片数据源")] - [HttpGet] - public async Task GetImageList([FromQuery] string? name) - { - name = WebUtility.UrlDecode(name); - - return await this._defaultService.GetImageList(name); - } - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs deleted file mode 100644 index 7ef0bd7..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Category_Child_MenuController.cs +++ /dev/null @@ -1,111 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 发现页类别菜单 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "发现页类别菜单")] -public class T_Category_Child_MenuController : AdminControllerBase -{ - public T_Category_Child_MenuController(T_Category_Child_MenuService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Category_Child_Menu form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Category_Child_Menu form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - /// - /// 修改角色状态 - /// - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改角色状态")] - [HttpPost("{id?}/{v?}")] - public async Task UpdateState([FromRoute] int id, [FromRoute] int v) - { - return await this._defaultService.UpdateState(v == 0 ? false : true, id); - } - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs deleted file mode 100644 index 43d0fea..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_CharacterController.cs +++ /dev/null @@ -1,111 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 人物表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "人物表")] -public class T_CharacterController : AdminControllerBase -{ - public T_CharacterController(T_CharacterService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - /// - /// 修改角色状态 - /// - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改角色状态")] - [HttpPost("{id?}/{v?}")] - public async Task UpdateState([FromRoute] int id, [FromRoute] int v) - { - return await this._defaultService.UpdateState(v == 0 ? false : true, id); - } - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs deleted file mode 100644 index 2cd7a2b..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_LabelController.cs +++ /dev/null @@ -1,104 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 角色标签表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色标签表")] -public class T_Character_LabelController : AdminControllerBase -{ - public T_Character_LabelController(T_Character_LabelService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character_Label form) - { - form.CreateTime = DateTime.Now; - form.UpdateTime = DateTime.Now; - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character_Label form) - { - form.CreateTime = DateTime.Now; - form.UpdateTime = DateTime.Now; - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs deleted file mode 100644 index 0ede397..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Label_RelationController.cs +++ /dev/null @@ -1,130 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 关联角色和标签 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "关联角色和标签")] -public class T_Character_Label_RelationController : AdminControllerBase -{ - public T_Character_Label_RelationController(T_Character_Label_RelationService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character_Label_Relation form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character_Label_Relation form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost("{id?}")] - public async Task DeleteCIdListAsync([FromRoute] int id, [FromBody] List ids) - { - await this._defaultService.DeleteListAsync(id, ids); - return true; - } - - - /// - /// 批量配置标签 - /// - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "批量配置标签")] - [HttpPost(("{id?}"))] - [ApiCheckModel] - public Task SetCharacterLabel([FromRoute] int id, [FromBody] List ids) - { - return this._defaultService.SaveFormAsync(id, ids); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs deleted file mode 100644 index 5be03f9..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_PersonalityController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 角色性格表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色性格表")] -public class T_Character_PersonalityController : AdminControllerBase -{ - public T_Character_PersonalityController(T_Character_PersonalityService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character_Personality form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character_Personality form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs deleted file mode 100644 index 01ec0a5..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Personality_RelationController.cs +++ /dev/null @@ -1,131 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 角色和性格关联表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色和性格关联表")] -public class T_Character_Personality_RelationController : AdminControllerBase -{ - public T_Character_Personality_RelationController(T_Character_Personality_RelationService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character_Personality_Relation form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character_Personality_Relation form) - { - return this._defaultService.SaveFormAsync(form); - } - - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost("{id?}")] - public async Task DeleteCIdListAsync([FromRoute] int id, [FromBody] List ids) - { - await this._defaultService.DeleteListAsync(id, ids); - return true; - } - - - /// - /// 批量配置性格 - /// - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "批量配置性格")] - [HttpPost(("{id?}"))] - [ApiCheckModel] - public Task SetCharacterPersonality([FromRoute] int id, [FromBody] List ids) - { - return this._defaultService.SaveFormAsync(id, ids); - } - - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs deleted file mode 100644 index 084d7a7..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_TypeController.cs +++ /dev/null @@ -1,104 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 发现页类型分类 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "发现页类型分类")] -public class T_Character_TypeController : AdminControllerBase -{ - public T_Character_TypeController(T_Character_TypeService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character_Type form) - { - form.CreateTime = DateTime.Now; - form.UpdateTime = DateTime.Now; - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character_Type form) - { - form.CreateTime = DateTime.Now; - form.UpdateTime = DateTime.Now; - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs deleted file mode 100644 index 4bfd0e4..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Character_Type_IntimacyController.cs +++ /dev/null @@ -1,127 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 角色和角色类型关联表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "角色和角色类型关联表")] -public class T_Character_Type_IntimacyController : AdminControllerBase -{ - public T_Character_Type_IntimacyController(T_Character_Type_IntimacyService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Character_Type_Intimacy form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Character_Type_Intimacy form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost("{id?}")] - public async Task DeleteCIdListAsync([FromRoute] int id, [FromBody] List ids) - { - await this._defaultService.DeleteListAsync(id, ids); - return true; - } - - - /// - /// 批量配置类型 - /// - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "批量配置类型")] - [HttpPost(("{id?}"))] - [ApiCheckModel] - public Task SetCharacterTypes([FromRoute] int id, [FromBody] List ids) - { - return this._defaultService.SaveFormAsync(id, ids); - } - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs deleted file mode 100644 index 8f1f710..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ChatController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 聊天记录表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "聊天记录表")] -public class T_ChatController : AdminControllerBase -{ - public T_ChatController(T_ChatService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Chat form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Chat form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs deleted file mode 100644 index b112f92..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Model_ConfigController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 模型配置表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "模型配置表")] -public class T_Model_ConfigController : AdminControllerBase -{ - public T_Model_ConfigController(T_Model_ConfigService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Model_Config form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Model_Config form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs deleted file mode 100644 index e15ee2a..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 订单完成表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "订单完成表")] -public class T_OrderController : AdminControllerBase -{ - public T_OrderController(T_OrderService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Order form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Order form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs deleted file mode 100644 index 1c850de..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_OrderItemsController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 订单详情表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "订单详情表")] -public class T_OrderItemsController : AdminControllerBase -{ - public T_OrderItemsController(T_OrderItemsService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_OrderItems form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_OrderItems form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs deleted file mode 100644 index eedc26b..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_ProductsController.cs +++ /dev/null @@ -1,124 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 商城表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "商城表")] -public class T_ProductsController : AdminControllerBase -{ - public T_ProductsController(T_ProductsService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Products form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Products form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - /// - /// 修改角色状态 - /// - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改首充")] - [HttpPost("{id?}/{v?}")] - public async Task UpdateFirstCharge([FromRoute] int id, [FromRoute] int v) - { - return await this._defaultService.UpdateFirstCharge(v == 0 ? false : true, id); - } - - - /// - /// 修改角色状态 - /// - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改上线,下线")] - [HttpPost("{id?}/{v?}")] - public async Task UpdateState([FromRoute] int id, [FromRoute] int v) - { - return await this._defaultService.UpdateFirstCharge(v, id); - } - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs deleted file mode 100644 index d6bd6b2..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Products_RewardController.cs +++ /dev/null @@ -1,110 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 产品表奖励 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "产品表奖励")] -public class T_Products_RewardController : AdminControllerBase -{ - public T_Products_RewardController(T_Products_RewardService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpGet("{productId?}")] - public async Task> FindListAsync([FromRoute] int productId) - { - return await this._defaultService.FindListAsync(productId); - } - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Products_Reward form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Products_Reward form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs deleted file mode 100644 index c9b9170..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_UserController.cs +++ /dev/null @@ -1,111 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 用户表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "用户表")] -public class T_UserController : AdminControllerBase -{ - public T_UserController(T_UserService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_User form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_User form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - /// - /// 修改角色状态 - /// - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "修改角色状态")] - [HttpPost("{id?}/{isTest?}")] - public async Task UpdateIsTest(int id, bool isTest) - { - return await this._defaultService.UpdateIsTest(isTest, id); - } - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs deleted file mode 100644 index fac2812..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_CurrencyController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 用户货币表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "用户货币表")] -public class T_User_CurrencyController : AdminControllerBase -{ - public T_User_CurrencyController(T_User_CurrencyService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_User_Currency form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_User_Currency form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs deleted file mode 100644 index b8f989f..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Currency_LogController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 用户金额记录表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "用户金额记录表")] -public class T_User_Currency_LogController : AdminControllerBase -{ - public T_User_Currency_LogController(T_User_Currency_LogService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_User_Currency_Log form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_User_Currency_Log form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs deleted file mode 100644 index 174ddac..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_IntentOrderController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 意向订单表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "意向订单表")] -public class T_User_IntentOrderController : AdminControllerBase -{ - public T_User_IntentOrderController(T_User_IntentOrderService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_User_IntentOrder form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_User_IntentOrder form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs deleted file mode 100644 index 4ec3265..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_User_Phone_AccountController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 手机号登录表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "手机号登录表")] -public class T_User_Phone_AccountController : AdminControllerBase -{ - public T_User_Phone_AccountController(T_User_Phone_AccountService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_User_Phone_Account form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_User_Phone_Account form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs b/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs deleted file mode 100644 index 3d9969e..0000000 --- a/admin-server/MiaoYu.Api.Admin/Controllers/Apps/MiaoYuChat/T_Verification_CodeController.cs +++ /dev/null @@ -1,100 +0,0 @@ -using MiaoYu.Api.Admin.ApplicationServices.Apps; -using MiaoYu.Repository.ChatAI.Admin.Entities.Apps; -namespace MiaoYu.Api.Admin.Controllers.Apps; - -/// -/// 验证码表 控制器 -/// -[ControllerDescriptor(MenuId = "请设置菜单Id 系统菜单表中查找,如果不设置不受权限保护!", DisplayName = "验证码表")] -public class T_Verification_CodeController : AdminControllerBase -{ - public T_Verification_CodeController(T_Verification_CodeService defaultService) - : base(defaultService) - { - - } - - /// - /// 获取列表 - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Display, DisplayName = "查看数据")] - [HttpPost] - public Task FindListAsync([FromBody] PagingSearchInput pagingSearchInput) - { - return this._defaultService.FindListAsync(pagingSearchInput); - } - - /// - /// 根据id数组删除 - /// - /// ids - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Delete, DisplayName = "删除数据")] - [HttpPost] - public async Task DeleteListAsync([FromBody] List ids) - { - await this._defaultService.DeleteListAsync(ids); - return true; - } - - /// - /// 查询表单数据 - /// - /// id - /// - [ActionDescriptor(DisplayName = "查看表单")] - [HttpGet("{id?}")] - public Task> FindFormAsync([FromRoute] int id) - { - return this._defaultService.FindFormAsync(id); - } - - /// - /// 添加 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Insert, DisplayName = "创建表单")] - [HttpPost] - [ApiCheckModel] - public Task CreateAsync([FromBody] T_Verification_Code form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 编辑 - /// - /// - /// - [RequestLimitFilter(Duration = 1, LimitCount = 1)] - [ActionDescriptor(PermissionFunctionConsts.Function_Update, DisplayName = "编辑表单")] - [HttpPost] - [ApiCheckModel] - public Task UpdateAsync([FromBody] T_Verification_Code form) - { - return this._defaultService.SaveFormAsync(form); - } - - /// - /// 导出Excel - /// - /// - /// - [ActionDescriptor(PermissionFunctionConsts.Function_Export, DisplayName = "导出数据")] - [ApiResourceCacheFilter(10)] - [HttpPost] - public async Task ExportExcelAsync([FromBody] PagingSearchInput pagingSearchInput) - { - var data = await this._defaultService.ExportExcelAsync(pagingSearchInput); - var name = $"{PermissionUtil.GetControllerDisplayName(this.GetType())}列表数据 {DateTime.Now.ToString("yyyy-MM-dd")}.xls"; - base.HttpContext.DownLoadFile(data, Tools.GetFileContentType[".xls"].ToStr(), name); - } - - - - -} \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj index a6e0f75..4eb7daa 100644 --- a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj +++ b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.csproj @@ -28,7 +28,6 @@ - @@ -53,6 +52,7 @@ + diff --git a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml index e6360b3..73cb6a0 100644 --- a/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml +++ b/admin-server/MiaoYu.Api.Admin/MiaoYu.Api.Admin.xml @@ -169,1039 +169,6 @@ - - - 存储不同音乐风格的信息。 服务 M_MusicGenresService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 存储所有生成的歌曲的信息。 服务 M_SongsService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 图片表 服务 TImageConfigService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 获取图片url - - - - - - - 获取图片列表 - - - - - - - 发现页类别菜单 服务 T_Category_Child_MenuService - - - - - 发现页类别菜单 服务 T_Category_Child_MenuService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 修改状态 - - - - - - - - 人物表 服务 T_CharacterService - - - - - 人物表 服务 T_CharacterService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 修改状态 - - - - - - - - 角色标签表 服务 T_Character_LabelService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 关联角色和标签 服务 T_Character_Label_RelationService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 根据id数组删除 - - ids - - - - - 保存数据 - - form - - - - - 角色性格表 服务 T_Character_PersonalityService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 角色和性格关联表 服务 T_Character_Personality_RelationService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 根据id数组删除 - - ids - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 发现页类型分类 服务 T_Character_TypeService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 角色和角色类型关联表 服务 T_Character_Type_IntimacyService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 根据id数组删除 - - ids - - - - - 保存数据 - - form - - - - - 聊天记录表 服务 T_ChatService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 模型配置表 服务 T_Model_ConfigService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 订单详情表 服务 T_OrderItemsService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 订单完成表 服务 T_OrderService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 商城表 服务 T_ProductsService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 修改首充状态 - - - - - - - - 修改上架,下架状态 - - - - - - - - 产品表奖励 服务 T_Products_RewardService - - - - - 获取列表数据 - - - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 用户表 服务 T_UserService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 修改是否是测试账号 - - - - - - - - 用户货币表 服务 T_User_CurrencyService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 用户金额记录表 服务 T_User_Currency_LogService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 意向订单表 服务 T_User_IntentOrderService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 手机号登录表 服务 T_User_Phone_AccountService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - - - - 验证码表 服务 T_Verification_CodeService - - - - - 获取列表数据 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 保存数据 - - form - - - - - 导出Excel - - - - 会员服务 @@ -2234,1192 +1201,6 @@ - - - 存储不同音乐风格的信息。 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 存储所有生成的歌曲的信息。 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 图片表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 获取图片 - - - - - - 获取图片数据源 - - - - - - - 发现页类别菜单 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 修改角色状态 - - - - - - - - 人物表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 修改角色状态 - - - - - - - - 角色标签表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 关联角色和标签 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 根据id数组删除 - - ids - - - - - 批量配置标签 - - - - - - - - 角色性格表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 角色和性格关联表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 根据id数组删除 - - ids - - - - - 批量配置性格 - - - - - - - - 导出Excel - - - - - - - 发现页类型分类 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 角色和角色类型关联表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 根据id数组删除 - - ids - - - - - 批量配置类型 - - - - - - - - 聊天记录表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 模型配置表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 订单完成表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 订单详情表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 商城表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 修改角色状态 - - - - - - - - 修改角色状态 - - - - - - - - 产品表奖励 控制器 - - - - - 获取列表 - - - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 用户表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 修改角色状态 - - - - - - - - 用户货币表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 用户金额记录表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 意向订单表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 手机号登录表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - - - - 验证码表 控制器 - - - - - 获取列表 - - - - - - - 根据id数组删除 - - ids - - - - - 查询表单数据 - - id - - - - - 添加 - - - - - - - 编辑 - - - - - - - 导出Excel - - - - 会员控制器 diff --git a/admin-server/MiaoYu.Api.Admin/Usings.cs b/admin-server/MiaoYu.Api.Admin/Usings.cs index db32c09..a3b5be1 100644 --- a/admin-server/MiaoYu.Api.Admin/Usings.cs +++ b/admin-server/MiaoYu.Api.Admin/Usings.cs @@ -84,4 +84,3 @@ global using System.Reflection; global using System.Text; global using System.Text.Encodings.Web; global using System.Text.Unicode; -global using MiaoYu.Repository.ChatAI.Admin; \ No newline at end of file diff --git a/admin-server/MiaoYu.Api.Admin/appsettings.Development.json b/admin-server/MiaoYu.Api.Admin/appsettings.Development.json index c45a817..dd6e595 100644 --- a/admin-server/MiaoYu.Api.Admin/appsettings.Development.json +++ b/admin-server/MiaoYu.Api.Admin/appsettings.Development.json @@ -20,14 +20,6 @@ //// 连接字符串 - oracle //"ConnectionString": "user id=hzy_admin_oracle_20221213;password=123456; data source=//127.0.0.1:1521/orcl;Pooling=true;Min Pool Size=1" }, - "ChatAdminRepositoryOptions": { - //默认数据库类型 SqlServer 、MySql 、PostgreSql、Oracle - "DefaultDatabaseType": "SqlServer", - //是否监控EFCore程序 - "IsMonitorEFCore": true, - "ConnectionString": "Server=192.168.195.15;Database=MiaoYu;User ID=sa;Password=Dbt@com@123;MultipleActiveResultSets=true;Encrypt=True;TrustServerCertificate=True;" - - }, "LiveForumAdminRepositoryOptions": { //默认数据库类型 SqlServer 、MySql 、 "DefaultDatabaseType": "SqlServer",