@cloudbase/weda-ui 3.4.2 → 3.4.3
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/dist/configs/components/auth.json +2 -1
- package/dist/configs/components/button.js +240 -0
- package/dist/configs/components/calendar.json +4 -2
- package/dist/configs/components/carousel.json +2 -1
- package/dist/configs/components/chart/bar.json +3 -2
- package/dist/configs/components/chart/line.js +868 -0
- package/dist/configs/components/chart/pie.json +3 -2
- package/dist/configs/components/chart/statisticsCard.json +3 -2
- package/dist/configs/components/container.js +64 -0
- package/dist/configs/components/dataView.json +16 -1
- package/dist/configs/components/drawer.json +2 -1
- package/dist/configs/components/flow/flow.json +26 -0
- package/dist/configs/components/flow/flowbasic.json +122 -0
- package/dist/configs/components/flow/flowchart.json +22 -0
- package/dist/configs/components/flow/flowcontrol.json +66 -0
- package/dist/configs/components/flow/flowlayout.json +31 -0
- package/dist/configs/components/flow/flowprocess.json +122 -0
- package/dist/configs/components/form/checkbox.json +2 -1
- package/dist/configs/components/form/departTreeSelect.json +2 -1
- package/dist/configs/components/form/form.json +2 -1
- package/dist/configs/components/form/input.json +2 -1
- package/dist/configs/components/form/location.json +2 -1
- package/dist/configs/components/form/radio.json +2 -1
- package/dist/configs/components/form/richText.json +2 -1
- package/dist/configs/components/form/select.json +6 -1
- package/dist/configs/components/form/switch.json +2 -1
- package/dist/configs/components/form/textarea.json +2 -1
- package/dist/configs/components/form/tips.json +2 -1
- package/dist/configs/components/form/uploader.json +2 -1
- package/dist/configs/components/form/uploaderFile.json +2 -1
- package/dist/configs/components/form/userTreeSelect.json +2 -1
- package/dist/configs/components/formdetail.json +4 -2
- package/dist/configs/components/graphicCard.json +2 -1
- package/dist/configs/components/image.js +195 -0
- package/dist/configs/components/link.js +68 -0
- package/dist/configs/components/listView.json +33 -1
- package/dist/configs/components/lottery.json +6 -2
- package/dist/configs/components/modal.js +72 -0
- package/dist/configs/components/navLayout.json +3 -2
- package/dist/configs/components/navigationBar.json +3 -2
- package/dist/configs/components/pagelayout.json +31 -0
- package/dist/configs/components/richtextview.json +4 -3
- package/dist/configs/components/scrollVeiw.json +5 -3
- package/dist/configs/components/slot.json +2 -1
- package/dist/configs/components/swiper.json +3 -2
- package/dist/configs/components/table.json +734 -0
- package/dist/configs/components/tabs.js +120 -0
- package/dist/configs/components/text.js +109 -0
- package/dist/configs/components/wd-bubble.json +170 -0
- package/dist/configs/components/wedaVideo.json +7 -2
- package/dist/configs/components/wxOpenApi/phone.js +126 -0
- package/dist/configs/components/wxOpenApi/phoneCode.js +117 -0
- package/dist/configs/components/wxOpenApi/share.js +164 -0
- package/dist/configs/components/wxOpenApi/userInfo.js +168 -0
- package/dist/configs/index.js +30 -12
- package/dist/configs/type-utils/index.js +89 -0
- package/dist/web/components/button/index.js +1 -1
- package/dist/web/components/carousel/index.js +10 -5
- package/dist/web/components/flow/components/FlowModuleText/Content.js +6 -0
- package/dist/web/components/flow/components/FlowModuleText/Title.js +16 -0
- package/dist/web/components/flow/components/FlowModuleText/index.css +7 -0
- package/dist/web/components/flow/components/FlowModuleText/index.js +7 -0
- package/dist/web/components/flow/components/FlowModuleText/utils.js +34 -0
- package/dist/web/components/flow/components/FlowStatusText/index.js +37 -0
- package/dist/web/components/flow/components/FlowUserSelect/index.css +119 -0
- package/dist/web/components/flow/components/FlowUserSelect/index.js +115 -0
- package/dist/web/components/flow/components/HighLightComment/index.js +31 -0
- package/dist/web/components/flow/components/HighlightTextarea/index.css +45 -0
- package/dist/web/components/flow/components/HighlightTextarea/index.js +131 -0
- package/dist/web/components/flow/components/UserSelectModel/UserSelect.js +71 -0
- package/dist/web/components/flow/components/UserSelectModel/UserSelectMobile.css +11 -0
- package/dist/web/components/flow/components/UserSelectModel/UserSelectMobile.js +83 -0
- package/dist/web/components/flow/components/UserSelectModel/index.js +18 -0
- package/dist/web/components/flow/components/WedaUserTransfer/index.css +6 -0
- package/dist/web/components/flow/components/WedaUserTransfer/index.js +162 -0
- package/dist/web/components/flow/components/index.js +7 -0
- package/dist/web/components/flow/constants/index.js +65 -0
- package/dist/web/components/flow/frame/getCommonFlowData.js +78 -0
- package/dist/web/components/flow/frame/hooks/index.js +2 -0
- package/dist/web/components/flow/frame/hooks/useCommonFlowRequest.js +148 -0
- package/dist/web/components/flow/frame/hooks/useElementMediaQuery.js +15 -0
- package/dist/web/components/flow/frame/index.js +58 -0
- package/dist/web/components/flow/frame/types.js +265 -0
- package/dist/web/components/flow/frame/utils.js +81 -0
- package/dist/web/components/flow/modules/basic/Basic.css +19 -0
- package/dist/web/components/flow/modules/basic/Basic.js +48 -0
- package/dist/web/components/flow/modules/basic/BasicMobile.css +32 -0
- package/dist/web/components/flow/modules/basic/BasicMobile.js +41 -0
- package/dist/web/components/flow/modules/basic/index.js +13 -0
- package/dist/web/components/flow/modules/basic/utils.js +20 -0
- package/dist/web/components/flow/modules/chart/Chart.js +302 -0
- package/dist/web/components/flow/modules/chart/constants.js +28 -0
- package/dist/web/components/flow/modules/chart/index.css +90 -0
- package/dist/web/components/flow/modules/chart/index.js +5 -0
- package/dist/web/components/flow/modules/combination/index.js +21 -0
- package/dist/web/components/flow/modules/control/ApprovalDrawer.css +147 -0
- package/dist/web/components/flow/modules/control/ApprovalDrawer.js +178 -0
- package/dist/web/components/flow/modules/control/ApprovalPopup.css +118 -0
- package/dist/web/components/flow/modules/control/ApprovalPopup.js +237 -0
- package/dist/web/components/flow/modules/control/Control.css +32 -0
- package/dist/web/components/flow/modules/control/Control.js +90 -0
- package/dist/web/components/flow/modules/control/ControlMobile.css +72 -0
- package/dist/web/components/flow/modules/control/ControlMobile.js +133 -0
- package/dist/web/components/flow/modules/control/FlowTaskInfoModal.css +6 -0
- package/dist/web/components/flow/modules/control/FlowTaskInfoModal.js +31 -0
- package/dist/web/components/flow/modules/control/constants/index.js +35 -0
- package/dist/web/components/flow/modules/control/index.js +15 -0
- package/dist/web/components/flow/modules/control/provider/index.js +17 -0
- package/dist/web/components/flow/modules/control/provider/useControlModel.js +243 -0
- package/dist/web/components/flow/modules/control/provider/useMobileModel.js +86 -0
- package/dist/web/components/flow/modules/control/provider/useRevokeAndBackHook.js +82 -0
- package/dist/web/components/flow/modules/control/utils/ControlModelUtils.js +57 -0
- package/dist/web/components/flow/modules/control/utils/index.js +2 -0
- package/dist/web/components/flow/modules/layout/index.css +9 -0
- package/dist/web/components/flow/modules/layout/index.js +22 -0
- package/dist/web/components/flow/modules/process/Process.js +73 -0
- package/dist/web/components/flow/modules/process/ProcessMobile.js +81 -0
- package/dist/web/components/flow/modules/process/index.css +188 -0
- package/dist/web/components/flow/modules/process/index.js +14 -0
- package/dist/web/components/flow/modules/process/utils/index.js +32 -0
- package/dist/web/components/flow/services/flow.js +111 -0
- package/dist/web/components/flow/services/ideData/chart.js +88 -0
- package/dist/web/components/flow/services/ideData/index.js +5 -0
- package/dist/web/components/flow/services/ideData/instance.js +23 -0
- package/dist/web/components/flow/services/ideData/pageDetail.js +41 -0
- package/dist/web/components/flow/services/ideData/process.js +27 -0
- package/dist/web/components/flow/services/index.js +2 -0
- package/dist/web/components/flow/services/user.js +23 -0
- package/dist/web/components/flow/services/utils.js +28 -0
- package/dist/web/components/form/enumSelect/NormalSelect.js +1 -1
- package/dist/web/components/form/form/index.js +4 -3
- package/dist/web/components/form/input/index.css +6 -1
- package/dist/web/components/form/input/index.js +1 -1
- package/dist/web/components/form/select/allTimePicker/dataUtils.js +10 -0
- package/dist/web/components/form/select/allTimePicker/index.js +36 -27
- package/dist/web/components/form/select/dropdown-select/h5.js +130 -0
- package/dist/web/components/form/select/dropdown-select/index.css +159 -0
- package/dist/web/components/form/select/dropdown-select/index.js +173 -0
- package/dist/web/components/form/select/dropdown-select/pc.js +73 -0
- package/dist/web/components/form/select/dropdown-select/ui.js +42 -40
- package/dist/web/components/form/select/h5.js +16 -6
- package/dist/web/components/form/select/index.css +8 -1
- package/dist/web/components/form/select/index.js +5 -7
- package/dist/web/components/form/select/request.js +106 -0
- package/dist/web/components/form/select/status/allEmpty.js +5 -0
- package/dist/web/components/form/select/status/empty.js +18 -0
- package/dist/web/components/form/select/status/index.css +66 -0
- package/dist/web/components/form/select/status/index.js +7 -0
- package/dist/web/components/form/select/status/loading.js +20 -0
- package/dist/web/components/form/select/status/propsType.js +1 -0
- package/dist/web/components/form/select/status/retry.js +20 -0
- package/dist/web/components/form/switch/index.js +1 -1
- package/dist/web/components/form/textarea/index.js +1 -1
- package/dist/web/components/form/uploader/uploader.h5.js +4 -4
- package/dist/web/components/form/uploader/uploader.pc.js +1 -1
- package/dist/web/components/form/uploaderFile/uploadFile.h5.js +1 -1
- package/dist/web/components/form/uploaderFile/uploadFile.pc.js +1 -1
- package/dist/web/components/form/userOrgSelect/common/fetch-data-service.js +194 -0
- package/dist/web/components/form/userOrgSelect/common/types.js +1 -0
- package/dist/web/components/form/userOrgSelect/common/utils.js +15 -0
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.pc.js +1 -1
- package/dist/web/components/form/userOrgSelect/getUserService.js +10 -5
- package/dist/web/components/form/userOrgSelect/hooks/use-depart-data.js +93 -0
- package/dist/web/components/form/userOrgSelect/index.js +1 -1
- package/dist/web/components/form/userOrgSelect/user-select-pc/error-tips.js +11 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/index.css +216 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/index.js +195 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/model-user-list.js +99 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/org-tree.js +15 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/search-user.js +80 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/selected-user-list.js +12 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/user-model.js +36 -0
- package/dist/web/components/form/userOrgSelect/userTreeSelect.h5.js +71 -47
- package/dist/web/components/image/index.js +1 -1
- package/dist/web/components/index.js +17 -0
- package/dist/web/components/listView/index.css +9 -1
- package/dist/web/components/listView/index.js +66 -50
- package/dist/web/components/modal/modal.h5.js +1 -1
- package/dist/web/components/modal/modal.pc.js +1 -1
- package/dist/web/components/navigationBar/index.css +2 -1
- package/dist/web/components/pageLayout/PageContent/index.css +28 -0
- package/dist/web/components/pageLayout/PageContent/index.js +81 -0
- package/dist/web/components/pageLayout/index.css +7 -0
- package/dist/web/components/pageLayout/index.js +21 -0
- package/dist/web/components/phoneCode/index.js +1 -0
- package/dist/web/components/richText/index.css +5 -1
- package/dist/web/components/richText/index.js +2 -2
- package/dist/web/components/richText/richtext.module.css +2 -2
- package/dist/web/components/table/BaseTable.js +1171 -0
- package/dist/web/components/table/FieldRender.js +622 -0
- package/dist/web/components/table/FilterFields.js +512 -0
- package/dist/web/components/table/Form/Enum.js +56 -0
- package/dist/web/components/table/Form/Location.css +14 -0
- package/dist/web/components/table/Form/Location.js +126 -0
- package/dist/web/components/table/ImportFileModal/csvTemplate.json +547 -0
- package/dist/web/components/table/ImportFileModal/index.css +263 -0
- package/dist/web/components/table/ImportFileModal/index.js +310 -0
- package/dist/web/components/table/ImportFileModal/submitFormatter.js +32 -0
- package/dist/web/components/table/ImportFileModal/validate.js +127 -0
- package/dist/web/components/table/QuoteModal.js +16 -0
- package/dist/web/components/table/SelectableBlock/index.css +2 -0
- package/dist/web/components/table/SelectableBlock/index.js +81 -0
- package/dist/web/components/table/UserDepartment/ViewCell.js +11 -0
- package/dist/web/components/table/UserDepartment/utils.js +80 -0
- package/dist/web/components/table/UserDepartment/viewCell.css +14 -0
- package/dist/web/components/table/index.css +569 -0
- package/dist/web/components/table/index.js +109 -0
- package/dist/web/components/tabs/tabs.h5.js +1 -1
- package/dist/web/components/tabs/tabs.pc.js +1 -1
- package/dist/web/components/text/index.css +2 -1
- package/dist/web/components/text/index.js +2 -2
- package/dist/web/components/uploaderFileView/index.js +6 -5
- package/dist/web/components/wd-bubble/index.css +21 -0
- package/dist/web/components/wd-bubble/index.js +17 -0
- package/dist/web/components/wedaVideo/index.js +1 -1
- package/dist/web/index.js +1 -0
- package/dist/web/utils/constant.js +94 -1
- package/dist/web/utils/datasource.js +357 -0
- package/dist/web/utils/date.js +137 -0
- package/dist/web/utils/file.js +168 -0
- package/dist/web/utils/getPageQuery.js +16 -0
- package/dist/web/utils/hooks/EnumHoc.js +61 -0
- package/dist/web/utils/hooks/context.js +24 -0
- package/dist/web/utils/hooks/globalConnect.js +26 -0
- package/dist/web/utils/{use-cloud-id-temp-url.js → hooks/use-cloud-id-temp-url.js} +2 -2
- package/dist/web/utils/hooks/useRequest.js +25 -0
- package/dist/web/utils/{useSetState.js → hooks/useSetState.js} +0 -0
- package/dist/web/utils/{useSyncValue.js → hooks/useSyncValue.js} +0 -0
- package/dist/web/utils/platform.js +112 -23
- package/dist/web/utils/tcb.js +30 -8
- package/dist/web/utils/tool.js +21 -0
- package/package.json +18 -6
- package/dist/configs/components/button.json +0 -239
- package/dist/configs/components/chart/line.json +0 -881
- package/dist/configs/components/container.json +0 -64
- package/dist/configs/components/image.json +0 -190
- package/dist/configs/components/link.json +0 -82
- package/dist/configs/components/modal.json +0 -73
- package/dist/configs/components/tabs.json +0 -122
- package/dist/configs/components/text.json +0 -112
- package/dist/configs/components/wxOpenApi/phone.json +0 -127
- package/dist/configs/components/wxOpenApi/phoneCode.json +0 -109
- package/dist/configs/components/wxOpenApi/share.json +0 -161
- package/dist/configs/components/wxOpenApi/userInfo.json +0 -168
- package/dist/configs/index.d.ts +0 -105
- package/dist/docs/common/format.d.ts +0 -13
- package/dist/docs/common/tableView.d.ts +0 -30
- package/dist/index.d.ts +0 -2
- package/dist/setupTests.d.ts +0 -2
- package/dist/web/actions/index.d.ts +0 -3
- package/dist/web/actions/showMessage/index.d.ts +0 -17
- package/dist/web/actions/showModal/index.d.ts +0 -4
- package/dist/web/actions/showToast/index.d.ts +0 -1
- package/dist/web/components/button/index.d.ts +0 -33
- package/dist/web/components/calendar/index.d.ts +0 -19
- package/dist/web/components/calendar/util.d.ts +0 -13
- package/dist/web/components/carousel/index.d.ts +0 -41
- package/dist/web/components/chart/bar/index.d.ts +0 -3
- package/dist/web/components/chart/bar/index.old.d.ts +0 -40
- package/dist/web/components/chart/common/Chart.d.ts +0 -9
- package/dist/web/components/chart/common/chart-custom-connector.d.ts +0 -6
- package/dist/web/components/chart/common/chart-error.d.ts +0 -2
- package/dist/web/components/chart/common/config/bar.d.ts +0 -48
- package/dist/web/components/chart/common/config/global.d.ts +0 -13
- package/dist/web/components/chart/common/config/line.d.ts +0 -46
- package/dist/web/components/chart/common/config/pie.d.ts +0 -29
- package/dist/web/components/chart/common/core/eChartBar.d.ts +0 -66
- package/dist/web/components/chart/common/core/eChartBase.d.ts +0 -127
- package/dist/web/components/chart/common/core/eChartLine.d.ts +0 -60
- package/dist/web/components/chart/common/core/eChartPie.d.ts +0 -48
- package/dist/web/components/chart/common/core/type.d.ts +0 -35
- package/dist/web/components/chart/common/data-transform.d.ts +0 -8
- package/dist/web/components/chart/common/echarts.d.ts +0 -5
- package/dist/web/components/chart/common/useChart.d.ts +0 -8
- package/dist/web/components/chart/line/index.d.ts +0 -3
- package/dist/web/components/chart/line/index.old.d.ts +0 -38
- package/dist/web/components/chart/pie/index.d.ts +0 -3
- package/dist/web/components/chart/pie/index.old.d.ts +0 -27
- package/dist/web/components/chart/statisticsCard/index.d.ts +0 -85
- package/dist/web/components/chart/statisticsCard/interface.d.ts +0 -13
- package/dist/web/components/common/error-boundary.d.ts +0 -5
- package/dist/web/components/common/portal.d.ts +0 -7
- package/dist/web/components/common/use-loop-render-detect.d.ts +0 -11
- package/dist/web/components/container/index.d.ts +0 -6
- package/dist/web/components/dataView/index.d.ts +0 -6
- package/dist/web/components/dataView/interface.d.ts +0 -5
- package/dist/web/components/drawer/index.d.ts +0 -13
- package/dist/web/components/form/checkbox/index.d.ts +0 -13
- package/dist/web/components/form/enumSelect/MultipleSelect.d.ts +0 -78
- package/dist/web/components/form/enumSelect/NormalSelect.d.ts +0 -83
- package/dist/web/components/form/enumSelect/SelectContainer.d.ts +0 -16
- package/dist/web/components/form/enumSelect/index.d.ts +0 -82
- package/dist/web/components/form/enumSelect/props/defaultProps.d.ts +0 -34
- package/dist/web/components/form/enumSelect/props/propsTypes.d.ts +0 -39
- package/dist/web/components/form/form/index.d.ts +0 -32
- package/dist/web/components/form/formcell/index.d.ts +0 -8
- package/dist/web/components/form/input/index.d.ts +0 -14
- package/dist/web/components/form/location/common/mapChoose.d.ts +0 -15
- package/dist/web/components/form/location/common/mapView.d.ts +0 -19
- package/dist/web/components/form/location/common/propsConfig.d.ts +0 -59
- package/dist/web/components/form/location/common/selectModal.d.ts +0 -21
- package/dist/web/components/form/location/common/useLocationInfo.d.ts +0 -36
- package/dist/web/components/form/location/components/LocationH5/location.h5.d.ts +0 -8
- package/dist/web/components/form/location/components/LocationPC/Header.d.ts +0 -12
- package/dist/web/components/form/location/components/LocationPC/location.PC.d.ts +0 -8
- package/dist/web/components/form/location/constants.d.ts +0 -2
- package/dist/web/components/form/location/index.d.ts +0 -1
- package/dist/web/components/form/radio/index.d.ts +0 -11
- package/dist/web/components/form/renderDecorator.d.ts +0 -6
- package/dist/web/components/form/select/allTimePicker/calendar.d.ts +0 -13
- package/dist/web/components/form/select/allTimePicker/dataUtils.d.ts +0 -24
- package/dist/web/components/form/select/allTimePicker/index.d.ts +0 -14
- package/dist/web/components/form/select/dropdown-select/ui.d.ts +0 -15
- package/dist/web/components/form/select/h5.d.ts +0 -16
- package/dist/web/components/form/select/index.d.ts +0 -66
- package/dist/web/components/form/select/region/index.d.ts +0 -6
- package/dist/web/components/form/select/time.d.ts +0 -9
- package/dist/web/components/form/select/use-options.d.ts +0 -26
- package/dist/web/components/form/select/use-options.js +0 -103
- package/dist/web/components/form/select/year.d.ts +0 -7
- package/dist/web/components/form/switch/index.d.ts +0 -6
- package/dist/web/components/form/textarea/index.d.ts +0 -12
- package/dist/web/components/form/tips/index.d.ts +0 -8
- package/dist/web/components/form/uploader/index.d.ts +0 -3
- package/dist/web/components/form/uploader/uploader.h5.d.ts +0 -20
- package/dist/web/components/form/uploader/uploader.pc.d.ts +0 -30
- package/dist/web/components/form/uploaderFile/index.d.ts +0 -4
- package/dist/web/components/form/uploaderFile/uploadFile.h5.d.ts +0 -23
- package/dist/web/components/form/uploaderFile/uploadFile.pc.d.ts +0 -35
- package/dist/web/components/form/userOrgSelect/comTool.d.ts +0 -8
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.d.ts +0 -19
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.pc.d.ts +0 -4
- package/dist/web/components/form/userOrgSelect/departTreeSelect/index.d.ts +0 -2
- package/dist/web/components/form/userOrgSelect/getUserService.d.ts +0 -11
- package/dist/web/components/form/userOrgSelect/index.d.ts +0 -2
- package/dist/web/components/form/userOrgSelect/userTreeSelect.h5.d.ts +0 -27
- package/dist/web/components/form/userOrgSelect/userTreeSelect.pc.d.ts +0 -9
- package/dist/web/components/form/userOrgSelect/userTreeSelect.pc.js +0 -273
- package/dist/web/components/form/userOrgSelect/utils.d.ts +0 -37
- package/dist/web/components/formdetail/index.d.ts +0 -31
- package/dist/web/components/graphicCard/index.d.ts +0 -47
- package/dist/web/components/image/image.d.ts +0 -9
- package/dist/web/components/image/index.d.ts +0 -13
- package/dist/web/components/index.d.ts +0 -50
- package/dist/web/components/link/index.d.ts +0 -24
- package/dist/web/components/listView/index.d.ts +0 -7
- package/dist/web/components/listView/interface.d.ts +0 -127
- package/dist/web/components/lottery/index.d.ts +0 -22
- package/dist/web/components/lottery/lotteryUtil.d.ts +0 -23
- package/dist/web/components/modal/index.d.ts +0 -17
- package/dist/web/components/modal/modal.h5.d.ts +0 -4
- package/dist/web/components/modal/modal.pc.d.ts +0 -3
- package/dist/web/components/navLayout/index.d.ts +0 -65
- package/dist/web/components/navigationBar/common.d.ts +0 -15
- package/dist/web/components/navigationBar/h5Menu.d.ts +0 -14
- package/dist/web/components/navigationBar/horizontalMenu.d.ts +0 -12
- package/dist/web/components/navigationBar/index.d.ts +0 -13
- package/dist/web/components/navigationBar/verticalMenu.d.ts +0 -13
- package/dist/web/components/phone/index.d.ts +0 -18
- package/dist/web/components/phoneCode/index.d.ts +0 -18
- package/dist/web/components/picker/datePicker.d.ts +0 -10
- package/dist/web/components/picker/picker.d.ts +0 -6
- package/dist/web/components/picker/timePicker.d.ts +0 -7
- package/dist/web/components/richText/const.d.ts +0 -1
- package/dist/web/components/richText/index.d.ts +0 -50
- package/dist/web/components/richTextView/index.d.ts +0 -7
- package/dist/web/components/scrollView/index.d.ts +0 -25
- package/dist/web/components/share/index.d.ts +0 -34
- package/dist/web/components/slot/index.d.ts +0 -6
- package/dist/web/components/swiper/index.d.ts +0 -24
- package/dist/web/components/tabs/index.d.ts +0 -13
- package/dist/web/components/tabs/tabs.h5.d.ts +0 -4
- package/dist/web/components/tabs/tabs.pc.d.ts +0 -3
- package/dist/web/components/text/index.d.ts +0 -15
- package/dist/web/components/uploaderFileView/index.d.ts +0 -10
- package/dist/web/components/uploaderView/index.d.ts +0 -17
- package/dist/web/components/userInfo/index.d.ts +0 -26
- package/dist/web/components/wedaVideo/index.d.ts +0 -17
- package/dist/web/index.d.ts +0 -8
- package/dist/web/utils/classnames.d.ts +0 -2
- package/dist/web/utils/console.d.ts +0 -3
- package/dist/web/utils/constant.d.ts +0 -23
- package/dist/web/utils/debounce.d.ts +0 -2
- package/dist/web/utils/getLocalCounter.d.ts +0 -1
- package/dist/web/utils/isObjectEqual.d.ts +0 -2
- package/dist/web/utils/loading-fallback.d.ts +0 -2
- package/dist/web/utils/lodash.d.ts +0 -1
- package/dist/web/utils/platform.d.ts +0 -28
- package/dist/web/utils/tcb.d.ts +0 -33
- package/dist/web/utils/tmap.d.ts +0 -3
- package/dist/web/utils/use-cloud-id-temp-url.d.ts +0 -1
- package/dist/web/utils/useSetState.d.ts +0 -1
- package/dist/web/utils/useSyncValue.d.ts +0 -4
- package/dist/web/utils/weui.d.ts +0 -1
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import React, { useState, useEffect } from 'react';
|
|
2
|
+
import { Drawer, Button, Form, Icon } from 'tea-component';
|
|
3
|
+
import { HighlightTextarea, UserSelectModel } from '../../components';
|
|
4
|
+
import { useControlContext } from './provider';
|
|
5
|
+
import './ApprovalDrawer.css';
|
|
6
|
+
const ExtraDOM = (props) => {
|
|
7
|
+
const {
|
|
8
|
+
// fileList,
|
|
9
|
+
approveInfo, onChange,
|
|
10
|
+
// appCode,
|
|
11
|
+
type, operationName, statusFlag, setStatusFlag, statusMessage, setStatusMessage, opinionUserMap, setOpinionUserMap, setHighlightPositionMap, } = props;
|
|
12
|
+
const approveInfoLabel = type === 'handle' ? `${operationName}意见` : '审批意见';
|
|
13
|
+
return (React.createElement(Form.Item, { label: approveInfoLabel, required: type === 'reject', status: statusFlag, message: statusMessage },
|
|
14
|
+
React.createElement(HighlightTextarea, { value: approveInfo, placeholder: `请输入您的${approveInfoLabel},可@通知他人`, opinionUserMap: opinionUserMap, setOpinionUserMap: setOpinionUserMap, setHighlightPositionMap: setHighlightPositionMap, onChange: (value) => {
|
|
15
|
+
onChange('approveInfo', value);
|
|
16
|
+
setStatusFlag('');
|
|
17
|
+
setStatusMessage(null);
|
|
18
|
+
if (type === 'reject' && !value.trim()) {
|
|
19
|
+
setStatusFlag('error');
|
|
20
|
+
setStatusMessage(`请输入${approveInfoLabel}`);
|
|
21
|
+
}
|
|
22
|
+
if (value.length > 500) {
|
|
23
|
+
setStatusFlag('error');
|
|
24
|
+
setStatusMessage(`${approveInfoLabel}长度不可超过500,请检查`);
|
|
25
|
+
}
|
|
26
|
+
} })));
|
|
27
|
+
};
|
|
28
|
+
const ApprovePerson = (props) => {
|
|
29
|
+
const { label, approvers, show, onChange } = props;
|
|
30
|
+
const removeItem = (index) => {
|
|
31
|
+
const approversAvatar = approvers.filter((item, idx) => idx !== index);
|
|
32
|
+
onChange(approversAvatar);
|
|
33
|
+
};
|
|
34
|
+
return (React.createElement(Form.Item, { label: label, className: "btn-wrapper__black person-btn__wrapper" },
|
|
35
|
+
React.createElement(Button, { onClick: show },
|
|
36
|
+
React.createElement("span", { style: { fontSize: '16px', lineHeight: '16px' } }, "+"),
|
|
37
|
+
" ",
|
|
38
|
+
'人员'),
|
|
39
|
+
approvers.length > 0
|
|
40
|
+
? approvers.map(({ text }, index) => (React.createElement("div", { className: "person-item", key: `person-${index}` },
|
|
41
|
+
React.createElement("span", null, text),
|
|
42
|
+
React.createElement(Icon, { type: "dismiss", onClick: () => removeItem(index) }))))
|
|
43
|
+
: null));
|
|
44
|
+
};
|
|
45
|
+
export const ApprovalDrawer = (props) => {
|
|
46
|
+
var _a, _b, _c, _d, _e, _f;
|
|
47
|
+
const { pageInfo, flowDetail } = props;
|
|
48
|
+
const { handleType, approveDrawerVisible, submitLoading, onTriggerFlowEvent, onApproveDrawerVisibleChange, } = useControlContext();
|
|
49
|
+
const { startAppCode: appCode, currentNodeName: nodeName, operationName, currentApproverName, } = flowDetail || {};
|
|
50
|
+
const { buttons, showCarbonCopy } = pageInfo || {};
|
|
51
|
+
const [fileList, setFileList] = useState((_a = props.fileList) !== null && _a !== void 0 ? _a : []);
|
|
52
|
+
const [approveInfo, setApproveInfo] = useState((_b = props.approveInfo) !== null && _b !== void 0 ? _b : '');
|
|
53
|
+
const [opinionUserMap, setOpinionUserMap] = useState({});
|
|
54
|
+
const [highlightPositionMap, setHighlightPositionMap] = useState({});
|
|
55
|
+
const [approvers, setApprovers] = useState((_c = props.approvers) !== null && _c !== void 0 ? _c : []);
|
|
56
|
+
const [modalVisible, setModalVisible] = useState(false);
|
|
57
|
+
const [statusFlag, setStatusFlag] = useState('');
|
|
58
|
+
const [statusMessage, setStatusMessage] = useState(null);
|
|
59
|
+
const showModal = () => setModalVisible(true);
|
|
60
|
+
const hideModal = () => setModalVisible(false);
|
|
61
|
+
const stateMap = {
|
|
62
|
+
fileList: {
|
|
63
|
+
default: [],
|
|
64
|
+
fn: setFileList,
|
|
65
|
+
},
|
|
66
|
+
// addTag: {
|
|
67
|
+
// default: false,
|
|
68
|
+
// fn: setTagStatus,
|
|
69
|
+
// },
|
|
70
|
+
approveInfo: {
|
|
71
|
+
default: '',
|
|
72
|
+
fn: setApproveInfo,
|
|
73
|
+
},
|
|
74
|
+
approvers: {
|
|
75
|
+
default: [],
|
|
76
|
+
fn: setApprovers,
|
|
77
|
+
},
|
|
78
|
+
statusFlag: {
|
|
79
|
+
default: '',
|
|
80
|
+
fn: setStatusFlag,
|
|
81
|
+
},
|
|
82
|
+
statusMessage: {
|
|
83
|
+
default: null,
|
|
84
|
+
fn: setStatusMessage,
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
const approvalType = {
|
|
88
|
+
agree: {
|
|
89
|
+
title: `${(buttons === null || buttons === void 0 ? void 0 : buttons[1]) || '同意'}`,
|
|
90
|
+
dom: true,
|
|
91
|
+
personLabel: '抄送',
|
|
92
|
+
},
|
|
93
|
+
reject: {
|
|
94
|
+
title: `${(buttons === null || buttons === void 0 ? void 0 : buttons[2]) || '拒绝'}`,
|
|
95
|
+
dom: true,
|
|
96
|
+
personLabel: '抄送',
|
|
97
|
+
},
|
|
98
|
+
transfer: {
|
|
99
|
+
title: '转办',
|
|
100
|
+
dom: false,
|
|
101
|
+
personLabel: '转办',
|
|
102
|
+
},
|
|
103
|
+
handle: {
|
|
104
|
+
title: '处理',
|
|
105
|
+
dom: true,
|
|
106
|
+
personLabel: '处理',
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
useEffect(() => {
|
|
110
|
+
if (!approveDrawerVisible) {
|
|
111
|
+
Object.values(stateMap).forEach(({ default: defaultValue, fn }) => fn(defaultValue));
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
// postUserInfo().then((res) => {
|
|
115
|
+
// if (res?.data) {
|
|
116
|
+
// setApprover(res?.data?.name);
|
|
117
|
+
// }
|
|
118
|
+
// });
|
|
119
|
+
}
|
|
120
|
+
}, [approveDrawerVisible]);
|
|
121
|
+
const handleSubmit = () => {
|
|
122
|
+
var _a;
|
|
123
|
+
// const getIdReg = /^(\d+)&(?:user|group),(?:.+)$/;
|
|
124
|
+
if (submitLoading)
|
|
125
|
+
return;
|
|
126
|
+
const obj = {
|
|
127
|
+
operationComment: approveInfo,
|
|
128
|
+
opinionUserMap,
|
|
129
|
+
highlightPositionList: JSON.stringify(highlightPositionMap),
|
|
130
|
+
attachmentInfo: JSON.stringify(fileList),
|
|
131
|
+
ccUserIds: approvers.map((item) => item.value).join(','),
|
|
132
|
+
turnToUserId: (_a = approvers === null || approvers === void 0 ? void 0 : approvers[0]) === null || _a === void 0 ? void 0 : _a.value,
|
|
133
|
+
};
|
|
134
|
+
switch (handleType) {
|
|
135
|
+
case 'agree':
|
|
136
|
+
Reflect.deleteProperty(obj, 'turnToUserId');
|
|
137
|
+
break;
|
|
138
|
+
case 'reject':
|
|
139
|
+
Reflect.deleteProperty(obj, 'ccUserIds');
|
|
140
|
+
Reflect.deleteProperty(obj, 'turnToUserId');
|
|
141
|
+
break;
|
|
142
|
+
case 'transfer':
|
|
143
|
+
Reflect.deleteProperty(obj, 'ccUserIds');
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
onTriggerFlowEvent(obj);
|
|
147
|
+
};
|
|
148
|
+
const onChange = (key, value) => {
|
|
149
|
+
stateMap[key].fn(value);
|
|
150
|
+
};
|
|
151
|
+
return (React.createElement(React.Fragment, null,
|
|
152
|
+
React.createElement(Drawer, { showMask: true, size: 'l', className: "approval-drawer drawer", outerClickClosable: false, visible: approveDrawerVisible, title: handleType === 'handle'
|
|
153
|
+
? `${operationName}意见`
|
|
154
|
+
: `审批意见-${(_d = approvalType === null || approvalType === void 0 ? void 0 : approvalType[handleType]) === null || _d === void 0 ? void 0 : _d.title}`, onClose: onApproveDrawerVisibleChange, footer: React.createElement("div", { className: "btn-wrapper" },
|
|
155
|
+
React.createElement(Button, { className: "submit-btn", type: "primary", loading: submitLoading, onClick: () => {
|
|
156
|
+
if (handleType === 'reject' && !approveInfo.trim()) {
|
|
157
|
+
setStatusFlag('error');
|
|
158
|
+
setStatusMessage('请输入审批意见');
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
if (approveInfo.length > 500) {
|
|
162
|
+
setStatusFlag('error');
|
|
163
|
+
setStatusMessage('审批意见长度不可超过500,请检查');
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
handleSubmit();
|
|
167
|
+
} }, "\u63D0\u4EA4"),
|
|
168
|
+
React.createElement(Button, { onClick: onApproveDrawerVisibleChange }, "\u53D6\u6D88")) },
|
|
169
|
+
React.createElement(Form, { className: "approval-form__drawer" },
|
|
170
|
+
React.createElement(Form.Item, { label: '当前节点' },
|
|
171
|
+
React.createElement("span", { className: "form-item__plain" }, nodeName)),
|
|
172
|
+
React.createElement(Form.Item, { label: handleType === 'handle' ? '处理人' : '审批人' },
|
|
173
|
+
React.createElement("span", { className: "form-item__plain" }, currentApproverName || '--')),
|
|
174
|
+
((_e = approvalType === null || approvalType === void 0 ? void 0 : approvalType[handleType]) === null || _e === void 0 ? void 0 : _e.dom) ? (React.createElement(ExtraDOM, { type: handleType, appCode: appCode, onChange: onChange, fileList: fileList, approveInfo: approveInfo, operationName: operationName, statusFlag: statusFlag, setStatusFlag: setStatusFlag, statusMessage: statusMessage, setStatusMessage: setStatusMessage, opinionUserMap: opinionUserMap, setOpinionUserMap: setOpinionUserMap, setHighlightPositionMap: setHighlightPositionMap })) : null,
|
|
175
|
+
handleType !== 'reject' &&
|
|
176
|
+
(showCarbonCopy || handleType === 'transfer') ? (React.createElement(ApprovePerson, { approvers: approvers, label: (_f = approvalType === null || approvalType === void 0 ? void 0 : approvalType[handleType]) === null || _f === void 0 ? void 0 : _f.personLabel, show: showModal, onChange: (val) => onChange('approvers', val) })) : null)),
|
|
177
|
+
React.createElement(UserSelectModel, { visible: modalVisible, onChange: (val) => onChange('approvers', val), onClose: hideModal, value: approvers === null || approvers === void 0 ? void 0 : approvers.map((item) => item === null || item === void 0 ? void 0 : item.value) })));
|
|
178
|
+
};
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
.cp-vant-popup {
|
|
2
|
+
z-index: 998 !important;
|
|
3
|
+
}
|
|
4
|
+
.cp-vant-popup h3.popup-title {
|
|
5
|
+
padding: 1.42857rem 1.71429rem 0.85714rem;
|
|
6
|
+
}
|
|
7
|
+
.cp-vant-popup .rv-cell {
|
|
8
|
+
padding: 0.85714rem 1.71429rem;
|
|
9
|
+
}
|
|
10
|
+
.cp-vant-popup .rv-field + .rv-field {
|
|
11
|
+
margin-top: 0.85714rem;
|
|
12
|
+
}
|
|
13
|
+
.cp-vant-popup .rv-field__control {
|
|
14
|
+
color: #000;
|
|
15
|
+
}
|
|
16
|
+
.cp-vant-popup .rv-cell:not(:last-child)::after {
|
|
17
|
+
left: 1.71429rem;
|
|
18
|
+
right: 1.71429rem;
|
|
19
|
+
border-bottom: 0.07143rem solid #dcdee6;
|
|
20
|
+
}
|
|
21
|
+
.cp-vant-popup .apa-height-xl.wedatea2td-btn.success-btn {
|
|
22
|
+
padding: 0;
|
|
23
|
+
height: 2.85714rem;
|
|
24
|
+
line-height: 2.85714rem;
|
|
25
|
+
min-width: 10.85714rem;
|
|
26
|
+
position: absolute;
|
|
27
|
+
bottom: 2.14286rem;
|
|
28
|
+
left: 1.42857rem;
|
|
29
|
+
right: 1.42857rem;
|
|
30
|
+
width: calc(100% - 3.42857rem);
|
|
31
|
+
}
|
|
32
|
+
.cp-vant-popup .popup-content-wrapper {
|
|
33
|
+
height: calc(100% - 6.42857rem);
|
|
34
|
+
overflow: auto;
|
|
35
|
+
}
|
|
36
|
+
.cp-vant-popup h3.popup-title {
|
|
37
|
+
padding: 1.42857rem;
|
|
38
|
+
padding-bottom: 0.71429rem;
|
|
39
|
+
font-size: 1rem;
|
|
40
|
+
}
|
|
41
|
+
.cp-vant-popup .rv-cell {
|
|
42
|
+
padding-left: 1.42857rem;
|
|
43
|
+
}
|
|
44
|
+
.cp-vant-popup .upload-cell_wrapper .pant-cell__title {
|
|
45
|
+
display: flex;
|
|
46
|
+
justify-content: space-between;
|
|
47
|
+
}
|
|
48
|
+
.cp-vant-popup .label-execute__btn .rv-cell__value .rv-field__control-wrapper {
|
|
49
|
+
margin-right: 0.85714rem;
|
|
50
|
+
justify-content: flex-end;
|
|
51
|
+
color: #2473f2;
|
|
52
|
+
}
|
|
53
|
+
.cp-vant-popup
|
|
54
|
+
.label-execute__btn
|
|
55
|
+
.rv-cell__value
|
|
56
|
+
.rv-field__control-wrapper
|
|
57
|
+
.rv-field__children {
|
|
58
|
+
justify-content: flex-end;
|
|
59
|
+
}
|
|
60
|
+
.cp-vant-popup .label-execute__btn .btn-show-modal {
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
}
|
|
64
|
+
.cp-vant-popup .label-execute__btn .apa-icon {
|
|
65
|
+
width: 1.14286rem;
|
|
66
|
+
height: 1.14286rem;
|
|
67
|
+
display: inline-block;
|
|
68
|
+
vertical-align: middle;
|
|
69
|
+
background-repeat: no-repeat;
|
|
70
|
+
background-position: inherit;
|
|
71
|
+
font-size: 0;
|
|
72
|
+
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNnB4IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDU4ICg4NDY2MykgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+55S75p2/PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IueUu+advyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IuWbvuaghy/mt7vliqAiPgogICAgICAgICAgICA8ZyBpZD0i57yW57uEIj4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik04LDIuNSBDOC4yNzYxNDIzNywyLjUgOC41LDIuNzIzODU3NjMgOC41LDMgTDguNSw3LjUgTDEzLDcuNSBDMTMuMjc2MTQyNCw3LjUgMTMuNSw3LjcyMzg1NzYzIDEzLjUsOCBDMTMuNSw4LjI3NjE0MjM3IDEzLjI3NjE0MjQsOC41IDEzLDguNSBMOC41LDguNSBMOC41LDEzIEM4LjUsMTMuMjc2MTQyNCA4LjI3NjE0MjM3LDEzLjUgOCwxMy41IEM3LjcyMzg1NzYzLDEzLjUgNy41LDEzLjI3NjE0MjQgNy41LDEzIEw3LjUsOC41IEwzLDguNSBDMi43MjM4NTc2Myw4LjUgMi41LDguMjc2MTQyMzcgMi41LDggQzIuNSw3LjcyMzg1NzYzIDIuNzIzODU3NjMsNy41IDMsNy41IEw3LjUsNy41IEw3LjUsMyBDNy41LDIuNzIzODU3NjMgNy43MjM4NTc2MywyLjUgOCwyLjUgWiIgaWQ9IuW9oueKtue7k+WQiCIgZmlsbD0iIzI0NzNGMiI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHJlY3QgaWQ9IuefqeW9oiIgeD0iMCIgeT0iMCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ij48L3JlY3Q+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==);
|
|
73
|
+
}
|
|
74
|
+
.pant-popup .success-btn {
|
|
75
|
+
position: absolute;
|
|
76
|
+
bottom: 2.14286rem;
|
|
77
|
+
left: 1.42857rem;
|
|
78
|
+
right: 1.42857rem;
|
|
79
|
+
width: calc(100% - 3.42857rem);
|
|
80
|
+
}
|
|
81
|
+
.highlightTextarea-cell_wrapper .rv-cell__title {
|
|
82
|
+
width: 100%;
|
|
83
|
+
}
|
|
84
|
+
.highlightTextarea-cell_wrapper
|
|
85
|
+
.highlightTextarea-mobile__wrapper
|
|
86
|
+
.highlight-textarea {
|
|
87
|
+
border: none;
|
|
88
|
+
color: #000;
|
|
89
|
+
margin-top: 0.35714rem;
|
|
90
|
+
}
|
|
91
|
+
.highlightTextarea-cell_wrapper .highlightTextarea-mobile__wrapper .extra-dom {
|
|
92
|
+
position: absolute;
|
|
93
|
+
right: 2.85714rem;
|
|
94
|
+
top: 1rem;
|
|
95
|
+
color: #006eff;
|
|
96
|
+
cursor: pointer;
|
|
97
|
+
}
|
|
98
|
+
.highlightTextarea-cell_wrapper .rv-cell__value {
|
|
99
|
+
display: none;
|
|
100
|
+
}
|
|
101
|
+
.rv-popup .person-item {
|
|
102
|
+
display: flex;
|
|
103
|
+
justify-content: space-between;
|
|
104
|
+
font-size: 0.85714rem;
|
|
105
|
+
background: rgba(220, 222, 230, 0.4);
|
|
106
|
+
padding: 0.28571rem 0.57143rem;
|
|
107
|
+
line-height: 1.42857rem;
|
|
108
|
+
margin: 0 1.71429rem;
|
|
109
|
+
}
|
|
110
|
+
.rv-popup .person-item .tea-icon {
|
|
111
|
+
margin-top: 0.28571rem;
|
|
112
|
+
}
|
|
113
|
+
.rv-popup .person-item + .person-item {
|
|
114
|
+
margin-top: 0.28571rem;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/*# sourceURL=webpack://./src/web/components/flow/modules/control/ApprovalPopup.css */
|
|
118
|
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy93ZWIvY29tcG9uZW50cy9mbG93L21vZHVsZXMvY29udHJvbC9BcHByb3ZhbFBvcHVwLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHVCQUF1QjtBQUN6QjtBQUNBO0VBQ0UseUNBQXlDO0FBQzNDO0FBQ0E7RUFDRSw4QkFBOEI7QUFDaEM7QUFDQTtFQUNFLHNCQUFzQjtBQUN4QjtBQUNBO0VBQ0UsV0FBVztBQUNiO0FBQ0E7RUFDRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLHVDQUF1QztBQUN6QztBQUNBO0VBQ0UsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQix1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQiw4QkFBOEI7QUFDaEM7QUFDQTtFQUNFLCtCQUErQjtFQUMvQixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxtQkFBbUI7RUFDbkIsMEJBQTBCO0VBQzFCLGVBQWU7QUFDakI7QUFDQTtFQUNFLHdCQUF3QjtBQUMxQjtBQUNBO0VBQ0UsYUFBYTtFQUNiLDhCQUE4QjtBQUNoQztBQUNBO0VBQ0Usd0JBQXdCO0VBQ3hCLHlCQUF5QjtFQUN6QixjQUFjO0FBQ2hCO0FBQ0E7Ozs7O0VBS0UseUJBQXlCO0FBQzNCO0FBQ0E7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0FBQ3JCO0FBQ0E7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsNEJBQTRCO0VBQzVCLDRCQUE0QjtFQUM1QixZQUFZO0VBQ1oscTRDQUFxNEM7QUFDdjRDO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsOEJBQThCO0FBQ2hDO0FBQ0E7RUFDRSxXQUFXO0FBQ2I7QUFDQTs7O0VBR0UsWUFBWTtFQUNaLFdBQVc7RUFDWCxzQkFBc0I7QUFDeEI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsU0FBUztFQUNULGNBQWM7RUFDZCxlQUFlO0FBQ2pCO0FBQ0E7RUFDRSxhQUFhO0FBQ2Y7QUFDQTtFQUNFLGFBQWE7RUFDYiw4QkFBOEI7RUFDOUIscUJBQXFCO0VBQ3JCLG9DQUFvQztFQUNwQyw4QkFBOEI7RUFDOUIsdUJBQXVCO0VBQ3ZCLG9CQUFvQjtBQUN0QjtBQUNBO0VBQ0Usc0JBQXNCO0FBQ3hCO0FBQ0E7RUFDRSxzQkFBc0I7QUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyIuY3AtdmFudC1wb3B1cCB7XG4gIHotaW5kZXg6IDk5OCAhaW1wb3J0YW50O1xufVxuLmNwLXZhbnQtcG9wdXAgaDMucG9wdXAtdGl0bGUge1xuICBwYWRkaW5nOiAxLjQyODU3cmVtIDEuNzE0MjlyZW0gMC44NTcxNHJlbTtcbn1cbi5jcC12YW50LXBvcHVwIC5ydi1jZWxsIHtcbiAgcGFkZGluZzogMC44NTcxNHJlbSAxLjcxNDI5cmVtO1xufVxuLmNwLXZhbnQtcG9wdXAgLnJ2LWZpZWxkICsgLnJ2LWZpZWxkIHtcbiAgbWFyZ2luLXRvcDogMC44NTcxNHJlbTtcbn1cbi5jcC12YW50LXBvcHVwIC5ydi1maWVsZF9fY29udHJvbCB7XG4gIGNvbG9yOiAjMDAwO1xufVxuLmNwLXZhbnQtcG9wdXAgLnJ2LWNlbGw6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICBsZWZ0OiAxLjcxNDI5cmVtO1xuICByaWdodDogMS43MTQyOXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4wNzE0M3JlbSBzb2xpZCAjZGNkZWU2O1xufVxuLmNwLXZhbnQtcG9wdXAgLmFwYS1oZWlnaHQteGwud2VkYXRlYTJ0ZC1idG4uc3VjY2Vzcy1idG4ge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDIuODU3MTRyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjg1NzE0cmVtO1xuICBtaW4td2lkdGg6IDEwLjg1NzE0cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMi4xNDI4NnJlbTtcbiAgbGVmdDogMS40Mjg1N3JlbTtcbiAgcmlnaHQ6IDEuNDI4NTdyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzLjQyODU3cmVtKTtcbn1cbi5jcC12YW50LXBvcHVwIC5wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDYuNDI4NTdyZW0pO1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5jcC12YW50LXBvcHVwIGgzLnBvcHVwLXRpdGxlIHtcbiAgcGFkZGluZzogMS40Mjg1N3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzE0MjlyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5jcC12YW50LXBvcHVwIC5ydi1jZWxsIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjQyODU3cmVtO1xufVxuLmNwLXZhbnQtcG9wdXAgLnVwbG9hZC1jZWxsX3dyYXBwZXIgLnBhbnQtY2VsbF9fdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uY3AtdmFudC1wb3B1cCAubGFiZWwtZXhlY3V0ZV9fYnRuIC5ydi1jZWxsX192YWx1ZSAucnYtZmllbGRfX2NvbnRyb2wtd3JhcHBlciB7XG4gIG1hcmdpbi1yaWdodDogMC44NTcxNHJlbTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgY29sb3I6ICMyNDczZjI7XG59XG4uY3AtdmFudC1wb3B1cFxuICAubGFiZWwtZXhlY3V0ZV9fYnRuXG4gIC5ydi1jZWxsX192YWx1ZVxuICAucnYtZmllbGRfX2NvbnRyb2wtd3JhcHBlclxuICAucnYtZmllbGRfX2NoaWxkcmVuIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5jcC12YW50LXBvcHVwIC5sYWJlbC1leGVjdXRlX19idG4gLmJ0bi1zaG93LW1vZGFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5jcC12YW50LXBvcHVwIC5sYWJlbC1leGVjdXRlX19idG4gLmFwYS1pY29uIHtcbiAgd2lkdGg6IDEuMTQyODZyZW07XG4gIGhlaWdodDogMS4xNDI4NnJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBpbmhlcml0O1xuICBmb250LXNpemU6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlWVlJHTFRnaVB6NEtQSE4yWnlCM2FXUjBhRDBpTVRad2VDSWdhR1ZwWjJoMFBTSXhObkI0SWlCMmFXVjNRbTk0UFNJd0lEQWdNVFlnTVRZaUlIWmxjbk5wYjI0OUlqRXVNU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JaUI0Yld4dWN6cDRiR2x1YXowaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1UazVPUzk0YkdsdWF5SStDaUFnSUNBOElTMHRJRWRsYm1WeVlYUnZjam9nVTJ0bGRHTm9JRFU0SUNnNE5EWTJNeWtnTFNCb2RIUndjem92TDNOclpYUmphQzVqYjIwZ0xTMCtDaUFnSUNBOGRHbDBiR1UrNTVTNzVwMi9QQzkwYVhSc1pUNEtJQ0FnSUR4a1pYTmpQa055WldGMFpXUWdkMmwwYUNCVGEyVjBZMmd1UEM5a1pYTmpQZ29nSUNBZ1BHY2dhV1E5SXVlVXUrYWR2eUlnYzNSeWIydGxQU0p1YjI1bElpQnpkSEp2YTJVdGQybGtkR2c5SWpFaUlHWnBiR3c5SW01dmJtVWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0krQ2lBZ0lDQWdJQ0FnUEdjZ2FXUTlJdVdidnVhZ2h5L210N3ZsaXFBaVBnb2dJQ0FnSUNBZ0lDQWdJQ0E4WnlCcFpEMGk1N3lXNTd1RUlqNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeHdZWFJvSUdROUlrMDRMREl1TlNCRE9DNHlOell4TkRJek55d3lMalVnT0M0MUxESXVOekl6T0RVM05qTWdPQzQxTERNZ1REZ3VOU3czTGpVZ1RERXpMRGN1TlNCRE1UTXVNamMyTVRReU5DdzNMalVnTVRNdU5TdzNMamN5TXpnMU56WXpJREV6TGpVc09DQkRNVE11TlN3NExqSTNOakUwTWpNM0lERXpMakkzTmpFME1qUXNPQzQxSURFekxEZ3VOU0JNT0M0MUxEZ3VOU0JNT0M0MUxERXpJRU00TGpVc01UTXVNamMyTVRReU5DQTRMakkzTmpFME1qTTNMREV6TGpVZ09Dd3hNeTQxSUVNM0xqY3lNemcxTnpZekxERXpMalVnTnk0MUxERXpMakkzTmpFME1qUWdOeTQxTERFeklFdzNMalVzT0M0MUlFd3pMRGd1TlNCRE1pNDNNak00TlRjMk15dzRMalVnTWk0MUxEZ3VNamMyTVRReU16Y2dNaTQxTERnZ1F6SXVOU3czTGpjeU16ZzFOell6SURJdU56SXpPRFUzTmpNc055NDFJRE1zTnk0MUlFdzNMalVzTnk0MUlFdzNMalVzTXlCRE55NDFMREl1TnpJek9EVTNOak1nTnk0M01qTTROVGMyTXl3eUxqVWdPQ3d5TGpVZ1dpSWdhV1E5SXVXOW91ZUt0dWU3aytXUWlDSWdabWxzYkQwaUl6STBOek5HTWlJK1BDOXdZWFJvUGdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEhKbFkzUWdhV1E5SXVlZnFlVzlvaUlnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFMklpQm9aV2xuYUhROUlqRTJJajQ4TDNKbFkzUStDaUFnSUNBZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUNBZ0lDQThMMmMrQ2lBZ0lDQThMMmMrQ2p3dmMzWm5QZz09KTtcbn1cbi5wYW50LXBvcHVwIC5zdWNjZXNzLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAyLjE0Mjg2cmVtO1xuICBsZWZ0OiAxLjQyODU3cmVtO1xuICByaWdodDogMS40Mjg1N3JlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDMuNDI4NTdyZW0pO1xufVxuLmhpZ2hsaWdodFRleHRhcmVhLWNlbGxfd3JhcHBlciAucnYtY2VsbF9fdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbn1cbi5oaWdobGlnaHRUZXh0YXJlYS1jZWxsX3dyYXBwZXJcbiAgLmhpZ2hsaWdodFRleHRhcmVhLW1vYmlsZV9fd3JhcHBlclxuICAuaGlnaGxpZ2h0LXRleHRhcmVhIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzAwMDtcbiAgbWFyZ2luLXRvcDogMC4zNTcxNHJlbTtcbn1cbi5oaWdobGlnaHRUZXh0YXJlYS1jZWxsX3dyYXBwZXIgLmhpZ2hsaWdodFRleHRhcmVhLW1vYmlsZV9fd3JhcHBlciAuZXh0cmEtZG9tIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMi44NTcxNHJlbTtcbiAgdG9wOiAxcmVtO1xuICBjb2xvcjogIzAwNmVmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmhpZ2hsaWdodFRleHRhcmVhLWNlbGxfd3JhcHBlciAucnYtY2VsbF9fdmFsdWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnJ2LXBvcHVwIC5wZXJzb24taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIyMCwgMjIyLCAyMzAsIDAuNCk7XG4gIHBhZGRpbmc6IDAuMjg1NzFyZW0gMC41NzE0M3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTdyZW07XG4gIG1hcmdpbjogMCAxLjcxNDI5cmVtO1xufVxuLnJ2LXBvcHVwIC5wZXJzb24taXRlbSAudGVhLWljb24ge1xuICBtYXJnaW4tdG9wOiAwLjI4NTcxcmVtO1xufVxuLnJ2LXBvcHVwIC5wZXJzb24taXRlbSArIC5wZXJzb24taXRlbSB7XG4gIG1hcmdpbi10b3A6IDAuMjg1NzFyZW07XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
import React, { useState, useEffect, useRef } from 'react';
|
|
2
|
+
import { Icon, Button } from 'tea-component';
|
|
3
|
+
import { Popup, Field } from 'react-vant';
|
|
4
|
+
import { HighlightTextarea } from '../../components';
|
|
5
|
+
import { useControlContext } from './provider';
|
|
6
|
+
import { ACTION_TYPE } from './constants';
|
|
7
|
+
import './ApprovalPopup.css';
|
|
8
|
+
const ExtraDOM = (props) => {
|
|
9
|
+
const { type, statusMessage, setStatusMessage, operationName, opinionUserMap, setOpinionUserMap, setHighlightPositionMap, prevFn, onUserSelectModelVisibleChange, onUserSelectModalInfoChange, safeJsonParse, userSelectModelVisible, } = props;
|
|
10
|
+
const [approveInfo, setApproveInfo] = useState('');
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
if (!userSelectModelVisible) {
|
|
13
|
+
const popupData = sessionStorage.getItem('FlowActionsMobile');
|
|
14
|
+
if (popupData) {
|
|
15
|
+
const { approveInfo: localApproveInfo } = safeJsonParse(popupData);
|
|
16
|
+
setApproveInfo(localApproveInfo);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}, [userSelectModelVisible]);
|
|
20
|
+
const toSelectPerson = () => {
|
|
21
|
+
prevFn === null || prevFn === void 0 ? void 0 : prevFn(approveInfo);
|
|
22
|
+
onUserSelectModelVisibleChange();
|
|
23
|
+
onUserSelectModalInfoChange({
|
|
24
|
+
approveField: 'highLightApprovers',
|
|
25
|
+
mode: 'multiple',
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
const approveInfoLabel = type === 'handle' ? `${operationName}意见` : '审批意见';
|
|
29
|
+
return (React.createElement(React.Fragment, null,
|
|
30
|
+
React.createElement(Field, { className: "highlightTextarea-cell_wrapper", label: React.createElement("div", { className: "highlightTextarea-mobile__wrapper" },
|
|
31
|
+
React.createElement("span", { className: "label" },
|
|
32
|
+
type === 'reject' && React.createElement("span", { style: { color: '#ee0a24' } }, "*"),
|
|
33
|
+
approveInfoLabel),
|
|
34
|
+
React.createElement("span", { onClick: toSelectPerson, className: "extra-dom" }, "@\u67D0\u4EBA"),
|
|
35
|
+
React.createElement(HighlightTextarea, { value: approveInfo || '', size: "mobile", placeholder: `请输入您的${approveInfoLabel},可@通知他人`, opinionUserMap: opinionUserMap, setOpinionUserMap: setOpinionUserMap, setHighlightPositionMap: setHighlightPositionMap, onChange: (value) => {
|
|
36
|
+
setApproveInfo(value);
|
|
37
|
+
setStatusMessage(null);
|
|
38
|
+
if (type === 'reject' && !value.trim()) {
|
|
39
|
+
setStatusMessage(`请输入${approveInfoLabel}`);
|
|
40
|
+
}
|
|
41
|
+
if (value.length > 500) {
|
|
42
|
+
setStatusMessage(`${approveInfoLabel}长度不可超过500,请检查`);
|
|
43
|
+
}
|
|
44
|
+
} }),
|
|
45
|
+
statusMessage && (React.createElement("div", { className: "pant-field__error-message" }, statusMessage))), placeholder: "" })));
|
|
46
|
+
};
|
|
47
|
+
const ApprovePerson = (props) => {
|
|
48
|
+
const { label, onChange, approvers, prevFn, type, approveField = 'approvers', onUserSelectModelVisibleChange, onUserSelectModalInfoChange, safeJsonParse, } = props;
|
|
49
|
+
const getUserMap = () => {
|
|
50
|
+
var _a;
|
|
51
|
+
return (_a = safeJsonParse(sessionStorage.getItem('approvers'))) === null || _a === void 0 ? void 0 : _a.reduce((p, c) => {
|
|
52
|
+
// eslint-disable-next-line no-param-reassign
|
|
53
|
+
p[c === null || c === void 0 ? void 0 : c.UserId] = c === null || c === void 0 ? void 0 : c.Name;
|
|
54
|
+
return p;
|
|
55
|
+
}, {});
|
|
56
|
+
};
|
|
57
|
+
const toSelectPerson = () => {
|
|
58
|
+
prevFn === null || prevFn === void 0 ? void 0 : prevFn();
|
|
59
|
+
onUserSelectModelVisibleChange();
|
|
60
|
+
onUserSelectModalInfoChange({
|
|
61
|
+
approveField,
|
|
62
|
+
mode: [ACTION_TYPE.AGREE, ACTION_TYPE.TRANSFER].includes(type)
|
|
63
|
+
? 'multiple'
|
|
64
|
+
: 'single',
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
const removeItem = (index) => {
|
|
68
|
+
const approversAvatar = approvers.filter((item, idx) => idx !== index);
|
|
69
|
+
onChange(approversAvatar);
|
|
70
|
+
};
|
|
71
|
+
return (React.createElement(React.Fragment, null,
|
|
72
|
+
React.createElement(Field, { label: React.createElement(React.Fragment, null,
|
|
73
|
+
React.createElement("span", { className: "label" }, label)), className: "label-execute__btn", name: "approvers", placeholder: "" },
|
|
74
|
+
React.createElement("span", { className: "btn-show-modal", onClick: toSelectPerson },
|
|
75
|
+
React.createElement("i", { className: "apa-icon apa-icon-plus-blue" }),
|
|
76
|
+
"\u4EBA\u5458")),
|
|
77
|
+
(approvers === null || approvers === void 0 ? void 0 : approvers.length) > 0
|
|
78
|
+
? approvers === null || approvers === void 0 ? void 0 : approvers.map((item, index) => {
|
|
79
|
+
var _a;
|
|
80
|
+
return (React.createElement("div", { className: "person-item", key: `person-item_${index}` },
|
|
81
|
+
React.createElement("span", null, ((_a = getUserMap()) === null || _a === void 0 ? void 0 : _a[item]) || item),
|
|
82
|
+
React.createElement(Icon, { type: "dismiss", onClick: () => removeItem(index) })));
|
|
83
|
+
})
|
|
84
|
+
: null));
|
|
85
|
+
};
|
|
86
|
+
export const ApprovalPopup = (props) => {
|
|
87
|
+
var _a, _b, _c, _d, _e;
|
|
88
|
+
const { pageInfo, flowDetail, safeJsonParse } = props;
|
|
89
|
+
const { handleType, approveDrawerVisible, submitLoading, approver, approvers, fileList, opinionUserMap, highlightPositionMap, userSelectModelVisible, setFileList, setApprovers, setApprover, setOpinionUserMap, setHighlightPositionMap, onApproveDrawerVisibleChange, onUserSelectModelVisibleChange, onUserSelectModalInfoChange, onTriggerFlowEvent, } = useControlContext();
|
|
90
|
+
const { startAppCode: appCode, currentNodeName: nodeName, operationName, } = flowDetail || {};
|
|
91
|
+
const { buttons, showCarbonCopy } = pageInfo || {};
|
|
92
|
+
const [statusMessage, setStatusMessage] = useState('');
|
|
93
|
+
const approveInfoRef = useRef('');
|
|
94
|
+
const stateMap = {
|
|
95
|
+
fileList: {
|
|
96
|
+
default: [],
|
|
97
|
+
fn: setFileList,
|
|
98
|
+
},
|
|
99
|
+
approvers: {
|
|
100
|
+
default: [],
|
|
101
|
+
fn: setApprovers,
|
|
102
|
+
},
|
|
103
|
+
approver: {
|
|
104
|
+
default: '',
|
|
105
|
+
fn: setApprover,
|
|
106
|
+
},
|
|
107
|
+
statusMessage: {
|
|
108
|
+
default: '',
|
|
109
|
+
fn: setStatusMessage,
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
const approvalType = {
|
|
113
|
+
agree: {
|
|
114
|
+
title: `${(buttons === null || buttons === void 0 ? void 0 : buttons[1]) || '同意'}`,
|
|
115
|
+
dom: true,
|
|
116
|
+
personLabel: '抄送',
|
|
117
|
+
},
|
|
118
|
+
reject: {
|
|
119
|
+
title: `${(buttons === null || buttons === void 0 ? void 0 : buttons[2]) || '拒绝'}`,
|
|
120
|
+
dom: true,
|
|
121
|
+
personLabel: '抄送',
|
|
122
|
+
},
|
|
123
|
+
transfer: {
|
|
124
|
+
title: '转办',
|
|
125
|
+
dom: false,
|
|
126
|
+
personLabel: '转办',
|
|
127
|
+
},
|
|
128
|
+
handle: {
|
|
129
|
+
title: '处理',
|
|
130
|
+
dom: true,
|
|
131
|
+
personLabel: '抄送',
|
|
132
|
+
},
|
|
133
|
+
};
|
|
134
|
+
useEffect(() => {
|
|
135
|
+
if (!approveDrawerVisible) {
|
|
136
|
+
// resetValue?.();
|
|
137
|
+
Object.values(stateMap).forEach(({ default: defaultValue, fn }) => fn(defaultValue));
|
|
138
|
+
}
|
|
139
|
+
else if (!approver) {
|
|
140
|
+
if (!props.approver) {
|
|
141
|
+
// postUserInfo().then((res) => {
|
|
142
|
+
// if (res?.data) {
|
|
143
|
+
// setApprover(res?.data?.name);
|
|
144
|
+
// }
|
|
145
|
+
// });
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
Object.entries(stateMap).forEach(([key, value]) => value.fn(props[key]));
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}, [approveDrawerVisible]);
|
|
152
|
+
useEffect(() => {
|
|
153
|
+
setApprovers(props.approvers);
|
|
154
|
+
}, [props.approvers]);
|
|
155
|
+
useEffect(() => {
|
|
156
|
+
setFileList(props.fileList);
|
|
157
|
+
}, [props.fileList]);
|
|
158
|
+
useEffect(() => {
|
|
159
|
+
var _a;
|
|
160
|
+
setOpinionUserMap((_a = props.opinionUserMap) !== null && _a !== void 0 ? _a : {});
|
|
161
|
+
}, [props.opinionUserMap]);
|
|
162
|
+
useEffect(() => {
|
|
163
|
+
var _a;
|
|
164
|
+
setHighlightPositionMap((_a = props.highlightPositionMap) !== null && _a !== void 0 ? _a : {});
|
|
165
|
+
}, [props.highlightPositionMap]);
|
|
166
|
+
const onChange = (key, value) => {
|
|
167
|
+
stateMap[key].fn(value);
|
|
168
|
+
};
|
|
169
|
+
const handleSubmit = () => {
|
|
170
|
+
var _a;
|
|
171
|
+
const obj = {
|
|
172
|
+
operationComment: approveInfoRef.current || '',
|
|
173
|
+
opinionUserMap,
|
|
174
|
+
highlightPositionList: JSON.stringify(highlightPositionMap),
|
|
175
|
+
attachmentInfo: JSON.stringify(fileList),
|
|
176
|
+
ccUserIds: approvers === null || approvers === void 0 ? void 0 : approvers.map((item) => item.value).join(','),
|
|
177
|
+
turnToUserId: (_a = approvers === null || approvers === void 0 ? void 0 : approvers[0]) === null || _a === void 0 ? void 0 : _a.value,
|
|
178
|
+
};
|
|
179
|
+
switch (handleType) {
|
|
180
|
+
case 'agree':
|
|
181
|
+
Reflect.deleteProperty(obj, 'turnToUserId');
|
|
182
|
+
break;
|
|
183
|
+
case 'reject':
|
|
184
|
+
Reflect.deleteProperty(obj, 'ccUserIds');
|
|
185
|
+
Reflect.deleteProperty(obj, 'turnToUserId');
|
|
186
|
+
break;
|
|
187
|
+
case 'transfer':
|
|
188
|
+
Reflect.deleteProperty(obj, 'ccUserIds');
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
191
|
+
onTriggerFlowEvent(obj);
|
|
192
|
+
};
|
|
193
|
+
const dynamiticHeight = handleType === 'transfer' ? '500px' : '540px';
|
|
194
|
+
const saveTemp = (approveInfo) => {
|
|
195
|
+
approveInfoRef.current = approveInfo;
|
|
196
|
+
const temp = {
|
|
197
|
+
fileList,
|
|
198
|
+
approveInfo,
|
|
199
|
+
opinionUserMap,
|
|
200
|
+
highlightPositionMap,
|
|
201
|
+
approvers,
|
|
202
|
+
handleType,
|
|
203
|
+
approveDrawerVisible,
|
|
204
|
+
appCode,
|
|
205
|
+
// addApprovers,
|
|
206
|
+
// tagType,
|
|
207
|
+
// addTag,
|
|
208
|
+
nodeName,
|
|
209
|
+
approver,
|
|
210
|
+
};
|
|
211
|
+
sessionStorage.setItem('FlowActionsMobile', JSON.stringify(temp));
|
|
212
|
+
};
|
|
213
|
+
return (React.createElement(React.Fragment, null,
|
|
214
|
+
React.createElement(Popup, { visible: approveDrawerVisible, position: "bottom", style: { height: dynamiticHeight }, onClose: onApproveDrawerVisibleChange, closeable: true, className: "cp-vant-popup", overlayStyle: { zIndex: 998 } },
|
|
215
|
+
React.createElement(React.Fragment, null,
|
|
216
|
+
React.createElement("div", { className: "popup-content-wrapper" },
|
|
217
|
+
React.createElement("h3", { className: "popup-title" }, handleType === 'handle'
|
|
218
|
+
? `${operationName}意见`
|
|
219
|
+
: `审批意见 - ${(_a = approvalType === null || approvalType === void 0 ? void 0 : approvalType[handleType]) === null || _a === void 0 ? void 0 : _a.title}`),
|
|
220
|
+
React.createElement(Field, { value: nodeName, label: "\u5F53\u524D\u8282\u70B9", readOnly: true }),
|
|
221
|
+
React.createElement(Field, { value: ((_c = (_b = window === null || window === void 0 ? void 0 : window._WedaHostConfig) === null || _b === void 0 ? void 0 : _b.wedaUser) === null || _c === void 0 ? void 0 : _c.name) || '', label: handleType === 'handle' ? '处理人' : '审批人', readOnly: true }),
|
|
222
|
+
((_d = approvalType === null || approvalType === void 0 ? void 0 : approvalType[handleType]) === null || _d === void 0 ? void 0 : _d.dom) && approveDrawerVisible ? (React.createElement(ExtraDOM, { type: handleType, appCode: appCode, onChange: onChange, fileList: fileList, operationName: operationName, statusMessage: statusMessage, setStatusMessage: setStatusMessage, opinionUserMap: opinionUserMap, setOpinionUserMap: setOpinionUserMap, setHighlightPositionMap: setHighlightPositionMap, prevFn: saveTemp, onUserSelectModelVisibleChange: onUserSelectModelVisibleChange, onUserSelectModalInfoChange: onUserSelectModalInfoChange, safeJsonParse: safeJsonParse, userSelectModelVisible: userSelectModelVisible })) : null,
|
|
223
|
+
handleType !== 'reject' &&
|
|
224
|
+
(showCarbonCopy || handleType === 'transfer') ? (React.createElement(ApprovePerson, { type: handleType, prevFn: saveTemp, approvers: approvers, label: (_e = approvalType === null || approvalType === void 0 ? void 0 : approvalType[handleType]) === null || _e === void 0 ? void 0 : _e.personLabel, onChange: (val) => onChange('approvers', val), onUserSelectModelVisibleChange: onUserSelectModelVisibleChange, onUserSelectModalInfoChange: onUserSelectModalInfoChange, safeJsonParse: safeJsonParse })) : null),
|
|
225
|
+
React.createElement(Button, { className: "success-btn apa-height-xl", type: "primary", loading: submitLoading, onClick: () => {
|
|
226
|
+
var _a;
|
|
227
|
+
if (handleType === 'reject' && !approveInfoRef.current.trim()) {
|
|
228
|
+
setStatusMessage('请输入审批意见');
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
if (((_a = approveInfoRef.current) === null || _a === void 0 ? void 0 : _a.length) > 500) {
|
|
232
|
+
setStatusMessage('审批意见长度不可超过500,请检查');
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
|
+
handleSubmit();
|
|
236
|
+
} }, "\u63D0\u4EA4")))));
|
|
237
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
.page-process__progress__app-page {
|
|
2
|
+
height: auto;
|
|
3
|
+
}
|
|
4
|
+
.mf-progress-footer__app-page {
|
|
5
|
+
left: 16.64286rem;
|
|
6
|
+
}
|
|
7
|
+
.page-process__progress .mf-progress-footer {
|
|
8
|
+
overflow-x: auto;
|
|
9
|
+
background: #fff;
|
|
10
|
+
text-align: center;
|
|
11
|
+
padding: 1.42857rem;
|
|
12
|
+
}
|
|
13
|
+
.page-process__progress .mf-progress-footer .mf-progress-footer__btn-line {
|
|
14
|
+
position: relative;
|
|
15
|
+
margin-left: 1.71429rem;
|
|
16
|
+
}
|
|
17
|
+
.page-process__progress
|
|
18
|
+
.mf-progress-footer
|
|
19
|
+
.mf-progress-footer__btn-line:before {
|
|
20
|
+
border-left: 0.07143rem solid rgba(0, 0, 0, 0.25);
|
|
21
|
+
height: 2.14286rem;
|
|
22
|
+
content: '';
|
|
23
|
+
position: absolute;
|
|
24
|
+
top: 0.21429rem;
|
|
25
|
+
left: -0.92857rem;
|
|
26
|
+
}
|
|
27
|
+
.mf-progress-footer__btn-group {
|
|
28
|
+
display: inline-flex;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/*# sourceURL=webpack://./src/web/components/flow/modules/control/Control.css */
|
|
32
|
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy93ZWIvY29tcG9uZW50cy9mbG93L21vZHVsZXMvY29udHJvbC9Db250cm9sLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLFlBQVk7QUFDZDtBQUNBO0VBQ0UsaUJBQWlCO0FBQ25CO0FBQ0E7RUFDRSxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixtQkFBbUI7QUFDckI7QUFDQTtFQUNFLGtCQUFrQjtFQUNsQix1QkFBdUI7QUFDekI7QUFDQTs7O0VBR0UsaURBQWlEO0VBQ2pELGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixpQkFBaUI7QUFDbkI7QUFDQTtFQUNFLG9CQUFvQjtBQUN0QiIsInNvdXJjZXNDb250ZW50IjpbIi5wYWdlLXByb2Nlc3NfX3Byb2dyZXNzX19hcHAtcGFnZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5tZi1wcm9ncmVzcy1mb290ZXJfX2FwcC1wYWdlIHtcbiAgbGVmdDogMTYuNjQyODZyZW07XG59XG4ucGFnZS1wcm9jZXNzX19wcm9ncmVzcyAubWYtcHJvZ3Jlc3MtZm9vdGVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxLjQyODU3cmVtO1xufVxuLnBhZ2UtcHJvY2Vzc19fcHJvZ3Jlc3MgLm1mLXByb2dyZXNzLWZvb3RlciAubWYtcHJvZ3Jlc3MtZm9vdGVyX19idG4tbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDEuNzE0MjlyZW07XG59XG4ucGFnZS1wcm9jZXNzX19wcm9ncmVzc1xuICAubWYtcHJvZ3Jlc3MtZm9vdGVyXG4gIC5tZi1wcm9ncmVzcy1mb290ZXJfX2J0bi1saW5lOmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiAwLjA3MTQzcmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGhlaWdodDogMi4xNDI4NnJlbTtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjIxNDI5cmVtO1xuICBsZWZ0OiAtMC45Mjg1N3JlbTtcbn1cbi5tZi1wcm9ncmVzcy1mb290ZXJfX2J0bi1ncm91cCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuIl0sInNvdXJjZVJvb3QiOiIifQ== */
|