main
黄海 7 months ago
parent 4691d8e2bd
commit 551637eda4

@ -0,0 +1,26 @@
A、方案
二枢纽机房
步骤:
让申健把我们需要的数据写入到教学组的一台Mysql实例中比如
host10.10.15.178
port43306
userccyx
pwddsideal
databaseccyx_statistics
目前金阳给的VPN无法连接到我们当初部署的主机已经联系白阅明进行检查维修但不敢保证一定能到期修复。
B、方案
如果因服务器硬件或网络限制等原因,造成最终无法实现部署到二枢纽机房的话,另一个部署办法就是部署到华为政务云,这里有我们的服务器可以使用。
采用www.ccsjy.cn的门户站主机Windows+VPN的方式就可以连接到二枢纽的主机,将申健给出的数据进行读取后写入到部署到www.ccsjy.cn的DataEase或者MaxKB数据库中。
https://10.10.200.18/ui/#/login
AI教育助手
1、提供李科长最常用的学校、班级数、教职工数、专任教师数、学生数的EXCEL表格下载。
2、有关长春云校的统计分析EXCEL下载。
3、长春云校的一些相关知识。
4、长春云校课程建设情况的EXCEL下载思维导图展示等。

@ -204,6 +204,7 @@
<artifactId>poi-ooxml</artifactId>
<version>5.2.5</version>
</dependency>
<!--引用jsoup防止xss攻击-->
<dependency>
<groupId>org.jsoup</groupId>

@ -0,0 +1,70 @@
package UnitTest;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.CellReference;
import org.apache.poi.xddf.usermodel.chart.*;
import org.apache.poi.xwpf.usermodel.*;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class WordDocumentGenerator {
public static void main(String[] args) throws Exception {
String templatePath = "D:\\word\\line-chart-template.docx";
InputStream is = new FileInputStream(templatePath);
XWPFDocument doc = new XWPFDocument(is);
//模拟统计图数据
//系列
String[] seriesTitles = {"日处理能力(kg)", "湿垃圾(kg)", "干垃圾(kg)"};
//x轴
String[] categories = {"2020-02-20", "2020-02-21", "2020-02-22", "2020-02-23", "2020-02-24", "2020-02-25", "2020-02-26"};
List<Number[]> values = new ArrayList<>();
//日处理能力
Number[] value1 = {1000, 1000, 1000, 1000, 1000, 1000, 1000};
//湿垃圾
Number[] value2 = {450.2, 622.1, 514, 384.7, 486.5, 688.9, 711.1};
//干垃圾
Number[] value3 = {200.2, 321.4, 266, 156.5, 232.2, 325.5, 319.5};
values.add(value1);
values.add(value2);
values.add(value3);
XWPFChart xChart = doc.getCharts().get(0);//获取第1个图表
generateChart(xChart, seriesTitles, categories, values);
try (FileOutputStream fos = new FileOutputStream("D:\\word\\test.docx")) {
doc.write(fos);
}
}
public static void generateChart(XWPFChart chart, String[] series, String[] categories, List<Number[]> values) {
String chartTitle = "收运量统计图";
final List<XDDFChartData> data = chart.getChartSeries();//不知道这个ChartSeries代表什么意思
final XDDFLineChartData line = (XDDFLineChartData) data.get(0);//这里一般获取第一个,我们这里是折线图就是XDDFLineChartData
final int numOfPoints = categories.length;
final String categoryDataRange = chart.formatRange(new CellRangeAddress(1, numOfPoints, 0, 0));
final XDDFDataSource<?> categoriesData = XDDFDataSourcesFactory.fromArray(categories, categoryDataRange, 0);
for (int i = 0; i < values.size(); i++) {
final String valuesDataRange = chart.formatRange(new CellRangeAddress(1, numOfPoints, i + 1, i + 1));
Number[] value = values.get(i);
final XDDFNumericalDataSource<? extends Number> valuesData = XDDFDataSourcesFactory.fromArray(value, valuesDataRange, i + 1);
XDDFChartData.Series ser;//图表中的系列
ser = line.getSeries().get(i);
ser.replaceData(categoriesData, valuesData);
CellReference cellReference = chart.setSheetTitle(series[i], 1);//修改系列标题
ser.setTitle(series[i], cellReference);
}
chart.plot(line);
chart.setTitleText(chartTitle);//折线图标题
chart.setTitleOverlay(false);
}
}

Binary file not shown.

Binary file not shown.
Loading…
Cancel
Save