customer_list_model.dart 2.8 KB
import 'package:azlistview/azlistview.dart';
import 'package:json_annotation/json_annotation.dart';

part 'customer_list_model.g.dart';

@JsonSerializable()
class CustomerListModel extends Object {
  @JsonKey(name: 'ret')
  int ret;

  @JsonKey(name: 'data')
  List<CustomerListSunModel> data;

  @JsonKey(name: 'msg')
  String msg;

  CustomerListModel(
    this.ret,
    this.data,
    this.msg,
  );

  factory CustomerListModel.fromJson(Map<String, dynamic> srcJson) =>
      _$CustomerListModelFromJson(srcJson);

  Map<String, dynamic> toJson() => _$CustomerListModelToJson(this);
}

@JsonSerializable()
class CustomerListSunModel extends Object with ISuspensionBean {
  @JsonKey(name: 'id')
  String id;

  @JsonKey(name: 'sellerid')
  String sellerid;

  @JsonKey(name: 'uid')
  String uid;

  @JsonKey(name: 'rname')
  String rname;

  @JsonKey(name: 'sex')
  String sex;

  @JsonKey(name: 'phone')
  String phone;

  @JsonKey(name: 'cdate')
  String cdate;

  @JsonKey(name: 'leiji')
  String leiji;

  @JsonKey(name: 'attr')
  String attr;

  @JsonKey(name: 'ddate')
  String ddate;

  @JsonKey(name: 'ddate_solt')
  String ddateSolt;

  @JsonKey(name: 'company')
  String company;

  @JsonKey(name: 'section')
  String section;

  @JsonKey(name: 'position')
  String position;
  @JsonKey(name: 'taboos')
  String taboos;
  @JsonKey(name: 'like')
  String like;
  @JsonKey(name: 'serve')
  String serve;
  @JsonKey(name: 'c_day')
  String cDay;
  @JsonKey(name: 'udate')
  String udate;
  @JsonKey(name: 'month_count')
  String monthCount;
  @JsonKey(name: 'label')
  String label;
  bool select = true;

  List<String> pinyinList; //全拼数组
  String pinyin; //全拼字母
  String pinyinFirst; //首字母
  String tagIndex; //abcdefg
  String get rnameStr {
    if (rname == null || rname == '') return "";
    return rname;
  }

  String get sexStr {
    if (sex == null || sex == '') return "";
    switch (sex.toString()) {
      case "1": //先生
      case "男":
      case "先生":
        return "先生";
      case "2": //女士
      case "女":
      case "女士":
        return "女士";
      case "3": //公司
      case "公司":
        return "公司";
    }
  }

  CustomerListSunModel(
      this.id,
      this.sellerid,
      this.uid,
      this.rname,
      this.sex,
      this.phone,
      this.cdate,
      this.leiji,
      this.attr,
      this.ddate,
      this.ddateSolt,
      this.company,
      this.section,
      this.position,
      this.taboos,
      this.like,
      this.serve,
      this.cDay,
      this.udate,
      this.monthCount,
      this.label);

  factory CustomerListSunModel.fromJson(Map<String, dynamic> srcJson) =>
      _$CustomerListSunModelFromJson(srcJson);

  Map<String, dynamic> toJson() => _$CustomerListSunModelToJson(this);

  @override
  String getSuspensionTag() => tagIndex;
}