import 'package:huixiang/retrofit/data/coupon_vo.dart';
import 'package:huixiang/retrofit/data/store_type.dart';


class Store {
  Store();

  String id;
  String createTime;
  String createUser;
  String updateTime;
  String updateUser;
  String tenantCode;
  bool useErp;
  String openStartTime;
  String openEndTime;
  String perCapitaConsumption;
  String storeName;
  double distance;
  String logo;
  String facade;
  String shipAddress;
  dynamic remark;
  String mobile;
  String longitude;
  String latitude;
  dynamic refundAddress;
  dynamic refundTel;
  dynamic refundContact;
  int isAutoSendRefundAddress;
  String province;
  String city;
  String district;
  String address;
  String headName;
  String headMobile;
  CouponVo couponVO;
  dynamic deliveryInfo;
  String businessType;
  StoreType posType;

  factory Store.fromJson(Map<String, dynamic> json) => Store()
    ..id = json['id'] as String
    ..createTime = json['createTime'] as String
    ..createUser = json['createUser'] as String
    ..updateTime = json['updateTime'] as String
    ..updateUser = json['updateUser'] as String
    ..tenantCode = json['tenantCode'] as String
    ..useErp = json['useErp'] as bool
    ..openStartTime = json['openStartTime'] as String
    ..openEndTime = json['openEndTime'] as String
    ..perCapitaConsumption = json['perCapitaConsumption'] as String
    ..storeName = json['storeName'] as String
    ..distance = (json['distance'] as num)?.toDouble()
    ..logo = json['logo'] as String
    ..facade = json['facade'] as String
    ..shipAddress = json['shipAddress'] as String
    ..remark = json['remark']
    ..mobile = json['mobile'] as String
    ..longitude = json['longitude'] as String
    ..latitude = json['latitude'] as String
    ..refundAddress = json['refundAddress']
    ..refundTel = json['refundTel']
    ..refundContact = json['refundContact']
    ..isAutoSendRefundAddress = json['isAutoSendRefundAddress'] as int
    ..province = json['province'] as String
    ..city = json['city'] as String
    ..district = json['district'] as String
    ..address = json['address'] as String
    ..headName = json['headName'] as String
    ..headMobile = json['headMobile'] as String
    ..deliveryInfo = json['deliveryInfo']
    ..businessType = json['businessType'] as String
    ..couponVO = json['couponVO'] == null ? null : CouponVo.fromJson(json['couponVO'])
    ..posType = json['posType'] == null
        ? null
        : StoreType.fromJson(json['posType'] as Map<String, dynamic>);

  Map<String, dynamic> toJson() => <String, dynamic>{
    'id': this.id,
    'createTime': this.createTime,
    'createUser': this.createUser,
    'updateTime': this.updateTime,
    'updateUser': this.updateUser,
    'tenantCode': this.tenantCode,
    'useErp': this.useErp,
    'openStartTime': this.openStartTime,
    'openEndTime': this.openEndTime,
    'perCapitaConsumption': this.perCapitaConsumption,
    'storeName': this.storeName,
    'distance': this.distance,
    'logo': this.logo,
    'facade': this.facade,
    'shipAddress': this.shipAddress,
    'remark': this.remark,
    'mobile': this.mobile,
    'longitude': this.longitude,
    'latitude': this.latitude,
    'refundAddress': this.refundAddress,
    'refundTel': this.refundTel,
    'refundContact': this.refundContact,
    'isAutoSendRefundAddress': this.isAutoSendRefundAddress,
    'province': this.province,
    'city': this.city,
    'district': this.district,
    'address': this.address,
    'headName': this.headName,
    'headMobile': this.headMobile,
    'deliveryInfo': this.deliveryInfo,
    'businessType': this.businessType,
    'couponVO': this.couponVO != null ? this.couponVO.toJson() : null,
    'posType': this.posType,
  };

}