fmui-base 2.2.11 → 2.2.13
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/README.md +2 -0
- package/lib/react_grid/react_grid.js +8 -8
- package/package.json +1 -1
- package/lib/ScrollList/BottomTip.jsx +0 -25
- package/lib/ScrollList/EmptyContent.jsx +0 -19
- package/lib/ScrollList/Item.jsx +0 -132
- package/lib/ScrollList/ScrollList.jsx +0 -412
- package/lib/ScrollList/TagList.jsx +0 -54
- package/lib/button/button.jsx +0 -46
- package/lib/care/care.jsx +0 -26
- package/lib/chart/chart.jsx +0 -344
- package/lib/comment_list/List.jsx +0 -285
- package/lib/form/form.jsx +0 -3434
- package/lib/form/subForm.jsx +0 -793
- package/lib/form/table.jsx +0 -1804
- package/lib/form_info/formInfo.jsx +0 -5158
- package/lib/loading/loading.jsx +0 -23
- package/lib/no_data/no_data.jsx +0 -34
- package/lib/poppage/check.jsx +0 -500
- package/lib/poppage/table/table.jsx +0 -641
- package/lib/poppage/tree/tree.jsx +0 -548
- package/lib/poppage/treetable/treetable.jsx +0 -340
- package/lib/positioning/positioning.jsx +0 -92
- package/lib/process_batch/processBatch.jsx +0 -1629
- package/lib/process_info/processInfo.jsx +0 -7752
- package/lib/process_list/processList.jsx +0 -1299
- package/lib/react_grid/react_grid.jsx +0 -1166
- package/lib/select-fileno/pageHome.jsx +0 -569
- package/lib/select-serialnumber/pageHome.jsx +0 -503
- package/lib/select-serialnumber/pageHome1.jsx +0 -503
- package/lib/selectMember/select.jsx +0 -9568
- package/lib/signature/sign.jsx +0 -274
- package/lib/upload/upload.jsx +0 -647
|
@@ -1,1166 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { history } from 'umi';
|
|
3
|
-
import GridLayout from 'react-grid-layout';
|
|
4
|
-
import Badge from 'saltui/lib/Badge';
|
|
5
|
-
import Grid from 'saltui/lib/Grid';
|
|
6
|
-
import Boxs from 'saltui/lib/Boxs';
|
|
7
|
-
import TextField from 'saltui/lib/TextField';
|
|
8
|
-
import Tab from 'saltui/lib/Tab';
|
|
9
|
-
import Carousel from 'saltui/lib/Carousel'
|
|
10
|
-
import Button from 'saltui/lib/Button';
|
|
11
|
-
import Toast from 'saltui/lib/Toast';
|
|
12
|
-
import Refreshcontrol from 'saltui/lib/Refreshcontrol'
|
|
13
|
-
import 'react-grid-layout/css/styles.css';
|
|
14
|
-
import 'react-resizable/css/styles.css';
|
|
15
|
-
import './react_grid.less';
|
|
16
|
-
import DB from '../db/db';
|
|
17
|
-
import Variables from '../db/variables';
|
|
18
|
-
import Chart from '../chart/chart';
|
|
19
|
-
const projectMenuUrl = Variables.projectMenuUrl;
|
|
20
|
-
const { HBox, Box, VBox } = Boxs;
|
|
21
|
-
const { RightAddon } = TextField;
|
|
22
|
-
const context = document.getElementById("context").value;
|
|
23
|
-
export default class MyGrid extends React.Component {
|
|
24
|
-
constructor(props) {
|
|
25
|
-
super(props);
|
|
26
|
-
var portalId = props.portalId;
|
|
27
|
-
var module = props.module;
|
|
28
|
-
this.state = {
|
|
29
|
-
portalId: portalId,
|
|
30
|
-
module: module,
|
|
31
|
-
data: [],
|
|
32
|
-
isDraggable: false,
|
|
33
|
-
//标题样式
|
|
34
|
-
titleStatus: true,
|
|
35
|
-
titleFontFamily: '',
|
|
36
|
-
titleFontWeight: 400,
|
|
37
|
-
titleColor: '',
|
|
38
|
-
titleFontSize: '',
|
|
39
|
-
titleFontStyle: '',
|
|
40
|
-
titleBgColor: '',
|
|
41
|
-
// 部件圆角
|
|
42
|
-
borderTopLeftRadius: '10px',
|
|
43
|
-
borderTopRightRadius: '10px',
|
|
44
|
-
borderBottomLeftRadius: '10px',
|
|
45
|
-
borderBottomRightRadius: '10px',
|
|
46
|
-
// 部件边框样式
|
|
47
|
-
borderColor: '',
|
|
48
|
-
borderWidth: '',
|
|
49
|
-
// 部件内边距
|
|
50
|
-
paddingLeft: '',
|
|
51
|
-
paddingright: '',
|
|
52
|
-
paddingTop: '',
|
|
53
|
-
paddingBottom: '',
|
|
54
|
-
|
|
55
|
-
// todoList: [],//移动集成 配置提醒项信息
|
|
56
|
-
todoList: ["banshi", "zixun", "yingyong", "daiban", "wode"],
|
|
57
|
-
pageImage: projectMenuUrl.pageImage,//提醒项背景图
|
|
58
|
-
appInfoList: [],//移动集成 配置应用信息
|
|
59
|
-
bannerPicPath: '',
|
|
60
|
-
activeIndex: 2,
|
|
61
|
-
undo: 0, //待办数量
|
|
62
|
-
approveundo: 0, //审批数量
|
|
63
|
-
toBeAttendedCount: 0, //会议数量
|
|
64
|
-
unreadMailCount: 0,//未读邮件
|
|
65
|
-
unreadPubMailCount: 0,//未读公共邮件
|
|
66
|
-
appOftenList: [], //常用应用
|
|
67
|
-
collectAppInfoList: [], //收藏应用
|
|
68
|
-
bssx: [], // 办事事项
|
|
69
|
-
bssx_per: [], // 办事事项_个人办事
|
|
70
|
-
bssx_org: [], // 办事事项_部门办事
|
|
71
|
-
jxzt: [], // 精选专题
|
|
72
|
-
ttxx: [], // 头条信息
|
|
73
|
-
xwzx: [], // 新闻资讯
|
|
74
|
-
gryj: [], // 个人邮件
|
|
75
|
-
grrc: [], // 个人日程
|
|
76
|
-
grrc_list: [], // 个人日程-日程信息
|
|
77
|
-
grhy: [], // 个人会议
|
|
78
|
-
showbssx: true, // 办事事项
|
|
79
|
-
showjxzt: true, // 精选专题
|
|
80
|
-
showttxx: true, // 头条信息
|
|
81
|
-
showxwzx: true, // 新闻资讯
|
|
82
|
-
showgryj: true, // 个人邮件
|
|
83
|
-
showgrrc: true, // 个人日程
|
|
84
|
-
showgrhy: true, // 个人会议
|
|
85
|
-
showcyyy: true, // 常用应用
|
|
86
|
-
initCleader: false,
|
|
87
|
-
bannerList: [],
|
|
88
|
-
showSlide: false,
|
|
89
|
-
refreshing: false, //下拉刷新
|
|
90
|
-
showMobileComponent: "", // 显示部件显示模块
|
|
91
|
-
componentList: [], // 显示部件显示模块数组
|
|
92
|
-
pageImageList: [],
|
|
93
|
-
showItem: 0,
|
|
94
|
-
searchVal: '', //顶部搜索input值
|
|
95
|
-
filterValue: { //顶部搜索分类值
|
|
96
|
-
sort: [{ text: '全部', value: 'all' }],
|
|
97
|
-
},
|
|
98
|
-
modelCode: 'all',
|
|
99
|
-
bssxPer_show: true, //办事事项_个人_是否显示
|
|
100
|
-
bssxOrg_show: true, //办事事项_个人_是否显示,
|
|
101
|
-
cyyyUsuTab_show: true, //常用应用_是否显示
|
|
102
|
-
cyyyPerTab_show: true, //我的收藏_是否显示
|
|
103
|
-
activeIndex_mail: 0
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
componentDidMount() {
|
|
110
|
-
this.initPage();
|
|
111
|
-
}
|
|
112
|
-
// 遍历初始化得到的data,奖id给请求部件的内容的接口
|
|
113
|
-
// 如果有两个相同的部件,将会用id请求部件内容,接口返回的数据需要 this.setState({【id】:result.data});这样存值
|
|
114
|
-
// 取值的时候根据id取值
|
|
115
|
-
initPage = () => {
|
|
116
|
-
var t = this;
|
|
117
|
-
// 部件的初始化信息
|
|
118
|
-
DB.reactGrid.getPortalPage({ id: t.state.portalId, module: t.state.module }).then((res) => {
|
|
119
|
-
if (res) {
|
|
120
|
-
let pageTitle = res.portalTitle;
|
|
121
|
-
if (!pageTitle || pageTitle == '') {
|
|
122
|
-
pageTitle = '一网通办管理平台'
|
|
123
|
-
}
|
|
124
|
-
setPageTitle(pageTitle);
|
|
125
|
-
this.setState({
|
|
126
|
-
data: res.portlet
|
|
127
|
-
});
|
|
128
|
-
res.portlet.map((item) => {
|
|
129
|
-
if (item.portletCode == 'banner') {
|
|
130
|
-
this.setState({
|
|
131
|
-
[item.portletCode + '_' + item.id]: JSON.parse(item.personalSetting)
|
|
132
|
-
})
|
|
133
|
-
this.getRemindCount();
|
|
134
|
-
} else if (item.portletCode == 'image') {
|
|
135
|
-
this.setState({
|
|
136
|
-
[item.portletCode + '_' + item.id]: JSON.parse(item.personalSetting)
|
|
137
|
-
})
|
|
138
|
-
|
|
139
|
-
} else if (item.portletCode == 'cyyy') {
|
|
140
|
-
let cyyyCols = JSON.parse(item.personalSetting).cols;
|
|
141
|
-
t.getShoucangAppInfo(item.id);
|
|
142
|
-
t.getOftenList(item.id, cyyyCols);
|
|
143
|
-
this.getRemindCount();
|
|
144
|
-
|
|
145
|
-
} else if (item.portletCode !== 'tbgl') {
|
|
146
|
-
let params = {
|
|
147
|
-
code: item.portletCode,
|
|
148
|
-
ppId: item.id
|
|
149
|
-
}
|
|
150
|
-
DB.reactGrid.getComponentInfoListAll(params).then((res) => {
|
|
151
|
-
this.setState({
|
|
152
|
-
[item.portletCode + '_' + item.id]: res
|
|
153
|
-
})
|
|
154
|
-
})
|
|
155
|
-
}
|
|
156
|
-
})
|
|
157
|
-
} else {
|
|
158
|
-
Toast.show({
|
|
159
|
-
type: 'fail',
|
|
160
|
-
content: '未找到门户信息',
|
|
161
|
-
duration: 2000
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
}).catch((error) => {
|
|
165
|
-
Toast.show({
|
|
166
|
-
type: 'fail',
|
|
167
|
-
content: error.errorMsg,
|
|
168
|
-
duration: 2000
|
|
169
|
-
})
|
|
170
|
-
})
|
|
171
|
-
|
|
172
|
-
let params = {};
|
|
173
|
-
DB.reactGrid.getNewHomePageTodoData(params).then((content) => {
|
|
174
|
-
let openModule = content.hpOpenModule ? content.hpOpenModule : "";
|
|
175
|
-
localStorage.setItem('hpOpenModule', openModule);
|
|
176
|
-
// let todoData = content.todoData != null ? content.todoData.entity : {};
|
|
177
|
-
|
|
178
|
-
})
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
// 获取收藏应用
|
|
182
|
-
getShoucangAppInfo = (id) => {
|
|
183
|
-
DB.reactGrid.getNewHomePageCollectAppInfoList({ showClient: "DING" }).then((result) => {
|
|
184
|
-
this.setState({
|
|
185
|
-
['wdsc' + '_' + id]: result.data
|
|
186
|
-
}, () => {
|
|
187
|
-
// console.log(this.state, 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmm');
|
|
188
|
-
})
|
|
189
|
-
}).catch((error) => { });
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
// 获取用户设置常用应用
|
|
193
|
-
// getComAppInfo = (id) => {
|
|
194
|
-
// let userId = getLoginUserInfo().userId;
|
|
195
|
-
// var userAppOftenList = [];
|
|
196
|
-
// var params = { userId: userId };
|
|
197
|
-
// DB.reactGrid.getComAppInfo(params).then((result) => {
|
|
198
|
-
// if (result.data) {
|
|
199
|
-
// this.setState({
|
|
200
|
-
// ['cyyy' + '_' + id]: JSON.parse(result.data)
|
|
201
|
-
// });
|
|
202
|
-
// localStorage.setItem(['cyyy' + '_' + id], result.data);
|
|
203
|
-
// userAppOftenList = JSON.parse(result.data);
|
|
204
|
-
// }
|
|
205
|
-
// if (userAppOftenList.length < 1) {
|
|
206
|
-
// // 没有用户设置,取系统默认值
|
|
207
|
-
// this.getOftenList(id);
|
|
208
|
-
// }
|
|
209
|
-
// }).catch((error) => {
|
|
210
|
-
// this.getOftenList();
|
|
211
|
-
// console.error(error);
|
|
212
|
-
// });
|
|
213
|
-
// }
|
|
214
|
-
// 获取默认系统常用应用
|
|
215
|
-
getOftenList = (id, cyyyCols) => {
|
|
216
|
-
var data = getLoginUserInfo();
|
|
217
|
-
var thirdMenuType = data.thirdMenuType;
|
|
218
|
-
var params = { code: "cyyy", cols: cyyyCols };
|
|
219
|
-
if (thirdMenuType == null || thirdMenuType == 'null' || thirdMenuType == undefined || thirdMenuType == 'undefined') {
|
|
220
|
-
thirdMenuType = 'DING'
|
|
221
|
-
}
|
|
222
|
-
params.showClient = thirdMenuType;
|
|
223
|
-
DB.reactGrid.getComponentInfoListAll(params).then((content) => {
|
|
224
|
-
if (content) {
|
|
225
|
-
this.setState({
|
|
226
|
-
['cyyy' + '_' + id]: content
|
|
227
|
-
});
|
|
228
|
-
var appOftenListlocal = JSON.stringify(content);
|
|
229
|
-
// localStorage.setItem(['cyyy' + '_' + id], appOftenListlocal);
|
|
230
|
-
localStorage.setItem('appOftenList', appOftenListlocal);
|
|
231
|
-
}
|
|
232
|
-
}).catch((error) => {
|
|
233
|
-
console.error(error);
|
|
234
|
-
});
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
getRemindCount() {
|
|
238
|
-
DB.reactGrid.getNewHomePageRemindCount({ codes: "undo,unreadMail,unreadPubMail,toBeAttended,approveundo" }).then((content) => {
|
|
239
|
-
if (content.undo || content.approveundo || content.toBeAttendedCount || content.unreadPubMailCount || content.unreadMailCount) {
|
|
240
|
-
this.setState({
|
|
241
|
-
undo: content.undo,
|
|
242
|
-
unreadMailCount: content.unreadMailCount,
|
|
243
|
-
approveundo: content.approveundo,
|
|
244
|
-
toBeAttendedCount: content.toBeAttendedCount,
|
|
245
|
-
unreadPubMailCount: content.unreadPubMailCount
|
|
246
|
-
});
|
|
247
|
-
}
|
|
248
|
-
});
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
initCleader(event, id) {
|
|
252
|
-
if (!this.state["initCleader_" + id] || this.state["initCleader_" + id] == false) {
|
|
253
|
-
var t = this;
|
|
254
|
-
var calendar = document.getElementById(`calendar_ ${id}`);
|
|
255
|
-
if (calendar) {
|
|
256
|
-
var cld = new CalendarMobile({
|
|
257
|
-
el: 'box',
|
|
258
|
-
value: '', // 默认为new Date();
|
|
259
|
-
type: 1,
|
|
260
|
-
parentNode: calendar,
|
|
261
|
-
// fold: false,
|
|
262
|
-
fn: function (obj) {
|
|
263
|
-
// 日期选择后回调
|
|
264
|
-
var YY = obj.year;
|
|
265
|
-
var MM = obj.month >= 10 ? obj.month : "0" + obj.month;
|
|
266
|
-
var DD = obj.day >= 10 ? obj.day : "0" + obj.day;
|
|
267
|
-
var Date = YY + "-" + MM + "-" + DD;
|
|
268
|
-
t.showCalendarList(Date, event, id);
|
|
269
|
-
},
|
|
270
|
-
//点击上一个月
|
|
271
|
-
prevMonth: function (obj) {
|
|
272
|
-
},
|
|
273
|
-
//点击下一个月
|
|
274
|
-
nextMonth: function (obj) {
|
|
275
|
-
},
|
|
276
|
-
calendarInit: function (obj) {
|
|
277
|
-
var YY = obj.year;
|
|
278
|
-
var MM = obj.month >= 10 ? obj.month : "0" + obj.month;
|
|
279
|
-
var DD = obj.day >= 10 ? obj.day : "0" + obj.day;
|
|
280
|
-
var Date = YY + "-" + MM + "-" + DD;
|
|
281
|
-
t.showCalendarEvent(event);
|
|
282
|
-
t.showCalendarList(Date, event, id);
|
|
283
|
-
}
|
|
284
|
-
})
|
|
285
|
-
this.setState({ ["initCleader_" + id]: true });
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
//在日历上显示日程事件(显示点)
|
|
291
|
-
showCalendarEvent(dates, obj, t) {
|
|
292
|
-
var $span = $(".canChoose").find('span');
|
|
293
|
-
$span.removeClass('hasEvent');
|
|
294
|
-
// var dates = this.state.grrc.dateList
|
|
295
|
-
var dates = dates.dateList
|
|
296
|
-
if (dates) {
|
|
297
|
-
for (var i = 0; i < dates.length; i++) {
|
|
298
|
-
var date = new Date(dates[i]);
|
|
299
|
-
var day = date.getDate();
|
|
300
|
-
$span.eq(parseInt(day) - 1).addClass('hasEvent');
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
//显示日程信息
|
|
305
|
-
showCalendarList(Date, data, id) {
|
|
306
|
-
if (data.dataMap && data.dataMap[Date]) {
|
|
307
|
-
this.setState({
|
|
308
|
-
['grrc_list_' + id]: data.dataMap[Date]
|
|
309
|
-
});
|
|
310
|
-
} else {
|
|
311
|
-
this.setState({ ['grrc_list_' + id]: [] });
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
globalSearchChange(newValue) {
|
|
315
|
-
// this.setState({
|
|
316
|
-
// searchVal: newValue
|
|
317
|
-
// });
|
|
318
|
-
location.hash = "homepage/home/fullSearch";
|
|
319
|
-
}
|
|
320
|
-
globalSearchClick() {
|
|
321
|
-
var modelCode = this.state.modelCode;
|
|
322
|
-
var searchCondition = this.state.searchVal;
|
|
323
|
-
location.hash = "homepage/home/fullSearch/" + modelCode + '/' + searchCondition;
|
|
324
|
-
}
|
|
325
|
-
//跳转到语典
|
|
326
|
-
gotoYd() {
|
|
327
|
-
pageSkipDirectly(Variables.ydPath);
|
|
328
|
-
}
|
|
329
|
-
// 应用跳转
|
|
330
|
-
newPageSkip(dingUrl, wxUrl, mhUrl, cocallUrl, id) {
|
|
331
|
-
var dingVal = "DING";
|
|
332
|
-
var wxVal = "WX";
|
|
333
|
-
var mhVal = "MH";
|
|
334
|
-
DB.portal.saveAppCount({ mobileAppId: id }).then((content) => {
|
|
335
|
-
}).catch((err) => { console.log(err); })
|
|
336
|
-
|
|
337
|
-
var data = getLoginUserInfo();
|
|
338
|
-
var thirdMenuType = data.thirdMenuType;
|
|
339
|
-
if (thirdMenuType == dingVal) {
|
|
340
|
-
dd.biz.util.openLink({
|
|
341
|
-
url: dingUrl,//要打开链接的地址
|
|
342
|
-
onSuccess: function (result) {
|
|
343
|
-
/**/
|
|
344
|
-
},
|
|
345
|
-
onFail: function (err) { }
|
|
346
|
-
})
|
|
347
|
-
} else if (thirdMenuType == wxVal) {
|
|
348
|
-
window.open(wxUrl);
|
|
349
|
-
} else if (thirdMenuType == mhVal) {
|
|
350
|
-
window.location = mhUrl;
|
|
351
|
-
/**
|
|
352
|
-
emp.navigateTo({
|
|
353
|
-
url: mhUrl,//跳转地址
|
|
354
|
-
success: function () {
|
|
355
|
-
}, //跳转成功回调
|
|
356
|
-
error: function () {
|
|
357
|
-
} //跳转失败回调
|
|
358
|
-
}); */
|
|
359
|
-
} else {
|
|
360
|
-
window.location = dingUrl;
|
|
361
|
-
}
|
|
362
|
-
}
|
|
363
|
-
skipPage(url) {
|
|
364
|
-
var dingVal = "DING";
|
|
365
|
-
var wxVal = "WX";
|
|
366
|
-
var mhVal = "MH";
|
|
367
|
-
var data = getLoginUserInfo();
|
|
368
|
-
var thirdMenuType = data.thirdMenuType;
|
|
369
|
-
var urlComplete = data.contextPageUrl + "/" + url;
|
|
370
|
-
|
|
371
|
-
if (thirdMenuType == dingVal) {
|
|
372
|
-
dd.biz.util.openLink({
|
|
373
|
-
url: urlComplete,//要打开链接的地址
|
|
374
|
-
onSuccess: function (result) {
|
|
375
|
-
/**/
|
|
376
|
-
},
|
|
377
|
-
onFail: function (err) { }
|
|
378
|
-
})
|
|
379
|
-
} else if (thirdMenuType == wxVal) {
|
|
380
|
-
window.open(urlComplete);
|
|
381
|
-
} else if (thirdMenuType == mhVal) {
|
|
382
|
-
window.location = urlComplete;
|
|
383
|
-
} else {
|
|
384
|
-
window.location = urlComplete;
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
|
-
jumpPage(url) {
|
|
388
|
-
location.hash = url
|
|
389
|
-
}
|
|
390
|
-
//跳转到应用
|
|
391
|
-
skip2Project(code, pagePath) {
|
|
392
|
-
location.hash = pagePath
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
//跳转到专题
|
|
396
|
-
skip2Zhuanti(item) {
|
|
397
|
-
var code = item.data.props.code;
|
|
398
|
-
location.hash = "topicservice/" + code;
|
|
399
|
-
}
|
|
400
|
-
|
|
401
|
-
//跳转更多
|
|
402
|
-
skip2More(type) {
|
|
403
|
-
var url = "";
|
|
404
|
-
if (type == 'grhy') {//会议
|
|
405
|
-
url = getLoginUserInfo().context + '/mobile/modules/meeting/dist/index.html?&context=' + getLoginUserInfo().context + '&hasBottomTab=1';
|
|
406
|
-
pageSkipDirectly(url);
|
|
407
|
-
} else if (type == 'gryj') {//个人邮件
|
|
408
|
-
url = getLoginUserInfo().context + '/mobile/modules/mail/dist/index.html?&context=' + getLoginUserInfo().context + '&hasBottomTab=1&isPublic=0#/mail/home/1/';
|
|
409
|
-
pageSkipDirectly(url);
|
|
410
|
-
} else if (type == 'ggyj') {//公共邮件
|
|
411
|
-
url = getLoginUserInfo().context + '/mobile/modules/mail/dist/index.html?&context=' + getLoginUserInfo().context + '&hasBottomTab=1&isPublic=1#/mail/home/1/';
|
|
412
|
-
pageSkipDirectly(url);
|
|
413
|
-
} else if (type == 'lcfq') {//流程发起
|
|
414
|
-
location.hash = "officehall";
|
|
415
|
-
} else if (type == 'wdsx') {//我的事项
|
|
416
|
-
location.hash = "approval/all/5";
|
|
417
|
-
} else if (type == 'bssx') {//办事事项
|
|
418
|
-
location.hash = "officehall";
|
|
419
|
-
} else if (type == "jxzt") {
|
|
420
|
-
location.hash = "officehall";
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
}
|
|
424
|
-
|
|
425
|
-
//跳转到我的事项
|
|
426
|
-
skip2Process(itemInfo, param_list_type) {
|
|
427
|
-
console.log(itemInfo);
|
|
428
|
-
let param_processKey = itemInfo.processKey; // 流程类型code
|
|
429
|
-
let param_formKey = itemInfo.formKey; // 表单id
|
|
430
|
-
let param_businessKey = itemInfo.businessKey; // 表单数据id;
|
|
431
|
-
let param_startUserId = itemInfo.startUserId; // 流程发起人id
|
|
432
|
-
// let param_list_type = "5"; // 列表类型 待办-0,待阅-1,
|
|
433
|
-
let processName = itemInfo.processName; // 流程名称
|
|
434
|
-
let module = itemInfo.module; // 流程名称
|
|
435
|
-
let type = "all"; //self:本应用,all:全模块
|
|
436
|
-
let projectPath = "modules/mobilehall"; //项目路径
|
|
437
|
-
|
|
438
|
-
let taskId = '';
|
|
439
|
-
let processInstanceId = itemInfo.processInstanceId;
|
|
440
|
-
if (param_list_type == '2') {
|
|
441
|
-
taskId = itemInfo.taskId;
|
|
442
|
-
} else {
|
|
443
|
-
taskId = itemInfo.id;
|
|
444
|
-
}
|
|
445
|
-
var queryurl = "";
|
|
446
|
-
if (param_list_type == "5") {
|
|
447
|
-
queryurl = "?isDraft=1";
|
|
448
|
-
param_list_type = 0;
|
|
449
|
-
}
|
|
450
|
-
let loginUserId = getLoginUserInfo().userId;
|
|
451
|
-
// location.hash = 'approval/approval-details/detail-servlet/' + param_list_type + '/1/' + param_processKey + '/' + param_formKey + '/' +param_businessKey +
|
|
452
|
-
// '/' + param_startUserId;
|
|
453
|
-
// alert(searchVal);
|
|
454
|
-
if (type == "all") {
|
|
455
|
-
if (module == "hall_service") {
|
|
456
|
-
let url = "process/processDetails/" + taskId + "/" + param_formKey + "/" + param_businessKey + "/" + param_list_type + "/0/" + processInstanceId + "/" + module + "/" + loginUserId;
|
|
457
|
-
// if (searchVal != '') {
|
|
458
|
-
// url += "/" + searchVal;
|
|
459
|
-
// }
|
|
460
|
-
url = url + queryurl;
|
|
461
|
-
decodeURI(url);
|
|
462
|
-
location.hash = url;
|
|
463
|
-
} else {
|
|
464
|
-
let fullUrl = window.location.href;
|
|
465
|
-
var mobilePath = module;
|
|
466
|
-
if (module.indexOf("_") > 0) {
|
|
467
|
-
var category = module.split("_")[0];
|
|
468
|
-
mobilePath = module.substring(module.indexOf("_") + 1);
|
|
469
|
-
fullUrl = fullUrl.replace("/" + projectPath + "/", "/" + category + "/" + mobilePath + "/").split('?_')[0].split('/approval/all')[0];
|
|
470
|
-
} else {
|
|
471
|
-
fullUrl = fullUrl.replace("/" + projectPath + "/", "/modules/" + mobilePath + "/").split('?_')[0].split('/approval/all')[0];
|
|
472
|
-
}
|
|
473
|
-
//alert(fullUrl);
|
|
474
|
-
let url = "process/processDetails/" + taskId + "/" + param_formKey + "/" + param_businessKey + "/" + param_list_type + "/0/" + processInstanceId + "/" + module + "/" + loginUserId;
|
|
475
|
-
url = fullUrl + '/' + url;
|
|
476
|
-
url = url + queryurl;
|
|
477
|
-
decodeURI(url);
|
|
478
|
-
location.href = url;
|
|
479
|
-
}
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
|
|
483
|
-
// 区分个人邮件和公共邮件
|
|
484
|
-
handleChange(id, obj) {
|
|
485
|
-
|
|
486
|
-
var t = this;
|
|
487
|
-
console.log({
|
|
488
|
-
activeIndex: obj.active,
|
|
489
|
-
preActiveIndex: obj.preActive,
|
|
490
|
-
data: id
|
|
491
|
-
});
|
|
492
|
-
if (obj.active == '1') {
|
|
493
|
-
this.setState({
|
|
494
|
-
['activeIndex_ggyj_' + id]: true,
|
|
495
|
-
['activeIndex_gryj_' + id]: false
|
|
496
|
-
})
|
|
497
|
-
} else {
|
|
498
|
-
this.setState({
|
|
499
|
-
['activeIndex_gryj_' + id]: true,
|
|
500
|
-
['activeIndex_ggyj_' + id]: false
|
|
501
|
-
})
|
|
502
|
-
}
|
|
503
|
-
|
|
504
|
-
}
|
|
505
|
-
|
|
506
|
-
// 部件内容渲染处理函数
|
|
507
|
-
portalContent(item) {
|
|
508
|
-
let t = this;
|
|
509
|
-
let styleSetting = JSON.parse(item.styleSetting);
|
|
510
|
-
let personalSetting = JSON.parse(item.personalSetting);
|
|
511
|
-
let componentContent = <div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>;
|
|
512
|
-
let componentHead = '';
|
|
513
|
-
if (item.portletCode === 'banner') {
|
|
514
|
-
// 判断AI和menu
|
|
515
|
-
let isShowList = JSON.parse(item.personalSetting).bannerSet;
|
|
516
|
-
let styleSetting = JSON.parse(item.styleSetting);
|
|
517
|
-
let pathUrl = "";
|
|
518
|
-
let colNum = t.state.todoList.length > 0 ? t.state.todoList.length : 5;
|
|
519
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].bannerImg) {
|
|
520
|
-
let pathUrlId = t.state[item.portletCode + '_' + item.id].bannerImg;
|
|
521
|
-
pathUrl = localStorage.getItem('context') + '/api/m/plugin/attachment/mobile/viewImage?token=' + localStorage.getItem('token') + '&fid=' + pathUrlId;
|
|
522
|
-
} else {
|
|
523
|
-
pathUrl = t.state.pageImage;
|
|
524
|
-
}
|
|
525
|
-
componentContent = <div className={personalSetting.styleType == '1' ? "react-grid-banner react-grid-banner-type1" : "react-grid-banner react-grid-banner-type2"} >
|
|
526
|
-
<div className='react-grid-banner-img '>
|
|
527
|
-
<img src={pathUrl} onerror="this.src='../../../fmui/images/defaultHome.png';this.onerror=null" />
|
|
528
|
-
</div>
|
|
529
|
-
<div className='global-search'>
|
|
530
|
-
{/* <Filter hasMask={false} defaultValue={this.state.filterValue} options={filterOptions}
|
|
531
|
-
onConfirm={(data) => {
|
|
532
|
-
t.setState({
|
|
533
|
-
modelCode: data.sort[0].value
|
|
534
|
-
});
|
|
535
|
-
}}
|
|
536
|
-
/> */}
|
|
537
|
-
<TextField placeholder="请输入关键词进行搜索" value={t.state.searchVal} allowClear={false} onClick={(value) => { t.globalSearchChange(value); }}>
|
|
538
|
-
<RightAddon>
|
|
539
|
-
<i className='iconfont-ywtb icon-ywtb-sousuo1 t-P10' onClick={() => { t.globalSearchClick() }}></i>
|
|
540
|
-
</RightAddon>
|
|
541
|
-
</TextField>
|
|
542
|
-
<div className={isShowList.indexOf('AI') > -1 ? 't-FAC' : 't-DN'} onClick={() => { t.gotoYd() }}>
|
|
543
|
-
<i className='iconfont-ywtb icon-ywtb-zhineng'></i>
|
|
544
|
-
<div className='t-FS12 t-MT4'>智能客服</div>
|
|
545
|
-
</div>
|
|
546
|
-
</div>
|
|
547
|
-
<Grid col={colNum} className="dd-applist">
|
|
548
|
-
{
|
|
549
|
-
t.state.todoList.length > 0 && isShowList.indexOf('menu') > -1 ?
|
|
550
|
-
t.state.todoList.map(function (item) {
|
|
551
|
-
let todoInfo = projectMenuUrl.todoInfo[item];
|
|
552
|
-
return (
|
|
553
|
-
<div className={personalSetting.styleType == '1' ? "react-grid-banner react-grid-banner-type1" : "react-grid-banner react-grid-banner-type2"} onClick={t.skip2Project.bind(this, todoInfo.moduleCode, todoInfo.url)}>
|
|
554
|
-
<div className="react-grid-banner-item">
|
|
555
|
-
<Badge count={item == 'daiban' ? t.state.undo : ''} className={item + 'color'}>
|
|
556
|
-
<i className={'iconfont-ywtb ' + todoInfo.icon}></i>
|
|
557
|
-
</Badge>
|
|
558
|
-
</div>
|
|
559
|
-
<div className="menu-title t-FS14">{todoInfo.name}</div>
|
|
560
|
-
</div>
|
|
561
|
-
)
|
|
562
|
-
}.bind(this))
|
|
563
|
-
:
|
|
564
|
-
''
|
|
565
|
-
}
|
|
566
|
-
</Grid>
|
|
567
|
-
</div>
|
|
568
|
-
// backgroundImage直接判断有无会报错,单独return
|
|
569
|
-
{
|
|
570
|
-
return (<div className='react-grid-component banner' key={item.id} style={{
|
|
571
|
-
borderTopLeftRadius: styleSetting.otherSet.radius.topLeft + 'px',
|
|
572
|
-
borderTopRightRadius: styleSetting.otherSet.radius.topRight + 'px',
|
|
573
|
-
borderBottomLeftRadius: styleSetting.otherSet.radius.bottomLeft + 'px',
|
|
574
|
-
borderBottomRightRadius: styleSetting.otherSet.radius.bottomRight + 'px',
|
|
575
|
-
paddingLeft: styleSetting.otherSet.paddingSet.pl + 'px',
|
|
576
|
-
paddingright: styleSetting.otherSet.paddingSet.pr + 'px',
|
|
577
|
-
paddingTop: styleSetting.otherSet.paddingSet.pt + 'px',
|
|
578
|
-
paddingBottom: styleSetting.otherSet.paddingSet.pb + 'px',
|
|
579
|
-
backgroundColor: styleSetting.otherSet.bgColor,
|
|
580
|
-
}}>
|
|
581
|
-
{styleSetting.titleSet.titleStatus == 1 ? componentHead : ''}
|
|
582
|
-
{componentContent}
|
|
583
|
-
</div>);
|
|
584
|
-
}
|
|
585
|
-
}
|
|
586
|
-
if (item.portletCode === 'cyyy') {
|
|
587
|
-
componentContent = <div className={personalSetting.styleType == '1' ? 'react-app-collect react-app-collect-type1' : 'react-app-collect react-app-collect-type2'}>
|
|
588
|
-
{/* <p className="rightMore">更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p> */}
|
|
589
|
-
<Tab activeKey={'0'}>
|
|
590
|
-
<Tab.Item title={<div style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>常用应用</div>}>
|
|
591
|
-
{t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0 ?
|
|
592
|
-
<Grid col={personalSetting.cols * 1} className={t.state.showcyyy ? '' : 't-DN'}>
|
|
593
|
-
{
|
|
594
|
-
t.state[item.portletCode + '_' + item.id].map(function (ele) {
|
|
595
|
-
return (
|
|
596
|
-
<div className='systemItem' onClick={t.newPageSkip.bind(t, ele.dingUrl, ele.wxUrl, ele.mhUrl, ele.cocallUrl, ele.id)}>
|
|
597
|
-
<div className={'iconblock t-iconBC' + ele.iconColor}>
|
|
598
|
-
<Badge count={ele.name == '会议' ? t.state.toBeAttendedCount * 1 : ele.name == '审批' ? t.state.approveundo : ele.name == '公共邮箱' ? t.state.unreadPubMailCount * 1 : ele.name == '邮件' ? t.state.unreadMailCount : ''} >
|
|
599
|
-
<i className={'iconfont-ywtb icon-ywtb-' + ele.icon}></i>
|
|
600
|
-
</Badge>
|
|
601
|
-
|
|
602
|
-
{/* <i className={'iconfont-ywtb icon-ywtb-' + ele.icon}></i> */}
|
|
603
|
-
</div>
|
|
604
|
-
<p className='text t-omit t-PT2 t-LH2'>{ele.name}</p>
|
|
605
|
-
</div>
|
|
606
|
-
)
|
|
607
|
-
})
|
|
608
|
-
|
|
609
|
-
}
|
|
610
|
-
<div className={t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0 ? 'systemItem' : 't-DN'} onClick={t.jumpPage.bind(this, "/apppage/1", personalSetting.cols * 1, item.id)}>
|
|
611
|
-
<div className='iconblock t-gengduo'><i className={'iconfont-ywtb' + ' icon-ywtb-gengduo'}></i></div>
|
|
612
|
-
<p className='text t-omit t-PT2 t-LH2'>更多</p>
|
|
613
|
-
</div>
|
|
614
|
-
</Grid>
|
|
615
|
-
:
|
|
616
|
-
<div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>
|
|
617
|
-
}
|
|
618
|
-
</Tab.Item>
|
|
619
|
-
<Tab.Item title={<div style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>我的收藏</div>}>
|
|
620
|
-
{t.state['wdsc' + '_' + item.id] && t.state['wdsc' + '_' + item.id].length > 0 ?
|
|
621
|
-
<Grid col={personalSetting.cols * 1}>
|
|
622
|
-
{
|
|
623
|
-
t.state['wdsc' + '_' + item.id].map(function (ele) {
|
|
624
|
-
return (
|
|
625
|
-
<div className='systemItem' onClick={t.newPageSkip.bind(t, ele.dingUrl, ele.wxUrl, ele.mhUrl, ele.cocallUrl, ele.id)}>
|
|
626
|
-
<div className={'iconblock t-iconBC' + ele.iconColor}>
|
|
627
|
-
<Badge count={ele.name == '会议' ? t.state.toBeAttendedCount * 1 : ele.name == '审批' ? t.state.approveundo : ele.name == '公共邮箱' ? t.state.unreadPubMailCount * 1 : ele.name == '邮件' ? t.state.unreadMailCount : ''} >
|
|
628
|
-
<i className={'iconfont-ywtb icon-ywtb-' + ele.icon}></i>
|
|
629
|
-
</Badge>
|
|
630
|
-
</div>
|
|
631
|
-
<p className='text t-omit t-PT2 t-LH2'>{ele.name}</p>
|
|
632
|
-
</div>
|
|
633
|
-
)
|
|
634
|
-
})
|
|
635
|
-
|
|
636
|
-
}
|
|
637
|
-
<div className='systemItem' onClick={t.jumpPage.bind(this, "/appCollect")}>
|
|
638
|
-
<div className='iconblock t-gengduo'><i className={'iconfont-ywtb' + ' icon-ywtb-gengduo'}></i></div>
|
|
639
|
-
<p className='text t-omit t-PT2 t-LH2'>更多</p>
|
|
640
|
-
</div>
|
|
641
|
-
</Grid>
|
|
642
|
-
:
|
|
643
|
-
<div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>}
|
|
644
|
-
</Tab.Item>
|
|
645
|
-
</Tab>
|
|
646
|
-
</div>
|
|
647
|
-
}
|
|
648
|
-
if (item.portletCode === 'bssx') {
|
|
649
|
-
let bssxShowList = personalSetting.codes;
|
|
650
|
-
// let styleSetting = JSON.parse(item.styleSetting)
|
|
651
|
-
|
|
652
|
-
var commonList = '';
|
|
653
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
654
|
-
if (t.state[item.portletCode + '_' + item.id].common && t.state[item.portletCode + '_' + item.id].common.length > 0) {
|
|
655
|
-
commonList = t.state[item.portletCode + '_' + item.id].common.map(function (item) {
|
|
656
|
-
return (
|
|
657
|
-
<div className='banshi-item' onClick={() => { history.push('/officeguid' + `?id=${item.id}&code=${item.code}`) }}>
|
|
658
|
-
<div className='title'>{item.name}</div>
|
|
659
|
-
{/* <div className='describe t-omit'>{item.categoryName}</div> */}
|
|
660
|
-
<i className={'iconfont-ywtb icon-ywtb-' + item.icon + ' bg'}></i>
|
|
661
|
-
<i className={'iconfont-ywtb icon-ywtb-' + item.icon + ' ic'}></i>
|
|
662
|
-
</div>
|
|
663
|
-
)
|
|
664
|
-
});
|
|
665
|
-
} else {
|
|
666
|
-
commonList = <div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>;
|
|
667
|
-
}
|
|
668
|
-
|
|
669
|
-
}
|
|
670
|
-
var colectionList = '';
|
|
671
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
672
|
-
if (t.state[item.portletCode + '_' + item.id].colection && t.state[item.portletCode + '_' + item.id].colection.length > 0) {
|
|
673
|
-
colectionList = t.state[item.portletCode + '_' + item.id].colection.map(function (item) {
|
|
674
|
-
return (
|
|
675
|
-
<div className='banshi-item' onClick={() => { history.push('/officeguid' + `?id=${item.id}&code=${item.code}`) }}>
|
|
676
|
-
<div className='title t-omit'>{item.name}</div>
|
|
677
|
-
<div className='describe t-omit'>{item.categoryName}</div>
|
|
678
|
-
<i className={'iconfont-ywtb icon-ywtb-' + item.icon + ' bg'}></i>
|
|
679
|
-
<i className={'iconfont-ywtb icon-ywtb-' + item.icon + ' ic'}></i>
|
|
680
|
-
</div>
|
|
681
|
-
)
|
|
682
|
-
});
|
|
683
|
-
} else {
|
|
684
|
-
colectionList = <div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>;
|
|
685
|
-
}
|
|
686
|
-
}
|
|
687
|
-
var bssxCommonTab = '';
|
|
688
|
-
if (bssxShowList.indexOf('common') > -1) {
|
|
689
|
-
bssxCommonTab = <Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>常用事项</div>} key={0} >
|
|
690
|
-
<div className='banshi-list'>{commonList}</div>
|
|
691
|
-
</Tab.Item>
|
|
692
|
-
}
|
|
693
|
-
var bssxColectionTab = '';
|
|
694
|
-
if (bssxShowList.indexOf('colection') > -1) {
|
|
695
|
-
bssxColectionTab = <Tab.Item key={1} title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>我的收藏</div>}>
|
|
696
|
-
<div className='banshi-list'>{colectionList}</div>
|
|
697
|
-
</Tab.Item>
|
|
698
|
-
}
|
|
699
|
-
componentContent = <div className=''>
|
|
700
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.jumpPage.bind(this, "/officehall")}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>
|
|
701
|
-
<Tab activeKey={bssxShowList.indexOf('common') > -1 ? "0" : "1"}>{bssxCommonTab}{bssxColectionTab}</Tab>
|
|
702
|
-
</div>
|
|
703
|
-
}
|
|
704
|
-
if (item.portletCode === 'ttxx') {
|
|
705
|
-
var carouselItem = '';
|
|
706
|
-
var carouselList = '';
|
|
707
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
708
|
-
let tDiv = document.createElement('div');
|
|
709
|
-
var ttxxImgUrl = "../../../fmui/images/ywtb/notice-card-bg.png";
|
|
710
|
-
carouselItem = t.state[item.portletCode + '_' + item.id].map(function (item) {
|
|
711
|
-
if (item.infoList.length > 0) {
|
|
712
|
-
tDiv.innerHTML = item.infoList[0].content
|
|
713
|
-
var text = tDiv.innerText
|
|
714
|
-
return (
|
|
715
|
-
<Carousel.Item style={{ backgroundImage: `url(${ttxxImgUrl})` }}>
|
|
716
|
-
<div className='notice-card-head' >
|
|
717
|
-
<span>{item.infoList[0].columnName}</span>
|
|
718
|
-
<Button type='custom' onClick={t.jumpPage.bind(this, "/channelDetail/" + item.channelId + '/' + item.columnId + '/' + item.columnName)}>更多</Button>
|
|
719
|
-
</div>
|
|
720
|
-
<div onClick={t.jumpPage.bind(this, "/infodetail/" + item.infoList[0].id)}>
|
|
721
|
-
<strong className='t-FS14 t-omit2 t-LH1_3 t-MB10'>{item.infoList[0].title}</strong>
|
|
722
|
-
<p className='t-FS14 t-FCgrey t-omit2 t-LH1_5 t-MB10'>{text}</p>
|
|
723
|
-
<p className='t-FS12 t-FCgrey'>{item.infoList[0].createdDate}</p>
|
|
724
|
-
</div>
|
|
725
|
-
</Carousel.Item>
|
|
726
|
-
)
|
|
727
|
-
}
|
|
728
|
-
})
|
|
729
|
-
carouselList = carouselItem.filter(carouselItem => typeof carouselItem !== 'undefined');
|
|
730
|
-
}
|
|
731
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
732
|
-
componentContent = <div className='componentBox'>
|
|
733
|
-
<div className='notice-card'>
|
|
734
|
-
<Carousel showNav auto height="180px" className="carousel-notice">{carouselList}</Carousel>
|
|
735
|
-
</div>
|
|
736
|
-
</div>
|
|
737
|
-
}
|
|
738
|
-
}
|
|
739
|
-
if (item.portletCode === 'xwzx') {
|
|
740
|
-
var xwzxContent = '';
|
|
741
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
742
|
-
xwzxContent = t.state[item.portletCode + '_' + item.id].map(function (item) {
|
|
743
|
-
const infoList = item.infoList.map(function (infoItem) {
|
|
744
|
-
let imgSrc = "";
|
|
745
|
-
let imgIdList = 0;
|
|
746
|
-
if (infoItem.imgId) {
|
|
747
|
-
imgIdList = infoItem.imgId.split('|');
|
|
748
|
-
}
|
|
749
|
-
if (imgIdList.length >= 3) {
|
|
750
|
-
let imgSrc1 = context + "/api/m/plugin/attachment/mobile/viewImage?fid=" + imgIdList[0] + "&token=" + getLoginUserInfo().token;
|
|
751
|
-
let imgSrc2 = context + "/api/m/plugin/attachment/mobile/viewImage?fid=" + imgIdList[1] + "&token=" + getLoginUserInfo().token;
|
|
752
|
-
let imgSrc3 = context + "/api/m/plugin/attachment/mobile/viewImage?fid=" + imgIdList[2] + "&token=" + getLoginUserInfo().token;
|
|
753
|
-
return (
|
|
754
|
-
<div className='infoList3' onClick={t.jumpPage.bind(this, "/infodetail/" + infoItem.id)}>
|
|
755
|
-
<div className='infoContent'>
|
|
756
|
-
<p>{infoItem.title}</p>
|
|
757
|
-
<div className='infoPics'>
|
|
758
|
-
<img src={imgSrc1}></img>
|
|
759
|
-
<img src={imgSrc2}></img>
|
|
760
|
-
<img src={imgSrc3}></img>
|
|
761
|
-
</div>
|
|
762
|
-
<p className="t-FS14">
|
|
763
|
-
<i className={infoItem.isTop == "1" ? "iconfont icon-istop t-FS14 t-FCddblue t-MR6" : "t-DN"}></i>
|
|
764
|
-
<img className={infoItem.isEssence == "1" ? "" : "t-DN"}></img>
|
|
765
|
-
<span className="t-FB1 t-omit" style={{ maxWidth: "115px" }}>{infoItem.columnName}</span>
|
|
766
|
-
<span>{infoItem.publishDate}</span>
|
|
767
|
-
</p>
|
|
768
|
-
</div>
|
|
769
|
-
</div>
|
|
770
|
-
)
|
|
771
|
-
} else {
|
|
772
|
-
if (infoItem.imgId) {
|
|
773
|
-
imgSrc = context + "/api/m/plugin/attachment/mobile/viewImage?fid=" + imgIdList[0] + "&token=" + getLoginUserInfo().token;
|
|
774
|
-
}
|
|
775
|
-
return (
|
|
776
|
-
<div className='infoList' onClick={t.jumpPage.bind(this, "/infodetail/" + infoItem.id)}>
|
|
777
|
-
<div className='infoContent'>
|
|
778
|
-
<div className={imgSrc ? "imgContent" : "t-DN"} >
|
|
779
|
-
<img src={imgSrc}></img>
|
|
780
|
-
</div>
|
|
781
|
-
<div className='t-FB1'>
|
|
782
|
-
<p>{infoItem.title}</p>
|
|
783
|
-
<p className="t-FS14">
|
|
784
|
-
<i className={infoItem.isTop == "1" ? "iconfont icon-istop t-FS14 t-FCddblue t-MR6" : "t-DN"}></i>
|
|
785
|
-
<img className={infoItem.isEssence == "1" ? "" : "t-DN"} ></img>
|
|
786
|
-
<span className="t-FB1 t-omit" style={{ maxWidth: "115px" }}>{infoItem.columnName}</span>
|
|
787
|
-
<span>{infoItem.publishDate}</span>
|
|
788
|
-
</p>
|
|
789
|
-
</div>
|
|
790
|
-
</div>
|
|
791
|
-
</div>
|
|
792
|
-
)
|
|
793
|
-
}
|
|
794
|
-
})
|
|
795
|
-
return (
|
|
796
|
-
<Tab.Item title={<div style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.columnName}</div>} key={item.columnId}>
|
|
797
|
-
{item.infoList.length > 0 ?
|
|
798
|
-
<div className="">{infoList}
|
|
799
|
-
<div className='info-more-btn' onClick={t.jumpPage.bind(this, "/channelDetail/" + item.channelId + '/' + item.columnId + '/' + item.columnName)}>
|
|
800
|
-
查看更多
|
|
801
|
-
</div>
|
|
802
|
-
</div>
|
|
803
|
-
:
|
|
804
|
-
<img className="t-W100 t-PL10 t-PR10 t-MT16" src="../../../fmui/images/home/nodata.png" />
|
|
805
|
-
}
|
|
806
|
-
</Tab.Item>
|
|
807
|
-
)
|
|
808
|
-
});
|
|
809
|
-
}
|
|
810
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
811
|
-
componentContent = <Tab activeKey={t.state[item.portletCode + '_' + item.id][0].columnId} pageSize={4} showExpandAll={false} speed={2} >
|
|
812
|
-
{xwzxContent}
|
|
813
|
-
</Tab>
|
|
814
|
-
}
|
|
815
|
-
}
|
|
816
|
-
if (item.portletCode === 'gryj') {
|
|
817
|
-
|
|
818
|
-
let gryjShowList = personalSetting.mailMenu;
|
|
819
|
-
var gryjContent = '';
|
|
820
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
821
|
-
if (t.state[item.portletCode + '_' + item.id].data.personList && t.state[item.portletCode + '_' + item.id].data.personList.length > 0) {
|
|
822
|
-
gryjContent = t.state[item.portletCode + '_' + item.id].data.personList.map(function (item) {
|
|
823
|
-
return (
|
|
824
|
-
<div className='list-item ' onClick={t.skipPage.bind(this, 'mobile/modules/mail/dist/index.html?context=' + context + '&contextPath=flex&isPublic=0#/mail/details/' + item.mailId + '/1/0/undefined/undefined/undefined/1')}>
|
|
825
|
-
<div className={item.isRead == "false" ? "item-label label-special" : "t-DN"}>未读</div>
|
|
826
|
-
<div className='item-title'>{item.theme}</div>
|
|
827
|
-
<div className='item-content'>
|
|
828
|
-
<div className='content t-FCddfontblue-60 t-FS12'>
|
|
829
|
-
<span className='t-MR12'>{item.sendTime}</span><span>申请人:</span><span>{item.sendUserName}</span>
|
|
830
|
-
</div>
|
|
831
|
-
<a className='more'><i className='iconfont icon-right-arrow t-FCddfontblue-60'></i></a>
|
|
832
|
-
</div>
|
|
833
|
-
</div>
|
|
834
|
-
)
|
|
835
|
-
});
|
|
836
|
-
} else {
|
|
837
|
-
gryjContent = <div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>;
|
|
838
|
-
}
|
|
839
|
-
|
|
840
|
-
}
|
|
841
|
-
var ggyjContent = '';
|
|
842
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
843
|
-
if (t.state[item.portletCode + '_' + item.id].data.publicList && t.state[item.portletCode + '_' + item.id].data.publicList.length > 0) {
|
|
844
|
-
ggyjContent = t.state[item.portletCode + '_' + item.id].data.publicList.map(function (item) {
|
|
845
|
-
return (
|
|
846
|
-
<div className='list-item' onClick={t.skipPage.bind(this, 'mobile/modules/mail/dist/index.html?context=' + context + '&contextPath=flex&isPublic=1#/mail/details/' + item.mailId + '/1/0/undefined/undefined/undefined/1')}>
|
|
847
|
-
<div className={item.isRead == "false" ? "item-label label-special" : "t-DN"}>未读</div>
|
|
848
|
-
<div className='item-title'>{item.theme}</div>
|
|
849
|
-
<div className='item-content'>
|
|
850
|
-
<div className='content t-FCddfontblue-60 t-FS12'>
|
|
851
|
-
<span className='t-MR12'>{item.sendTime}</span><span>申请人:</span><span>{item.sendUserName}</span>
|
|
852
|
-
</div>
|
|
853
|
-
<a className='more'><i className='iconfont icon-right-arrow t-FCddfontblue-60'></i></a>
|
|
854
|
-
</div>
|
|
855
|
-
</div>
|
|
856
|
-
)
|
|
857
|
-
});
|
|
858
|
-
} else {
|
|
859
|
-
ggyjContent = <div><img className="t-W100 t-PL10 t-PR10" src="../../../fmui/images/home/nodata.png" /></div>;
|
|
860
|
-
}
|
|
861
|
-
}
|
|
862
|
-
var personMailTab = '';
|
|
863
|
-
if (gryjShowList.indexOf('personMail') > -1) {
|
|
864
|
-
var personMailTab = <Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>个人邮箱</div>} key="0"><div className='list-RT-label t-MT16'>{gryjContent}</div></Tab.Item>;
|
|
865
|
-
}
|
|
866
|
-
if (gryjShowList.indexOf('commonMail') > -1) {
|
|
867
|
-
var publicMailTab = <Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>公共邮箱</div>} key="1"><div className='list-RT-label t-MT16'>{ggyjContent}</div></Tab.Item>
|
|
868
|
-
}
|
|
869
|
-
componentContent = <div class="">
|
|
870
|
-
{t.state['activeIndex_ggyj_' + item.id] && t.state['activeIndex_ggyj_' + item.id] === true ? <p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, 'ggyj')}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p> :
|
|
871
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, 'gryj')}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>}
|
|
872
|
-
|
|
873
|
-
<Tab activeKey={gryjShowList.indexOf('personMail') > -1 ? "0" : "1"} onChange={t.handleChange.bind(this, item.id)}>{personMailTab}{publicMailTab}</Tab>
|
|
874
|
-
</div>
|
|
875
|
-
|
|
876
|
-
}
|
|
877
|
-
if (item.portletCode === 'grrc') {
|
|
878
|
-
componentHead = <div>
|
|
879
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
880
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
881
|
-
</Tab>
|
|
882
|
-
</div>
|
|
883
|
-
var grrcContent = ''
|
|
884
|
-
if (t.state['grrc_list_' + item.id]) {
|
|
885
|
-
grrcContent = t.state['grrc_list_' + item.id].map(function (item) {
|
|
886
|
-
var completed = false;
|
|
887
|
-
if (item.startTime) {
|
|
888
|
-
var date = new Date(item.startTime.replace(/-/g, '/'));
|
|
889
|
-
var H = date.getHours();
|
|
890
|
-
var M = date.getMinutes();
|
|
891
|
-
if (H < 10) {
|
|
892
|
-
H = "0" + H;
|
|
893
|
-
}
|
|
894
|
-
if (M < 10) {
|
|
895
|
-
M = "0" + M;
|
|
896
|
-
}
|
|
897
|
-
var time = H + ":" + M;
|
|
898
|
-
var now = new Date();
|
|
899
|
-
if (date < now) { //过去时
|
|
900
|
-
completed = true
|
|
901
|
-
}
|
|
902
|
-
}
|
|
903
|
-
return (
|
|
904
|
-
<HBox className={completed ? 'rc-item t-PR rc-completed' : 'rc-item t-PR'} vAlign="center">
|
|
905
|
-
<Box className='rc-item-time'>{time}</Box>
|
|
906
|
-
<Box className='rc-item-time-line'><i className='iconfont-ywtb icon-ywtb-fuhao'></i></Box>
|
|
907
|
-
<Box flex={1} className='rc-item-title t-omit'>{item.title}</Box>
|
|
908
|
-
</HBox>
|
|
909
|
-
)
|
|
910
|
-
});
|
|
911
|
-
}
|
|
912
|
-
|
|
913
|
-
let calendarDom = <div id={`calendar_ ${item.id}`}></div>
|
|
914
|
-
var grrcList = '';
|
|
915
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
916
|
-
grrcList = <div className='rc-list'>{grrcContent}</div>
|
|
917
|
-
}
|
|
918
|
-
componentContent = <div>{calendarDom}{grrcList}</div>
|
|
919
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
920
|
-
setTimeout(() => {
|
|
921
|
-
t.initCleader(t.state[item.portletCode + '_' + item.id], item.id)
|
|
922
|
-
}, 600)
|
|
923
|
-
}
|
|
924
|
-
}
|
|
925
|
-
if (item.portletCode === 'grhy') {
|
|
926
|
-
var grhyContent = ''
|
|
927
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
928
|
-
grhyContent = t.state[item.portletCode + '_' + item.id].data.map(function (item) {
|
|
929
|
-
return (
|
|
930
|
-
<div className='meetingCard'>
|
|
931
|
-
<div className="lineTop"></div>
|
|
932
|
-
<div className='meetingBg'>
|
|
933
|
-
<div className='meetingContent' onClick={t.skipPage.bind(this, 'mobile/modules/meeting/dist/index.html?context=' + context + '&hasBottomTab=1#/meeting/myMeetingDetails/' + item.applyRecordid + '/myReceived')}>
|
|
934
|
-
<div className='meetingTitle'>
|
|
935
|
-
<p className="t-omit t-LH1_6">{item.applyRecordName}</p>
|
|
936
|
-
</div>
|
|
937
|
-
<div className='meetingTime'>
|
|
938
|
-
<div className='meetingDate'>
|
|
939
|
-
<i className="iconfont icon-shijian1 t-FS14"></i>
|
|
940
|
-
<span className='t-ML6'>{item.week}</span>
|
|
941
|
-
<span className='t-ML10'>{item.startDate}</span>
|
|
942
|
-
</div>
|
|
943
|
-
<div className='timeTitle'>
|
|
944
|
-
<p>开始时间</p>
|
|
945
|
-
<p>结束时间</p>
|
|
946
|
-
</div>
|
|
947
|
-
<div className='time'>
|
|
948
|
-
<li>{item.sTime}</li>
|
|
949
|
-
<li>
|
|
950
|
-
<p>{item.durationTime}</p>
|
|
951
|
-
</li>
|
|
952
|
-
<li>{item.eTime}</li>
|
|
953
|
-
</div>
|
|
954
|
-
<div className='location'>
|
|
955
|
-
<i className="iconfont icon-dizhi t-FS14"></i>
|
|
956
|
-
<span className='t-ML6'>{item.meetingAddress}</span>
|
|
957
|
-
</div>
|
|
958
|
-
</div>
|
|
959
|
-
</div>
|
|
960
|
-
<img src="../../../fmui/images/home/start.png" className="startIcon"></img>
|
|
961
|
-
{/* <img src="../../../fmui/images/home/line.png" className="lineTop"></img> */}
|
|
962
|
-
</div>
|
|
963
|
-
</div>
|
|
964
|
-
)
|
|
965
|
-
});
|
|
966
|
-
}
|
|
967
|
-
componentHead = <div className=''>
|
|
968
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, item.portletCode)}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>
|
|
969
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
970
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
971
|
-
</Tab>
|
|
972
|
-
</div>
|
|
973
|
-
|
|
974
|
-
if (t.state[item.portletCode + '_' + item.id]) {
|
|
975
|
-
if (t.state[item.portletCode + '_' + item.id].data.length > 0) {
|
|
976
|
-
componentContent = grhyContent
|
|
977
|
-
}
|
|
978
|
-
}
|
|
979
|
-
}
|
|
980
|
-
if (item.portletCode === 'lcfq') {
|
|
981
|
-
componentHead = <div className=''>
|
|
982
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, item.portletCode)}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>
|
|
983
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
984
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
985
|
-
</Tab>
|
|
986
|
-
</div>
|
|
987
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
988
|
-
// 文字模式
|
|
989
|
-
if (personalSetting.styleType == '1') {
|
|
990
|
-
componentContent = <Grid col={personalSetting.cols * 1} className='sxbl_buttons'>
|
|
991
|
-
{t.state[item.portletCode + '_' + item.id].map(function (item) {
|
|
992
|
-
return <button onClick={() => { history.push('/officeguid' + `?id=${item.id}&code=${item.code}`) }}>{item.name}</button>
|
|
993
|
-
})}
|
|
994
|
-
</Grid>
|
|
995
|
-
}
|
|
996
|
-
|
|
997
|
-
if (personalSetting.styleType == '2') {
|
|
998
|
-
// 卡片模式
|
|
999
|
-
componentContent = <Grid col={personalSetting.cols * 1} className='lcfq-list'>
|
|
1000
|
-
{t.state[item.portletCode + '_' + item.id].map(function (item) {
|
|
1001
|
-
return <div className='lcfq-list-item' onClick={() => { history.push('/officeguid' + `?id=${item.id}&code=${item.code}`) }}>
|
|
1002
|
-
<div className='lcfq-list-item-icon'>
|
|
1003
|
-
{/* <i className={'iconfont-ywtb icon-ywtb-' + item.icon}></i> */}
|
|
1004
|
-
<i className={"iconfont-ywtb icon-ywtb-" + item.icon} ></i>
|
|
1005
|
-
</div>
|
|
1006
|
-
<div className='lcfq-list-item-text'>
|
|
1007
|
-
{item.name}
|
|
1008
|
-
</div>
|
|
1009
|
-
</div>
|
|
1010
|
-
})}
|
|
1011
|
-
</Grid>
|
|
1012
|
-
}
|
|
1013
|
-
}
|
|
1014
|
-
|
|
1015
|
-
}
|
|
1016
|
-
if (item.portletCode === 'tbgl') {
|
|
1017
|
-
componentHead = <div>
|
|
1018
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
1019
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
1020
|
-
</Tab>
|
|
1021
|
-
</div>
|
|
1022
|
-
|
|
1023
|
-
componentContent = <Chart portalId={item.id} height={'100%'} hasTitle={styleSetting.titleSet.titleStatus == 1} />;
|
|
1024
|
-
}
|
|
1025
|
-
if (item.portletCode === 'wdsx') {
|
|
1026
|
-
componentHead = <div>
|
|
1027
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, item.portletCode)}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>
|
|
1028
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
1029
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
1030
|
-
</Tab>
|
|
1031
|
-
</div>
|
|
1032
|
-
let wdsxList = ''
|
|
1033
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
1034
|
-
wdsxList = t.state[item.portletCode + '_' + item.id].map(function (item) {
|
|
1035
|
-
return <div className='list-item' onClick={t.skip2Process.bind(t, item, 4)}>
|
|
1036
|
-
{/* <div className={item.isRead == "false" ? "item-label label-special" : "t-DN"}>未读</div> */}
|
|
1037
|
-
<div className='item-content'>
|
|
1038
|
-
<div className='item-title'>{item.title}</div>
|
|
1039
|
-
<div className='content t-FCddfontblue-60 t-FS12'>
|
|
1040
|
-
<span className='t-MR12'>{item.createTime}</span><span>申请人:</span><span>{item.startUserName}</span>
|
|
1041
|
-
</div>
|
|
1042
|
-
</div>
|
|
1043
|
-
<a className='more'><i className='iconfont icon-right-arrow t-FCddfontblue-60'></i></a>
|
|
1044
|
-
</div>
|
|
1045
|
-
})
|
|
1046
|
-
componentContent = <div className='list-RT-label wdsx-list'>{wdsxList}</div>
|
|
1047
|
-
}
|
|
1048
|
-
}
|
|
1049
|
-
if (item.portletCode === 'jxzt') {
|
|
1050
|
-
componentHead = <div>
|
|
1051
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, item.portletCode)}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>
|
|
1052
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
1053
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
1054
|
-
</Tab>
|
|
1055
|
-
</div>
|
|
1056
|
-
|
|
1057
|
-
let carouselItem = ''
|
|
1058
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
1059
|
-
|
|
1060
|
-
carouselItem = t.state[item.portletCode + '_' + item.id].map(function (item) {
|
|
1061
|
-
let imgUrlPath = localStorage.getItem('context') + '/api/m/plugin/attachment/mobile/viewImage?token=' + localStorage.getItem('token') + '&fid=' + item.imgUrl;
|
|
1062
|
-
|
|
1063
|
-
return <Carousel.Item title="标题" code={item.code} className="t-image-slide-item t-R10" style={{ backgroundImage: `url(${imgUrlPath})` }}>
|
|
1064
|
-
{/* <p className="t-FS20 t-PT20 t-MB10" style={{ textAlign: 'center' }}>{item.name}</p> */}
|
|
1065
|
-
{/* <span className="t-FCf t-MT10 t-FS16 t-ML20">随便写点东西</span> */}
|
|
1066
|
-
</Carousel.Item>
|
|
1067
|
-
})
|
|
1068
|
-
}
|
|
1069
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].length > 0) {
|
|
1070
|
-
componentContent = <Carousel showNav auto={false} className='jxzt-content' onSlideClick={(option) => { t.skip2Zhuanti(option) }}>{carouselItem}</Carousel>
|
|
1071
|
-
}
|
|
1072
|
-
|
|
1073
|
-
}
|
|
1074
|
-
if (item.portletCode === 'image') {
|
|
1075
|
-
let tppathUrl = "";
|
|
1076
|
-
let tpUrlId = "";
|
|
1077
|
-
componentHead = <div>
|
|
1078
|
-
<p className={styleSetting.titleSet.titleStatus == 1 && styleSetting.otherSet.toolbarShow == 1 ? "rightMore" : 't-DN'} onClick={t.skip2More.bind(this, item.portletCode)}>更多<i className="iconfont-ywtb icon-ywtb-tiaozhuan"></i></p>
|
|
1079
|
-
<Tab activeKey={'0'} className="t-MB16">
|
|
1080
|
-
<Tab.Item title={<div className="" style={{ color: styleSetting.titleSet.titleColor, fontWeight: styleSetting.titleSet.titleWeight == 1 ? 700 : '', fontSize: styleSetting.titleSet.titleSize, }}>{item.title}</div>} key="0"></Tab.Item>
|
|
1081
|
-
</Tab>
|
|
1082
|
-
</div>
|
|
1083
|
-
if (t.state[item.portletCode + '_' + item.id] && t.state[item.portletCode + '_' + item.id].imgId) {
|
|
1084
|
-
tpUrlId = t.state[item.portletCode + '_' + item.id].imgId;
|
|
1085
|
-
tppathUrl = localStorage.getItem('context') + '/api/m/plugin/attachment/mobile/viewImage?token=' + localStorage.getItem('token') + '&fid=' + tpUrlId;
|
|
1086
|
-
componentContent = <div className='tp-content'>
|
|
1087
|
-
<img src={tppathUrl} alt="" />
|
|
1088
|
-
</div>
|
|
1089
|
-
}
|
|
1090
|
-
}
|
|
1091
|
-
return (<div className={styleSetting.titleSet.titleStatus == 1 ? 'react-grid-component component-bssx' : 'react-grid-component noTitle'} key={item.id} style={{
|
|
1092
|
-
borderTopLeftRadius: styleSetting.otherSet.radius.topLeft + 'px',
|
|
1093
|
-
borderTopRightRadius: styleSetting.otherSet.radius.topRight + 'px',
|
|
1094
|
-
borderBottomLeftRadius: styleSetting.otherSet.radius.bottomLeft + 'px',
|
|
1095
|
-
borderBottomRightRadius: styleSetting.otherSet.radius.bottomRight + 'px',
|
|
1096
|
-
paddingLeft: styleSetting.otherSet.paddingSet.pl + 'px',
|
|
1097
|
-
paddingright: styleSetting.otherSet.paddingSet.pr + 'px',
|
|
1098
|
-
paddingTop: styleSetting.otherSet.paddingSet.pt + 'px',
|
|
1099
|
-
paddingBottom: styleSetting.otherSet.paddingSet.pb + 'px',
|
|
1100
|
-
backgroundColor: styleSetting.otherSet.bgColor,
|
|
1101
|
-
}}>
|
|
1102
|
-
{styleSetting.titleSet.titleStatus == 1 ? componentHead : ''}
|
|
1103
|
-
{componentContent}
|
|
1104
|
-
</div>);
|
|
1105
|
-
}
|
|
1106
|
-
|
|
1107
|
-
// 下拉刷新
|
|
1108
|
-
onRefresh() {
|
|
1109
|
-
// debugger;
|
|
1110
|
-
this.setState({ refreshing: true });
|
|
1111
|
-
this.initPage();
|
|
1112
|
-
// this.setState({
|
|
1113
|
-
// refreshing: false,
|
|
1114
|
-
// });
|
|
1115
|
-
setTimeout(() => {
|
|
1116
|
-
this.setState({
|
|
1117
|
-
refreshing: false,
|
|
1118
|
-
});
|
|
1119
|
-
}, 1000)
|
|
1120
|
-
}
|
|
1121
|
-
|
|
1122
|
-
render() {
|
|
1123
|
-
let t = this;
|
|
1124
|
-
let context = localStorage.getItem('context');
|
|
1125
|
-
let userId = getLoginUserInfo().userId;
|
|
1126
|
-
let token = getLoginUserInfo().token;
|
|
1127
|
-
const layout = this.state.data.map((item) => ({
|
|
1128
|
-
i: item.id,
|
|
1129
|
-
x: item.positionX,
|
|
1130
|
-
y: item.positionY,
|
|
1131
|
-
w: item.portletWidth,
|
|
1132
|
-
h: item.portletHeight,
|
|
1133
|
-
static: true //禁止修改部件大小
|
|
1134
|
-
}));
|
|
1135
|
-
|
|
1136
|
-
if (!layout || layout.length === 0) {
|
|
1137
|
-
return null;
|
|
1138
|
-
} else {
|
|
1139
|
-
return (
|
|
1140
|
-
<div className='react-grid'>
|
|
1141
|
-
<Refreshcontrol refreshing={this.state.refreshing} onRefresh={this.onRefresh.bind(this)} beforePullLoadText="下拉刷新" afterPullLoadText="下拉刷新结束">
|
|
1142
|
-
<GridLayout
|
|
1143
|
-
className="layout"
|
|
1144
|
-
layout={layout}
|
|
1145
|
-
cols={12}
|
|
1146
|
-
rowHeight={20}
|
|
1147
|
-
width={window.innerWidth}
|
|
1148
|
-
isDraggable={this.state.isDraggable}
|
|
1149
|
-
margin={[0, 15]}
|
|
1150
|
-
containerPadding={[8, 0]}
|
|
1151
|
-
>
|
|
1152
|
-
|
|
1153
|
-
{this.state.data.map((item) => {
|
|
1154
|
-
return t.portalContent(item) || null
|
|
1155
|
-
|
|
1156
|
-
// 添加一个默认返回值,以避免未指定键的错误
|
|
1157
|
-
})}
|
|
1158
|
-
|
|
1159
|
-
</GridLayout>
|
|
1160
|
-
</Refreshcontrol>
|
|
1161
|
-
</div>
|
|
1162
|
-
|
|
1163
|
-
);
|
|
1164
|
-
}
|
|
1165
|
-
}
|
|
1166
|
-
}
|