|
|
@@ -2,6 +2,90 @@ Ext.define('school.view.interaction.score.DetailController', {
|
|
|
extend: 'school.view.core.form.FormPanelController',
|
|
|
alias: 'controller.interaction-score-detail',
|
|
|
|
|
|
+ init: function (form) {
|
|
|
+ var me = this;
|
|
|
+ this.control({
|
|
|
+ 'dbfindtrigger[name=sd_stu]':{
|
|
|
+ beforerender:function(f){
|
|
|
+ Ext.apply(f,{
|
|
|
+ addTitle: '学生',
|
|
|
+ //数据接口
|
|
|
+ dataUrl:'/api/school/student/list',
|
|
|
+ //联想设置
|
|
|
+ dbtpls:[{
|
|
|
+ field:'stu_name',width:150
|
|
|
+ }],
|
|
|
+ dbfinds:[{
|
|
|
+ from: 'stu_name', to: 'sd_stu',
|
|
|
+ }, {
|
|
|
+ from: 'stu_number', to: 'sd_stuNumber'
|
|
|
+ }],
|
|
|
+ defaultCondition: "1=1",
|
|
|
+ dbSearchFields:[{
|
|
|
+ emptyText:'请输入学生学号或姓名',
|
|
|
+ xtype : "textfield",
|
|
|
+ name : "search",
|
|
|
+ getCondition: function(v) {
|
|
|
+ return "(upper(stu_name) like '%"+v.toUpperCase()+"%' or upper(stu_number) like '%"+v.toUpperCase()+"%')";
|
|
|
+ },
|
|
|
+ allowBlank : true,
|
|
|
+ width:300
|
|
|
+ }],
|
|
|
+ //放大镜窗口列表
|
|
|
+ dbColumns:[{
|
|
|
+ text: "ID",
|
|
|
+ dataIndex: "stu_id",
|
|
|
+ hidden:true,
|
|
|
+ xtype: "numbercolumn"
|
|
|
+ }, {
|
|
|
+ text: '工号',
|
|
|
+ dataIndex: 'stu_number',
|
|
|
+ width: 110
|
|
|
+ }, {
|
|
|
+ text: "姓名",
|
|
|
+ dataIndex: "stu_name",
|
|
|
+ width: 110
|
|
|
+ }]
|
|
|
+ }) ;
|
|
|
+ },
|
|
|
+ beforequery: function(f) {
|
|
|
+ var defaultCondition = this.getDefaultCondition(1);
|
|
|
+ if(!defaultCondition) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ Ext.apply(f, {
|
|
|
+ defaultCondition: defaultCondition
|
|
|
+ });
|
|
|
+ },
|
|
|
+ beforetriggerclick: function(f) {
|
|
|
+ var defaultCondition = this.getDefaultCondition(1);
|
|
|
+ if(!defaultCondition) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ Ext.apply(f, {
|
|
|
+ defaultCondition: defaultCondition
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ getDefaultCondition: function(idx) {
|
|
|
+ var me = this,
|
|
|
+ form = me.getView(),
|
|
|
+ formItems = form.formItems,
|
|
|
+ viewModel = me.getViewModel(),
|
|
|
+ gradeName = viewModel.get('si_grade'),
|
|
|
+ clazzName = viewModel.get('si_class');
|
|
|
+
|
|
|
+ if(gradeName && clazzName) {
|
|
|
+ return 'stu_grade=\'' + gradeName + '\' and stu_class = \'' + clazzName + '\'';
|
|
|
+ }else {
|
|
|
+ school.util.BaseUtil.showErrorToast('请先选择【' + '<span style="color: red;">班级</span>】');
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
onAfterSave: function(localJson) {
|
|
|
var form = this.getView();
|
|
|
var id = localJson.data.id;
|
|
|
@@ -36,5 +120,44 @@ Ext.define('school.view.interaction.score.DetailController', {
|
|
|
view.setLoading(false);
|
|
|
school.util.BaseUtil.showErrorToast('发布失败: ' + e.message);
|
|
|
});
|
|
|
- }
|
|
|
+ },
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 清空所有从表数据
|
|
|
+ */
|
|
|
+ clearDetails: function() {
|
|
|
+ var me = this;
|
|
|
+
|
|
|
+ me.clearDetail0();
|
|
|
+ },
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 清空第一个从表数据
|
|
|
+ */
|
|
|
+ clearDetail0: function(f, n, o) {
|
|
|
+ var me = this,
|
|
|
+ form = me.getView(),
|
|
|
+ grid = form.query('detailGridField')[0];
|
|
|
+ me.clearDetail(grid);
|
|
|
+ },
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 清空一个从表数据
|
|
|
+ */
|
|
|
+ clearDetail: function(grid) {
|
|
|
+ var datas = [],
|
|
|
+ emptyRows = grid.emptyRows,
|
|
|
+ detnoColumn = grid.detnoColumn,
|
|
|
+ detno = 0,
|
|
|
+ store = grid.getStore();
|
|
|
+
|
|
|
+ Ext.Array.each(new Array(emptyRows), function() {
|
|
|
+ detno += 1;
|
|
|
+ var data = {};
|
|
|
+ data[detnoColumn] = detno;
|
|
|
+ datas.push(data);
|
|
|
+ })
|
|
|
+ store.removeAll();
|
|
|
+ store.add(datas);
|
|
|
+ },
|
|
|
});
|