package foundation.geography;
|
|
import foundation.dao.preload.Bucket;
|
import foundation.data.entity.Entity;
|
import foundation.json.IJSONProvider;
|
import foundation.json.IJSONWriter;
|
|
public class Province implements IJSONProvider {
|
|
private String id;
|
private String name;
|
private Bucket<City> citys;
|
|
public Province() {
|
citys = new Bucket<City>();
|
}
|
|
public void load(Entity entity) {
|
id = entity.getString("id");
|
name = entity.getString("name");
|
}
|
|
public void loadOneCity(City city) {
|
citys.loadOne(city.getId(), city);
|
}
|
|
public String getId() {
|
return id;
|
}
|
|
@Override
|
public void writeJSON(IJSONWriter writer) {
|
writer.beginObject("province");
|
writeJSONBody(writer);
|
writer.endObject();
|
}
|
|
public void writeJSONBody(IJSONWriter writer) {
|
//1. body
|
writer.write("id", id);
|
writer.write("code", name);
|
writer.write("name", name);
|
|
//2. items
|
writer.beginArray("items");
|
|
for (City city: citys) {
|
writer.beginObject();
|
city.writeJSONBody(writer);
|
writer.endObject();
|
}
|
|
writer.endArray();
|
}
|
|
}
|