| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- 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_gradeclass: {
- 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 classData = [];
- let gradeData = records.map(function(r) {
- let d = r.data;
- let c = d.children.map(function(h) {
- return {
- value: h._id,
- name: h.text,
- gradeId: d._id,
- gradeName: d.text
- }
- });
- classData = classData.concat(c);
- return {
- value: d._id,
- name: d.text,
- }
- })
- Ext.StoreMgr.get('store_grade').loadData(gradeData);
- Ext.StoreMgr.get('store_class').loadData(classData);
- }
- }
- }
- }
- });
|