Сначала ваш json недействителен (VAlidate на https://jsonlint.com/), это должно быть
{
"status": "true",
"data": [
{
"idpekerjaan": "1",
"namapekerjaan": "Apel Pagi / Sore",
"subpekerjaan": [
{
"idsubpekerjaan": "2",
"namasubpekerjaan": "Apel Pagi/Sore",
"standarwaktu": "15"
},
{
"idsubpekerjaan": "3",
"namasubpekerjaan": "Apel Pagi/Sore",
"standarwaktu": "20"
}
]
},
{
"idpekerjaan": "2",
"namapekerjaan": "Upacara",
"subpekerjaan": [
{
"idsubpekerjaan": "10",
"namasubpekerjaan": "Upacara",
"standarwaktu": "60"
},
{
"idsubpekerjaan": "11",
"namasubpekerjaan": "Upacara",
"standarwaktu": "90"
}
]
}
]
}
Теперь попробуйте с классом
// To parse this JSON data, do
//
// final myModel = myModelFromJson(jsonString);
import 'dart:convert';
MyModel myModelFromJson(String str) => MyModel.fromJson(json.decode(str));
String myModelToJson(MyModel data) => json.encode(data.toJson());
class MyModel {
String status;
List<Datum> data;
MyModel({
this.status,
this.data,
});
factory MyModel.fromJson(Map<String, dynamic> json) => MyModel(
status: json["status"],
data: List<Datum>.from(json["data"].map((x) => Datum.fromJson(x))),
);
Map<String, dynamic> toJson() => {
"status": status,
"data": List<dynamic>.from(data.map((x) => x.toJson())),
};
}
class Datum {
String idpekerjaan;
String namapekerjaan;
List<Subpekerjaan> subpekerjaan;
Datum({
this.idpekerjaan,
this.namapekerjaan,
this.subpekerjaan,
});
factory Datum.fromJson(Map<String, dynamic> json) => Datum(
idpekerjaan: json["idpekerjaan"],
namapekerjaan: json["namapekerjaan"],
subpekerjaan: List<Subpekerjaan>.from(json["subpekerjaan"].map((x) => Subpekerjaan.fromJson(x))),
);
Map<String, dynamic> toJson() => {
"idpekerjaan": idpekerjaan,
"namapekerjaan": namapekerjaan,
"subpekerjaan": List<dynamic>.from(subpekerjaan.map((x) => x.toJson())),
};
}
class Subpekerjaan {
String idsubpekerjaan;
String namasubpekerjaan;
String standarwaktu;
Subpekerjaan({
this.idsubpekerjaan,
this.namasubpekerjaan,
this.standarwaktu,
});
factory Subpekerjaan.fromJson(Map<String, dynamic> json) => Subpekerjaan(
idsubpekerjaan: json["idsubpekerjaan"],
namasubpekerjaan: json["namasubpekerjaan"],
standarwaktu: json["standarwaktu"],
);
Map<String, dynamic> toJson() => {
"idsubpekerjaan": idsubpekerjaan,
"namasubpekerjaan": namasubpekerjaan,
"standarwaktu": standarwaktu,
};
}