You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cloudsolutions-atoms/lib/models/new_models/mapped_sites.dart

323 lines
9.5 KiB
Dart

6 months ago
import 'package:test_sa/models/base.dart';
import 'package:test_sa/models/new_models/room_model.dart';
class MappedSite extends Base {
int? id;
String? custName;
int? languageId;
List<MappedTranslation>? translations;
int? customerCode;
dynamic costOfCustomerId;
dynamic costOfCustomerName;
dynamic taxId;
dynamic taxName;
dynamic custCategoryId;
dynamic custCategoryName;
dynamic custTypeId;
dynamic custTypeName;
dynamic custGroupId;
dynamic custGroupName;
dynamic invCollectionRep;
dynamic salesRep;
int? cityId;
String? cityName;
dynamic collectionPeriod1Id;
dynamic collectionPeriod1Name;
dynamic collectionPeriod2Id;
dynamic collectionPeriod2Name;
dynamic creditLimit;
dynamic salesSubRepId;
dynamic salesSubRepName;
dynamic initialLetterText;
dynamic assignedEmployeeId;
dynamic assignedEmployeeUserName;
dynamic groupLeaderId;
dynamic groupLeaderUserName;
int? organizationId;
String? orgCode;
String? orgName;
String? orgPostalCode;
List<dynamic>? attachments;
List<MappedBuilding>? buildings;
dynamic operatingUnitNumber;
dynamic operatingUnitName;
List<dynamic>? custEndPoints;
dynamic createdBy;
dynamic createdDate;
dynamic modifiedBy;
dynamic modifiedDate;
MappedSite({
this.id,
this.custName,
this.languageId,
this.translations,
this.customerCode,
this.costOfCustomerId,
this.costOfCustomerName,
this.taxId,
this.taxName,
this.custCategoryId,
this.custCategoryName,
this.custTypeId,
this.custTypeName,
this.custGroupId,
this.custGroupName,
this.invCollectionRep,
this.salesRep,
this.cityId,
this.cityName,
this.collectionPeriod1Id,
this.collectionPeriod1Name,
this.collectionPeriod2Id,
this.collectionPeriod2Name,
this.creditLimit,
this.salesSubRepId,
this.salesSubRepName,
this.initialLetterText,
this.assignedEmployeeId,
this.assignedEmployeeUserName,
this.groupLeaderId,
this.groupLeaderUserName,
this.organizationId,
this.orgCode,
this.orgName,
this.orgPostalCode,
this.attachments,
this.buildings,
this.operatingUnitNumber,
this.operatingUnitName,
this.custEndPoints,
this.createdBy,
this.createdDate,
this.modifiedBy,
this.modifiedDate,
}) : super(identifier: id?.toString() ?? '', name: custName);
MappedSite.fromJson(Map<String, dynamic> json) {
id = json['id'];
identifier = id?.toString() ?? ''; // Handle potential null id
custName = json['custName'];
name = custName;
languageId = json['languageId'];
translations = (json['translations'] as List?)?.map((e) => MappedTranslation.fromJson(e)).toList();
customerCode = json['customerCode'];
costOfCustomerId = json['costOfCustomerId'];
costOfCustomerName = json['costOfCustomerName'];
taxId = json['taxId'];
taxName = json['taxName'];
custCategoryId = json['custCategoryId'];
custCategoryName = json['custCategoryName'];
custTypeId = json['custTypeId'];
custTypeName = json['custTypeName'];
custGroupId = json['custGroupId'];
custGroupName = json['custGroupName'];
invCollectionRep = json['invCollectionRep'];
salesRep = json['salesRep'];
cityId = json['cityId'];
cityName = json['cityName'];
collectionPeriod1Id = json['collectionPeriod_1Id'];
collectionPeriod1Name = json['collectionPeriod_1Name'];
collectionPeriod2Id = json['collectionPeriod_2Id'];
collectionPeriod2Name = json['collectionPeriod_2Name'];
creditLimit = json['creditLimit'];
salesSubRepId = json['salesSubRepId'];
salesSubRepName = json['salesSubRepName'];
initialLetterText = json['initialLetterText'];
assignedEmployeeId = json['assignedEmployeeId'];
assignedEmployeeUserName = json['assignedEmployeeUserName'];
groupLeaderId = json['groupLeaderId'];
groupLeaderUserName = json['groupLeaderUserName'];
organizationId = json['organizationId'];
orgCode = json['orgCode'];
orgName = json['orgName'];
orgPostalCode = json['orgPostalCode'];
attachments = json['attachments'];
buildings = (json['buildings'] as List?)?.map((e) => MappedBuilding.fromJson(e)).toList();
operatingUnitNumber = json['operatingUnitNumber'];
operatingUnitName = json['operatingUnitName'];
custEndPoints = json['custEndPoints'];
createdBy = json['createdBy'];
createdDate = json['createdDate'];
modifiedBy = json['modifiedBy'];
modifiedDate = json['modifiedDate'];
}
Map<String, dynamic> toJson() => {
'id': id,
'custName': custName,
'languageId': languageId,
'translations': translations?.map((e) => e.toJson()).toList(),
'customerCode': customerCode,
'costOfCustomerId': costOfCustomerId,
'costOfCustomerName': costOfCustomerName,
'taxId': taxId,
'taxName': taxName,
'custCategoryId': custCategoryId,
'custCategoryName': custCategoryName,
'custTypeId': custTypeId,
'custTypeName': custTypeName,
'custGroupId': custGroupId,
'custGroupName': custGroupName,
'invCollectionRep': invCollectionRep,
'salesRep': salesRep,
'cityId': cityId,
'cityName': cityName,
'collectionPeriod_1Id': collectionPeriod1Id,
'collectionPeriod_1Name': collectionPeriod1Name,
'collectionPeriod_2Id': collectionPeriod2Id,
'collectionPeriod_2Name': collectionPeriod2Name,
'creditLimit': creditLimit,
'salesSubRepId': salesSubRepId,
'salesSubRepName': salesSubRepName,
'initialLetterText': initialLetterText,
'assignedEmployeeId': assignedEmployeeId,
'assignedEmployeeUserName': assignedEmployeeUserName,
'groupLeaderId': groupLeaderId,
'groupLeaderUserName': groupLeaderUserName,
'organizationId': organizationId,
'orgCode': orgCode,
'orgName': orgName,
'orgPostalCode': orgPostalCode,
'attachments': attachments,
'buildings': buildings?.map((e) => e.toJson()).toList(),
'operatingUnitNumber': operatingUnitNumber,
'operatingUnitName': operatingUnitName,
'custEndPoints': custEndPoints,
'createdBy': createdBy,
'createdDate': createdDate,
'modifiedBy': modifiedBy,
'modifiedDate': modifiedDate,
};
}
class MappedTranslation {
int? id;
int? customerId;
int? langId;
String? langName;
String? nameValue;
MappedTranslation();
MappedTranslation.fromJson(Map<String, dynamic> json) {
id = json['id'];
customerId = json['customerId'];
langId = json['langId'];
langName = json['langName'];
nameValue = json['nameValue'];
}
Map<String, dynamic> toJson() => {
'id': id,
'customerId': customerId,
'langId': langId,
'langName': langName,
'nameValue': nameValue,
};
}
class MappedBuilding extends Base {
int? id;
int? customerId;
int? clientBuildingId;
String? clientBuildingName;
List<MappedFloor>? floors;
MappedBuilding({
this.id,
this.customerId,
this.clientBuildingId,
this.clientBuildingName,
this.floors,
}) : super(identifier: id?.toString() ?? '', name: clientBuildingName);
MappedBuilding.fromJson(Map<String, dynamic> json) {
id = json['id'];
identifier = id?.toString() ?? '';
customerId = json['customerId'];
clientBuildingId = json['clientBuildingId'];
clientBuildingName = json['clientBuildingName'];
name = clientBuildingName??json['name'];
6 months ago
floors = (json['floors'] as List?)?.map((e) => MappedFloor.fromJson(e)).toList();
}
Map<String, dynamic> toJson() => {
'id': id,
'customerId': customerId,
'clientBuildingId': clientBuildingId,
'clientBuildingName': clientBuildingName,
'floors': floors?.map((e) => e.toJson()).toList(),
};
}
class MappedFloor extends Base {
int? id;
int? buildingId;
int? clientFloorId;
String? clientFloorName;
List<MappedDepartment>? departments;
MappedFloor({
this.id,
this.buildingId,
this.clientFloorId,
this.clientFloorName,
this.departments,
}) : super(identifier: id?.toString() ?? '', name: clientFloorName);
MappedFloor.fromJson(Map<String, dynamic> json) {
id = json['id'];
identifier = id?.toString() ?? '';
buildingId = json['buildingId'];
clientFloorId = json['clientFloorId'];
clientFloorName = json['clientFloorName'];
name = clientFloorName??json['name'];
6 months ago
departments = (json['departments'] as List?)?.map((e) => MappedDepartment.fromJson(e)).toList();
}
Map<String, dynamic> toJson() => {
'id': id,
'buildingId': buildingId,
'clientFloorId': clientFloorId,
'clientFloorName': clientFloorName,
'departments': departments?.map((e) => e.toJson()).toList(),
};
}
class MappedDepartment extends Base {
int? id;
int? floorId;
int? departmentId;
String? departmentName;
List<Rooms>? rooms;
MappedDepartment({
this.id,
this.floorId,
this.departmentId,
this.departmentName,
this.rooms,
}) : super(identifier: id?.toString() ?? '', name: departmentName);
MappedDepartment.fromJson(Map<String, dynamic> json) {
id = json['id'];
identifier = id?.toString() ?? '';
floorId = json['floorId'];
departmentId = json['departmentId'];
departmentName = json['departmentName'];
name = departmentName??json['name'];
6 months ago
// rooms = json['rooms'];
}
Map<String, dynamic> toJson() => {
'id': id,
'floorId': floorId,
'departmentId': departmentId,
'departmentName': departmentName,
'rooms': rooms,
};
}