| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- import 'package:electronic_assistant/base/base_controller.dart';
- import 'package:electronic_assistant/data/bean/template_bean.dart';
- import 'package:electronic_assistant/module/template/template_detail/view.dart';
- import 'package:electronic_assistant/module/template/template_edit/view.dart';
- import 'package:electronic_assistant/resource/colors.gen.dart';
- import 'package:electronic_assistant/resource/string.gen.dart';
- import 'package:electronic_assistant/utils/error_handler.dart';
- import 'package:electronic_assistant/utils/expand.dart';
- import 'package:electronic_assistant/widget/alert_dialog.dart';
- import 'package:flutter/cupertino.dart';
- import 'package:flutter_screenutil/flutter_screenutil.dart';
- import 'package:get/get.dart';
- import 'package:get/get_core/src/get_main.dart';
- import '../../../data/repositories/template_repository.dart';
- class TemplateListController extends BaseController {
- final RxList<TemplateBean> templateList = RxList();
- int? maxTemplateCount;
- bool? result;
- @override
- void onInit() {
- super.onInit();
- refreshTemplateList();
- }
- void refreshTemplateList() {
- templateRepository.getTemplateList().then((data) {
- templateList.clear();
- var defaultTemp = data.defaultTemplate;
- if (defaultTemp != null) {
- defaultTemp.setDefaultTemp(true);
- templateList.add(defaultTemp);
- }
- var customTemp = data.templateList;
- if (customTemp != null) {
- templateList.addAll(customTemp);
- }
- maxTemplateCount = data.maxTemplateCount;
- }).catchError((error) {
- debugPrint('error: $error');
- ErrorHandler.toastError(error);
- });
- }
- void onBack() {
- Get.back(result: result);
- }
- void onAddTemplate() async {
- dynamic isSuccess = await TemplateEditPage.addStart();
- if (isSuccess is bool && isSuccess) {
- result = true;
- refreshTemplateList();
- }
- }
- void onDetailClick(TemplateBean bean) async {
- dynamic isSuccess = await TemplateDetailPage.start(bean);
- if (isSuccess == true) {
- result = true;
- refreshTemplateList();
- }
- }
- void templateEdit(TemplateBean item) async {
- dynamic isSuccess = await TemplateEditPage.editDetail(item);
- if (isSuccess == true) {
- result = true;
- templateList.refresh();
- }
- }
- void onDeleteTemplate(TemplateBean item) {
- EAAlertDialog.show(
- contentWidget: Padding(
- padding: EdgeInsets.only(top: 8.w),
- child: Text(
- StringName.templateDialogDeleteTitle.tr
- .replacePlaceholders([item.name]),
- style: TextStyle(
- fontSize: 15.sp,
- color: ColorName.primaryTextColor,
- fontWeight: FontWeight.bold),
- ),
- ),
- cancelText: StringName.cancel.tr,
- confirmText: StringName.sure.tr,
- confirmOnTap: () {
- _deleteTemplate(item);
- });
- }
- void _deleteTemplate(TemplateBean item) {
- if (item.id == null) {
- return;
- }
- templateRepository.templateDelete(item.id!).then((value) {
- result = true;
- refreshTemplateList();
- }).catchError((error) {
- ErrorHandler.toastError(error);
- });
- }
- }
|