@titaui/pc 1.11.4-15 → 1.11.4-17
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.
- package/lib/components/dynamic/constant.js +1 -1
- package/lib/components/eReport/eReportShare/index.js +1 -1
- package/lib/components/grid-layout/sub-employee-okr/person-okr.js +11 -5
- package/lib/components/nav-top/components/menu/img/wecome-temp.png +0 -0
- package/lib/components/nav-top/components/menu/index.css +91 -0
- package/lib/components/nav-top/components/menu/index.js +72 -24
- package/lib/components/okr-detail/components/okr-tree/tree-node/kr-node/index.js +3 -2
- package/lib/components/okr-detail/components/okr-tree/tree-node/kr-node/range-picker-pop.js +10 -0
- package/lib/components/okr-detail/okr-list/index.js +5 -3
- package/lib/components/okr-flow/child-node/index.css +1 -1
- package/lib/components/okr-flow/export-modal/index.js +66 -3
- package/lib/components/survey-model/index.js +3 -0
- package/lib/components/time-picker/time-picker.js +53 -99
- package/package.json +1 -1
|
@@ -119,5 +119,5 @@ var EStatusStatus2ClassType = {
|
|
|
119
119
|
5: 'tu-icon-jiantou-right'
|
|
120
120
|
};
|
|
121
121
|
exports.EStatusStatus2ClassType = EStatusStatus2ClassType;
|
|
122
|
-
var PlanReportType = ['titaPlanReport'];
|
|
122
|
+
var PlanReportType = ['titaPlanReport', 'titaPlanManagerReport'];
|
|
123
123
|
exports.PlanReportType = PlanReportType;
|
|
@@ -64,7 +64,7 @@ var EReportShare = /*#__PURE__*/function (_PureComponent) {
|
|
|
64
64
|
var _this$props = _this.props,
|
|
65
65
|
onSubmit = _this$props.onSubmit,
|
|
66
66
|
workId = _this$props.workId;
|
|
67
|
-
sentData.ObjType =
|
|
67
|
+
sentData.ObjType = 62;
|
|
68
68
|
sentData.ObjId = workId;
|
|
69
69
|
|
|
70
70
|
if (submitType === 'submit') {
|
|
@@ -19,6 +19,8 @@ var _dateTestChange = require("../../../utils/date-test-change");
|
|
|
19
19
|
|
|
20
20
|
var _openData = require("../../../utils/open-data");
|
|
21
21
|
|
|
22
|
+
var _getLocale = require("../../../utils/getLocale");
|
|
23
|
+
|
|
22
24
|
require("./index.css");
|
|
23
25
|
|
|
24
26
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -54,7 +56,11 @@ function PersonalOkr(props) {
|
|
|
54
56
|
|
|
55
57
|
var toolTipRef = (0, _react.useRef)();
|
|
56
58
|
(0, _react.useEffect)(function () {
|
|
57
|
-
|
|
59
|
+
if (updateTime) {
|
|
60
|
+
setSubUpdateTime((0, _dateTestChange.judgeTimeSpaceFromNow)(updateTime) + (0, _getLocale.getLocale)('OKR_MyO_Butt_Update'));
|
|
61
|
+
} else {
|
|
62
|
+
setSubUpdateTime((0, _getLocale.getLocale)('OKR_MyO_KRP_Notupdated'));
|
|
63
|
+
}
|
|
58
64
|
}, [updateTime]);
|
|
59
65
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
60
66
|
className: "subOKRComponents-PersonalOkr"
|
|
@@ -85,15 +91,15 @@ function PersonalOkr(props) {
|
|
|
85
91
|
id: userId
|
|
86
92
|
}))), /*#__PURE__*/_react["default"].createElement("span", {
|
|
87
93
|
className: "subOKRComponents-PersonalOkr__left__updatetime"
|
|
88
|
-
}, subUpdateTime
|
|
94
|
+
}, subUpdateTime))), /*#__PURE__*/_react["default"].createElement("span", {
|
|
89
95
|
className: "subOKRComponents-PersonalOkr__right"
|
|
90
96
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
91
97
|
className: "subOKRComponents-PersonalOkr__right__percentNum"
|
|
92
98
|
}, num, "%"), /*#__PURE__*/_react["default"].createElement("div", {
|
|
93
99
|
style: {
|
|
94
|
-
position:
|
|
95
|
-
right:
|
|
96
|
-
bottom:
|
|
100
|
+
position: 'absolute',
|
|
101
|
+
right: '-8px',
|
|
102
|
+
bottom: '0'
|
|
97
103
|
}
|
|
98
104
|
}, /*#__PURE__*/_react["default"].createElement(_index["default"], {
|
|
99
105
|
percent: num,
|
|
Binary file
|
|
@@ -117,6 +117,97 @@
|
|
|
117
117
|
position: relative;
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
+
.titaui-nav-top-menu__tips {
|
|
121
|
+
position: relative;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.titaui-nav-top-menu__tips-new {
|
|
125
|
+
width: 36px;
|
|
126
|
+
height: 26px;
|
|
127
|
+
position: absolute;
|
|
128
|
+
top: 6px;
|
|
129
|
+
right: -8px;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.titaui-nav-top-menu__tips-box {
|
|
133
|
+
width: 308px;
|
|
134
|
+
height: 142px;
|
|
135
|
+
box-sizing: border-box;
|
|
136
|
+
padding: 16px;
|
|
137
|
+
background: #5c8eff;
|
|
138
|
+
box-shadow: 0px -8px 24px 0px rgba(127, 145, 180, 0.3);
|
|
139
|
+
border: 1px solid #eff0f1;
|
|
140
|
+
border-radius: 12px;
|
|
141
|
+
z-index: 99;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.titaui-nav-top-menu__tips-box-head {
|
|
145
|
+
padding-left: 24px;
|
|
146
|
+
background-image: url("./img/wecome-temp.png");
|
|
147
|
+
background-position: 0 0;
|
|
148
|
+
background-repeat: no-repeat;
|
|
149
|
+
background-size: 20px 20px;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.titaui-nav-top-menu__tips-box-title {
|
|
153
|
+
display: block;
|
|
154
|
+
font-size: 14px;
|
|
155
|
+
color: #ffffff;
|
|
156
|
+
line-height: 22px;
|
|
157
|
+
font-weight: 600;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.titaui-nav-top-menu__tips-box-content {
|
|
161
|
+
font-size: 12px;
|
|
162
|
+
color: #ffffff;
|
|
163
|
+
line-height: 18px;
|
|
164
|
+
margin-top: 10px;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
.titaui-nav-top-menu__tips-box-ok {
|
|
168
|
+
height: 28px;
|
|
169
|
+
margin-top: 8px;
|
|
170
|
+
margin-left: 210px;
|
|
171
|
+
background: #ffffff;
|
|
172
|
+
box-shadow: 0px -4px 12px 0px rgba(127, 145, 180, 0.2);
|
|
173
|
+
border-radius: 14px;
|
|
174
|
+
box-sizing: border-box;
|
|
175
|
+
padding: 3px 17px;
|
|
176
|
+
font-size: 14px;
|
|
177
|
+
color: #2879ff;
|
|
178
|
+
line-height: 22px;
|
|
179
|
+
cursor: pointer;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
.titaui-nav-top-menu__tips-triangle {
|
|
183
|
+
position: absolute;
|
|
184
|
+
top: -4px;
|
|
185
|
+
left: 50%;
|
|
186
|
+
margin-left: -4px;
|
|
187
|
+
width: 0;
|
|
188
|
+
height: 0;
|
|
189
|
+
border-left: 5px solid transparent;
|
|
190
|
+
border-right: 5px solid transparent;
|
|
191
|
+
border-bottom: 5px solid #fff;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.titaui-nav-top-menu__tips-triangle::after {
|
|
195
|
+
content: '';
|
|
196
|
+
width: 0;
|
|
197
|
+
height: 0;
|
|
198
|
+
position: absolute;
|
|
199
|
+
left: -4px;
|
|
200
|
+
top: 2px;
|
|
201
|
+
border-left: solid 4px transparent;
|
|
202
|
+
border-right: solid 4px transparent;
|
|
203
|
+
border-bottom: solid 4px #5c8eff;
|
|
204
|
+
z-index: 99;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
.titaui-nav-top-menu__tips-hide {
|
|
208
|
+
display: none;
|
|
209
|
+
}
|
|
210
|
+
|
|
120
211
|
.titaui-nav-top-menu .rc-overflow-item {
|
|
121
212
|
position: relative;
|
|
122
213
|
}
|
|
@@ -21,6 +21,8 @@ var _conditionRender = _interopRequireDefault(require("../../../../components/co
|
|
|
21
21
|
|
|
22
22
|
var _useGlobalValue3 = _interopRequireDefault(require("../../useGlobalValue"));
|
|
23
23
|
|
|
24
|
+
var _new = _interopRequireDefault(require("./img/new.png"));
|
|
25
|
+
|
|
24
26
|
require("./index.css");
|
|
25
27
|
|
|
26
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -52,6 +54,15 @@ var popupAlign = {
|
|
|
52
54
|
},
|
|
53
55
|
targetOffset: [0, 0]
|
|
54
56
|
};
|
|
57
|
+
var NewFeatureGuidePopupAlign = {
|
|
58
|
+
offset: [104, -5],
|
|
59
|
+
overflow: {
|
|
60
|
+
adjustX: true,
|
|
61
|
+
adjustY: true
|
|
62
|
+
},
|
|
63
|
+
targetOffset: [0, 0]
|
|
64
|
+
};
|
|
65
|
+
var NEWMENUS = '#/interview';
|
|
55
66
|
|
|
56
67
|
var Menu = function Menu(_ref) {
|
|
57
68
|
var menus = _ref.menus,
|
|
@@ -59,8 +70,13 @@ var Menu = function Menu(_ref) {
|
|
|
59
70
|
|
|
60
71
|
var _useState = (0, _react.useState)(false),
|
|
61
72
|
_useState2 = _slicedToArray(_useState, 2),
|
|
62
|
-
|
|
63
|
-
|
|
73
|
+
isKnow = _useState2[0],
|
|
74
|
+
setIsKonw = _useState2[1];
|
|
75
|
+
|
|
76
|
+
var _useState3 = (0, _react.useState)(false),
|
|
77
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
78
|
+
popupVisible = _useState4[0],
|
|
79
|
+
setPopupVisible = _useState4[1];
|
|
64
80
|
|
|
65
81
|
var _useGlobalValue = (0, _useGlobalValue3["default"])(),
|
|
66
82
|
_useGlobalValue2 = _slicedToArray(_useGlobalValue, 1),
|
|
@@ -84,33 +100,66 @@ var Menu = function Menu(_ref) {
|
|
|
84
100
|
}
|
|
85
101
|
};
|
|
86
102
|
|
|
87
|
-
var
|
|
88
|
-
|
|
103
|
+
var handleClick = function handleClick() {
|
|
104
|
+
setIsKonw(true);
|
|
105
|
+
localStorage.setItem("isNewMenuItem__".concat(userId), "".concat(userId));
|
|
89
106
|
};
|
|
90
107
|
|
|
108
|
+
(0, _react.useEffect)(function () {
|
|
109
|
+
var isKnow = localStorage.getItem("isNewMenuItem__".concat(userId));
|
|
110
|
+
|
|
111
|
+
if (isKnow) {
|
|
112
|
+
setIsKonw(true);
|
|
113
|
+
}
|
|
114
|
+
}, []);
|
|
115
|
+
|
|
116
|
+
var popup = /*#__PURE__*/_react["default"].createElement("div", {
|
|
117
|
+
className: "".concat(prefix, "__tips")
|
|
118
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
119
|
+
className: (0, _classnames["default"])("".concat(prefix, "__tips-box"), _defineProperty({}, "".concat(prefix, "__tips-hide"), isKnow))
|
|
120
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
121
|
+
className: "".concat(prefix, "__tips-box-head")
|
|
122
|
+
}, /*#__PURE__*/_react["default"].createElement("h2", {
|
|
123
|
+
className: "".concat(prefix, "__tips-box-title")
|
|
124
|
+
}, "1 : 1 \u9762\u8C08\uFF08\u4E00\u5BF9\u4E00\u9762\u8C08\uFF09\u4E0A\u7EBF\u5566\uFF01"), /*#__PURE__*/_react["default"].createElement("p", {
|
|
125
|
+
className: "".concat(prefix, "__tips-box-content")
|
|
126
|
+
}, "\u52A9\u529B\u7ECF\u7406\u548C\u4E0B\u7EA7\u8FDB\u884C\u6301\u7EED\u6C9F\u901A\uFF0C\u4E3A\u4E0D\u540C\u573A\u666F\u63D0\u4F9B\u4E30\u5BCC\u7684\u6C9F\u901A\u6A21\u677F\uFF0C\u5373\u523B\u4E86\u89E3\uFF0CGo~")), /*#__PURE__*/_react["default"].createElement("div", {
|
|
127
|
+
className: "".concat(prefix, "__tips-box-ok"),
|
|
128
|
+
onClick: handleClick
|
|
129
|
+
}, "\u597D\u54D2")), /*#__PURE__*/_react["default"].createElement("div", {
|
|
130
|
+
className: (0, _classnames["default"])("".concat(prefix, "__tips-triangle"), _defineProperty({}, "".concat(prefix, "__tips-hide"), isKnow))
|
|
131
|
+
}));
|
|
132
|
+
|
|
91
133
|
var renderRawItem = function renderRawItem(menu) {
|
|
134
|
+
var href = menu.href;
|
|
135
|
+
|
|
136
|
+
if (menu.title === 'Learning') {
|
|
137
|
+
href = "".concat(apiPath, "/").concat(userId, "/eLearningHome#/");
|
|
138
|
+
}
|
|
139
|
+
|
|
92
140
|
return /*#__PURE__*/_react["default"].createElement(_rcOverflow["default"].Item, {
|
|
93
141
|
component: "span"
|
|
94
142
|
}, /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
|
|
95
|
-
condition: menu.
|
|
143
|
+
condition: menu.id
|
|
144
|
+
}, /*#__PURE__*/_react["default"].createElement(_popup["default"], {
|
|
145
|
+
popupVisible: !isKnow,
|
|
146
|
+
popup: menu.href === NEWMENUS ? popup : null,
|
|
147
|
+
mask: false,
|
|
148
|
+
action: ['focus'],
|
|
149
|
+
popupAlign: NewFeatureGuidePopupAlign
|
|
96
150
|
}, /*#__PURE__*/_react["default"].createElement("a", {
|
|
97
151
|
className: (0, _classnames["default"])("".concat(prefix, "__menu-show"), _defineProperty({}, "".concat(prefix, "__menu-show--active"), activeMenuId === menu.id)),
|
|
98
|
-
href:
|
|
152
|
+
href: href,
|
|
99
153
|
target: "_self",
|
|
100
154
|
onClick: function onClick() {
|
|
101
155
|
return handleTracker(menu);
|
|
102
156
|
}
|
|
103
157
|
}, menu.title, menu.href === '#dynamic' && feedNum > 0 && /*#__PURE__*/_react["default"].createElement("div", {
|
|
104
158
|
className: (0, _classnames["default"])("".concat(prefix, "__menu--hasNum"), _defineProperty({}, "".concat(prefix, "__menu--hasNum-active"), activeMenuId === menu.id && menu.href === '#dynamic'))
|
|
105
|
-
}, feedNum > 100 ? '99+' : feedNum)
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
onClick: function onClick() {
|
|
110
|
-
handleTracker(menu);
|
|
111
|
-
handleClickToLearning();
|
|
112
|
-
}
|
|
113
|
-
}, menu.title)));
|
|
159
|
+
}, feedNum > 100 ? '99+' : feedNum), menu.href === NEWMENUS && /*#__PURE__*/_react["default"].createElement("img", {
|
|
160
|
+
src: _new["default"],
|
|
161
|
+
className: "".concat(prefix, "__tips-new")
|
|
162
|
+
})))));
|
|
114
163
|
};
|
|
115
164
|
|
|
116
165
|
var renderRest = function renderRest(items) {
|
|
@@ -122,18 +171,17 @@ var Menu = function Menu(_ref) {
|
|
|
122
171
|
var popContent = /*#__PURE__*/_react["default"].createElement("div", {
|
|
123
172
|
className: "".concat(prefix, "__hide-menus")
|
|
124
173
|
}, items.map(function (menu) {
|
|
174
|
+
var href = menu.href;
|
|
175
|
+
|
|
176
|
+
if (menu.title === 'Learning') {
|
|
177
|
+
href = "".concat(apiPath, "/").concat(userId, "/eLearningHome#/");
|
|
178
|
+
}
|
|
179
|
+
|
|
125
180
|
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
|
|
126
|
-
condition: menu.
|
|
127
|
-
}, /*#__PURE__*/_react["default"].createElement("a", {
|
|
128
|
-
className: (0, _classnames["default"])("".concat(prefix, "__menu-hide"), _defineProperty({}, "".concat(prefix, "__menu-hide--active"), activeMenuId === menu.id)),
|
|
129
|
-
href: "".concat(menu.href),
|
|
130
|
-
key: menu.id,
|
|
131
|
-
target: "_self"
|
|
132
|
-
}, menu.title)), /*#__PURE__*/_react["default"].createElement(_conditionRender["default"], {
|
|
133
|
-
condition: menu.title === 'Learning'
|
|
181
|
+
condition: menu.id
|
|
134
182
|
}, /*#__PURE__*/_react["default"].createElement("a", {
|
|
135
183
|
className: (0, _classnames["default"])("".concat(prefix, "__menu-hide"), _defineProperty({}, "".concat(prefix, "__menu-hide--active"), activeMenuId === menu.id)),
|
|
136
|
-
href:
|
|
184
|
+
href: href,
|
|
137
185
|
key: menu.id,
|
|
138
186
|
target: "_self"
|
|
139
187
|
}, menu.title)));
|
|
@@ -94,7 +94,8 @@ function _default(props) {
|
|
|
94
94
|
var data = props.data,
|
|
95
95
|
index = props.index,
|
|
96
96
|
title = props.title,
|
|
97
|
-
key = props.key
|
|
97
|
+
key = props.key,
|
|
98
|
+
canEditOkr = props.canEditOkr;
|
|
98
99
|
|
|
99
100
|
var _useContext = (0, _react.useContext)(_context2.CommonContext),
|
|
100
101
|
refreshAll = _useContext.refreshAll,
|
|
@@ -155,7 +156,7 @@ function _default(props) {
|
|
|
155
156
|
var hasAuth = new _auth.KRAuth({
|
|
156
157
|
user: data.user,
|
|
157
158
|
createUserId: data.createUserId
|
|
158
|
-
}).hasAuth();
|
|
159
|
+
}).hasAuth() || canEditOkr;
|
|
159
160
|
var livetime = okrInfo.status != 2;
|
|
160
161
|
return hasAuth && livetime;
|
|
161
162
|
}),
|
|
@@ -15,6 +15,10 @@ var _requestApis = require("../../../../request-apis");
|
|
|
15
15
|
|
|
16
16
|
var _rangePickerPop = _interopRequireDefault(require("../../../../../range-picker-pop"));
|
|
17
17
|
|
|
18
|
+
var _toast = _interopRequireDefault(require("../../../../../toast"));
|
|
19
|
+
|
|
20
|
+
var _getLocale = require("../../../../../../utils/getLocale");
|
|
21
|
+
|
|
18
22
|
require("./index.css");
|
|
19
23
|
|
|
20
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -68,6 +72,12 @@ function _default(props) {
|
|
|
68
72
|
kr: data,
|
|
69
73
|
startDate: startDate,
|
|
70
74
|
endDate: endDate
|
|
75
|
+
}).then(function (resp) {
|
|
76
|
+
if (resp.Code === 1) {
|
|
77
|
+
_toast["default"].Success((0, _getLocale.getLocale)('Mod_Successfuloperat'));
|
|
78
|
+
} else {
|
|
79
|
+
_toast["default"].Error(resp.Message);
|
|
80
|
+
}
|
|
71
81
|
});
|
|
72
82
|
rangePicker.current.setRange({
|
|
73
83
|
startDate: startDate,
|
|
@@ -96,6 +96,7 @@ var preCls = "okr-detail-okrs-list";
|
|
|
96
96
|
|
|
97
97
|
var treeDataFormate = function treeDataFormate(nodes) {
|
|
98
98
|
var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "kr";
|
|
99
|
+
var canEditOkr = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
99
100
|
var formateNodes = [];
|
|
100
101
|
nodes.forEach(function (it, index) {
|
|
101
102
|
var title = "";
|
|
@@ -107,7 +108,8 @@ var treeDataFormate = function treeDataFormate(nodes) {
|
|
|
107
108
|
title: title,
|
|
108
109
|
isLeaf: true,
|
|
109
110
|
nodeType: type,
|
|
110
|
-
data: it
|
|
111
|
+
data: it,
|
|
112
|
+
canEditOkr: canEditOkr
|
|
111
113
|
});
|
|
112
114
|
});
|
|
113
115
|
return formateNodes;
|
|
@@ -272,9 +274,9 @@ var _default = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
272
274
|
updateKrs();
|
|
273
275
|
}, []);
|
|
274
276
|
(0, _react.useEffect)(function () {
|
|
275
|
-
var strucKrs = treeDataFormate(pureKrs, "kr");
|
|
277
|
+
var strucKrs = treeDataFormate(pureKrs, "kr", canEditOkr);
|
|
276
278
|
setKrs(strucKrs);
|
|
277
|
-
}, [pureKrs]);
|
|
279
|
+
}, [pureKrs, canEditOkr]);
|
|
278
280
|
|
|
279
281
|
var onAddKrHandler = function onAddKrHandler(kr) {
|
|
280
282
|
refreshAll();
|
|
@@ -37,6 +37,8 @@ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
|
|
37
37
|
|
|
38
38
|
require("rc-color-picker/assets/index.css");
|
|
39
39
|
|
|
40
|
+
var Sentry = _interopRequireWildcard(require("@sentry/browser"));
|
|
41
|
+
|
|
40
42
|
require("./index.css");
|
|
41
43
|
|
|
42
44
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -155,6 +157,8 @@ var ExportMapModal = function ExportMapModal(props) {
|
|
|
155
157
|
};
|
|
156
158
|
_context.next = 12;
|
|
157
159
|
return (0, _html2canvas["default"])(okrMapRef, opts).then(function (result) {
|
|
160
|
+
var _window, _window$BSGlobal, _window$BSGlobal$logi, _window2, _window2$BSGlobal, _window2$BSGlobal$ten;
|
|
161
|
+
|
|
158
162
|
if ((0, _bsGlobal.isWx)() && window.WWOpenData) {
|
|
159
163
|
if (window.WWOpenData.enableCanvasSharing) {
|
|
160
164
|
window.WWOpenData.enableCanvasSharing();
|
|
@@ -165,11 +169,69 @@ var ExportMapModal = function ExportMapModal(props) {
|
|
|
165
169
|
}
|
|
166
170
|
}
|
|
167
171
|
|
|
172
|
+
var userId = (_window = window) === null || _window === void 0 ? void 0 : (_window$BSGlobal = _window.BSGlobal) === null || _window$BSGlobal === void 0 ? void 0 : (_window$BSGlobal$logi = _window$BSGlobal.loginUserInfo) === null || _window$BSGlobal$logi === void 0 ? void 0 : _window$BSGlobal$logi.Id;
|
|
173
|
+
var telentId = (_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$BSGlobal = _window2.BSGlobal) === null || _window2$BSGlobal === void 0 ? void 0 : (_window2$BSGlobal$ten = _window2$BSGlobal.tenantInfo) === null || _window2$BSGlobal$ten === void 0 ? void 0 : _window2$BSGlobal$ten.Id;
|
|
168
174
|
var imgUrl = result.toDataURL('image/png'); // 得到图片的base64编码数据
|
|
169
175
|
|
|
170
176
|
// 得到图片的base64编码数据
|
|
177
|
+
_toast["default"].Warning('导出中,请勿关闭弹窗', {
|
|
178
|
+
canClose: true
|
|
179
|
+
});
|
|
180
|
+
|
|
181
|
+
var equalIndex = imgUrl.indexOf('='); // 获取=号下标
|
|
182
|
+
|
|
183
|
+
// 获取=号下标
|
|
184
|
+
var size = 0;
|
|
185
|
+
|
|
186
|
+
if (equalIndex > 0) {
|
|
187
|
+
var str = imgUrl.substring(0, equalIndex); // 去除=号
|
|
188
|
+
|
|
189
|
+
// 去除=号
|
|
190
|
+
var strLength = str.length;
|
|
191
|
+
var fileLength = strLength - strLength / 8 * 2; // 真实的图片byte大小
|
|
192
|
+
|
|
193
|
+
// 真实的图片byte大小
|
|
194
|
+
size = Math.floor(fileLength); // 向下取整
|
|
195
|
+
} else {
|
|
196
|
+
var _strLength = imgUrl.length;
|
|
197
|
+
|
|
198
|
+
var _fileLength = _strLength - _strLength / 8 * 2;
|
|
199
|
+
|
|
200
|
+
size = Math.floor(_fileLength); // 向下取整
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
size = size / 1024 / 1024; // @ts-ignore
|
|
204
|
+
|
|
205
|
+
// @ts-ignore
|
|
206
|
+
window.titaTracker && window.titaTracker("action").record({
|
|
207
|
+
actionName: userId + '租户:' + telentId + '我得到了图片大小为:' + size + ',路径为' + imgUrl.slice(1, 200),
|
|
208
|
+
actionGroup: 'okr地图图片',
|
|
209
|
+
productName: 'okr地图导出'
|
|
210
|
+
});
|
|
211
|
+
Sentry.withScope(function (scope) {
|
|
212
|
+
scope.setTag("error-level", "P0");
|
|
213
|
+
scope.setTag("error-type", "地图导出-图片生成");
|
|
214
|
+
scope.setExtra("userMessage", userId + '租户:' + telentId + '我得到了图片大小为:' + size + ',路径为' + imgUrl);
|
|
215
|
+
});
|
|
171
216
|
(0, _requestApis.getBase64DownloadUrl)(imgUrl.split(',')[1]).then(function (url) {
|
|
172
|
-
var image = new Image();
|
|
217
|
+
var image = new Image(); // @ts-ignore
|
|
218
|
+
|
|
219
|
+
// @ts-ignore
|
|
220
|
+
window.titaTracker && window.titaTracker("action").record({
|
|
221
|
+
actionName: userId + '租户:' + telentId + '我获得了地址' + url.Data.obj,
|
|
222
|
+
actionGroup: 'okr地图接口',
|
|
223
|
+
productName: 'okr地图导出'
|
|
224
|
+
});
|
|
225
|
+
Sentry.withScope(function (scope) {
|
|
226
|
+
scope.setTag("error-level", "P0");
|
|
227
|
+
scope.setTag("error-type", "地图导出-图片地址");
|
|
228
|
+
scope.setExtra("userMessage", userId + '租户:' + telentId + '我得到了图片大小为:' + size + ',路径为' + imgUrl);
|
|
229
|
+
});
|
|
230
|
+
|
|
231
|
+
_toast["default"].Warning('图片上传成功,准备本地下载', {
|
|
232
|
+
canClose: true
|
|
233
|
+
});
|
|
234
|
+
|
|
173
235
|
image.setAttribute('crossOrigin', 'anonymous');
|
|
174
236
|
|
|
175
237
|
image.onload = function () {
|
|
@@ -188,9 +250,9 @@ var ExportMapModal = function ExportMapModal(props) {
|
|
|
188
250
|
a.download = 'okr地图'; // 设置图片名称
|
|
189
251
|
|
|
190
252
|
// 设置图片名称
|
|
191
|
-
a.href = url.Data.obj; // 将生成的URL设置为a
|
|
253
|
+
a.href = url.Data.obj; // 将生成的URL设置为a
|
|
192
254
|
|
|
193
|
-
// 将生成的URL设置为a
|
|
255
|
+
// 将生成的URL设置为a
|
|
194
256
|
a.dispatchEvent(event); // 触发a的单击事件
|
|
195
257
|
|
|
196
258
|
// 触发a的单击事件
|
|
@@ -269,6 +331,7 @@ var ExportMapModal = function ExportMapModal(props) {
|
|
|
269
331
|
onOk: confirmHandler,
|
|
270
332
|
onCancel: onCloseHandler,
|
|
271
333
|
ref: modalRef,
|
|
334
|
+
confirmLoading: isExport,
|
|
272
335
|
className: "export-map-modal titaui-dialog",
|
|
273
336
|
forceRender: true
|
|
274
337
|
}, /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -29,6 +29,8 @@ var _tools = require("../../utils/tools");
|
|
|
29
29
|
|
|
30
30
|
require("./index.css");
|
|
31
31
|
|
|
32
|
+
var _helpers = require("../../utils/helpers");
|
|
33
|
+
|
|
32
34
|
var _window$BSGlobal, _window$BSGlobal$tena, _window$BSGlobal2, _window$BSGlobal2$ten;
|
|
33
35
|
|
|
34
36
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -104,6 +106,7 @@ var SurveyModel = function SurveyModel(_ref) {
|
|
|
104
106
|
|
|
105
107
|
(0, _react.useEffect)(function () {
|
|
106
108
|
if (Version === 1) return;
|
|
109
|
+
if ((0, _helpers.isDingDing)()) return;
|
|
107
110
|
if (!!window.location.hostname.match(/.work/)) return;
|
|
108
111
|
var newDate = (0, _dayjs["default"])();
|
|
109
112
|
var oldDate = localStorage.getItem("survey_model_date__".concat(loginUserInfo.Id));
|
|
@@ -79,45 +79,47 @@ var TimePicker = function TimePicker(props) {
|
|
|
79
79
|
var mInputRef = (0, _react.useRef)();
|
|
80
80
|
var minuteRef = (0, _react.useRef)((0, _moment["default"])(value || '00:00', timeFormat).format('mm'));
|
|
81
81
|
var triggerRef = (0, _react.useRef)();
|
|
82
|
-
var timerRef = (0, _react.useRef)();
|
|
83
82
|
var hours = (0, _utils.getHours)(hourStep);
|
|
84
83
|
var minutes = (0, _utils.getMinutes)(minuteStep);
|
|
85
84
|
|
|
86
85
|
var onTimeChange = function onTimeChange() {
|
|
87
|
-
onChange === null || onChange === void 0 ? void 0 : onChange("".concat(hourRef.current, ":").concat(minuteRef.current));
|
|
88
|
-
};
|
|
89
|
-
// clearTimeout(timerRef.current)
|
|
90
|
-
// timerRef.current = setTimeout(() => {
|
|
91
|
-
// if (type === 'hour') {
|
|
92
|
-
// hInputRef.current?.focus()
|
|
93
|
-
// } else {
|
|
94
|
-
// mInputRef.current?.focus()
|
|
95
|
-
// }
|
|
96
|
-
// setTimeSettingType(() => type)
|
|
97
|
-
// }, 0)
|
|
98
|
-
// }
|
|
86
|
+
return onChange === null || onChange === void 0 ? void 0 : onChange("".concat(hourRef.current, ":").concat(minuteRef.current));
|
|
87
|
+
};
|
|
99
88
|
|
|
89
|
+
var onBlurHandler = function onBlurHandler() {
|
|
90
|
+
return setTimeSettingType('');
|
|
91
|
+
};
|
|
100
92
|
|
|
101
93
|
var onFocusHandler = function onFocusHandler(type) {
|
|
102
|
-
setTimeSettingType(function () {
|
|
94
|
+
return setTimeSettingType(function () {
|
|
103
95
|
return type;
|
|
104
96
|
});
|
|
105
97
|
};
|
|
106
98
|
|
|
107
|
-
var
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
99
|
+
var onKeyDownHandler = function onKeyDownHandler(e) {
|
|
100
|
+
if (!e) return;
|
|
101
|
+
var keyCode = e.keyCode;
|
|
102
|
+
|
|
103
|
+
if ([_utils.KEYCODE.directionLeft, _utils.KEYCODE.directionRight].includes(keyCode)) {
|
|
104
|
+
setTimeSettingType(_utils.TargetMapByKeyCode[keyCode]);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if ([_utils.KEYCODE.directionUp, _utils.KEYCODE.directionDown].includes(keyCode)) {
|
|
108
|
+
switch (timeSetingtType) {
|
|
109
|
+
case 'hour':
|
|
110
|
+
hourRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'hour', hourRef.current);
|
|
111
|
+
break;
|
|
112
|
+
|
|
113
|
+
case 'minute':
|
|
114
|
+
minuteRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'minute', minuteRef.current);
|
|
115
|
+
break;
|
|
116
|
+
|
|
117
|
+
default:
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
onTimeChange();
|
|
122
|
+
}
|
|
121
123
|
};
|
|
122
124
|
|
|
123
125
|
var onHourInputChange = function onHourInputChange(e) {
|
|
@@ -135,32 +137,6 @@ var TimePicker = function TimePicker(props) {
|
|
|
135
137
|
}
|
|
136
138
|
};
|
|
137
139
|
|
|
138
|
-
var onMinuteInputBlur = function onMinuteInputBlur() {
|
|
139
|
-
// setMinute((prevMinute) => {
|
|
140
|
-
// let nextMinute = minuteRef.current;
|
|
141
|
-
// minutes.forEach((m, i) => {
|
|
142
|
-
// const mNum = Number(m);
|
|
143
|
-
// const nextMinuteNum = Number(nextMinute);
|
|
144
|
-
// if (mNum === nextMinuteNum) {
|
|
145
|
-
// nextMinute = m;
|
|
146
|
-
// } else if (
|
|
147
|
-
// mNum < nextMinuteNum
|
|
148
|
-
// && Number(minutes[i + 1]) > nextMinuteNum
|
|
149
|
-
// ) {
|
|
150
|
-
// nextMinute = m;
|
|
151
|
-
// } else if (nextMinuteNum > Number(minutes[minutes.length - 1])) {
|
|
152
|
-
// nextMinute = "00";
|
|
153
|
-
// }
|
|
154
|
-
// });
|
|
155
|
-
// minuteRef.current = nextMinute;
|
|
156
|
-
// });
|
|
157
|
-
// if (timeSetType === "minute" && mInputRef.current) {
|
|
158
|
-
// mInputRef.current.focus();
|
|
159
|
-
// }
|
|
160
|
-
// onTimeChange();
|
|
161
|
-
setTimeSettingType('');
|
|
162
|
-
};
|
|
163
|
-
|
|
164
140
|
var onMinuteInputChange = function onMinuteInputChange(e) {
|
|
165
141
|
var v = e.target.value;
|
|
166
142
|
|
|
@@ -221,72 +197,52 @@ var TimePicker = function TimePicker(props) {
|
|
|
221
197
|
return currTime;
|
|
222
198
|
};
|
|
223
199
|
|
|
224
|
-
var
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
if ([_utils.KEYCODE.directionLeft, _utils.KEYCODE.directionRight].includes(keyCode)) {
|
|
228
|
-
setTimeSettingType(_utils.TargetMapByKeyCode[keyCode]);
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
if ([_utils.KEYCODE.directionUp, _utils.KEYCODE.directionDown].indexOf(keyCode) === -1) return;
|
|
232
|
-
|
|
233
|
-
switch (timeSetingtType) {
|
|
234
|
-
case 'hour':
|
|
235
|
-
hourRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'hour', hourRef.current);
|
|
236
|
-
break;
|
|
237
|
-
|
|
238
|
-
case 'minute':
|
|
239
|
-
minuteRef.current = setTimeOnKeyboardDirectionChange(keyCode, 'minute', minuteRef.current);
|
|
240
|
-
break;
|
|
241
|
-
|
|
242
|
-
default:
|
|
243
|
-
break;
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
onTimeChange();
|
|
200
|
+
var showSelectorPop = function showSelectorPop() {
|
|
201
|
+
return setVisible(true);
|
|
247
202
|
};
|
|
248
203
|
|
|
249
|
-
(0, _react.useEffect)(function () {
|
|
250
|
-
document.removeEventListener('keydown', handleKeyDown);
|
|
251
|
-
enableKeyBoard && timeSetingtType && document.addEventListener('keydown', handleKeyDown);
|
|
252
|
-
return function () {
|
|
253
|
-
clearTimeout(timerRef.current);
|
|
254
|
-
document.removeEventListener('keydown', handleKeyDown);
|
|
255
|
-
};
|
|
256
|
-
}, [timeSetingtType]);
|
|
257
204
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
258
205
|
className: _utils.TimePickerClass
|
|
259
206
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
260
207
|
className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-trigger"), _defineProperty({}, "".concat(_utils.TimePickerClass, "-trigger--disabled"), disabled)),
|
|
261
208
|
ref: triggerRef
|
|
262
209
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
263
|
-
className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-inputs"), _defineProperty({}, "".concat(_utils.TimePickerClass, "-inputs--placeholder"), !value))
|
|
264
|
-
|
|
210
|
+
className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-inputs"), _defineProperty({}, "".concat(_utils.TimePickerClass, "-inputs--placeholder"), !value)),
|
|
211
|
+
onClick: function onClick() {
|
|
212
|
+
return !enableKeyBoard && showSelectorPop();
|
|
213
|
+
}
|
|
214
|
+
}, /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], _extends({
|
|
265
215
|
className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-input"), {
|
|
266
|
-
active: timeSetingtType === 'hour'
|
|
216
|
+
active: enableKeyBoard && timeSetingtType === 'hour'
|
|
267
217
|
}),
|
|
268
218
|
disabled: disabled,
|
|
269
219
|
maxLength: 2,
|
|
270
|
-
onBlur:
|
|
271
|
-
onChange: onHourInputChange
|
|
272
|
-
|
|
220
|
+
onBlur: onBlurHandler,
|
|
221
|
+
onChange: onHourInputChange,
|
|
222
|
+
onClick: function onClick() {
|
|
223
|
+
return !enableKeyBoard && showSelectorPop();
|
|
224
|
+
},
|
|
273
225
|
onFocus: function onFocus() {
|
|
274
226
|
return onFocusHandler('hour');
|
|
275
227
|
},
|
|
228
|
+
onKeyDown: onKeyDownHandler,
|
|
276
229
|
ref: hInputRef,
|
|
277
230
|
value: hourRef.current
|
|
278
|
-
}), /*#__PURE__*/_react["default"].createElement("span", null, ":"), /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], {
|
|
231
|
+
}, restProps)), /*#__PURE__*/_react["default"].createElement("span", null, ":"), /*#__PURE__*/_react["default"].createElement(_timerPickerInput["default"], {
|
|
279
232
|
className: (0, _classnames["default"])("".concat(_utils.TimePickerClass, "-input"), {
|
|
280
|
-
active: timeSetingtType === 'minute'
|
|
233
|
+
active: enableKeyBoard && timeSetingtType === 'minute'
|
|
281
234
|
}),
|
|
282
235
|
disabled: disabled,
|
|
283
236
|
maxLength: 2,
|
|
284
|
-
onBlur:
|
|
285
|
-
onChange: onMinuteInputChange
|
|
286
|
-
|
|
237
|
+
onBlur: onBlurHandler,
|
|
238
|
+
onChange: onMinuteInputChange,
|
|
239
|
+
onClick: function onClick() {
|
|
240
|
+
return !enableKeyBoard && showSelectorPop();
|
|
241
|
+
},
|
|
287
242
|
onFocus: function onFocus() {
|
|
288
243
|
return onFocusHandler('minute');
|
|
289
244
|
},
|
|
245
|
+
onKeyDown: onKeyDownHandler,
|
|
290
246
|
ref: mInputRef,
|
|
291
247
|
value: minuteRef.current
|
|
292
248
|
})), !disabled && /*#__PURE__*/_react["default"].createElement(_timePickerSelector["default"], _extends({
|
|
@@ -317,9 +273,7 @@ var TimePicker = function TimePicker(props) {
|
|
|
317
273
|
}
|
|
318
274
|
}, restProps), /*#__PURE__*/_react["default"].createElement("span", {
|
|
319
275
|
className: "".concat(_utils.TimePickerClass, "-icon tu-icon-caret-down"),
|
|
320
|
-
onClick:
|
|
321
|
-
setVisible(true);
|
|
322
|
-
}
|
|
276
|
+
onClick: showSelectorPop
|
|
323
277
|
}))));
|
|
324
278
|
};
|
|
325
279
|
|