Browse Source

update

jiang
master
tonytonychopper123 5 years ago
parent
commit
010cd31e7b
  1. 15
      src/demoData/sheetCell.js
  2. 87
      src/expendPlugins/chart/plugin.js

15
src/demoData/sheetCell.js

@ -1165,16 +1165,11 @@ const sheetCell = {
}, },
"index": "0", "index": "0",
"chart": [{ "chart": [{
"sheetIndex": "0", "chart_id": "chart_5erpeWc1eWal_1596092336315",
"dataSheetIndex": "0", "width": 400,
"chartType": "column", "height": 250,
"row": "[1,3]", "top": 30,
"column": "[3,3]", "left": 50
"chartStyle": "default",
"width": "480",
"height": "288",
"left": "67",
"top": "11"
}], }],
"status": "1", "status": "1",
"order": "0", "order": "0",

87
src/expendPlugins/chart/plugin.js

@ -69,8 +69,8 @@ function chart(data) {
chartInfo.chartparam.renderChart = chartmix.default.renderChart chartInfo.chartparam.renderChart = chartmix.default.renderChart
// 初始化渲染图表 // 初始化渲染图表
for(let i = 0; i < data.length; i++){ for (let i = 0; i < data.length; i++) {
if(data[i].status == '1'){ if (data[i].status == '1') {
renderCharts(data[i].chart) renderCharts(data[i].chart)
} }
} }
@ -78,13 +78,48 @@ function chart(data) {
} }
// rendercharts // rendercharts
function renderCharts(chartLists){ function renderCharts(chartLists) {
for (let i = 0; i < chartLists.length; i++) {
let chart = chartLists[i]
let chart_id_c = chart.chart_id + '_c'
let modelChartShowHTML =
'<div id="${id}"class="luckysheet-modal-dialog luckysheet-modal-dialog-chart ${addclass}"tabindex="0"role="dialog"aria-labelledby=":41e"dir="ltr"><div class="luckysheet-modal-dialog-resize"><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-lt"data-type="lt"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-mt"data-type="mt"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-lm"data-type="lm"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-rm"data-type="rm"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-rt"data-type="rt"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-lb"data-type="lb"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-mb"data-type="mb"></div><div class="luckysheet-modal-dialog-resize-item luckysheet-modal-dialog-resize-item-rb"data-type="rb"></div></div><div class="luckysheet-modal-dialog-controll"><span class="luckysheet-modal-controll-btn luckysheet-modal-controll-update"role="button"tabindex="0"aria-label="修改图表"title="修改图表"><i class="fa fa-pencil"aria-hidden="true"></i></span><span class="luckysheet-modal-controll-btn luckysheet-modal-controll-max"role="butluckysheet_chartIns_indexton"tabindex="0"aria-label="最大化"title="最大化"><i class="fa fa-window-maximize"aria-hidden="true"></i></span><span class="luckysheet-modal-controll-btn luckysheet-modal-controll-del"role="button"tabindex="0"aria-label="删除"title="删除"><i class="fa fa-trash"aria-hidden="true"></i></span></div><div class="luckysheet-modal-dialog-content">${content}</div></div>'
let $t = $(
replaceHtml(modelChartShowHTML, {
id: chart_id_c,
addclass: 'luckysheet-data-visualization-chart',
title: '图表生成',
content: ''
})
).appendTo($('.luckysheet-cell-main'))
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)
chartInfo.currentChart = chart_json.chartOptions
console.dir(JSON.stringify(chart_json))
width = chart.width
height = chart.height
left = chart.left
top = chart.top
container.style.width = width + 'px'
container.style.height = height + 'px'
container.style.position = 'absolute'
container.style.background = '#fff'
container.style.left = left + 'px'
container.style.top = top + 'px'
render.style.width = '100%'
render.style.height = '100%'
container.style.zIndex = chartInfo.zIndex ? chartInfo.zIndex : 15
chartInfo.zIndex++
}
} }
function jfrefreshchartall(flowdata1, r_st, r_ed, c_st, c_ed) { function jfrefreshchartall(flowdata1, r_st, r_ed, c_st, c_ed) {
let chart = chartInfo.currentChart let chart = chartInfo.currentChart
if(!chart){ if (!chart) {
return return
} }
if (chart.rangeArray.length == 1) { if (chart.rangeArray.length == 1) {
@ -92,12 +127,12 @@ function jfrefreshchartall(flowdata1, r_st, r_ed, c_st, c_ed) {
var column = chart.rangeArray[0].column; var column = chart.rangeArray[0].column;
//不在范围内的不更新 //不在范围内的不更新
if ( if (
r_st > row[1] || r_st > row[1] ||
r_ed < row[0] || r_ed < row[0] ||
c_st > column[1] || c_st > column[1] ||
c_ed < column[0] c_ed < column[0]
) { ) {
return return
} }
//根据原有的范围取得数据 //根据原有的范围取得数据
var luckysheetgetcellrange = formula.getcellrange( var luckysheetgetcellrange = formula.getcellrange(
@ -999,7 +1034,7 @@ function createLuckyChart(width, height, left, top) {
// insert chartinfo // insert chartinfo
let sheetFile = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)]; let sheetFile = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)];
if(!sheetFile.chart){ if (!sheetFile.chart) {
sheetFile.chart = []; sheetFile.chart = [];
} }
sheetFile.chart.push({ sheetFile.chart.push({
@ -1163,11 +1198,11 @@ function showNeedRangeShow(chart_id) {
let chartLists = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)].chart; let chartLists = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)].chart;
for (let chartId in chartLists) { for (let chartId in chartLists) {
// if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) { // if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) {
//当前sheet的图表先设置为false //当前sheet的图表先设置为false
chartLists[chartId].needRangeShow = false chartLists[chartId].needRangeShow = false
if (chartLists[chartId].chart_id == chart_id) { if (chartLists[chartId].chart_id == chart_id) {
chartLists[chartId].needRangeShow = true chartLists[chartId].needRangeShow = true
} }
// } // }
} }
@ -1180,8 +1215,8 @@ function hideAllNeedRangeShow() {
let chartLists = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)].chart; let chartLists = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)].chart;
for (let chartId in chartLists) { for (let chartId in chartLists) {
// if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) { // if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) {
//当前sheet的图表设置为false //当前sheet的图表设置为false
chartLists[chartId].needRangeShow = false chartLists[chartId].needRangeShow = false
// } // }
} }
@ -1301,11 +1336,11 @@ function renderChartShow(index) {
const luckysheetfile = chartInfo.luckysheetfile; const luckysheetfile = chartInfo.luckysheetfile;
luckysheetfile.forEach((file) => { luckysheetfile.forEach((file) => {
//切换当前页的所有图表都显示出来 //切换当前页的所有图表都显示出来
if(file.index == index){ if (file.index == index) {
const chartLists = file.chart || []; const chartLists = file.chart || [];
chartLists.forEach((chart)=>{ chartLists.forEach((chart) => {
chart.isShow = true; chart.isShow = true;
$('#' + chart.chart_id + '_c').show(); $('#' + chart.chart_id + '_c').show();
@ -1315,21 +1350,21 @@ function renderChartShow(index) {
selectRangeBorderShow(chart.chart_id) selectRangeBorderShow(chart.chart_id)
} }
}) })
} }
// 隐藏其他页的图表 // 隐藏其他页的图表
else{ else {
const chartLists = file.chart || []; const chartLists = file.chart || [];
chartLists.forEach((chart)=>{ chartLists.forEach((chart) => {
chart.isShow = false; chart.isShow = false;
$('#' + chart.chart_id + '_c').hide(); $('#' + chart.chart_id + '_c').hide();
}) })
} }
}); });
} }
export { chart, createLuckyChart, hideAllNeedRangeShow,renderChartShow } export { chart, createLuckyChart, hideAllNeedRangeShow, renderChartShow }
Loading…
Cancel
Save