seller_info.dart 4.41 KB
import 'package:json_annotation/json_annotation.dart';

part 'seller_info.g.dart';

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

  @JsonKey(name: 'data')
  SunSellerInfoModel data;

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

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

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

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

@JsonSerializable()
class SunSellerInfoModel extends Object {
  @JsonKey(name: 'seller')
  Seller seller;

  @JsonKey(name: 'manager')
  List<Manager> manager;

  @JsonKey(name: 'seller_user')
  SellerUser sellerUser;

  @JsonKey(name: 'daily')
  Daily daily;

  @JsonKey(name: 'config')
  List<dynamic> config;

  @JsonKey(name: 'setting')
  Setting setting;

  @JsonKey(name: 'scatter')
  int scatter;

  @JsonKey(name: 'room')
  int room;

  @JsonKey(name: 'cassette')
  int cassette;

  SunSellerInfoModel(
    this.seller,
    this.manager,
    this.sellerUser,
    this.daily,
    this.config,
    this.setting,
    this.scatter,
    this.room,
    this.cassette,
  );

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

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

@JsonSerializable()
class Seller extends Object {
  @JsonKey(name: 'id')
  String id;

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

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

  @JsonKey(name: 'seller_image')
  String sellerImage;

  @JsonKey(name: 'map_address')
  String mapAddress;

  @JsonKey(name: 'is_call_tel')
  String isCallTel;

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

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

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

  @JsonKey(name: 'is_sms')
  String isSms;

  @JsonKey(name: 'is_open_order')
  String isOpenOrder;

  @JsonKey(name: 'is_open_wine')
  String isOpenWine;

  Seller(
    this.id,
    this.sellername,
    this.selleralias,
    this.sellerImage,
    this.mapAddress,
    this.isCallTel,
    this.daily,
    this.lat,
    this.long,
    this.isSms,
    this.isOpenOrder,
    this.isOpenWine,
  );

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

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

@JsonSerializable()
class Manager extends Object {
  @JsonKey(name: 'role_name')
  String roleName;

  @JsonKey(name: 'id')
  dynamic id;

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

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

  @JsonKey(name: 'receipt_code')
  String receiptCode;

  @JsonKey(name: 'user_name')
  String userName;

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

  @JsonKey(name: 'status')
  dynamic status;

  @JsonKey(name: 'is_first')
  dynamic isFirst;

  @JsonKey(name: 'disting')
  dynamic disting;

  @JsonKey(name: 'code')
  dynamic code;

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

  @JsonKey(name: 'nick_name')
  String nickName;

  Manager(
    this.roleName,
    this.id,
    this.sellerid,
    this.openid,
    this.receiptCode,
    this.userName,
    this.cdate,
    this.status,
    this.isFirst,
    this.disting,
    this.code,
    this.uid,
    this.nickName,
  );

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

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

@JsonSerializable()
class SellerUser extends Object {
  SellerUser();

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

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

@JsonSerializable()
class Daily extends Object {
  @JsonKey(name: 'morning')
  String morning;

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

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

  Daily(
    this.morning,
    this.noon,
    this.night,
  );

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

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

  @override
  String toString() {
    return 'Daily{morning: $morning, noon: $noon, night: $night}';
  }


}

@JsonSerializable()
class Setting extends Object {
  @JsonKey(name: 'template_code')
  String templateCode;

  Setting(
    this.templateCode,
  );

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

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