apdater的js文件中
function getMeeting(page, logincode){
var input = {
method : 'get',
returnedContentType : 'json',
path : '/WebService/MyMeeting',
parameters : {
'page' : page,
'logincode' : logincode
},
};
var items = [];
var data = WL.Server.invokeHttp(input).result;
if(data != undefined){
for(var i=0;i<data.length;i++){
items.push({"mid" : data[i].mid,"subject":data[i].subject,"startDate":data[i].startDate,"endDate":data[i].endDate,"mDate":data[i].mDate,"meetingRoom":data[i].meetingRoom,"bookingUser":data[i].bookingUser,"compereUser":data[i].compereUser,"type":data[i].type});
}
}
return {Items:items};
}
xml文件中添加<procedure name="getMeeting" requestTimeoutInSeconds="30"/>
使用的model
Ext.define("model.Meeting.Meeting", {
extend: "Ext.data.Model",
config: {
fields: ['mid','subject','startDate','endDate','mDate','meetingRoom','bookingUser','compereUser','type','mbossUsers', 'mpaticipateUsers']
}
});
使用的store
Ext.define('MobileOA.view.Meeting.MyMeeting', {extend: 'Ext.List',
xtype : 'myMeetingList',
config: {
title : '我的会议',
store: 'MyMeetings',
margin : '5',
disableSelection:'false',
// pressedCls: '',
itemTpl : new Ext.XTemplate("<div class='padding10 data'>"+
"<div class='c_list_body'>主题:<span>{subject}</span> <h style='float:right'>状态:<span>{[this.checkType(values.type)]}</span></h> </div>"+
"<div class='c_list_body'>时间:<span>{[this.changeDate(values.mDate, values.startDate, values.endDate)]}</span></div>"+
"<div class='c_list_body'>会议室:<span>{meetingRoom}</span></div>"+
"<div class='c_list_body'>预订人:<span>{bookingUser}</span> 主持人:<span>{compereUser}</span> </div>",{
checkType : function(type){
console.log("tttt");
if(type == 0){
return "正常";
}else{
return "已取消";
}
},
changeDate : function(mDate, startDate, endDate){
return mDate + " " + startDate.substring(0,5) + " - " + endDate.substring(0,5);
}
})
}
});
从接口获取数据并显示
Ext.define("controller.MyMeetingController", {
extend : "controller.BaseController",
config : {
refs : {
myMeetingList : "myMeetingList"
},
control : {
myMeetingList : {
initialize: "onMeetingListActivate"
}
}
},
onMeetingListActivate:function(){
console.log("onMeetingListActivate");
var app = this.getApplication();
app.showLoading();
var meetingStore = Ext.StoreManager.get("MyMeetings");
var data = {
adapter: "Adapter",
procedure: "getMeeting",
parameters: [ '1', userName]
};
WL.Client.invokeProcedure(data, {
onSuccess: function (res) {
app.hideLoading();
console.log('get data success ' + res.invocationResult.Items);
meetingStore.setData(res.invocationResult.Items);
},
onFailure: function () {
app.hideLoading();
console.log('get data failed');
}
});
}
}
});