@bit-sun/business-component 2.4.27 → 2.4.28
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/.editorconfig +16 -16
- package/.fatherrc.ts +5 -5
- package/.gitlab-ci.yml +179 -179
- package/.prettierignore +7 -7
- package/.prettierrc +11 -11
- package/.umirc.ts +74 -74
- package/README.md +27 -27
- package/dist/components/Business/DetailPageWrapper/utils.d.ts +3 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.esm.js +1383 -1219
- package/dist/index.js +500 -300
- package/dist/utils/LocalstorageUtils.d.ts +1 -0
- package/dist/utils/auth.d.ts +2 -0
- package/dist/utils/enumConfig.d.ts +4 -0
- package/dist/utils/index.d.ts +6 -0
- package/docs/index.md +21 -21
- package/lib/assets/drag.svg +17 -17
- package/lib/assets/exportFail.svg +37 -37
- package/lib/assets/exportProcessing.svg +28 -28
- package/lib/assets/exportSuccess.svg +34 -34
- package/lib/assets/label_icon_bottom.svg +25 -25
- package/lib/assets/upExport.svg +22 -22
- package/package.json +80 -79
- package/src/assets/32.svg +27 -27
- package/src/assets/addIcon.svg +17 -17
- package/src/assets/allfunc.svg +27 -27
- package/src/assets/arrowRight.svg +24 -24
- package/src/assets/btn-delete.svg +29 -29
- package/src/assets/btn-edit.svg +19 -19
- package/src/assets/btn-more.svg +17 -17
- package/src/assets/btn-submit.svg +19 -19
- package/src/assets/caidan.svg +11 -11
- package/src/assets/close.svg +26 -26
- package/src/assets/drag.svg +17 -17
- package/src/assets/exportFail.svg +37 -37
- package/src/assets/exportProcessing.svg +28 -28
- package/src/assets/exportSuccess.svg +34 -34
- package/src/assets/fixed-left-active.svg +11 -11
- package/src/assets/fixed-left.svg +15 -15
- package/src/assets/fixed-right-active.svg +11 -11
- package/src/assets/fixed-right.svg +15 -15
- package/src/assets/guanbi.svg +15 -15
- package/src/assets/icon-quanping.svg +15 -15
- package/src/assets/icon-shezhi.svg +17 -17
- package/src/assets/label_icon_bottom.svg +25 -25
- package/src/assets/list-no-img.svg +21 -21
- package/src/assets/morentouxiang-32.svg +23 -23
- package/src/assets/scanning.svg +24 -24
- package/src/assets/upExport.svg +22 -22
- package/src/common/ENUM.ts +41 -41
- package/src/components/Business/AddSelectBusiness/index.md +162 -162
- package/src/components/Business/AddSelectBusiness/index.tsx +1062 -1062
- package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +112 -112
- package/src/components/Business/BsLayouts/Components/AllFunc/index.less +153 -153
- package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +70 -70
- package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +90 -90
- package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +37 -37
- package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +242 -242
- package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +384 -384
- package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +285 -285
- package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +74 -74
- package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +170 -170
- package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +64 -64
- package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +153 -153
- package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +72 -72
- package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +158 -158
- package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +85 -85
- package/src/components/Business/BsLayouts/Components/RightContent/home.less +218 -218
- package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +155 -155
- package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +160 -160
- package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +75 -75
- package/src/components/Business/BsLayouts/index.less +79 -79
- package/src/components/Business/BsLayouts/index.tsx +1484 -1484
- package/src/components/Business/BsLayouts/service.ts +10 -10
- package/src/components/Business/BsLayouts/utils.tsx +203 -203
- package/src/components/Business/BsSulaQueryTable/SearchItemSetting.tsx +566 -566
- package/src/components/Business/BsSulaQueryTable/index.less +221 -221
- package/src/components/Business/BsSulaQueryTable/index.tsx +559 -558
- package/src/components/Business/BsSulaQueryTable/setting.tsx +854 -854
- package/src/components/Business/BsSulaQueryTable/utils.less +65 -65
- package/src/components/Business/BsSulaQueryTable/utils.tsx +690 -690
- package/src/components/Business/CommodityEntry/index.md +70 -70
- package/src/components/Business/CommodityEntry/index.tsx +81 -81
- package/src/components/Business/CommonAlert/index.tsx +23 -23
- package/src/components/Business/CommonGuideWrapper/index.less +111 -111
- package/src/components/Business/CommonGuideWrapper/index.md +39 -39
- package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
- package/src/components/Business/DetailPageWrapper/index.less +79 -79
- package/src/components/Business/DetailPageWrapper/index.tsx +316 -315
- package/src/components/Business/DetailPageWrapper/utils.tsx +164 -105
- package/src/components/Business/HomePageWrapper/index.less +33 -33
- package/src/components/Business/HomePageWrapper/index.md +45 -45
- package/src/components/Business/HomePageWrapper/index.tsx +162 -162
- package/src/components/Business/JsonQueryTable/components/FieldsModifyModal.tsx +824 -824
- package/src/components/Business/JsonQueryTable/components/FieldsSettingsTable.tsx +205 -205
- package/src/components/Business/JsonQueryTable/components/Formula.tsx +206 -206
- package/src/components/Business/JsonQueryTable/components/MaintainOptions.tsx +127 -127
- package/src/components/Business/JsonQueryTable/configButton/index.js +20 -20
- package/src/components/Business/JsonQueryTable/configTree/component/compactArrayView.js +25 -25
- package/src/components/Business/JsonQueryTable/configTree/component/compactObjectView.js +30 -30
- package/src/components/Business/JsonQueryTable/configTree/index.js +82 -82
- package/src/components/Business/JsonQueryTable/configTree/index.less +44 -44
- package/src/components/Business/JsonQueryTable/configTree/parser/highlight.js +57 -57
- package/src/components/Business/JsonQueryTable/configTree/parser/index.js +124 -124
- package/src/components/Business/JsonQueryTable/configTree/render/iconRender.js +29 -29
- package/src/components/Business/JsonQueryTable/configTree/render/nameRender.js +22 -22
- package/src/components/Business/JsonQueryTable/configTree/treeNode.js +116 -116
- package/src/components/Business/JsonQueryTable/drawer/index.tsx +12 -12
- package/src/components/Business/JsonQueryTable/function.ts +62 -62
- package/src/components/Business/JsonQueryTable/index.less +16 -16
- package/src/components/Business/JsonQueryTable/index.md +328 -328
- package/src/components/Business/JsonQueryTable/index.tsx +537 -537
- package/src/components/Business/JsonQueryTable/jsonEditor/index.js +346 -346
- package/src/components/Business/JsonQueryTable/jsonEditor/index.less +22 -22
- package/src/components/Business/JsonQueryTable/jsonEditor/lint/basicType.js +147 -147
- package/src/components/Business/JsonQueryTable/jsonEditor/lint/index.js +389 -389
- package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/actions.js +118 -118
- package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/dependency.js +22 -22
- package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/index.js +21 -21
- package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/request.js +65 -65
- package/src/components/Business/JsonQueryTable/static.ts +450 -450
- package/src/components/Business/SearchSelect/{BusinessUtils.ts → BusinessUtils.tsx} +2120 -2057
- package/src/components/Business/SearchSelect/common.ts +134 -134
- package/src/components/Business/SearchSelect/index.md +1503 -1444
- package/src/components/Business/SearchSelect/index.tsx +55 -55
- package/src/components/Business/SearchSelect/utils.ts +101 -101
- package/src/components/Business/StateFlow/index.less +130 -130
- package/src/components/Business/StateFlow/index.md +60 -60
- package/src/components/Business/StateFlow/index.tsx +29 -29
- package/src/components/Business/TreeSearchSelect/index.md +185 -185
- package/src/components/Business/TreeSearchSelect/index.tsx +33 -33
- package/src/components/Business/TreeSearchSelect/utils.ts +104 -104
- package/src/components/Business/columnSettingTable/columnSetting.tsx +766 -766
- package/src/components/Business/columnSettingTable/index.less +247 -247
- package/src/components/Business/columnSettingTable/index.md +357 -357
- package/src/components/Business/columnSettingTable/index.tsx +235 -235
- package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +243 -243
- package/src/components/Business/columnSettingTable/utils.tsx +71 -71
- package/src/components/Business/moreTreeTable/FixedScrollBar.tsx +87 -87
- package/src/components/Business/moreTreeTable/hooks/useSticky.ts +21 -21
- package/src/components/Business/moreTreeTable/index.less +99 -99
- package/src/components/Business/moreTreeTable/index.md +448 -448
- package/src/components/Business/moreTreeTable/index.tsx +387 -387
- package/src/components/Business/moreTreeTable/utils.ts +126 -126
- package/src/components/Functional/AddSelect/helps.ts +80 -80
- package/src/components/Functional/AddSelect/index.less +367 -367
- package/src/components/Functional/AddSelect/index.md +155 -155
- package/src/components/Functional/AddSelect/index.tsx +1171 -1171
- package/src/components/Functional/BillEntry/index.less +371 -371
- package/src/components/Functional/BillEntry/index.md +39 -39
- package/src/components/Functional/BillEntry/index.tsx +773 -773
- package/src/components/Functional/BsAntdSula/BsCascader/index.md +62 -62
- package/src/components/Functional/BsAntdSula/BsCascader/index.tsx +178 -178
- package/src/components/Functional/BsAntdSula/index.ts +2 -2
- package/src/components/Functional/DataImport/index.less +63 -63
- package/src/components/Functional/DataImport/index.md +44 -44
- package/src/components/Functional/DataImport/index.tsx +696 -696
- package/src/components/Functional/DataValidation/index.less +63 -63
- package/src/components/Functional/DataValidation/index.md +39 -39
- package/src/components/Functional/DataValidation/index.tsx +688 -688
- package/src/components/Functional/EllipsisTooltip/index.d.ts +5 -5
- package/src/components/Functional/EllipsisTooltip/index.js +36 -36
- package/src/components/Functional/EllipsisTooltip/index.md +30 -30
- package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
- package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +60 -60
- package/src/components/Functional/QueryMutipleInput/index.less +37 -37
- package/src/components/Functional/QueryMutipleInput/index.md +33 -33
- package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
- package/src/components/Functional/SearchSelect/index.less +115 -115
- package/src/components/Functional/SearchSelect/index.md +141 -141
- package/src/components/Functional/SearchSelect/index.tsx +896 -896
- package/src/components/Functional/SearchSelect/utils.ts +3 -3
- package/src/components/Functional/TreeSearchSelect/index.md +47 -47
- package/src/components/Functional/TreeSearchSelect/index.tsx +204 -204
- package/src/components/Solution/RuleComponent/Formula.tsx +335 -335
- package/src/components/Solution/RuleComponent/InnerSelect.tsx +62 -62
- package/src/components/Solution/RuleComponent/index.d.ts +29 -29
- package/src/components/Solution/RuleComponent/index.js +2073 -2073
- package/src/components/Solution/RuleComponent/index.less +230 -230
- package/src/components/Solution/RuleComponent/renderSpecificAction.js +99 -99
- package/src/components/Solution/RuleComponent/ruleFiled.js +2281 -2281
- package/src/components/Solution/RuleComponent/services.ts +13 -13
- package/src/components/Solution/RuleComponent/util.js +143 -143
- package/src/index.ts +39 -38
- package/src/plugin/TableColumnSetting/index.less +247 -247
- package/src/plugin/TableColumnSetting/index.md +50 -50
- package/src/plugin/TableColumnSetting/index.tsx +725 -725
- package/src/plugin/TableColumnSetting/utils.ts +19 -19
- package/src/styles/bsDefault.less +1912 -1912
- package/src/utils/CheckOneUser/index.md +39 -39
- package/src/utils/CheckOneUser/index.ts +51 -51
- package/src/utils/CustomLoginInfo.ts +55 -55
- package/src/utils/LocalstorageUtils.ts +111 -95
- package/src/utils/TableUtils.tsx +18 -18
- package/src/utils/auth.ts +32 -0
- package/src/utils/checkUtils.ts +39 -39
- package/src/utils/enumConfig.ts +16 -12
- package/src/utils/getFormMode.js +12 -12
- package/src/utils/index.ts +12 -4
- package/src/utils/requestUtils.ts +166 -166
- package/src/utils/serialize.js +7 -7
- package/src/utils/utils.ts +195 -195
- package/tsconfig.json +29 -29
- package/typings.d.ts +4 -4
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
---
|
|
2
|
-
nav:
|
|
3
|
-
title: '工具方法'
|
|
4
|
-
order: 2
|
|
5
|
-
group:
|
|
6
|
-
title: 方法
|
|
7
|
-
order: 0
|
|
8
|
-
title: 确保单用户登录
|
|
9
|
-
order: 1
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## CheckOneUser
|
|
13
|
-
|
|
14
|
-
Demo:
|
|
15
|
-
|
|
16
|
-
```tsx
|
|
17
|
-
import React, { useRef } from 'react';
|
|
18
|
-
import { message } from 'antd';
|
|
19
|
-
|
|
20
|
-
import { CheckOneUser } from '../../index';
|
|
21
|
-
|
|
22
|
-
CheckOneUser('userInfo.a.information.name', 3, () => {
|
|
23
|
-
message.warning('检测新用户登录,当前页面会在3s之后刷新!');
|
|
24
|
-
})
|
|
25
|
-
|
|
26
|
-
export default () => {
|
|
27
|
-
|
|
28
|
-
const handleOnChange = (value) => {
|
|
29
|
-
console.log(value);
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
return (
|
|
33
|
-
<div>
|
|
34
|
-
</div>
|
|
35
|
-
);
|
|
36
|
-
};
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
More skills for writing demo: https://d.umijs.org/guide/demo-principle
|
|
1
|
+
---
|
|
2
|
+
nav:
|
|
3
|
+
title: '工具方法'
|
|
4
|
+
order: 2
|
|
5
|
+
group:
|
|
6
|
+
title: 方法
|
|
7
|
+
order: 0
|
|
8
|
+
title: 确保单用户登录
|
|
9
|
+
order: 1
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## CheckOneUser
|
|
13
|
+
|
|
14
|
+
Demo:
|
|
15
|
+
|
|
16
|
+
```tsx
|
|
17
|
+
import React, { useRef } from 'react';
|
|
18
|
+
import { message } from 'antd';
|
|
19
|
+
|
|
20
|
+
import { CheckOneUser } from '../../index';
|
|
21
|
+
|
|
22
|
+
CheckOneUser('userInfo.a.information.name', 3, () => {
|
|
23
|
+
message.warning('检测新用户登录,当前页面会在3s之后刷新!');
|
|
24
|
+
})
|
|
25
|
+
|
|
26
|
+
export default () => {
|
|
27
|
+
|
|
28
|
+
const handleOnChange = (value) => {
|
|
29
|
+
console.log(value);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<div>
|
|
34
|
+
</div>
|
|
35
|
+
);
|
|
36
|
+
};
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
More skills for writing demo: https://d.umijs.org/guide/demo-principle
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @Description:
|
|
3
|
-
* @Author: rodchen
|
|
4
|
-
* @Date: 2022-01-14 14:12:01
|
|
5
|
-
* @LastEditTime: 2022-01-14 17:17:26
|
|
6
|
-
* @LastEditors: rodchen
|
|
7
|
-
*/
|
|
8
|
-
export default (storageKeyString: string, seconds: number = 2, tipsCallFunction?: () =>{}) => {
|
|
9
|
-
if (typeof seconds !== 'number' ) throw new Error('seconds should be number');
|
|
10
|
-
|
|
11
|
-
let cacheValue = getStorageVale(storageKeyString);
|
|
12
|
-
|
|
13
|
-
if (document.hidden !== undefined) {
|
|
14
|
-
document.addEventListener('visibilitychange', () => {
|
|
15
|
-
if (!document.hidden) {
|
|
16
|
-
let currentValue = getStorageVale(storageKeyString);
|
|
17
|
-
if (currentValue !== cacheValue) {
|
|
18
|
-
if (tipsCallFunction && typeof tipsCallFunction === 'function') {
|
|
19
|
-
tipsCallFunction();
|
|
20
|
-
} else {
|
|
21
|
-
window.alert('检测新用户登录,当前页面会在2s之后刷新!');
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
setTimeout(() => {
|
|
25
|
-
window.location.reload();
|
|
26
|
-
}, seconds * 1000)
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
})
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
function getStorageVale (storageKeyString: string) {
|
|
34
|
-
var [localstorage, ...restKeyArrays] = storageKeyString.split('.');
|
|
35
|
-
let localStorageInfo = window.localStorage.getItem(localstorage)
|
|
36
|
-
|
|
37
|
-
if (!restKeyArrays.length) return localStorageInfo;
|
|
38
|
-
|
|
39
|
-
let returnVal = JSON.parse(localStorageInfo || '{}');
|
|
40
|
-
|
|
41
|
-
for(let i = 0; i < restKeyArrays.length; i++ ) {
|
|
42
|
-
returnVal = returnVal[restKeyArrays[i]]
|
|
43
|
-
|
|
44
|
-
if (!returnVal) return '';
|
|
45
|
-
|
|
46
|
-
if (typeof returnVal === 'string') {
|
|
47
|
-
return returnVal
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return ""
|
|
1
|
+
/*
|
|
2
|
+
* @Description:
|
|
3
|
+
* @Author: rodchen
|
|
4
|
+
* @Date: 2022-01-14 14:12:01
|
|
5
|
+
* @LastEditTime: 2022-01-14 17:17:26
|
|
6
|
+
* @LastEditors: rodchen
|
|
7
|
+
*/
|
|
8
|
+
export default (storageKeyString: string, seconds: number = 2, tipsCallFunction?: () =>{}) => {
|
|
9
|
+
if (typeof seconds !== 'number' ) throw new Error('seconds should be number');
|
|
10
|
+
|
|
11
|
+
let cacheValue = getStorageVale(storageKeyString);
|
|
12
|
+
|
|
13
|
+
if (document.hidden !== undefined) {
|
|
14
|
+
document.addEventListener('visibilitychange', () => {
|
|
15
|
+
if (!document.hidden) {
|
|
16
|
+
let currentValue = getStorageVale(storageKeyString);
|
|
17
|
+
if (currentValue !== cacheValue) {
|
|
18
|
+
if (tipsCallFunction && typeof tipsCallFunction === 'function') {
|
|
19
|
+
tipsCallFunction();
|
|
20
|
+
} else {
|
|
21
|
+
window.alert('检测新用户登录,当前页面会在2s之后刷新!');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
setTimeout(() => {
|
|
25
|
+
window.location.reload();
|
|
26
|
+
}, seconds * 1000)
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
})
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function getStorageVale (storageKeyString: string) {
|
|
34
|
+
var [localstorage, ...restKeyArrays] = storageKeyString.split('.');
|
|
35
|
+
let localStorageInfo = window.localStorage.getItem(localstorage)
|
|
36
|
+
|
|
37
|
+
if (!restKeyArrays.length) return localStorageInfo;
|
|
38
|
+
|
|
39
|
+
let returnVal = JSON.parse(localStorageInfo || '{}');
|
|
40
|
+
|
|
41
|
+
for(let i = 0; i < restKeyArrays.length; i++ ) {
|
|
42
|
+
returnVal = returnVal[restKeyArrays[i]]
|
|
43
|
+
|
|
44
|
+
if (!returnVal) return '';
|
|
45
|
+
|
|
46
|
+
if (typeof returnVal === 'string') {
|
|
47
|
+
return returnVal
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return ""
|
|
52
52
|
}
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
import ENUM from '@/utils/enumConfig';
|
|
2
|
-
import cookie from 'js-cookie'
|
|
3
|
-
|
|
4
|
-
const resposne = JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.USER_INFO) || '{}');
|
|
5
|
-
//--------赢家项目登录信息---------
|
|
6
|
-
export function getEekaSessionId() {
|
|
7
|
-
return resposne?.sessionId || '';
|
|
8
|
-
}
|
|
9
|
-
export function getEekaAccountId() {
|
|
10
|
-
return resposne?.personDetailResDto?.accountId || -1;
|
|
11
|
-
}
|
|
12
|
-
export function getEekaEmployeeId() {
|
|
13
|
-
return resposne?.personDetailResDto?.employeeId || 2;
|
|
14
|
-
}
|
|
15
|
-
export function getEekaTenantId() {
|
|
16
|
-
return resposne?.personDetailResDto?.tenantId || 1;
|
|
17
|
-
}
|
|
18
|
-
export function getEekaToken() {
|
|
19
|
-
return resposne?.token;
|
|
20
|
-
}
|
|
21
|
-
//--------赢家项目登录信息---------
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
//--------国药项目登录信息---------
|
|
25
|
-
export function getLoginHeaderInfo(headerkey: string,storage='cookie') {
|
|
26
|
-
if (storage) {
|
|
27
|
-
if ('localStorage' === storage) {
|
|
28
|
-
return localStorage.getItem(headerkey)
|
|
29
|
-
} else if ('sessionStorage' === storage) {
|
|
30
|
-
return sessionStorage.getItem(headerkey)
|
|
31
|
-
} else if ('cookie' === storage) {
|
|
32
|
-
return cookie.get(headerkey)
|
|
33
|
-
} else {
|
|
34
|
-
return localStorage.getItem(headerkey)
|
|
35
|
-
}
|
|
36
|
-
} else {
|
|
37
|
-
return localStorage.getItem(headerkey)
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
export function getGuoyaoshukeCompanyId() {
|
|
41
|
-
return getLoginHeaderInfo('gksk-company-id');
|
|
42
|
-
}
|
|
43
|
-
export function getGuoyaoshukeTenantCode() {
|
|
44
|
-
return getLoginHeaderInfo('gksk-tenant-code');
|
|
45
|
-
}
|
|
46
|
-
export function getGuoyaoshukeTenantId() {
|
|
47
|
-
return getLoginHeaderInfo('gksk-tenant-id') || 1;
|
|
48
|
-
}
|
|
49
|
-
export function getGuoyaoshukeToken() {
|
|
50
|
-
return getLoginHeaderInfo('gksk-access-token');
|
|
51
|
-
}
|
|
52
|
-
export function getGuoyaoshukeUscCode() {
|
|
53
|
-
return getLoginHeaderInfo('gksk-usc-code');
|
|
54
|
-
}
|
|
55
|
-
//--------国药项目登录信息---------
|
|
1
|
+
import ENUM from '@/utils/enumConfig';
|
|
2
|
+
import cookie from 'js-cookie'
|
|
3
|
+
|
|
4
|
+
const resposne = JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.USER_INFO) || '{}');
|
|
5
|
+
//--------赢家项目登录信息---------
|
|
6
|
+
export function getEekaSessionId() {
|
|
7
|
+
return resposne?.sessionId || '';
|
|
8
|
+
}
|
|
9
|
+
export function getEekaAccountId() {
|
|
10
|
+
return resposne?.personDetailResDto?.accountId || -1;
|
|
11
|
+
}
|
|
12
|
+
export function getEekaEmployeeId() {
|
|
13
|
+
return resposne?.personDetailResDto?.employeeId || 2;
|
|
14
|
+
}
|
|
15
|
+
export function getEekaTenantId() {
|
|
16
|
+
return resposne?.personDetailResDto?.tenantId || 1;
|
|
17
|
+
}
|
|
18
|
+
export function getEekaToken() {
|
|
19
|
+
return resposne?.token;
|
|
20
|
+
}
|
|
21
|
+
//--------赢家项目登录信息---------
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
//--------国药项目登录信息---------
|
|
25
|
+
export function getLoginHeaderInfo(headerkey: string,storage='cookie') {
|
|
26
|
+
if (storage) {
|
|
27
|
+
if ('localStorage' === storage) {
|
|
28
|
+
return localStorage.getItem(headerkey)
|
|
29
|
+
} else if ('sessionStorage' === storage) {
|
|
30
|
+
return sessionStorage.getItem(headerkey)
|
|
31
|
+
} else if ('cookie' === storage) {
|
|
32
|
+
return cookie.get(headerkey)
|
|
33
|
+
} else {
|
|
34
|
+
return localStorage.getItem(headerkey)
|
|
35
|
+
}
|
|
36
|
+
} else {
|
|
37
|
+
return localStorage.getItem(headerkey)
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export function getGuoyaoshukeCompanyId() {
|
|
41
|
+
return getLoginHeaderInfo('gksk-company-id');
|
|
42
|
+
}
|
|
43
|
+
export function getGuoyaoshukeTenantCode() {
|
|
44
|
+
return getLoginHeaderInfo('gksk-tenant-code');
|
|
45
|
+
}
|
|
46
|
+
export function getGuoyaoshukeTenantId() {
|
|
47
|
+
return getLoginHeaderInfo('gksk-tenant-id') || 1;
|
|
48
|
+
}
|
|
49
|
+
export function getGuoyaoshukeToken() {
|
|
50
|
+
return getLoginHeaderInfo('gksk-access-token');
|
|
51
|
+
}
|
|
52
|
+
export function getGuoyaoshukeUscCode() {
|
|
53
|
+
return getLoginHeaderInfo('gksk-usc-code');
|
|
54
|
+
}
|
|
55
|
+
//--------国药项目登录信息---------
|
|
@@ -1,95 +1,111 @@
|
|
|
1
|
-
import ENUM from '@/utils/enumConfig';
|
|
2
|
-
|
|
3
|
-
const resposne = JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.USER_INFO) || '{}');
|
|
4
|
-
|
|
5
|
-
// 存储表头
|
|
6
|
-
export const setConfigTableColumns = (configvalue: any, tableCode:string) => {
|
|
7
|
-
let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]'
|
|
8
|
-
let configArray = JSON.parse(config)
|
|
9
|
-
let currentSetting = configArray.filter((item:any) => item.code === tableCode)
|
|
10
|
-
if (currentSetting.length) {
|
|
11
|
-
currentSetting[0].detail = JSON.stringify(configvalue)
|
|
12
|
-
} else {
|
|
13
|
-
configArray.push({
|
|
14
|
-
"code": tableCode,
|
|
15
|
-
"detail": JSON.stringify(configvalue)
|
|
16
|
-
})
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
localStorage.setItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION, JSON.stringify(configArray))
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// 取表头
|
|
23
|
-
export const getConfigTableColumns = (tableCode: string) => {
|
|
24
|
-
if (!tableCode) return [];
|
|
25
|
-
let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]';
|
|
26
|
-
let configArray = JSON.parse(config);
|
|
27
|
-
let configSetting = configArray.filter(
|
|
28
|
-
(item:any) => item.code === tableCode,
|
|
29
|
-
);
|
|
30
|
-
|
|
31
|
-
if (configSetting.length) {
|
|
32
|
-
return JSON.parse(configSetting[0].detail || '[]');
|
|
33
|
-
}
|
|
34
|
-
return [];
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
// 登陆租户信息存储、获取、移除
|
|
38
|
-
export const saveTenantList = (data: any) => {
|
|
39
|
-
const list = data?.length && data || [];
|
|
40
|
-
localStorage.setItem('tenant_list', JSON.stringify(list));
|
|
41
|
-
}
|
|
42
|
-
export const getTenantList = () => {
|
|
43
|
-
const list = JSON.parse(localStorage.getItem('tenant_list') || '[]');
|
|
44
|
-
return list
|
|
45
|
-
}
|
|
46
|
-
export const removeTenantList = () => {
|
|
47
|
-
localStorage.removeItem('tenant_list');
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// 当前租户存储、获取、移除
|
|
51
|
-
export const saveCurrentTenantId = (item: string) => {
|
|
52
|
-
localStorage.setItem('current_tenant_id', String(item));
|
|
53
|
-
}
|
|
54
|
-
export const getCurrentTenantId = () => {
|
|
55
|
-
return localStorage.getItem('current_tenant_id') || 1;
|
|
56
|
-
}
|
|
57
|
-
export const removeCurrentTenantId = () => {
|
|
58
|
-
localStorage.removeItem('current_tenant_id');
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
export function getEmployeeId() {
|
|
63
|
-
return resposne?.employeeResVo?.id || 2;
|
|
64
|
-
}
|
|
65
|
-
export function getEmployeeCode() {
|
|
66
|
-
return resposne?.employeeResVo?.employeeNumber;
|
|
67
|
-
}
|
|
68
|
-
export function getSessionId() {
|
|
69
|
-
return resposne?.sessionId || '';
|
|
70
|
-
}
|
|
71
|
-
export function getAccountId() {
|
|
72
|
-
return resposne?.accountPersonDetail?.accountId || -1;
|
|
73
|
-
}
|
|
74
|
-
export function getUserId() {
|
|
75
|
-
return resposne.accountPersonDetail?.username;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export function getAccountID() {
|
|
79
|
-
return resposne?.accountPersonDetail?.id;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
export function getUserName() {
|
|
83
|
-
return resposne?.accountPersonDetail?.employeeName;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export function handleUserPhone() {
|
|
87
|
-
const str = resposne?.person?.phone || '';
|
|
88
|
-
const enStr = str && str.slice(0, 3) + '****' + str.slice(str.length - 4);
|
|
89
|
-
return enStr;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
// 获取当前所选组织
|
|
93
|
-
export function getCurrentTargetBgId() {
|
|
94
|
-
return localStorage.getItem('target_bg_id');
|
|
95
|
-
}
|
|
1
|
+
import ENUM from '@/utils/enumConfig';
|
|
2
|
+
|
|
3
|
+
const resposne = JSON.parse(localStorage.getItem(ENUM.BROWSER_CACHE.USER_INFO) || '{}');
|
|
4
|
+
|
|
5
|
+
// 存储表头
|
|
6
|
+
export const setConfigTableColumns = (configvalue: any, tableCode:string) => {
|
|
7
|
+
let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]'
|
|
8
|
+
let configArray = JSON.parse(config)
|
|
9
|
+
let currentSetting = configArray.filter((item:any) => item.code === tableCode)
|
|
10
|
+
if (currentSetting.length) {
|
|
11
|
+
currentSetting[0].detail = JSON.stringify(configvalue)
|
|
12
|
+
} else {
|
|
13
|
+
configArray.push({
|
|
14
|
+
"code": tableCode,
|
|
15
|
+
"detail": JSON.stringify(configvalue)
|
|
16
|
+
})
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
localStorage.setItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION, JSON.stringify(configArray))
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
// 取表头
|
|
23
|
+
export const getConfigTableColumns = (tableCode: string) => {
|
|
24
|
+
if (!tableCode) return [];
|
|
25
|
+
let config = localStorage.getItem(ENUM.BROWSER_CACHE.COLUMN_CONDITION) || '[]';
|
|
26
|
+
let configArray = JSON.parse(config);
|
|
27
|
+
let configSetting = configArray.filter(
|
|
28
|
+
(item:any) => item.code === tableCode,
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
if (configSetting.length) {
|
|
32
|
+
return JSON.parse(configSetting[0].detail || '[]');
|
|
33
|
+
}
|
|
34
|
+
return [];
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
// 登陆租户信息存储、获取、移除
|
|
38
|
+
export const saveTenantList = (data: any) => {
|
|
39
|
+
const list = data?.length && data || [];
|
|
40
|
+
localStorage.setItem('tenant_list', JSON.stringify(list));
|
|
41
|
+
}
|
|
42
|
+
export const getTenantList = () => {
|
|
43
|
+
const list = JSON.parse(localStorage.getItem('tenant_list') || '[]');
|
|
44
|
+
return list
|
|
45
|
+
}
|
|
46
|
+
export const removeTenantList = () => {
|
|
47
|
+
localStorage.removeItem('tenant_list');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// 当前租户存储、获取、移除
|
|
51
|
+
export const saveCurrentTenantId = (item: string) => {
|
|
52
|
+
localStorage.setItem('current_tenant_id', String(item));
|
|
53
|
+
}
|
|
54
|
+
export const getCurrentTenantId = () => {
|
|
55
|
+
return localStorage.getItem('current_tenant_id') || 1;
|
|
56
|
+
}
|
|
57
|
+
export const removeCurrentTenantId = () => {
|
|
58
|
+
localStorage.removeItem('current_tenant_id');
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
export function getEmployeeId() {
|
|
63
|
+
return resposne?.employeeResVo?.id || 2;
|
|
64
|
+
}
|
|
65
|
+
export function getEmployeeCode() {
|
|
66
|
+
return resposne?.employeeResVo?.employeeNumber;
|
|
67
|
+
}
|
|
68
|
+
export function getSessionId() {
|
|
69
|
+
return resposne?.sessionId || '';
|
|
70
|
+
}
|
|
71
|
+
export function getAccountId() {
|
|
72
|
+
return resposne?.accountPersonDetail?.accountId || -1;
|
|
73
|
+
}
|
|
74
|
+
export function getUserId() {
|
|
75
|
+
return resposne.accountPersonDetail?.username;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export function getAccountID() {
|
|
79
|
+
return resposne?.accountPersonDetail?.id;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export function getUserName() {
|
|
83
|
+
return resposne?.accountPersonDetail?.employeeName;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export function handleUserPhone() {
|
|
87
|
+
const str = resposne?.person?.phone || '';
|
|
88
|
+
const enStr = str && str.slice(0, 3) + '****' + str.slice(str.length - 4);
|
|
89
|
+
return enStr;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// 获取当前所选组织
|
|
93
|
+
export function getCurrentTargetBgId() {
|
|
94
|
+
return localStorage.getItem('target_bg_id');
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// 菜单按钮权限 存储/获取key 函数
|
|
98
|
+
export const getMenuAuthDataKey = (channel?: string) => {
|
|
99
|
+
let prefix = channel
|
|
100
|
+
|
|
101
|
+
// 传入channel 则使用传入的channel 作为前缀,一般存储key使用
|
|
102
|
+
// 否则使用下面页面路径处理后的变量为前缀,一般获取key使用
|
|
103
|
+
if(!channel) {
|
|
104
|
+
const channelPlat: string = window.location.pathname
|
|
105
|
+
const defaultPrefix = 'CONFIG_PC';
|
|
106
|
+
const mapping: any = ENUM.MAIN_AUTH_MAPPING;
|
|
107
|
+
prefix = mapping?.[channelPlat] || defaultPrefix
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return `${prefix}:${ENUM.BROWSER_CACHE.MAIN_AUTH_CODES}`
|
|
111
|
+
}
|
package/src/utils/TableUtils.tsx
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
type mediaListType = {
|
|
3
|
-
type: number,
|
|
4
|
-
url: string,
|
|
5
|
-
[key: string]: any;
|
|
6
|
-
}
|
|
7
|
-
type recordType = {
|
|
8
|
-
mediaList?: mediaListType;
|
|
9
|
-
[key: string]: any;
|
|
10
|
-
};
|
|
11
|
-
export const getSkuImg = (
|
|
12
|
-
record: recordType,
|
|
13
|
-
) => {
|
|
14
|
-
// 默认取sku图片、当没有设置时取商品图片,商品图片也没有返回空
|
|
15
|
-
const ImgList = record.mediaList?.length && record.mediaList.filter((i: any) => i.type == 1) || [] // 获取SKU、SPU图片数组集合
|
|
16
|
-
const imgShow = ImgList?.length && ImgList[0].url || null
|
|
17
|
-
return imgShow;
|
|
18
|
-
};
|
|
1
|
+
|
|
2
|
+
type mediaListType = {
|
|
3
|
+
type: number,
|
|
4
|
+
url: string,
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
}
|
|
7
|
+
type recordType = {
|
|
8
|
+
mediaList?: mediaListType;
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
};
|
|
11
|
+
export const getSkuImg = (
|
|
12
|
+
record: recordType,
|
|
13
|
+
) => {
|
|
14
|
+
// 默认取sku图片、当没有设置时取商品图片,商品图片也没有返回空
|
|
15
|
+
const ImgList = record.mediaList?.length && record.mediaList.filter((i: any) => i.type == 1) || [] // 获取SKU、SPU图片数组集合
|
|
16
|
+
const imgShow = ImgList?.length && ImgList[0].url || null
|
|
17
|
+
return imgShow;
|
|
18
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { getMenuAuthDataKey } from '@/utils/LocalstorageUtils';
|
|
2
|
+
|
|
3
|
+
// 判断某个按钮/菜单 是否有权限,返回布尔值
|
|
4
|
+
export const authFunc = (code: string) => {
|
|
5
|
+
return JSON.parse(localStorage.getItem(getMenuAuthDataKey()) || '[]')?.find(
|
|
6
|
+
(d: any) => d === code,
|
|
7
|
+
);
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
// 判断一群按钮是否有权限,返回数组-数组每项为布尔值,通过集合index映射按钮权限关系
|
|
11
|
+
export const handleJudgeAuthButtons = (buttonCodeArray: any[]) => {
|
|
12
|
+
// 处理单按钮 和 多个按钮
|
|
13
|
+
let result =
|
|
14
|
+
buttonCodeArray.length > 1 ? buttonCodeArray.map(() => true) : true;
|
|
15
|
+
const authButton = localStorage.getItem(getMenuAuthDataKey())
|
|
16
|
+
? JSON.parse(localStorage.getItem(getMenuAuthDataKey()) as string)
|
|
17
|
+
: [];
|
|
18
|
+
buttonCodeArray.forEach((item: any, index: number) => {
|
|
19
|
+
if (
|
|
20
|
+
!authButton.filter((itemInner: any) => item.indexOf(itemInner) >= 0)
|
|
21
|
+
.length
|
|
22
|
+
) {
|
|
23
|
+
if (buttonCodeArray.length > 1) {
|
|
24
|
+
// @ts-ignore
|
|
25
|
+
result[index] = false;
|
|
26
|
+
} else {
|
|
27
|
+
result = false;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
return result;
|
|
32
|
+
};
|
package/src/utils/checkUtils.ts
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { message } from 'antd';
|
|
2
|
-
import _ from 'lodash';
|
|
3
|
-
|
|
4
|
-
const checkQuantityAccuracy = (value: any, accuracy: any, errorInfo?: any) => {
|
|
5
|
-
let errorMessage= {showTips: true, tipsMessage: null,...errorInfo}
|
|
6
|
-
if (_.trim(value)) {
|
|
7
|
-
const target = `${value}`;
|
|
8
|
-
if (target.includes(".")) {
|
|
9
|
-
if (target.split(".")[1].length > accuracy) {
|
|
10
|
-
if(errorMessage?.showTips) {
|
|
11
|
-
message.warning(errorMessage?.tipsMessage || `系统设置数量最大精度为${accuracy}位`)
|
|
12
|
-
}
|
|
13
|
-
return false;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return true;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
const precisionQuantity = (num: any, accuracy: any) => {
|
|
21
|
-
if (_.trim(num)) {
|
|
22
|
-
const target = `${num}`;
|
|
23
|
-
if (target.includes(".")) {
|
|
24
|
-
if (target.split(".")[1].length > accuracy) {
|
|
25
|
-
const beforeDot = target.split(".")[0];
|
|
26
|
-
const afterDot = target.split(".")[1]?.slice(0,accuracy)
|
|
27
|
-
const result = accuracy == 0 ? Number(`${beforeDot}`) : Number(`${beforeDot}.${afterDot}`)
|
|
28
|
-
return result
|
|
29
|
-
} else if (target.split(".")[1].length < accuracy) {
|
|
30
|
-
return Number(Number(num).toFixed(Math.abs(accuracy)))
|
|
31
|
-
} else {
|
|
32
|
-
return Number(num)
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return ''
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export { checkQuantityAccuracy, precisionQuantity }
|
|
1
|
+
import { message } from 'antd';
|
|
2
|
+
import _ from 'lodash';
|
|
3
|
+
|
|
4
|
+
const checkQuantityAccuracy = (value: any, accuracy: any, errorInfo?: any) => {
|
|
5
|
+
let errorMessage= {showTips: true, tipsMessage: null,...errorInfo}
|
|
6
|
+
if (_.trim(value)) {
|
|
7
|
+
const target = `${value}`;
|
|
8
|
+
if (target.includes(".")) {
|
|
9
|
+
if (target.split(".")[1].length > accuracy) {
|
|
10
|
+
if(errorMessage?.showTips) {
|
|
11
|
+
message.warning(errorMessage?.tipsMessage || `系统设置数量最大精度为${accuracy}位`)
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const precisionQuantity = (num: any, accuracy: any) => {
|
|
21
|
+
if (_.trim(num)) {
|
|
22
|
+
const target = `${num}`;
|
|
23
|
+
if (target.includes(".")) {
|
|
24
|
+
if (target.split(".")[1].length > accuracy) {
|
|
25
|
+
const beforeDot = target.split(".")[0];
|
|
26
|
+
const afterDot = target.split(".")[1]?.slice(0,accuracy)
|
|
27
|
+
const result = accuracy == 0 ? Number(`${beforeDot}`) : Number(`${beforeDot}.${afterDot}`)
|
|
28
|
+
return result
|
|
29
|
+
} else if (target.split(".")[1].length < accuracy) {
|
|
30
|
+
return Number(Number(num).toFixed(Math.abs(accuracy)))
|
|
31
|
+
} else {
|
|
32
|
+
return Number(num)
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return ''
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { checkQuantityAccuracy, precisionQuantity }
|