Browse Source

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

chenw 7 years ago
parent
commit
78861e6f3e
41 changed files with 520 additions and 309 deletions
  1. 11 0
      applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/controller/HomePageController.java
  2. 2 0
      applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/mapper/HomePageMapper.java
  3. 2 0
      applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/HomePageService.java
  4. 7 0
      applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/HomePageServiceImpl.java
  5. 25 0
      applications/commons/commons-server/src/main/resources/mapper/HomePageMapper.xml
  6. 2 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/BomServiceImpl.java
  7. 1 1
      frontend/saas-portal-web/config/dev.env.js
  8. 1 1
      frontend/saas-portal-web/config/test.env.js
  9. 10 0
      frontend/saas-web/app/Application.scss
  10. 22 20
      frontend/saas-web/app/view/core/base/BasePanelController.js
  11. 4 1
      frontend/saas-web/app/view/core/chart/ChartBase.scss
  12. 22 20
      frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js
  13. 42 20
      frontend/saas-web/app/view/core/dbfind/MultiDbfindGridPanel.js
  14. 2 2
      frontend/saas-web/app/view/core/form/FormPanel.js
  15. 22 20
      frontend/saas-web/app/view/core/form/MseeageLog.js
  16. 44 40
      frontend/saas-web/app/view/core/query/QueryPanel.js
  17. 4 3
      frontend/saas-web/app/view/core/report/ReportPanel.js
  18. 8 1
      frontend/saas-web/app/view/core/tab/Controller.js
  19. 2 1
      frontend/saas-web/app/view/core/tab/Panel.js
  20. 12 9
      frontend/saas-web/app/view/document/bom/FormPanel.js
  21. 2 2
      frontend/saas-web/app/view/document/kind/ChildForm.js
  22. 2 2
      frontend/saas-web/app/view/document/product/BasePanel.js
  23. 35 1
      frontend/saas-web/app/view/home/Home.js
  24. 7 2
      frontend/saas-web/app/view/home/InfoCard.js
  25. 4 0
      frontend/saas-web/app/view/home/InfoCard.scss
  26. 1 1
      frontend/saas-web/app/view/main/Main.js
  27. 8 7
      frontend/saas-web/app/view/main/MainContainerWrap.js
  28. 2 2
      frontend/saas-web/app/view/money/report/TotalRecDetail.js
  29. 2 0
      frontend/saas-web/app/view/money/verification/FormPanel.js
  30. 15 2
      frontend/saas-web/app/view/sale/report/Sale.js
  31. 1 1
      frontend/saas-web/app/view/stock/appropriationInOut/QueryPanel.js
  32. 88 52
      frontend/saas-web/app/view/sys/account/AddWindow.js
  33. 23 21
      frontend/saas-web/app/view/sys/account/DataList.js
  34. 3 3
      frontend/saas-web/app/view/sys/account/EditWindow.js
  35. 22 20
      frontend/saas-web/app/view/sys/finish/DataList.js
  36. 1 1
      frontend/saas-web/app/view/sys/guide/FormPanel.js
  37. 22 20
      frontend/saas-web/app/view/sys/maxnumbers/DataList.js
  38. 22 20
      frontend/saas-web/app/view/sys/messagelog/DataList.js
  39. 5 3
      frontend/saas-web/ext/packages/ux/src/feature/MySummary.js
  40. 1 1
      frontend/saas-web/index.html
  41. 9 9
      frontend/saas-web/resources/json/navigation.json

+ 11 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/controller/HomePageController.java

@@ -93,4 +93,15 @@ public class HomePageController {
         return homePageService.saleFutureData();
     }
 
+    /**
+     * @Description 关键数据
+     * @return: com.usoftchina.saas.base.Result
+     * @Author: guq
+     * @Date: 2018/11/14
+     */
+    @GetMapping("/keyData")
+    public Result keyData() {
+        return homePageService.keyData();
+    }
+
 }

+ 2 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/mapper/HomePageMapper.java

@@ -17,4 +17,6 @@ public interface HomePageMapper {
     String getSaleData(Long componyId);
 
     String getSaleFutureData(Long componyId);
+
+    String getKeyData(Long companyId);
 }

+ 2 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/HomePageService.java

@@ -49,4 +49,6 @@ public interface HomePageService {
     Result saleData();
 
     Result saleFutureData();
+
+    Result keyData();
 }

+ 7 - 0
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/HomePageServiceImpl.java

@@ -79,6 +79,13 @@ public class HomePageServiceImpl implements HomePageService{
         return Result.success(json);
     }
 
+    @Override
+    public Result keyData() {
+        Long companyId = BaseContextHolder.getCompanyId();
+        Object data = parseJson(homePageMapper.getKeyData(companyId));
+        return Result.success(data);
+    }
+
     private Object parseJson(String text) {
         Object json = null;
         if (null != text) {

+ 25 - 0
applications/commons/commons-server/src/main/resources/mapper/HomePageMapper.xml

@@ -91,4 +91,29 @@
 
         (select concat('{"x":',DATE_FORMAT(date_sub(now(),interval 5 MONTH),'%c'),',"sale":',ifnull(ROUND(sum((ifnull(si_amount/10000,0))),2),'0'),',"saleback":',ifnull(ROUND(sum((ifnull(si_amount_rec/10000,0))),2),'0'),'}') d6 from  statsinfo where companyid=#{componyId} and si_yearmonth=DATE_FORMAT(date_sub(now(),interval 5 MONTH),'%Y%m') and si_type='SALERETURN' ORDER BY si_amount desc)data_6)
        </select>
+
+    <select id="getKeyData" parameterType="long" resultType="string">
+          select concat('{"storageTotal":',storageTotal,',"receiveTotal":',receiveTotal,',"payTotal":',payTotal,',"balanceTotal":',balanceTotal,'}') from (
+            #库存总额:
+            (
+            SELECT ifnull(storage_,0) storageTotal from (
+            select sum(ifnull(po_amount,0)) storage_ from productonhand where companyid=#{componyId})a
+            ) a1,
+            #应收总额
+            (
+            select ifnull(receive_,0) receiveTotal from (
+            select sum(ifnull(cu_leftamount,0)) receive_ from customer where companyid=#{componyId}) b
+            )b1,
+            #应付总额
+            (
+            select ifnull(pay_,0) payTotal from (
+            select sum(ifnull(ve_leftamount,0)) pay_ from vendor where companyId=#{componyId}) c
+            )c1,
+            #账户余额
+            (
+            select ifnull(balance_,0) balanceTotal from (
+            select sum(ifnull(bk_thisamount,0)) balance_ from bankinformation where companyid=#{componyId})d
+            )d1
+            );
+    </select>
 </mapper>

+ 2 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/BomServiceImpl.java

@@ -56,6 +56,8 @@ public class BomServiceImpl extends CommonBaseServiceImpl<BomMapper, Bom> implem
 //                String code = pushMaxnubmer(bom.getBo_mothercode(), bom.getId());
                 String code = bom.getBo_mothercode();
                 bom.setBo_mothercode(code);
+                bom.setBo_statuscode(Status.ENABLE.name());
+                bom.setBo_status(Status.ENABLE.getDisplay());
                 bom.setCompanyId(companyId);
                 bom.setCreatorId(userId);
                 bom.setCreatorName(userName);

+ 1 - 1
frontend/saas-portal-web/config/dev.env.js

@@ -10,6 +10,6 @@ module.exports = merge(prodEnv, {
     // 后端接口网关
     api: '"https://saas-api-dev.usoftchina.com:5443"',
     // 账户中心接口
-    sso: '"https://sso-dev.usoftchina.com:5443"'
+    sso: '"https://tsso.usoftchina.com"'
   }
 })

+ 1 - 1
frontend/saas-portal-web/config/test.env.js

@@ -10,6 +10,6 @@ module.exports = merge(devEnv, {
     // 后端接口网关
     api: '"https://saas-api-test.usoftchina.com:5443"',
     // 账户中心接口
-    sso: '"https://sso-dev.usoftchina.com:5443"'
+    sso: '"https://tsso.usoftchina.com"'
   }
 })

+ 10 - 0
frontend/saas-web/app/Application.scss

@@ -153,6 +153,16 @@ body.launching {
   }
 }
 
+.x-btn-showicon{
+  .x-btn-wrap{
+    .x-btn-button{
+      .x-btn-inner{
+        color:#999 !important;
+      }
+    }
+  }
+}
+
 .x-keyboard-mode .x-btn-focus.x-btn-default-toolbar-small {
   background: inherit;
   opacity: 1;

+ 22 - 20
frontend/saas-web/app/view/core/base/BasePanelController.js

@@ -36,28 +36,30 @@ Ext.define('saas.view.core.base.BasePanelController', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 4 - 1
frontend/saas-web/app/view/core/chart/ChartBase.scss

@@ -26,5 +26,8 @@
                 }
             }
         }
-    } 
+    }
+    .x-mask {
+        background-color: transparent;
+    }
 }

+ 22 - 20
frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js

@@ -194,28 +194,30 @@ Ext.define('saas.view.core.dbfind.DbfindGridPanel', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 42 - 20
frontend/saas-web/app/view/core/dbfind/MultiDbfindGridPanel.js

@@ -42,6 +42,26 @@ Ext.define('saas.view.core.dbfind.MultiDbfindGridPanel', {
             var pageSize = Math.floor(gridBodyBoxHeight / 33);
 
             store.setPageSize(pageSize);
+        },
+        itemdblclick:function( view, record, item, index, e, eOpts ) {
+            var grid = view.ownerCt;
+            var index = -1;
+            index = grid.selectRecordArr.findIndex(function(f){
+                return f.id==record.id
+            });
+            grid.selModel.noChange = true;
+            if(index==-1){
+                grid.selectRecordArr.push(record);
+                grid.selModel.select(grid.selectRecordArr);
+                // grid.store.loadPage(grid.store.currentPage);
+                grid.updateLayout();
+                grid.view.updateLayout();
+                Ext.resumeLayouts();
+            }else{
+                grid.selectRecordArr.splice(index,1);
+                grid.selModel.deselect(record);
+            }
+            grid.selModel.noChange = false;
         }
     },
 
@@ -357,28 +377,30 @@ Ext.define('saas.view.core.dbfind.MultiDbfindGridPanel', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 2 - 2
frontend/saas-web/app/view/core/form/FormPanel.js

@@ -235,7 +235,7 @@ Ext.define('saas.view.core.form.FormPanel', {
                 bind: '{' + statusCodeField + '}',
                 get: function(value) {
                     // viewModel.set(statusField, value == 'AUDITED' ? '已审核' : '未审核');
-                    viewModel.set(statusField, value == auditTexts.auditCode ? auditTexts.auditText : auditTexts.unAuditText);
+                    viewModel.set(statusField, value ? (value == auditTexts.auditCode ? auditTexts.auditText : auditTexts.unAuditText) : null);
                     // viewModel.set('auditBtnText', value == 'AUDITED' ? '反审核' : '审核');
                     viewModel.set('auditBtnText', value == auditTexts.auditCode ? auditTexts.unAuditBtnText : auditTexts.auditBtnText);
                     // me.setEditable(value != 'AUDITED');
@@ -395,7 +395,7 @@ Ext.define('saas.view.core.form.FormPanel', {
                 item.bind = '{' + name + '}';
             }
             // 设置默认值
-            if (defaultValue) {
+            if (defaultValue != undefined) {
                 viewModel.set(name, defaultValue);
             }
 

+ 22 - 20
frontend/saas-web/app/view/core/form/MseeageLog.js

@@ -155,28 +155,30 @@ Ext.define('saas.view.core.form.MseeageLog', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 44 - 40
frontend/saas-web/app/view/core/query/QueryPanel.js

@@ -137,28 +137,30 @@ Ext.define('saas.view.core.query.QueryPanel', {
                 value = moreItems[k],
                 condition;
     
-                if(typeof func == 'function') {
-                    condition = {
-                        type: 'condition',
-                        value: func(value)
-                    }
-                }else {
-                    var xtype = item.xtype || 'textfield',
-                    type = item.fieldType || me.getDefaultFieldType(xtype),
-                    operation = item.operation || me.getDefaultFieldOperation(xtype),
-                    conditionValue = me.getConditionValue(xtype, value);
-        
-                    if(!conditionValue) {
-                        continue;
-                    }
-                    condition = {
-                        type: type,
-                        field: field,
-                        operation: operation,
-                        value: conditionValue
+                if(value&&value!=''){
+                    if(typeof func == 'function') {
+                        condition = {
+                            type: 'condition',
+                            value: func(value)
+                        }
+                    }else {
+                        var xtype = item.xtype || 'textfield',
+                        type = item.fieldType || me.getDefaultFieldType(xtype),
+                        operation = item.operation || me.getDefaultFieldOperation(xtype),
+                        conditionValue = me.getConditionValue(xtype, value);
+            
+                        if(!conditionValue) {
+                            continue;
+                        }
+                        condition = {
+                            type: type,
+                            field: field,
+                            operation: operation,
+                            value: conditionValue
+                        }
                     }
+                    conditions.push(condition);
                 }
-                conditions.push(condition);
             }
         }else {
             for(k in bindItems) {
@@ -170,28 +172,30 @@ Ext.define('saas.view.core.query.QueryPanel', {
                 value = bindItems[k],
                 condition;
     
-                if(typeof func == 'function') {
-                    condition = {
-                        type: 'condition',
-                        value: func(value)
-                    }
-                }else {
-                    var xtype = item.xtype || 'textfield',
-                    type = item.fieldType || me.getDefaultFieldType(xtype),
-                    operation = item.operation || me.getDefaultFieldOperation(xtype),
-                    conditionValue = me.getConditionValue(xtype, value);
-        
-                    if(!conditionValue) {
-                        continue;
-                    }
-                    condition = {
-                        type: type,
-                        field: field,
-                        operation: operation,
-                        value: conditionValue
+                if(value&&value!=''){
+                    if(typeof func == 'function') {
+                        condition = {
+                            type: 'condition',
+                            value: func(value)
+                        }
+                    }else {
+                        var xtype = item.xtype || 'textfield',
+                        type = item.fieldType || me.getDefaultFieldType(xtype),
+                        operation = item.operation || me.getDefaultFieldOperation(xtype),
+                        conditionValue = me.getConditionValue(xtype, value);
+            
+                        if(!conditionValue) {
+                            continue;
+                        }
+                        condition = {
+                            type: type,
+                            field: field,
+                            operation: operation,
+                            value: conditionValue
+                        }
                     }
+                    conditions.push(condition);
                 }
-                conditions.push(condition);
             }
         }
 

+ 4 - 3
frontend/saas-web/app/view/core/report/ReportPanel.js

@@ -239,8 +239,8 @@ Ext.define('saas.view.core.report.ReportPanel', {
                                 if(type && d) {
                                     if(type == 'count') {
                                         c.summaryValue = Ext.util.Format.number(d[name], c.format || '0');
-                                    }else if(typeof c.summaryRender == 'function') {
-                                        c.summaryValue = c.summaryRender(d[name]);
+                                    }else if(typeof c.summaryRenderer == 'function') {
+                                        c.summaryValue = c.summaryRenderer(d[name]);
                                     }else if(typeof c.renderer == 'function') {
                                         c.summaryValue = c.renderer(d[name]);
                                     }else {
@@ -345,7 +345,7 @@ Ext.define('saas.view.core.report.ReportPanel', {
                 })
             }else if(c.xtype == 'numbercolumn') {
                 Ext.applyIf(c, {
-                    align: 'end',
+                    align: 'end', // 数字右对齐
                     renderer : function(v) {
                         var arr = (v + '.').split('.');
                         var xr = (new Array(arr[1].length)).fill('0');
@@ -375,6 +375,7 @@ Ext.define('saas.view.core.report.ReportPanel', {
             column.summaryTypeName = summaryType;
         }
         if(summaryType == 'sum') {
+            column._summaryType = 'sum';
             // 原生的求和方法使用的是Store.sum,在数据存在null时计算结果为NaN,这里重写一下
             column.summaryType = function(records, values) {
                 return Ext.Array.sum(values);

+ 8 - 1
frontend/saas-web/app/view/core/tab/Controller.js

@@ -19,7 +19,7 @@ Ext.define('saas.view.core.tab.Controller', {
     },
 
     onTabActivate: function(component) {
-        var tabView = component.down('panel');
+        var tabView = component.down('container');
 
         if(typeof tabView.refresh == 'function') {
             tabView.refresh();
@@ -63,5 +63,12 @@ Ext.define('saas.view.core.tab.Controller', {
 
             component.resetCloseClick = true;
         }
+
+        tabView.fireEvent('onTabActivate', tabView);
+    },
+
+    onTabDeactivate: function(component) {
+        var tabView = component.down('container');
+        tabView.fireEvent('onTabDeactivate', tabView);
     }
 });

+ 2 - 1
frontend/saas-web/app/view/core/tab/Panel.js

@@ -5,6 +5,7 @@ Ext.define('saas.view.core.tab.Panel', {
     layout: 'fit',
     
     listeners: {
-        activate: 'onTabActivate'
+        activate: 'onTabActivate',
+        deactivate: 'onTabDeactivate'
     }
 });

+ 12 - 9
frontend/saas-web/app/view/document/bom/FormPanel.js

@@ -63,17 +63,13 @@ Ext.define('saas.view.document.bom.FormPanel', {
         xtype: 'textfield',
         name: 'bo_mothername',
         fieldLabel: '产品名称',
-        reddOnly:true,
+        readOnly:true,
         allowBlank: false
     },{
         xtype: 'textfield',
         name: 'pr_spec',
         fieldLabel: '产品规格',
-        reddOnly:true,
-    },{
-        xtype: 'hidden',
-        name: 'bo_statuscode',
-        fieldLabel: '状态码'
+        readOnly:true,
     },{
         xtype: 'textfield',
         name: 'bo_version',
@@ -202,15 +198,22 @@ Ext.define('saas.view.document.bom.FormPanel', {
                     xtype : "textfield"
                 },
             }]
-    },{
+    }, {
+        xtype: 'hidden',
+        name: 'bo_statuscode',
+        fieldLabel: '状态码',
+        readOnly:true,
+        defaultValue: ''
+    }, {
         xtype: 'textfield',
         name: 'bo_status',
         fieldLabel: '产品状态',
-        reddOnly:true
+        readOnly:true,
+        defaultValue: ''
     },{  
         xtype : "textfield", 
         name : "creatorName", 
-        reddOnly:true,
+        readOnly:true,
         fieldLabel : "录入人"
     },{
         xtype : "datefield", 

+ 2 - 2
frontend/saas-web/app/view/document/kind/ChildForm.js

@@ -143,7 +143,7 @@ Ext.define('saas.view.document.kind.ChildForm', {
         var me = this, kind = me.dataKind;
         var conf = {
             xtype: 'form',
-            bodyPadding: 10,
+            bodyPadding: '10 30 10 10',
             border: false,
             autoScroll:true,
             modelValidation: true,
@@ -152,10 +152,10 @@ Ext.define('saas.view.document.kind.ChildForm', {
                 align: 'stretch'
             },
             defaults: {
-                labelAlign:'right',
                 beforeLabelTextTpl: "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>",
                 xtype: 'textfield'
             },
+            buttonAlign:'center',
             buttons: [{
                 text: '保存',
                 formBind:true,

+ 2 - 2
frontend/saas-web/app/view/document/product/BasePanel.js

@@ -14,7 +14,7 @@ Ext.define('saas.view.document.product.BasePanel', {
         width:300, 
         emptyText:'输入物料编号、名称、型号或规格',
         getCondition: function (v) {
-            return "(upper(CONCAT(pr_code,'#',pr_detail,'#',pr_spec,'#',pr_orispeccode)) like '%" + v.toUpperCase() + "%')";
+            return "(upper(CONCAT(pr_code,'#',pr_detail,'#',ifnull(pr_spec,''),'#',ifnull(pr_orispeccode,''))) like '%" + v.toUpperCase() + "%')";
         },
     },{
         editable:true,
@@ -23,7 +23,7 @@ Ext.define('saas.view.document.product.BasePanel', {
         storeUrl: '/api/document/producttype/getCombo',
         name : "pr_kind", 
         emptyText : "物料类型",
-        width:120,
+        width:120
     }, {
         xtype : "textfield", 
         name : "pr_brand", 

+ 35 - 1
frontend/saas-web/app/view/home/Home.js

@@ -21,6 +21,8 @@ Ext.define('saas.view.home.Home', {
 
     scrollable: true,
 
+    REFRESH_INTERVALS: 5 * 60 * 1000, // 刷新间隔
+
     defaults: {
         shadow: true,
         cls: 'x-home-box',
@@ -69,5 +71,37 @@ Ext.define('saas.view.home.Home', {
         }, {
             xtype: 'stock-amount'
         }]
-    }]
+    }],
+
+    initComponent: function() {
+        this.lastTime = Ext.Date.now();
+        this.callParent(arguments);
+    },
+
+    listeners: {
+        onTabActivate: function(p) {
+            p.refreshId = window.setInterval((p.refreshStores.bind(p)()).bind(p), p.REFRESH_INTERVALS);
+        },
+        onTabDeactivate: function(p) {
+            p.lastTime = 0;
+            window.clearInterval(p.refreshId);
+        }
+    },
+
+    refreshStores: function() {
+        var me = this,
+        lastTime = me.lastTime || 0,
+        now = Ext.Date.now(),
+        viewModel = me.getViewModel(),
+        stores = viewModel.storeInfo;
+
+        if(now - lastTime > me.REFRESH_INTERVALS) {
+            for(var key in stores) {
+                var store = stores[key];
+                store.load();
+            }
+            me.lastTime = Ext.Date.now();
+        }
+        return me.refreshStores;
+    }
 });

+ 7 - 2
frontend/saas-web/app/view/home/InfoCard.js

@@ -34,8 +34,6 @@ Ext.define('saas.view.home.InfoCard', {
     initComponent: function () {
         var me = this;
 
-        var companyId = saas.util.BaseUtil.getCurrentUser().companyId;
-
         Ext.apply(me, {
             cards: {
                 unship: {
@@ -106,6 +104,7 @@ Ext.define('saas.view.home.InfoCard', {
     addCardItems: function(infoData) {
         infoData = infoData || {};
         var me = this,
+        currentIndex = me.currentIndex,
         p = me.up('home'),
         cards = me.cards,
         datas = [],
@@ -158,6 +157,11 @@ Ext.define('saas.view.home.InfoCard', {
             me.showPageTrigger();
         }
 
+        if(Ext.isNumber(currentIndex)) {
+            me.setActiveItem(me.items.items[currentIndex]);
+        }else {
+            me.currentIndex = 0;
+        }
         me.updateLayout(true);
     },
 
@@ -182,6 +186,7 @@ Ext.define('saas.view.home.InfoCard', {
         var c = me.items.items.length;
         var next = parseInt(i, 10) + incr;
         l.setActiveItem(next);
+        me.currentIndex = me.currentIndex + incr;
 
         me.down('#card-prev').setDisabled(next === 0);
         me.down('#card-next').setDisabled(next === (c-1));

+ 4 - 0
frontend/saas-web/app/view/home/InfoCard.scss

@@ -52,6 +52,10 @@ $max-card-width: 235px;
     .x-toolbar-default-vertical {
         padding: 0;
     }
+
+    .x-mask {
+        background-color: transparent;
+    }
 }
 
 .x-scroller-button {

+ 1 - 1
frontend/saas-web/app/view/main/Main.js

@@ -31,7 +31,7 @@ Ext.define('saas.view.main.Main', {
                     reference: 'mainLogo',
                     width: 180,
                     cls: 'main-logo-wrap',
-                    html: '<div class="main-logo"><img src="resources/images/default/logo-default.png"/><div class="logo-text">企云服</div></div>',
+                    html: '<div class="main-logo"><img src="resources/images/default/logo-default.png"/><div class="logo-text">U企云服</div></div>',
                     bind: {
                         width: '{navWidth}'
                     }

+ 8 - 7
frontend/saas-web/app/view/main/MainContainerWrap.js

@@ -36,14 +36,15 @@ Ext.define('saas.view.main.MainContainerWrap', {
                 closeAllTabsText: '关闭全部页',
                 closeOthersTabsText: '关闭其他页'
             })],
-            items: [
-                {
-                    iconCls: 'x-sa sa-home',
+            items: [{
+                xtype: 'core-tab-panel',
+                iconCls: 'x-sa sa-home',
+                title: '首页',
+                closable: false,
+                items: [{
                     xtype: 'home',
-                    title: '首页',
-                    closable: false
-                }
-            ]
+                }]
+            }]
         }
     ],
 });

+ 2 - 2
frontend/saas-web/app/view/money/report/TotalRecDetail.js

@@ -26,12 +26,12 @@ Ext.define('saas.view.money.report.TotalRecDetail', {
         },
     }, {
         xtype: 'monthdatefield',
-        name: 'vm_yearmonth',
+        name: 'cm_yearmonth',
         fieldLabel: '起始期间',
         columnWidth: 0.2
     }, {
         xtype: 'monthdatefield',
-        name: 'vm_yearmonthTo',
+        name: 'cm_yearmonthTo',
         fieldLabel: '结束期间',
         columnWidth: 0.2
     }],

+ 2 - 0
frontend/saas-web/app/view/money/verification/FormPanel.js

@@ -77,6 +77,7 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 text: '来源单号',
                 dataIndex: 'vd_slcode',
                 width: 150,
+                allowBlank:false,
                 editor:{
                     displayField : "display",
                     editable : true,
@@ -198,6 +199,7 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 text: '来源单号',
                 dataIndex: 'vcd_slcode',
                 width: 150,
+                allowBlank:false,
                 editor:{
                     displayField : "display",
                     editable : true,

+ 15 - 2
frontend/saas-web/app/view/sale/report/Sale.js

@@ -127,7 +127,7 @@ Ext.define('saas.view.sale.report.Sale', {
         xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
-            var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
+            var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
             var format = '0,000.' + xr.join();
             return Ext.util.Format.number(v, format);
         }
@@ -137,7 +137,7 @@ Ext.define('saas.view.sale.report.Sale', {
         xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
-            var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
+            var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
             var format = '0,000.' + xr.join();
             return Ext.util.Format.number(v, format);
         }
@@ -154,6 +154,12 @@ Ext.define('saas.view.sale.report.Sale', {
         xtype: 'numbercolumn',
         dataIndex: 'sd_total',
         xtype: 'numbercolumn',
+        renderer : function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+            var format = '0.' + xr.join();
+            return Ext.util.Format.number(v, format);
+        },
         summaryType: 'sum',
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
@@ -166,11 +172,18 @@ Ext.define('saas.view.sale.report.Sale', {
         xtype: 'numbercolumn',
         dataIndex: 'sd_nettotal',
         xtype: 'numbercolumn',
+        renderer : function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+            var format = '0.' + xr.join();
+            return Ext.util.Format.number(v, format);
+        },
         summaryType: 'sum',
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
             var format = '0,000.' + xr.join();
+            console.log(v, format, Ext.util.Format.number(v, format));
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 1 - 1
frontend/saas-web/app/view/stock/appropriationInOut/QueryPanel.js

@@ -184,7 +184,7 @@ Ext.define('saas.view.stock.appropriationInOut.QueryPanel', {
                 dataIndex: 'pr_detail',
                 width: 200
             },{
-                text: '型号规格',
+                text: '规格',
                 dataIndex: 'pr_spec',
                 width: 150
             },{

+ 88 - 52
frontend/saas-web/app/view/sys/account/AddWindow.js

@@ -5,6 +5,7 @@ Ext.define('saas.view.sys.account.AddWindow', {
     extend: 'saas.view.document.kind.ChildForm',
     xtype: 'sys-account-addwindow',
     dataKind:'accountadd',//类型标识
+    height: 325,
     belong:{
         columns:[{
             dataIndex:'realname',
@@ -18,61 +19,88 @@ Ext.define('saas.view.sys.account.AddWindow', {
     etc:{
         accountadd:{
             items:[{
-                xtype:'textfield',
-                fieldLabel: '联系号码',
-                name: 'mobile',
-                hideTrigger:true,
-                allowBlank:false,
-                maxLength: 30,
-                regex:/^1(3|4|5|7|8)\d{9}$/,
-                regexText:'请输入正确的手机号码',
-                listeners:{
-                    change:function(f,a,b){
-                        if(a==''){
-                            f._lastCheckValue = ''
-                        }
-                    },
-                    blur:function(f,a,b,c){
-                        var form = f.ownerCt;
-                        if(f.value&&f.value!=''&&f.isValid()&&f._lastCheckValue!=f.value){
-                            f._lastCheckValue = f.value;
-                            form.setLoading(true);
-                            Ext.Ajax.request({
-                                url: '/api/account/account/checkMobile?mobile='+f.value,
-                                method: 'GET',
-                                headers:{
-                                    'Access-Control-Allow-Origin': '*',
-                                    "Content-Type": 'application/json;charset=UTF-8',
-                                },
-                                success: function (response) {
-                                    form.setLoading(false);
-                                    var localJson = Ext.decode(response.responseText);
-                                    if(localJson.success){
-                                        if(localJson.data.hasRegister){
-                                            saas.util.BaseUtil.showSuccessToast('校验成功:手机号已在优软云注册');
+                xtype: 'fieldcontainer',
+                layout: 'column',
+                items: [{
+                    xtype:'textfield',
+                    fieldLabel: '手机号码',
+                    name: 'mobile',
+                    hideTrigger:true,
+                    allowBlank:false,
+                    maxLength: 30,
+                    columnWidth:0.7,
+                    regex:/^1(3|4|5|7|8)\d{9}$/,
+                    regexText:'请输入正确的手机号码',
+                    listeners:{
+                        change:function(f,a,b){
+                            if(a==''){
+                                f._lastCheckValue = ''
+                            }
+                        },
+                        blur:function(f,a,b,c){
+                            var form = f.ownerCt;
+                            if(f.value&&f.value!=''&&f.isValid()&&f._lastCheckValue!=f.value){
+                                f._lastCheckValue = f.value;
+                                form.setLoading(true);
+                                Ext.Ajax.request({
+                                    url: '/api/account/account/checkMobile?mobile='+f.value,
+                                    method: 'GET',
+                                    headers:{
+                                        'Access-Control-Allow-Origin': '*',
+                                        "Content-Type": 'application/json;charset=UTF-8',
+                                    },
+                                    success: function (response) {
+                                        form.setLoading(false);
+                                        var localJson = Ext.decode(response.responseText);
+                                        if(localJson.success){
+                                            f.hasRegister = localJson.data.hasRegister;
+                                            if(localJson.data.hasRegister){
+                                                f.ownerCt.down('[name=hasAccount]').show();
+                                                f.ownerCt.down('[name=noAccount]').hide();
+                                            }else{
+                                                f.ownerCt.down('[name=hasAccount]').hide();
+                                                f.ownerCt.down('[name=noAccount]').show();
+                                            }
                                         }else{
-                                            saas.util.BaseUtil.showErrorToast('校验失败:手机号未在优软云注册');
+                                            saas.util.BaseUtil.showErrorToast('校验失败:'+localJson.message);
+                                            f.setValue('');
+                                            f.ownerCt.down('[name=hasAccount]').hide();
+                                            f.ownerCt.down('[name=noAccount]').hide();
+                                        }
+                                    },
+                                    failure: function (response) {
+                                        if(response.responseText){
+                                            var localJson = Ext.decode(response.responseText);
+                                            saas.util.BaseUtil.showErrorToast('校验失败:'+localJson.message);
+                                            f.setValue('');
+                                        }else{
+                                            saas.util.BaseUtil.showErrorToast('手机号校验接口连接超时');
                                             f.setValue('');
                                         }
-                                    }else{
-                                        saas.util.BaseUtil.showErrorToast('校验失败:'+localJson.message);
-                                        f.setValue('');
-                                    }
-                                },
-                                failure: function (response) {
-                                    if(response.responseText){
-                                        var localJson = Ext.decode(response.responseText);
-                                        saas.util.BaseUtil.showErrorToast('校验失败:'+localJson.message);
-                                        f.setValue('');
-                                    }else{
-                                        saas.util.BaseUtil.showErrorToast('手机号校验接口连接超时');
-                                        f.setValue('');
                                     }
-                                }
-                            });
+                                });
+                            }
                         }
                     }
-                }
+                },{
+                    hidden:true,
+                    name:'hasAccount',
+                    xtype:'button',
+                    cls:'x-btn-showicon',
+                    style:'background:#fff;border:none;padding:7px 0 7px 0;',
+                    text:'已注册优软云',
+                    icon:'resources/images/default/toast_over.png',
+                    columnWidth:0.3,
+                },{
+                    name:'noAccount',
+                    hidden:true,
+                    xtype:'button',
+                    cls:'x-btn-showicon',
+                    style:'background:#fff;border:none;padding:7px 0 7px 0;',
+                    text:'未注册优软云',
+                    icon:'resources/images/default/toast_close.png',
+                    columnWidth:0.3,
+                }]
             },{
                 xtype:'textfield',
                 fieldLabel: '真实姓名',
@@ -132,10 +160,17 @@ Ext.define('saas.view.sys.account.AddWindow', {
             },{
                 xtype:'datamulticombo',
                 dataUrl:'/api/account/role/list',
-                fieldLabel: '关联角色',
+                fieldLabel: '岗位角色',
                 name: 'roleIds',
                 allowBlank:false,
                 maxLength: 30,
+            },{
+                margin:'10 0 0 0',
+                xtype:'displayfield',
+                fieldLabel: '温馨提示',
+                beforeLabelTextTpl: "",
+                value:'已注册优软云可以访问优软云门户网',
+                fieldStyle:'color:#999;margin-top: 9px;'
             }]
         }
     },
@@ -144,7 +179,6 @@ Ext.define('saas.view.sys.account.AddWindow', {
         var belong = this.belong;
         me.setLoading(true);
         var form=this.down('form');
-        var combo = this._combo;
         var params = {};
         var names = belong.columns.map(column => column.dataIndex);
 
@@ -153,7 +187,9 @@ Ext.define('saas.view.sys.account.AddWindow', {
                 var dataField = form.down('[name='+name+']');
                 if(dataField&&dataField.value){
                     params[name] = dataField.value;
-                    params._value = dataField.value;
+                }
+                if(dataField.name=='mobile'){
+                    params['hasRegister'] = dataField.hasRegister;
                 }
             }
         });

+ 23 - 21
frontend/saas-web/app/view/sys/account/DataList.js

@@ -22,7 +22,7 @@ Ext.define('saas.view.sys.account.DataList', {
         width: 140,
         name: 'mobile',
         xtype: 'textfield',
-        emptyText : '联系电话'
+        emptyText : '手机号码'
     },{
         xtype:'button',
         text:'查询',
@@ -311,28 +311,30 @@ Ext.define('saas.view.sys.account.DataList', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 3 - 3
frontend/saas-web/app/view/sys/account/EditWindow.js

@@ -38,14 +38,14 @@ Ext.define('saas.view.sys.account.EditWindow', {
             },{
                 xtype:'datamulticombo',
                 dataUrl:'/api/account/role/list',
-                fieldLabel: '关联角色',
+                fieldLabel: '岗位角色',
                 name: 'roleNames',
                 allowBlank:true,
                 maxLength: 20,
                 beforeLabelTextTpl: "",
             },{
                 xtype:'textfield',
-                fieldLabel: '联系电话',
+                fieldLabel: '手机号码',
                 name: 'mobile',
                 readOnly:true,
                 editable:false,
@@ -90,7 +90,7 @@ Ext.define('saas.view.sys.account.EditWindow', {
         o = o.substring(0,o.length-1);
 
         if(o==""){
-            saas.util.BaseUtil.showErrorToast('关联角色未选择,无法保存!')
+            saas.util.BaseUtil.showErrorToast('岗位角色未选择,无法保存!')
         }
 
         var _params = {

+ 22 - 20
frontend/saas-web/app/view/sys/finish/DataList.js

@@ -196,28 +196,30 @@ Ext.define('saas.view.sys.finish.DataList', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 1 - 1
frontend/saas-web/app/view/sys/guide/FormPanel.js

@@ -244,7 +244,7 @@ Ext.define('saas.view.sys.guide.FormPanel', {
             title = '供应商资料'
         }
         if(type=='begin'){
-            message = '<span>欢迎您使用企云进销存!</br>'+
+            message = '<span>欢迎您使用U企云进销存!</br>'+
             '温馨提示:开账后您还是可以通过左侧菜单栏对基础资料进行维护。</span>';
             xtype = "begin";
             icon = 'x-gudie-end';

+ 22 - 20
frontend/saas-web/app/view/sys/maxnumbers/DataList.js

@@ -292,28 +292,30 @@ Ext.define('saas.view.sys.maxnumbers.DataList', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 22 - 20
frontend/saas-web/app/view/sys/messagelog/DataList.js

@@ -160,28 +160,30 @@ Ext.define('saas.view.sys.messagelog.DataList', {
             value = item.value,
             condition;
 
-            if(typeof func == 'function') {
-                condition = {
-                    type: 'condition',
-                    value: func(value)
-                }
-            }else {
-                var xtype = item.xtype || 'textfield',
-                type = item.fieldType || me.getDefaultFieldType(xtype),
-                operation = item.operation || me.getDefaultFieldOperation(xtype),
-                conditionValue = me.getConditionValue(xtype, value);
-    
-                if(!conditionValue) {
-                    continue;
-                }
-                condition = {
-                    type: type,
-                    field: field,
-                    operation: operation,
-                    value: conditionValue
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
                 }
+                conditions.push(condition);
             }
-            conditions.push(condition);
         };
         return conditions;
     },

+ 5 - 3
frontend/saas-web/ext/packages/ux/src/feature/MySummary.js

@@ -101,12 +101,14 @@ Ext.define('Ext.ux.feature.MySummary', {
         };
 
         Ext.Array.each(columns, function(c) {
-            if(c.summaryType) {
+            var summaryType = c._summaryType || c.summaryType;
+
+            if(summaryType) {
                 summarys.push({
                     name: c.dataIndex,
                     label: c.text,
-                    type: c.summaryType,
-                    typeLabel: c.summaryType ? typeLabels[c.summaryType] : '',
+                    type: summaryType,
+                    typeLabel: summaryType ? typeLabels[summaryType] : '',
                     value: c.summaryValue || 0
                 });
             } 

+ 1 - 1
frontend/saas-web/index.html

@@ -5,7 +5,7 @@
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=10, user-scalable=yes">
 
-    <title>云进销存 - 企云服</title>
+    <title>云进销存 - U企云服</title>
     <link rel="icon" href="/resources/images/favicon.png" type="image/x-icon">
     <!-- 图片动画效果样式导入 -->
     <link type="text/css" rel="stylesheet" href="/resources/othcss/imagehover.css" />

+ 9 - 9
frontend/saas-web/resources/json/navigation.json

@@ -128,15 +128,15 @@
     "items": [{
         "text": "制单",
         "items": [{
-            "id": "payBalance",
-            "text": "付款单",
-            "addType": "money-paybalance-formpanel",
-            "viewType": "money-paybalance-querypanel"
-        }, {
             "id": "recBbalance",
             "text": "收款单",
             "addType": "money-recbalance-formpanel",
             "viewType": "money-recbalance-querypanel"
+        }, {
+            "id": "payBalance",
+            "text": "付款单",
+            "addType": "money-paybalance-formpanel",
+            "viewType": "money-paybalance-querypanel"
         }, {
             "id": "verification",
             "text": "核销单",
@@ -161,13 +161,13 @@
     }, {
         "text": "报表",
         "items": [{
-            "text": "应付账款明细表",
-            "id": "monry-report-paydetail",
-            "viewType":"monry-report-paydetail"
-        }, {
             "text": "应收账款明细表",
             "id": "monry-report-recdetail",
             "viewType":"monry-report-recdetail"
+        }, {
+            "text": "应付账款明细表",
+            "id": "monry-report-paydetail",
+            "viewType":"monry-report-paydetail"
         }, {
             "text": "账户收支明细表",
             "id": "monry-report-accountbalance",