| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- /**
- * 年级班级卡片列表
- */
- Ext.define('school.view.basic.class.ListCard', {
- extend: 'Ext.view.View',
- xtype: 'listcard',
- controller: 'listcard',
- cls: 'listcard',
- tpl: ['<div class="list">',
- '<tpl for=".">',
- '<div class="item',
- '<tpl if="itemCls">',
- ' {itemCls}',
- '</tpl>',
- '">',
- '<div class="text',
- '<tpl if="textCls">',
- ' {textCls}',
- '</tpl>',
- '">{text}</div>',
- '</div>',
- '</tpl>',
- '</div>'],
- bind: {
- store: '{currentlist}'
- },
- trackOver: true,
- overItemCls: 'item-over',
- selectedItemCls: 'item-selected',
- singleSelect: true,
- itemSelector: '.item',
- listeners: {
- itemclick: 'cardItemClick',
- beforeRender: 'onBeforeRender'
- },
- showNode: function(node) {
- let me = this,
- classInfo = me.up('basic-class-classinfo'),
- viewModel = classInfo.getViewModel(),
- currentlist = viewModel.get('currentlist'),
- currentDetail = viewModel.get('currentDetail'),
- refs = classInfo.getReferences(),
- treeList = refs.treelist,
- listCard = refs.listcard,
- classDetail = refs.classdetail,
- list, cardList;
- if(node.data.type == 'CLASS') {
- currentlist.removeAll();
- listCard.setVisible(false);
- classDetail.setVisible(true);
- classDetail.setLoading(true);
- school.util.BaseUtil.request({
- url: classDetail._readUrl + '/' + node.data._id
- }).then(function(res) {
- classDetail.setLoading(false);
- if(res.success) {
- let d = res.data;
- let o = {
- main: d.main
- };
- if(d.hasOwnProperty('items')) {
- o.detail0 = d.items;
- }else {
- let idx = 1;
- while(d.hasOwnProperty('items' + idx)) {
- o['detail' + (idx - 1)] = d['items' + idx];
- idx++;
- }
- }
- classDetail.initFormData(o);
- classDetail.fireEvent('load', classDetail, o);
- }
- }).catch(function(e) {
- school.util.BaseUtil.showErrorToast('请求数据失败: ' + e.message);
- });
- }else {
- node.expand();
- listCard.setVisible(true);
- classDetail.setVisible(false);
- if(node.data.type == 'GRADE') {
- list = node.childNodes.map(function(c) {
- return Ext.Object.merge(c.data, {
- pathText: node.data.text + c.data.text
- })
- });
- }else {
- node.data.pathText = node.data.text;
- list = node.childNodes.map(function(c) {
- return Ext.Object.merge(c.data, {
- pathText: c.data.text
- })
- });
- }
- cardList = Ext.Array.merge(list, [{
- addBtn: true,
- id: node.data.id,
- _id: node.data._id,
- type: node.data.type,
- itemCls: 'item-add',
- textCls: 'text-add x-ss ss-add',
- count: list.length
- }]);
- currentlist.loadData(cardList);
- }
- viewModel.set('currentNodeData', node.data);
- treeList.setSelection(node);
- }
- });
|