Browse Source

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

zhuth 7 years ago
parent
commit
67bbe62c04

+ 46 - 14
frontend/saas-web/app/view/core/base/ImportWindow.js

@@ -75,6 +75,7 @@ Ext.define('saas.view.core.base.ImportWindow', {
         hidden:true,
         name:'over',
         text:'完成',
+        disabled:true,
         handler:function(b){
             var form = b.ownerCt.ownerCt;
             var id = form.importId;
@@ -96,7 +97,10 @@ Ext.define('saas.view.core.base.ImportWindow', {
                         form.setLoading(false);
                         var res = Ext.decode(response.responseText);
                         if(!res.success){
-                            saas.util.BaseUtil.showErrorToast('导入数据失败:' + res.message);
+                            var upload = form.down('[name=upload]');
+                            upload.reset();
+                            form.dockedItems.items[1].down('[name=over]').setDisabled(true);
+                            form.down('[name=messagedetail]').setHtml(res.message + '</br></br><span style="color:#ff0000">请修改后重新上传</span>');
                         }else{
                             //刷新界面
                             var g = form.ownerCt.down('grid');
@@ -106,6 +110,9 @@ Ext.define('saas.view.core.base.ImportWindow', {
                     },
                     failure: function (response, opts) {
                         form.setLoading(false);
+                        var upload = form.down('[name=upload]');
+                        upload.reset();
+                        form.dockedItems.items[1].down('[name=over]').setDisabled(true);
                         var res = Ext.decode(response.responseText);
                         saas.util.BaseUtil.showErrorToast('导入数据失败: ' + res.message);
                     }
@@ -181,7 +188,8 @@ Ext.define('saas.view.core.base.ImportWindow', {
                     collapsible: false,
                     items: [{
                         xtype : 'fieldcontainer',
-                        html: me.showDetail?me.showDetail:'请配置showDetail属性',
+                        html: '1.下载模板后打开</br>2.查看模板内说明、并修改模板内容,保存后点击下一步按钮</br>3.上传Excel文件,此时会校验文件的字段格式,有问题则需要修改错误数据后再次上传文件</br>4.校验成功后'+
+                        '点击完成按钮将数据进行数据库校验'
                     }]
                 },{
                     hidden:true,
@@ -205,14 +213,38 @@ Ext.define('saas.view.core.base.ImportWindow', {
                         }).on('change', me.onFileChange, me);
                     },
                     listeners: {
-                        afterrender:function(field,ops){
-                            // var fileEl = field.fileInputEl.dom;
-                            // fileEl.setAttribute("accept","image/*");
-                        },
                         change: function(field){
                             var form = field.ownerCt.ownerCt;
                             var myForm = field.ownerCt;
                             var fileEl = field.fileInputEl.dom;
+                            var file = fileEl.files[0];
+                            var type = file.name.substring(file.name.lastIndexOf('.'),file.name.length);
+                            if(type.indexOf('xlsx')<0||type.indexOf('xls')<0){
+                                saas.util.BaseUtil.showErrorToast('文件格式不正确,只能选择xlsx或xls格式的文件进行上传');
+                                field.reset();
+                                return;
+                            }
+
+                            //导入权限校验
+                            var hasPower = false;
+                            Ext.Ajax.request({
+                                url: 'http://192.168.253.41:8560/api/commons/'+form.ownerCt.caller+'/import',
+                                async:false,
+                                method: 'GET',
+                                success: function(response, opts) {
+                                    var data = Ext.decode(response.responseText);
+                                    if(data.success){
+                                        hasPower = true
+                                    }
+                                },
+                                failure: function(response, opts) {}
+                            }); 
+                            if(!hasPower){
+                                field.reset();
+                                saas.util.BaseUtil.showErrorToast('上传失败:没有 导入 权限');
+                                return false;
+                            }
+                            
                             var fd = new FormData();
                             fd.append('file', fileEl.files[0]);
                             fd.append('caller', myForm.ownerCt.ownerCt.caller);
@@ -235,22 +267,21 @@ Ext.define('saas.view.core.base.ImportWindow', {
                                     if(res.success){
                                         var id = res.data;
                                         if(id){
-                                            saas.util.BaseUtil.showSuccessToast('上传成功');
+                                            field.ownerCt.down('[name=messagedetail]').setHtml('文件名: ' + file.name + ' 导入格式校验成功!</br></br>请点击 <span style="color:#35baf6">完成</span> 执行数据库校验');
                                             form.importId = id;
+                                            field.ownerCt.ownerCt.dockedItems.items[1].down('[name=over]').setDisabled(false)
                                         }else{
-                                            field.setValue('');
+                                            field.reset();
                                             saas.util.BaseUtil.showErrorToast('上传失败:后台未返回信息');
                                         }
                                     }else{
-                                        field.setValue('');
-                                        field.setRawValue('');
-                                        field.value = '';
-                                        saas.util.BaseUtil.showErrorToast('上传失败: ' + res.message);
+                                        field.reset();
+                                        field.ownerCt.down('[name=messagedetail]').setHtml(res.message + '</br><span style="color:#ff0000">请修改后重新上传</span>');
                                     }
                                 },
                                 failure: function (response, opts) {
                                     form.setLoading(false);
-                                    field.setValue('');
+                                    field.reset();
                                     var res = Ext.decode(response.responseText);
                                     saas.util.BaseUtil.showErrorToast('上传失败: ' + res.message);
                                 }
@@ -265,8 +296,9 @@ Ext.define('saas.view.core.base.ImportWindow', {
                     name:'message',
                     collapsible: false,
                     items: [{
+                        name:'messagedetail',
                         xtype : 'fieldcontainer',
-                        html: '暂无',
+                        html:'暂无导入信息'
                     }]
                 }]
             }]

+ 5 - 0
frontend/saas-web/app/view/core/dbfind/types/ProductDbfindTrigger.js

@@ -95,5 +95,10 @@ Ext.define('saas.view.core.dbfind.types.ProductDbfindTrigger', {
         dataIndex: "pr_saleprice",
         xtype: 'numbercolumn',
         hidden:true
+    }, {
+        text: "成本单价",
+        dataIndex: "po_avprice",
+        xtype: 'numbercolumn',
+        hidden:true
     }]
 });

+ 5 - 0
frontend/saas-web/app/view/core/dbfind/types/ProductMultiDbfindTrigger.js

@@ -102,6 +102,11 @@ Ext.define('saas.view.core.dbfind.types.ProductMultiDbfindTrigger', {
         dataIndex: "pr_saleprice",
         xtype: 'numbercolumn',
         hidden:true
+    }, {
+        text: "成本单价",
+        dataIndex: "po_avprice",
+        xtype: 'numbercolumn',
+        hidden:true
     }]
 
 });

+ 1 - 1
frontend/saas-web/app/view/stock/make/FormPanelController.js

@@ -61,7 +61,7 @@ Ext.define('saas.view.stock.make.FormPanelController', {
                             from: 'pr_unit',
                             to: 'pr_unit'
                         }, {
-                            from: 'pr_purcprice',
+                            from: 'po_avprice',
                             to: 'mm_price'
                         }],
                     });

+ 0 - 1
frontend/saas-web/app/view/stock/report/DataList.js

@@ -9,7 +9,6 @@ Ext.define('saas.view.stock.report.DataList', {
 
     groupField: null,
     listUrl: '/api/document/product/ReserveCost',
-    // listUrl: 'http://192.168.253.41:8560/api/document/product/ReserveCost',
     defaultCondition: null,
     reportTitle: '物料库存数量金额表',
     QueryWidth: 0.65,

+ 1 - 1
frontend/saas-web/app/view/stock/report/DataListController.js

@@ -34,7 +34,7 @@ Ext.define('saas.view.stock.report.DataListController', {
         
         form.updateLayout();
         toggleColumns.map(function(c) {
-            c.setHidden(c.isVisible);
+            c.setHidden(c.isVisible());
         });
         store.load();
     }