wupengfei
昨天 639f26323941b17902e1669778b2857465a8038a
Merge branch 'dev-v1.1'
28个文件已修改
30748 ■■■■ 已修改文件
apps/bMiniApp/.eslintrc-auto-import.json 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/CHANGELOG.md 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/auto-imports.d.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/package.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/project.config.json 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/flexJobManage/flexJobSign/InnerPage.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/mine/mineFinanceManage/InnerPage.vue 97 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/mine/mineFinanceManage/mineFinanceManage.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/CHANGELOG.md 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/package.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/pages/mine/index.vue 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Card/JobApplicationCard.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Card/WithdrawMoneyCard.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Input/ChooseInputWithDatePicker.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Input/ChooseLocationInput.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/apiEnum.ts 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/task.ts 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/auth.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/task.ts 78 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/typings.d.ts 364 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/user.ts 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pnpm-lock.yaml 29807 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/.eslintrc-auto-import.json
@@ -121,6 +121,9 @@
    "EnumUserGender": true,
    "EnumUserStatus": true,
    "EnumUserType": true,
    "useAccessAuthentication": true
    "useAccessAuthentication": true,
    "DirectiveBinding": true,
    "MaybeRef": true,
    "MaybeRefOrGetter": true
  }
}
apps/bMiniApp/CHANGELOG.md
@@ -1,5 +1,42 @@
# [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)
apps/bMiniApp/auto-imports.d.ts
@@ -120,7 +120,7 @@
// 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'
apps/bMiniApp/package.json
@@ -1,6 +1,6 @@
{
  "name": "@12333/bMiniApp",
  "version": "1.0.2",
  "version": "1.1.0",
  "private": true,
  "description": "",
  "templateInfo": {
apps/bMiniApp/project.config.json
@@ -3,8 +3,8 @@
    "description": "",
    "setting": {
        "urlCheck": false,
        "es6": false,
        "enhance": false,
        "es6": true,
        "enhance": true,
        "postcss": false,
        "preloadBackgroundData": false,
        "minified": false,
apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue
@@ -1,6 +1,6 @@
<template>
  <ProTabs
    v-model="queryState.userSignContractStatus"
    v-model="queryState.signContractStatus"
    name="home-tab"
    :showPaneContent="false"
    class="home-tabs"
@@ -8,14 +8,24 @@
    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
@@ -35,7 +45,7 @@
      >
        <template #footerRight>
          <template
            v-if="Number(queryState.userSignContractStatus) === EnumTaskUserSignContractStatus.Pass"
            v-if="item.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Pass"
          >
            <nut-button
              class="flexJobManage-card-plain-button"
@@ -47,13 +57,19 @@
            <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>
@@ -69,6 +85,7 @@
  EnumTaskUserHireStatus,
  EnumTaskUserSignContractStatus,
  EnumPagedListOrder,
  EnumGetEnterpriseEmployeesQuerySignContractStatus,
} from '@12333/constants';
import * as enterpriseEmployeeServices from '@12333/services/apiV2/enterpriseEmployee';
import Taro from '@tarojs/taro';
@@ -79,7 +96,7 @@
});
const queryState = reactive({
  userSignContractStatus: EnumTaskUserSignContractStatus.Pass,
  signContractStatus: EnumGetEnterpriseEmployeesQuerySignContractStatus.UserWait,
});
const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
@@ -91,9 +108,8 @@
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
      },
      hireStatus: EnumTaskUserHireStatus.Pass,
      userSignContractStatus: queryState.userSignContractStatus,
      signContractStatus: queryState.signContractStatus,
    };
    return enterpriseEmployeeServices.getEnterpriseEmployees(params, {
      showLoading: false,
    });
@@ -135,6 +151,16 @@
    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">
apps/bMiniApp/src/subpackages/flexJobManage/flexJobSign/InnerPage.vue
@@ -31,7 +31,7 @@
<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';
@@ -67,6 +67,7 @@
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
      },
      keywords: queryState.keywords,
      status: EnumContractTemplateStatus.Completed,
    };
    return electronSignServices.getEnterpriseContractTemplates(params, {
apps/bMiniApp/src/subpackages/jobApplicationManage/jobApplicationManage/InnerPage.vue
@@ -31,6 +31,7 @@
        :addressName="item.addressName"
        :serviceFee="item.serviceFee"
        :userCount="item.userCount"
        :status="item.status"
        :unit="BillingMethodEnumUnit[item.billingMethod]"
        :releaseStatus="item.releaseStatus"
        @edit="goEdit(item)"
apps/bMiniApp/src/subpackages/mine/mineFinanceManage/InnerPage.vue
@@ -1,50 +1,97 @@
<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;
@@ -56,6 +103,24 @@
        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>
apps/bMiniApp/src/subpackages/mine/mineFinanceManage/mineFinanceManage.vue
@@ -1,5 +1,5 @@
<template>
  <PageLayout class="mineFinanceManage-page-wrapper" :title="'财务管理'" developing>
  <PageLayout class="mineFinanceManage-page-wrapper" :title="'财务管理'">
    <InnerPage></InnerPage>
  </PageLayout>
</template>
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -25,6 +25,9 @@
            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>
@@ -36,11 +39,29 @@
        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
@@ -62,14 +83,14 @@
            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>
@@ -99,13 +120,18 @@
          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="详细地址:"
@@ -155,6 +181,8 @@
  EnumSettlementCycleText,
  BillingMethodEnumUnit,
  EnumUserGenderTextOptions,
  EnumSettlementCycleDateWeekArray,
  EnumSettlementCycleDateMonthArray,
} from '@12333/constants';
import {
  ChooseInputWithPicker,
@@ -185,7 +213,6 @@
const taskId = router.params?.id ?? '';
const isEdit = !!taskId;
const isCopy = router.params?.isCopy === 'true';
console.log('isCopy: ', router.params?.isCopy);
const nowDate = dayjs().toDate();
@@ -194,6 +221,16 @@
});
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({
@@ -206,10 +243,9 @@
  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: '',
@@ -218,6 +254,7 @@
const rules = reactive<FormRules>({
  name: [{ required: true, message: '请输入任务名称' }],
  genderLimit: [{ required: true, message: '请选择性别要求' }],
  settlementCycleDate: [{ required: true, message: '请设置结算日期' }],
  addressDetail: [{ required: true, message: '请输入详细地址' }],
  billingMethod: [
    {
@@ -237,9 +274,6 @@
  weMapInfo: [
    { required: true, message: '请设置工作地点', validator: FormValidator.validatorWeMap },
  ],
  // areaList: [
  //   { required: true, message: '请添加工作地点', validator: FormValidator.validatorArray },
  // ],
  ageMinLimit: [
    {
@@ -302,6 +336,7 @@
    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;
@@ -339,6 +374,7 @@
      billingMethod: form.billingMethod,
      serviceFee: form.serviceFee,
      settlementCycle: form.settlementCycle,
      settlementDate: form.settlementDate ? form.settlementDate : 0,
      benefits: form.benefits,
      ageMinLimit: form.ageMinLimit,
      ageMaxLimit: form.ageMaxLimit,
@@ -370,6 +406,10 @@
  } catch (error) {}
}
function settleTypeChange() {
  form.settlementDate = null as number;
}
function handleCancel() {
  goBack();
}
apps/bMiniApp/src/subpackages/task/taskManage/InnerPage.vue
@@ -27,6 +27,7 @@
        :addressName="item.addressName"
        :createdTime="item.createdTime"
        :serviceFee="item.serviceFee"
        :status="item.status"
        :unit="BillingMethodEnumUnit[item.billingMethod]"
        mode="taskManage"
      >
apps/cMiniApp/CHANGELOG.md
@@ -1,5 +1,44 @@
# [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)
apps/cMiniApp/package.json
@@ -1,6 +1,6 @@
{
  "name": "@12333/cMiniApp",
  "version": "1.0.2",
  "version": "1.1.0",
  "private": true,
  "description": "",
  "templateInfo": {
apps/cMiniApp/src/pages/mine/index.vue
@@ -22,20 +22,20 @@
                  <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
                      "
                    >
                      立即认证
@@ -44,7 +44,7 @@
                  <!-- <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>
@@ -132,22 +132,30 @@
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();
apps/cMiniApp/src/subpackages/login/registerForm/registerForm.vue
@@ -63,10 +63,15 @@
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,
@@ -128,8 +133,9 @@
        let res = await authServices.registerPersonalUser(params);
        if (res) {
          Message.success('注册成功', {
            onClosed: () => {
              goLogin();
            onClosed: async () => {
              userStore.loginSuccess(res);
              jump();
            },
          });
        }
apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
@@ -123,7 +123,7 @@
        @click="handleCall"
      ></PageFooterAction>
      <PageFooterBtn
        v-if="from === 'sign'"
        v-if="from === 'sign' && !!detail?.applyButton"
        type="primary"
        :disabled="detail?.applyButton === GetTaskInfoQueryResultApplyButton.WaitHire"
        @click="handleSign"
@@ -236,18 +236,21 @@
  }
});
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 {
packages/components/src/Card/JobApplicationCard.vue
@@ -96,15 +96,21 @@
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: '发布',
packages/components/src/Card/WithdrawMoneyCard.vue
@@ -2,7 +2,7 @@
  <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>
@@ -21,10 +21,6 @@
};
const props = withDefaults(defineProps<Props>(), {});
const emit = defineEmits<{
  (e: 'update:checkedId', value: string): void;
}>();
</script>
<style lang="scss">
packages/components/src/Input/ChooseInputWithDatePicker.vue
@@ -30,7 +30,7 @@
}>();
function handleOpen() {
  const _modelValue = [props.modelValue];
  const _modelValue = dayjs(props.modelValue).toDate();
  Portal.add((key) => {
    return h(
      Portal.Container,
packages/components/src/Input/ChooseLocationInput.vue
@@ -2,7 +2,7 @@
  <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"
@@ -34,9 +34,12 @@
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;
packages/constants/apiEnum.ts
@@ -175,6 +175,16 @@
  Transfer = 20,
}
/** 没写注释 */
export enum EnumGetEnterpriseEmployeesQuerySignContractStatus {
  /**灵工待签约 */
  UserWait = 10,
  /**企业待签约 */
  EnterpriseWait = 20,
  /**已签约 */
  Pass = 30,
}
/** 菜单类型 */
export enum EnumMenuType {
  /**菜单 */
@@ -407,6 +417,10 @@
  InProcess = 20,
  /**已结算 */
  Completed = 30,
  /**部分结算 */
  Part = 40,
  /**结算失败 */
  Fail = 50,
}
/** 任务安排状态 */
@@ -556,3 +570,11 @@
  /**已完成 */
  Completed = 20,
}
/** 结算到账状态 */
export enum SettlementReceiveStatus {
  /**已到账 */
  Completed = 10,
  /**已退款 */
  Refunded = 20,
}
packages/constants/task.ts
@@ -46,6 +46,50 @@
  [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]: '已停止',
packages/services/apiV2/auth.ts
@@ -132,7 +132,7 @@
  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',
packages/services/apiV2/task.ts
@@ -14,6 +14,36 @@
  });
}
/** 编辑结算名单 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,
@@ -173,6 +203,39 @@
  );
}
/** 查询任务结算日 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,
@@ -236,21 +299,6 @@
  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',
packages/services/apiV2/typings.d.ts
@@ -76,6 +76,8 @@
  interface APIgetEnabledElectronSignSettingsParams {
    /** 企业Id */
    enterpriseId?: string;
    /** 是否查询全部 */
    all?: boolean;
  }
  interface APIgetEnterpriseContractTemplateSelectParams {
@@ -205,10 +207,8 @@
  }
  interface APIgetSettlementTaskUsersParams {
    /** 任务Id */
    taskInfoId?: string;
    /** 结算单地址 */
    settlementOrderUrl?: string;
    /** 结算订单Id */
    id?: string;
  }
  interface APIgetTaskEnterpriseParams {
@@ -224,6 +224,17 @@
  interface APIgetTaskSelectParams {
    /** 关键字 */
    keywords?: string;
  }
  interface APIgetTaskSettlementDatesParams {
    /** 任务开始时间 */
    beginTime?: string;
    /** 任务结束时间 */
    endTime?: string;
    /** 结算方式 */
    settlementCycle?: EnumSettlementCycle;
    /** 结算日期 */
    settlementDate?: number;
  }
  interface APIgetTaskUserHireStatusParams {
@@ -427,6 +438,21 @@
    identityBackImg?: string;
    /** Id */
    id?: string;
  }
  interface EditTaskSettlementOrderRosterCommand {
    /** 名单Id */
    id?: string;
    /** 结算金额 */
    settlementAmount: number;
    /** 实发金额 */
    actualSettlementAmount: number;
    /** 收款账户 */
    receiveAccount: string;
    /** 所属银行 */
    bank: string;
    /** 开户支行名称 */
    bankBranch?: string;
  }
  interface ElectronSignCallbackCommand {
@@ -653,6 +679,15 @@
    Transfer = 20,
  }
  enum EnumGetEnterpriseEmployeesQuerySignContractStatus {
    /**灵工待签约 */
    UserWait = 10,
    /**企业待签约 */
    EnterpriseWait = 20,
    /**已签约 */
    Pass = 30,
  }
  enum EnumMenuType {
    /**菜单 */
    Menu = 10,
@@ -865,6 +900,10 @@
    InProcess = 20,
    /**已结算 */
    Completed = 30,
    /**部分结算 */
    Part = 40,
    /**结算失败 */
    Fail = 50,
  }
  enum EnumTaskStatus {
@@ -968,6 +1007,11 @@
  interface ExportTaskCheckReceiveTaskUsersCommand {
    /** 任务Id */
    id?: string;
  }
  interface ExportTaskSettlementOrderRostersCommand {
    /** 结算订单Id */
    id?: string;
  }
@@ -1692,6 +1736,24 @@
    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;
@@ -2053,6 +2115,24 @@
    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;
@@ -2062,6 +2142,25 @@
    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;
    /** 错误信息 */
@@ -2689,6 +2788,7 @@
    date?: string;
    /** 提交时间 */
    createdTime?: string;
    checkReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus;
    /** 验收照片 */
    files?: string[];
  }
@@ -2993,6 +3093,8 @@
  interface GetEnabledElectronSignSettingsQueryResultItem {
    access?: EnumElectronSignAccess;
    /** 是否禁用 */
    isDisabled?: boolean;
    /** 实名费用 */
    realVerifyCost?: number;
    /** 签约费用 */
@@ -3134,6 +3236,7 @@
    isReal?: boolean;
    userSignContractStatus?: EnumTaskUserSignContractStatus;
    enterpriseSignContractStatus?: EnumTaskUserSignContractStatus;
    signContractStatus?: EnumGetEnterpriseEmployeesQuerySignContractStatus;
    pageModel?: PagedListQueryPageModel;
  }
@@ -3187,6 +3290,7 @@
    enterpriseSignContractTime?: string;
    /** 电子合同 */
    contractUrl?: string;
    createdTime?: string;
  }
  type GetEnterpriseLoginInfoQuery = Record<string, any>;
@@ -3847,6 +3951,8 @@
  interface GetPersonalUserInfoSignContractsQuery {
    /** 用户Id */
    id?: string;
    /** 灵工Id */
    enterpriseEmployeeId?: string;
    pageModel?: PagedListQueryPageModel;
  }
@@ -3981,10 +4087,26 @@
    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;
    /** 实际到账 */
@@ -3995,6 +4117,7 @@
    transDate?: string;
    /** 创建时间 */
    createdTime?: string;
    transactionStatus?: EnumWalletTransactionStatus;
    /** 失败原因 */
    failReason?: string;
  }
@@ -4005,6 +4128,8 @@
    /** 创建时间-截止 */
    createdTimeEnd?: string;
    type?: EnumUserWalletTransactionType;
    /** 用户Id */
    userId?: string;
    pageModel?: PagedListQueryPageModel;
  }
@@ -4018,14 +4143,42 @@
  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 {
@@ -4033,6 +4186,35 @@
    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 {
@@ -4221,6 +4403,11 @@
    keywords?: string;
    settlementOrderStatus?: EnumTaskSettlementOrderStatus;
    settlementStatus?: EnumTaskSettlementStatus;
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
    /** 结算时间-起始 */
    settlementTimeBegin?: string;
    /** 结算时间-截止 */
    settlementTimeEnd?: string;
    pageModel?: PagedListQueryPageModel;
  }
@@ -4232,6 +4419,40 @@
  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;
@@ -4251,41 +4472,10 @@
    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;
@@ -4293,8 +4483,6 @@
    identity?: string;
    /** 手机号 */
    contactPhoneNumber?: string;
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
    settlementStatus?: EnumTaskSettlementStatus;
    /** 所属银行 */
    bank?: string;
    /** 开户支行名称 */
@@ -4305,6 +4493,8 @@
    settlementAmount?: number;
    /** 实发金额 */
    actualSettlementAmount?: number;
    settlementReceiveStatus?: SettlementReceiveStatus;
    settlementStatus?: EnumTaskSettlementStatus;
    /** 结算时间 */
    settlementTime?: string;
  }
@@ -4353,6 +4543,8 @@
    /** 服务费 */
    serviceFee?: number;
    settlementCycle?: EnumSettlementCycle;
    /** 结算日期 */
    settlementDate?: number;
    /** 福利 */
    benefits?: GetTaskInfoQueryResultBenefit[];
    /** 年龄范围最小 */
@@ -4505,7 +4697,6 @@
    endTime?: string;
    releaseStatus?: EnumTaskReleaseStatus;
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
    settlementStatus?: EnumTaskSettlementStatus;
    recommendStatus?: EnumTaskRecommendStatus;
    /** 推荐时间 */
    recommendTime?: string;
@@ -4894,6 +5085,58 @@
    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 {
@@ -5371,6 +5614,8 @@
    /** 服务费 */
    serviceFee: number;
    settlementCycle: EnumSettlementCycle;
    /** 结算日期 */
    settlementDate: number;
    /** 福利编号 */
    benefits?: string[];
    /** 年龄范围最小 */
@@ -5588,6 +5833,13 @@
    hireStatus?: EnumTaskUserHireStatus;
  }
  enum SettlementReceiveStatus {
    /**已到账 */
    Completed = 10,
    /**已退款 */
    Refunded = 20,
  }
  interface SetUserInfoRolesCommand {
    /** 用户Id */
    userInfoId?: string;
@@ -5627,32 +5879,6 @@
  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>;
packages/services/apiV2/user.ts
@@ -106,6 +106,24 @@
  );
}
/** 查询个人钱包余额分页列表 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默认没有生成对象)
pnpm-lock.yaml
Diff too large