Преглед на файлове

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

rainco преди 7 години
родител
ревизия
fe4bdf6c25
променени са 20 файла, в които са добавени 226 реда и са изтрити 79 реда
  1. 5 4
      applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/ExcelServiceImpl.java
  2. 6 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/CustomerController.java
  3. 7 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/VendorController.java
  4. 2 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/CustomerMapper.java
  5. 2 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/VendorMapper.java
  6. 2 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/CustomerService.java
  7. 2 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/VendorService.java
  8. 69 4
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/CustomerServiceImpl.java
  9. 69 4
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/VendorServiceImpl.java
  10. 3 0
      applications/document/document-server/src/main/resources/mapper/CustomerMapper.xml
  11. 4 0
      applications/document/document-server/src/main/resources/mapper/VendorMapper.xml
  12. 1 1
      applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/SaleServiceImpl.java
  13. 1 1
      applications/sale/sale-server/src/main/resources/mapper/ProdInOutMapper.xml
  14. 5 3
      frontend/saas-web/app/view/core/base/GridPanel.js
  15. 6 44
      frontend/saas-web/app/view/core/report/ReportPanel.js
  16. 3 0
      frontend/saas-web/app/view/document/kind/Kind.js
  17. 8 6
      frontend/saas-web/app/view/main/Navigation.scss
  18. 10 4
      frontend/saas-web/app/view/money/report/PayDetail.js
  19. 17 8
      frontend/saas-web/app/view/money/report/RecDetail.js
  20. 4 0
      frontend/saas-web/ext/packages/ux/src/feature/MySummary.js

+ 5 - 4
applications/commons/commons-server/src/main/java/com/usoftchina/saas/commons/service/impl/ExcelServiceImpl.java

@@ -84,10 +84,11 @@ public class ExcelServiceImpl implements ExcelService{
         di.setDi_toformal(0);
         di.setDi_success(0);
         List<Map<String,String>> datas = new ArrayList<Map<String,String>>();
-        String cols = "[{\"description\":\"物料编号\",\"necessary\":\"true\",\"position\":\"main\",\"field\":\"pr_code\",\"codefield\":true}," +
-                "{\"description\":\"物料名称\",\"necessary\":\"true\",\"position\":\"main\",\"field\":\"pr_detail\",\"codefield\":false},{\"description\":\"规格\",\"necessary\":\"true\",\"position\":\"main\",\"field\":\"pr_spec\",\"codefield\":false},{\"description\":\"类型\",\"necessary\":\"true\",\"position\":\"main\",\"field\":\"pr_kind\",\"codefield\":false},{\"description\":\"型号\",\"necessary\":\"false\",\"position\":\"main\",\"field\":\"pr_orispeccode\",\"codefield\":false}" +
-                ",{\"description\":\"品牌\",\"necessary\":\"false\",\"position\":\"main\",\"field\":\"pr_brand\",\"codefield\":false},{\"description\":\"单位\",\"necessary\":\"true\",\"position\":\"main\",\"field\":\"pr_unit\",\"codefield\":false},{\"description\":\"仓库编号\",\"necessary\":\"false\",\"position\":\"main\",\"field\":\"pr_whcode\",\"codefield\":false},{\"description\":\"仓库名称\",\"necessary\":\"false\",\"position\":\"main\",\"field\":\"pr_whname\",\"codefield\":false},{\"description\":\"最新采购单价\",\"necessary\":\"false\",\"position\":\"main\",\"field\":\"pr_purcprice\",\"codefield\":false}" +
-                ",{\"description\":\"最新出货单价\",\"necessary\":\"false\",\"position\":\"main\",\"field\":\"pr_saleprice\",\"codefield\":false},{\"description\":\"替代料仓库编号\",\"necessary\":\"true\",\"position\":\"detail\",\"field\":\"pd_whcode\",\"codefield\":false},{\"description\":\"替代料仓库名称\",\"necessary\":\"false\",\"position\":\"detail\",\"field\":\"pd_whname\",\"codefield\":false},{\"description\":\"期初数量\",\"necessary\":\"true\",\"position\":\"detail\",\"field\":\"pd_num\",\"codefield\":false},{\"description\":\"单位成本\",\"necessary\":\"true\",\"position\":\"detail\",\"field\":\"pd_price\",\"codefield\":false}]";
+        DataTemplet dataTemplet = dataTempletMapper.selectByCaller(caller, companyId);
+        String cols = dataTemplet.getDt_columns();
+        if (StringUtils.isEmpty(cols)) {
+            throw new BizException(12135, "没有查询到对应的excel配置");
+        }
         //前端列表信息
         List<TempletSet> templetSets = JSONArray.parseArray(cols, TempletSet.class);
         Map<String, List<TempletSet>> columns = CollectionUtils.groupBy(templetSets, TempletSet::getPosition);

+ 6 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/CustomerController.java

@@ -174,4 +174,10 @@ public class CustomerController {
         return Result.success();
     }
 
+    //导入保存至列表
+    @RequestMapping("/saveToFormal")
+    public Result saveToFormal(Integer id, boolean update) {
+        customerService.saveToFormal(id, update);
+        return Result.success();
+    }
 }

+ 7 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/VendorController.java

@@ -134,4 +134,11 @@ public class VendorController {
         return Result.success();
     }
 
+    //导入保存至列表
+    @RequestMapping("/saveToFormal")
+    public Result saveToFormal(Integer id, boolean update) {
+        vendorService.saveToFormal(id, update);
+        return Result.success();
+    }
+
 }

+ 2 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/CustomerMapper.java

@@ -37,4 +37,6 @@ public interface CustomerMapper extends CommonBaseMapper<Customer> {
     int validNameAndCodeWhenRelated(Customer customer);
 
     List<ComboDTO> getCombo(@Param("id") Long id,@Param("companyId") Long companyId);
+
+    Long selectIdByCode(@Param("code") String code, @Param("companyId") Long companyId);
 }

+ 2 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/VendorMapper.java

@@ -31,4 +31,6 @@ public interface VendorMapper extends CommonBaseMapper<Vendor> {
     int validFinish(@Param("id") Long id,@Param("companyId") Long companyId);
 
     void check(Map<String, Object> map);
+
+    Long selectIdByCode(@Param("code") String code, @Param("companyId") Long companyId);
 }

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

@@ -44,4 +44,6 @@ public interface CustomerService extends CommonBaseService<CustomerMapper, Custo
     PageInfo<CustomerList> getDbfind(PageRequest page, ListReqDTO listReqDTO);
 
     List<ComboDTO> getAddressCombo(Long id);
+
+    void saveToFormal(Integer id, boolean update);
 }

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

@@ -95,4 +95,6 @@ public interface VendorService extends CommonBaseService<VendorMapper, Vendor>{
      * @return
      */
     boolean batchDelete(BatchDealBaseDTO baseDTOs);
+
+    void saveToFormal(Integer id, boolean update);
 }

+ 69 - 4
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/CustomerServiceImpl.java

@@ -1,5 +1,6 @@
 package com.usoftchina.saas.document.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
@@ -11,25 +12,25 @@ import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.commons.exception.BizExceptionCode;
 import com.usoftchina.saas.commons.po.BillCodeSeq;
+import com.usoftchina.saas.commons.po.DataImportDetail;
 import com.usoftchina.saas.commons.po.Operation;
 import com.usoftchina.saas.commons.po.Status;
 import com.usoftchina.saas.context.BaseContextHolder;
-import com.usoftchina.saas.document.dto.CustomerDTO;
-import com.usoftchina.saas.document.dto.CustomerFormDTO;
-import com.usoftchina.saas.document.dto.CustomeraddressDTO;
-import com.usoftchina.saas.document.dto.CustomercontactDTO;
+import com.usoftchina.saas.document.dto.*;
 import com.usoftchina.saas.document.entities.*;
 import com.usoftchina.saas.document.mapper.*;
 import com.usoftchina.saas.document.service.CustomerService;
 import com.usoftchina.saas.exception.BizException;
 import com.usoftchina.saas.page.PageRequest;
 import com.usoftchina.saas.utils.BeanMapper;
+import com.usoftchina.saas.utils.CollectionUtils;
 import com.usoftchina.saas.utils.DateUtils;
 import com.usoftchina.saas.utils.RegexpUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
+import sun.reflect.generics.tree.LongSignature;
 
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -59,6 +60,8 @@ public class CustomerServiceImpl extends CommonBaseServiceImpl<CustomerMapper, C
     private SubledgerMapper subledgerMapper;
     @Autowired
     private CustomerMapper customerMapper;
+    @Autowired
+    private DataImportMapper dataImportMapper;
 
 
     @Override
@@ -488,6 +491,68 @@ public class CustomerServiceImpl extends CommonBaseServiceImpl<CustomerMapper, C
         return getMapper().getCombo(id,BaseContextHolder.getCompanyId());
     }
 
+    @Override
+    public void saveToFormal(Integer id, boolean update) {
+        if (null == id || "0".equals(id)) {
+            return;
+        }
+        Long companyId = BaseContextHolder.getCompanyId();
+        StringBuilder err = new StringBuilder();
+        List<CustomerFormDTO> list = new ArrayList<>();
+        CustomerFormDTO listDTO = null;
+        List<DataImportDetail> details = dataImportMapper.selectDataById(id);
+        if (!CollectionUtils.isEmpty(details)) {
+            Map<String, List<DataImportDetail>> datas = CollectionUtils.groupBy(details, DataImportDetail::getDd_codevalue);
+            Integer detno = null;
+            for (String code : datas.keySet()) {
+                listDTO = new CustomerFormDTO();
+                List<CustomercontactDTO> details_ = new ArrayList<>();
+                int i = getMapper().validateCodeWhenInsert(code, companyId);
+                List<DataImportDetail> data = datas.get(code);
+                DataImportDetail main = dataImportMapper.selectMainBycode(code, id, companyId);
+                CustomerDTO customerDTO = JSONObject.parseObject(main.getDd_maindata(), CustomerDTO.class);
+                customerDTO.setCu_status(Status.OPEN.getDisplay());
+                customerDTO.setCu_statuscode(Status.OPEN.name());
+                //编号不存在
+                if (i == 0) {
+                    customerDTO.setId(0l);
+                    //编号存在、需要更新
+                } else if (update){
+                    Long cu_id = getMapper().selectIdByCode(code, companyId);
+                    customerDTO.setId(cu_id);
+                    //编号存在、不需要处理
+                } else {
+                    continue;
+                }
+                //添加从表
+                if (data.size() > 0) {
+                    detno = 1;
+                    for (DataImportDetail vendorDetail : data) {
+                        CustomercontactDTO detail = JSONObject.parseObject(vendorDetail.getDd_detaildata(), CustomercontactDTO.class);
+                        if (null != detail) {
+                            detail.setCc_cuid(customerDTO.getId());
+                            detail.setCc_detno(detno);
+                            detno++;
+                            details_.add(detail);
+                        }
+                    }
+                }
+                listDTO.setMain(customerDTO);
+                listDTO.setItems1(details_);
+                listDTO.setItems2(new ArrayList<CustomeraddressDTO>());
+                list.add(listDTO);
+            }
+            if (err.length() > 0) {
+                dataImportMapper.updateDataImportError(err.toString(), id);
+                throw new BizException(12345, err.toString());
+            }
+            for (CustomerFormDTO  dto : list) {
+                saveFormData(dto);
+            }
+            dataImportMapper.updateDataImport(id);
+        }
+    }
+
 
     private List<CustomerList> getListByMode(ListReqDTO req) {
         List<CustomerList> list = null;

+ 69 - 4
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/VendorServiceImpl.java

@@ -1,5 +1,6 @@
 package com.usoftchina.saas.document.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
@@ -10,21 +11,22 @@ import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.commons.dto.ListReqDTO;
 import com.usoftchina.saas.commons.exception.BizExceptionCode;
 import com.usoftchina.saas.commons.po.BillCodeSeq;
+import com.usoftchina.saas.commons.po.DataImportDetail;
 import com.usoftchina.saas.commons.po.Operation;
 import com.usoftchina.saas.commons.po.Status;
 import com.usoftchina.saas.context.BaseContextHolder;
+import com.usoftchina.saas.document.dto.ProductListDTO;
 import com.usoftchina.saas.document.dto.VendorDTO;
 import com.usoftchina.saas.document.dto.VendorListDTO;
-import com.usoftchina.saas.document.entities.Subledger;
-import com.usoftchina.saas.document.entities.Vendor;
-import com.usoftchina.saas.document.entities.VendorList;
-import com.usoftchina.saas.document.entities.Vendorcontact;
+import com.usoftchina.saas.document.entities.*;
+import com.usoftchina.saas.document.mapper.DataImportMapper;
 import com.usoftchina.saas.document.mapper.SubledgerMapper;
 import com.usoftchina.saas.document.mapper.VendorMapper;
 import com.usoftchina.saas.document.mapper.VendorcontactMapper;
 import com.usoftchina.saas.document.service.VendorService;
 import com.usoftchina.saas.exception.BizException;
 import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.utils.CollectionUtils;
 import com.usoftchina.saas.utils.DateUtils;
 import com.usoftchina.saas.utils.RegexpUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -52,6 +54,8 @@ public class VendorServiceImpl extends CommonBaseServiceImpl<VendorMapper, Vendo
     private SubledgerMapper subledgerMapper;
     @Autowired
     private VendorMapper vendorMapper;
+    @Autowired
+    private DataImportMapper dataImportMapper;
 
     @Override
     public PageInfo<VendorDTO> getVendorsByCondition(PageRequest page, ListReqDTO listReqDTO) {
@@ -429,6 +433,67 @@ public class VendorServiceImpl extends CommonBaseServiceImpl<VendorMapper, Vendo
         return true;
     }
 
+    @Override
+    public void saveToFormal(Integer id, boolean update) {
+        if (null == id || "0".equals(id)) {
+            return;
+        }
+        Long companyId = BaseContextHolder.getCompanyId();
+        StringBuilder err = new StringBuilder();
+        List<VendorListDTO> list = new ArrayList<>();
+        VendorListDTO listDTO = null;
+        List<DataImportDetail> details = dataImportMapper.selectDataById(id);
+        if (!CollectionUtils.isEmpty(details)) {
+            Map<String, List<DataImportDetail>> datas = CollectionUtils.groupBy(details, DataImportDetail::getDd_codevalue);
+            Integer detno = null;
+            for (String code : datas.keySet()) {
+                listDTO = new VendorListDTO();
+                List<Vendorcontact> details_ = new ArrayList<>();
+                int i = getMapper().validateCodeWhenInsert(code, companyId);
+                List<DataImportDetail> data = datas.get(code);
+                DataImportDetail main = dataImportMapper.selectMainBycode(code, id, companyId);
+                Vendor vendor = JSONObject.parseObject(main.getDd_maindata(), Vendor.class);
+                vendor.setVe_status(Status.OPEN.getDisplay());
+                vendor.setVe_statuscode(Status.OPEN.name());
+                //编号不存在
+                if (i == 0) {
+                    vendor.setId(0l);
+                    //编号存在、需要更新
+                } else if (update){
+                    Long pr_id = getMapper().selectIdByCode(code, companyId);
+                    vendor.setId(pr_id);
+                    //编号存在、不需要处理
+                } else {
+                    continue;
+                }
+                //添加从表
+                if (data.size() > 0) {
+                    detno = 1;
+                    for (DataImportDetail productDetail : data) {
+                        Vendorcontact detail = JSONObject.parseObject(productDetail.getDd_detaildata(), Vendorcontact.class);
+                        if (null != detail) {
+                            detail.setVc_veid(vendor.getId());
+                            detail.setVc_detno(detno);
+                            detno++;
+                            details_.add(detail);
+                        }
+                    }
+                }
+                listDTO.setMain(vendor);
+                listDTO.setItems(details_);
+                list.add(listDTO);
+            }
+            if (err.length() > 0) {
+                dataImportMapper.updateDataImportError(err.toString(), id);
+                throw new BizException(12345, err.toString());
+            }
+            for (VendorListDTO  dto : list) {
+                saveFormData(dto);
+            }
+            dataImportMapper.updateDataImport(id);
+        }
+    }
+
     private List<VendorDTO> getList(ListReqDTO listReqDTO){
         Long companyId = BaseContextHolder.getCompanyId();
         String condition = listReqDTO.getFinalCondition();

+ 3 - 0
applications/document/document-server/src/main/resources/mapper/CustomerMapper.xml

@@ -408,5 +408,8 @@
     SELECT ca_address display,ca_address value FROM customeraddress WHERE ca_cuid=#{id} and COMPANYID=#{companyId} order by ca_id desc
   </select>
 
+  <select id="selectIdByCode" resultType="long">
+    select ve_id from VENDOR where ve_code=#{code} and companyId=#{companyId}
+  </select>
 
 </mapper>

+ 4 - 0
applications/document/document-server/src/main/resources/mapper/VendorMapper.xml

@@ -482,5 +482,9 @@
         <parameter property="v_companyid" jdbcType="INTEGER" mode="IN" />
         <parameter property="v_res" jdbcType="VARCHAR" mode="OUT" />
     </parameterMap>
+
+    <select id="selectIdByCode" resultType="long">
+        select ve_id from VENDOR where ve_code=#{code} and companyId=#{companyId}
+    </select>
 </mapper>
 

+ 1 - 1
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/SaleServiceImpl.java

@@ -704,7 +704,7 @@ public class SaleServiceImpl implements SaleService{
         }
         Long companyId = BaseContextHolder.getCompanyId();
         List<HashMap<String, Object>> list = prodInOutMapper.getWareHouseByCode(code, companyId);
-        if (null != list) {
+        if (null != list && list.size() > 0) {
             return list.get(0);
         }
         return null;

+ 1 - 1
applications/sale/sale-server/src/main/resources/mapper/ProdInOutMapper.xml

@@ -536,7 +536,7 @@ update ProdInOut SET
   </update>
 
   <select id="getWareHouseByCode" resultType="java.util.HashMap">
-    select pr_whid,pr_whcode,pr_whname from product where pr_code=#{code} and companyid=#{companyId} and pr_statuscode='OPEN'
+    select pr_whid,pr_whcode,pr_whname from product where pr_code=#{code} and companyid=#{companyId} and pr_statuscode='ENABLE'
   </select>
   <update id="updateCreator">
     update ProdInOut set creatorId = #{userId} , createTime=now(), creatorName=#{userName} where pi_id=#{id}

+ 5 - 3
frontend/saas-web/app/view/core/base/GridPanel.js

@@ -12,9 +12,11 @@ Ext.define('saas.view.core.base.GridPanel', {
     requires: [
         'Ext.grid.plugin.Exporter'
     ],
-    plugins: {
-        gridexporter: true
-    },
+    plugins: [{
+        ptype: 'gridexporter',
+    }, {
+        ptype: 'menuclipboard'
+    }],
 
     cls:'core-base-gridpanel',
     

+ 6 - 44
frontend/saas-web/app/view/core/report/ReportPanel.js

@@ -139,9 +139,11 @@ Ext.define('saas.view.core.report.ReportPanel', {
                 sortableColumns: false,
                 enableColumnHide: false,
                 rowLines: false,
-                plugins: {
-                    gridexporter: true
-                },
+                plugins: [{
+                    ptype: 'gridexporter',
+                }, {
+                    ptype: 'menuclipboard'
+                }],
                 features: [{
                     ftype: 'groupingsummary',
                     hideGroupedHeader: false,
@@ -159,15 +161,6 @@ Ext.define('saas.view.core.report.ReportPanel', {
                     displayInfo: true,
                     store: store
                 }],
-                actions: {
-                    copy: {
-                        iconCls: 'x-fa fa-copy',
-                        text: '复制单元格',
-                        handler: function() {
-                            me.onCopy(me.selectedData);
-                        }
-                    }
-                },
                 viewConfig: {
                     deferEmptyText: false,
                     emptyText: '无数据',
@@ -217,7 +210,6 @@ Ext.define('saas.view.core.report.ReportPanel', {
             proxy: {
                 type: 'ajax',
                 url: me.listUrl,
-                // url: 'http://192.168.253.58:8560/api/sale/report/saleDetail',
                 timeout: 8000,
                 actionMethods: {
                     read: 'GET'
@@ -276,10 +268,6 @@ Ext.define('saas.view.core.report.ReportPanel', {
                 }
             },
             listeners: {
-                load: function() {
-                    var grid = me.items.items[1];
-                    grid.fireEvent('mysummarychange', grid);
-                },
                 beforeload: function (store, op) {
                     var condition = me.getConditions(),
                     defaultCondition = me.defaultCondition,
@@ -578,31 +566,5 @@ Ext.define('saas.view.core.report.ReportPanel', {
 
     applyParams: function(p) {
         return p;
-    },
-
-    getContextMenu: function() {
-        var me = this,
-        grid = me.items.items[1];
-
-        return grid.contextMenu || (grid.contextMenu = grid.add({
-            xtype: 'menu',
-            items: [
-                // Actions can be converted into MenuItems
-                '@copy',
-            ]
-        }));
-    },
-
-    onCopy: function(text) {
-		var target = Ext.DomHelper.append(document.body, {
-			tag: 'textarea',
-			style: 'opacity: 0;position: absolute;top: -10000px;right: 0;',
-			html: text
-		});
-		target.focus();
-		target.select();
-	    document.execCommand('Copy');
-	    target.blur();
-	    document.body.removeChild(target);
-	},
+    }
 });

+ 3 - 0
frontend/saas-web/app/view/document/kind/Kind.js

@@ -64,6 +64,9 @@ Ext.define('saas.view.document.kind.Kind', {
         margin: '10 0 0 0',
         flex: 1,
         frame:true,
+        plugins: [{
+            ptype: 'menuclipboard'
+        }],
         bind:{
             selection: '{selectedCompany}'
         },

+ 8 - 6
frontend/saas-web/app/view/main/Navigation.scss

@@ -127,16 +127,17 @@ $nav-font-color-over: #fff;
         border-bottom-right-radius: 4px;
 
         .menu {
+            width: 200px;
+            letter-spacing: 1px;
+            display: flex;
+            flex-direction: column;
 
-            &:first-child {
+            &:nth-child(2) {
                 .menu-content {
-                    border-right: 1px dashed #dce2e4;
+                    border-left: 1px dashed #dce2e4;
                 }
             }
 
-            width: 200px;
-            letter-spacing: 1px;
-
             .menu-title {
                 padding-left: 30px;
                 background: #EEF9FE;
@@ -152,7 +153,8 @@ $nav-font-color-over: #fff;
             }
 
             .menu-content {
-
+                height: 100%;
+                
                 .menuitem {
                     padding-left: 25px;
                     margin: 6px;

+ 10 - 4
frontend/saas-web/app/view/money/report/PayDetail.js

@@ -39,10 +39,16 @@ Ext.define('saas.view.money.report.PayDetail', {
             dataIndex: 'pi_inoutno',
             width: 150
         }, {
-            text: '单据类型',
-            dataIndex: 'pi_class',
-            width: 110
-        }, {
+            text:'供应商编号',
+            dataIndex:'pi_vendcode',
+            width: 150,
+            hidden: true
+        },{
+            text:'供应商名称',
+            width: 200,
+            dataIndex:'pi_vendname',
+            hidden: true
+        },{
             text: '采购员',
             dataIndex: 'pu_buyercode',
             width: 110

+ 17 - 8
frontend/saas-web/app/view/money/report/RecDetail.js

@@ -35,6 +35,16 @@ Ext.define('saas.view.money.report.RecDetail', {
             dataIndex: 'pi_inoutno',
             width: 150
         }, {
+            text: '客户编号',
+            dataIndex: 'pi_custcode',
+            width: 150,
+            hidden: true
+        }, {
+            text: '客户名称',
+            dataIndex: 'pi_custname',
+            width: 200,
+            hidden: true
+        },{
             text: '单据类型',
             dataIndex: 'pi_class',
             width: 110
@@ -47,14 +57,13 @@ Ext.define('saas.view.money.report.RecDetail', {
             xtype: 'datecolumn',
             dataIndex: 'rb_date',
             width: 110
-        },
-        // }, {
-        //     text: '序号',
-        //     dataIndex: 'pd_pdno',
-        //     xtype: 'numbercolumn',
-        //     width: 80
-        // },{
-        {
+        }, {
+            text: '序号',
+            dataIndex: 'pd_pdno',
+            xtype: 'numbercolumn',
+            width: 80,
+            hidden: true
+        },{
             text:'期初应收',
             dataIndex:'cu_beginaramount',
             xtype: 'numbercolumn',

+ 4 - 0
frontend/saas-web/ext/packages/ux/src/feature/MySummary.js

@@ -30,6 +30,10 @@ Ext.define('Ext.ux.feature.MySummary', {
 
         me.callParent([grid]);
 
+        grid.store.on('load', function() {
+            this.fireEvent('mysummarychange', grid);
+        }, grid);
+
         grid.on({
             mysummarychange: me.refreshData,
             scope: me