Browse Source

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

chenw 7 years ago
parent
commit
99a9ab132b
31 changed files with 339 additions and 93 deletions
  1. 4 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/ProdInOutMapper.java
  2. 24 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/ProdInOutServiceImpl.java
  3. 10 2
      applications/purchase/purchase-server/src/main/resources/mapper/ProdInOutMapper.xml
  4. 1 1
      frontend/saas-web/app/view/core/dbfind/DbfindTrigger.js
  5. 15 18
      frontend/saas-web/app/view/core/form/FormPanel.js
  6. 10 4
      frontend/saas-web/app/view/core/form/FormPanel.scss
  7. 4 2
      frontend/saas-web/app/view/main/Main.js
  8. 24 5
      frontend/saas-web/app/view/main/Main.scss
  9. 4 2
      frontend/saas-web/app/view/main/MainContainerWrap.js
  10. 61 4
      frontend/saas-web/app/view/main/MainController.js
  11. 2 0
      frontend/saas-web/app/view/main/MainModel.js
  12. 33 17
      frontend/saas-web/app/view/main/Navigation.scss
  13. 3 2
      frontend/saas-web/app/view/money/fundtransfer/QueryPanel.js
  14. 1 1
      frontend/saas-web/app/view/money/payBalance/FormPanelController.js
  15. 5 5
      frontend/saas-web/app/view/purchase/report/Purchase.js
  16. 2 3
      frontend/saas-web/app/view/purchase/report/PurchaseController.js
  17. 12 10
      frontend/saas-web/app/view/sale/report/Sale.js
  18. 10 7
      frontend/saas-web/app/view/sale/report/SaleProfit.js
  19. 99 0
      frontend/saas-web/app/view/sale/report/SaleProfitController.js
  20. 4 1
      frontend/saas-web/app/view/sale/sale/FormPanel.js
  21. 2 2
      frontend/saas-web/app/view/sale/sale/FormPanelController.js
  22. 3 3
      frontend/saas-web/app/view/sale/sale/QueryPanel.js
  23. BIN
      frontend/saas-web/packages/font-saas/resources/fonts/iconfont.eot
  24. 0 0
      frontend/saas-web/packages/font-saas/resources/fonts/iconfont.js
  25. 0 0
      frontend/saas-web/packages/font-saas/resources/fonts/iconfont.svg
  26. BIN
      frontend/saas-web/packages/font-saas/resources/fonts/iconfont.ttf
  27. BIN
      frontend/saas-web/packages/font-saas/resources/fonts/iconfont.woff
  28. 4 0
      frontend/saas-web/packages/font-saas/sass/etc/icons.scss
  29. 0 2
      frontend/saas-web/packages/font-saas/sass/src/all.scss
  30. BIN
      frontend/saas-web/resources/images/default/logo-default.png
  31. 2 2
      frontend/saas-web/resources/json/navigation.json

+ 4 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/ProdInOutMapper.java

@@ -24,4 +24,8 @@ public interface ProdInOutMapper extends CommonBaseMapper<ProdInOut> {
     Integer validateCodeWhenUpdate(@Param("pi_inoutno") String pi_inoutno, @Param("id") Long id,@Param("companyId") Long companyId);
 
     String selectCodeById(Long id);
+
+    int checkQtyFromPurchase(String pu_code);
+
+    int checkQtyFromProdIn(String pu_code);
 }

+ 24 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/ProdInOutServiceImpl.java

@@ -192,6 +192,13 @@ public class ProdInOutServiceImpl extends CommonBaseServiceImpl<ProdInOutMapper,
         if (updateDetails.size()>0) {
             prodIODetailMapper.batchUpdate(updateDetails);
         }
+
+        //检查更新后数据是否
+        String pu_code = prodInOut.getPi_pucode();
+        if (!StringUtils.isEmpty(pu_code)){
+            checkUpdateQty(pu_code,pi_class);
+        }
+
         baseDTO = getBaseDTOById(pi_id,pi_class,pi_inoutno);
         //计算金额,未税单价,未税金额等
         calcProdInout(pi_id,pi_class);
@@ -202,6 +209,7 @@ public class ProdInOutServiceImpl extends CommonBaseServiceImpl<ProdInOutMapper,
         return baseDTO;
     }
 
+
     @Override
     @Transactional
     public void delete(Long id) {
@@ -358,6 +366,22 @@ public class ProdInOutServiceImpl extends CommonBaseServiceImpl<ProdInOutMapper,
         }
     }
 
+    private void checkUpdateQty(String pu_code, String pi_class) {
+        int count = 0;
+        if ("采购验收单".equals(pi_class)) {
+            count = getMapper().checkQtyFromPurchase(pu_code);
+            if (count>0){
+                throw new BizException(500, "明细行数量超过来源采购单明细行数量");
+            }
+        } else if ("采购验退单".equals(pi_class)) {
+            count = getMapper().checkQtyFromProdIn(pu_code);
+            if (count>0){
+                throw new BizException(500, "明细行数量超过来源采购验收单明细行数量");
+            }
+        }
+
+    }
+
 
 
     public void updateYqty(ProdInOut prodInOut) {

+ 10 - 2
applications/purchase/purchase-server/src/main/resources/mapper/ProdInOutMapper.xml

@@ -435,8 +435,16 @@
     select pi_inoutno from prodinout where pi_id=#{id}
   </select>
 
+  <select id="checkQtyFromPurchase" resultType="int" parameterType="string">
+  select count(1) from(
+  select sum(pd_inqty) nowqty,(select pd_qty from purchasedetail where pd_id = pd_orderid) totalqty   from prodiodetail   where pd_ordercode=#{pu_code}
+  GROUP BY pd_orderid) t  where t.nowqty>t.totalqty
+  </select>
 
-
-
+  <select id="checkQtyFromProdIn" resultType="int" parameterType="string">
+  select count(1) from(
+  select sum(b.pd_outqty) nowqty,(select a.pd_inqty from prodiodetail a where a.pd_id = b.pd_ioid and a.pd_piclass='采购验收单') totalqty from prodiodetail b where b.pd_ordercode=#{pu_code} and b.pd_piclass='采购验退单'
+  GROUP BY b.pd_ioid) t where t.nowqty>t.totalqty
+  </select>
 
 </mapper>

+ 1 - 1
frontend/saas-web/app/view/core/dbfind/DbfindTrigger.js

@@ -164,7 +164,7 @@ Ext.define('saas.view.core.dbfind.DbfindTrigger', {
         if(f.ownerCt.xtype.trim().toUpperCase().indexOf('QUERYFORMPANEL')>-1){
             f.belong = 'form';
             return f.ownerCt.ownerCt
-        }else if(f.ownerCt.xtype.trim().toUpperCase().indexOf('FORMPANEL')>-1){
+        }else if(f.ownerCt.xtype.trim().toUpperCase().indexOf('FORM')>-1){
             f.belong = 'form';
             return f.ownerCt
         }else if(f.column){

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

@@ -21,7 +21,6 @@ Ext.define('saas.view.core.form.FormPanel', {
     initId: 0,
     layout: 'column',
     autoScroll: true,
-    border: 1,
     bodyPadding: 5,
 
     fieldDefaults: {
@@ -94,9 +93,6 @@ Ext.define('saas.view.core.form.FormPanel', {
             dockedItems: [{
                 xtype: 'toolbar',
                 dock: 'top',
-                style: {
-                    'border-bottom': '1px solid #35baf6 !important'
-                },
                 items: me.getToolBarItems(),
             }],
             listeners: {
@@ -331,23 +327,24 @@ Ext.define('saas.view.core.form.FormPanel', {
                 return;
             }
 
-            // 设置model绑定
-            if (!ignore) {
-                if (bind) {
-                    if (!Ext.isString(bind)) {
-                        Ext.apply(bind, {
-                            value: '{' + name + '}'
-                        });
-                    } else {
-                        item.bind = '{' + name + '}';
-                    }
+            if (bind) {
+                if (!Ext.isString(bind)) {
+                    Ext.apply(bind, {
+                        value: '{' + name + '}'
+                    });
                 } else {
                     item.bind = '{' + name + '}';
                 }
-                // 设置默认值
-                if (defaultValue) {
-                    viewModel.set(name, defaultValue);
-                }
+            } else {
+                item.bind = '{' + name + '}';
+            }
+            // 设置默认值
+            if (defaultValue) {
+                viewModel.set(name, defaultValue);
+            }
+
+            // 设置model绑定
+            if (!ignore) {
                 if(!Ext.Array.contains(bindFields, name)) {
                     bindFields.push(name);
                 }

+ 10 - 4
frontend/saas-web/app/view/core/form/FormPanel.scss

@@ -1,17 +1,19 @@
 .x-core-form {
+    padding: 10px;
 
     .x-tb {
-        color: #AEB1B5;
+        color: #A2A2A2;
+        // letter-spacing: 0.72px;
+        // text-align: left;
+        font-size: 16px;
     }
     .x-no {
-        font-size: 18px;
     }
     .x-code {
-        font-size: 16px;
     }
     .x-codeeditor {
         top: 0px !important;
-        left: 43px !important;
+        left: 39px !important;
 
         .x-form-trigger-wrap {
             border-top: none;
@@ -36,6 +38,10 @@
             color: #52C41A;
         }
 
+        .fa-edit {
+            color: #A2A2A2;
+        }
+
         &:hover {
             .fa-edit {
                 color: black;

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

@@ -30,8 +30,10 @@ Ext.define('saas.view.main.Main', {
                     xtype: 'component',
                     reference: 'mainLogo',
                     cls: 'main-logo-wrap',
-                    html: '<div class="main-logo"><img src="resources/images/default/logo-default.png">优企云服</div>',
-                    width: 160
+                    html: '<div class="main-logo"><img src="resources/images/default/logo-default.png"/><div class="logo-text">优企云服</div></div>',
+                    bind: {
+                        width: '{navWidth}'
+                    }
                 },
                 {
                     margin: '0 0 0 8',

+ 24 - 5
frontend/saas-web/app/view/main/Main.scss

@@ -41,9 +41,19 @@ $treelist-nav-ui: (
     padding-left: 10px;
 }
 
+.main-right-tabpanel {
+    
+    .x-panel-bodyWrap {
+
+        #main-tab-panel-body {
+            background: #EEF4F9;
+        }
+    }
+}
+
 .main-logo-wrap {
     background-color: $base-color;
-    height: 65px;
+    height: 70px;
 
     font-size: 16px;
     font-weight: $font-weight-bold;
@@ -51,14 +61,23 @@ $treelist-nav-ui: (
     margin-left: 17px;
 
     .main-logo {
-        line-height: 65px;
+        background: #34BAF6;
 
         img {
-            margin-left: 15px;
-            margin-right: 15px;
-            top: 10px;
+            width: 64px;
+            top: 0px;
+            left: 20px;
             position: relative;
         }
+
+        .logo-text {
+            font-size: 18px;
+            color: #FFFFFF;
+            text-align: left;
+            top: 23px;
+            position: absolute;
+            right: 28px;
+        }
     }
 }
 

+ 4 - 2
frontend/saas-web/app/view/main/MainContainerWrap.js

@@ -15,7 +15,9 @@ Ext.define('saas.view.main.MainContainerWrap', {
         {
             xtype: 'main-navigation',
             region: 'west',
-            width: 160,
+            bind: {
+                width: '{navWidth}'
+            }
         },
         {
             xtype: 'tabpanel',
@@ -27,7 +29,7 @@ Ext.define('saas.view.main.MainContainerWrap', {
             itemId: 'contentPanel',
             defaults: {
                 closable: true,
-                margin: 10
+                margin: 20
             },
             plugins: [new Ext.ux.TabCloseMenu({
                 closeTabText: '关闭当前页',

+ 61 - 4
frontend/saas-web/app/view/main/MainController.js

@@ -30,19 +30,76 @@ Ext.define('saas.view.main.MainController', {
 
     onToggleNavigationSize: function () {
         var me = this,
+        viewModel = me.getViewModel(),
         refs = me.getReferences(),
         navigationList = refs.navigationTreeList,
         navCollapsed = !navigationList.navCollapsed,
-        new_width = navCollapsed ? 64 : 160,
+        new_width = navCollapsed ? viewModel.get('smallNavWidth') : viewModel.get('navWidth'),
+        newLogoImgStyle = navCollapsed ? {
+            width: 50,
+            top: 7,
+            left: 6
+        } : {
+            width: 64,
+            top: 0,
+            left: 20
+        },
+        newLogoTextStyle = navCollapsed ? {
+            10: {
+                opacity: 0.7
+            },
+            30: {
+                opacity: 0
+            },
+            100: {
+                opacity: 0
+            }
+        } : {
+            25: {
+                opacity: 0 
+            },
+            50: {
+                opacity: 1
+            }
+        },
+        newNavIconStyle = navCollapsed ? {
+            marginLeft: 6,
+            fontSize: 28
+        } : {
+            marginLeft: 24,
+            fontSize: 24
+        },
+        newNavTextStyle = navCollapsed ? {
+            opacity: 0
+        } : {
+            opacity: 1
+        },
         ope = navCollapsed ? 'addCls' : 'removeCls';
         
-        refs.mainLogo.animate({dynamic: true, to: {width: new_width}});
-        navigationList.body.animate({dynamic: true, to: {width: new_width}});
-        navigationList.animate({dynamic: true, to: {width: new_width}});
+        var mainLogo = refs.mainLogo;
+        var logoImg = mainLogo.el.dom.getElementsByTagName('img')[0];
+        var logoText = mainLogo.el.dom.getElementsByClassName('logo-text')[0];
+        var navItems = navigationList.el.dom.getElementsByClassName('x-navitem');
+
+        mainLogo.animate({dynamic: true, duration: 500, to: {width: new_width}});
+        Ext.fly(logoImg).animate({dynamic: true, duration: 500, to: newLogoImgStyle});
+        Ext.fly(logoText).animate({dynamic: true, duration: 500, keyframes: newLogoTextStyle});
+        navigationList.body.animate({dynamic: true, duration: 500, to: {width: new_width}});
+        navigationList.animate({dynamic: true, duration: 500, to: {width: new_width}});
+
+        for(var i = 0; i < navItems.length; i++) {
+            var item = navItems[i];
+            var icon = item.getElementsByClassName('nav-inner-icon')[0];
+            var text = item.getElementsByClassName('nav-inner-text')[0];
+
+            Ext.fly(icon).animate({dynamic: true, duration: 500, to: newNavIconStyle});
+            Ext.fly(text).animate({dynamic: true, duration: 500, to: newNavTextStyle});
+        }
 
         navigationList.el[ope]('nav-collapsed');
 
         navigationList.navCollapsed = navCollapsed;
+
     },
 
     selectCompany: function(item) {

+ 2 - 0
frontend/saas-web/app/view/main/MainModel.js

@@ -7,5 +7,7 @@ Ext.define('saas.view.main.MainModel', {
     alias: 'viewmodel.main',
 
     data: {
+        navWidth: 185,
+        smallNavWidth: 64,
     }
 });

+ 33 - 17
frontend/saas-web/app/view/main/Navigation.scss

@@ -1,3 +1,6 @@
+$nav-font-size: 16px;
+$nav-font-color: #FFFFFF;
+
 .x-navpanel {
     overflow: visible;
 
@@ -14,7 +17,7 @@
             overflow: visible;
     
             .x-autocontainer-outerCt {
-                background-color: #3C4A57;
+                background-color: #484A69;
     
                 .x-autocontainer-innerCt {
     
@@ -34,45 +37,58 @@
                             outline: none !important;
                             
                             .x-navitem-body {
-                                background-color: #3C4A57;
+                                background: #505275;
     
                                 .nav-inner-wrap {
-                                    position: relative;
                                     position: relative;
                                     overflow: hidden;
                                     list-style: none;
-                                    max-height: 64px;
+                                    max-height: 60px;
                                     padding: 0 10px;
     
                                     .nav-inner-icon {
-                                        color: #adb3b8;
-                                        font-size: 18px;
+                                        opacity: 0.4;
+
+                                        color: $nav-font-color;
+                                        font-size: 24px;
                                         text-align: center;
-                                        background-repeat: no-repeat;
-                                        background-position: 0 center;
-                                        margin-left: 10px;
+                                        margin-left: 24px;
                                         display: inline;
+                                        margin-right: 30px;
     
                                         &:before {
-                                            line-height: 64px;
+                                            line-height: 60px;
                                         }
                                     }
     
                                     .nav-inner-text {
-                                        cursor: default;
-                                        color: #adb3b8;
-                                        margin-left: 20px;
-                                        margin-right: 24px;
-                                        font-size: 14px;
-                                        line-height: 64px;
+                                        font-size: $nav-font-size;
+                                        color: $nav-font-color;
+                                        letter-spacing: 0.64px;
+                                        text-align: left;
+                                        opacity: 0.46;
                                         display: inline;
+                                        line-height: 60px;
+
                                     }
                                 }
                             }
                         }
                         .x-navitem-over {
                             .x-navitem-body {
-                                background-color: #475360;
+                                background: #474968;
+                                box-shadow: inset 0 1px 4px 0 rgba(0,0,0,0.50);
+
+                                .nav-inner-wrap {
+
+                                    .nav-inner-icon {
+                                        opacity: 1;
+                                    }
+
+                                    .nav-inner-text {
+                                        opacity: 1;
+                                    }
+                                }
                             }
                         }
                     }

+ 3 - 2
frontend/saas-web/app/view/money/fundtransfer/QueryPanel.js

@@ -8,9 +8,10 @@ Ext.define('saas.view.money.fundtransfer.QueryPanel', {
     viewName: 'money-fundtransfer-querypanel',
     
     queryFormItems: [{
-        xtype : "datefield", 
+        xtype : "condatefield", 
         name : "ft_date", 
-        fieldLabel : "单据日期"
+        fieldLabel : "单据日期",
+        columnWidth: 0.5
     }],
     moreQueryFormItems: [],
     queryGridConfig: {

+ 1 - 1
frontend/saas-web/app/view/money/payBalance/FormPanelController.js

@@ -164,7 +164,7 @@ Ext.define('saas.view.money.payBalance.FormPanelController', {
                 beforerender: function (f) {
                     Ext.apply(f, {
                         dataUrl: '/api/document/bankinformation/list',
-                        // addXtype: 'document-banksubledger-formpanel',
+                        addXtype: 'other-bankinformation',
                         addTitle: '账户资料',
                         dbfinds: [{
                             from: 'id',

+ 5 - 5
frontend/saas-web/app/view/purchase/report/Purchase.js

@@ -11,23 +11,23 @@ Ext.define('saas.view.purchase.report.Purchase', {
     listUrl: '/api/purchase/purchase/list',
     defaultCondition: null,
     reportTitle: '采购明细报表',
-    QueryWidth:0.25,
+    QueryWidth:0.1,
     //筛选:供应商、日期(必填)、业务状态			
     searchItems: [ {
         xtype: 'dbfindtrigger',
         name: 'pu_vendname',
         fieldLabel: '供应商名称',
-        columnWidth: 0.25
+        columnWidth: 0.2
     }, {
         xtype: 'condatefield',
         name: 'pu_date',
         fieldLabel: '单据日期',
-        columnWidth: 0.25
+        columnWidth: 0.5
     }, {
         xtype: 'multicombo',
         name: 'pu_acceptstatuscode',
         fieldLabel: '业务状态',
-        columnWidth: 0.25,
+        columnWidth: 0.2,
         datas: [
             ["TURNIN", "已入库"],
             ["UNTURNIN", "未入库"],
@@ -55,7 +55,7 @@ Ext.define('saas.view.purchase.report.Purchase', {
         width: 200
     }, {
         text: '业务状态',
-        dataIndex: 'pu_status'
+        dataIndex: 'pu_acceptstatus'
     }, {
         text: '采购员',
         dataIndex: 'pu_buyername'

+ 2 - 3
frontend/saas-web/app/view/purchase/report/PurchaseController.js

@@ -11,8 +11,6 @@ Ext.define('saas.view.purchase.report.PurchaseController', {
                         addXtype: 'document-vendor-formpanel',
                         addTitle: '供应商资料',
                         dbfinds:[{
-                            from:'ve_code',to:'pu_vendcode'
-                        },{
                             from:'ve_name',to:'pu_vendname'
                         }],
                         dbtpls:[{
@@ -31,7 +29,8 @@ Ext.define('saas.view.purchase.report.PurchaseController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[{
+                        dbColumns:[
+                        {
                             "text": "供应商ID",
                             "hidden": true,
                             "dataIndex": "id",

+ 12 - 10
frontend/saas-web/app/view/sale/report/Sale.js

@@ -11,24 +11,24 @@ Ext.define('saas.view.sale.report.Sale', {
     listUrl: '/api/sale/sale/list',
     defaultCondition: null,
     reportTitle: '销售明细报表',
-    QueryWidth:0.25,
+    QueryWidth:0.1,
     searchItems: [
     {
         xtype: 'dbfindtrigger',
         name: 'sa_custname',
         fieldLabel: '客户名称',
-        columnWidth: 0.25
+        columnWidth: 0.2
     }, {
         xtype: 'condatefield',
         name: 'sa_date',
         fieldLabel: '单据日期',
-        columnWidth: 0.25
+        columnWidth: 0.5
     }, {
         xtype: 'multicombo',
         name: 'sa_sendstatuscode',
         fieldLabel: '业务状态',
         allowBlank: true,
-        columnWidth: 0.25,
+        columnWidth: 0.2,
         datas: [
             ["TURNOUT", "已出库"],
             ["UNTURNOUT", "未出库"],
@@ -73,10 +73,12 @@ Ext.define('saas.view.sale.report.Sale', {
         dataIndex: 'sd_detno'
     }, {
         text: '物料编号',
-        dataIndex: 'sd_prodcode'
+        dataIndex: 'sd_prodcode',
+        width: 200
     }, {
         text: '物料名称',
-        dataIndex: 'pr_detail'
+        dataIndex: 'pr_detail',
+        width: 200
     }, {
         text: '物料规格',
         dataIndex: 'pr_spec'
@@ -113,10 +115,10 @@ Ext.define('saas.view.sale.report.Sale', {
         }
     }, {
         text: '税率',
-        dataIndex: 'pd_taxrate'
+        dataIndex: 'sd_taxrate'
     }, {//∑金额
         text: '金额',
-        dataIndex: 'pd_total',
+        dataIndex: 'sd_total',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
@@ -132,7 +134,7 @@ Ext.define('saas.view.sale.report.Sale', {
         }
     }, {//∑不含税金额
         text: '不含税金额',
-        dataIndex: 'pd_taxprice',
+        dataIndex: 'sd_nettotal',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
@@ -157,7 +159,7 @@ Ext.define('saas.view.sale.report.Sale', {
         }
     }, {
         text : "备注", 
-        dataIndex : "sd_text1",
+        dataIndex : "sd_remark",
         width : 250 
     }]
 

+ 10 - 7
frontend/saas-web/app/view/sale/report/SaleProfit.js

@@ -12,22 +12,22 @@ Ext.define('saas.view.sale.report.SaleProfit', {
     defaultCondition: null,
     reportTitle: '销售毛利润表',
 //筛选:客户、物料、时间	
-    QueryWidth:0.25, 	
+    QueryWidth:0.1, 	
     searchItems: [{
         xtype: 'dbfindtrigger',
         name: 'sa_custname',
         fieldLabel: '客户',
-        columnWidth: 0.25
+        columnWidth: 0.2
     }, {
         xtype: 'dbfindtrigger',
         name: 'sd_prodcode',
         fieldLabel: '物料',
-        columnWidth: 0.25
+        columnWidth: 0.2
     }, {
         xtype: 'condatefield',
         name: 'sa_custname',
         fieldLabel: '时间',
-        columnWidth: 0.25
+        columnWidth: 0.5
     }],
 
     reportColumns: [
@@ -56,7 +56,8 @@ Ext.define('saas.view.sale.report.SaleProfit', {
         dataIndex: 'sa_date'
     }, {
         text: '单据编号',
-        dataIndex: 'pd_inoutno'
+        dataIndex: 'pd_inoutno',
+        width: 200
     }, {
         text: '单据类型',
         dataIndex: 'pd_piclass'
@@ -65,10 +66,12 @@ Ext.define('saas.view.sale.report.SaleProfit', {
         dataIndex: 'pr_kind'
     }, {
         text: '物料编号',
-        dataIndex: 'pr_code'
+        dataIndex: 'pr_code',
+        width: 200
     }, {
         text: '物料名称',
-        dataIndex: 'pr_detail'
+        dataIndex: 'pr_detail',
+        width: 200
     }, {
         text: '物料规格',
         dataIndex: 'pr_spec'

+ 99 - 0
frontend/saas-web/app/view/sale/report/SaleProfitController.js

@@ -101,6 +101,105 @@ Ext.define('saas.view.sale.report.SaleProfitController', {
                             }]
                     }) ;   
                 }
+            },
+            //放大镜赋值关系 以及 tpl模板
+            'dbfindtrigger[name=sd_prodcode]':{
+                beforerender:function(f){
+                    Ext.apply(f,{
+                        dataUrl:'/api/document/product/list',
+                        addXtype: 'document-product-formpanel',
+                        addTitle: '物料资料',
+                        dbfinds:[
+                        {
+                            from:'pr_code',to:'sd_prodcode'
+                        }, {
+                            from:'pr_detail',to:'pr_detail'
+                        }, {
+                            from:'pr_spec',to:'pr_spec'
+                        }],
+                        dbtpls:[{
+                            field:'pr_code',width:100
+                        },{
+                            field:'pr_detail',width:100
+                        }],
+                        defaultCondition: "pr_statuscode='OPEN'",
+                        dbSearchFields:[{
+                            emptyText:'输入物料编号、名称或规格',
+                            xtype : "textfield", 
+                            name : "search", 
+                            width: 200,
+                            getCondition: function(v) {
+                                return "(upper(pr_spec) like '%" + v.toUpperCase()+"%' or upper(pr_code) like '%"+v.toUpperCase()+"%' or upper(pr_detail) like '%"+v.toUpperCase()+"%')";
+                            },
+                            allowBlank : true, 
+                            columnWidth : 0.25
+                        }],
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_unit",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                            align:'right'
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                            align:'right'
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
+                    }) ;   
+
+                }
             }
         });
     }

+ 4 - 1
frontend/saas-web/app/view/sale/sale/FormPanel.js

@@ -51,7 +51,10 @@ Ext.define('saas.view.sale.sale.FormPanel', {
         name : "sa_custname", 
         fieldLabel : "客户名称",
         allowBlank : false
-
+    }, {
+        xtype : "datefield", 
+        name : "sa_date", 
+        fieldLabel : "单据日期"
     }, {
         xtype : "textfield", 
         name : "sa_toplace", 

+ 2 - 2
frontend/saas-web/app/view/sale/sale/FormPanelController.js

@@ -116,13 +116,13 @@ Ext.define('saas.view.sale.sale.FormPanelController', {
                         addTitle: '物料资料',
                         dbfinds:[
                         {
-                            from:'pr_code',to:'sd_prodcode',ignore:true
+                            from:'pr_code',to:'sd_prodcode'
                         }, {
                             from:'pr_detail',to:'pr_detail'
                         }, {
                             from:'pr_spec',to:'pr_spec'
                         }, {
-                            from:'id',to:'sd_prodid'
+                            from:'id',to:'sd_prodid',ignore:true
                         }],
                         dbtpls:[{
                             field:'pr_code',width:100

+ 3 - 3
frontend/saas-web/app/view/sale/sale/QueryPanel.js

@@ -18,7 +18,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
         fieldLabel: '销售编号'
     }, {
         xtype: 'condatefield',
-        name: 'sa_recorddate',
+        name: 'sa_date',
         fieldLabel: '单据日期',
         columnWidth: 0.5
     }, {
@@ -110,7 +110,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             width: 120
         }, {
             text: '单据日期',
-            dataIndex: 'sa_recorddate',
+            dataIndex: 'sa_date',
             xtype: 'datecolumn',
             width: 200
         }, {
@@ -151,7 +151,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             width: 120
         }, {
             text: '单据日期',
-            dataIndex: 'sa_recorddate',
+            dataIndex: 'sa_date',
             xtype: 'datecolumn',
             width: 200
         }, {

BIN
frontend/saas-web/packages/font-saas/resources/fonts/iconfont.eot


File diff suppressed because it is too large
+ 0 - 0
frontend/saas-web/packages/font-saas/resources/fonts/iconfont.js


File diff suppressed because it is too large
+ 0 - 0
frontend/saas-web/packages/font-saas/resources/fonts/iconfont.svg


BIN
frontend/saas-web/packages/font-saas/resources/fonts/iconfont.ttf


BIN
frontend/saas-web/packages/font-saas/resources/fonts/iconfont.woff


+ 4 - 0
frontend/saas-web/packages/font-saas/sass/etc/icons.scss

@@ -1,5 +1,7 @@
 .sa-purchase:before { content: "\e613"; }
 
+.sa-weibiaoti1:before { content: "\e669"; }
+
 .sa-document:before { content: "\e654"; }
 
 .sa-switch-on:before { content: "\e622"; }
@@ -12,4 +14,6 @@
 
 .sa-setting:before { content: "\e64b"; }
 
+.sa-saas:before { content: "\e769"; }
+
 .sa-money:before { content: "\e6fa"; }

+ 0 - 2
frontend/saas-web/packages/font-saas/sass/src/all.scss

@@ -11,8 +11,6 @@ $ext-font-path: get-resource-path('fonts');
 
 .x-sa:before {
   font-family:"font-saas" !important;
-  font-size:16px;
-  font-style:normal;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
 }

BIN
frontend/saas-web/resources/images/default/logo-default.png


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

@@ -1,6 +1,6 @@
 [{
     "text": "采购",
-    "iconCls": "x-fa fa-shopping-basket",
+    "iconCls": "x-sa sa-purchase",
     "items": [{
         "text": "制单",
         "items": [{
@@ -123,7 +123,7 @@
     }]
 }, {
     "text": "资金",
-    "iconCls": "x-fa fa-money",
+    "iconCls": "x-sa sa-money",
     "items": [{
         "text": "制单",
         "items": [{

Some files were not shown because too many files changed in this diff