瀏覽代碼

适配统计报表

xujunjie 1 年之前
父節點
當前提交
bc386e5f84
共有 3 個文件被更改,包括 31 次插入9 次删除
  1. 7 2
      src/core.js
  2. 23 3
      src/expendPlugins/chart/plugin.js
  3. 1 4
      src/global/format.js

+ 7 - 2
src/core.js

@@ -67,10 +67,12 @@ luckysheet.create = function(setting) {
     menu = extendsetting.menu,
     authority = extendsetting.authority,
     title = extendsetting.title;
-  if (!loadurl) {
+  if (!loadurl && !extendsetting.disablePermission) {
     data.forEach((sheet) => {
       initSheet(sheet, authority, setting.permissions);
     });
+  } else {
+    data.forEach((sheet) => initCalcChain(sheet));
   }
 
   let container = extendsetting.container;
@@ -473,7 +475,7 @@ function initSheet(sheet, authority, permissions) {
     });
   }
 
-  console.log(canEditRangeList)
+  console.log(canEditRangeList);
 
   // 处于审批时  所有人都无法修改
   if (authority) {
@@ -498,7 +500,10 @@ function initSheet(sheet, authority, permissions) {
   } else {
     sheet.config.rowhidden = rowhidden;
   }
+  initCalcChain(sheet);
+}
 
+function initCalcChain(sheet) {
   // 公式计算
   let calcChain = [];
   let index = sheet.index;

+ 23 - 3
src/expendPlugins/chart/plugin.js

@@ -25,13 +25,13 @@ const dependScripts = [
     'https://unpkg.com/vuex@3.4.0',
     'https://cdn.bootcdn.net/ajax/libs/element-ui/2.13.2/index.js',
     'https://cdn.bootcdn.net/ajax/libs/echarts/4.8.0/echarts.min.js',
-    'expendPlugins/chart/chartmix.umd.min.js',
+    'Luckysheet/expendPlugins/chart/chartmix.umd.min.js',
     // 'http://26.26.26.1:8000/chartmix.umd.js'
 ]
 
 const dependLinks = [
     'https://cdn.bootcdn.net/ajax/libs/element-ui/2.13.2/theme-chalk/index.css',
-    'expendPlugins/chart/chartmix.css',
+    'Luckysheet/expendPlugins/chart/chartmix.css',
     // 'http://26.26.26.1:8000/chartmix.css'
 ]
 
@@ -1179,7 +1179,26 @@ function createLuckyChart(width, height, left, top) {
 
     let container = document.getElementById(chart_id_c)
 
-    let { render, chart_json } = chartInfo.createChart($(`#${chart_id_c}`).children('.luckysheet-modal-dialog-content')[0], chartData, chart_id, rangeArray, rangeTxt)
+    let copyChartData = JSON.parse(JSON.stringify(chartData))
+    copyChartData.forEach(rows => {
+        rows.forEach(value => {
+            if (value.ct?.t == 'inlineStr') {
+                value.v = value.ct.s?.map(s => s.v).join('');
+                value.ct = {
+                    fa: '@',
+                    t: 's',
+                };
+            } else if (value.ct?.t == "d") {
+                value.ct = {
+                    fa: '@',
+                    t: 's',
+                };
+                value.v = value.m
+            }
+        })
+    })
+
+    let { render, chart_json } = chartInfo.createChart($(`#${chart_id_c}`).children('.luckysheet-modal-dialog-content')[0], copyChartData, chart_id, rangeArray, rangeTxt)
     // chartInfo.currentChart = chart_json.chartOptions
     console.dir(JSON.stringify(chart_json))
 
@@ -1210,6 +1229,7 @@ function createLuckyChart(width, height, left, top) {
         height,
         left,
         top,
+        chartOptions: JSON.parse(JSON.stringify(chart_json.chartOptions)),
         sheetIndex: sheetFile.index
     })
 

+ 1 - 4
src/global/format.js

@@ -228,13 +228,10 @@ var make_ssf = function make_ssf(SSF) {
             dout = b2 ? [1317, 8, 29] : [1900, 1, 0];
             dow = 6;
         } else {
-            // 看不懂为什么要递减1,会导致天数与实际真实值差1
             if (date > 60) --date;
             /* 1 = Jan 1 1900 in Gregorian */
             var d = new Date(1900, 0, 1);
-            // -1 以及上面的递减1会导致天数与实际相差2天,改为 +1弥补两天差距
-            // d.setDate(d.getDate() + date - 1);
-            d.setDate(d.getDate() + date + 1);
+            d.setDate(d.getDate() + date - 1);
             dout = [d.getFullYear(), d.getMonth() + 1, d.getDate()];
             dow = d.getDay();
             if (date < 60) dow = (dow + 6) % 7;