diff --git a/src/assets/images/down.png b/src/assets/images/down.png
new file mode 100644
index 0000000..dc4e1e1
Binary files /dev/null and b/src/assets/images/down.png differ
diff --git a/src/assets/images/gjgwlzl.png b/src/assets/images/gjgwlzl.png
new file mode 100644
index 0000000..0bc944b
Binary files /dev/null and b/src/assets/images/gjgwlzl.png differ
diff --git a/src/assets/images/hc.png b/src/assets/images/hc.png
new file mode 100644
index 0000000..7893160
Binary files /dev/null and b/src/assets/images/hc.png differ
diff --git a/src/assets/images/jyyglzl.png b/src/assets/images/jyyglzl.png
new file mode 100644
index 0000000..0ff3877
Binary files /dev/null and b/src/assets/images/jyyglzl.png differ
diff --git a/src/assets/images/ljh.jpg b/src/assets/images/ljh.jpg
new file mode 100644
index 0000000..85ecf0c
Binary files /dev/null and b/src/assets/images/ljh.jpg differ
diff --git a/src/assets/images/lk.png b/src/assets/images/lk.png
new file mode 100644
index 0000000..612f3ca
Binary files /dev/null and b/src/assets/images/lk.png differ
diff --git a/src/assets/images/lq.png b/src/assets/images/lq.png
new file mode 100644
index 0000000..55ea2bc
Binary files /dev/null and b/src/assets/images/lq.png differ
diff --git a/src/assets/images/lt.png b/src/assets/images/lt.png
new file mode 100644
index 0000000..4ae979f
Binary files /dev/null and b/src/assets/images/lt.png differ
diff --git a/src/assets/images/lwl.png b/src/assets/images/lwl.png
new file mode 100644
index 0000000..41a535a
Binary files /dev/null and b/src/assets/images/lwl.png differ
diff --git a/src/assets/images/lzl.png b/src/assets/images/lzl.png
new file mode 100644
index 0000000..06c628c
Binary files /dev/null and b/src/assets/images/lzl.png differ
diff --git a/src/assets/images/lzrs.png b/src/assets/images/lzrs.png
new file mode 100644
index 0000000..4866ebe
Binary files /dev/null and b/src/assets/images/lzrs.png differ
diff --git a/src/assets/images/nyk.jpg b/src/assets/images/nyk.jpg
new file mode 100644
index 0000000..5bc1218
Binary files /dev/null and b/src/assets/images/nyk.jpg differ
diff --git a/src/assets/images/pjj.png b/src/assets/images/pjj.png
new file mode 100644
index 0000000..1df6062
Binary files /dev/null and b/src/assets/images/pjj.png differ
diff --git a/src/assets/images/pxglfx.png b/src/assets/images/pxglfx.png
new file mode 100644
index 0000000..fd03e69
Binary files /dev/null and b/src/assets/images/pxglfx.png differ
diff --git a/src/assets/images/qylzl.png b/src/assets/images/qylzl.png
new file mode 100644
index 0000000..d95ee97
Binary files /dev/null and b/src/assets/images/qylzl.png differ
diff --git a/src/assets/images/syr.png b/src/assets/images/syr.png
new file mode 100644
index 0000000..7a50019
Binary files /dev/null and b/src/assets/images/syr.png differ
diff --git a/src/assets/images/top_bottom.png b/src/assets/images/top_bottom.png
new file mode 100644
index 0000000..86e62b4
Binary files /dev/null and b/src/assets/images/top_bottom.png differ
diff --git a/src/assets/images/up.png b/src/assets/images/up.png
new file mode 100644
index 0000000..8af1f24
Binary files /dev/null and b/src/assets/images/up.png differ
diff --git a/src/assets/images/wyy.jpg b/src/assets/images/wyy.jpg
new file mode 100644
index 0000000..2012b35
Binary files /dev/null and b/src/assets/images/wyy.jpg differ
diff --git a/src/assets/images/ycl.png b/src/assets/images/ycl.png
new file mode 100644
index 0000000..646d837
Binary files /dev/null and b/src/assets/images/ycl.png differ
diff --git a/src/assets/images/ygf.png b/src/assets/images/ygf.png
new file mode 100644
index 0000000..7230a80
Binary files /dev/null and b/src/assets/images/ygf.png differ
diff --git a/src/assets/images/zbl.png b/src/assets/images/zbl.png
new file mode 100644
index 0000000..6c47574
Binary files /dev/null and b/src/assets/images/zbl.png differ
diff --git a/src/assets/images/zcy.png b/src/assets/images/zcy.png
new file mode 100644
index 0000000..9345c94
Binary files /dev/null and b/src/assets/images/zcy.png differ
diff --git a/src/assets/images/zcycd.png b/src/assets/images/zcycd.png
new file mode 100644
index 0000000..01ff549
Binary files /dev/null and b/src/assets/images/zcycd.png differ
diff --git a/src/assets/images/zd.png b/src/assets/images/zd.png
new file mode 100644
index 0000000..9c5adac
Binary files /dev/null and b/src/assets/images/zd.png differ
diff --git a/src/assets/images/zkw.png b/src/assets/images/zkw.png
new file mode 100644
index 0000000..f37f5e5
Binary files /dev/null and b/src/assets/images/zkw.png differ
diff --git a/src/assets/images/zwz.jpg b/src/assets/images/zwz.jpg
new file mode 100644
index 0000000..58c2843
Binary files /dev/null and b/src/assets/images/zwz.jpg differ
diff --git a/src/assets/images/zy.png b/src/assets/images/zy.png
new file mode 100644
index 0000000..f505455
Binary files /dev/null and b/src/assets/images/zy.png differ
diff --git a/src/assets/images/zzrs.png b/src/assets/images/zzrs.png
new file mode 100644
index 0000000..b8677d3
Binary files /dev/null and b/src/assets/images/zzrs.png differ
diff --git a/src/components/reactChart/OrgChart.less b/src/components/reactChart/OrgChart.less
new file mode 100644
index 0000000..dfe95c5
--- /dev/null
+++ b/src/components/reactChart/OrgChart.less
@@ -0,0 +1,172 @@
+@node-color: #1890ff;
+@line-width: 1px;
+@line-color: @node-color;
+@expand-icon-size: 16px;
+.text-overflow-ellipsis() {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+}
+
+.org-chart {
+ &-container {
+ display: flex;
+ justify-content: center;
+ margin-top: 26px;
+ }
+
+ &-table {
+ border-collapse: separate;
+ border-spacing: 0;
+ line-height: 1.5715;
+
+ .expand-icon {
+ display: inline-block;
+ width: @expand-icon-size;
+ height: @expand-icon-size;
+ border-radius: 50%;
+ background-color: @line-color;
+ position: absolute;
+ left: 50%;
+ bottom: 0;
+ margin-left: -@expand-icon-size / 2;
+ margin-bottom: -@expand-icon-size / 2;
+ z-index: 99;
+ cursor: pointer;
+
+ &-expanded,
+ &-collapsed {
+ &::before {
+ content: '';
+ width: 8px;
+ height: 2px;
+ background-color: #fff;
+ position: absolute;
+ top: 7px;
+ left: 4px;
+ }
+ }
+
+ &-collapsed {
+ &::after {
+ content: '';
+ width: 2px;
+ height: 8px;
+ background-color: #fff;
+ position: absolute;
+ top: 4px;
+ left: 7px;
+ }
+ }
+
+ &:hover {
+ background-color: darken(@line-color, 5%);
+ }
+ }
+
+ td {
+ text-align: center;
+ padding: 0;
+ vertical-align: top;
+
+ &.hidden {
+ display: none !important;
+ }
+ }
+
+ &-node {
+ display: inline-block;
+ //border: 1px solid @node-color;
+ //padding: 0.5rem;
+ margin: 0 5px;
+ cursor: pointer;
+ }
+
+ &-line {
+ height: 20px;
+ position: relative;
+
+ &:not(&-children) {
+ &:before {
+ content: '';
+ position: absolute;
+ top: 0;
+ width: @line-width;
+ height: 100%;
+ background-color: @line-color;
+ }
+ }
+
+ &-children {
+ &:nth-child(odd) {
+ border-right: @line-width solid @line-color;
+ }
+
+ &:not(:first-child, :last-child) {
+ border-top: @line-width solid @line-color;
+ }
+ }
+ }
+
+ // 水平
+ &&-horizontal {
+ .expand-icon {
+ top: 50%;
+ bottom: auto;
+ left: auto;
+ right: 0;
+ margin: -@expand-icon-size / 2 -@expand-icon-size / 2 auto auto;
+ }
+
+ td {
+ vertical-align: middle;
+ }
+
+ tr {
+ &:nth-child(odd) {
+ > .org-chart-table-line-children {
+ border-bottom: @line-width solid @line-color;
+ }
+ }
+
+ &:not(:first-child, :last-child) {
+ > .org-chart-table-line-children {
+ border-left: @line-width solid @line-color;
+ }
+ }
+ }
+
+ .org-chart-table {
+ &-node {
+ margin: 5px 0;
+ width: 120px;
+
+ &-content {
+ .text-overflow-ellipsis();
+ }
+ }
+
+ &-line {
+ height: auto;
+ width: 20px;
+
+ &:not(&-children) {
+ &:before {
+ top: auto;
+ left: 0;
+ width: 100%;
+ height: @line-width;
+ }
+ }
+
+ &-children {
+ &:nth-child(odd),
+ &:not(:first-child, :last-child) {
+ border: none;
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/src/components/reactChart/OrgChart.tsx b/src/components/reactChart/OrgChart.tsx
new file mode 100644
index 0000000..915abe3
--- /dev/null
+++ b/src/components/reactChart/OrgChart.tsx
@@ -0,0 +1,31 @@
+import classNames from "classnames";
+import React from "react";
+import { OrgChartProps } from "./interface";
+import OrgChartNode from "./components/OrgChartNode";
+import ChartWrapper from "./components/ChartWrapper";
+import styles from "./OrgChart.less";
+
+const OrgChart = (props: OrgChartProps) => {
+ const { data, className, style, pan, zoom, maxZoom,minZoom,zoomStep, ...otherProps } = props;
+ return !!data ? (
+
调查类型 | +实际值 | +较去年同期 | +
---|---|---|
销售收入投资回报 | +
+
+ 3016万元
+ 同期值3457
+
+ |
+
+ ![]() |
+
人均净利润 | +
+
+ 17456元
+ 同期值13567
+
+ |
+
+ ![]() |
+
人均销售额 | +
+
+ 34.6万元
+ 同期值45.16
+
+ |
+
+ ![]() |
+