提交 8277b513 authored 作者: yueweilu's avatar yueweilu

同一注释

上级 9c6fe63b
......@@ -14,6 +14,7 @@ class AdController extends GetxController {
startTime();
}
/// 开启定时器
void startTime() {
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
if (_countdown > 0) {
......
part of answer;
class AnswerController extends GetxController {
// 刷新token
/// 刷新token
Future<String?> refreshToken() async {
final result = await CommonAPI.refreshToken();
return result;
......
part of book_detail;
class BookDetailController extends GetxController with GetSingleTickerProviderStateMixin{
// 图书id
final String bookId;
BookDetailController(this.bookId);
final PageController pageController = PageController(initialPage: 0);
List <Widget>tabs = [
const Tab(text: '目录',),
const Tab(text: '编辑推荐',),
......@@ -15,17 +15,15 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
];
late TabController tabController = TabController(length: tabs.length, vsync: this);
// 当前章节id
num currentChapterId = 0;
// 目录
List <ChapterModel> chapters = [];
// 图书
BookDetailModel bookDetails = BookDetailModel();
// 是否能点击
bool canTap = true;
@override
void onReady() {
getBookDetails();
......@@ -48,6 +46,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
}
}
/// 将当前章节数据写入数据
void writeCurrentReadChapterIdToData(List<ChapterModel> data) {
for(ChapterModel cModel in data){
cModel.currentRead = false;
......@@ -67,6 +66,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
}
/// 递归查找章节
ChapterModel? findChapterById(List<ChapterModel> data,num id){
for (ChapterModel cModel in data){
if(cModel.id == id){
......@@ -80,6 +80,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
return null;
}
/// 递归更新父节点状态
void updateParentsStatus(List<ChapterModel> data, ChapterModel model) {
ChapterModel? parentNode = findParentChapter(data, model);
while (parentNode != null) {
......@@ -88,6 +89,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
}
}
/// 寻找父节点
ChapterModel? findParentChapter(List<ChapterModel> data, ChapterModel model){
for (ChapterModel tModel in data){
if(tModel.id == model.pid){
......@@ -101,10 +103,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
return null;
}
/// 写入特定数据
void writeData(List<ChapterModel> listA, List<ChapterModel> listB){
for(int i = 0; i < listA.length;i++){
ChapterModel aModel = listA[i];
......@@ -163,7 +162,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
update();
}
// 获取当前的章节id
/// 获取当前的章节id
Future<String> getCurrentChapterId() async{
String chapterId = '';
bool netStatus = await Tools.checkCurrentNetStatus();
......@@ -176,7 +175,8 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
}
return chapterId;
}
// 获取当前的章节名称
/// 获取当前的章节名称
Future<String> getCurrentChapterName() async{
String chapterName = '';
bool netStatus = await Tools.checkCurrentNetStatus();
......@@ -193,8 +193,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
return chapterName;
}
// 判断是否存在离线文件
/// 判断是否存在离线文件
Future<bool> _isExistFile(String bookId) async {
bool existDownFile= false;
String directoryPath = await Tools.getDirectory();
......@@ -212,6 +211,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
return existDownFile;
}
/// 获取章节名称
String _getChapterName(String chapterId){
for (ChapterModel model in chapters){
if ('${model.id}' == chapterId){
......@@ -230,6 +230,4 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
}
}
\ No newline at end of file
......@@ -119,7 +119,6 @@ class BookPayController extends GetxController {
update();
}
/// 获取优惠前的价钱
/// 总价钱
double getOriginalPrice(){
......@@ -198,8 +197,6 @@ class BookPayController extends GetxController {
}
}
final result = await ShopAPI.createOrder(
bookIdsList:jsonEncode(bookIdsList) ,
totalPrice: finalPrice.toString(),
......@@ -244,7 +241,7 @@ class BookPayController extends GetxController {
}
// 支付宝支付
/// 支付宝支付
void requestAliPay(){
tobias.pay(payOrderModel.encryptionOrder!).then((payResult){
......@@ -259,7 +256,7 @@ class BookPayController extends GetxController {
});
}
// 微信支付
/// 微信支付
void requestWechat(){
Payment payment = Payment(
appId: payOrderModel.appid??'',
......@@ -284,6 +281,7 @@ class BookPayController extends GetxController {
});
}
/// 获取订单状态
void requestOrderStatus() async {
final result = await ShopAPI.orderStatus(orderNumber: payOrderModel.ordersnum??'',receipt: '');
if (result.paySuccess == 1){
......
part of book_score;
class BookScoreController extends GetxController {
// 书籍id
final String bookId;
BookScoreController(this.bookId);
......@@ -12,6 +13,12 @@ class BookScoreController extends GetxController {
// 评价列表
List<ScoreModel> scores = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
void onClose() {
......@@ -19,10 +26,6 @@ class BookScoreController extends GetxController {
super.onClose();
}
final int _limit = 10;
int _page = 1;
bool _noMore = false;
/// 获取课程内图书列表
Future<void> _getScores(String bookId, [bool isRefresh = false]) async {
if (isRefresh) _page = 1;
......@@ -37,6 +40,7 @@ class BookScoreController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getScores(bookId, true);
......@@ -47,6 +51,7 @@ class BookScoreController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -8,12 +8,13 @@ class BookshopController extends GetxController {
// 书架数组
List<CourseModel> carts = [];
// 是否全选
late bool all = false;
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否更多
bool _noMore = false;
@override
......@@ -28,7 +29,7 @@ class BookshopController extends GetxController {
super.onClose();
}
// 选中 与 取消选中
/// 选中 与 取消选中
void select(CourseModel courseModel) {
if (courseModel.status == 1) {
courseModel.selected = !courseModel.selected;
......@@ -47,7 +48,7 @@ class BookshopController extends GetxController {
update();
}
// 获取选中数量
/// 获取选中数量
int get num {
int num = 0;
for (CourseModel model in carts) {
......@@ -58,8 +59,8 @@ class BookshopController extends GetxController {
return num;
}
// 获取总价
//总价格
/// 获取总价
///总价格
double get allPrice {
Decimal price = Decimal.zero;
for (CourseModel model in carts) {
......@@ -91,7 +92,7 @@ class BookshopController extends GetxController {
}
* */
// 全选
/// 全选
void selectAll() {
if (all == false) {
for (CourseModel model in carts) {
......@@ -148,6 +149,7 @@ class BookshopController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await getCart(true);
......@@ -158,6 +160,7 @@ class BookshopController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......@@ -171,6 +174,7 @@ class BookshopController extends GetxController {
}
}
/// 测试数据
List<CourseModel> _test() {
return [
CourseModel(
......
......@@ -3,27 +3,22 @@ part of change_phone;
class ChangePhoneController extends GetxController {
// 账号
final TextEditingController phoneInput = TextEditingController();
// 验证码
final TextEditingController codeInput = TextEditingController();
// 定时器
late Timer _timer;
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
// 倒计时60秒
int _countDown = 60;
// 倒计时
int get countDown => _countDown;
// 是否开始倒计时
bool _isCounting = false;
bool get isCounting => _isCounting;
// 开启定时器
/// 开启定时器
void start() {
_isCounting = true;
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
......@@ -36,7 +31,7 @@ class ChangePhoneController extends GetxController {
});
}
// 停止计时器
/// 停止计时器
void stop() {
if (_timer != null) {
_timer.cancel();
......@@ -45,6 +40,7 @@ class ChangePhoneController extends GetxController {
_countDown = 60;
}
/// 是否可以点击
void setCanClick() {
if (phoneInput.text.length == 11 && codeInput.text.length == 6) {
_enable = true;
......@@ -77,6 +73,7 @@ class ChangePhoneController extends GetxController {
super.onClose();
}
/// 发送验证码
void sendCode() async {
final result = await AccountAPI.sendCode(phone: phoneInput.text, type: 'login');
if (result) {
......@@ -87,6 +84,7 @@ class ChangePhoneController extends GetxController {
}
}
/// 修改手机号
Future<bool> changePhone() async {
final result = await MineAPI.changePhone(
phone: phoneInput.text,
......
part of change_pwd;
class ChangePwdController extends GetxController {
// 用户信息模型
final UserInfoModel userInfo;
ChangePwdController(this.userInfo);
// 新密码
final TextEditingController pwdInput = TextEditingController();
// 确认密码
final TextEditingController pwd2Input = TextEditingController();
// 显示密码
final ValueNotifier<bool> showPassword = ValueNotifier(false);
// 显示密码
final ValueNotifier<bool> showPassword2 = ValueNotifier(false);
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
void onShowPassword() => showPassword.value = !showPassword.value;
void onShowPassword2() => showPassword2.value = !showPassword2.value;
/// 是否可点击
void setCanClick() {
if (ValidatorTool.isValidPassword(pwdInput.text) &&
ValidatorTool.isValidPassword(pwd2Input.text) &&
......@@ -45,6 +41,7 @@ class ChangePwdController extends GetxController {
super.onClose();
}
/// 更改密码
Future<bool> changePwd() async {
final result = await MineAPI.changePwd(
password: EncryptUtil.encodeMd5(EncryptUtil.encodeMd5(pwdInput.text)),
......
......@@ -3,20 +3,20 @@ part of course;
class CourseController extends GetxController {
// 课程数组
List<CourseModel> courses = [];
// 消息数组
List<AdModel> ads = [];
// 消息未读数
int num = 0;
final EasyRefreshController refreshController = EasyRefreshController(
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -64,6 +64,7 @@ class CourseController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getCourse(true);
......@@ -74,6 +75,7 @@ class CourseController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -3,27 +3,21 @@ part of forget_pwd;
class ForgetPwdController extends GetxController {
// 账号
final TextEditingController phoneInput = TextEditingController();
// 验证码
final TextEditingController codeInput = TextEditingController();
// 定时器
late Timer _timer;
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
// 倒计时60秒
int _countDown = 60;
int get countDown => _countDown;
bool _isCounting = false;
bool get isCounting => _isCounting;
// 开启定时器
/// 开启定时器
void start() {
_isCounting = true;
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
......@@ -36,7 +30,7 @@ class ForgetPwdController extends GetxController {
});
}
// 停止计时器
/// 停止计时器
void stop() {
if (_timer != null) {
_timer.cancel();
......@@ -45,6 +39,7 @@ class ForgetPwdController extends GetxController {
_countDown = 60;
}
/// 是否可点击
void setCanClick() {
if (ValidatorTool.isValidPhoneNumber(phoneInput.text) &&
codeInput.text.length == 6) {
......@@ -78,6 +73,7 @@ class ForgetPwdController extends GetxController {
super.onClose();
}
/// 发送验证码
void sendCode() async {
final result =
await AccountAPI.sendCode(phone: phoneInput.text, type: 'login');
......@@ -89,6 +85,7 @@ class ForgetPwdController extends GetxController {
}
}
/// 验证验证码
Future<bool> checkCode() async {
final result = await AccountAPI.checkCode(
phone: phoneInput.text, code: codeInput.text);
......
......@@ -6,9 +6,13 @@ class HelpCenterController extends GetxController {
controlFinishRefresh: true,
);
// 每页数量
final int _limit = 20;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
// 数据数组
List<HelpCenterModel> helpCenters = [];
@override
......@@ -30,6 +34,7 @@ class HelpCenterController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _gethelpCenters(true);
......@@ -40,6 +45,7 @@ class HelpCenterController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......@@ -53,6 +59,7 @@ class HelpCenterController extends GetxController {
}
}
/// 测试数据
List<HelpCenterModel> test() {
return [
HelpCenterModel(id: 1, helpTitle: '账号注册'),
......
part of help_cneter_content;
class HelpCenterContentController extends GetxController {
// 帮助id
final String id;
HelpCenterContentModel helpCenterContentModel = HelpCenterContentModel();
HelpCenterContentController(this.id);
// webview 控制器
late InAppWebViewController webViewController;
@override
......
......@@ -8,7 +8,6 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
List<CategoryModel> categories = [];
// 标签数据
List<LabelModel> labels = [];
// 广告数组
List<AdModel> ads = [];
// 选中标签
......@@ -19,10 +18,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
late FilterModel selectedFree = FilterModel();
// 选中排序的 方式
late FilterModel selectedDown = FilterModel();
// late TabController tabController = TabController(length:categories.length, vsync: this);
final EasyRefreshController refreshController = EasyRefreshController(
controlFinishLoad: true,
controlFinishRefresh: true,
......@@ -30,46 +26,35 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
// 图书列表数据
List<CourseModel> books = [];
// 分类数据
List<FilterModel> filterCategories = [];
// 标签数据
List<FilterModel> filterLabels = [];
// 是否收费
List<FilterModel> filterFree = [
FilterModel(id: '0', name: '收费',selected: false),
FilterModel(id: '1', name: '免费',selected: false)
];
// 读过、评分
List<FilterModel> filterDown = [
FilterModel(id: 'read_num', name: '读过'),
FilterModel(id: 'rating', name: '评分')
];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
// 动画控制器
late AnimationController _controller;
// 是否展示
bool _show = false;
// 更新模型
late UModel _getModel;
// 是否可点击收藏
bool canTap = true;
bool get show => _show;
void setShow(bool value) {
_show = !value;
if (_show) {
/// 开启动画
_controller.forward();
}
else {
/// 收回动画
_controller.reverse();
}
update();
}
AnimationController get controller => _controller;
......@@ -114,6 +99,20 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
super.onClose();
}
/// 是否展示
void setShow(bool value) {
_show = !value;
if (_show) {
/// 开启动画
_controller.forward();
}
else {
/// 收回动画
_controller.reverse();
}
update();
}
/// 重置
void resetFilter() {
for(FilterModel model in filterCategories){
......@@ -177,6 +176,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
/// 设置选中标签
void selectLabel(FilterModel model){
for (FilterModel m in filterLabels){
m.selected = false;
......@@ -186,6 +186,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
onRefresh();
}
/// 设置选中分类
void selectCategory(FilterModel model){
for (FilterModel m in filterCategories){
m.selected = false;
......@@ -231,7 +232,6 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
update(['label']);
}
/// 收藏 与 取消收藏
......@@ -303,7 +303,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
// 上传文件
/// 上传文件
Future<String> uploadSource({
required String path
}) async {
......@@ -315,7 +315,6 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
return response.realUri.toString();
}
/// 获取图书列表数据
Future<void> _getBooks([bool isRefresh = false]) async {
_getAds();
......@@ -360,6 +359,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
/// 刷新数据
void onRefresh() async {
try {
await _getBooks(true);
......@@ -371,6 +371,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......@@ -385,6 +386,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
}
/// 测试数据
void testInsertData() async{
Map<String, dynamic> data = {
'types': 1,
......@@ -402,6 +404,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
await SqlManager.insertData(data);
}
/// 检查更新
void _checkUpdates() async {
UModel model = await MineAPI.update();
_getModel = model;
......@@ -412,6 +415,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
}
}
/// 判断版本
int verifyVersion(String newVersion, String oldVersion) {
List<String> newVersionArr = newVersion.split('.');
List<String> oldVersionArr = oldVersion.split('.');
......@@ -430,6 +434,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
return 0; // 两个版本号相等
}
/// 展示更新dialog
_showUpdateDialog(bool forcedUpgrade) {
showDialog(
context: context,
......
......@@ -5,47 +5,66 @@ enum LoginType { code, password }
class LoginController extends GetxController {
// 0:密码登录 1:验证码登录
late int loginType = 0;
// 2、密码登录
// 账号
final TextEditingController phoneInput = TextEditingController();
// 密码
final TextEditingController passwordInput = TextEditingController();
// 验证码
final TextEditingController codeInput = TextEditingController();
// 显示密码
final ValueNotifier<bool> showPassword = ValueNotifier(false);
// 定时器
late Timer _timer;
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
// 倒计时60秒
int _countDown = 60;
int get countDown => _countDown;
bool _isCounting = false;
bool get isCounting => _isCounting;
// 同意协议
bool _agree = false;
bool get agree => _agree;
@override
void onInit() {
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
// 定时器回调
});
/// 测试账号
if (kDebugMode) {
phoneInput.text = '18810760819';
passwordInput.text = '1234567m';
// phoneInput.text = '17311837355';
// passwordInput.text = '12345678';
}
super.onInit();
}
@override
void onClose() {
phoneInput.dispose();
passwordInput.dispose();
showPassword.dispose();
codeInput.dispose();
_timer.cancel();
_isCounting = false;
super.onClose();
}
void onShowPassword() => showPassword.value = !showPassword.value;
/// 同意与否
void setAgree() {
_agree = !_agree;
update();
}
// 开启定时器
/// 开启定时器
void start() {
_isCounting = true;
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
......@@ -58,7 +77,7 @@ class LoginController extends GetxController {
});
}
// 停止计时器
/// 停止计时器
void stop() {
if (_timer != null) {
_timer.cancel();
......@@ -67,6 +86,7 @@ class LoginController extends GetxController {
_countDown = 60;
}
/// 是否可点击
void setCanClick() {
if (loginType == 0) {
if (ValidatorTool.isValidPhoneNumber(phoneInput.text) &&
......@@ -87,35 +107,7 @@ class LoginController extends GetxController {
update();
}
@override
void onInit() {
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
// 定时器回调
});
/// 测试账号
if (kDebugMode) {
phoneInput.text = '18810760819';
passwordInput.text = '1234567m';
// phoneInput.text = '17311837355';
// passwordInput.text = '12345678';
}
super.onInit();
}
@override
void onClose() {
phoneInput.dispose();
passwordInput.dispose();
showPassword.dispose();
codeInput.dispose();
_timer.cancel();
_isCounting = false;
super.onClose();
}
void onShowPassword() => showPassword.value = !showPassword.value;
/// 跟新登录类型
void updateLoginType(int value) {
stop();
loginType = value;
......@@ -165,6 +157,7 @@ class LoginController extends GetxController {
}
}
/// 发送验证码
void sendCode() async {
if (!agree) {
Toast.show('请先阅读并同意《用户协议》和《隐私政策》');
......
......@@ -3,7 +3,7 @@ part of main;
class MainController extends GetxController {
late final PageController pageController;
//默认显示
// 默认显示
int currentPage = 1;
@override
......@@ -18,6 +18,7 @@ class MainController extends GetxController {
super.onClose();
}
/// 页码变化
void onPageChanged(int page) {
currentPage = page;
update(['navigation']);
......
......@@ -3,16 +3,12 @@ part of mine;
class MineController extends GetxController {
// 广告数据
List<AdModel> ads = [];
// 个人信息数据
UserInfoModel userInfo = UserInfoModel();
// 笔记 讨论 错题 收藏
List<ReadModel> reads = [];
// 我的账户数据
List<ReadModel> accounts = [];
// 消息未读数
int num = 0;
......
......@@ -2,6 +2,7 @@ part of pay_coupon;
class PayCouponController extends GetxController with GetSingleTickerProviderStateMixin{
// 类型tag
final String tag;
final BookPayController payController;
PayCouponController(this.tag,this.payController){
......@@ -18,17 +19,18 @@ class PayCouponController extends GetxController with GetSingleTickerProviderSta
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 优惠券数据
CouponListModel couponListModel = CouponListModel();
// 优惠券
List <CouponModel> coupons = [];
// 每页数量
final int _limit = 10;
// 当前页面
int _page = 1;
// 是否没有更多
bool _noMore = false;
/// 获取优惠券
Future<void> _getCoupon([bool isRefresh = false]) async {
if (isRefresh) _page = 1;
// 网路请求
......@@ -42,7 +44,6 @@ class PayCouponController extends GetxController with GetSingleTickerProviderSta
model.type = num.parse(tag);
}
// 如果是刷新 清理数据
if (isRefresh) coupons.clear();
coupons.addAll(result.list!);
......@@ -52,6 +53,7 @@ class PayCouponController extends GetxController with GetSingleTickerProviderSta
}
/// 刷新数据
void onRefresh() async {
try {
await _getCoupon(true);
......@@ -62,6 +64,7 @@ class PayCouponController extends GetxController with GetSingleTickerProviderSta
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
part of reset_pwd;
class ResetPwdController extends GetxController {
// 手机号
final String phone;
// 验证码
final String code;
ResetPwdController({required this.phone, required this.code});
// 新密码
final TextEditingController pwdInput = TextEditingController();
// 确认密码
......@@ -14,7 +14,6 @@ class ResetPwdController extends GetxController {
final ValueNotifier<bool> showPassword = ValueNotifier(false);
// 显示密码
final ValueNotifier<bool> showPassword2 = ValueNotifier(false);
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
......@@ -23,6 +22,14 @@ class ResetPwdController extends GetxController {
void onShowPassword() => showPassword.value = !showPassword.value;
void onShowPassword2() => showPassword2.value = !showPassword2.value;
@override
void onClose() {
pwd2Input.dispose();
pwdInput.dispose();
super.onClose();
}
/// 是否能点击
void setCanClick(){
if (ValidatorTool.isValidPassword(pwdInput.text) && ValidatorTool.isValidPassword(pwd2Input.text) && (pwdInput.text == pwd2Input.text)){
Console.log('-------${pwdInput.text}-------------${pwd2Input.text}');
......@@ -34,15 +41,7 @@ class ResetPwdController extends GetxController {
update();
}
@override
void onClose() {
pwd2Input.dispose();
pwdInput.dispose();
super.onClose();
}
/// 重置密码
void resetPassword(BuildContext context) async {
final result = await AccountAPI.resetPassword(
phone: phone,
......
......@@ -7,15 +7,15 @@ class SearchController extends GetxController {
);
late TextEditingController searchController = TextEditingController();
bool showHistory = true;
// 搜索记录数组
List<String> records = [];
// 书籍数组
List<CourseModel> books = [];
// 每页数量
final int _limit = 20;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -79,6 +79,7 @@ class SearchController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getBooks(true);
......
......@@ -5,12 +5,13 @@ class HistoryController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 学习历史数组
List<StudyHistoryModel> histories = [];
// 每页数据
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -39,6 +40,7 @@ class HistoryController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getHistory(true);
......@@ -49,6 +51,7 @@ class HistoryController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
part of study_report;
class StudyReportController extends GetxController {
// 书籍id
final String bookId;
StudyReportController(this.bookId);
// 报告模型
ReportModel model = ReportModel();
@override
......@@ -13,6 +13,7 @@ class StudyReportController extends GetxController {
super.onReady();
}
/// 获取报告数据
void _getReport() async {
model = await LibraryAPI.report(bookId: bookId);
update();
......
......@@ -6,10 +6,13 @@ class UserCoinController extends GetxController {
controlFinishRefresh: true,
);
// 紫荆币数据
List<RecordModel> coins = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -37,6 +40,7 @@ class UserCoinController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await getCoin(true);
......@@ -47,6 +51,7 @@ class UserCoinController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
part of recharge;
class CoinRechargeController extends GetxController {
// 上线文
final BuildContext context;
CoinRechargeController({required this.context});
dynamic _purchaseUpdatedSubscription;
......@@ -10,28 +12,24 @@ class CoinRechargeController extends GetxController {
List<IAPItem> _items = [];
List<PurchasedItem> _purchases = [];
///未完成的订单
//未完成的订单
List<PurchasedItem> _pendingPurchases = [];
// 支付宝
Tobias tobias = Tobias();
// 微信
Fluwx fluwx = Fluwx();
// 创建订单模型
late PayOrderModel payOrderModel;
// 支付类型
List<PayModel> pays = Platform.isIOS ?[
]:[
// PayModel(type: 1, name: '微信', icon: 'assets/images/pay_wechat.png', selected: true),
PayModel(type: 2, name: '支付宝', icon: 'assets/images/pay_ali.png', selected: true),
];
// 紫荆币数据
List<CoinModel> data = [];
// 充值模型
late CoinModel rechargeModel = CoinModel();
// 支付方式
late PayModel _payModel = pays.first;
PayModel get payModel => _payModel;
......@@ -67,6 +65,7 @@ class CoinRechargeController extends GetxController {
super.onClose();
}
/// 设置支付方式
void setPayModel(PayModel payModel){
for (PayModel model in pays) {
if (model.type == payModel.type){
......@@ -80,6 +79,7 @@ class CoinRechargeController extends GetxController {
update();
}
/// 选择充值
void choose(CoinModel coinModel){
for (CoinModel model in data) {
model.selected = (model == coinModel);
......@@ -88,7 +88,6 @@ class CoinRechargeController extends GetxController {
update();
}
/// 获取充值列表
void _getlist()async{
String type = '';
......@@ -107,6 +106,7 @@ class CoinRechargeController extends GetxController {
update();
}
/// 初始化支付
Future<void> initPlatformState() async{
var result = await FlutterInappPurchase.instance.initialize();
......@@ -185,6 +185,7 @@ class CoinRechargeController extends GetxController {
}
}
/// 获取后台关于当前单号的结算结果
void _requestOrderStatus() async {
final result = await ShopAPI.orderStatus(orderNumber: payOrderModel.ordersnum??'',receipt:_resultItem != null?_resultItem!.transactionReceipt.toString():'');
......@@ -272,7 +273,6 @@ class CoinRechargeController extends GetxController {
});
}
///获取未完成的购买
Future _getPendingPurchase() async {
List<PurchasedItem>? items = await FlutterInappPurchase.instance.getPurchaseHistory();
......
......@@ -8,11 +8,12 @@ class UserCouponController extends GetxController {
// 优惠券
List<CouponModel> coupons = [];
// late int type = 0;
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -56,6 +57,7 @@ class UserCouponController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getCoupon(true);
......@@ -66,6 +68,7 @@ class UserCouponController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -5,11 +5,13 @@ class UserDiscussController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 讨论数据
List<CourseModel> discuss = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -37,6 +39,7 @@ class UserDiscussController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getNotes(true);
......@@ -47,6 +50,7 @@ class UserDiscussController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......@@ -60,6 +64,7 @@ class UserDiscussController extends GetxController {
}
}
/// 测试数据
List<CourseModel> _test() {
return [
CourseModel(),
......
part of user_discuss_des;
class UserDiscussDesController extends GetxController {
// 标签tag
final String tag;
// 课程模型
final CourseModel model;
UserDiscussDesController(this.tag, this.model);
// 讨论数据
List<DiscussModel> discuss = [];
final EasyRefreshController refreshController = EasyRefreshController(
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 回复控制器
late TextEditingController replyInput = TextEditingController();
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
// 展示回复输入框
bool showReply = false;
// 当前要回复的模型
late DiscussModel discussModel;
// 当前要回复父级的模型
late DiscussModel fatherDiscussModel;
// 是否可点击
bool canTap = true;
@override
......@@ -42,20 +43,23 @@ class UserDiscussDesController extends GetxController {
super.onClose();
}
/// 是否还在那时
void setShow() {
showReply = !showReply;
update();
}
/// 设置讨论模型
void setDiscussModel(DiscussModel model) {
discussModel = model;
}
/// 设置父级模型
void setFatherDiscussModel(DiscussModel model) {
fatherDiscussModel = model;
}
// 删除回复
/// 删除回复
Future<void> delComment(
{required List<DiscussModel>? list,
required DiscussModel discussModel}) async {
......@@ -68,6 +72,7 @@ class UserDiscussDesController extends GetxController {
update();
}
/// 提交
Future<bool> submit() async {
Map<String, dynamic> contentMap = {
'text': replyInput.text,
......@@ -122,6 +127,7 @@ class UserDiscussDesController extends GetxController {
return result.isNotEmpty ? true : false;
}
/// 点赞提交
Future<void> commentLove({required DiscussModel discussModel}) async {
num type = 0;
if (discussModel.isPraise == 0) {
......@@ -159,6 +165,7 @@ class UserDiscussDesController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getDiscuss(true);
......@@ -170,6 +177,7 @@ class UserDiscussDesController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
part of user_edit_note;
class UserEditNoteController extends GetxController {
// 笔记模型
final NoteModel model;
// 书籍id
final String bookId;
// 输入
late TextEditingController contentInput;
UserEditNoteController(this.model, this.bookId) {
......@@ -10,21 +13,17 @@ class UserEditNoteController extends GetxController {
contentInput =
TextEditingController(text: model.noteContent?.text?.content);
}
// 录音
final FlutterSoundRecorder _mRecorder = FlutterSoundRecorder();
just_audio.AudioPlayer audioPlayer = just_audio.AudioPlayer();
// 录音开始
bool startRecording = false;
// 笔记是否公开
bool isPublic = false;
bool initRecorder = false;
// 当前进度
String currentDuration = '';
// 当前媒体类型
late MediaModel currentPlayMediaModel = MediaModel();
@override
......@@ -41,13 +40,13 @@ class UserEditNoteController extends GetxController {
super.onClose();
}
// 设置笔记是否公开
/// 设置笔记是否公开
void setIsPublic() {
isPublic = !isPublic;
update();
}
// 配置音频时长
/// 配置音频时长
void _setDuration() async {
for (MediaModel mediaModel in model.noteContent!.audio!) {
Duration? duration =
......@@ -58,13 +57,13 @@ class UserEditNoteController extends GetxController {
update();
}
// 删除图片
/// 删除图片
void delImage(MediaModel mediaModel) {
model.noteContent!.image!.remove(mediaModel);
update();
}
// 删除音频
/// 删除音频
void delAudio(MediaModel mediaModel) {
model.noteContent!.audio!.remove(mediaModel);
// 新加的录音 如果删除要删除源文件
......@@ -72,21 +71,21 @@ class UserEditNoteController extends GetxController {
update();
}
// 添加音频
/// 添加音频
void addAudio(String path, String duration) {
MediaModel mediaModel = MediaModel(path: path, id: 0, duration: duration);
model.noteContent!.audio!.add(mediaModel);
update();
}
// 添加图片
/// 添加图片
void addImage(String path) {
MediaModel mediaModel = MediaModel(path: path, id: 0);
model.noteContent!.image!.add(mediaModel);
update();
}
// 初始化录音组件
/// 初始化录音组件
Future<void> openTheRecorder() async {
if (!initRecorder) {
// 获取权限
......@@ -117,7 +116,7 @@ class UserEditNoteController extends GetxController {
initRecorder = true;
}
// 开启录音
/// 开启录音
void record() async {
await openTheRecorder();
update();
......@@ -132,7 +131,7 @@ class UserEditNoteController extends GetxController {
);
}
// 停止录音
/// 停止录音
void stopRecorder() async {
startRecording = false;
final path = await _mRecorder.stopRecorder();
......@@ -142,7 +141,7 @@ class UserEditNoteController extends GetxController {
addAudio(path, Tools.formatDuration(duration!));
}
// 播放音频
/// 播放音频
void playAudio(MediaModel mediaModel) {
if (audioPlayer.playerState.playing) {
audioPlayer.stop();
......@@ -175,7 +174,7 @@ class UserEditNoteController extends GetxController {
// currentPlayMediaModel = mediaModel;
}
// 上传文件
/// 上传文件
Future<String> upload({required String path}) async {
// String result = await CommonAPI.upload(path:path,fileTypes: 'comment');
// return result;
......@@ -184,7 +183,7 @@ class UserEditNoteController extends GetxController {
return response.realUri.toString();
}
// 提交
/// 提交
Future<bool> submit() async {
CustomToast.loading();
// 循环上传图片获取地址
......
......@@ -2,11 +2,10 @@ part of user_feedback;
/// 提交意见反馈
class UserFeedbackController extends GetxController {
// 输入控制器
late TextEditingController searchController = TextEditingController();
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
/// 提交意见反馈
......@@ -19,6 +18,7 @@ class UserFeedbackController extends GetxController {
return result;
}
/// 是否可点击
void setCanClick() {
if (searchController.text.isNotEmpty) {
_enable = true;
......
part of user_gender;
class UserGenderController extends GetxController {
// 用户信息模型
final UserInfoModel userInfo;
UserGenderController(this.userInfo);
......
part of user_info;
class UserInfoController extends GetxController {
// 用户信息模型
final UserInfoModel userInfo;
UserInfoController(this.userInfo);
......@@ -16,6 +17,7 @@ class UserInfoController extends GetxController {
_changeInfo(response.realUri.toString());
}
/// 是否显示
void show() {
showDetail = !showDetail;
update();
......
......@@ -5,11 +5,12 @@ class UserLoveController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 每页数量
final int _limit = 20;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
// 收藏数据
List<CourseModel> loves = [];
......@@ -46,6 +47,7 @@ class UserLoveController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getLoves(true);
......@@ -56,6 +58,7 @@ class UserLoveController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -5,10 +5,13 @@ class MsgController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 信息数据
List<MsgModel> msgs = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -52,6 +55,7 @@ class MsgController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getMsgs(true);
......@@ -62,6 +66,7 @@ class MsgController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
part of user_nick;
class UserNickController extends GetxController {
// 用户信息模型
final UserInfoModel userInfo;
UserNickController(this.userInfo);
......
......@@ -6,10 +6,13 @@ class UserNoteController extends GetxController {
controlFinishRefresh: true,
);
// 笔记数据
List<CourseModel> notes = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -38,6 +41,7 @@ class UserNoteController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getNotes(true);
......@@ -48,6 +52,7 @@ class UserNoteController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......@@ -61,6 +66,7 @@ class UserNoteController extends GetxController {
}
}
/// 测试数据
List<CourseModel> _test() {
return [
CourseModel(),
......
part of user_notes_des;
class UserNotesDesController extends GetxController {
// 分类 tag
final String tag;
// 书籍模型
final CourseModel model;
UserNotesDesController(this.tag, this.model);
......@@ -12,11 +14,13 @@ class UserNotesDesController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 音频播放器
just_audio.AudioPlayer audioPlayer = just_audio.AudioPlayer();
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -32,7 +36,7 @@ class UserNotesDesController extends GetxController {
super.onClose();
}
// 播放音频
/// 播放音频
void playAudio(MediaModel mediaModel) {
if (audioPlayer.playerState.playing) {
audioPlayer.stop();
......@@ -65,6 +69,7 @@ class UserNotesDesController extends GetxController {
// currentPlayMediaModel = mediaModel;
}
/// 删除笔记
void delNotes({required NoteModel noteModel, required String bookId}) async {
final result = await MineAPI.delNotes(
notesId: noteModel.notesId.toString(), bookId: bookId);
......@@ -109,6 +114,7 @@ class UserNotesDesController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getNotes(true);
......@@ -121,6 +127,7 @@ class UserNotesDesController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -3,20 +3,23 @@ part of user_order;
/// 订单详情
class UserOrderController extends GetxController
with GetTickerProviderStateMixin {
// 分类tag
final int tag;
UserOrderController(this.tag);
// 订单数据
List<OrderListModel> orderList = [];
final EasyRefreshController refreshController = EasyRefreshController(
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 搜素控制器
late TextEditingController searchController = TextEditingController();
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -47,6 +50,7 @@ class UserOrderController extends GetxController
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getOrders(isRefresh:true);
......@@ -58,6 +62,7 @@ class UserOrderController extends GetxController
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......@@ -71,6 +76,7 @@ class UserOrderController extends GetxController
}
}
/// 测试数据
void addData() {
orderList.add(OrderListModel(
id: 1,
......
......@@ -2,28 +2,22 @@ part of user_order_awaiting;
/// 等待付款订单
class UserOrderAwaitingController extends GetxController {
// 订单编号
late String _orderNum;
// 上线文
final BuildContext context;
UserOrderAwaitingController(this.context); // 订单编号
// 订单模型
late OrderInfoModel model;
// 应付款、订单编号等
List<OrderCompletedModel> orderAwaitings = [];
// 支付宝
Tobias tobias = Tobias();
// 微信
Fluwx fluwx = Fluwx();
late PayOrderModel payOrderModel;
String get orderNum => _orderNum; // 获取订单编号的方法
// 更新订单编号的方法
void updateOrderNum(String newOrderNum) {
_orderNum = newOrderNum;
}
@override
void onReady() {
......@@ -31,6 +25,11 @@ class UserOrderAwaitingController extends GetxController {
super.onReady();
}
/// 更新订单编号的方法
void updateOrderNum(String newOrderNum) {
_orderNum = newOrderNum;
}
/// 取消订单
Future<bool> cancelPay() async {
final result = await MineAPI.cancelPay(ordersnum: orderNum);
......@@ -40,9 +39,6 @@ class UserOrderAwaitingController extends GetxController {
return result;
}
/// 获取订单信息
Future<void> getOrderInfo() async {
model = await MineAPI.getOrderInfo(orderNum: orderNum);
......@@ -63,6 +59,7 @@ class UserOrderAwaitingController extends GetxController {
update();
}
/// 支付
Future<void> payOrder() async {
payOrderModel = await MineAPI.getPayInfo(ordersNum: orderNum);
// 支付宝
......@@ -97,7 +94,7 @@ class UserOrderAwaitingController extends GetxController {
// }
}
// 支付宝支付
/// 支付宝支付
void requestAliPay(){
tobias.pay(payOrderModel.encryptionOrder!).then((payResult){
if (payResult['resultStatus'] == '9000') {
......@@ -108,7 +105,7 @@ class UserOrderAwaitingController extends GetxController {
});
}
// 微信支付
/// 微信支付
void requestWechat(){
Payment payment = Payment(
appId: payOrderModel.appid??'',
......@@ -130,6 +127,7 @@ class UserOrderAwaitingController extends GetxController {
});
}
/// 获取订单状态
void requestOrderStatus() async {
final result = await ShopAPI.orderStatus(orderNumber: payOrderModel.ordersnum??'',receipt: '');
if (result.paySuccess == 1){
......@@ -142,7 +140,4 @@ class UserOrderAwaitingController extends GetxController {
}
}
......@@ -4,23 +4,17 @@ part of user_order_cancel_detail;
class UserOrderCancelDetailController extends GetxController {
final String orderNum;// 订单编号
UserOrderCancelDetailController(this.orderNum);
// 订单信息模型
OrderInfoModel model = OrderInfoModel();
// 应付款、订单编号等
List<OrderCompletedModel> orderCompleteds = [];
@override
void onReady() {
getOrderInfo();
super.onReady();
}
/// 获取订单信息
void getOrderInfo() async {
model = await MineAPI.getOrderInfo(orderNum: orderNum);
......
......@@ -2,7 +2,9 @@ part of user_order_coin_awaiting;
/// 紫荆币等待付款订单
class UserOrderCoinAwaitingController extends GetxController {
// 订单编号
late String _orderNum;
// 上线文
final BuildContext context;
String get orderNum => _orderNum; // 获取订单编号的方法
UserOrderCoinAwaitingController(this.context);
......@@ -13,15 +15,11 @@ class UserOrderCoinAwaitingController extends GetxController {
late OrderInfoModel model;
// 应付款、订单编号等
List<OrderCompletedModel> orderAwaitings = [];
// 支付宝
Tobias tobias = Tobias();
// 微信
Fluwx fluwx = Fluwx();
late PayOrderModel payOrderModel;
dynamic _purchaseUpdatedSubscription;
dynamic _purchaseErrorSubscription;
dynamic _connectionSubscription;
......@@ -31,7 +29,7 @@ class UserOrderCoinAwaitingController extends GetxController {
List<PurchasedItem> _purchases = [];
///未完成的订单
List<PurchasedItem> _pendingPurchases = [];
// 紫荆币数据
List<CoinModel> data = [];
......@@ -70,6 +68,7 @@ class UserOrderCoinAwaitingController extends GetxController {
super.onClose();
}
/// 初始化
Future<void> initPlatformState() async{
var result = await FlutterInappPurchase.instance.initialize();
......@@ -124,7 +123,6 @@ class UserOrderCoinAwaitingController extends GetxController {
update();
}
/// 获取商品列表
Future _getProduct() async {
......@@ -144,6 +142,7 @@ class UserOrderCoinAwaitingController extends GetxController {
// update();
}
/// 支付订单
Future<void> payOrder() async {
// 苹果支付
if (model.payType ==3){
......@@ -180,14 +179,14 @@ class UserOrderCoinAwaitingController extends GetxController {
}
// 苹果支付
/// 苹果支付
void _requestPurchase(IAPItem item) {
CustomToast.loading();
FlutterInappPurchase.instance
.requestPurchase(item.productId!);
}
// 支付宝支付
/// 支付宝支付
void requestAliPay(){
Console.log('================================================================${payOrderModel.encryptionOrder!}');
tobias.pay(payOrderModel.encryptionOrder!).then((payResult){
......@@ -199,7 +198,7 @@ class UserOrderCoinAwaitingController extends GetxController {
});
}
// 微信支付
/// 微信支付
void requestWechat(){
Payment payment = Payment(
appId: payOrderModel.appid??'',
......@@ -221,6 +220,7 @@ class UserOrderCoinAwaitingController extends GetxController {
});
}
/// 获取订单状态
void requestOrderStatus() async {
final result = await ShopAPI.orderStatus(orderNumber: model.ordersnum??'',receipt:_resultItem != null?_resultItem!.transactionReceipt.toString():'');
if (result.paySuccess == 1){
......@@ -280,6 +280,4 @@ class UserOrderCoinAwaitingController extends GetxController {
}
}
......@@ -2,7 +2,9 @@ part of user_order_coin_cancel;
/// 紫荆币等待付款订单
class UserOrderCoinCancelController extends GetxController {
// 订单编号
late String _orderNum;
// 上线问
final BuildContext context;
String get orderNum => _orderNum; // 获取订单编号的方法
UserOrderCoinCancelController(this.context);
......@@ -13,15 +15,11 @@ class UserOrderCoinCancelController extends GetxController {
late OrderInfoModel model;
// 应付款、订单编号等
List<OrderCompletedModel> orderAwaitings = [];
// 支付宝
Tobias tobias = Tobias();
// 微信
Fluwx fluwx = Fluwx();
late PayOrderModel payOrderModel;
dynamic _purchaseUpdatedSubscription;
dynamic _purchaseErrorSubscription;
dynamic _connectionSubscription;
......@@ -70,6 +68,7 @@ class UserOrderCoinCancelController extends GetxController {
super.onClose();
}
/// 初始化
Future<void> initPlatformState() async{
var result = await FlutterInappPurchase.instance.initialize();
......@@ -125,7 +124,6 @@ class UserOrderCoinCancelController extends GetxController {
update();
}
/// 获取商品列表
Future _getProduct() async {
......@@ -144,6 +142,7 @@ class UserOrderCoinCancelController extends GetxController {
// update();
}
/// 支付订单
Future<void> payOrder() async {
// 苹果支付
if (model.payType ==3){
......@@ -180,14 +179,14 @@ class UserOrderCoinCancelController extends GetxController {
}
// 苹果支付
/// 苹果支付
void _requestPurchase(IAPItem item) {
CustomToast.loading();
FlutterInappPurchase.instance
.requestPurchase(item.productId!);
}
// 支付宝支付
/// 支付宝支付
void requestAliPay(){
Console.log('================================================================${payOrderModel.encryptionOrder!}');
tobias.pay(payOrderModel.encryptionOrder!).then((payResult){
......@@ -199,7 +198,7 @@ class UserOrderCoinCancelController extends GetxController {
});
}
// 微信支付
/// 微信支付
void requestWechat(){
Payment payment = Payment(
appId: payOrderModel.appid??'',
......@@ -221,6 +220,7 @@ class UserOrderCoinCancelController extends GetxController {
});
}
/// 获取订单状态
void requestOrderStatus() async {
final result = await ShopAPI.orderStatus(orderNumber: model.ordersnum??'',receipt:_resultItem != null?_resultItem!.transactionReceipt.toString():'');
if (result.paySuccess == 1){
......
......@@ -2,7 +2,9 @@ part of user_order_coin_completed;
/// 紫荆币等待付款订单
class UserOrderCoinCompletedController extends GetxController {
// 订单编号
late String _orderNum;
// 上线文
final BuildContext context;
String get orderNum => _orderNum; // 获取订单编号的方法
UserOrderCoinCompletedController(this.context);
......@@ -13,20 +15,15 @@ class UserOrderCoinCompletedController extends GetxController {
late OrderInfoModel model;
// 应付款、订单编号等
List<OrderCompletedModel> orderAwaitings = [];
// 支付宝
Tobias tobias = Tobias();
// 微信
Fluwx fluwx = Fluwx();
late PayOrderModel payOrderModel;
dynamic _purchaseUpdatedSubscription;
dynamic _purchaseErrorSubscription;
dynamic _connectionSubscription;
PurchasedItem? _resultItem;
List<IAPItem> _items = [];
List<PurchasedItem> _purchases = [];
///未完成的订单
......@@ -70,6 +67,7 @@ class UserOrderCoinCompletedController extends GetxController {
super.onClose();
}
/// 初始化
Future<void> initPlatformState() async{
var result = await FlutterInappPurchase.instance.initialize();
......@@ -126,7 +124,6 @@ class UserOrderCoinCompletedController extends GetxController {
update();
}
/// 获取商品列表
Future _getProduct() async {
......@@ -145,6 +142,7 @@ class UserOrderCoinCompletedController extends GetxController {
// update();
}
/// 支付订单
Future<void> payOrder() async {
// 苹果支付
if (model.payType ==3){
......@@ -181,14 +179,14 @@ class UserOrderCoinCompletedController extends GetxController {
}
// 苹果支付
/// 苹果支付
void _requestPurchase(IAPItem item) {
CustomToast.loading();
FlutterInappPurchase.instance
.requestPurchase(item.productId!);
}
// 支付宝支付
/// 支付宝支付
void requestAliPay(){
Console.log('================================================================${payOrderModel.encryptionOrder!}');
tobias.pay(payOrderModel.encryptionOrder!).then((payResult){
......@@ -200,7 +198,7 @@ class UserOrderCoinCompletedController extends GetxController {
});
}
// 微信支付
/// 微信支付
void requestWechat(){
Payment payment = Payment(
appId: payOrderModel.appid??'',
......@@ -222,6 +220,7 @@ class UserOrderCoinCompletedController extends GetxController {
});
}
/// 获取订单状态
void requestOrderStatus() async {
final result = await ShopAPI.orderStatus(orderNumber: model.ordersnum??'',receipt:_resultItem != null?_resultItem!.transactionReceipt.toString():'');
if (result.paySuccess == 1){
......
......@@ -2,7 +2,9 @@ part of user_order_evaluate;
/// 订单评价
class UserOrderEvaluateController extends GetxController {
// 订单信息模型
late OrderInfoModel orderInfoModel = OrderInfoModel();
// 订单编号
String orderNum;
UserOrderEvaluateController(this.orderNum); // 已完成订单
......@@ -11,10 +13,8 @@ class UserOrderEvaluateController extends GetxController {
late List<num?> ratings;
late List<FocusNode?> focusNodes;
// final FocusNode _focusNode = FocusNode();
// 按钮是否可用
bool _enable = false;
bool get enable => _enable;
@override
......@@ -23,6 +23,18 @@ class UserOrderEvaluateController extends GetxController {
super.onReady();
}
@override
void onClose() {
commentsInput.dispose();
for(TextEditingController controller in _commentsControllers){
controller.dispose();
}
for(int i=0;i<focusNodes.length;i++){
focusNodes[i]!.dispose();
}
super.onClose();
}
/// 获取订单信息
Future<void> getOrderInfo() async {
orderInfoModel = await MineAPI.getOrderInfo(orderNum: orderNum);
......@@ -62,6 +74,7 @@ class UserOrderEvaluateController extends GetxController {
return false;
}
/// 是否可点击
void setCanClick({num double = 0}) {
if (double > 0) {
_enable = true;
......@@ -71,20 +84,10 @@ class UserOrderEvaluateController extends GetxController {
update();
}
/// 更新文本
void updateText(String text) {
commentsInput = TextEditingController(text: text);
// update();
}
@override
void onClose() {
commentsInput.dispose();
for(TextEditingController controller in _commentsControllers){
controller.dispose();
}
for(int i=0;i<focusNodes.length;i++){
focusNodes[i]!.dispose();
}
super.onClose();
}
}
......@@ -4,23 +4,16 @@ part of user_order_refunded;
class UserOrderCRefundedController extends GetxController {
final String orderNum;// 订单编号
UserOrderCRefundedController(this.orderNum);
OrderInfoModel model = OrderInfoModel();
// 应付款、订单编号等
List<OrderCompletedModel> orderCompleteds = [];
@override
void onReady() {
getOrderInfo();
super.onReady();
}
/// 获取订单信息
void getOrderInfo() async {
model = await MineAPI.getOrderInfo(orderNum: orderNum);
......
......@@ -5,11 +5,13 @@ class UserPointController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 积分数据
List<RecordModel> points = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -37,6 +39,7 @@ class UserPointController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getPoint(true);
......@@ -47,6 +50,7 @@ class UserPointController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -5,11 +5,13 @@ class UserWrongController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 错题书
List<CourseModel> wrongs = [];
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
@override
......@@ -37,6 +39,7 @@ class UserWrongController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getWrongs(true);
......@@ -47,6 +50,7 @@ class UserWrongController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
......@@ -5,10 +5,13 @@ class VersionController extends GetxController {
controlFinishLoad: true,
controlFinishRefresh: true,
);
// 每页数量
final int _limit = 10;
// 当前页码
int _page = 1;
// 是否有更多
bool _noMore = false;
// 版本数据
List<VersionModel> versions = [];
@override
......@@ -30,6 +33,7 @@ class VersionController extends GetxController {
update();
}
/// 刷新数据
void onRefresh() async {
try {
await _getVersions(true);
......@@ -40,6 +44,7 @@ class VersionController extends GetxController {
}
}
/// 加载数据
void onLoading() async {
if (_noMore) {
refreshController.finishLoad(IndicatorResult.noMore);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论