| | |
| | | "EnumUserGender": true, |
| | | "EnumUserStatus": true, |
| | | "EnumUserType": true, |
| | | "useAccessAuthentication": true |
| | | "useAccessAuthentication": true, |
| | | "DirectiveBinding": true, |
| | | "MaybeRef": true, |
| | | "MaybeRefOrGetter": true |
| | | } |
| | | } |
| | |
| | | |
| | | |
| | | # [1.1.0](http://120.26.58.240:8888/r/flexJobMiniApp/compare/@12333/bMiniApp/v1.0.2...@12333/bMiniApp/v1.1.0) (2025-09-19) |
| | | |
| | | |
| | | ### Bug Fixes |
| | | |
| | | * bug ([529a0c5](http://120.26.58.240:8888/r/flexJobMiniApp/commits/529a0c5719676ec30845c3b4cb678bd3783894ad)) |
| | | * bug ([3eb66eb](http://120.26.58.240:8888/r/flexJobMiniApp/commits/3eb66eb40eac74b6cd95a6b0837d483c419ce291)) |
| | | * bug ([612ba43](http://120.26.58.240:8888/r/flexJobMiniApp/commits/612ba4346dc682dd1ed37a6df29e838f5c45eeb3)) |
| | | * bug ([4250455](http://120.26.58.240:8888/r/flexJobMiniApp/commits/425045571acc4b02005c790f0dc7dabba593f95a)) |
| | | * bug ([162803b](http://120.26.58.240:8888/r/flexJobMiniApp/commits/162803b10e1f99268533e40814380100c040e274)) |
| | | * bug ([2b4d427](http://120.26.58.240:8888/r/flexJobMiniApp/commits/2b4d427d72810ef7cdca0fc6332fe13027e3b0db)) |
| | | * bug ([1f24f64](http://120.26.58.240:8888/r/flexJobMiniApp/commits/1f24f64bf808b69904070520cb8864a5081846f8)) |
| | | * bug ([09aca51](http://120.26.58.240:8888/r/flexJobMiniApp/commits/09aca511eb72108a76babe2ded3a07c94a5a070a)) |
| | | * bug ([b08e197](http://120.26.58.240:8888/r/flexJobMiniApp/commits/b08e197461cdde89ee3dd1406afa8c5cdc0ecf26)) |
| | | * bug ([40480cf](http://120.26.58.240:8888/r/flexJobMiniApp/commits/40480cf0b88ea69aec616a4a4e678dad320f96d1)) |
| | | * bug ([8987ce5](http://120.26.58.240:8888/r/flexJobMiniApp/commits/8987ce5a9bde6403faa8162de5125aab08232422)) |
| | | * bug ([e3051e2](http://120.26.58.240:8888/r/flexJobMiniApp/commits/e3051e24d0c52ac4e29fbbc7062f97f9ebc5fa0d)) |
| | | * bug ([d69973b](http://120.26.58.240:8888/r/flexJobMiniApp/commits/d69973bf32d63a3638b799866426f817b0193e10)) |
| | | * bug ([f5b5e80](http://120.26.58.240:8888/r/flexJobMiniApp/commits/f5b5e80c6414c947fa62635818d0cbbce392296a)) |
| | | * bug ([1fe1a1c](http://120.26.58.240:8888/r/flexJobMiniApp/commits/1fe1a1c9835b78052fac6f86d335190edb6d7bca)) |
| | | * bug ([4f52b02](http://120.26.58.240:8888/r/flexJobMiniApp/commits/4f52b02ee2db3a9a3b00411b2a1ebfc8eb8c5a7c)) |
| | | * bug ([ce7e3bd](http://120.26.58.240:8888/r/flexJobMiniApp/commits/ce7e3bd6370ee104deef0cb693615d8637e98a35)) |
| | | * nutui-taro radio ([e84fe84](http://120.26.58.240:8888/r/flexJobMiniApp/commits/e84fe84688a2e962c5435296029f96d8d4f69cae)) |
| | | * nutui-taro radio ([f308f68](http://120.26.58.240:8888/r/flexJobMiniApp/commits/f308f6859153b14e2582141d120e178dac85a71e)) |
| | | * s ([1af9193](http://120.26.58.240:8888/r/flexJobMiniApp/commits/1af91934801d9143cecb1fd90a7c1be17ce5bf52)) |
| | | |
| | | |
| | | ### Features |
| | | |
| | | * 财务管理 ([7e8d737](http://120.26.58.240:8888/r/flexJobMiniApp/commits/7e8d737c550cbcbe45fe88ccf95e0ef646a2fd73)) |
| | | * 接口对接 ([21f0c67](http://120.26.58.240:8888/r/flexJobMiniApp/commits/21f0c67e85bfd0e24a944fa52c65331c9599e1ad)) |
| | | * 接口对接 ([00a3e81](http://120.26.58.240:8888/r/flexJobMiniApp/commits/00a3e8142bf114c77909c36d556808aef2c8dbf4)) |
| | | * 接口对接 ([9f10304](http://120.26.58.240:8888/r/flexJobMiniApp/commits/9f10304a16a97df2d684e18c619df43981b91026)) |
| | | * 接口对接 ([a8c0f3a](http://120.26.58.240:8888/r/flexJobMiniApp/commits/a8c0f3a72c24c756bc2c7493144bce717dc13ff4)) |
| | | * 页面 ([4abed72](http://120.26.58.240:8888/r/flexJobMiniApp/commits/4abed72d97b7953326cf48d45c4d3a53058df599)) |
| | | * 页面 ([9c8b6d1](http://120.26.58.240:8888/r/flexJobMiniApp/commits/9c8b6d1cf6b43c6652b5183cd0183e8e257001f7)) |
| | | |
| | | ## [1.0.2](http://120.26.58.240:8888/r/flexJobMiniApp/compare/@12333/bMiniApp/v1.0.1...@12333/bMiniApp/v1.0.2) (2025-09-12) |
| | | |
| | | |
| | |
| | | // for type re-export |
| | | declare global { |
| | | // @ts-ignore |
| | | export type { Component, ComponentPublicInstance, ComputedRef, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, VNode, WritableComputedRef } from 'vue' |
| | | export type { Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' |
| | | import('vue') |
| | | // @ts-ignore |
| | | export type { BackType, BackType } from './src/constants/enum' |
| | |
| | | { |
| | | "name": "@12333/bMiniApp", |
| | | "version": "1.0.2", |
| | | "version": "1.1.0", |
| | | "private": true, |
| | | "description": "", |
| | | "templateInfo": { |
| | |
| | | "description": "", |
| | | "setting": { |
| | | "urlCheck": false, |
| | | "es6": false, |
| | | "enhance": false, |
| | | "es6": true, |
| | | "enhance": true, |
| | | "postcss": false, |
| | | "preloadBackgroundData": false, |
| | | "minified": false, |
| | |
| | | <template> |
| | | <ProTabs |
| | | v-model="queryState.userSignContractStatus" |
| | | v-model="queryState.signContractStatus" |
| | | name="home-tab" |
| | | :showPaneContent="false" |
| | | class="home-tabs" |
| | |
| | | title-gutter="12" |
| | | title-scroll |
| | | > |
| | | <ProTabPane :title="`已签约`" :pane-key="EnumTaskUserSignContractStatus.Pass"></ProTabPane> |
| | | <ProTabPane :title="`待签约`" :pane-key="EnumTaskUserSignContractStatus.Wait"></ProTabPane> |
| | | <ProTabPane :title="`已解约`" :pane-key="EnumTaskUserSignContractStatus.Stop"></ProTabPane> |
| | | <ProTabPane |
| | | :title="`灵工待签约`" |
| | | :pane-key="EnumGetEnterpriseEmployeesQuerySignContractStatus.UserWait" |
| | | ></ProTabPane> |
| | | <ProTabPane |
| | | :title="`企业待签约`" |
| | | :pane-key="EnumGetEnterpriseEmployeesQuerySignContractStatus.EnterpriseWait" |
| | | ></ProTabPane> |
| | | <ProTabPane |
| | | :title="`已签约`" |
| | | :pane-key="EnumGetEnterpriseEmployeesQuerySignContractStatus.Pass" |
| | | ></ProTabPane> |
| | | <!-- <ProTabPane :title="`已解约`" :pane-key="EnumTaskUserSignContractStatus.Stop"></ProTabPane> --> |
| | | </ProTabs> |
| | | <InfiniteLoading |
| | | scrollViewClassName="common-infinite-scroll-list home-list" |
| | | v-bind="infiniteLoadingProps" |
| | | :key="queryState.userSignContractStatus" |
| | | :key="queryState.signContractStatus" |
| | | > |
| | | <template #renderItem="{ item }"> |
| | | <FlexJobCard |
| | |
| | | > |
| | | <template #footerRight> |
| | | <template |
| | | v-if="Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Pass" |
| | | v-if="item.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Pass" |
| | | > |
| | | <nut-button |
| | | class="flexJobManage-card-plain-button" |
| | |
| | | <nut-button type="primary" @click.stop="checkContract(item)">查看合约</nut-button> |
| | | </template> |
| | | <nut-button |
| | | v-else-if=" |
| | | Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Wait || |
| | | Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Stop |
| | | v-if=" |
| | | item.userSignContractStatus === EnumTaskUserSignContractStatus.Wait || |
| | | !item.userSignContractStatus |
| | | " |
| | | type="primary" |
| | | @click.stop="goFlexJobSign(item)" |
| | | >签约</nut-button |
| | | >邀请签约</nut-button |
| | | > |
| | | <nut-button |
| | | v-if="item.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Wait" |
| | | type="primary" |
| | | @click.stop="goEnterpriseSign(item)" |
| | | >企业签约</nut-button |
| | | > |
| | | </template> |
| | | </FlexJobCard> |
| | |
| | | EnumTaskUserHireStatus, |
| | | EnumTaskUserSignContractStatus, |
| | | EnumPagedListOrder, |
| | | EnumGetEnterpriseEmployeesQuerySignContractStatus, |
| | | } from '@12333/constants'; |
| | | import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee'; |
| | | import Taro from '@tarojs/taro'; |
| | |
| | | }); |
| | | |
| | | const queryState = reactive({ |
| | | userSignContractStatus: EnumTaskUserSignContractStatus.Pass, |
| | | signContractStatus: EnumGetEnterpriseEmployeesQuerySignContractStatus.UserWait, |
| | | }); |
| | | |
| | | const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading( |
| | |
| | | orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | hireStatus: EnumTaskUserHireStatus.Pass, |
| | | userSignContractStatus: queryState.userSignContractStatus, |
| | | signContractStatus: queryState.signContractStatus, |
| | | }; |
| | | |
| | | return enterpriseEmployeeServices.getEnterpriseEmployees(params, { |
| | | showLoading: false, |
| | | }); |
| | |
| | | url: `${RouterPath.flexJobSign}?enterpriseEmployeeId=${item.id}`, |
| | | }); |
| | | } |
| | | |
| | | async function goEnterpriseSign(item: API.GetEnterpriseEmployeesQueryResultItem) { |
| | | try { |
| | | let res = await enterpriseEmployeeServices.enterpriseUserElectronSign({ id: item.id }); |
| | | if (res) { |
| | | const encodedUrl = encodeURIComponent(res.signContractLongUrl); |
| | | Taro.navigateTo({ url: `${RouterPath.extraPage}?url=${encodedUrl}` }); |
| | | } |
| | | } catch (error) {} |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | |
| | | |
| | | <script setup lang="ts"> |
| | | import { useInfiniteLoading } from '@12333/hooks'; |
| | | import { EnumPagedListOrder } from '@12333/constants'; |
| | | import { EnumContractTemplateStatus, EnumPagedListOrder } from '@12333/constants'; |
| | | import * as electronSignServices from '@12333/services/apiV2/electronSign'; |
| | | import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee'; |
| | | import _ from 'lodash'; |
| | |
| | | orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | keywords: queryState.keywords, |
| | | status: EnumContractTemplateStatus.Completed, |
| | | }; |
| | | |
| | | return electronSignServices.getEnterpriseContractTemplates(params, { |
| | |
| | | :addressName="item.addressName" |
| | | :serviceFee="item.serviceFee" |
| | | :userCount="item.userCount" |
| | | :status="item.status" |
| | | :unit="BillingMethodEnumUnit[item.billingMethod]" |
| | | :releaseStatus="item.releaseStatus" |
| | | @edit="goEdit(item)" |
| | |
| | | <template> |
| | | <List> |
| | | <IncomeDetailListItem :item="'收入:¥600.00'"> |
| | | <IncomeDetailListItem :item="`支出:¥${toThousand(sumWithdraw)} `"> |
| | | <template #title> |
| | | <div class="mineFinanceManage-detail-time-picker"> |
| | | <div class="income-detail-time-picker"> |
| | | <ChooseInputWithDatePicker |
| | | v-model="form.month" |
| | | v-model="queryState.month" |
| | | type="year-month" |
| | | :max-date="nowDate" |
| | | ></ChooseInputWithDatePicker> |
| | | format="YYYY-MM" |
| | | /> |
| | | <IconFont name="triangle-down" class="income-detail-time-picker-icon"></IconFont> |
| | | </div> |
| | | </template> |
| | | </IncomeDetailListItem> |
| | | <IncomeDetailListItem |
| | | :title="'收入-宁波人力无忧'" |
| | | :item="'2024.12.20 13:30:30'" |
| | | :value="'+300.00'" |
| | | > |
| | | </IncomeDetailListItem> |
| | | </List> |
| | | <InfiniteLoading |
| | | scrollViewClassName="common-infinite-scroll-list home-list" |
| | | v-bind="infiniteLoadingProps" |
| | | :key="queryState.type" |
| | | > |
| | | <template #renderItem="{ item }"> |
| | | <IncomeDetailListItem |
| | | :title="item.title" |
| | | :funds="item.amount" |
| | | :item="dayjs(item.createdTime).format('YYYY-MM-DD HH:mm:ss')" |
| | | :value="`钱包余额:${toThousand(item.balance)}`" |
| | | > |
| | | </IncomeDetailListItem> |
| | | </template> |
| | | </InfiniteLoading> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { List, IncomeDetailListItem, ChooseInputWithDatePicker } from '@12333/components'; |
| | | import { useUserStore } from '@/stores/modules/user'; |
| | | import Taro from '@tarojs/taro'; |
| | | import dayjs from 'dayjs'; |
| | | import { toThousand } from '@12333/utils'; |
| | | import * as userServices from '@12333/services/apiV2/user'; |
| | | import { useInfiniteLoading } from '@12333/hooks'; |
| | | import { EnumUserWalletTransactionType, EnumPagedListOrder } from '@12333/constants'; |
| | | |
| | | defineOptions({ |
| | | name: 'InnerPage', |
| | | }); |
| | | |
| | | const userStore = useUserStore(); |
| | | const nowDate = dayjs().toDate(); |
| | | const form = reactive({ |
| | | month: '2024-12', |
| | | |
| | | const queryState = reactive({ |
| | | month: dayjs().format('YYYY-MM'), |
| | | type: 0 as any as EnumUserWalletTransactionType, |
| | | }); |
| | | |
| | | const sumWithdraw = computed(() => { |
| | | return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.sumWithdraw ?? 0; |
| | | }); |
| | | |
| | | const { infiniteLoadingProps } = useInfiniteLoading( |
| | | ({ pageParam }) => { |
| | | let params: API.GetPersonalUserTransactionsQuery = { |
| | | pageModel: { |
| | | rows: 20, |
| | | page: pageParam, |
| | | orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | type: EnumUserWalletTransactionType.Withdraw, |
| | | }; |
| | | // if (Number(queryState.type)) { |
| | | // params.type = queryState.type; |
| | | // } |
| | | if (queryState.month) { |
| | | params.createdTimeStart = dayjs(queryState.month).startOf('month').format('YYYY-MM-DD'); |
| | | params.createdTimeEnd = dayjs(queryState.month).endOf('month').format('YYYY-MM-DD'); |
| | | } |
| | | return userServices.getPersonalUserTransactions(params, { |
| | | showLoading: false, |
| | | }); |
| | | }, |
| | | { |
| | | queryKey: ['userServices/getPersonalUserTransactions', queryState], |
| | | } |
| | | ); |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | @import '@/styles/common.scss'; |
| | | |
| | | .mineFinanceManage-page-wrapper { |
| | | .mineFinanceManage-detail-time-picker { |
| | | .income-detail-time-picker { |
| | | position: relative; |
| | | |
| | | .nut-input { |
| | | border-bottom: none; |
| | | padding: 0; |
| | | width: 100%; |
| | | |
| | | .input-text { |
| | | font-size: 20px; |
| | |
| | | display: none; |
| | | } |
| | | } |
| | | |
| | | .income-detail-time-picker-icon { |
| | | position: absolute; |
| | | top: 12px; |
| | | left: 220px; |
| | | } |
| | | } |
| | | |
| | | .common-infinite-scroll-list { |
| | | background-color: #ffffff; |
| | | } |
| | | |
| | | .pro-list { |
| | | background: transparent; |
| | | } |
| | | |
| | | .nut-input { |
| | | background: transparent; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <PageLayout class="mineFinanceManage-page-wrapper" :title="'财务管理'" developing> |
| | | <PageLayout class="mineFinanceManage-page-wrapper" :title="'财务管理'"> |
| | | <InnerPage></InnerPage> |
| | | </PageLayout> |
| | | </template> |
| | |
| | | class="nut-input-text bole-input-text" |
| | | placeholder="请输入服务费" |
| | | :min="0" |
| | | :max="999999999999" |
| | | :precision="2" |
| | | type="text" |
| | | /> |
| | | <div class="form-input-unit">{{ BillingMethodEnumUnit[form.billingMethod] }}</div> |
| | | </div> |
| | |
| | | required |
| | | label-width="90px" |
| | | > |
| | | <nut-radio-group v-model="form.settlementCycle" direction="horizontal"> |
| | | <nut-radio-group |
| | | v-model="form.settlementCycle" |
| | | direction="horizontal" |
| | | @change="settleTypeChange" |
| | | > |
| | | <BlRadio :label="Number(key)" v-for="(val, key) in EnumSettlementCycleText" :key="key">{{ |
| | | val |
| | | }}</BlRadio> |
| | | </nut-radio-group> |
| | | </nut-form-item> |
| | | <nut-form-item |
| | | label="结算日期:" |
| | | class="bole-form-item" |
| | | prop="settlementDate" |
| | | label-width="90px" |
| | | required |
| | | v-if="form.settlementCycle !== EnumSettlementCycle.Day" |
| | | > |
| | | <ChooseInputWithPicker |
| | | v-model="form.settlementDate" |
| | | placeholder="请设置结算日期" |
| | | :value-enum="settlementDateList" |
| | | /> |
| | | </nut-form-item> |
| | | <nut-form-item label="福利:" class="bole-form-item" prop="benefits" label-width="90px"> |
| | | <ChooseInputWithCheckbox |
| | |
| | | v-model.trim="form.ageMinLimit" |
| | | class="nut-input-text bole-input-text" |
| | | placeholder="请选择年龄范围" |
| | | :min="1" |
| | | :min="16" |
| | | /> |
| | | <div class="form-input-separator">至</div> |
| | | <NumberInput |
| | | v-model.trim="form.ageMaxLimit" |
| | | class="nut-input-text bole-input-text" |
| | | placeholder="请选择年龄范围" |
| | | :min="1" |
| | | :min="16" |
| | | /> |
| | | </div> |
| | | </nut-form-item> |
| | |
| | | placeholder="请选择资格证书" |
| | | /> |
| | | </nut-form-item> |
| | | <nut-form-item label="任务地点" class="bole-form-item" prop="weMapInfo" required> |
| | | <ChooseLocationInput placeholder="请选择任务地点" v-model="form.weMapInfo" /> |
| | | <!-- <ChooseInputWithAreaPicker |
| | | :columns="areaTreeList" |
| | | v-model="form.areaList" |
| | | placeholder="请选择所在地区" |
| | | ></ChooseInputWithAreaPicker> --> |
| | | <nut-form-item |
| | | label="任务地点" |
| | | label-width="90px" |
| | | class="bole-form-item" |
| | | prop="weMapInfo" |
| | | required |
| | | > |
| | | <ChooseLocationInput |
| | | inputAlign="left" |
| | | placeholder="请选择任务地点" |
| | | v-model="form.weMapInfo" |
| | | /> |
| | | </nut-form-item> |
| | | <nut-form-item |
| | | label="详细地址:" |
| | |
| | | EnumSettlementCycleText, |
| | | BillingMethodEnumUnit, |
| | | EnumUserGenderTextOptions, |
| | | EnumSettlementCycleDateWeekArray, |
| | | EnumSettlementCycleDateMonthArray, |
| | | } from '@12333/constants'; |
| | | import { |
| | | ChooseInputWithPicker, |
| | |
| | | const taskId = router.params?.id ?? ''; |
| | | const isEdit = !!taskId; |
| | | const isCopy = router.params?.isCopy === 'true'; |
| | | console.log('isCopy: ', router.params?.isCopy); |
| | | |
| | | const nowDate = dayjs().toDate(); |
| | | |
| | |
| | | }); |
| | | const { dictionaryDataList: CertificateTypeList } = useDictionaryDataSelect({ |
| | | categoryCode: CategoryCode.CertificateType, |
| | | }); |
| | | |
| | | const settlementDateList = computed(() => { |
| | | if (form.settlementCycle === EnumSettlementCycle.Month) { |
| | | return EnumSettlementCycleDateMonthArray; |
| | | } |
| | | if (form.settlementCycle === EnumSettlementCycle.Week) { |
| | | return EnumSettlementCycleDateWeekArray; |
| | | } |
| | | return []; |
| | | }); |
| | | |
| | | const form = reactive({ |
| | |
| | | ageMaxLimit: '' as any as number, |
| | | genderLimit: 0 as any as EnumUserGender, |
| | | credentialLimits: [] as string[], |
| | | // address: '', |
| | | beginTime: '', |
| | | endTime: '', |
| | | // areaList: [] as number[], |
| | | settlementDate: null as number, |
| | | |
| | | weMapInfo: {} as WeMapModel, |
| | | addressDetail: '', |
| | |
| | | const rules = reactive<FormRules>({ |
| | | name: [{ required: true, message: '请输入任务名称' }], |
| | | genderLimit: [{ required: true, message: '请选择性别要求' }], |
| | | settlementCycleDate: [{ required: true, message: '请设置结算日期' }], |
| | | addressDetail: [{ required: true, message: '请输入详细地址' }], |
| | | billingMethod: [ |
| | | { |
| | |
| | | weMapInfo: [ |
| | | { required: true, message: '请设置工作地点', validator: FormValidator.validatorWeMap }, |
| | | ], |
| | | // areaList: [ |
| | | // { required: true, message: '请添加工作地点', validator: FormValidator.validatorArray }, |
| | | // ], |
| | | |
| | | ageMinLimit: [ |
| | | { |
| | |
| | | form.billingMethod = data.billingMethod; |
| | | form.serviceFee = data.serviceFee; |
| | | form.settlementCycle = data.settlementCycle; |
| | | form.settlementDate = data.settlementDate; |
| | | form.benefits = (data.benefits ?? []).map((item) => item.benefitCode); |
| | | form.ageMinLimit = data.ageMinLimit; |
| | | form.ageMaxLimit = data.ageMaxLimit; |
| | |
| | | billingMethod: form.billingMethod, |
| | | serviceFee: form.serviceFee, |
| | | settlementCycle: form.settlementCycle, |
| | | settlementDate: form.settlementDate ? form.settlementDate : 0, |
| | | benefits: form.benefits, |
| | | ageMinLimit: form.ageMinLimit, |
| | | ageMaxLimit: form.ageMaxLimit, |
| | |
| | | } catch (error) {} |
| | | } |
| | | |
| | | function settleTypeChange() { |
| | | form.settlementDate = null as number; |
| | | } |
| | | |
| | | function handleCancel() { |
| | | goBack(); |
| | | } |
| | |
| | | :addressName="item.addressName" |
| | | :createdTime="item.createdTime" |
| | | :serviceFee="item.serviceFee" |
| | | :status="item.status" |
| | | :unit="BillingMethodEnumUnit[item.billingMethod]" |
| | | mode="taskManage" |
| | | > |
| | |
| | | |
| | | |
| | | # [1.1.0](http://120.26.58.240:8888/r/flexJobMiniApp/compare/@12333/cMiniApp/v1.0.2...@12333/cMiniApp/v1.1.0) (2025-09-19) |
| | | |
| | | |
| | | ### Bug Fixes |
| | | |
| | | * bug ([529a0c5](http://120.26.58.240:8888/r/flexJobMiniApp/commits/529a0c5719676ec30845c3b4cb678bd3783894ad)) |
| | | * bug ([3eb66eb](http://120.26.58.240:8888/r/flexJobMiniApp/commits/3eb66eb40eac74b6cd95a6b0837d483c419ce291)) |
| | | * bug ([612ba43](http://120.26.58.240:8888/r/flexJobMiniApp/commits/612ba4346dc682dd1ed37a6df29e838f5c45eeb3)) |
| | | * bug ([4250455](http://120.26.58.240:8888/r/flexJobMiniApp/commits/425045571acc4b02005c790f0dc7dabba593f95a)) |
| | | * bug ([162803b](http://120.26.58.240:8888/r/flexJobMiniApp/commits/162803b10e1f99268533e40814380100c040e274)) |
| | | * bug ([2b4d427](http://120.26.58.240:8888/r/flexJobMiniApp/commits/2b4d427d72810ef7cdca0fc6332fe13027e3b0db)) |
| | | * bug ([1f24f64](http://120.26.58.240:8888/r/flexJobMiniApp/commits/1f24f64bf808b69904070520cb8864a5081846f8)) |
| | | * bug ([09aca51](http://120.26.58.240:8888/r/flexJobMiniApp/commits/09aca511eb72108a76babe2ded3a07c94a5a070a)) |
| | | * bug ([b08e197](http://120.26.58.240:8888/r/flexJobMiniApp/commits/b08e197461cdde89ee3dd1406afa8c5cdc0ecf26)) |
| | | * bug ([40480cf](http://120.26.58.240:8888/r/flexJobMiniApp/commits/40480cf0b88ea69aec616a4a4e678dad320f96d1)) |
| | | * bug ([8987ce5](http://120.26.58.240:8888/r/flexJobMiniApp/commits/8987ce5a9bde6403faa8162de5125aab08232422)) |
| | | * bug ([e3051e2](http://120.26.58.240:8888/r/flexJobMiniApp/commits/e3051e24d0c52ac4e29fbbc7062f97f9ebc5fa0d)) |
| | | * bug ([d69973b](http://120.26.58.240:8888/r/flexJobMiniApp/commits/d69973bf32d63a3638b799866426f817b0193e10)) |
| | | * bug ([f5b5e80](http://120.26.58.240:8888/r/flexJobMiniApp/commits/f5b5e80c6414c947fa62635818d0cbbce392296a)) |
| | | * bug ([1fe1a1c](http://120.26.58.240:8888/r/flexJobMiniApp/commits/1fe1a1c9835b78052fac6f86d335190edb6d7bca)) |
| | | * bug ([4f52b02](http://120.26.58.240:8888/r/flexJobMiniApp/commits/4f52b02ee2db3a9a3b00411b2a1ebfc8eb8c5a7c)) |
| | | * bug ([ce7e3bd](http://120.26.58.240:8888/r/flexJobMiniApp/commits/ce7e3bd6370ee104deef0cb693615d8637e98a35)) |
| | | * bug ([09e5b0e](http://120.26.58.240:8888/r/flexJobMiniApp/commits/09e5b0e7072f62e7c7c136b224c29e5a5f3573dd)) |
| | | * bug ([b12d141](http://120.26.58.240:8888/r/flexJobMiniApp/commits/b12d1415745edd95358844121b0da29500b0eca6)) |
| | | * nutui-taro radio ([e84fe84](http://120.26.58.240:8888/r/flexJobMiniApp/commits/e84fe84688a2e962c5435296029f96d8d4f69cae)) |
| | | * nutui-taro radio ([f308f68](http://120.26.58.240:8888/r/flexJobMiniApp/commits/f308f6859153b14e2582141d120e178dac85a71e)) |
| | | * s ([1af9193](http://120.26.58.240:8888/r/flexJobMiniApp/commits/1af91934801d9143cecb1fd90a7c1be17ce5bf52)) |
| | | |
| | | |
| | | ### Features |
| | | |
| | | * 财务管理 ([7e8d737](http://120.26.58.240:8888/r/flexJobMiniApp/commits/7e8d737c550cbcbe45fe88ccf95e0ef646a2fd73)) |
| | | * 接口对接 ([21f0c67](http://120.26.58.240:8888/r/flexJobMiniApp/commits/21f0c67e85bfd0e24a944fa52c65331c9599e1ad)) |
| | | * 接口对接 ([00a3e81](http://120.26.58.240:8888/r/flexJobMiniApp/commits/00a3e8142bf114c77909c36d556808aef2c8dbf4)) |
| | | * 接口对接 ([9f10304](http://120.26.58.240:8888/r/flexJobMiniApp/commits/9f10304a16a97df2d684e18c619df43981b91026)) |
| | | * 接口对接 ([a8c0f3a](http://120.26.58.240:8888/r/flexJobMiniApp/commits/a8c0f3a72c24c756bc2c7493144bce717dc13ff4)) |
| | | * 页面 ([4abed72](http://120.26.58.240:8888/r/flexJobMiniApp/commits/4abed72d97b7953326cf48d45c4d3a53058df599)) |
| | | * 页面 ([9c8b6d1](http://120.26.58.240:8888/r/flexJobMiniApp/commits/9c8b6d1cf6b43c6652b5183cd0183e8e257001f7)) |
| | | |
| | | ## [1.0.2](http://120.26.58.240:8888/r/flexJobMiniApp/compare/@12333/cMiniApp/v1.0.1...@12333/cMiniApp/v1.0.2) (2025-09-12) |
| | | |
| | | |
| | |
| | | { |
| | | "name": "@12333/cMiniApp", |
| | | "version": "1.0.2", |
| | | "version": "1.1.0", |
| | | "private": true, |
| | | "description": "", |
| | | "templateInfo": { |
| | |
| | | <div class="user-info-unCertified"> |
| | | <div |
| | | class="user-info-unCertified-text" |
| | | v-if="userDetail.realStatus === EnumPersonalUserRealStatus.UnReal" |
| | | v-if="userDetail?.realStatus === EnumPersonalUserRealStatus.UnReal" |
| | | > |
| | | 未认证 |
| | | </div> |
| | | <div class="user-info-unCertified-text" v-else> |
| | | {{ EnumUserRealMethodText[userDetail?.realMethod] |
| | | }}{{ EnumPersonalUserRealStatusText[userDetail.realStatus] }} |
| | | }}{{ EnumPersonalUserRealStatusText[userDetail?.realStatus] }} |
| | | </div> |
| | | <div |
| | | class="user-info-unCertified-btn" |
| | | @click.stop="goAuthentication" |
| | | v-if=" |
| | | userDetail.realStatus === EnumPersonalUserRealStatus.UnReal || |
| | | userDetail.realStatus === EnumPersonalUserRealStatus.Fail |
| | | userDetail?.realStatus === EnumPersonalUserRealStatus.UnReal || |
| | | userDetail?.realStatus === EnumPersonalUserRealStatus.Fail |
| | | " |
| | | > |
| | | 立即认证 |
| | |
| | | <!-- <div class="user-info-unCertified" v-else> |
| | | <img :src="IconAuth" class="user-info-unCertified-icon" /> |
| | | <div class="user-info-unCertified-text"> |
| | | {{ EnumUserRealMethodText[userDetail?.realMethod] }}{{ EnumPersonalUserRealStatusText[userDetail.realStatus] }} |
| | | {{ EnumUserRealMethodText[userDetail?.realMethod] }}{{ EnumPersonalUserRealStatusText[userDetail?.realStatus] }} |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | |
| | | import { useSystemStore } from '@/stores/modules/system'; |
| | | import PageLayoutWithBg from '@/components/Layout/PageLayoutWithBg.vue'; |
| | | import { toThousand } from '@12333/utils'; |
| | | import { useIntervalFn } from 'senin-mini/hooks'; |
| | | |
| | | const { userDetail, isCertified, updateUserInfo } = useUser(); |
| | | const isLogin = useIsLogin(); |
| | | const systemStore = useSystemStore(); |
| | | |
| | | const { goLoginFn } = useGoLogin(); |
| | | const bgHeight = computed(() => 133 + systemStore.navHeight); |
| | | |
| | | const { stop, start } = useIntervalFn(updateUserInfo, 5000, { |
| | | immediate: false, |
| | | }); |
| | | Taro.useDidShow(({ scene }) => { |
| | | if (isLogin.value) { |
| | | setTimeout(() => { |
| | | updateUserInfo(); |
| | | }, 300); |
| | | updateUserInfo(); |
| | | if (userDetail.value?.realStatus !== EnumPersonalUserRealStatus.Real) { |
| | | start(); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | Taro.useDidHide(() => { |
| | | stop(); |
| | | }); |
| | | |
| | | function goLogin() { |
| | | if (!isLogin.value) { |
| | | goLoginFn(); |
| | |
| | | import { ResponseCode } from '@12333/constants'; |
| | | import * as authServices from '@12333/services/apiV2/auth'; |
| | | import { APP_ENV } from '@/constants'; |
| | | import { useUserStore } from '@/stores/modules/user'; |
| | | |
| | | defineOptions({ |
| | | name: 'registerForm', |
| | | }); |
| | | |
| | | const userStore = useUserStore(); |
| | | |
| | | const { jump } = useLoginedJump(); |
| | | |
| | | const state = reactive({ |
| | | policyChecked: false, |
| | |
| | | let res = await authServices.registerPersonalUser(params); |
| | | if (res) { |
| | | Message.success('注册成功', { |
| | | onClosed: () => { |
| | | goLogin(); |
| | | onClosed: async () => { |
| | | userStore.loginSuccess(res); |
| | | jump(); |
| | | }, |
| | | }); |
| | | } |
| | |
| | | @click="handleCall" |
| | | ></PageFooterAction> |
| | | <PageFooterBtn |
| | | v-if="from === 'sign'" |
| | | v-if="from === 'sign' && !!detail?.applyButton" |
| | | type="primary" |
| | | :disabled="detail?.applyButton === GetTaskInfoQueryResultApplyButton.WaitHire" |
| | | @click="handleSign" |
| | |
| | | } |
| | | }); |
| | | |
| | | const handleApply = useAccessLogin(async () => { |
| | | try { |
| | | let params: API.ApplyTaskCommand = { |
| | | ids: [id], |
| | | }; |
| | | let res = await taskUserServices.applyTask(params); |
| | | if (res) { |
| | | Message.success('报名成功'); |
| | | refetch({ type: 'inactive' }); |
| | | } |
| | | } catch (error) {} |
| | | }); |
| | | const handleApply = useAccessReal( |
| | | async () => { |
| | | try { |
| | | let params: API.ApplyTaskCommand = { |
| | | ids: [id], |
| | | }; |
| | | let res = await taskUserServices.applyTask(params); |
| | | if (res) { |
| | | Message.success('报名成功'); |
| | | refetch({ type: 'inactive' }); |
| | | } |
| | | } catch (error) {} |
| | | }, |
| | | { message: '实名成功后才可报名,请前往实名认证' } |
| | | ); |
| | | |
| | | const handleAttention = useAccessLogin(async () => { |
| | | try { |
| | |
| | | const menuList = computed(() => { |
| | | let _menuList = []; |
| | | _menuList.push( |
| | | { |
| | | name: '编辑', |
| | | value: ManageActions.Edit, |
| | | }, |
| | | // { |
| | | // name: '编辑', |
| | | // value: ManageActions.Edit, |
| | | // }, |
| | | { |
| | | name: '查看详情', |
| | | value: ManageActions.Detail, |
| | | } |
| | | ); |
| | | if (props.status === EnumTaskStatus.Wait) { |
| | | _menuList.push({ |
| | | name: '编辑', |
| | | value: ManageActions.Edit, |
| | | }); |
| | | } |
| | | if (props.releaseStatus === EnumTaskReleaseStatus.Stopped) { |
| | | _menuList.push({ |
| | | name: '发布', |
| | |
| | | <div class="withdraw-money-card"> |
| | | <div class="withdraw-money-card-value"> |
| | | <div class="withdraw-money-card-value-unit">¥</div> |
| | | <div class="withdraw-money-card-value-num">{{ toThousand(props.money) }}</div> |
| | | <div class="withdraw-money-card-value-num">{{ toThousand(props.money ?? 0) }}</div> |
| | | </div> |
| | | <div class="withdraw-money-card-type">{{ props.title }}</div> |
| | | </div> |
| | |
| | | }; |
| | | |
| | | const props = withDefaults(defineProps<Props>(), {}); |
| | | |
| | | const emit = defineEmits<{ |
| | | (e: 'update:checkedId', value: string): void; |
| | | }>(); |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | |
| | | }>(); |
| | | |
| | | function handleOpen() { |
| | | const _modelValue = [props.modelValue]; |
| | | const _modelValue = dayjs(props.modelValue).toDate(); |
| | | Portal.add((key) => { |
| | | return h( |
| | | Portal.Container, |
| | |
| | | <nut-input |
| | | class="nut-input-text bole-input-text" |
| | | type="text" |
| | | input-align="right" |
| | | :input-align="props.inputAlign" |
| | | readonly |
| | | @click="handleChooseLocation" |
| | | :modelValue="props.modelValue.address" |
| | |
| | | |
| | | type Props = { |
| | | modelValue: WeMapModel; |
| | | inputAlign: 'left' | 'center' | 'right'; |
| | | }; |
| | | |
| | | const props = defineProps<Props>(); |
| | | const props = withDefaults(defineProps<Props>(), { |
| | | inputAlign: 'right', |
| | | }); |
| | | |
| | | const emit = defineEmits<{ |
| | | (e: 'update:modelValue', value: Props['modelValue']): void; |
| | |
| | | Transfer = 20, |
| | | } |
| | | |
| | | /** 没写注释 */ |
| | | export enum EnumGetEnterpriseEmployeesQuerySignContractStatus { |
| | | /**灵工待签约 */ |
| | | UserWait = 10, |
| | | /**企业待签约 */ |
| | | EnterpriseWait = 20, |
| | | /**已签约 */ |
| | | Pass = 30, |
| | | } |
| | | |
| | | /** 菜单类型 */ |
| | | export enum EnumMenuType { |
| | | /**菜单 */ |
| | |
| | | InProcess = 20, |
| | | /**已结算 */ |
| | | Completed = 30, |
| | | /**部分结算 */ |
| | | Part = 40, |
| | | /**结算失败 */ |
| | | Fail = 50, |
| | | } |
| | | |
| | | /** 任务安排状态 */ |
| | |
| | | /**已完成 */ |
| | | Completed = 20, |
| | | } |
| | | |
| | | /** 结算到账状态 */ |
| | | export enum SettlementReceiveStatus { |
| | | /**已到账 */ |
| | | Completed = 10, |
| | | /**已退款 */ |
| | | Refunded = 20, |
| | | } |
| | |
| | | [EnumBillingMethod.Piece]: '元/件', |
| | | }; |
| | | |
| | | export const EnumSettlementCycleDateWeekArray = [ |
| | | { label: '星期一', value: 1 }, |
| | | { label: '星期二', value: 2 }, |
| | | { label: '星期三', value: 3 }, |
| | | { label: '星期四', value: 4 }, |
| | | { label: '星期五', value: 5 }, |
| | | { label: '星期六', value: 6 }, |
| | | { label: '星期日', value: 7 }, |
| | | ]; |
| | | |
| | | export const EnumSettlementCycleDateMonthArray = [ |
| | | { label: '1日', value: 1 }, |
| | | { label: '2日', value: 2 }, |
| | | { label: '3日', value: 3 }, |
| | | { label: '4日', value: 4 }, |
| | | { label: '5日', value: 5 }, |
| | | { label: '6日', value: 6 }, |
| | | { label: '7日', value: 7 }, |
| | | { label: '8日', value: 8 }, |
| | | { label: '9日', value: 9 }, |
| | | { label: '10日', value: 10 }, |
| | | { label: '11日', value: 11 }, |
| | | { label: '12日', value: 12 }, |
| | | { label: '13日', value: 13 }, |
| | | { label: '14日', value: 14 }, |
| | | { label: '15日', value: 15 }, |
| | | { label: '16日', value: 16 }, |
| | | { label: '17日', value: 17 }, |
| | | { label: '18日', value: 18 }, |
| | | { label: '19日', value: 19 }, |
| | | { label: '20日', value: 20 }, |
| | | { label: '21日', value: 21 }, |
| | | { label: '22日', value: 22 }, |
| | | { label: '23日', value: 23 }, |
| | | { label: '24日', value: 24 }, |
| | | { label: '25日', value: 25 }, |
| | | { label: '26日', value: 26 }, |
| | | { label: '27日', value: 27 }, |
| | | { label: '28日', value: 28 }, |
| | | { label: '29日', value: 29 }, |
| | | { label: '30日', value: 30 }, |
| | | { label: '31日', value: 31 }, |
| | | ]; |
| | | |
| | | export const EnumTaskReleaseStatusText = { |
| | | [EnumTaskReleaseStatus.InProcess]: '发布中', |
| | | [EnumTaskReleaseStatus.Stopped]: '已停止', |
| | |
| | | body: API.RegisterPersonalUserCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<boolean>('/api/user/auth/registerPersonalUser', { |
| | | return request<API.LoginCommandCallback>('/api/user/auth/registerPersonalUser', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | |
| | | }); |
| | | } |
| | | |
| | | /** 编辑结算名单 POST /api/flexjob/task/editTaskSettlementOrderRoster */ |
| | | export async function editTaskSettlementOrderRoster( |
| | | body: API.EditTaskSettlementOrderRosterCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<string>('/api/flexjob/task/editTaskSettlementOrderRoster', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 导出结算名单 POST /api/flexjob/task/exportTaskSettlementOrderRosters */ |
| | | export async function exportTaskSettlementOrderRosters( |
| | | body: API.ExportTaskSettlementOrderRostersCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<string>('/api/flexjob/task/exportTaskSettlementOrderRosters', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 查询开放任务分页列表 POST /api/flexjob/task/getOpenTaskInfos */ |
| | | export async function getOpenTaskInfos( |
| | | body: API.GetOpenTaskInfosQuery, |
| | |
| | | ); |
| | | } |
| | | |
| | | /** 查询任务结算日 GET /api/flexjob/task/getTaskSettlementDates */ |
| | | export async function getTaskSettlementDates( |
| | | // 叠加生成的Param类型 (非body参数swagger默认没有生成对象) |
| | | params: API.APIgetTaskSettlementDatesParams, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<string[]>('/api/flexjob/task/getTaskSettlementDates', { |
| | | method: 'GET', |
| | | params: { |
| | | ...params, |
| | | }, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 导入结算名单 POST /api/flexjob/task/importTaskSettlementOrderRosters */ |
| | | export async function importTaskSettlementOrderRosters( |
| | | body: API.ImportTaskSettlementOrderRostersCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<API.ImportTaskSettlementOrderRostersCommandResult>( |
| | | '/api/flexjob/task/importTaskSettlementOrderRosters', |
| | | { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | } |
| | | ); |
| | | } |
| | | |
| | | /** 撤回结算 POST /api/flexjob/task/revokeTaskSettlementOrder */ |
| | | export async function revokeTaskSettlementOrder( |
| | | body: API.RevokeTaskSettlementOrderCommand, |
| | |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<string>('/api/flexjob/task/sureTaskSettlement', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 确认结算单 POST /api/flexjob/task/sureTaskSettlementOrder */ |
| | | export async function sureTaskSettlementOrder( |
| | | body: API.SureTaskSettlementOrderCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<string>('/api/flexjob/task/sureTaskSettlementOrder', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | |
| | | interface APIgetEnabledElectronSignSettingsParams { |
| | | /** 企业Id */ |
| | | enterpriseId?: string; |
| | | /** 是否查询全部 */ |
| | | all?: boolean; |
| | | } |
| | | |
| | | interface APIgetEnterpriseContractTemplateSelectParams { |
| | |
| | | } |
| | | |
| | | interface APIgetSettlementTaskUsersParams { |
| | | /** 任务Id */ |
| | | taskInfoId?: string; |
| | | /** 结算单地址 */ |
| | | settlementOrderUrl?: string; |
| | | /** 结算订单Id */ |
| | | id?: string; |
| | | } |
| | | |
| | | interface APIgetTaskEnterpriseParams { |
| | |
| | | interface APIgetTaskSelectParams { |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | | } |
| | | |
| | | interface APIgetTaskSettlementDatesParams { |
| | | /** 任务开始时间 */ |
| | | beginTime?: string; |
| | | /** 任务结束时间 */ |
| | | endTime?: string; |
| | | /** 结算方式 */ |
| | | settlementCycle?: EnumSettlementCycle; |
| | | /** 结算日期 */ |
| | | settlementDate?: number; |
| | | } |
| | | |
| | | interface APIgetTaskUserHireStatusParams { |
| | |
| | | identityBackImg?: string; |
| | | /** Id */ |
| | | id?: string; |
| | | } |
| | | |
| | | interface EditTaskSettlementOrderRosterCommand { |
| | | /** 名单Id */ |
| | | id?: string; |
| | | /** 结算金额 */ |
| | | settlementAmount: number; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount: number; |
| | | /** 收款账户 */ |
| | | receiveAccount: string; |
| | | /** 所属银行 */ |
| | | bank: string; |
| | | /** 开户支行名称 */ |
| | | bankBranch?: string; |
| | | } |
| | | |
| | | interface ElectronSignCallbackCommand { |
| | |
| | | Transfer = 20, |
| | | } |
| | | |
| | | enum EnumGetEnterpriseEmployeesQuerySignContractStatus { |
| | | /**灵工待签约 */ |
| | | UserWait = 10, |
| | | /**企业待签约 */ |
| | | EnterpriseWait = 20, |
| | | /**已签约 */ |
| | | Pass = 30, |
| | | } |
| | | |
| | | enum EnumMenuType { |
| | | /**菜单 */ |
| | | Menu = 10, |
| | |
| | | InProcess = 20, |
| | | /**已结算 */ |
| | | Completed = 30, |
| | | /**部分结算 */ |
| | | Part = 40, |
| | | /**结算失败 */ |
| | | Fail = 50, |
| | | } |
| | | |
| | | enum EnumTaskStatus { |
| | |
| | | |
| | | interface ExportTaskCheckReceiveTaskUsersCommand { |
| | | /** 任务Id */ |
| | | id?: string; |
| | | } |
| | | |
| | | interface ExportTaskSettlementOrderRostersCommand { |
| | | /** 结算订单Id */ |
| | | id?: string; |
| | | } |
| | | |
| | |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultGetPersonalUserWalletBalancesQueryResult { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 状态码 */ |
| | | code?: number; |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: GetPersonalUserWalletBalancesQueryResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | | msg?: any; |
| | | /** 附加数据 */ |
| | | extras?: any; |
| | | /** 时间戳 */ |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultGetResourceLogsQueryResult { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultImportTaskSettlementOrderRostersCommandResult { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 状态码 */ |
| | | code?: number; |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: ImportTaskSettlementOrderRostersCommandResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | | msg?: any; |
| | | /** 附加数据 */ |
| | | extras?: any; |
| | | /** 时间戳 */ |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultInt32 { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | |
| | | errorCode?: string; |
| | | /** 数据 */ |
| | | data?: number; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | | msg?: any; |
| | | /** 附加数据 */ |
| | | extras?: any; |
| | | /** 时间戳 */ |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultListDateTime { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 状态码 */ |
| | | code?: number; |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | /** 数据 */ |
| | | data?: string[]; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | |
| | | date?: string; |
| | | /** 提交时间 */ |
| | | createdTime?: string; |
| | | checkReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus; |
| | | /** 验收照片 */ |
| | | files?: string[]; |
| | | } |
| | |
| | | |
| | | interface GetEnabledElectronSignSettingsQueryResultItem { |
| | | access?: EnumElectronSignAccess; |
| | | /** 是否禁用 */ |
| | | isDisabled?: boolean; |
| | | /** 实名费用 */ |
| | | realVerifyCost?: number; |
| | | /** 签约费用 */ |
| | |
| | | isReal?: boolean; |
| | | userSignContractStatus?: EnumTaskUserSignContractStatus; |
| | | enterpriseSignContractStatus?: EnumTaskUserSignContractStatus; |
| | | signContractStatus?: EnumGetEnterpriseEmployeesQuerySignContractStatus; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | enterpriseSignContractTime?: string; |
| | | /** 电子合同 */ |
| | | contractUrl?: string; |
| | | createdTime?: string; |
| | | } |
| | | |
| | | type GetEnterpriseLoginInfoQuery = Record<string, any>; |
| | |
| | | interface GetPersonalUserInfoSignContractsQuery { |
| | | /** 用户Id */ |
| | | id?: string; |
| | | /** 灵工Id */ |
| | | enterpriseEmployeeId?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | settlementAmount?: number; |
| | | /** 实发金额/提现金额 */ |
| | | amount?: number; |
| | | /** 收款人姓名 */ |
| | | receiveName?: string; |
| | | /** 付款人账户 */ |
| | | payerAccount?: string; |
| | | /** 付款人名称 */ |
| | | payerName?: string; |
| | | /** 付款人开户行 */ |
| | | payerBank?: string; |
| | | /** 付款人支行 */ |
| | | payerBankBranch?: string; |
| | | /** 收款账户 */ |
| | | receiveAccount?: string; |
| | | /** 收款人名称 */ |
| | | receiveName?: string; |
| | | /** 收款人开户行 */ |
| | | receiveBank?: string; |
| | | /** 收款人支行 */ |
| | | receiveBankBranch?: string; |
| | | /** 币种 */ |
| | | currency?: string; |
| | | /** 用途 */ |
| | | purpose?: string; |
| | | /** 服务费 */ |
| | | serviceFee?: number; |
| | | /** 实际到账 */ |
| | |
| | | transDate?: string; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | transactionStatus?: EnumWalletTransactionStatus; |
| | | /** 失败原因 */ |
| | | failReason?: string; |
| | | } |
| | |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | type?: EnumUserWalletTransactionType; |
| | | /** 用户Id */ |
| | | userId?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | interface GetPersonalUserTransactionsQueryResultItem { |
| | | /** 收支Id */ |
| | | id?: string; |
| | | type?: EnumUserWalletTransactionType; |
| | | /** 标题 */ |
| | | title?: string; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | /** 金额 */ |
| | | amount?: number; |
| | | /** 余额 */ |
| | | balance?: number; |
| | | /** 企业名称 */ |
| | | enterpriseName?: string; |
| | | /** 任务名称 */ |
| | | taskName?: string; |
| | | /** 结算单名称 */ |
| | | settlementOrderName?: string; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | /** 结算时间 */ |
| | | settlementTime?: string; |
| | | /** 付款人账户 */ |
| | | payerAccount?: string; |
| | | /** 付款人名称 */ |
| | | payerName?: string; |
| | | /** 付款人账号 */ |
| | | payerUserName?: string; |
| | | /** 付款人联系人 */ |
| | | payerContacts?: string; |
| | | /** 付款人联系电话 */ |
| | | payerContactPhoneNumber?: string; |
| | | /** 收款账户 */ |
| | | receiveAccount?: string; |
| | | /** 收款人名称 */ |
| | | receiveName?: string; |
| | | /** 用途 */ |
| | | purpose?: string; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | /** 交易时间 */ |
| | | transDate?: string; |
| | | } |
| | | |
| | | interface GetPersonalUserTransactionsQueryResultObjectData { |
| | |
| | | sumIncome?: number; |
| | | /** 总提现 */ |
| | | sumWithdraw?: number; |
| | | } |
| | | |
| | | interface GetPersonalUserWalletBalancesQuery { |
| | | /** 最小余额 */ |
| | | balanceMin?: number; |
| | | /** 最大余额 */ |
| | | balanceMax?: number; |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | | interface GetPersonalUserWalletBalancesQueryResult { |
| | | pageModel?: PagedListQueryResultPageModel; |
| | | /** 数据 */ |
| | | data?: GetPersonalUserWalletBalancesQueryResultItem[]; |
| | | } |
| | | |
| | | interface GetPersonalUserWalletBalancesQueryResultItem { |
| | | /** 用户Id */ |
| | | id?: string; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 手机号 */ |
| | | contactPhoneNumber?: string; |
| | | /** 身份证号 */ |
| | | identity?: string; |
| | | /** 余额 */ |
| | | balance?: number; |
| | | } |
| | | |
| | | interface GetResourceFieldsQueryResultItem { |
| | |
| | | keywords?: string; |
| | | settlementOrderStatus?: EnumTaskSettlementOrderStatus; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | checkReceiveStatus?: EnumTaskCheckReceiveStatus; |
| | | /** 结算时间-起始 */ |
| | | settlementTimeBegin?: string; |
| | | /** 结算时间-截止 */ |
| | | settlementTimeEnd?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | |
| | | interface GetSettlementTasksQueryResultItem { |
| | | /** 任务Id */ |
| | | id?: string; |
| | | /** 所属任务 */ |
| | | name?: string; |
| | | /** 任务单号 */ |
| | | code?: string; |
| | | checkReceiveStatus?: EnumTaskCheckReceiveStatus; |
| | | settlementOrderStatus?: EnumTaskSettlementOrderStatus; |
| | | /** 结算单名称 */ |
| | | settlementOrderName?: string; |
| | | /** 上传时间 */ |
| | | settlementOrderTime?: string; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount?: number; |
| | | /** 结算金额 */ |
| | | settlementAmount?: number; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | /** 结算时间 */ |
| | | settlementTime?: string; |
| | | /** 备注 */ |
| | | settlementRemark?: string; |
| | | /** 结算人数 */ |
| | | settlementUserCount?: number; |
| | | } |
| | | |
| | | interface GetSettlementTaskUsersQueryResult { |
| | | detail?: GetSettlementTaskUsersQueryResultDetail; |
| | | /** 结算名单 */ |
| | | data?: GetSettlementTaskUsersQueryResultItem[]; |
| | | } |
| | | |
| | | interface GetSettlementTaskUsersQueryResultDetail { |
| | | /** 结算订单Id */ |
| | | id?: string; |
| | | /** 任务名称 */ |
| | | name?: string; |
| | |
| | | settlementTime?: string; |
| | | /** 备注 */ |
| | | settlementRemark?: string; |
| | | /** 结算人数 */ |
| | | settlementUserCount?: number; |
| | | } |
| | | |
| | | interface GetSettlementTaskUsersQueryResult { |
| | | detail?: GetSettlementTaskQueryResult; |
| | | /** 结算名单 */ |
| | | data?: GetSettlementTaskUsersQueryResultItem[]; |
| | | /** 错误信息 */ |
| | | errors?: GetSettlementTaskUsersQueryResultError[]; |
| | | } |
| | | |
| | | interface GetSettlementTaskUsersQueryResultError { |
| | | /** 错误信息 */ |
| | | errorMessage?: string; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 身份证号 */ |
| | | identity?: string; |
| | | /** 结算金额 */ |
| | | settlementAmount?: number; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount?: number; |
| | | /** 收款账户 */ |
| | | receiveAccount?: string; |
| | | /** 所属银行 */ |
| | | bank?: string; |
| | | /** 开户支行名称 */ |
| | | bankBranch?: string; |
| | | /** 任务名称 */ |
| | | taskName?: string; |
| | | } |
| | | |
| | | interface GetSettlementTaskUsersQueryResultItem { |
| | | /** 任务用户Id */ |
| | | /** 结算名单Id */ |
| | | id?: string; |
| | | /** 姓名 */ |
| | | name?: string; |
| | |
| | | identity?: string; |
| | | /** 手机号 */ |
| | | contactPhoneNumber?: string; |
| | | checkReceiveStatus?: EnumTaskCheckReceiveStatus; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | /** 所属银行 */ |
| | | bank?: string; |
| | | /** 开户支行名称 */ |
| | |
| | | settlementAmount?: number; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount?: number; |
| | | settlementReceiveStatus?: SettlementReceiveStatus; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | /** 结算时间 */ |
| | | settlementTime?: string; |
| | | } |
| | |
| | | /** 服务费 */ |
| | | serviceFee?: number; |
| | | settlementCycle?: EnumSettlementCycle; |
| | | /** 结算日期 */ |
| | | settlementDate?: number; |
| | | /** 福利 */ |
| | | benefits?: GetTaskInfoQueryResultBenefit[]; |
| | | /** 年龄范围最小 */ |
| | |
| | | endTime?: string; |
| | | releaseStatus?: EnumTaskReleaseStatus; |
| | | checkReceiveStatus?: EnumTaskCheckReceiveStatus; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | recommendStatus?: EnumTaskRecommendStatus; |
| | | /** 推荐时间 */ |
| | | recommendTime?: string; |
| | |
| | | contactPhoneNumber?: string; |
| | | /** 身份证号 */ |
| | | identity?: string; |
| | | } |
| | | |
| | | interface ImportTaskSettlementOrderRostersCommand { |
| | | /** 结算订单Id */ |
| | | id?: string; |
| | | /** 导入文件地址 */ |
| | | url: string; |
| | | } |
| | | |
| | | interface ImportTaskSettlementOrderRostersCommandResult { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 任务名称 */ |
| | | name?: string; |
| | | /** 任务单号 */ |
| | | code?: string; |
| | | settlementOrderStatus?: EnumTaskSettlementOrderStatus; |
| | | /** 结算单名称 */ |
| | | settlementOrderName?: string; |
| | | /** 上传时间 */ |
| | | settlementOrderTime?: string; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount?: number; |
| | | /** 结算金额 */ |
| | | settlementAmount?: number; |
| | | settlementStatus?: EnumTaskSettlementStatus; |
| | | /** 结算时间 */ |
| | | settlementTime?: string; |
| | | /** 备注 */ |
| | | settlementRemark?: string; |
| | | errors?: ImportTaskSettlementOrderRostersCommandResultError[]; |
| | | } |
| | | |
| | | interface ImportTaskSettlementOrderRostersCommandResultError { |
| | | /** 错误信息 */ |
| | | errorMessage?: string; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 身份证号 */ |
| | | identity?: string; |
| | | /** 手机号 */ |
| | | contactPhoneNumber?: string; |
| | | /** 所属银行 */ |
| | | bank?: string; |
| | | /** 所属支行 */ |
| | | bankBranch?: string; |
| | | /** 收款账户 */ |
| | | receiveAccount?: string; |
| | | /** 结算金额 */ |
| | | settlementAmount?: number; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount?: number; |
| | | } |
| | | |
| | | interface InviteElectronSignCommand { |
| | |
| | | /** 服务费 */ |
| | | serviceFee: number; |
| | | settlementCycle: EnumSettlementCycle; |
| | | /** 结算日期 */ |
| | | settlementDate: number; |
| | | /** 福利编号 */ |
| | | benefits?: string[]; |
| | | /** 年龄范围最小 */ |
| | |
| | | hireStatus?: EnumTaskUserHireStatus; |
| | | } |
| | | |
| | | enum SettlementReceiveStatus { |
| | | /**已到账 */ |
| | | Completed = 10, |
| | | /**已退款 */ |
| | | Refunded = 20, |
| | | } |
| | | |
| | | interface SetUserInfoRolesCommand { |
| | | /** 用户Id */ |
| | | userInfoId?: string; |
| | |
| | | interface SureTaskSettlementCommand { |
| | | /** 任务Id */ |
| | | taskInfoId?: string; |
| | | } |
| | | |
| | | interface SureTaskSettlementOrderCommand { |
| | | /** 任务Id */ |
| | | taskInfoId?: string; |
| | | /** 结算单地址 */ |
| | | settlementOrderUrl?: string; |
| | | /** 结算名单 */ |
| | | taskInfoUsers?: SureTaskSettlementOrderCommandUser[]; |
| | | } |
| | | |
| | | interface SureTaskSettlementOrderCommandUser { |
| | | /** 任务用户Id */ |
| | | id?: string; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 所属银行 */ |
| | | bank?: string; |
| | | /** 开户支行名称 */ |
| | | bankBranch?: string; |
| | | /** 收款账户 */ |
| | | receiveAccount: string; |
| | | /** 结算金额 */ |
| | | settlementAmount: number; |
| | | /** 实发金额 */ |
| | | actualSettlementAmount: number; |
| | | } |
| | | |
| | | type SyncDatabaseCommand = Record<string, any>; |
| | |
| | | ); |
| | | } |
| | | |
| | | /** 查询个人钱包余额分页列表 POST /api/user/user/getPersonalUserWalletBalances */ |
| | | export async function getPersonalUserWalletBalances( |
| | | body: API.GetPersonalUserWalletBalancesQuery, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<API.GetPersonalUserWalletBalancesQueryResult>( |
| | | '/api/user/user/getPersonalUserWalletBalances', |
| | | { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | } |
| | | ); |
| | | } |
| | | |
| | | /** 查询用户角色列表 GET /api/user/user/getUserInfoRoles */ |
| | | export async function getUserInfoRoles( |
| | | // 叠加生成的Param类型 (非body参数swagger默认没有生成对象) |