/*
 * @Author: wangyang 1147192855@qq.com
 * @Date: 2022-07-13 11:28:23
 * @LastEditors: wangyang 1147192855@qq.com
 * @LastEditTime: 2022-09-14 11:17:20
 * @FilePath: \marking_app\lib\config\RequestConfig.dart
 * @Description: 请求工具类
 */
import 'package:making_school_asignment_app/common/job/common/base_page.dart';

class RequestConfig {
  // static const _devBaseUrl = "http://192.168.2.119:1091"; // 开发
  static const _devBaseUrl = "https://dpc-teacher-api.23544.com"; // 开发
  // static const _proBaseUrl = "http://192.168.2.119:1091"; // 生产
  static const _proBaseUrl = "https://dpc-teacher-api.23544.com"; // 生产
  static const imgUrl = 'https://dpc-job-oss.23544.com/';

  static RequestConfig? _instance;
  String baseUrl;

  static const connectTimeout = 8 * 1000; // 连接超时
  static const receiveTimeout = 8 * 1000; // 接收超时
  static const bool requestDataPrinting = true; // 打印返回数据
  static const bool printSwitch = true; // 打印返回数据
  static const successCode = [204, 200]; // 返回成功code
  static final BasePage basePage = BasePage(1, 10); // 分页参数

  // 私有化构造函数，防止外部直接实例化
// 私有化构造函数，防止外部直接实例化
  RequestConfig._({required this.baseUrl});

  factory RequestConfig() {
    if (_instance == null) {
      String newBaseUrl;
      if (const bool.fromEnvironment('dart.vm.product')) {
        newBaseUrl = _proBaseUrl; // 生产环境
      } else {
        newBaseUrl = _devBaseUrl; // 开发环境
      }
      _instance = RequestConfig._(baseUrl: newBaseUrl);
    }
    return _instance!;
  }
}
