/*
 * @Author: WuWei
 * @Date: 2020-07-02 09:57:09
 * @LastEditors: ChenYaJin
 * @LastEditTime: 2023-01-10 10:07:04
 * @Description:
 */
import 'package:app_package/app_package.dart';
import 'package:repair_package/src/models/deal_person.dart';
import 'package:repair_package/src/models/status.dart';
import 'package:repair_package/src/models/inner_sort_list.dart';
import 'package:repair_package/src/models/score_detail.dart';
import 'package:repair_package/src/models/sort_list.dart';
import 'package:repair_package/src/models/type_list.dart';
import '../../src/models/repair_list.dart';
import '../../src/models/repair_detail.dart';
import '../../src/models/repair_dialog.dart';
import '../models/repair_person_list.dart';
import '../models/service_fee_detail.dart';
import '../models/service_project.dart';

abstract class RepairService {
  /// 报修
  Future<ResModel<PagingModel<RepairListModel>>> getRepairList(data);
  Future<ResModel<RepairDetailModel>> getRepairDetail(data);
  Future<ResModel<RepairDialogModel>> getRepairDialog(data);
  Future<ResModel<List<RepairPersonListModel>?>> getPersonList(data);
  Future<int?> putRepair(data);
  Future<int?> postDialog(Map data);
  Future<int?> postTransfer(data);
  Future<ResModel<List<StatusModel>?>> getStatusEnum();


  /// 费用
  Future<ResModel<ServiceFeeDetailModel>> getServiceFeeDetaill(data);
  Future<String?> postServiceFee(data);
  Future<int?> putServiceFee(id, data);
  Future<ResModel<List<ServiceProject>?>> getServiceProjectList(data);

  Future<ResModel<ScoreDetailModel>> getScoreDetail(id);

  /// 处理人列表
  Future<ResModel<List<DealPeasonModel>>> getDealPerson(data);

  /// 类别列表 http://yapi.wisdomcity.com.cn/project/16/interface/api/20670
  Future<ResModel<List<TypeListModel>>> getTypeList();

  /// 分类列表 http://yapi.wisdomcity.com.cn/project/16/interface/api/20670
  Future<ResModel<List<SortListModel>>> getSortList(data);
  Future<ResModel<List<InnerSortListModel>>> getInnerSortList();
  Future<ResModel<int>> setRepairTime(id, data);

  /// 统计
  Future<ResModel<StatusStatistic>> getRepairStatistic(data);
}
