using HiTeachCE.Models; using HiTeachCE.Services; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using TEAMModelOS.SDK.Extension.DataResult.JsonRpcRequest; using TEAMModelOS.SDK.Extension.DataResult.JsonRpcResponse; using TEAMModelOS.SDK.Extension.JwtAuth.Models; namespace HiTeachCE.Controllers { [Route("api/[controller]")] [ApiController] public class WeChatController :BaseController { public WeChatService weChatService; public WeChatController(WeChatService weChat) { weChatService = weChat; } /// /// 验证微信登录 /// /// /// [HttpPost("VerifyWeChat")] [AllowAnonymous] public async Task VerifyWeChat(JosnRPCRequest> request) { JsonRPCResponseBuilder responseBuilder = JsonRPCResponseBuilder.custom(); object obj = await weChatService.VerifyWeChat(request.@params); return responseBuilder.Data(obj).build(); } /// /// 获取微信登录配置 /// /// /// [HttpPost("GetWechatConfig")] [AllowAnonymous] public BaseJosnRPCResponse GetWechatConfig(JosnRPCRequest request) { JsonRPCResponseBuilder responseBuilder = JsonRPCResponseBuilder.custom(); Dictionary obj = weChatService.GetWechatConfig(request.@params); return responseBuilder.Data(obj).build(); } /// /// 验证小程序登录,获取信息 /// js_code :" " /// /// /// [HttpPost("VerifyMiniAPP")] [AllowAnonymous] public async Task VerifyMiniAPP(JosnRPCRequest> request) { JsonRPCResponseBuilder responseBuilder = JsonRPCResponseBuilder.custom(); MiniAPPLoginInfo obj = await weChatService.VerifyMiniAPP(request.@params); return responseBuilder.Data(obj).build(); } /// /// 获取小程序AccessToken /// /// /// [HttpPost("GetMiniAPPAccessToken")] [AllowAnonymous] public async Task GetMiniAPPAccessToken() { JsonRPCResponseBuilder responseBuilder = JsonRPCResponseBuilder.custom(); MiniAPPToken obj = await weChatService.GetMiniAPPAccessToken(); return responseBuilder.Data(obj).build(); } /// /// 小程序后端登录 /// code /// encryptedData /// iv /// signature /// /// /// [HttpPost("MiniAPPLogin")] [AllowAnonymous] public async Task MiniAPPLogin(JosnRPCRequest> request) { JsonRPCResponseBuilder responseBuilder = JsonRPCResponseBuilder.custom(); JwtResponse obj = await weChatService.MiniAPPLogin(request.@params); return responseBuilder.Data(obj).build(); } } }