hrsass-components 2.3.9 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -65,7 +65,7 @@ var contentStyle = _interopDefault(require('!!raw-loader!tinymce/skins/content/d
65
65
  var SvgPanZoom = _interopDefault(require('svg-pan-zoom'));
66
66
  var saveSvgAsPng = require('save-svg-as-png');
67
67
 
68
- var version = "2.3.9";
68
+ var version = "2.4.0";
69
69
 
70
70
  /**
71
71
  * 版本号
@@ -11484,6 +11484,7 @@ var OrganizationCard = {
11484
11484
  fill: color || '#4285f4',
11485
11485
  height: "4px"
11486
11486
  };
11487
+ var levelGap = data.parent && data.parent.property.departmentLevel == data.parent.level && data.property.departmentLevel - data.level > 0 ? data.property.departmentLevel - data.level : 0;
11487
11488
  return h("g", {
11488
11489
  "class": prefixCls,
11489
11490
  attrs: {
@@ -11662,9 +11663,9 @@ var OrganizationCard = {
11662
11663
  h("rect", {
11663
11664
  attrs: {
11664
11665
  x: width / 2,
11665
- y: -lineHeight,
11666
+ y: -(lineHeight + (height + lineHeight * 2) * levelGap),
11666
11667
  width: 1,
11667
- height: lineHeight
11668
+ height: lineHeight + (height + lineHeight * 2) * levelGap
11668
11669
  },
11669
11670
  style: "fill:#fff;stroke: rgb(217, 217, 217);stroke-width: 1px"
11670
11671
  }), data.children && data.children.length > 0 && data.property.open &&
@@ -11749,7 +11750,8 @@ var index$6 = {
11749
11750
  dataList: [],
11750
11751
  svgPanZoom: null,
11751
11752
  standardZoom: 1,
11752
- isDownload: false
11753
+ isDownload: false,
11754
+ globalMap: new Map()
11753
11755
  };
11754
11756
  },
11755
11757
  watch: {
@@ -11814,14 +11816,16 @@ var index$6 = {
11814
11816
  return result;
11815
11817
  },
11816
11818
  _reSetX: function _reSetX(data, map) {
11817
- data.x = (data.children[0].x + data.children[data.children.length - 1].x) / 2;
11818
- if (map.has(data.level)) {
11819
- if (data.x > map.get(data.level)) {
11820
- map.set(data.level, data.x);
11819
+ if (data.children && data.children.length > 0) {
11820
+ data.x = (data.children[0].x + data.children[data.children.length - 1].x) / 2;
11821
+ if (map.has(data.level)) {
11822
+ if (data.x > map.get(data.level)) {
11823
+ map.set(data.level, data.x);
11824
+ }
11825
+ }
11826
+ if (data.parent) {
11827
+ this._reSetX(data.parent, map);
11821
11828
  }
11822
- }
11823
- if (data.parent) {
11824
- this._reSetX(data.parent, map);
11825
11829
  }
11826
11830
  },
11827
11831
  _getHalfDistance: function _getHalfDistance(length) {
@@ -11839,12 +11843,15 @@ var index$6 = {
11839
11843
  },
11840
11844
  _treeLayout: function _treeLayout(list, parent, level, map) {
11841
11845
  var _this3 = this;
11846
+ if (!map) {
11847
+ map = this.globalMap;
11848
+ }
11842
11849
  var _getOptionProps4 = getOptionProps(this),
11843
11850
  width = _getOptionProps4.width,
11844
11851
  height = _getOptionProps4.height,
11845
11852
  gutter = _getOptionProps4.gutter,
11846
11853
  lineHeight = _getOptionProps4.lineHeight;
11847
- return list.map(function (item, index) {
11854
+ var result = list.map(function (item, index) {
11848
11855
  var children = item.children || [];
11849
11856
  if (index === 0) {
11850
11857
  //第一个节点
@@ -11883,13 +11890,36 @@ var index$6 = {
11883
11890
  }
11884
11891
  item.level = level;
11885
11892
  item.property.open = item.property.open !== undefined ? item.property.open : true;
11886
- item.parent = parent;
11887
11893
  item.y = (height + lineHeight * 2) * level;
11894
+ //对比层级和level,进行高度计算和map维护
11895
+ if (item.property.departmentLevel > level) {
11896
+ item.y = (height + lineHeight * 2) * item.property.departmentLevel;
11897
+ var max = item.x;
11898
+ for (var i = level; i < item.property.departmentLevel; i++) {
11899
+ if (map.has(i + 1)) {
11900
+ if (item.x > map.get(i + 1)) {
11901
+ map.set(i + 1, item.x);
11902
+ } else {
11903
+ max = map.get(i + 1);
11904
+ }
11905
+ } else {
11906
+ map.set(i + 1, item.x);
11907
+ }
11908
+ }
11909
+ if (max !== item.x) {
11910
+ item.x = max + width + gutter;
11911
+ item.pointX = max + width + gutter;
11912
+ _this3._reSetX(parent, map);
11913
+ }
11914
+ }
11915
+ item.parent = parent;
11888
11916
  if (_this3._isOpen(item) && children.length > 0) {
11889
11917
  item.children = _this3._treeLayout(children, item, level + 1, map);
11890
11918
  }
11891
11919
  return item;
11892
11920
  });
11921
+ this.globalMap = map;
11922
+ return result;
11893
11923
  },
11894
11924
  _renderOrgChartLine: function _renderOrgChartLine(level, children) {
11895
11925
  var h = this.$createElement;
@@ -11932,7 +11962,7 @@ var index$6 = {
11932
11962
  return h("g", [data.map(function (item) {
11933
11963
  var children = item.children || [];
11934
11964
  var Comp = _this4._getComponent(type);
11935
- return h("g", [item.property.open && children.length > 0 && _this4._renderOrgChartLine(item.level + 1, children), h(Comp, {
11965
+ return h("g", [item.property.open && children.length > 0 && _this4._renderOrgChartLine(parseInt(item.property.departmentLevel || item.level) + 1, children), h(Comp, {
11936
11966
  attrs: {
11937
11967
  data: item,
11938
11968
  width: width,