diff --git a/mock/article.js b/mock/article.js
index 23d8ba51..e60f79f1 100644
--- a/mock/article.js
+++ b/mock/article.js
@@ -1,16 +1,41 @@
const Mock = require('mockjs')
+const Random = Mock.Random;
const List = []
const count = 100
const baseContent = '
I am testing data, I am testing data.

'
const image_uri = 'https://wpimg.wallstcn.com/e4558086-631c-425c-9430-56ffb46e70b3'
-
for (let i = 0; i < count; i++) {
+ // List.push(Mock.mock({
+ // id: '@increment',
+ // timestamp: +Mock.Random.date('T'),
+ // author: '@first',
+ // reviewer: '@first',
+ // title: '@title(5, 10)',
+ // content_short: 'mock data',
+ // content: baseContent,
+ // forecast: '@float(0, 100, 2, 2)',
+ // importance: '@integer(1, 3)',
+ // 'type|1': ['CN', 'US', 'JP', 'EU'],
+ // 'status|1': ['published', 'draft'],
+ // display_time: '@datetime',
+ // comment_disabled: true,
+ // pageviews: '@integer(300, 5000)',
+ // image_uri,
+ // platforms: ['a-platform']
+ // }))
List.push(Mock.mock({
id: '@increment',
timestamp: +Mock.Random.date('T'),
author: '@first',
+ 'location|1': ['丰县', '沛县', '睢宁县', '云龙区', '鼓楼区', '泉山区', '铜山区', '贾汪区'],
+ 'name|1': ['拖拉机', '无人机', '推土机', '抽水机', '除草机器人'],
+ PurchaseDate: '@datetime',
+ 'state|1': ['使用中', '维修中', '未使用', '已报废'],
+ 'brand': '@id',
+ description: Random.sentence(),
+ owner: '@cname',
reviewer: '@first',
title: '@title(5, 10)',
content_short: 'mock data',
diff --git a/package.json b/package.json
index 02f68e23..e6c749c8 100644
--- a/package.json
+++ b/package.json
@@ -15,10 +15,14 @@
"test:ci": "npm run lint && npm run test:unit"
},
"dependencies": {
+ "@babel/core": "^7.21.0",
+ "@toast-ui/editor": "^3.1.3",
"axios": "0.18.1",
+ "body-parser": "^1.20.2",
+ "cache-loader": "^4.1.0",
"clipboard": "2.0.4",
"codemirror": "5.45.0",
- "core-js": "3.6.5",
+ "core-js": "^3.29.0",
"driver.js": "0.9.5",
"dropzone": "5.5.1",
"echarts": "4.2.1",
@@ -31,19 +35,22 @@
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
+ "regenerator-runtime": "^0.13.11",
"screenfull": "4.2.0",
"script-loader": "0.7.2",
"sortablejs": "1.8.4",
- "tui-editor": "1.3.3",
+ "svg-baker-runtime": "^1.4.7",
"vue": "2.6.10",
"vue-count-to": "1.0.13",
"vue-router": "3.0.2",
"vue-splitpane": "1.0.4",
+ "vue-style-loader": "^4.1.3",
"vuedraggable": "2.20.0",
"vuex": "3.1.0",
"xlsx": "0.14.1"
},
"devDependencies": {
+ "@babel/runtime": "^7.21.0",
"@vue/cli-plugin-babel": "4.4.4",
"@vue/cli-plugin-eslint": "4.4.4",
"@vue/cli-plugin-unit-jest": "4.4.4",
@@ -70,7 +77,8 @@
"serve-static": "1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.0",
- "vue-template-compiler": "2.6.10"
+ "vue-template-compiler": "2.6.10",
+ "webpack": "^4.0.0"
},
"browserslist": [
"> 1%",
diff --git a/src/components/MarkdownEditor/index.vue b/src/components/MarkdownEditor/index.vue
index 1a8a01ee..d0eef636 100644
--- a/src/components/MarkdownEditor/index.vue
+++ b/src/components/MarkdownEditor/index.vue
@@ -4,13 +4,18 @@
+
+
diff --git a/src/views/excel/components/BarChart.vue b/src/views/excel/components/BarChart.vue
new file mode 100644
index 00000000..13693636
--- /dev/null
+++ b/src/views/excel/components/BarChart.vue
@@ -0,0 +1,111 @@
+
+
+
+
+
diff --git a/src/views/excel/components/LineChart.vue b/src/views/excel/components/LineChart.vue
new file mode 100644
index 00000000..767fda41
--- /dev/null
+++ b/src/views/excel/components/LineChart.vue
@@ -0,0 +1,138 @@
+
+
+
+
+
diff --git a/src/views/excel/components/PieChart.vue b/src/views/excel/components/PieChart.vue
new file mode 100644
index 00000000..c090f925
--- /dev/null
+++ b/src/views/excel/components/PieChart.vue
@@ -0,0 +1,79 @@
+
+
+
+
+
diff --git a/src/views/excel/components/RaddarChart.vue b/src/views/excel/components/RaddarChart.vue
new file mode 100644
index 00000000..93ae4ee4
--- /dev/null
+++ b/src/views/excel/components/RaddarChart.vue
@@ -0,0 +1,125 @@
+
+
+
+
+
diff --git a/src/views/excel/export-excel.vue b/src/views/excel/export-excel.vue
index b4d7500b..3628fb19 100644
--- a/src/views/excel/export-excel.vue
+++ b/src/views/excel/export-excel.vue
@@ -1,116 +1,90 @@
-
-
-
-
-
-
-
- {{ scope.$index }}
-
-
-
-
- {{ scope.row.title }}
-
-
-
-
- {{ scope.row.author }}
-
-
-
-
- {{ scope.row.pageviews }}
-
-
-
-
-
- {{ scope.row.timestamp | parseTime('{y}-{m}-{d} {h}:{i}') }}
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
diff --git a/src/views/table/complex-table.vue b/src/views/table/complex-table.vue
index 295c5fc4..22563572 100644
--- a/src/views/table/complex-table.vue
+++ b/src/views/table/complex-table.vue
@@ -20,9 +20,11 @@
Export
+
{{ row.id }}
-
+
+
+ {{ row.name }}
+
+
+
{{ row.timestamp | parseTime('{y}-{m}-{d} {h}:{i}') }}
-
+
+
+ {{ row.description }}
+
+
+
+
- {{ row.author }}
+ {{ row.owner }}
-
+
- {{ row.reviewer }}
+ {{ row.location }}
-
+
-
+ {{ row.brand }}
+
+
-
- {{ row.status }}
+
+ {{ row.state }}
@@ -84,12 +100,14 @@
Edit
+
Delete
@@ -170,11 +188,20 @@ export default {
components: { Pagination },
directives: { waves },
filters: {
+ // statusFilter(status) {
+ // const statusMap = {
+ // published: 'success',
+ // draft: 'info',
+ // deleted: 'danger'
+ // }
+ // return statusMap[status]
+ // },
statusFilter(status) {
const statusMap = {
- published: 'success',
- draft: 'info',
- deleted: 'danger'
+ '维修中': 'warning',
+ '未使用': 'info',
+ '使用中': 'success',
+ '已报废': 'danger'
}
return statusMap[status]
},