af-mobile-client-vue3 1.4.51 → 1.4.53

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 (42) hide show
  1. package/package.json +2 -1
  2. package/public/favicon.svg +4 -4
  3. package/scripts/verifyCommit.js +19 -19
  4. package/src/components/common/otherCharge/ChargePrintSelectorAndRemarks.vue +137 -137
  5. package/src/components/common/otherCharge/CodePayment.vue +357 -357
  6. package/src/components/common/otherCharge/FileUploader.vue +602 -602
  7. package/src/components/common/otherCharge/GridFileUploader.vue +846 -846
  8. package/src/components/common/otherCharge/PaymentMethodSelector.vue +202 -202
  9. package/src/components/common/otherCharge/PaymentMethodSelectorCard.vue +45 -45
  10. package/src/components/common/otherCharge/ReceiptModal.vue +273 -273
  11. package/src/components/common/otherCharge/index.ts +43 -43
  12. package/src/components/data/OtherCharge/OtherChargeItemModal.vue +547 -547
  13. package/src/components/data/UserDetail/types.ts +1 -1
  14. package/src/components/data/XFormItem/index.vue +9 -6
  15. package/src/components/data/XReportGrid/XAddReport/index.ts +1 -1
  16. package/src/components/data/XReportGrid/XReportDrawer/index.ts +1 -1
  17. package/src/components/data/XTag/index.vue +10 -10
  18. package/src/components/layout/TabBarLayout/index.vue +40 -40
  19. package/src/hooks/useCommon.ts +9 -9
  20. package/src/plugins/AppData.ts +38 -38
  21. package/src/router/invoiceRoutes.ts +33 -33
  22. package/src/services/api/common.ts +109 -109
  23. package/src/services/api/manage.ts +8 -8
  24. package/src/services/api/search.ts +16 -16
  25. package/src/services/restTools.ts +56 -56
  26. package/src/utils/authority-utils.ts +84 -84
  27. package/src/utils/crypto.ts +39 -39
  28. package/src/utils/queryFormDefaultRangePicker.ts +57 -57
  29. package/src/utils/runEvalFunction.ts +13 -13
  30. package/src/utils/util.ts +5 -0
  31. package/src/views/component/EvaluateRecordView/index.vue +40 -40
  32. package/src/views/component/XCellDetailView/index.vue +217 -217
  33. package/src/views/component/XCellListView/index.vue +138 -107
  34. package/src/views/component/XFormGroupView/index.vue +82 -78
  35. package/src/views/component/XFormView/index.vue +46 -41
  36. package/src/views/component/XReportFormIframeView/index.vue +47 -47
  37. package/src/views/component/XReportFormView/index.vue +13 -13
  38. package/src/views/component/XSignatureView/index.vue +50 -50
  39. package/src/views/component/notice.vue +46 -46
  40. package/src/views/component/topNav.vue +36 -36
  41. package/src/views/invoiceShow/index.vue +61 -61
  42. package/src/views/user/login/index.vue +22 -22
@@ -23,4 +23,4 @@ export interface ConfigItem {
23
23
  format?: (value: string | number) => string
24
24
  template?: string
25
25
  condition?: (data: any) => boolean
26
- }
26
+ }
@@ -13,6 +13,7 @@ import { useUserStore } from '@af-mobile-client-vue3/stores/modules/user'
13
13
  import { getDict } from '@af-mobile-client-vue3/utils/dictUtil'
14
14
  import { mobileUtil } from '@af-mobile-client-vue3/utils/mobileUtil'
15
15
  import { executeStrFunctionByContext } from '@af-mobile-client-vue3/utils/runEvalFunction'
16
+ import * as util from '@af-mobile-client-vue3/utils/util'
16
17
  import { areaList } from '@vant/area-data'
17
18
  import dayjs from 'dayjs/esm/index'
18
19
  import { debounce } from 'lodash-es'
@@ -193,7 +194,7 @@ const currInst = getCurrentInstance()
193
194
  // 配置中心->表单项变更触发函数
194
195
  async function dataChangeFunc() {
195
196
  if (attr.dataChangeFunc) {
196
- await executeStrFunctionByContext(currInst, attr.dataChangeFunc, [props.form, (formData: any) => emits('setForm', formData), attr, null, mode, runLogic, getConfigByNameAsync, userState.f.resources])
197
+ await executeStrFunctionByContext(currInst, attr.dataChangeFunc, [props.form, (formData: any) => emits('setForm', formData), attr, util, mode, runLogic, getConfigByNameAsync, userState.f.resources, dayjs])
197
198
  }
198
199
  }
199
200
  const dataChangeFuncdebounce = debounce(dataChangeFunc, 300)
@@ -433,8 +434,15 @@ function updateFile(files, _index) {
433
434
  modelData.value = files
434
435
  }
435
436
 
437
+ // 是否只读
438
+ const readonly = computed(() => {
439
+ return props.formReadonly || attr.addOrEdit === 'readonly' || mode === '预览' || customizeReadOnly.value
440
+ })
441
+
436
442
  // 表单校验的类型校验
437
443
  function formTypeCheck(attr, value) {
444
+ if (readonly.value)
445
+ return
438
446
  if (mode === '查询' || mode === '预览')
439
447
  return
440
448
  // if (!attr.rule || !attr.rule.required || attr.rule.required === 'false')
@@ -581,11 +589,6 @@ const labelAlign = computed(() => {
581
589
  return props.labelAlign || attr.labelAlign || 'left'
582
590
  })
583
591
 
584
- // 是否只读
585
- const readonly = computed(() => {
586
- return props.formReadonly || attr.addOrEdit === 'readonly' || mode === '预览' || customizeReadOnly.value
587
- })
588
-
589
592
  // 判断是否显示空提示(只读且值为空)
590
593
  const showEmptyTip = computed(() => {
591
594
  if ((attr.type === 'image' || attr.type === 'file') && props.formReadonly) {
@@ -7,4 +7,4 @@ export default {
7
7
  install(app: App) {
8
8
  app.component('XAddReport', XAddReport)
9
9
  },
10
- }
10
+ }
@@ -7,4 +7,4 @@ export default {
7
7
  install(app: App) {
8
8
  app.component('XReportDrawer', XReportDrawer)
9
9
  },
10
- }
10
+ }
@@ -1,10 +1,10 @@
1
- <script setup lang="ts">
2
- </script>
3
-
4
- <template>
5
- <VanTag />
6
- </template>
7
-
8
- <style scoped lang="less">
9
-
10
- </style>
1
+ <script setup lang="ts">
2
+ </script>
3
+
4
+ <template>
5
+ <VanTag />
6
+ </template>
7
+
8
+ <style scoped lang="less">
9
+
10
+ </style>
@@ -1,40 +1,40 @@
1
- <script setup lang="ts">
2
- import {
3
- Tabbar as VanTabbar,
4
- TabbarItem as VanTabbarItem,
5
- } from 'vant'
6
- import { defineProps } from 'vue'
7
-
8
- const { barList, callbacks } = defineProps<{
9
- barList?: Array<{ icon: string, text: string, method: string }>
10
- callbacks?: object
11
- }>()
12
-
13
- function handleClick(index) {
14
- const methodName = (barList[index] as any).method
15
- callbacks[methodName]()
16
- }
17
- </script>
18
-
19
- <template>
20
- <VanTabbar class="van-bar">
21
- <VanTabbarItem v-for="(item, index) in barList" :key="index" :icon="(item as any).icon" @click="handleClick(index)">
22
- {{ (item as any).text }}
23
- </VanTabbarItem>
24
- </VanTabbar>
25
- </template>
26
-
27
- <style scoped lang="less">
28
- .van-bar {
29
- height: 8vh;
30
- background-color: #f7f8fa;
31
- color: black;
32
- }
33
- .van-tabbar-item:hover {
34
- color: var(--van-text-color-2);
35
- }
36
- :deep(.van-tabbar-item--active) {
37
- background-color: #f7f8fa;
38
- color: black;
39
- }
40
- </style>
1
+ <script setup lang="ts">
2
+ import {
3
+ Tabbar as VanTabbar,
4
+ TabbarItem as VanTabbarItem,
5
+ } from 'vant'
6
+ import { defineProps } from 'vue'
7
+
8
+ const { barList, callbacks } = defineProps<{
9
+ barList?: Array<{ icon: string, text: string, method: string }>
10
+ callbacks?: object
11
+ }>()
12
+
13
+ function handleClick(index) {
14
+ const methodName = (barList[index] as any).method
15
+ callbacks[methodName]()
16
+ }
17
+ </script>
18
+
19
+ <template>
20
+ <VanTabbar class="van-bar">
21
+ <VanTabbarItem v-for="(item, index) in barList" :key="index" :icon="(item as any).icon" @click="handleClick(index)">
22
+ {{ (item as any).text }}
23
+ </VanTabbarItem>
24
+ </VanTabbar>
25
+ </template>
26
+
27
+ <style scoped lang="less">
28
+ .van-bar {
29
+ height: 8vh;
30
+ background-color: #f7f8fa;
31
+ color: black;
32
+ }
33
+ .van-tabbar-item:hover {
34
+ color: var(--van-text-color-2);
35
+ }
36
+ :deep(.van-tabbar-item--active) {
37
+ background-color: #f7f8fa;
38
+ color: black;
39
+ }
40
+ </style>
@@ -1,9 +1,9 @@
1
- export function formatDate(date) {
2
- const year = date.getFullYear()
3
- const month = (date.getMonth() + 1).toString().padStart(2, '0') // 月份加1,并补零
4
- const day = date.getDate().toString().padStart(2, '0') // 日期补零
5
- const hours = date.getHours().toString().padStart(2, '0') // 小时补零
6
- const minutes = date.getMinutes().toString().padStart(2, '0') // 分钟补零
7
- const seconds = date.getSeconds().toString().padStart(2, '0') // 秒数补零
8
- return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
9
- }
1
+ export function formatDate(date) {
2
+ const year = date.getFullYear()
3
+ const month = (date.getMonth() + 1).toString().padStart(2, '0') // 月份加1,并补零
4
+ const day = date.getDate().toString().padStart(2, '0') // 日期补零
5
+ const hours = date.getHours().toString().padStart(2, '0') // 小时补零
6
+ const minutes = date.getMinutes().toString().padStart(2, '0') // 分钟补零
7
+ const seconds = date.getSeconds().toString().padStart(2, '0') // 秒数补零
8
+ return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
9
+ }
@@ -1,38 +1,38 @@
1
- import type { App } from 'vue'
2
- import { manageApi } from '@af-mobile-client-vue3/services/api/manage'
3
- import { APP_WEB_CONFIG_KEY } from '@af-mobile-client-vue3/stores/mutation-type'
4
- import { handleTree } from '@af-mobile-client-vue3/utils/dataUtil'
5
- import { indexedDB } from '@af-mobile-client-vue3/utils/indexedDB'
6
- import { createStorage } from '@af-mobile-client-vue3/utils/Storage'
7
-
8
- const Storage = createStorage({ storage: localStorage })
9
-
10
- export const GetAppDataService = {
11
- install(app: App<Element>) {
12
- app.provide('$appdata', GetAppDataService)
13
- },
14
- async load() {
15
- },
16
- // 返回树形省市区
17
- async getDivisionsOhChinaForTree() {
18
- // 获取省市区数据
19
- return new Promise((resolve, reject) => {
20
- try {
21
- indexedDB.getByWeb('divisionsOhChina', manageApi.getDivisionsOhChina, {}, (res) => {
22
- resolve(res)
23
- }, (processRes) => {
24
- return handleTree(processRes, 'code', 'parentcode', null)
25
- })
26
- }
27
- catch (e) {
28
- reject(e)
29
- }
30
- })
31
- },
32
- getWebConfigByKey(key: string) {
33
- const object = Storage.get(APP_WEB_CONFIG_KEY)
34
- return object[key]
35
- },
36
- }
37
-
38
- export default GetAppDataService
1
+ import type { App } from 'vue'
2
+ import { manageApi } from '@af-mobile-client-vue3/services/api/manage'
3
+ import { APP_WEB_CONFIG_KEY } from '@af-mobile-client-vue3/stores/mutation-type'
4
+ import { handleTree } from '@af-mobile-client-vue3/utils/dataUtil'
5
+ import { indexedDB } from '@af-mobile-client-vue3/utils/indexedDB'
6
+ import { createStorage } from '@af-mobile-client-vue3/utils/Storage'
7
+
8
+ const Storage = createStorage({ storage: localStorage })
9
+
10
+ export const GetAppDataService = {
11
+ install(app: App<Element>) {
12
+ app.provide('$appdata', GetAppDataService)
13
+ },
14
+ async load() {
15
+ },
16
+ // 返回树形省市区
17
+ async getDivisionsOhChinaForTree() {
18
+ // 获取省市区数据
19
+ return new Promise((resolve, reject) => {
20
+ try {
21
+ indexedDB.getByWeb('divisionsOhChina', manageApi.getDivisionsOhChina, {}, (res) => {
22
+ resolve(res)
23
+ }, (processRes) => {
24
+ return handleTree(processRes, 'code', 'parentcode', null)
25
+ })
26
+ }
27
+ catch (e) {
28
+ reject(e)
29
+ }
30
+ })
31
+ },
32
+ getWebConfigByKey(key: string) {
33
+ const object = Storage.get(APP_WEB_CONFIG_KEY)
34
+ return object[key]
35
+ },
36
+ }
37
+
38
+ export default GetAppDataService
@@ -1,33 +1,33 @@
1
- import type { RouteRecordRaw } from 'vue-router'
2
- import PageLayout from '@af-mobile-client-vue3/layout/PageLayout.vue'
3
- import NotFound from '@af-mobile-client-vue3/views/common/NotFound.vue'
4
- import invoiceShow from '@af-mobile-client-vue3/views/invoiceShow/index.vue'
5
-
6
- const routes: Array<RouteRecordRaw> = [
7
- {
8
- path: '/',
9
- name: 'root',
10
- component: PageLayout,
11
- redirect: { name: 'Component' },
12
- children: [
13
- {
14
- path: '/invoiceShow',
15
- name: 'invoiceShow',
16
- component: invoiceShow,
17
- },
18
- ],
19
- },
20
- {
21
- path: '/404',
22
- name: '404',
23
- component: NotFound,
24
- },
25
- {
26
- path: '/:pathMatch(.*)',
27
- redirect: {
28
- name: '404',
29
- },
30
- },
31
- ]
32
-
33
- export default routes
1
+ import type { RouteRecordRaw } from 'vue-router'
2
+ import PageLayout from '@af-mobile-client-vue3/layout/PageLayout.vue'
3
+ import NotFound from '@af-mobile-client-vue3/views/common/NotFound.vue'
4
+ import invoiceShow from '@af-mobile-client-vue3/views/invoiceShow/index.vue'
5
+
6
+ const routes: Array<RouteRecordRaw> = [
7
+ {
8
+ path: '/',
9
+ name: 'root',
10
+ component: PageLayout,
11
+ redirect: { name: 'Component' },
12
+ children: [
13
+ {
14
+ path: '/invoiceShow',
15
+ name: 'invoiceShow',
16
+ component: invoiceShow,
17
+ },
18
+ ],
19
+ },
20
+ {
21
+ path: '/404',
22
+ name: '404',
23
+ component: NotFound,
24
+ },
25
+ {
26
+ path: '/:pathMatch(.*)',
27
+ redirect: {
28
+ name: '404',
29
+ },
30
+ },
31
+ ]
32
+
33
+ export default routes
@@ -1,109 +1,109 @@
1
- import { del, post, postWithConfig } from '@af-mobile-client-vue3/services/restTools'
2
- import { indexedDB } from '@af-mobile-client-vue3/utils/indexedDB'
3
-
4
- const commonApi = {
5
- // 获取配置
6
- getConfig: 'logic/openapi/getLiuliConfiguration',
7
- // 通用查询
8
- query: 'logic/commonQuery',
9
- // 编辑前查询
10
- queryWithResource: 'logic/commonQueryWithResource',
11
- // 通用新增/修改
12
- addOrModify: 'logic/commonAddOrModify',
13
- // 通用删除
14
- delete: 'logic/commonDelete',
15
- }
16
-
17
- /**
18
- * 根据配置名获取配置内容
19
- * @param configName 配置名称
20
- * @param callback 回调函数
21
- */
22
- export function getConfigByName(configName: string, callback: Function): void
23
- export function getConfigByName(configName: string, callback: Function, serviceName: string): void
24
- /**
25
- * 根据配置名获取配置内容
26
- * @param configName 配置名称
27
- * @param callback 回调函数
28
- * @param serviceName 服务名
29
- */
30
- export function getConfigByName(configName: string, callback: Function, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME): void {
31
- indexedDB.getByWeb(configName, `/${serviceName}/${commonApi.getConfig}`, { configName }, callback, null)
32
- }
33
-
34
- export async function getConfigByNameAsync(configName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME): Promise<any> {
35
- return new Promise((resolve, reject) => {
36
- indexedDB.getByWeb(configName, `/${serviceName}/${commonApi.getConfig}`, { configName }, resolve, null)
37
- })
38
- }
39
-
40
- /**
41
- * 临时使用
42
- * 获取琉璃配置,不走indexedDB缓存
43
- * @param configName
44
- * @param serviceName
45
- */
46
- export function getConfigByNameWithoutIndexedDB(configName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
47
- return post(`/${serviceName}/${commonApi.getConfig}`, { configName })
48
- }
49
-
50
- /**
51
- * 通用执行业务逻辑
52
- */
53
- export function runLogic<T>(logicName: string, parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME): Promise<T> {
54
- return post<T>(`/${serviceName}/logic/${logicName}`, parameter)
55
- }
56
-
57
- /**
58
- * 通用查询
59
- */
60
- export function query(parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
61
- return post(`/${serviceName}/${commonApi.query}`, parameter)
62
- }
63
-
64
- /**
65
- * 编辑前查询
66
- */
67
- export function queryWithResource(parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
68
- return post(`/${serviceName}/${commonApi.queryWithResource}`, parameter)
69
- }
70
-
71
- /**
72
- * 通用新增/修改
73
- */
74
- export function addOrModify(parameter: object, tableName = 't_files', serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
75
- return post(`/${serviceName}/entity/${tableName}`, parameter)
76
- }
77
-
78
- /**
79
- * 通用新增/修改
80
- */
81
- export function addOrModifyEntity(parameter: object, tableName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
82
- return post(`/${serviceName}/entity/save/${tableName}`, parameter)
83
- }
84
-
85
- /**
86
- * 通用删除
87
- */
88
- export function remove(parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
89
- return post(`/${serviceName}/${commonApi.delete}`, parameter)
90
- }
91
-
92
- /**
93
- * @description: 上传
94
- */
95
- export function upload(parameter, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME, config) {
96
- return postWithConfig(`/${serviceName}/resource/upload`, parameter, config)
97
- }
98
-
99
- /**
100
- * @description: 删除
101
- */
102
- export function deleteFile(data, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
103
- return del(`/${serviceName}/entity/t_files`, data)
104
- }
105
-
106
- export function openApiLogic(parameter, logicName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
107
- return post(`/${serviceName}/logic/openapi/${logicName}`, parameter)
108
- }
109
- export { commonApi }
1
+ import { del, post, postWithConfig } from '@af-mobile-client-vue3/services/restTools'
2
+ import { indexedDB } from '@af-mobile-client-vue3/utils/indexedDB'
3
+
4
+ const commonApi = {
5
+ // 获取配置
6
+ getConfig: 'logic/openapi/getLiuliConfiguration',
7
+ // 通用查询
8
+ query: 'logic/commonQuery',
9
+ // 编辑前查询
10
+ queryWithResource: 'logic/commonQueryWithResource',
11
+ // 通用新增/修改
12
+ addOrModify: 'logic/commonAddOrModify',
13
+ // 通用删除
14
+ delete: 'logic/commonDelete',
15
+ }
16
+
17
+ /**
18
+ * 根据配置名获取配置内容
19
+ * @param configName 配置名称
20
+ * @param callback 回调函数
21
+ */
22
+ export function getConfigByName(configName: string, callback: Function): void
23
+ export function getConfigByName(configName: string, callback: Function, serviceName: string): void
24
+ /**
25
+ * 根据配置名获取配置内容
26
+ * @param configName 配置名称
27
+ * @param callback 回调函数
28
+ * @param serviceName 服务名
29
+ */
30
+ export function getConfigByName(configName: string, callback: Function, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME): void {
31
+ indexedDB.getByWeb(configName, `/${serviceName}/${commonApi.getConfig}`, { configName }, callback, null)
32
+ }
33
+
34
+ export async function getConfigByNameAsync(configName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME): Promise<any> {
35
+ return new Promise((resolve, reject) => {
36
+ indexedDB.getByWeb(configName, `/${serviceName}/${commonApi.getConfig}`, { configName }, resolve, null)
37
+ })
38
+ }
39
+
40
+ /**
41
+ * 临时使用
42
+ * 获取琉璃配置,不走indexedDB缓存
43
+ * @param configName
44
+ * @param serviceName
45
+ */
46
+ export function getConfigByNameWithoutIndexedDB(configName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
47
+ return post(`/${serviceName}/${commonApi.getConfig}`, { configName })
48
+ }
49
+
50
+ /**
51
+ * 通用执行业务逻辑
52
+ */
53
+ export function runLogic<T>(logicName: string, parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME): Promise<T> {
54
+ return post<T>(`/${serviceName}/logic/${logicName}`, parameter)
55
+ }
56
+
57
+ /**
58
+ * 通用查询
59
+ */
60
+ export function query(parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
61
+ return post(`/${serviceName}/${commonApi.query}`, parameter)
62
+ }
63
+
64
+ /**
65
+ * 编辑前查询
66
+ */
67
+ export function queryWithResource(parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
68
+ return post(`/${serviceName}/${commonApi.queryWithResource}`, parameter)
69
+ }
70
+
71
+ /**
72
+ * 通用新增/修改
73
+ */
74
+ export function addOrModify(parameter: object, tableName = 't_files', serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
75
+ return post(`/${serviceName}/entity/${tableName}`, parameter)
76
+ }
77
+
78
+ /**
79
+ * 通用新增/修改
80
+ */
81
+ export function addOrModifyEntity(parameter: object, tableName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
82
+ return post(`/${serviceName}/entity/save/${tableName}`, parameter)
83
+ }
84
+
85
+ /**
86
+ * 通用删除
87
+ */
88
+ export function remove(parameter: object, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
89
+ return post(`/${serviceName}/${commonApi.delete}`, parameter)
90
+ }
91
+
92
+ /**
93
+ * @description: 上传
94
+ */
95
+ export function upload(parameter, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME, config) {
96
+ return postWithConfig(`/${serviceName}/resource/upload`, parameter, config)
97
+ }
98
+
99
+ /**
100
+ * @description: 删除
101
+ */
102
+ export function deleteFile(data, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
103
+ return del(`/${serviceName}/entity/t_files`, data)
104
+ }
105
+
106
+ export function openApiLogic(parameter, logicName: string, serviceName = import.meta.env.VITE_APP_SYSTEM_NAME) {
107
+ return post(`/${serviceName}/logic/openapi/${logicName}`, parameter)
108
+ }
109
+ export { commonApi }
@@ -1,8 +1,8 @@
1
- const manageApi = {
2
- // 查询:获取省市区街道三级分类
3
- getDivisionsOhChina: '/af-system/logic/getDivisionsOhChina',
4
- }
5
-
6
- export {
7
- manageApi,
8
- }
1
+ const manageApi = {
2
+ // 查询:获取省市区街道三级分类
3
+ getDivisionsOhChina: '/af-system/logic/getDivisionsOhChina',
4
+ }
5
+
6
+ export {
7
+ manageApi,
8
+ }
@@ -1,16 +1,16 @@
1
- import { post } from '@af-mobile-client-vue3/services/restTools'
2
-
3
- export async function getUserPermissions(userid: string) {
4
- interface permissions {
5
- name: string
6
- }
7
-
8
- const res = await post<permissions[]>(`/af-system/search`, {
9
- source: 'this.getRights().where(row.getType()==$function$ && row.getPath($name$).indexOf($功能权限$) != -1)',
10
- userid,
11
- })
12
-
13
- return res.map((row) => {
14
- return row.name
15
- })
16
- }
1
+ import { post } from '@af-mobile-client-vue3/services/restTools'
2
+
3
+ export async function getUserPermissions(userid: string) {
4
+ interface permissions {
5
+ name: string
6
+ }
7
+
8
+ const res = await post<permissions[]>(`/af-system/search`, {
9
+ source: 'this.getRights().where(row.getType()==$function$ && row.getPath($name$).indexOf($功能权限$) != -1)',
10
+ userid,
11
+ })
12
+
13
+ return res.map((row) => {
14
+ return row.name
15
+ })
16
+ }