@zgfe/modules-settings 1.0.1-a.4 → 1.0.1-a.5

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.
Files changed (28) hide show
  1. package/dist/esm/constants/api.d.ts +6 -0
  2. package/dist/esm/constants/api.js +10 -1
  3. package/dist/esm/modules/companySetting/edit/userGroup.js +1 -1
  4. package/dist/esm/modules/companySetting/index.d.ts +4 -0
  5. package/dist/esm/modules/companySetting/index.js +112 -14
  6. package/dist/esm/modules/companySetting/userGroup/index.d.ts +0 -1
  7. package/dist/esm/modules/companySetting/userGroup/index.js +2 -4
  8. package/dist/esm/modules/companySetting/virtualApp/config.d.ts +11 -0
  9. package/dist/esm/modules/companySetting/virtualApp/config.js +144 -0
  10. package/dist/esm/modules/companySetting/virtualApp/index.d.ts +3 -0
  11. package/dist/esm/modules/companySetting/virtualApp/index.js +161 -20
  12. package/dist/esm/modules/companySetting/virtualApp/panels/list.d.ts +9 -0
  13. package/dist/esm/modules/companySetting/virtualApp/panels/list.js +187 -0
  14. package/dist/esm/modules/companySetting/virtualApp/panels/sourceItem.d.ts +10 -0
  15. package/dist/esm/modules/companySetting/virtualApp/panels/sourceItem.js +162 -0
  16. package/dist/esm/modules/companySetting/virtualApp/styles/config.less +36 -0
  17. package/dist/esm/modules/companySetting/virtualApp/styles/list.less +28 -0
  18. package/dist/esm/modules/companySetting/virtualApp/styles/sourceItem.less +27 -0
  19. package/dist/esm/modules/companySetting/virtualApp/styles/table.less +44 -0
  20. package/dist/esm/modules/personalSetting/info/index.js +4 -4
  21. package/package.json +3 -2
  22. package/dist/esm/modules/companySetting/virtualApp/config.vue +0 -167
  23. package/dist/esm/modules/companySetting/virtualApp/panels/list.vue +0 -208
  24. package/dist/esm/modules/companySetting/virtualApp/panels/sourceItem.vue +0 -162
  25. package/dist/esm/modules/companySetting/virtualApp/styles/config.sass +0 -28
  26. package/dist/esm/modules/companySetting/virtualApp/styles/list.sass +0 -21
  27. package/dist/esm/modules/companySetting/virtualApp/styles/sourceItem.sass +0 -21
  28. package/dist/esm/modules/companySetting/virtualApp/styles/table.sass +0 -36
@@ -8,6 +8,9 @@ declare let apis: {
8
8
  createApp: string;
9
9
  queryAppList: string;
10
10
  queryPackageInfo: string;
11
+ queryVirtualApps: string;
12
+ getCompanyAppList: string;
13
+ editVirtualApp: string;
11
14
  };
12
15
  setting: {
13
16
  updateCompanyName: string;
@@ -33,5 +36,8 @@ declare let apis: {
33
36
  createFilter: string;
34
37
  queryFilter: string;
35
38
  };
39
+ eventMeta: {
40
+ queryEventMeta: string;
41
+ };
36
42
  };
37
43
  export default apis;
@@ -9,8 +9,14 @@ var apis = {
9
9
  deleteApp: apiPrefix + '/common/proxy/user/deleteApp.jsp',
10
10
  createApp: apiPrefix + '/system/createApp',
11
11
  queryAppList: apiPrefix + '/common/proxy/data/v2ajaxGetDataByApp.jsp',
12
- queryPackageInfo: apiPrefix + '/system/packageInfo'
12
+ queryPackageInfo: apiPrefix + '/system/packageInfo',
13
+ queryVirtualApps: apiPrefix + '/common/proxy/user/sourceApp.jsp',
14
+ // 查询虚拟应用列表
15
+ getCompanyAppList: apiPrefix + '/common/proxy/user/getCompanyAppList.jsp',
16
+ // 查询公司下所有应用列表
17
+ editVirtualApp: apiPrefix + '/common/proxy/user/editDataSource.jsp' // 修改虚拟应用
13
18
  },
19
+
14
20
  setting: {
15
21
  updateCompanyName: apiPrefix + '/common/proxy/company/v2updateInfo.jsp',
16
22
  updateLicense: apiPrefix + '/system/license',
@@ -36,6 +42,9 @@ var apis = {
36
42
  updateAppName: apiPrefix + '/common/proxy/user/updateAppName.jsp',
37
43
  createFilter: apiPrefix + '/common/proxy/user/createFilter.jsp',
38
44
  queryFilter: apiPrefix + '/common/proxy/user/queryFilter.jsp'
45
+ },
46
+ eventMeta: {
47
+ queryEventMeta: apiPrefix + '/common/proxy/data/queryEventMetasOfGroup.jsp'
39
48
  }
40
49
  };
41
50
  export default apis;
@@ -298,7 +298,7 @@ var CompanySettingUserGroup = function CompanySettingUserGroup(props) {
298
298
  onChange: function onChange(e) {
299
299
  setUser(e);
300
300
  }
301
- }))), !isAdmin ? /*#__PURE__*/React.createElement("div", {
301
+ }))), isAdmin ? /*#__PURE__*/React.createElement("div", {
302
302
  className: "encryption-wrap"
303
303
  }, /*#__PURE__*/React.createElement("div", {
304
304
  className: "encryption-name"
@@ -3,6 +3,10 @@ import './index.less';
3
3
  declare const CompanySetting: React.FC<{
4
4
  zgText: String;
5
5
  isMarsUi: Boolean;
6
+ showVirtualApp: Boolean;
7
+ showDataDaily: Boolean;
8
+ showWeChatMenu: Boolean;
9
+ showMarketMenu: Boolean;
6
10
  action: String;
7
11
  settingCallback?: (type: string, obj?: any) => void;
8
12
  }>;
@@ -17,12 +17,16 @@ import Info from "./info";
17
17
  import UserGroup from "./userGroup";
18
18
  import User from "./user";
19
19
  import AppList from "./appList";
20
- // import VirtualApp from './virtualApp';
20
+ import VirtualApp from "./virtualApp";
21
21
  import Cost from "./cost";
22
22
  import WechatBinding from "./wechatBinding";
23
23
  var CompanySetting = function CompanySetting(props) {
24
24
  var zgText = props.zgText,
25
25
  isMarsUi = props.isMarsUi,
26
+ showVirtualApp = props.showVirtualApp,
27
+ showDataDaily = props.showDataDaily,
28
+ showWeChatMenu = props.showWeChatMenu,
29
+ showMarketMenu = props.showMarketMenu,
26
30
  action = props.action,
27
31
  settingCallback = props.settingCallback;
28
32
 
@@ -30,12 +34,6 @@ var CompanySetting = function CompanySetting(props) {
30
34
  zgText = '数据分析';
31
35
 
32
36
  // #todo 需要修改主应用传入参数和business-lib数据仓库
33
- var ready = true;
34
- var showWeChatMenu = false;
35
- var showMarketMenu = false;
36
- var showDataDaily = false;
37
- var showVirtualApp = false;
38
- var isAdminUser = false;
39
37
  var apisOkNum = 0;
40
38
  var _useContext = useContext(BizGlobalDataContext),
41
39
  currentApp = _useContext.currentApp;
@@ -465,6 +463,104 @@ var CompanySetting = function CompanySetting(props) {
465
463
  // }
466
464
  };
467
465
 
466
+ var createVirtualAppCallback = function createVirtualAppCallback(res) {
467
+ // 对外提供的api, 在设置模块-》虚拟应用-》虚拟应用列表页面 创建成功时调用
468
+ // 用来处理同步主应用可能需要的刷新的逻辑, 可不传
469
+ // settingUpdateGroupAuthCallback && settingUpdateGroupAuthCallback({isUser});
470
+ settingCallback && settingCallback('settingCreateVirtualAppCallback', res);
471
+ getSettingData();
472
+
473
+ // 与主应用同步信息 下面为老代码逻辑
474
+ // this.$store.commit(mutations.virtualApp.addVirtualApp, res)
475
+ // // 添加数据权限
476
+ // let authConfig = util.clone(this.currentUser.authConfig)
477
+ // if (
478
+ // !(
479
+ // authConfig.dataAuth.length === 1 &&
480
+ // authConfig.dataAuth[0].appId === 0
481
+ // )
482
+ // ) {
483
+ // authConfig.dataAuth.unshift({
484
+ // appId: res.app_info.id,
485
+ // plats: [0]
486
+ // })
487
+ // }
488
+ // let formData = {
489
+ // userId: this.currentUser.id,
490
+ // authConfig: JSON.stringify(authConfig),
491
+ // groupIds: this.userOfGroups.join(',')
492
+ // }
493
+ // this.$store.dispatch(actions.setting.updateUserAuth, formData)
494
+ // this.$store.dispatch(actions.user.getCurrentUser)
495
+ // // 更新应用列表数据
496
+ // this.$store.dispatch(actions.app.queryAppList)
497
+ };
498
+
499
+ var delVirtualAppCallback = function delVirtualAppCallback(res) {
500
+ // 对外提供的api, 在设置模块-》虚拟应用-》虚拟应用列表页面 删除成功时调用
501
+ // 用来处理同步主应用可能需要的刷新的逻辑, 可不传
502
+ // settingUpdateGroupAuthCallback && settingUpdateGroupAuthCallback({isUser});
503
+ settingCallback && settingCallback('settingDelVirtualAppCallback', res);
504
+ // getSettingData();
505
+
506
+ // 与主应用同步信息 下面为老代码逻辑
507
+ // this.$store.commit(mutations.virtualApp.delVirtualApp, appId)
508
+ // // 更新数据权限
509
+ // let authConfig = util.clone(this.currentUser.authConfig)
510
+ // if (
511
+ // !(
512
+ // authConfig.dataAuth.length === 1 &&
513
+ // authConfig.dataAuth[0].appId === 0
514
+ // )
515
+ // ) {
516
+ // let index = authConfig.dataAuth.findIndex(
517
+ // item => item.appId === appId
518
+ // )
519
+ // if (index > -1) {
520
+ // authConfig.dataAuth.splice(index, 1)
521
+ // }
522
+ // }
523
+ // if (this.currentApp.id === appId) {
524
+ // let hasAuthApplistToDelAfter = this.hasAuthApplist.filter(
525
+ // item => item.id !== appId
526
+ // )
527
+ // let id = hasAuthApplistToDelAfter.length ? hasAuthApplistToDelAfter[0].id : 0
528
+ // this.$router.push({
529
+ // params: {
530
+ // appId: id
531
+ // }
532
+ // })
533
+ // }
534
+ // let formData = {
535
+ // userId: this.currentUser.userId,
536
+ // authConfig: JSON.stringify(authConfig),
537
+ // groupIds: this.userOfGroups.join(',')
538
+ // }
539
+ // this.$store.dispatch(actions.setting.updateUserAuth, formData)
540
+ // this.$store.dispatch(actions.user.getCurrentUser)
541
+ // // 更新应用列表数据
542
+ // this.$store.dispatch(actions.app.queryAppList)
543
+ };
544
+
545
+ var editVirtualAppCallback = function editVirtualAppCallback(id) {
546
+ // 对外提供的api, 在设置模块-》虚拟应用-》虚拟应用列表页面 删除成功时调用
547
+ // 用来处理同步主应用可能需要的刷新的逻辑, 可不传
548
+ // settingUpdateGroupAuthCallback && settingUpdateGroupAuthCallback({isUser});
549
+ settingCallback && settingCallback('settingEditVirtualAppCallback', {
550
+ id: id
551
+ });
552
+ // getSettingData();
553
+
554
+ // 与主应用同步信息 下面为老代码逻辑
555
+ // if (this.currentApp && this.currentApp.id === params.app_id) {
556
+ // this.$store.dispatch(actions.biz.sys.queryEventMeta, {
557
+ // appId: this.appId,
558
+ // platform: this.platform,
559
+ // force: true
560
+ // })
561
+ // }
562
+ };
563
+
468
564
  var changeTab = function changeTab(tab) {
469
565
  setCurrentTab(tab);
470
566
  setIsShowCreateApp(false);
@@ -514,7 +610,7 @@ var CompanySetting = function CompanySetting(props) {
514
610
  onClick: function onClick() {
515
611
  changeTab('appList');
516
612
  }
517
- }, "\u5E94\u7528")) : null, showVirtualApp && !isMarsUi ? /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement("a", {
613
+ }, "\u5E94\u7528")) : null, /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement("a", {
518
614
  style: currentTab == 'virtualApp' ? {
519
615
  fontWeight: 'bold',
520
616
  color: '#000'
@@ -522,7 +618,7 @@ var CompanySetting = function CompanySetting(props) {
522
618
  onClick: function onClick() {
523
619
  changeTab('virtualApp');
524
620
  }
525
- }, "\u865A\u62DF\u5E94\u7528")) : null, !isMarsUi ? /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement("a", {
621
+ }, "\u865A\u62DF\u5E94\u7528")), !isMarsUi ? /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement("a", {
526
622
  style: currentTab == 'cost' ? {
527
623
  fontWeight: 'bold',
528
624
  color: '#000'
@@ -553,7 +649,6 @@ var CompanySetting = function CompanySetting(props) {
553
649
  isAdmin: isAdmin,
554
650
  delGroupCallback: delGroupCallback,
555
651
  updateGroupAuthCallback: updateGroupAuthCallback,
556
- changeUserAuthCallback: changeUserAuthCallback,
557
652
  serviceType: serviceType
558
653
  }) : currentTab == 'user' ? /*#__PURE__*/React.createElement(User, {
559
654
  id: id,
@@ -583,10 +678,13 @@ var CompanySetting = function CompanySetting(props) {
583
678
  createAppCallback: createAppCallback,
584
679
  gotoAppSetting: gotoAppSetting,
585
680
  gotoAppPanel: gotoAppPanel
586
- }) :
587
- // ) : currentTab == 'virtualApp' ? (
588
- // <VirtualApp companyAppList={companyAppList} companyId={companyId} />
589
- currentTab == 'cost' ? /*#__PURE__*/React.createElement(Cost, {
681
+ }) : currentTab == 'virtualApp' ? /*#__PURE__*/React.createElement(VirtualApp, {
682
+ companyAppList: companyAppList,
683
+ companyId: companyId,
684
+ createVirtualAppCallback: createVirtualAppCallback,
685
+ delVirtualAppCallback: delVirtualAppCallback,
686
+ editVirtualAppCallback: editVirtualAppCallback
687
+ }) : currentTab == 'cost' ? /*#__PURE__*/React.createElement(Cost, {
590
688
  companyAppList: companyAppList,
591
689
  companyId: companyId
592
690
  }) : currentTab == 'weChatBinding' ? /*#__PURE__*/React.createElement(WechatBinding, {
@@ -10,6 +10,5 @@ declare const UserGroup: React.FC<{
10
10
  serviceType: Number;
11
11
  delGroupCallback: Function;
12
12
  updateGroupAuthCallback: Function;
13
- changeUserAuthCallback: Function;
14
13
  }>;
15
14
  export default UserGroup;
@@ -21,8 +21,7 @@ var UserGroup = function UserGroup(props) {
21
21
  isAdmin = props.isAdmin,
22
22
  serviceType = props.serviceType,
23
23
  delGroupCallback = props.delGroupCallback,
24
- updateGroupAuthCallback = props.updateGroupAuthCallback,
25
- changeUserAuthCallback = props.changeUserAuthCallback;
24
+ updateGroupAuthCallback = props.updateGroupAuthCallback;
26
25
  var _useContext = useContext(BizGlobalDataContext),
27
26
  currentApp = _useContext.currentApp,
28
27
  currentUser = _useContext.currentUser,
@@ -107,8 +106,7 @@ var UserGroup = function UserGroup(props) {
107
106
  },
108
107
  updateGroupAuthCallback: updateGroupAuthCallback,
109
108
  allGroupInfos: allGroupInfos,
110
- serviceType: serviceType,
111
- changeUserAuthCallback: changeUserAuthCallback
109
+ serviceType: serviceType
112
110
  }) : /*#__PURE__*/React.createElement("div", {
113
111
  className: "group-model-content"
114
112
  }, /*#__PURE__*/React.createElement("div", {
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import './styles/config.less';
3
+ import './styles/table.less';
4
+ declare const Config: React.FC<{
5
+ virtualAppsIdMap: any;
6
+ selectApp: any;
7
+ sourceApps: any;
8
+ onCancel: Function;
9
+ editVirtualAppCallback: Function;
10
+ }>;
11
+ export default Config;
@@ -0,0 +1,144 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import React, { useEffect, useState } from 'react';
8
+ import "./styles/config.less";
9
+ import "./styles/table.less";
10
+ import { Button, notification } from 'antd';
11
+ import { selfRequest } from "./../../../utils/ajax";
12
+ import api from "./../../../constants/api";
13
+ import SourceItem from "./panels/sourceItem";
14
+ import util from "../../../utils/util";
15
+ var Config = function Config(props) {
16
+ var selectApp = props.selectApp,
17
+ virtualAppsIdMap = props.virtualAppsIdMap,
18
+ sourceApps = props.sourceApps,
19
+ onCancel = props.onCancel,
20
+ editVirtualAppCallback = props.editVirtualAppCallback;
21
+ var idMaps = {};
22
+ var sources = virtualAppsIdMap[selectApp.app_id].data_source || [];
23
+ sources.forEach(function (item) {
24
+ idMaps[item.source_app_id] = item;
25
+ });
26
+ var sourceAppIdMap = idMaps;
27
+ var _useState = useState([]),
28
+ _useState2 = _slicedToArray(_useState, 2),
29
+ configData = _useState2[0],
30
+ setConfigData = _useState2[1];
31
+ useEffect(function () {
32
+ var result = [];
33
+ sourceApps.map(function (realApp) {
34
+ if (sourceAppIdMap[realApp.id]) {
35
+ result.push({
36
+ app_id: realApp.id,
37
+ event_id: getSourceAppEventIdArr(realApp.id)
38
+ });
39
+ } else {
40
+ result.push(null);
41
+ }
42
+ });
43
+ setConfigData(result);
44
+ }, []);
45
+ var changeData = function changeData(event_id, app_id, checked, index) {
46
+ var dealData = util.clone(configData);
47
+ dealData[index] = checked ? {
48
+ app_id: app_id,
49
+ event_id: event_id
50
+ } : null;
51
+ console.log('dealData', dealData, index);
52
+ setConfigData(dealData);
53
+ };
54
+ var strMiddleSplit = function strMiddleSplit(str, num) {
55
+ if (util.isString(str)) {
56
+ return util.strMiddleSplit(str, {
57
+ maxLength: num,
58
+ beginLength: num - 2,
59
+ endLength: 0,
60
+ replaceStr: '...'
61
+ });
62
+ }
63
+ return str;
64
+ };
65
+ var getSourceAppEventIdArr = function getSourceAppEventIdArr(sourceAppId) {
66
+ console.log('sourceAppIdMap', sourceAppIdMap, sourceApps);
67
+ var sourceData = sourceAppIdMap[sourceAppId] || {};
68
+ return sourceData.source_event_id || [];
69
+ };
70
+ var onSubmit = function onSubmit() {
71
+ var params = {
72
+ app_id: virtualAppsIdMap[selectApp.app_id].app_id,
73
+ json: decodeURIComponent(JSON.stringify(configData.filter(function (item) {
74
+ return item;
75
+ })))
76
+ };
77
+ console.log(params);
78
+ selfRequest(api.app.editVirtualApp, {
79
+ method: 'post',
80
+ data: params
81
+ }).then(function (res) {
82
+ console.log('res', res);
83
+ if (res.code === 10001) {
84
+ notification.success({
85
+ message: '修改成功!'
86
+ });
87
+ editVirtualAppCallback && editVirtualAppCallback(virtualAppsIdMap[selectApp.app_id].app_id);
88
+ onCancel();
89
+ } else {
90
+ notification.error({
91
+ message: '修改失败,请重试!'
92
+ });
93
+ }
94
+ }).catch(function (error) {
95
+ notification.error({
96
+ message: '修改失败,请重试!'
97
+ });
98
+ });
99
+ };
100
+ return /*#__PURE__*/React.createElement("div", {
101
+ className: "virtual-app-update-panel"
102
+ }, /*#__PURE__*/React.createElement("div", {
103
+ className: "virtual-app-update-head"
104
+ }, /*#__PURE__*/React.createElement("span", {
105
+ title: virtualAppsIdMap[selectApp.app_id].app_name
106
+ }, strMiddleSplit(virtualAppsIdMap[selectApp.app_id].app_name, 20)), /*#__PURE__*/React.createElement("span", {
107
+ className: "btn-group"
108
+ }, /*#__PURE__*/React.createElement(Button, {
109
+ className: "btn-update-cancel",
110
+ onClick: function onClick() {
111
+ onCancel && onCancel();
112
+ }
113
+ }, "\u53D6\u6D88"), /*#__PURE__*/React.createElement(Button, {
114
+ type: "primary",
115
+ className: "btn-update-submit",
116
+ onClick: onSubmit
117
+ }, "\u4FDD\u5B58"))), /*#__PURE__*/React.createElement("div", {
118
+ className: "real-app-list-box virtual-app-table-box"
119
+ }, /*#__PURE__*/React.createElement("div", {
120
+ className: "real-app-list-title virtual-app-table-title"
121
+ }, /*#__PURE__*/React.createElement("span", {
122
+ className: "source-app-name"
123
+ }, "\u6E90\u5E94\u7528"), /*#__PURE__*/React.createElement("span", {
124
+ className: "source-app-events-num"
125
+ }, "\u5E94\u7528\u4E8B\u4EF6")), sourceApps.length ? /*#__PURE__*/React.createElement("div", {
126
+ className: "real-app-list-body virtual-app-table-body"
127
+ }, sourceApps.map(function (realApp, index) {
128
+ return /*#__PURE__*/React.createElement(SourceItem, {
129
+ key: realApp.id,
130
+ sourceAppId: realApp.id,
131
+ checked: sourceAppIdMap[realApp.id],
132
+ sourceAppName: realApp.appName,
133
+ sourceEventsId: getSourceAppEventIdArr(realApp.id),
134
+ onChange: function onChange(event_id, app_id, checked) {
135
+ changeData(event_id, app_id, checked, index);
136
+ }
137
+ });
138
+ })) : /*#__PURE__*/React.createElement("div", {
139
+ className: "real-app-list-body virtual-app-table-body"
140
+ }, /*#__PURE__*/React.createElement("div", {
141
+ className: "real-app-list-item empty-data"
142
+ }, "\u6682\u65E0\u6570\u636E"))));
143
+ };
144
+ export default Config;
@@ -3,5 +3,8 @@ import './styles/index.less';
3
3
  declare const VirtualApp: React.FC<{
4
4
  companyAppList: any;
5
5
  companyId: Number;
6
+ createVirtualAppCallback: Function;
7
+ delVirtualAppCallback: Function;
8
+ editVirtualAppCallback: Function;
6
9
  }>;
7
10
  export default VirtualApp;
@@ -6,8 +6,17 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
6
6
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
7
  import React, { useEffect, useState } from 'react';
8
8
  import "./styles/index.less";
9
- import { Button } from 'antd';
9
+ import { Form, Input, Button, notification } from 'antd';
10
+ import request, { selfRequest } from "./../../../utils/ajax";
11
+ import api from "./../../../constants/api";
12
+ import PageLoading from "../../../components/pageLoading";
13
+ import VirtualAppList from "./panels/list";
14
+ import Config from "./config";
10
15
  var VirtualApp = function VirtualApp(props) {
16
+ var companyId = props.companyId,
17
+ createVirtualAppCallback = props.createVirtualAppCallback,
18
+ _delVirtualAppCallback = props.delVirtualAppCallback,
19
+ editVirtualAppCallback = props.editVirtualAppCallback;
11
20
  var _useState = useState('list'),
12
21
  _useState2 = _slicedToArray(_useState, 2),
13
22
  status = _useState2[0],
@@ -18,27 +27,121 @@ var VirtualApp = function VirtualApp(props) {
18
27
  setReady = _useState4[1];
19
28
  var _useState5 = useState(false),
20
29
  _useState6 = _slicedToArray(_useState5, 2),
21
- showDelDialog = _useState6[0],
22
- setShowDelDialog = _useState6[1];
30
+ isConfig = _useState6[0],
31
+ setIsConfig = _useState6[1];
23
32
  var _useState7 = useState({}),
24
33
  _useState8 = _slicedToArray(_useState7, 2),
25
- currentDelItem = _useState8[0],
26
- setCurrentDelItem = _useState8[1];
34
+ selectApp = _useState8[0],
35
+ setSelectApp = _useState8[1];
36
+ var _useState9 = useState([]),
37
+ _useState10 = _slicedToArray(_useState9, 2),
38
+ virtualAppList = _useState10[0],
39
+ setVirtualAppList = _useState10[1];
40
+ var _useState11 = useState({}),
41
+ _useState12 = _slicedToArray(_useState11, 2),
42
+ virtualAppsIdMap = _useState12[0],
43
+ setVirtualAppsIdMap = _useState12[1];
44
+ var _useState13 = useState([]),
45
+ _useState14 = _slicedToArray(_useState13, 2),
46
+ sourceApps = _useState14[0],
47
+ setSourceApps = _useState14[1];
48
+ // let [appName, setAppName] = useState('');
49
+
27
50
  useEffect(function () {
28
- setReady(false);
29
- // request<{ overview: {} }>(api.setting.wxSubscribeUserList, {})
30
- // .then((res: any) => {
31
- // if (!res) return;
32
- // setGridStore(res.users);
33
- // setReady(true);
34
- // })
35
- // .catch((err) => {
36
- // notification.error({
37
- // message: '获取微信订阅看板用户列表失败,请刷新页面重试',
38
- // });
39
- // });
51
+ queryVirtualApps();
52
+ getCompanyAppList();
40
53
  }, []);
41
- return /*#__PURE__*/React.createElement("div", {
54
+ var queryVirtualApps = function queryVirtualApps() {
55
+ setReady(false);
56
+ request(api.app.queryVirtualApps, {}).then(function (res) {
57
+ if (res.code !== 10001) {
58
+ throw new Error('查询虚拟应用失败');
59
+ return;
60
+ }
61
+ var list = res.app_list;
62
+ var idMap = {};
63
+ list.forEach(function (item) {
64
+ idMap[item.app_id] = item;
65
+ });
66
+ setVirtualAppList(list);
67
+ setVirtualAppsIdMap(idMap);
68
+ setReady(true);
69
+ // context.commit(mutations.virtualApp.updateVirtualApps, {
70
+ // list,
71
+ // idMap
72
+ // })
73
+ }).catch(function (err) {
74
+ notification.error({
75
+ message: '查询虚拟应用失败'
76
+ });
77
+ });
78
+ };
79
+ var getCompanyAppList = function getCompanyAppList() {
80
+ setReady(false);
81
+ request(api.app.getCompanyAppList, {}).then(function (res) {
82
+ setSourceApps(res && res.applist || []);
83
+ }).catch(function (err) {
84
+ notification.error({
85
+ message: '查询虚拟应用失败'
86
+ });
87
+ });
88
+ };
89
+ var onSubmit = function onSubmit(e) {
90
+ selfRequest(api.app.createApp, {
91
+ method: 'post',
92
+ data: {
93
+ app_name: e.appNameVal,
94
+ app_type: 'virtual',
95
+ companyId: companyId
96
+ }
97
+ }).then(function (res) {
98
+ if (res.flag === 101) {
99
+ notification.success({
100
+ message: '创建成功'
101
+ });
102
+ setStatus('list');
103
+ createVirtualAppCallback && createVirtualAppCallback(res);
104
+ queryVirtualApps();
105
+ } else {
106
+ var msg = '创建失败,请重试';
107
+ switch (res.flag) {
108
+ case 201:
109
+ msg = '创建失败,应用数量达到限制';
110
+ break;
111
+ case 202:
112
+ msg = '该名称已存在';
113
+ break;
114
+ case 203:
115
+ msg = '无权限';
116
+ break;
117
+ default:
118
+ msg = '创建失败,请重试';
119
+ break;
120
+ }
121
+ notification.error({
122
+ message: msg
123
+ });
124
+ }
125
+ }).catch(function (error) {
126
+ notification.error({
127
+ message: '创建失败,请重试'
128
+ });
129
+ });
130
+ };
131
+ var gotoConfig = function gotoConfig(data) {
132
+ setSelectApp(data);
133
+ setIsConfig(true);
134
+ console.log(data);
135
+ };
136
+ return isConfig ? /*#__PURE__*/React.createElement(Config, {
137
+ sourceApps: sourceApps,
138
+ virtualAppsIdMap: virtualAppsIdMap,
139
+ selectApp: selectApp,
140
+ onCancel: function onCancel() {
141
+ setIsConfig(false);
142
+ },
143
+ editVirtualAppCallback: editVirtualAppCallback
144
+ }) : /*#__PURE__*/React.createElement("div", {
42
145
  className: "virtual-app-index"
43
146
  }, /*#__PURE__*/React.createElement("div", {
44
147
  className: "virtual-app-create"
@@ -50,8 +153,46 @@ var VirtualApp = function VirtualApp(props) {
50
153
  onClick: function onClick() {
51
154
  setStatus('create');
52
155
  }
53
- }, "\u65B0\u5EFA") : null, /*#__PURE__*/React.createElement("div", {
156
+ }, "\u65B0\u5EFA") : null, status === 'create' ? /*#__PURE__*/React.createElement("div", {
54
157
  "v-show": "status === 'create'"
55
- })));
158
+ }, /*#__PURE__*/React.createElement(Form, {
159
+ initialValues: {
160
+ appNameVal: ''
161
+ },
162
+ layout: "inline",
163
+ onFinish: onSubmit
164
+ }, /*#__PURE__*/React.createElement(Form.Item, {
165
+ name: 'appNameVal',
166
+ rules: [{
167
+ required: true,
168
+ message: '公司名称不可为空'
169
+ }, {
170
+ type: 'string',
171
+ max: 20,
172
+ message: '不能超过20个字符'
173
+ }]
174
+ }, /*#__PURE__*/React.createElement(Input, {
175
+ style: {
176
+ width: 250
177
+ },
178
+ type: 'text',
179
+ placeholder: '请输入应用名称'
180
+ })), /*#__PURE__*/React.createElement(Form.Item, null, /*#__PURE__*/React.createElement(Button, {
181
+ className: "btn-cancel",
182
+ onClick: function onClick() {
183
+ setStatus('list');
184
+ }
185
+ }, "\u53D6\u6D88")), /*#__PURE__*/React.createElement(Form.Item, null, /*#__PURE__*/React.createElement(Button, {
186
+ type: "primary",
187
+ className: "btn-submit",
188
+ htmlType: "submit"
189
+ }, "\u4FDD\u5B58")))) : null), ready ? /*#__PURE__*/React.createElement(VirtualAppList, {
190
+ virtualAppList: virtualAppList,
191
+ delVirtualAppCallback: function delVirtualAppCallback() {
192
+ queryVirtualApps();
193
+ _delVirtualAppCallback && _delVirtualAppCallback();
194
+ },
195
+ gotoConfig: gotoConfig
196
+ }) : /*#__PURE__*/React.createElement(PageLoading, null));
56
197
  };
57
198
  export default VirtualApp;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import './../styles/list.less';
3
+ import './../styles/table.less';
4
+ declare const VirtualApp: React.FC<{
5
+ virtualAppList: any;
6
+ delVirtualAppCallback: Function;
7
+ gotoConfig: Function;
8
+ }>;
9
+ export default VirtualApp;