feat: V/R 유지보수 시스템 전환 및 대시보드 테이블 형태 완성
Some checks failed
Flutter Test & Quality Check / Test on macos-latest (push) Has been cancelled
Flutter Test & Quality Check / Test on ubuntu-latest (push) Has been cancelled
Flutter Test & Quality Check / Build APK (push) Has been cancelled

- V/R 시스템 완전 전환: WARRANTY/CONTRACT/INSPECTION → V(방문)/R(원격)
- 유지보수 대시보드 카드 → StandardDataTable 테이블 형태 전환
- "조회중..." 문제 해결: 백엔드 직접 필드 사용 (equipment_model, company_name)
- MaintenanceDto 신규 필드 추가: company_id, company_name, equipment_serial, equipment_model
- preloadEquipmentData 비활성화로 불필요한 equipment-history API 호출 제거
- CO-STAR 프레임워크 적용 및 CLAUDE.md v3.0 업데이트
- Flutter Analyze ERROR: 0 유지, 100% shadcn_ui 컴플라이언스

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
JiWoong Sul
2025-09-05 14:33:20 +09:00
parent 2c20999025
commit 519e1883a3
46 changed files with 7804 additions and 1034 deletions

View File

@@ -0,0 +1,729 @@
// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
part of 'maintenance_stats_dto.dart';
// **************************************************************************
// FreezedGenerator
// **************************************************************************
T _$identity<T>(T value) => value;
final _privateConstructorUsedError = UnsupportedError(
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
MaintenanceStatsDto _$MaintenanceStatsDtoFromJson(Map<String, dynamic> json) {
return _MaintenanceStatsDto.fromJson(json);
}
/// @nodoc
mixin _$MaintenanceStatsDto {
// 기본 계약 통계
@JsonKey(name: 'active_contracts')
int get activeContracts => throw _privateConstructorUsedError;
@JsonKey(name: 'total_contracts')
int get totalContracts =>
throw _privateConstructorUsedError; // 만료 기간별 통계 (사용자 요구사항)
@JsonKey(name: 'expiring_60_days')
int get expiring60Days => throw _privateConstructorUsedError;
@JsonKey(name: 'expiring_30_days')
int get expiring30Days => throw _privateConstructorUsedError;
@JsonKey(name: 'expiring_7_days')
int get expiring7Days => throw _privateConstructorUsedError;
@JsonKey(name: 'expired_contracts')
int get expiredContracts =>
throw _privateConstructorUsedError; // 유지보수 타입별 통계 (V/R 시스템)
@JsonKey(name: 'visit_contracts')
int get visitContracts => throw _privateConstructorUsedError;
@JsonKey(name: 'remote_contracts')
int get remoteContracts => throw _privateConstructorUsedError; // 예정된 작업 통계
@JsonKey(name: 'upcoming_visits')
int get upcomingVisits => throw _privateConstructorUsedError;
@JsonKey(name: 'overdue_maintenances')
int get overdueMaintenances => throw _privateConstructorUsedError; // 추가 메트릭
@JsonKey(name: 'total_revenue_at_risk')
double get totalRevenueAtRisk => throw _privateConstructorUsedError;
@JsonKey(name: 'completion_rate')
double get completionRate =>
throw _privateConstructorUsedError; // 마지막 업데이트 시간
@JsonKey(name: 'updated_at')
DateTime? get updatedAt => throw _privateConstructorUsedError;
/// Serializes this MaintenanceStatsDto to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of MaintenanceStatsDto
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$MaintenanceStatsDtoCopyWith<MaintenanceStatsDto> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $MaintenanceStatsDtoCopyWith<$Res> {
factory $MaintenanceStatsDtoCopyWith(
MaintenanceStatsDto value, $Res Function(MaintenanceStatsDto) then) =
_$MaintenanceStatsDtoCopyWithImpl<$Res, MaintenanceStatsDto>;
@useResult
$Res call(
{@JsonKey(name: 'active_contracts') int activeContracts,
@JsonKey(name: 'total_contracts') int totalContracts,
@JsonKey(name: 'expiring_60_days') int expiring60Days,
@JsonKey(name: 'expiring_30_days') int expiring30Days,
@JsonKey(name: 'expiring_7_days') int expiring7Days,
@JsonKey(name: 'expired_contracts') int expiredContracts,
@JsonKey(name: 'visit_contracts') int visitContracts,
@JsonKey(name: 'remote_contracts') int remoteContracts,
@JsonKey(name: 'upcoming_visits') int upcomingVisits,
@JsonKey(name: 'overdue_maintenances') int overdueMaintenances,
@JsonKey(name: 'total_revenue_at_risk') double totalRevenueAtRisk,
@JsonKey(name: 'completion_rate') double completionRate,
@JsonKey(name: 'updated_at') DateTime? updatedAt});
}
/// @nodoc
class _$MaintenanceStatsDtoCopyWithImpl<$Res, $Val extends MaintenanceStatsDto>
implements $MaintenanceStatsDtoCopyWith<$Res> {
_$MaintenanceStatsDtoCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of MaintenanceStatsDto
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? activeContracts = null,
Object? totalContracts = null,
Object? expiring60Days = null,
Object? expiring30Days = null,
Object? expiring7Days = null,
Object? expiredContracts = null,
Object? visitContracts = null,
Object? remoteContracts = null,
Object? upcomingVisits = null,
Object? overdueMaintenances = null,
Object? totalRevenueAtRisk = null,
Object? completionRate = null,
Object? updatedAt = freezed,
}) {
return _then(_value.copyWith(
activeContracts: null == activeContracts
? _value.activeContracts
: activeContracts // ignore: cast_nullable_to_non_nullable
as int,
totalContracts: null == totalContracts
? _value.totalContracts
: totalContracts // ignore: cast_nullable_to_non_nullable
as int,
expiring60Days: null == expiring60Days
? _value.expiring60Days
: expiring60Days // ignore: cast_nullable_to_non_nullable
as int,
expiring30Days: null == expiring30Days
? _value.expiring30Days
: expiring30Days // ignore: cast_nullable_to_non_nullable
as int,
expiring7Days: null == expiring7Days
? _value.expiring7Days
: expiring7Days // ignore: cast_nullable_to_non_nullable
as int,
expiredContracts: null == expiredContracts
? _value.expiredContracts
: expiredContracts // ignore: cast_nullable_to_non_nullable
as int,
visitContracts: null == visitContracts
? _value.visitContracts
: visitContracts // ignore: cast_nullable_to_non_nullable
as int,
remoteContracts: null == remoteContracts
? _value.remoteContracts
: remoteContracts // ignore: cast_nullable_to_non_nullable
as int,
upcomingVisits: null == upcomingVisits
? _value.upcomingVisits
: upcomingVisits // ignore: cast_nullable_to_non_nullable
as int,
overdueMaintenances: null == overdueMaintenances
? _value.overdueMaintenances
: overdueMaintenances // ignore: cast_nullable_to_non_nullable
as int,
totalRevenueAtRisk: null == totalRevenueAtRisk
? _value.totalRevenueAtRisk
: totalRevenueAtRisk // ignore: cast_nullable_to_non_nullable
as double,
completionRate: null == completionRate
? _value.completionRate
: completionRate // ignore: cast_nullable_to_non_nullable
as double,
updatedAt: freezed == updatedAt
? _value.updatedAt
: updatedAt // ignore: cast_nullable_to_non_nullable
as DateTime?,
) as $Val);
}
}
/// @nodoc
abstract class _$$MaintenanceStatsDtoImplCopyWith<$Res>
implements $MaintenanceStatsDtoCopyWith<$Res> {
factory _$$MaintenanceStatsDtoImplCopyWith(_$MaintenanceStatsDtoImpl value,
$Res Function(_$MaintenanceStatsDtoImpl) then) =
__$$MaintenanceStatsDtoImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{@JsonKey(name: 'active_contracts') int activeContracts,
@JsonKey(name: 'total_contracts') int totalContracts,
@JsonKey(name: 'expiring_60_days') int expiring60Days,
@JsonKey(name: 'expiring_30_days') int expiring30Days,
@JsonKey(name: 'expiring_7_days') int expiring7Days,
@JsonKey(name: 'expired_contracts') int expiredContracts,
@JsonKey(name: 'visit_contracts') int visitContracts,
@JsonKey(name: 'remote_contracts') int remoteContracts,
@JsonKey(name: 'upcoming_visits') int upcomingVisits,
@JsonKey(name: 'overdue_maintenances') int overdueMaintenances,
@JsonKey(name: 'total_revenue_at_risk') double totalRevenueAtRisk,
@JsonKey(name: 'completion_rate') double completionRate,
@JsonKey(name: 'updated_at') DateTime? updatedAt});
}
/// @nodoc
class __$$MaintenanceStatsDtoImplCopyWithImpl<$Res>
extends _$MaintenanceStatsDtoCopyWithImpl<$Res, _$MaintenanceStatsDtoImpl>
implements _$$MaintenanceStatsDtoImplCopyWith<$Res> {
__$$MaintenanceStatsDtoImplCopyWithImpl(_$MaintenanceStatsDtoImpl _value,
$Res Function(_$MaintenanceStatsDtoImpl) _then)
: super(_value, _then);
/// Create a copy of MaintenanceStatsDto
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? activeContracts = null,
Object? totalContracts = null,
Object? expiring60Days = null,
Object? expiring30Days = null,
Object? expiring7Days = null,
Object? expiredContracts = null,
Object? visitContracts = null,
Object? remoteContracts = null,
Object? upcomingVisits = null,
Object? overdueMaintenances = null,
Object? totalRevenueAtRisk = null,
Object? completionRate = null,
Object? updatedAt = freezed,
}) {
return _then(_$MaintenanceStatsDtoImpl(
activeContracts: null == activeContracts
? _value.activeContracts
: activeContracts // ignore: cast_nullable_to_non_nullable
as int,
totalContracts: null == totalContracts
? _value.totalContracts
: totalContracts // ignore: cast_nullable_to_non_nullable
as int,
expiring60Days: null == expiring60Days
? _value.expiring60Days
: expiring60Days // ignore: cast_nullable_to_non_nullable
as int,
expiring30Days: null == expiring30Days
? _value.expiring30Days
: expiring30Days // ignore: cast_nullable_to_non_nullable
as int,
expiring7Days: null == expiring7Days
? _value.expiring7Days
: expiring7Days // ignore: cast_nullable_to_non_nullable
as int,
expiredContracts: null == expiredContracts
? _value.expiredContracts
: expiredContracts // ignore: cast_nullable_to_non_nullable
as int,
visitContracts: null == visitContracts
? _value.visitContracts
: visitContracts // ignore: cast_nullable_to_non_nullable
as int,
remoteContracts: null == remoteContracts
? _value.remoteContracts
: remoteContracts // ignore: cast_nullable_to_non_nullable
as int,
upcomingVisits: null == upcomingVisits
? _value.upcomingVisits
: upcomingVisits // ignore: cast_nullable_to_non_nullable
as int,
overdueMaintenances: null == overdueMaintenances
? _value.overdueMaintenances
: overdueMaintenances // ignore: cast_nullable_to_non_nullable
as int,
totalRevenueAtRisk: null == totalRevenueAtRisk
? _value.totalRevenueAtRisk
: totalRevenueAtRisk // ignore: cast_nullable_to_non_nullable
as double,
completionRate: null == completionRate
? _value.completionRate
: completionRate // ignore: cast_nullable_to_non_nullable
as double,
updatedAt: freezed == updatedAt
? _value.updatedAt
: updatedAt // ignore: cast_nullable_to_non_nullable
as DateTime?,
));
}
}
/// @nodoc
@JsonSerializable()
class _$MaintenanceStatsDtoImpl implements _MaintenanceStatsDto {
const _$MaintenanceStatsDtoImpl(
{@JsonKey(name: 'active_contracts') this.activeContracts = 0,
@JsonKey(name: 'total_contracts') this.totalContracts = 0,
@JsonKey(name: 'expiring_60_days') this.expiring60Days = 0,
@JsonKey(name: 'expiring_30_days') this.expiring30Days = 0,
@JsonKey(name: 'expiring_7_days') this.expiring7Days = 0,
@JsonKey(name: 'expired_contracts') this.expiredContracts = 0,
@JsonKey(name: 'visit_contracts') this.visitContracts = 0,
@JsonKey(name: 'remote_contracts') this.remoteContracts = 0,
@JsonKey(name: 'upcoming_visits') this.upcomingVisits = 0,
@JsonKey(name: 'overdue_maintenances') this.overdueMaintenances = 0,
@JsonKey(name: 'total_revenue_at_risk') this.totalRevenueAtRisk = 0.0,
@JsonKey(name: 'completion_rate') this.completionRate = 0.0,
@JsonKey(name: 'updated_at') this.updatedAt});
factory _$MaintenanceStatsDtoImpl.fromJson(Map<String, dynamic> json) =>
_$$MaintenanceStatsDtoImplFromJson(json);
// 기본 계약 통계
@override
@JsonKey(name: 'active_contracts')
final int activeContracts;
@override
@JsonKey(name: 'total_contracts')
final int totalContracts;
// 만료 기간별 통계 (사용자 요구사항)
@override
@JsonKey(name: 'expiring_60_days')
final int expiring60Days;
@override
@JsonKey(name: 'expiring_30_days')
final int expiring30Days;
@override
@JsonKey(name: 'expiring_7_days')
final int expiring7Days;
@override
@JsonKey(name: 'expired_contracts')
final int expiredContracts;
// 유지보수 타입별 통계 (V/R 시스템)
@override
@JsonKey(name: 'visit_contracts')
final int visitContracts;
@override
@JsonKey(name: 'remote_contracts')
final int remoteContracts;
// 예정된 작업 통계
@override
@JsonKey(name: 'upcoming_visits')
final int upcomingVisits;
@override
@JsonKey(name: 'overdue_maintenances')
final int overdueMaintenances;
// 추가 메트릭
@override
@JsonKey(name: 'total_revenue_at_risk')
final double totalRevenueAtRisk;
@override
@JsonKey(name: 'completion_rate')
final double completionRate;
// 마지막 업데이트 시간
@override
@JsonKey(name: 'updated_at')
final DateTime? updatedAt;
@override
String toString() {
return 'MaintenanceStatsDto(activeContracts: $activeContracts, totalContracts: $totalContracts, expiring60Days: $expiring60Days, expiring30Days: $expiring30Days, expiring7Days: $expiring7Days, expiredContracts: $expiredContracts, visitContracts: $visitContracts, remoteContracts: $remoteContracts, upcomingVisits: $upcomingVisits, overdueMaintenances: $overdueMaintenances, totalRevenueAtRisk: $totalRevenueAtRisk, completionRate: $completionRate, updatedAt: $updatedAt)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$MaintenanceStatsDtoImpl &&
(identical(other.activeContracts, activeContracts) ||
other.activeContracts == activeContracts) &&
(identical(other.totalContracts, totalContracts) ||
other.totalContracts == totalContracts) &&
(identical(other.expiring60Days, expiring60Days) ||
other.expiring60Days == expiring60Days) &&
(identical(other.expiring30Days, expiring30Days) ||
other.expiring30Days == expiring30Days) &&
(identical(other.expiring7Days, expiring7Days) ||
other.expiring7Days == expiring7Days) &&
(identical(other.expiredContracts, expiredContracts) ||
other.expiredContracts == expiredContracts) &&
(identical(other.visitContracts, visitContracts) ||
other.visitContracts == visitContracts) &&
(identical(other.remoteContracts, remoteContracts) ||
other.remoteContracts == remoteContracts) &&
(identical(other.upcomingVisits, upcomingVisits) ||
other.upcomingVisits == upcomingVisits) &&
(identical(other.overdueMaintenances, overdueMaintenances) ||
other.overdueMaintenances == overdueMaintenances) &&
(identical(other.totalRevenueAtRisk, totalRevenueAtRisk) ||
other.totalRevenueAtRisk == totalRevenueAtRisk) &&
(identical(other.completionRate, completionRate) ||
other.completionRate == completionRate) &&
(identical(other.updatedAt, updatedAt) ||
other.updatedAt == updatedAt));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
activeContracts,
totalContracts,
expiring60Days,
expiring30Days,
expiring7Days,
expiredContracts,
visitContracts,
remoteContracts,
upcomingVisits,
overdueMaintenances,
totalRevenueAtRisk,
completionRate,
updatedAt);
/// Create a copy of MaintenanceStatsDto
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$MaintenanceStatsDtoImplCopyWith<_$MaintenanceStatsDtoImpl> get copyWith =>
__$$MaintenanceStatsDtoImplCopyWithImpl<_$MaintenanceStatsDtoImpl>(
this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$MaintenanceStatsDtoImplToJson(
this,
);
}
}
abstract class _MaintenanceStatsDto implements MaintenanceStatsDto {
const factory _MaintenanceStatsDto(
{@JsonKey(name: 'active_contracts') final int activeContracts,
@JsonKey(name: 'total_contracts') final int totalContracts,
@JsonKey(name: 'expiring_60_days') final int expiring60Days,
@JsonKey(name: 'expiring_30_days') final int expiring30Days,
@JsonKey(name: 'expiring_7_days') final int expiring7Days,
@JsonKey(name: 'expired_contracts') final int expiredContracts,
@JsonKey(name: 'visit_contracts') final int visitContracts,
@JsonKey(name: 'remote_contracts') final int remoteContracts,
@JsonKey(name: 'upcoming_visits') final int upcomingVisits,
@JsonKey(name: 'overdue_maintenances') final int overdueMaintenances,
@JsonKey(name: 'total_revenue_at_risk') final double totalRevenueAtRisk,
@JsonKey(name: 'completion_rate') final double completionRate,
@JsonKey(name: 'updated_at')
final DateTime? updatedAt}) = _$MaintenanceStatsDtoImpl;
factory _MaintenanceStatsDto.fromJson(Map<String, dynamic> json) =
_$MaintenanceStatsDtoImpl.fromJson;
// 기본 계약 통계
@override
@JsonKey(name: 'active_contracts')
int get activeContracts;
@override
@JsonKey(name: 'total_contracts')
int get totalContracts; // 만료 기간별 통계 (사용자 요구사항)
@override
@JsonKey(name: 'expiring_60_days')
int get expiring60Days;
@override
@JsonKey(name: 'expiring_30_days')
int get expiring30Days;
@override
@JsonKey(name: 'expiring_7_days')
int get expiring7Days;
@override
@JsonKey(name: 'expired_contracts')
int get expiredContracts; // 유지보수 타입별 통계 (V/R 시스템)
@override
@JsonKey(name: 'visit_contracts')
int get visitContracts;
@override
@JsonKey(name: 'remote_contracts')
int get remoteContracts; // 예정된 작업 통계
@override
@JsonKey(name: 'upcoming_visits')
int get upcomingVisits;
@override
@JsonKey(name: 'overdue_maintenances')
int get overdueMaintenances; // 추가 메트릭
@override
@JsonKey(name: 'total_revenue_at_risk')
double get totalRevenueAtRisk;
@override
@JsonKey(name: 'completion_rate')
double get completionRate; // 마지막 업데이트 시간
@override
@JsonKey(name: 'updated_at')
DateTime? get updatedAt;
/// Create a copy of MaintenanceStatsDto
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$MaintenanceStatsDtoImplCopyWith<_$MaintenanceStatsDtoImpl> get copyWith =>
throw _privateConstructorUsedError;
}
MaintenanceStatusCardData _$MaintenanceStatusCardDataFromJson(
Map<String, dynamic> json) {
return _MaintenanceStatusCardData.fromJson(json);
}
/// @nodoc
mixin _$MaintenanceStatusCardData {
String get title => throw _privateConstructorUsedError;
int get count => throw _privateConstructorUsedError;
String get subtitle => throw _privateConstructorUsedError;
MaintenanceCardStatus get status => throw _privateConstructorUsedError;
String? get actionLabel => throw _privateConstructorUsedError;
/// Serializes this MaintenanceStatusCardData to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of MaintenanceStatusCardData
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$MaintenanceStatusCardDataCopyWith<MaintenanceStatusCardData> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $MaintenanceStatusCardDataCopyWith<$Res> {
factory $MaintenanceStatusCardDataCopyWith(MaintenanceStatusCardData value,
$Res Function(MaintenanceStatusCardData) then) =
_$MaintenanceStatusCardDataCopyWithImpl<$Res, MaintenanceStatusCardData>;
@useResult
$Res call(
{String title,
int count,
String subtitle,
MaintenanceCardStatus status,
String? actionLabel});
}
/// @nodoc
class _$MaintenanceStatusCardDataCopyWithImpl<$Res,
$Val extends MaintenanceStatusCardData>
implements $MaintenanceStatusCardDataCopyWith<$Res> {
_$MaintenanceStatusCardDataCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of MaintenanceStatusCardData
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? title = null,
Object? count = null,
Object? subtitle = null,
Object? status = null,
Object? actionLabel = freezed,
}) {
return _then(_value.copyWith(
title: null == title
? _value.title
: title // ignore: cast_nullable_to_non_nullable
as String,
count: null == count
? _value.count
: count // ignore: cast_nullable_to_non_nullable
as int,
subtitle: null == subtitle
? _value.subtitle
: subtitle // ignore: cast_nullable_to_non_nullable
as String,
status: null == status
? _value.status
: status // ignore: cast_nullable_to_non_nullable
as MaintenanceCardStatus,
actionLabel: freezed == actionLabel
? _value.actionLabel
: actionLabel // ignore: cast_nullable_to_non_nullable
as String?,
) as $Val);
}
}
/// @nodoc
abstract class _$$MaintenanceStatusCardDataImplCopyWith<$Res>
implements $MaintenanceStatusCardDataCopyWith<$Res> {
factory _$$MaintenanceStatusCardDataImplCopyWith(
_$MaintenanceStatusCardDataImpl value,
$Res Function(_$MaintenanceStatusCardDataImpl) then) =
__$$MaintenanceStatusCardDataImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{String title,
int count,
String subtitle,
MaintenanceCardStatus status,
String? actionLabel});
}
/// @nodoc
class __$$MaintenanceStatusCardDataImplCopyWithImpl<$Res>
extends _$MaintenanceStatusCardDataCopyWithImpl<$Res,
_$MaintenanceStatusCardDataImpl>
implements _$$MaintenanceStatusCardDataImplCopyWith<$Res> {
__$$MaintenanceStatusCardDataImplCopyWithImpl(
_$MaintenanceStatusCardDataImpl _value,
$Res Function(_$MaintenanceStatusCardDataImpl) _then)
: super(_value, _then);
/// Create a copy of MaintenanceStatusCardData
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? title = null,
Object? count = null,
Object? subtitle = null,
Object? status = null,
Object? actionLabel = freezed,
}) {
return _then(_$MaintenanceStatusCardDataImpl(
title: null == title
? _value.title
: title // ignore: cast_nullable_to_non_nullable
as String,
count: null == count
? _value.count
: count // ignore: cast_nullable_to_non_nullable
as int,
subtitle: null == subtitle
? _value.subtitle
: subtitle // ignore: cast_nullable_to_non_nullable
as String,
status: null == status
? _value.status
: status // ignore: cast_nullable_to_non_nullable
as MaintenanceCardStatus,
actionLabel: freezed == actionLabel
? _value.actionLabel
: actionLabel // ignore: cast_nullable_to_non_nullable
as String?,
));
}
}
/// @nodoc
@JsonSerializable()
class _$MaintenanceStatusCardDataImpl implements _MaintenanceStatusCardData {
const _$MaintenanceStatusCardDataImpl(
{required this.title,
required this.count,
required this.subtitle,
required this.status,
this.actionLabel});
factory _$MaintenanceStatusCardDataImpl.fromJson(Map<String, dynamic> json) =>
_$$MaintenanceStatusCardDataImplFromJson(json);
@override
final String title;
@override
final int count;
@override
final String subtitle;
@override
final MaintenanceCardStatus status;
@override
final String? actionLabel;
@override
String toString() {
return 'MaintenanceStatusCardData(title: $title, count: $count, subtitle: $subtitle, status: $status, actionLabel: $actionLabel)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$MaintenanceStatusCardDataImpl &&
(identical(other.title, title) || other.title == title) &&
(identical(other.count, count) || other.count == count) &&
(identical(other.subtitle, subtitle) ||
other.subtitle == subtitle) &&
(identical(other.status, status) || other.status == status) &&
(identical(other.actionLabel, actionLabel) ||
other.actionLabel == actionLabel));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode =>
Object.hash(runtimeType, title, count, subtitle, status, actionLabel);
/// Create a copy of MaintenanceStatusCardData
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$MaintenanceStatusCardDataImplCopyWith<_$MaintenanceStatusCardDataImpl>
get copyWith => __$$MaintenanceStatusCardDataImplCopyWithImpl<
_$MaintenanceStatusCardDataImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$MaintenanceStatusCardDataImplToJson(
this,
);
}
}
abstract class _MaintenanceStatusCardData implements MaintenanceStatusCardData {
const factory _MaintenanceStatusCardData(
{required final String title,
required final int count,
required final String subtitle,
required final MaintenanceCardStatus status,
final String? actionLabel}) = _$MaintenanceStatusCardDataImpl;
factory _MaintenanceStatusCardData.fromJson(Map<String, dynamic> json) =
_$MaintenanceStatusCardDataImpl.fromJson;
@override
String get title;
@override
int get count;
@override
String get subtitle;
@override
MaintenanceCardStatus get status;
@override
String? get actionLabel;
/// Create a copy of MaintenanceStatusCardData
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$MaintenanceStatusCardDataImplCopyWith<_$MaintenanceStatusCardDataImpl>
get copyWith => throw _privateConstructorUsedError;
}