You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
aku_new_community/lib/model/user/car_parking_model.dart

93 lines
2.0 KiB

import 'package:flutter/material.dart';
import 'package:common_utils/common_utils.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
class CarParkingModel {
String? code;
int? type;
int? status;
String? effectiveTimeEnd;
String get typeName {
switch (type) {
case 1:
return '产权车位';
case 2:
return '临时车位';
default:
return '未知';
}
}
String get carTypeName {
switch (status) {
case 1:
return '产权车位';
case 2:
return '包年';
case 3:
return '包月';
case 4:
return '临时';
default:
return '未知';
}
}
String get dateName {
if (effectiveTimeEnd == null) return '永久';
if (outdated) return '$effectiveDateValue(已过期)';
return effectiveDateValue;
}
DateTime? get effectiveDate {
if (effectiveTimeEnd == null) return null;
return DateUtil.getDateTime(effectiveTimeEnd!);
}
String get effectiveDateValue =>
DateUtil.formatDate(effectiveDate, format: 'yyyy-MM-dd');
bool get outdated {
if (effectiveDate == null) return false;
DateTime now = DateTime.now();
return effectiveDate!.isAfter(now);
}
List<BoxShadow> get shadow {
if (!outdated)
return [
BoxShadow(
offset: Offset(0, 10.w),
blurRadius: 30.w,
color: Color(0xFFFFF0BF),
)
];
return [
BoxShadow(
offset: Offset(0, 10.w),
blurRadius: 30.w,
color: Color(0xFFF0F0F0),
)
];
}
CarParkingModel({this.code, this.type, this.effectiveTimeEnd});
CarParkingModel.fromJson(Map<String, dynamic> json) {
code = json['code'];
type = json['type'];
effectiveTimeEnd = json['effectiveTimeEnd'];
status = json['status'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['code'] = this.code;
data['type'] = this.type;
data['effectiveTimeEnd'] = this.effectiveTimeEnd;
return data;
}
}