RiderList and LoadRidersCommand optimisation
This commit is contained in:
@@ -30,49 +30,57 @@ class LoadRidersCommand implements ICommand implements IResponder {
|
||||
public function result(rpcEvent:Dynamic):Void {
|
||||
|
||||
// populate the riders DP in the model locator with the JSON results from the service call
|
||||
/*var riders:Array<RiderVO> = cast(rpcEvent, ResultEvent).result;
|
||||
model.ridersListDP = new ArrayCollection(riders);*/
|
||||
|
||||
//trace(model.ridersListDP.get(5).firstName);
|
||||
//traceGreen("ridersListDP.length --> " + model.ridersListDP.length);
|
||||
|
||||
|
||||
|
||||
var data:Array<Dynamic> = cast(rpcEvent, ResultEvent).result;
|
||||
var riders:Array<RiderVO> = [];
|
||||
var riders:Array<RiderVO> = data.map((r:Dynamic) -> {
|
||||
|
||||
//var arr:Array<RiderVO> = [for (n in data) cast(n, RiderVO)];
|
||||
final id:Int = Std.parseInt(r.id);
|
||||
final name:String = r.name;
|
||||
final firstName:String = r.firstName;
|
||||
final age:Int = Std.parseInt(r.age);
|
||||
final lastLessonDate:Int = Std.parseInt(r.lastLessonDate);
|
||||
final level:Int = Std.parseInt(r.level);
|
||||
final credit:Int = Std.parseInt(r.credit);
|
||||
final address:String = r.address;
|
||||
final notes:String = r.notes;
|
||||
final ffeLicence:Bool = stringToBool(r.ffeLicence);
|
||||
final ffeLicenceValidityYear:Int = Std.parseInt(r.ffeLicenceValidityYear);
|
||||
final ffeLicenceNumber:String = r.ffeLicenceNumber;
|
||||
final legalGuardianName:String = r.legalGuardianName;
|
||||
final legalGuardianFirstName:String = r.legalGuardianFirstName;
|
||||
final legalGuardianRole:String = r.legalGuardianRole;
|
||||
final legalGuardianPhoneNumber:String = r.legalGuardianPhoneNumber;
|
||||
final legalGuardianEmail:String = r.legalGuardianEmail;
|
||||
|
||||
/*for(v in data){
|
||||
//var rider:RiderVO = new RiderVO();
|
||||
//var id:Int = Std.parseInt();
|
||||
traceCyan(v[]);
|
||||
return new RiderVO(id, name, firstName, age, lastLessonDate, level, credit, address, notes, ffeLicence, ffeLicenceValidityYear,ffeLicenceNumber,legalGuardianName,legalGuardianFirstName,legalGuardianRole,legalGuardianPhoneNumber,legalGuardianEmail);
|
||||
});
|
||||
|
||||
}*/
|
||||
model.ridersListDP = new ArrayCollection(riders);
|
||||
|
||||
/*var riders:Array<RiderVO> = [];
|
||||
|
||||
var riders:Array<RiderVO> = [];
|
||||
for (i in 0...data.length) {
|
||||
var r:Object = data[i];
|
||||
|
||||
var id:Int = Std.parseInt(r.id);
|
||||
var name:String = r.name;
|
||||
var firstName:String = r.firstName;
|
||||
var age:Int = Std.parseInt(r.age);
|
||||
var lastLessonDate:Int = Std.parseInt(r.lastLessonDate);
|
||||
var level:Int = Std.parseInt(r.level);
|
||||
var credit:Int = Std.parseInt(r.credit);
|
||||
var address:String = r.address;
|
||||
var notes:String = r.notes;
|
||||
var ffeLicence:Bool = stringToBool(r.ffeLicence);
|
||||
var ffeLicenceValidityYear:Int = Std.parseInt(r.ffeLicenceValidityYear);
|
||||
var ffeLicenceNumber:String = r.ffeLicenceNumber;
|
||||
var legalGuardianName:String = r.legalGuardianName;
|
||||
var legalGuardianFirstName:String = r.legalGuardianFirstName;
|
||||
var legalGuardianRole:String = r.legalGuardianRole;
|
||||
var legalGuardianPhoneNumber:String = r.legalGuardianPhoneNumber;
|
||||
var legalGuardianEmail:String = r.legalGuardianEmail;
|
||||
final id:Int = Std.parseInt(r.id);
|
||||
final name:String = r.name;
|
||||
final firstName:String = r.firstName;
|
||||
final age:Int = Std.parseInt(r.age);
|
||||
final lastLessonDate:Int = Std.parseInt(r.lastLessonDate);
|
||||
final level:Int = Std.parseInt(r.level);
|
||||
final credit:Int = Std.parseInt(r.credit);
|
||||
final address:String = r.address;
|
||||
final notes:String = r.notes;
|
||||
final ffeLicence:Bool = stringToBool(r.ffeLicence);
|
||||
final ffeLicenceValidityYear:Int = Std.parseInt(r.ffeLicenceValidityYear);
|
||||
final ffeLicenceNumber:String = r.ffeLicenceNumber;
|
||||
final legalGuardianName:String = r.legalGuardianName;
|
||||
final legalGuardianFirstName:String = r.legalGuardianFirstName;
|
||||
final legalGuardianRole:String = r.legalGuardianRole;
|
||||
final legalGuardianPhoneNumber:String = r.legalGuardianPhoneNumber;
|
||||
final legalGuardianEmail:String = r.legalGuardianEmail;
|
||||
|
||||
var rider:RiderVO = new RiderVO(id,
|
||||
final rider:RiderVO = new RiderVO(id,
|
||||
name,
|
||||
firstName,
|
||||
age,
|
||||
@@ -90,8 +98,21 @@ class LoadRidersCommand implements ICommand implements IResponder {
|
||||
legalGuardianEmail
|
||||
);
|
||||
riders.push(rider);
|
||||
}
|
||||
model.ridersListDP = new ArrayCollection(riders);
|
||||
}*/
|
||||
|
||||
/*var riders:Array<RiderVO> = cast(rpcEvent, ResultEvent).result;
|
||||
model.ridersListDP = new ArrayCollection(riders);*/
|
||||
|
||||
//trace(model.ridersListDP.get(5).firstName);
|
||||
//traceGreen("ridersListDP.length --> " + model.ridersListDP.length);
|
||||
//var arr:Array<RiderVO> = [for (n in data) cast(n, RiderVO)];
|
||||
|
||||
/*for(v in data){
|
||||
//var rider:RiderVO = new RiderVO();
|
||||
//var id:Int = Std.parseInt();
|
||||
traceCyan(v[]);
|
||||
|
||||
}*/
|
||||
|
||||
/*for (key => value in riders){
|
||||
//ConfigValues.data[key] = value;
|
||||
@@ -114,8 +135,6 @@ class LoadRidersCommand implements ICommand implements IResponder {
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
private function stringToBool(str) {
|
||||
|
||||
+24
-8
@@ -1,5 +1,10 @@
|
||||
package view;
|
||||
|
||||
import openfl.display.Shape;
|
||||
import model.Constants;
|
||||
import openfl.Assets;
|
||||
import openfl.text.Font;
|
||||
import feathers.text.TextFormat;
|
||||
import vo.RiderVO;
|
||||
import uuid.Uuid;
|
||||
import feathers.controls.AssetLoader;
|
||||
@@ -28,7 +33,12 @@ class RidersList extends ListView {
|
||||
var recycler = DisplayObjectRecycler.withFunction(() -> {
|
||||
|
||||
var itemRenderer = new ItemRenderer();
|
||||
var fnt1:Font = Assets.getFont(Constants.MONTSERRAT_MEDIUM_500);
|
||||
var fnt2:Font = Assets.getFont(Constants.MONTSERRAT_BOLD_700);
|
||||
itemRenderer.icon = new AssetLoader();
|
||||
itemRenderer.textFormat = new TextFormat(fnt1.fontName, 16, Constants.MAIN_COLOR1);
|
||||
itemRenderer.secondaryTextFormat = new TextFormat(fnt2.fontName, 14, Constants.MAIN_COLOR2);
|
||||
|
||||
return itemRenderer;
|
||||
});
|
||||
|
||||
@@ -36,18 +46,10 @@ class RidersList extends ListView {
|
||||
|
||||
recycler.update = (itemRenderer:ItemRenderer, state:ListViewItemState) -> {
|
||||
|
||||
//traceRed($type(state.data));
|
||||
//var className = Type.getClassName(Type.getClass(state));
|
||||
//traceRed("Current class name = " + className);
|
||||
|
||||
var rider:RiderVO = cast (state.data, RiderVO);
|
||||
itemRenderer.text = rider.firstName;
|
||||
itemRenderer.secondaryText = rider.name;
|
||||
|
||||
/*var item = state.data;
|
||||
itemRenderer.text = item.firstName;
|
||||
itemRenderer.secondaryText = item.name;*/
|
||||
|
||||
var loader = cast(itemRenderer.icon, AssetLoader);
|
||||
loader.sourceScale = 0.7;
|
||||
loader.source = "bitmaps/pp_100.jpg";
|
||||
@@ -55,8 +57,22 @@ class RidersList extends ListView {
|
||||
//loader.source = "https://lepetittrot.com/path/to/pp_pictures" + state.data.id + ".jpg";
|
||||
//loader.source = "https://testingbot.com/free-online-tools/random-avatar/50?u=" + Uuid.nanoId();
|
||||
|
||||
var s:Shape = new Shape();
|
||||
s.graphics.beginFill(0xFFCC00, 1);
|
||||
s.graphics.drawCircle(0, 0, 10);
|
||||
s.graphics.endFill();
|
||||
itemRenderer.accessoryView = s;
|
||||
|
||||
};
|
||||
|
||||
recycler.reset = (itemRenderer:ItemRenderer, state:ListViewItemState) -> {
|
||||
/*var label = cast(itemRenderer.getChildByName("label"), Label);
|
||||
var loader = cast(itemRenderer.getChildByName("loader"), AssetLoader);
|
||||
label.text = "";
|
||||
loader.source = null;*/
|
||||
};
|
||||
|
||||
|
||||
model.addEventListener(AppModelLocator.RIDERS_LIST_DP_CHANGE, onRideListDpChange);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user