Przeglądaj źródła

'学校通知、作业发布接口对接测试/班级组织、教职工信息、学生信息导入'

zhuth 7 lat temu
rodzic
commit
9e74fe424d

+ 30 - 6
frontend/pc-web/app/view/Interaction/homework/Release.js

@@ -36,10 +36,11 @@ Ext.define('school.view.interaction.homework.Release', {
                 fieldLabel: "发布人",
                 fieldLabel: "发布人",
                 columnWidth: 0.5
                 columnWidth: 0.5
             }, {
             }, {
-                xtype: 'textfield',
-                name: 'time',
-                fieldLabel: '发布时间',
-                columnWidth: 0.5
+                xtype: 'datefield',
+                name: 'startDate',
+                fieldLabel: '开始时间',
+                columnWidth: 0.5,
+                defaultValue: new Date()
             }, {
             }, {
                 xtype: 'combobox',
                 xtype: 'combobox',
                 name: 'Notifications',
                 name: 'Notifications',
@@ -57,8 +58,8 @@ Ext.define('school.view.interaction.homework.Release', {
                     ]
                     ]
                 })
                 })
             }, {
             }, {
-                xtype: 'textfield',
-                name: 'Deadline',
+                xtype: 'datefield',
+                name: 'endDate',
                 fieldLabel: '截止时间',
                 fieldLabel: '截止时间',
                 columnWidth: 0.5
                 columnWidth: 0.5
             }, {
             }, {
@@ -71,10 +72,33 @@ Ext.define('school.view.interaction.homework.Release', {
                 name: 'content',
                 name: 'content',
                 fieldLabel: "内容",
                 fieldLabel: "内容",
                 columnWidth: 1,
                 columnWidth: 1,
+                height: 250
             }],
             }],
             toolBtns: [{
             toolBtns: [{
                 xtype: 'button',
                 xtype: 'button',
                 text: '发布',
                 text: '发布',
+                handler: function() {
+                    let form = this.up('form');
+                    let values = form.getSaveData().main;
+                    form.setLoading(true);
+                    school.util.BaseUtil.request({
+                        // url: 'http://10.1.80.47:9560/homework/save',
+                        url: '/api/school/homework/save',
+                        method: 'POST',
+                        params: JSON.stringify({
+                            task_title: values.title,
+                            start_date: values.startDate,
+                            end_date: values.endDate,
+                            task_context: values.content
+                        })
+                    }).then(function(res) {
+                        form.setLoading(false);
+                        school.util.BaseUtil.showSuccessToast('发布成功');
+                    }).catch(function(e) {
+                        form.setLoading(false);
+                        school.util.BaseUtil.showErrorToast('发布失败: ' + e.message);
+                    });
+                }
             }]
             }]
         });
         });
         this.callParent();
         this.callParent();

+ 20 - 0
frontend/pc-web/app/view/Interaction/notice/SchoolNotice.js

@@ -71,6 +71,26 @@ Ext.define('school.view.interaction.notice.SchoolNotice', {
             toolBtns: [{
             toolBtns: [{
                 xtype: 'button',
                 xtype: 'button',
                 text: '发布',
                 text: '发布',
+                handler: function() {
+                    let form = this.up('form');
+                    let values = form.getValues();
+                    form.setLoading(true);
+                    school.util.BaseUtil.request({
+                        // url: 'http://10.1.80.47:9560/notice/save',
+                        url: '/api/school/notice/save',
+                        method: 'POST',
+                        params: JSON.stringify({
+                            notify_title: values.title,
+                            notify_details: values.content
+                        })
+                    }).then(function(res) {
+                        form.setLoading(false);
+                        school.util.BaseUtil.showSuccessToast('发布成功');
+                    }).catch(function(e) {
+                        form.setLoading(false);
+                        school.util.BaseUtil.showErrorToast('发布失败: ' + e.message);
+                    });
+                }
             }]
             }]
         });
         });
         this.callParent();
         this.callParent();

+ 4 - 0
frontend/pc-web/app/view/basic/class/ClassDetail.js

@@ -126,6 +126,10 @@ Ext.define('school.view.basic.class.ClassDetail', {
                     text: '学科',
                     text: '学科',
                     dataIndex: 'subject'
                     dataIndex: 'subject'
                 }]
                 }]
+            }],
+            toolBtns: [{
+                xtype: 'button',
+                text: '保存'
             }]
             }]
         });
         });
         this.callParent();
         this.callParent();

+ 110 - 91
frontend/pc-web/app/view/basic/class/ClassInfo.js

@@ -15,103 +15,122 @@ Ext.define('school.view.basic.class.ClassInfo', {
     layout: 'border',
     layout: 'border',
 
 
     // bodyPadding: '8 12 8 12',
     // bodyPadding: '8 12 8 12',
-    items: [{
-        region: 'west',
-        split: true,
-        border: false,
-        hideHeaders: true,
-        singleExpand: true,
-        width: 250,
-        xtype: 'treepanel',
-        reference: 'treelist',
-        bind: {
-            store: '{store_grade}',
-            width: '{treeWidth}'
-        },
-        // viewConfig: {
-        //     plugins: {
-        //         treeviewdragdrop: {
-        //             containerScroll: true
-        //         }
-        //     }
-        // },
-        columns: [{
-            xtype: 'treecolumn',
-            text: 'Name',
-            dataIndex: 'text',
-            flex: 1,
-            sortable: true,
-            renderer: function(v, metaData, record) {
-                metaData.glyph = record.glyph;
-                return v;
-            }
-        }, {
-            xtype: 'actioncolumn',
-            width: 30,
-            items: [{
-                iconCls: 'action-icon x-hidden x-ss ss-add',
-                tooltip: '新增',
-                handler: 'onTreeAddClick'
-            }]
-        }, {
-            xtype: 'actioncolumn',
-            width: 30,
-            items: [{
-                iconCls: 'action-icon x-hidden x-fa fa-pencil',
-                tooltip: '编辑',
-                handler: 'onTreeEditClick'
-            }]
-        }, {
-            xtype: 'actioncolumn',
-            width: 30,
+
+    initComponent: function() {
+        let me = this;
+        Ext.apply(me, {
             items: [{
             items: [{
-                iconCls: 'action-icon x-hidden x-ss ss-delete',
-                tooltip: '删除',
-                handler: 'onTreeDeleteClick'
-            }]
-        }],
-        listeners: {
-            itemclick: 'onItemClick',
-            itemmouseenter: 'onItemMouseEnter',
-            itemmouseleave: 'onItemMouseLeave',
-            beforedrop: 'onItemBeforeDrop',
-            drop: 'onItemDrop',
-        }
-    }, {
-        region: 'center',
-        bodyPadding: 10,
-        layout: 'fit',
-        items: [{
-            xtype: 'panel',
-            layout: 'fit',
-            scrollable: true,
-            tbar: [{
-                padding: '7 0 7 0',
-                ui: 'header',
+                region: 'west',
+                split: true,
+                border: false,
+                hideHeaders: true,
+                singleExpand: true,
+                width: 250,
+                xtype: 'treepanel',
+                reference: 'treelist',
                 bind: {
                 bind: {
-                    iconCls:'x-sa {toggleIconCls}'
+                    store: '{store_grade}',
+                    width: '{treeWidth}'
                 },
                 },
-                handler: 'onToggleTree'
-            }, {
-                xtype: 'tbtext',
-                bind: {
-                    text: '{currentNodeData.text}'
+                // viewConfig: {
+                //     plugins: {
+                //         treeviewdragdrop: {
+                //             containerScroll: true
+                //         }
+                //     }
+                // },
+                columns: [{
+                    xtype: 'treecolumn',
+                    text: 'Name',
+                    dataIndex: 'text',
+                    flex: 1,
+                    sortable: true,
+                    renderer: function(v, metaData, record) {
+                        metaData.glyph = record.glyph;
+                        return v;
+                    }
+                }, {
+                    xtype: 'actioncolumn',
+                    width: 30,
+                    items: [{
+                        iconCls: 'action-icon x-hidden x-ss ss-add',
+                        tooltip: '新增',
+                        handler: 'onTreeAddClick'
+                    }]
+                }, {
+                    xtype: 'actioncolumn',
+                    width: 30,
+                    items: [{
+                        iconCls: 'action-icon x-hidden x-fa fa-pencil',
+                        tooltip: '编辑',
+                        handler: 'onTreeEditClick'
+                    }]
+                }, {
+                    xtype: 'actioncolumn',
+                    width: 30,
+                    items: [{
+                        iconCls: 'action-icon x-hidden x-ss ss-delete',
+                        tooltip: '删除',
+                        handler: 'onTreeDeleteClick'
+                    }]
+                }],
+                bbar: ['->', {
+                    xtype: 'importButton',
+                    width: '100%',
+                    text: '导入',
+                    caller: 'GradeAndCLass',
+                    pathKey: 'grade',
+                    onSuccess: function() {
+                        let viewModel = me.getViewModel();
+        
+                        viewModel.get('store_grade').load();
+                    }
+                }, '->'],
+                listeners: {
+                    itemclick: 'onItemClick',
+                    itemmouseenter: 'onItemMouseEnter',
+                    itemmouseleave: 'onItemMouseLeave',
+                    beforedrop: 'onItemBeforeDrop',
+                    drop: 'onItemDrop',
                 }
                 }
             }, {
             }, {
-                xtype: 'button',
-                text: '上一级',
-                handler: 'onTreeUp'
+                region: 'center',
+                bodyPadding: 10,
+                layout: 'fit',
+                items: [{
+                    xtype: 'panel',
+                    layout: 'fit',
+                    scrollable: true,
+                    tbar: [{
+                        padding: '7 0 7 0',
+                        ui: 'header',
+                        bind: {
+                            iconCls:'x-sa {toggleIconCls}'
+                        },
+                        handler: 'onToggleTree'
+                    }, {
+                        xtype: 'tbtext',
+                        bind: {
+                            text: '{currentNodeData.text}'
+                        }
+                    }, {
+                        xtype: 'button',
+                        text: '上一级',
+                        handler: 'onTreeUp'
+                    }],
+                    items: [{
+                        xtype: 'listcard',
+                        reference: 'listcard'
+                    }, {
+                        xtype: 'classdetail',
+                        reference: 'classdetail',
+                        hidden: true
+                    }]
+                }]
             }],
             }],
-            items: [{
-                xtype: 'listcard',
-                reference: 'listcard'
-            }, {
-                xtype: 'classdetail',
-                reference: 'classdetail',
-                hidden: true
-            }]
-        }]
-    }],
+        });
+        me.callParent(arguments);
+    },
     
     
     listeners: {
     listeners: {
         afterrender: 'onAfterRender'
         afterrender: 'onAfterRender'

+ 1 - 1
frontend/pc-web/app/view/basic/staff/StaffDetail.js

@@ -35,7 +35,7 @@ Ext.define('school.view.basic.staff.StaffDetail', {
                 fieldLabel: '姓名'
                 fieldLabel: '姓名'
             }, {
             }, {
                 xtype: "textfield",
                 xtype: "textfield",
-                name: "teacher_phone",
+                name: "teacher_sex",
                 fieldLabel: "性别"
                 fieldLabel: "性别"
             }, {
             }, {
                 xtype: 'textfield',
                 xtype: 'textfield',

+ 13 - 40
frontend/pc-web/app/view/basic/staff/StaffList.js

@@ -6,6 +6,10 @@ Ext.define('school.view.basic.staff.StaffList', {
     xtype: 'basic-staff-stafflist',
     xtype: 'basic-staff-stafflist',
 
 
     dataUrl: '/api/school/teacher/list',
     dataUrl: '/api/school/teacher/list',
+    _title: '教职工信息导入',
+    caller: 'Teacher',
+    pathKey: 'teacher',
+
     initComponent: function() {
     initComponent: function() {
         var me = this;
         var me = this;
         Ext.apply(this, {
         Ext.apply(this, {
@@ -23,14 +27,6 @@ Ext.define('school.view.basic.staff.StaffList', {
                 fieldLabel: '职位'
                 fieldLabel: '职位'
             }],
             }],
         
         
-            caller: null,
-            _formXtype: null,
-            _title: null,
-            _deleteUrl: null,
-            _batchOpenUrl: null,
-            _batchCloseUrl: null,
-            _batchDeleteUrl: null,
-        
             gridConfig: {
             gridConfig: {
                 idField: null,
                 idField: null,
                 codeField: null,
                 codeField: null,
@@ -48,18 +44,18 @@ Ext.define('school.view.basic.staff.StaffList', {
                 },
                 },
                 hiddenTools: false,
                 hiddenTools: false,
                 toolBtns: [{
                 toolBtns: [{
-                    xtype: 'button',
-                    text: '导入测试按钮',
-                    handler: me.onImport,
+                    xtype: 'importButton',
+                    belong: me,
+                    caller: me.caller,
+                    pathKey: me.pathKey,
+                    onSuccess: function() {
+                        //刷新界面
+                        var g = me.down('grid');
+                        g.store.loadPage(g.store.currentPage);
+                    }
                 }, {
                 }, {
                     xtype: 'button',
                     xtype: 'button',
                     text: '一键开通'
                     text: '一键开通'
-                }, {
-                    xtype: 'button',
-                    text: '下载模板'
-                }, {
-                    xtype: 'button',
-                    text: '批量导入'
                 }, {
                 }, {
                     xtype: 'button',
                     xtype: 'button',
                     text: '删除'
                     text: '删除'
@@ -111,29 +107,6 @@ Ext.define('school.view.basic.staff.StaffList', {
         this.callParent(arguments);
         this.callParent(arguments);
     },
     },
 
 
-    onImport:function(){
-        var grid = this.ownerCt.ownerCt;
-        var form = grid.ownerCt,panelEl = form.getEl();
-        var box = panelEl.getBox();
-        var height = box.height;
-        var width = box.width;
-        var win = form.add(Ext.create('school.view.core.base.ImportWindow', {  
-            cls:'x-window-dbfind', 
-            belong:form,  
-            modal:true,
-            height: height * 0.8,
-            width: width * 0.8,
-            title: form._title + '导入',
-            scrollable: true,
-            bodyPadding: 10,
-            constrain: true,
-            closable: true,
-            layout:'fit',
-            renderTo:form.getEl()
-        }));
-        win.show();
-    },
-
     /**
     /**
      * 处理部分字段值
      * 处理部分字段值
      */
      */

+ 13 - 13
frontend/pc-web/app/view/basic/student/StudentList.js

@@ -6,6 +6,10 @@ Ext.define('school.view.basic.student.StudentList', {
     xtype: 'basic-student-studentlist',
     xtype: 'basic-student-studentlist',
 
 
     dataUrl: '/api/school/student/list',
     dataUrl: '/api/school/student/list',
+    _title: '学生信息',
+    caller: 'Student',
+    pathKey: 'student',
+
     initComponent: function() {
     initComponent: function() {
         var me = this;
         var me = this;
         Ext.apply(this, {
         Ext.apply(this, {
@@ -31,14 +35,6 @@ Ext.define('school.view.basic.student.StudentList', {
                 fieldLabel: '家长'
                 fieldLabel: '家长'
             }],
             }],
         
         
-            caller: null,
-            _formXtype: null,
-            _title: null,
-            _deleteUrl: null,
-            _batchOpenUrl: null,
-            _batchCloseUrl: null,
-            _batchDeleteUrl: null,
-        
             gridConfig: {
             gridConfig: {
                 idField: null,
                 idField: null,
                 codeField: null,
                 codeField: null,
@@ -56,11 +52,15 @@ Ext.define('school.view.basic.student.StudentList', {
                 },
                 },
                 hiddenTools: false,
                 hiddenTools: false,
                 toolBtns: [{
                 toolBtns: [{
-                    xtype: 'button',
-                    text: '下载模板'
-                }, {
-                    xtype: 'button',
-                    text: '上传数据'
+                    xtype: 'importButton',
+                    belong: me,
+                    caller: me.caller,
+                    pathKey: me.pathKey,
+                    onSuccess: function() {
+                        //刷新界面
+                        var g = me.down('grid');
+                        g.store.loadPage(g.store.currentPage);
+                    }
                 }, {
                 }, {
                     xtype: 'button',
                     xtype: 'button',
                     text: '一键开通'
                     text: '一键开通'

+ 1 - 1
frontend/pc-web/app/view/core/base/BasePanel.js

@@ -228,7 +228,7 @@ Ext.define('school.view.core.base.BasePanel', {
         return conditionValue;
         return conditionValue;
     },
     },
 
 
-    getExtraParams: function(store, op, condition) {
+    getDefaultExtraParams: function(store, op, condition) {
         return {
         return {
             number: store.exportNumber?store.exportNumber:op._page,
             number: store.exportNumber?store.exportNumber:op._page,
             size: store.exportPageSize?store.exportPageSize:store.pageSize,
             size: store.exportPageSize?store.exportPageSize:store.pageSize,

+ 2 - 1
frontend/pc-web/app/view/core/base/GridPanel.js

@@ -79,7 +79,8 @@ Ext.define('school.view.core.base.GridPanel', {
                         }
                         }
 
 
                         var obj = basePanel.getExtraParams(store, op, condition);
                         var obj = basePanel.getExtraParams(store, op, condition);
-                        Ext.apply(store.proxy.extraParams, obj);
+                        var defaultObj = basePanel.getDefaultExtraParams(store, op, condition);
+                        Ext.apply(store.proxy.extraParams, obj, defaultObj);
                     }
                     }
                 }
                 }
             });
             });

+ 51 - 0
frontend/pc-web/app/view/core/button/import/Button.js

@@ -0,0 +1,51 @@
+Ext.define('school.view.core.button.import.Button', {
+    extend: 'Ext.button.Button',
+    xtype: 'importButton',
+
+    text: '导入',
+
+    caller: null,
+
+    initComponent: function () {
+        let me = this;
+        Ext.apply(me, {
+            handler: me.onClick
+        });
+        me.callParent(arguments);
+    },
+
+    listeners: {
+        boxready: function() {
+            let me = this;
+            me.belong = me.belong || me.up('core-tab-panel');
+        },
+    },
+
+    onClick: function () {
+        let me = this;
+        let belong = me.belong;
+        let boxEl = belong.getEl();
+        let box = boxEl.getBox();
+        let height = box.height * 0.8;
+        let width = box.width * 0.8;
+        let win = belong.add(Ext.create('school.view.core.button.import.Window', {
+            cls: 'x-window-dbfind',
+            belong: belong,
+            modal: true,
+            height: height,
+            width: width,
+            title: '导入',
+            scrollable: true,
+            bodyPadding: 10,
+            constrain: true,
+            closable: true,
+            layout: 'fit',
+            caller: me.caller,
+            pathKey: me.pathKey,
+            renderTo: boxEl,
+            onSuccess: me.onSuccess || Ext.emptyFn,
+            onFailure: me.onFailure || Ext.emptyFn
+        }));
+        win.show();
+    }
+});

+ 121 - 115
frontend/pc-web/app/view/core/base/ImportWindow.js → frontend/pc-web/app/view/core/button/import/Window.js

@@ -1,18 +1,19 @@
-Ext.define('school.view.core.base.ImportWindow', {
+Ext.define('school.view.core.button.import.Window', {
     extend: 'Ext.window.Window',
     extend: 'Ext.window.Window',
     xtype: 'importwindow',
     xtype: 'importwindow',
-    layout:'fit',
+
+    layout: 'fit',
 
 
     requires: [
     requires: [
         'Ext.form.field.File',
         'Ext.form.field.File',
         'Ext.container.ButtonGroup'
         'Ext.container.ButtonGroup'
     ],
     ],
 
 
-    bbar:['->',{
-        hidden:true,
-        name:'prev',
-        text:'上一步',
-        handler:function(b){
+    bbar: ['->', {
+        hidden: true,
+        name: 'prev',
+        text: '上一步',
+        handler: function (b) {
             var p = this.ownerCt.ownerCt.items.items[0];
             var p = this.ownerCt.ownerCt.items.items[0];
             var tbar = p.dockedItems.items[0];
             var tbar = p.dockedItems.items[0];
             //first
             //first
@@ -40,10 +41,10 @@ Ext.define('school.view.core.base.ImportWindow', {
             p.down('[name=detail]').show();
             p.down('[name=detail]').show();
             p.down('[name=message]').hide();
             p.down('[name=message]').hide();
         }
         }
-    },{
-        name:'next',
-        text:'下一步',
-        handler:function(b){
+    }, {
+        name: 'next',
+        text: '下一步',
+        handler: function (b) {
             var p = this.ownerCt.ownerCt.items.items[0];
             var p = this.ownerCt.ownerCt.items.items[0];
             var tbar = p.dockedItems.items[0];
             var tbar = p.dockedItems.items[0];
             //first
             //first
@@ -71,41 +72,42 @@ Ext.define('school.view.core.base.ImportWindow', {
             p.down('[name=detail]').hide();
             p.down('[name=detail]').hide();
             p.down('[name=message]').show();
             p.down('[name=message]').show();
         }
         }
-    },{
-        hidden:true,
-        name:'over',
-        text:'完成',
-        disabled:true,
-        handler:function(b){
+    }, {
+        hidden: true,
+        name: 'over',
+        text: '完成',
+        disabled: true,
+        handler: function (b) {
+            var win = b.up('window');
             var form = b.ownerCt.ownerCt;
             var form = b.ownerCt.ownerCt;
             var id = form.importId;
             var id = form.importId;
-            if(id){
+            if (id) {
                 form.setLoading(true);
                 form.setLoading(true);
                 Ext.Ajax.request({
                 Ext.Ajax.request({
-                    url: '/api/document/'+form.ownerCt.caller.toLocaleLowerCase()+'/saveToFormal',//这里是填写需要跨域访问的URL
+                    // url: '/api/document/'+form.ownerCt.caller.toLocaleLowerCase()+'/saveToFormal',//这里是填写需要跨域访问的URL
+                    // url: 'http://10.1.80.47:9560/' + win.pathKey + '/saveToFormal', //这里是填写需要跨域访问的URL
+                    url: '/api/school/' + win.pathKey + '/saveToFormal', //这里是填写需要跨域访问的URL
                     method: 'post',
                     method: 'post',
                     headers: {
                     headers: {
                         'Access-Control-Allow-Origin': '*',
                         'Access-Control-Allow-Origin': '*',
-                        'Authorization':  school.util.State.get('session').token,
+                        'Authorization': school.util.State.get('session').token,
                         "Content-Type": 'application/x-www-form-urlencoded;charset=UTF-8'
                         "Content-Type": 'application/x-www-form-urlencoded;charset=UTF-8'
                     },
                     },
-                    params:{
-                        id:id,
-                        update:false
+                    params: {
+                        id: id,
+                        update: false
                     },
                     },
                     success: function (response, opts) {
                     success: function (response, opts) {
                         form.setLoading(false);
                         form.setLoading(false);
                         var res = Ext.decode(response.responseText);
                         var res = Ext.decode(response.responseText);
-                        if(!res.success){
+                        if (!res.success) {
                             var upload = form.down('[name=upload]');
                             var upload = form.down('[name=upload]');
                             upload.reset();
                             upload.reset();
                             form.dockedItems.items[1].down('[name=over]').setDisabled(true);
                             form.dockedItems.items[1].down('[name=over]').setDisabled(true);
                             form.down('[name=messagedetail]').setHtml(res.message + '</br></br><span style="color:#ff0000">请修改后重新上传</span>');
                             form.down('[name=messagedetail]').setHtml(res.message + '</br></br><span style="color:#ff0000">请修改后重新上传</span>');
-                        }else{
-                            //刷新界面
-                            var g = form.ownerCt.down('grid');
-                            g.store.loadPage(g.store.currentPage);
-                            form.close();
+                        } else {
+                            win.onSuccess(res);
+                            win.close();
                         }
                         }
                     },
                     },
                     failure: function (response, opts) {
                     failure: function (response, opts) {
@@ -115,97 +117,98 @@ Ext.define('school.view.core.base.ImportWindow', {
                         form.dockedItems.items[1].down('[name=over]').setDisabled(true);
                         form.dockedItems.items[1].down('[name=over]').setDisabled(true);
                         var res = Ext.decode(response.responseText);
                         var res = Ext.decode(response.responseText);
                         school.util.BaseUtil.showErrorToast('导入数据失败: ' + res.message);
                         school.util.BaseUtil.showErrorToast('导入数据失败: ' + res.message);
-                        
+                        win.onFailure(response);
                     }
                     }
                 });
                 });
-            }else{
+            } else {
                 form.close();
                 form.close();
             }
             }
         }
         }
-    },{
-        name:'close',
-        text:'关闭',
-        handler:function(b){
+    }, {
+        name: 'close',
+        text: '关闭',
+        handler: function (b) {
             b.ownerCt.ownerCt.close()
             b.ownerCt.ownerCt.close()
         }
         }
     }],
     }],
 
 
-    initComponent: function() {
+    initComponent: function () {
         var me = this;
         var me = this;
         Ext.apply(me, {
         Ext.apply(me, {
-            items:[{
-                cls:'x-panel-import',
-                padding:'10px 100px 10px 100px',
-                xtype:'panel',
-                layout:'vbox',
-                tbar:['->',{
-                    name:'first',
-                    cls:'x-btn-import-first',
-                    style:'background: #34baf6;border-color: #35baf6;    opacity: 1;',
-                    focusable:false,
-                    disabled:true,
-                    width:300,
-                    text:'下载模板并填写',
-                },{
-                    name:'middle',
-                    disabled:true,
-                    focusable:false,
-                    style:'width: 20px;margin: 0px;margin-left: -16px;border-width: 1px 0px;min-width: 0px;border-style: solid;border-color: rgb(53, 186, 246);    opacity: 1;    background-color: #fff;',
-                    width:20,
-                    cls:'x-btn-import-middle'
-                },{
-                    name:'last',
-                    disabled:true,
-                    cls:'x-btn-import-last',
-                    style:'border-left-width: 0px;background: #fff;border-color: #35baf6;opacity:1;background-color: #fff;',
-                    focusable:false,
-                    margin:'0 0 0 -1',
-                    width:300,
-                    text:'上传导入文件',
-                },'->'],
-                items:[{
-                    margin:'15px 0 0 0',
+            items: [{
+                cls: 'x-panel-import',
+                padding: '10px 100px 10px 100px',
+                xtype: 'panel',
+                layout: 'vbox',
+                tbar: ['->', {
+                    name: 'first',
+                    cls: 'x-btn-import-first',
+                    style: 'background: #34baf6;border-color: #35baf6;    opacity: 1;',
+                    focusable: false,
+                    disabled: true,
+                    width: 300,
+                    text: '下载模板并填写',
+                }, {
+                    name: 'middle',
+                    disabled: true,
+                    focusable: false,
+                    style: 'width: 20px;margin: 0px;margin-left: -16px;border-width: 1px 0px;min-width: 0px;border-style: solid;border-color: rgb(53, 186, 246);    opacity: 1;    background-color: #fff;',
+                    width: 20,
+                    cls: 'x-btn-import-middle'
+                }, {
+                    name: 'last',
+                    disabled: true,
+                    cls: 'x-btn-import-last',
+                    style: 'border-left-width: 0px;background: #fff;border-color: #35baf6;opacity:1;background-color: #fff;',
+                    focusable: false,
+                    margin: '0 0 0 -1',
+                    width: 300,
+                    text: '上传导入文件',
+                }, '->'],
+                items: [{
+                    margin: '15px 0 0 0',
                     width: 240,
                     width: 240,
-                    labelWidth:160,
-                    buttonOnly:true,
-                    fieldLabel:'导入模板下载',
-                    name:'download',
+                    labelWidth: 160,
+                    buttonOnly: true,
+                    fieldLabel: '导入模板下载',
+                    name: 'download',
                     xtype: 'filefield',
                     xtype: 'filefield',
                     buttonText: '下载模板',
                     buttonText: '下载模板',
-                    buttonConfig:{
-                        xtype:'button',
-                        handler:function(b){
-                            var caller = b.ownerCt.ownerCt.ownerCt.ownerCt.caller;
+                    buttonConfig: {
+                        xtype: 'button',
+                        handler: function (b) {
                             //获取模版
                             //获取模版
                             var serverOptions = Ext.manifest.server;
                             var serverOptions = Ext.manifest.server;
-                            window.location.href = (serverOptions.basePath.https?serverOptions.basePath.https:serverOptions.basePath) + '/api/commons/excel/import/templet?caller='+caller;
+                            // window.location.href = (serverOptions.basePath.https?serverOptions.basePath.https:serverOptions.basePath) + '/api/commons/excel/import/templet?caller='+me.caller;
+                            // window.location.href = 'http://10.1.80.47:9560/' + 'excel/import/templet?caller=' + me.caller;
+                            window.location.href = '/api/school/' + 'excel/import/templet?caller=' + me.caller;
                         }
                         }
                     }
                     }
-                },{
-                    margin:'10px 0 0 45px',
+                }, {
+                    margin: '10px 0 0 45px',
                     xtype: 'fieldset',
                     xtype: 'fieldset',
                     title: '导入说明',
                     title: '导入说明',
-                    name:'detail',
+                    name: 'detail',
                     collapsible: false,
                     collapsible: false,
                     items: [{
                     items: [{
-                        xtype : 'fieldcontainer',
-                        html: '1.下载模板后打开</br>2.查看模板内说明、并修改模板内容,保存后点击下一步按钮</br>3.上传Excel文件,此时会校验文件的字段格式,有问题则需要修改错误数据后再次上传文件</br>4.校验成功后'+
-                        '点击完成按钮将数据进行数据库校验'
+                        xtype: 'fieldcontainer',
+                        html: '1.下载模板后打开</br>2.查看模板内说明、并修改模板内容,保存后点击下一步按钮</br>3.上传Excel文件,此时会校验文件的字段格式,有问题则需要修改错误数据后再次上传文件</br>4.校验成功后' +
+                            '点击完成按钮将数据进行数据库校验'
                     }]
                     }]
-                },{
-                    hidden:true,
-                    margin:'15px 0 0 0',
-                    labelWidth:100,
-                    allowBlank : true, 
-                    width:180,
-                    buttonOnly:true,
-                    fieldLabel:'上传文件',
+                }, {
+                    hidden: true,
+                    margin: '15px 0 0 0',
+                    labelWidth: 100,
+                    allowBlank: true,
+                    width: 180,
+                    buttonOnly: true,
+                    fieldLabel: '上传文件',
                     xtype: 'filefield',
                     xtype: 'filefield',
-                    name:'upload',
+                    name: 'upload',
                     buttonText: '选择文件',
                     buttonText: '选择文件',
-                    createFileInput : function() {
-                            var me = this;
-                            me.fileInputEl = me.button.el.createChild({
+                    createFileInput: function () {
+                        var me = this;
+                        me.fileInputEl = me.button.el.createChild({
                             name: me.getName(),
                             name: me.getName(),
                             cls: Ext.baseCSSPrefix + 'form-file-input',
                             cls: Ext.baseCSSPrefix + 'form-file-input',
                             tag: 'input',
                             tag: 'input',
@@ -214,13 +217,13 @@ Ext.define('school.view.core.base.ImportWindow', {
                         }).on('change', me.onFileChange, me);
                         }).on('change', me.onFileChange, me);
                     },
                     },
                     listeners: {
                     listeners: {
-                        change: function(field){
+                        change: function (field) {
                             var form = field.ownerCt.ownerCt;
                             var form = field.ownerCt.ownerCt;
                             var myForm = field.ownerCt;
                             var myForm = field.ownerCt;
                             var fileEl = field.fileInputEl.dom;
                             var fileEl = field.fileInputEl.dom;
                             var file = fileEl.files[0];
                             var file = fileEl.files[0];
-                            var type = file.name.substring(file.name.lastIndexOf('.'),file.name.length);
-                            if(type.indexOf('xlsx')<0||type.indexOf('xls')<0){
+                            var type = file.name.substring(file.name.lastIndexOf('.'), file.name.length);
+                            if (type.indexOf('xlsx') < 0 || type.indexOf('xls') < 0) {
                                 school.util.BaseUtil.showErrorToast('文件格式不正确,只能选择xlsx或xls格式的文件进行上传');
                                 school.util.BaseUtil.showErrorToast('文件格式不正确,只能选择xlsx或xls格式的文件进行上传');
                                 field.reset();
                                 field.reset();
                                 return;
                                 return;
@@ -244,14 +247,14 @@ Ext.define('school.view.core.base.ImportWindow', {
                             //     school.util.BaseUtil.showErrorToast('上传失败:没有 导入 权限');
                             //     school.util.BaseUtil.showErrorToast('上传失败:没有 导入 权限');
                             //     return false;
                             //     return false;
                             // }
                             // }
-                            
+
                             var fd = new FormData();
                             var fd = new FormData();
                             fd.append('file', fileEl.files[0]);
                             fd.append('file', fileEl.files[0]);
-                            fd.append('caller', 'GradeAndCLass');
+                            fd.append('caller', me.caller);
                             form.setLoading(true);
                             form.setLoading(true);
-                            debugger
                             Ext.Ajax.request({
                             Ext.Ajax.request({
-                                url: '/excel/import/parse',//这里是填写需要跨域访问的URL
+                                // url: 'http://10.1.80.47:9560/excel/import/parse', //这里是填写需要跨域访问的URL
+                                url: '/api/school/excel/import/parse', //这里是填写需要跨域访问的URL
                                 cors: true,
                                 cors: true,
                                 useDefaultXhrHeader: false,
                                 useDefaultXhrHeader: false,
                                 method: 'post',
                                 method: 'post',
@@ -260,22 +263,22 @@ Ext.define('school.view.core.base.ImportWindow', {
                                     'Access-Control-Allow-Origin': '*',
                                     'Access-Control-Allow-Origin': '*',
                                     //'Authorization':  school.util.State.get('session').token,
                                     //'Authorization':  school.util.State.get('session').token,
                                     //"Content-Type": 'multipart/form-data'  //文件上传的格式, 
                                     //"Content-Type": 'multipart/form-data'  //文件上传的格式, 
-                                    "Content-Type":null
+                                    "Content-Type": null
                                 },
                                 },
                                 success: function (response, opts) {
                                 success: function (response, opts) {
                                     form.setLoading(false);
                                     form.setLoading(false);
                                     var res = Ext.decode(response.responseText);
                                     var res = Ext.decode(response.responseText);
-                                    if(res.success){
+                                    if (res.success) {
                                         var id = res.data;
                                         var id = res.data;
-                                        if(id){
+                                        if (id) {
                                             field.ownerCt.down('[name=messagedetail]').setHtml('文件名: ' + file.name + ' 导入格式校验成功!</br></br>请点击 <span style="color:#35baf6">完成</span> 执行数据库校验');
                                             field.ownerCt.down('[name=messagedetail]').setHtml('文件名: ' + file.name + ' 导入格式校验成功!</br></br>请点击 <span style="color:#35baf6">完成</span> 执行数据库校验');
                                             form.importId = id;
                                             form.importId = id;
                                             field.ownerCt.ownerCt.dockedItems.items[1].down('[name=over]').setDisabled(false)
                                             field.ownerCt.ownerCt.dockedItems.items[1].down('[name=over]').setDisabled(false)
-                                        }else{
+                                        } else {
                                             field.reset();
                                             field.reset();
                                             school.util.BaseUtil.showErrorToast('上传失败:后台未返回信息');
                                             school.util.BaseUtil.showErrorToast('上传失败:后台未返回信息');
                                         }
                                         }
-                                    }else{
+                                    } else {
                                         field.reset();
                                         field.reset();
                                         field.ownerCt.down('[name=messagedetail]').setHtml(res.message + '</br><span style="color:#ff0000">请修改后重新上传</span>');
                                         field.ownerCt.down('[name=messagedetail]').setHtml(res.message + '</br><span style="color:#ff0000">请修改后重新上传</span>');
                                     }
                                     }
@@ -289,22 +292,25 @@ Ext.define('school.view.core.base.ImportWindow', {
                             });
                             });
                         }
                         }
                     }
                     }
-                },{
-                    hidden:true,
-                    margin:'10px 0 0 45px',
+                }, {
+                    hidden: true,
+                    margin: '10px 0 0 45px',
                     xtype: 'fieldset',
                     xtype: 'fieldset',
                     title: '导入详情',
                     title: '导入详情',
-                    name:'message',
+                    name: 'message',
                     collapsible: false,
                     collapsible: false,
                     items: [{
                     items: [{
-                        name:'messagedetail',
-                        xtype : 'fieldcontainer',
-                        html:'暂无导入信息'
+                        name: 'messagedetail',
+                        xtype: 'fieldcontainer',
+                        html: '暂无导入信息'
                     }]
                     }]
                 }]
                 }]
             }]
             }]
         });
         });
         me.callParent(arguments);
         me.callParent(arguments);
-    }
+    },
+
+    onSuccess: Ext.emptyFn,
+    onFailure: Ext.emptyFn
 
 
 });
 });