import 'dart:async'; import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:get/get.dart'; import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_state.dart'; import '../../../../network/api_repository.dart'; import '../../../../tools/baseGetXController.dart'; import 'minePersonGetUploadFileInfo_entity.dart'; class MinePersonInfoLogic extends GetConnect{ final MinePersonInfoState state = MinePersonInfoState(); //用户信息 Future getUserInfoRequest() async { var entity = await ApiRepository.to.getUserInfo(""); if (entity.errorCode!.codeIsSuccessful) { state.mineInfoData.value = entity.data!; state.nickname.value = entity.data!.nickname!; state.mobileStr.value = entity.data!.mobile!; state.emailStr.value = entity.data!.email!; state.countryStr.value = entity.data!.countryName!; state.haveSafeAnswer.value = entity.data!.haveSafeAnswer!; } } //上传头像 先获取upToken 再调用updateUserInfo Future getUpTokenRequest(String filename, int size) async { var entity = await ApiRepository.to.getUpToken( module: 'avatar', typeKey: 'userId', type: state.mineInfoData.value.uid!.toString(), filename: filename, size: size ); if (entity.errorCode!.codeIsSuccessful) { uploadFile(entity); // print("aaaaa:$loginEntity"); } } // 上传头像 void uploadFile(MinePersonGetUploadFileInfoEntity minePersonGetUploadFileInfoEntity) async { // String json = JsonDecoder(minePersonGetUploadFileInfoEntity.data!.formData!); // var formData = FormData(); // // formData.files.add(MapEntry( // "files", //后台接收的名字 // MultipartFile(state.image!.path, filename: 'b'), // )); Map user = minePersonGetUploadFileInfoEntity.data!.formData!; user[minePersonGetUploadFileInfoEntity.data!.fileField!] = state.image!.path; final form = FormData(user); var entity = await ApiRepository.to.uploadFile( url: minePersonGetUploadFileInfoEntity.data!.uploadUrl!, body: form ); if (entity.errorCode!.codeIsSuccessful) { } // final formData = FormData.fromMap({ // 'file': await MultipartFile.fromFile(imageFile.path, contentType: MediaType.parse(mimeType)) // }); // final form = FormData(user); // Response response= await post(minePersonGetUploadFileInfoEntity.data!.uploadUrl, form); // print("statusText:${response.statusText} statusCode:${response.statusCode} response:$response"); } void postCases(List image) async { final form = FormData({ 'file': MultipartFile(image, filename: 'avatar.png'), 'otherFile': MultipartFile(image, filename: 'cover.png'), }); Response response= await post('http://youapi/users/upload', form); } //更新个人信息-头像 Future updateUserInfoRequest() async { var entity = await ApiRepository.to.updateUserInfo(state.headUrl.value); if (entity.errorCode!.codeIsSuccessful) { EasyLoading.showToast("操作成功", duration: 2000.milliseconds); } } @override void onReady() { // TODO: implement onReady super.onReady(); getUserInfoRequest(); } @override void onInit() { // TODO: implement onInit super.onInit(); getUserInfoRequest(); } @override void onClose() { // TODO: implement onClose } }