// πŸ‘¨β€πŸ« ꡐ사 νšŒμ›κ°€μž… ν™”λ©΄μ˜ κΈ°λŠ₯(μ„œλ²„ 톡신/μƒνƒœ) λ‹΄λ‹Ή 컨트둀러. import 'dart:convert'; import 'package:flutter/foundation.dart'; import 'package:http/http.dart' as http; import '../config.dart'; class TeacherRegisterController extends ChangeNotifier { bool _isLoading = false; bool get isLoading => _isLoading; /// (성곡여뢀, λ©”μ‹œμ§€)λ₯Ό λ°˜ν™˜ν•œλ‹€ β€” UIκ°€ 성곡 μ‹œμ—λ§Œ 이전 ν™”λ©΄μœΌλ‘œ λŒμ•„κ°„λ‹€. Future<(bool success, String message)> registerTeacher({ required String id, required String password, required String name, required String secretCode, }) async { // πŸ’‘ ν…ŒμŠ€νŠΈμš© κ³ μœ κ°’ (μ‹€μ œ λ””λ°”μ΄μŠ€ UUID 연동 둜직이 μžˆλ‹€λ©΄ κ·Έκ±Έ λ„£μœΌμ„Έμš”) final String dummyUuid = "TEACHER_PHONE_$id"; _isLoading = true; notifyListeners(); try { final response = await http.post( Uri.parse('$baseUrl/api/users/register-teacher'), headers: {"Content-Type": "application/json"}, body: jsonEncode({ "teacherId": id, "password": password, "name": name, "secretCode": secretCode, "deviceUuid": dummyUuid, }), ); final res = jsonDecode(response.body); if (response.statusCode == 200 && res['status'] == 'success') { return (true, 'βœ… ${res['message']}'); } else { String errorMsg = res['detail'] ?? res['message'] ?? 'νšŒμ›κ°€μž…μ— μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.'; return (false, '❌ $errorMsg'); } } catch (e) { return (false, '❌ μ„œλ²„μ™€ 톡신에 μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.'); } finally { _isLoading = false; notifyListeners(); } } }