import 'package:maibu_satabot_v2/core/data/base_model.dart'; import '../../../../core/domain/entities/user_entity.dart'; class UserModel extends UserEntity implements BaseModel { UserModel({ required super.userId, required super.username, required super.nickname, required super.token, required super.orgId, super.avatar, super.email, super.phone, super.roleKey, super.siteId, }); factory UserModel.fromJson(Map json) { return UserModel( userId: json['userId']?.toString() ?? '', username: json['username'] ?? '', nickname: json['nickName'] ?? '', token: json['token'] ?? '', orgId: (json['orgId'] as num?)?.toInt() ?? 0, avatar: json['avatar'], email: json['email'], phone: json['phone'], roleKey: json['roleKey'], siteId: (json['siteId'] as num?)?.toInt(), ); } Map toJson() { return { 'userId': userId, 'username': username, 'nickName': nickname, 'token': token, 'orgId': orgId, 'avatar': avatar, 'email': email, 'phone': phone, 'roleKey': roleKey, 'siteId': siteId, }; } toEntity() { return UserEntity( userId: userId, username: username, nickname: nickname, token: token, orgId: orgId, avatar: avatar, email: email, phone: phone, roleKey: roleKey, siteId: siteId, ); } factory UserModel.fromEntity(UserEntity entity) { return UserModel( userId: entity.userId, username: entity.username, nickname: entity.nickname, token: entity.token, orgId: entity.orgId, avatar: entity.avatar, email: entity.email, phone: entity.phone, roleKey: entity.roleKey, siteId: entity.siteId, ); } }