-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathDetail.controller.js
56 lines (50 loc) · 1.63 KB
/
Detail.controller.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
sap.ui.define(
["sap/ui/core/mvc/Controller"],
/**
* @param {typeof sap.ui.core.mvc.Controller} Controller
*/
function (Controller) {
"use strict";
return Controller.extend("hogent.flightapp.controller.Detail", {
onInit: function () {
this.oOwnerComponent = this.getOwnerComponent();
this.oRouter = this.oOwnerComponent.getRouter();
this.oRouter.attachRouteMatched(this._onRouteMatched, this);
},
_onRouteMatched: function (oEvent) {
var oArgs = oEvent.getParameter("arguments");
var oView = this.getView();
var oDataModel = oView.getModel("v2model");
//oArgs.fldate = new Date(oArgs.fldate).toJSON();
var urlPath =
"/Flights(carrID='" +
oArgs.carrid +
"',connID='" +
oArgs.connid +
"',fldate=datetimeoffset'" +
encodeURI(oArgs.fldate.substr(0, 20)) +
"')";
oView.bindElement({ path: urlPath, model: "v2model" });
this.readElement(urlPath, oDataModel).done(
function (oData) {
oDataModel.refresh(true);
var newModel = this.getView().getModel("v2model");
}.bind(this)
);
},
readElement: function (path, odatamodel, filter) {
var oDeferred = jQuery.Deferred();
odatamodel.read(path, {
filters: [filter],
success: function (oData) {
return oDeferred.resolve(oData);
}.bind(this),
error: function (oError) {
return oDeferred.reject(oError);
}.bind(this),
});
return oDeferred.promise();
},
});
}
);