| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- Ext.define('school.view.viewport.ViewportModel', {
- extend: 'Ext.app.ViewModel',
- alias: 'viewmodel.viewport',
- data: {
- account: null
- },
- formulas: {
- avatarUrl: function (get) {
- var account = get('account');
- return (account && account.avatarUrl) || 'resources/images/default/user-icon.png'
- }
- },
- stores: {
- store_navigationMenu: {
- autoLoad: true,
- fields: ['text', 'iconCls'],
- proxy: {
- type: 'ajax',
- url: 'resources/json/navigation.json',
- reader: {
- type: 'json'
- }
- }
- },
- store_grade: {
- type: 'tree',
- autoLoad: false,
- // model: 'school.model.Grade',
- fields: [{
- name: 'text'
- }],
- proxy: {
- type: 'ajax',
- // url: 'http://10.1.80.47:9560/grade/read/1',
- url: '/api/school/grade/read/1',
- reader: {
- transform: {
- fn: function(data) {
- let grades = data.data.children;
- grades.map(function(s) {
- s._id = s.id;
- s.id = 'grade-' + s.id;
- let classes = s.children;
- let d = classes.map(function(c) {
- c._id = c.id;
- c.id = 'class-' + c.id;
- return c;
- });
- return s;
- });
- return grades;
- },
- scope: this
- }
- }
- },
- root: {
- text: '全年级',
- type: 'SCHOOL',
- expanded: true
- },
- listeners: {
- load: function(store, records) {
- let stores = school.store;
- let mainModel = Ext.getCmp('mainView').getViewModel();
- let gradeStore = Ext.create('school.store.Grade', {
- data: records.map(function(r) {
- let d = r.data;
- return {
- grade_id: d._id,
- grade_name: d.text,
- }
- })
- });
- mainModel.set('grade_store', gradeStore);
- }
- }
- }
- }
- });
|