circle_app/circle_app/lib/app/feedback/logic.dart
2023-07-03 12:26:48 +08:00

53 lines
1.3 KiB
Dart

import 'dart:io';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
import 'package:get/get.dart';
import 'package:image_picker/image_picker.dart';
import 'package:qiniu_flutter_sdk/qiniu_flutter_sdk.dart';
import '../../common/config.dart';
import '../../network/api.dart';
import '../../network/dio_manager.dart';
import '../../util/qiniu.dart';
import 'state.dart';
class FeedbackLogic extends GetxController {
final FeedbackState state = FeedbackState();
final ImagePicker _picker = ImagePicker();
var storage = Storage();
var quToken = '';
@override
void onInit() async{
super.onInit();
var data =
await DioManager.instance.get(url: Api.getqiniuToken, params: {});
var bean = BaseResponse<QnTokenData>.fromJson(
data, (data) => QnTokenData.fromJson(data));
if(bean.isSuccess()){
quToken = bean.data!.token.toString();
}
}
Future getImageFile() async {
try {
final XFile? pickedFile = await _picker.pickImage(
source: ImageSource.gallery,
);
if(null==pickedFile){
return;
}
SmartDialog.showLoading();
upDataImage(quToken,pickedFile!,CONFIG.USER_INFO_AVATAR,(result){
SmartDialog.dismiss(force: true);
state.imaglist.add(result);
update();
});
} catch (e) {
}
}
}