فهرست منبع

Merge branch 'dev' of ssh://10.10.100.21/source/saas-platform into dev

will.chen 7 سال پیش
والد
کامیت
9b3b21f647

+ 3 - 2
frontend/saas-web/app/util/FormUtil.js

@@ -54,9 +54,10 @@ Ext.define('saas.util.FormUtil', {
 
                         // 设置必填
                         if(item.allowBlank==false){
-                            //item.fieldLabel = "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>"+item.fieldLabel;
+                            // TODO 需要判断类型
+                            item.beforeLabelTextTpl = "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>";
                         }
-                        
+
                         // 如果是从表为其绑定store
                         if(item.xtype == 'detailGridField') {
                             item.bind = {

+ 13 - 12
frontend/saas-web/app/view/core/form/FormPanelController.js

@@ -8,17 +8,17 @@ Ext.define('saas.view.core.form.FormPanelController', {
     auditBtnClick: function() {
         var me = this,
         form = me.getView(),
-        statusField = form._statusField,
+        statusCodeField = form._statusCodeField,
         viewModel = me.getViewModel(),
-        status = viewModel.get(statusField);
+        status = viewModel.get(statusCodeField);
 
-        status == 'AUDIT' ? me.unAudit() : me.audit();
+        status == 'AUDITED' ? me.unAudit() : me.audit();
     },
 
-    add: function(btn){
-        var form = btn.ownerCt.ownerCt;
+    add: function(){
+        var form = this.getView();
         var mainTab = Ext.getCmp('main-tab-panel');
-        var title = '新增' + btn.ownerCt.ownerCt._title;
+        var title = '新增' + form._title;
         var id = form.xtype + '_add';
         existingItem = mainTab.down('[id=' + id + ']');
         lastView = mainTab.getActiveTab();
@@ -35,9 +35,9 @@ Ext.define('saas.view.core.form.FormPanelController', {
         }
     },
     
-    delete: function(btn){
+    delete: function(){
         var me = this;
-        var form = btn.ownerCt.ownerCt;
+        var form = this.getView();
         var id = form.getForm().findField(form._idField);
         if(id&&id.value!=0){
             me.BaseUtil.request({
@@ -59,9 +59,9 @@ Ext.define('saas.view.core.form.FormPanelController', {
         }
     },
 
-    save:function(btn){
+    save:function(){
         var me = this;
-        var form = btn.ownerCt.ownerCt;
+        var form = this.getView();
         if(form.getForm().wasDirty==false){
             Ext.Msg.alert('提示','未修改数据,请修改后保存');
             return false;
@@ -107,9 +107,9 @@ Ext.define('saas.view.core.form.FormPanelController', {
         });
     },
 
-    audit: function(btn){
+    audit: function(){
         var me = this;
-        var form = btn.ownerCt.ownerCt;
+        var form = this.getView();
         if(form.getForm().wasDirty==false){
             Ext.Msg.alert('提示','未修改数据,请修改后保存');
             return false;
@@ -146,6 +146,7 @@ Ext.define('saas.view.core.form.FormPanelController', {
             var localJson = new Ext.decode(res.responseText);
             if(localJson.success){
                 Ext.Msg.alert('提示','审核成功');
+                form.initId = localJson.data.id;
                 form.FormUtil.loadData(form);
             }
         })

+ 15 - 4
frontend/saas-web/app/view/core/form/MultiCombo.js

@@ -75,15 +75,26 @@ Ext.define('saas.view.core.form.MultiCombo', {
     },
     onCheckChange:function(checkItem, checked){
         var items=this.menu.items.items,
-            rawV,v;
+            checkedItems = [];
         Ext.Array.each(items,function(item){
             if(item.checked){
-                rawV=rawV?rawV+','+item.text:item.text;
-                v=v?v+","+"'"+item.checkValue+"'":"'"+item.checkValue+"'";
+                checkedItems.push({
+                    text: item.text,
+                    value: item.checkValue
+                });
             }
         });
+        this.setValue(checkedItems);
+        this.publishState('value', checkedItems);
+    },
+
+    setValue: function(items) {
+        var rawV = '';
+        rawV = items.map(function(item) {
+            return item.text
+        }).join(',');
         this.setRawValue(rawV);
-        this.value=v;
+        this.value = items;
     },
 
     showMenu: function (e, menu) {

+ 10 - 0
frontend/saas-web/app/view/core/form/field/DetailGridField.js

@@ -25,6 +25,16 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
     showIndex: true,
     configUrl: '',
 
+    features: [{
+        ftype : 'groupingsummary',
+        groupHeaderTpl : '{name}',
+        hideGroupedHeader : false,
+        enableGroupingMenu : false
+    }, {
+        ftype: 'summary',
+        dock: 'bottom'
+    }],
+
     initComponent: function() {
         var me = this;
         Ext.apply(me, {

+ 6 - 5
frontend/saas-web/app/view/purchase/purchase/FormPanel.js

@@ -7,7 +7,8 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
     
     _title:'采购单',
     _codeField: 'pu_ode',
-    _statusField: 'pu_statuscode',
+    _statusField: 'pu_status',
+    _statusCodeField: 'pu_statuscode',
     _idField: 'id',
     _detnoColumn:  'pd_detno',
     _dataModelUrl:'http://192.168.253.58:8800/purchase/read/',
@@ -191,7 +192,7 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
                 xtype:'datecolumn',
                 format : "Y-m-d H:i:s", 
                 editor : {
-                    xtype : "datetimefield",
+                    xtype : "datefield",
                     editable : true, 
                     format : "Y-m-d H:i:s", 
                     hideTrigger : false
@@ -206,7 +207,7 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
         ]
     }, {
         format : "Y-m-d", 
-        xtype : "datetimefield", 
+        xtype : "datefield", 
         name : "createTime", 
         bind : "{createTime}", 
         fieldLabel : "创建时间", 
@@ -223,8 +224,8 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
         xtype : "textfield", 
         readOnly : true, 
         editable : false, 
-        name : "puStatus", 
-        bind : "{puStatus}", 
+        name : "pu_status", 
+        bind : "{pu_status}", 
         fieldLabel : "单据状态", 
         allowBlank : true, 
         columnWidth : 0.25

+ 11 - 6
frontend/saas-web/app/view/test/order/FormPanel.js

@@ -129,7 +129,8 @@ Ext.define('saas.view.test.order.FormPanel', {
                 text : "序号", 
                 dataIndex : "pd_detno", 
                 width : 80.0, 
-                xtype : "rownumberer"
+                xtype : "rownumberer",
+                summaryType: 'count'
             }, 
             {
                 editor : {
@@ -165,27 +166,31 @@ Ext.define('saas.view.test.order.FormPanel', {
                 text : "数量", 
                 dataIndex : "pd_yqty", 
                 width : 120.0, 
-                xtype : "", 
-                items : null
+                xtype : "numbercolumn", 
+                items : null,
+                summaryType: 'sum'
             }, 
             {
                 text : "单价", 
                 dataIndex : "pd_price", 
                 width : 120.0, 
                 xtype : "numbercolumn", 
-                items : null
+                items : null,
+                summaryType: 'sum'
             }, 
             {
                 text : "总额", 
                 dataIndex : "pd_total", 
                 width : 120.0, 
-                xtype : "numbercolumn"
+                xtype : "numbercolumn",
+                summaryType: 'sum'
             }, 
             {
                 text : "税额", 
                 dataIndex : "pd_taxtotal", 
                 flex : 1.0, 
-                xtype : "numbercolumn"
+                xtype : "numbercolumn",
+                summaryType: 'sum'
             }
         ]
     }, {