wupengfei
3 天以前 600a0319374e7ff53f801777d3dca25951cac1ca
fix: bug
3个文件已添加
9个文件已修改
218 ■■■■■ 已修改文件
apps/cMiniApp/src/app.config.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/constants/router.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/pages/mine/index.vue 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/mine/mineHire/InnerPage.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/mine/mineHire/mineHire.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/mine/mineHired/InnerPage.vue 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/mine/mineHired/mineHired.config.ts 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/mine/mineHired/mineHired.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/wallet/bindAlipay/InnerPage.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/wallet/bindBankCard/InnerPage.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/electronSign.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/typings.d.ts 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/app.config.ts
@@ -77,6 +77,7 @@
      pages: [
        'mineSign/mineSign',
        'mineHire/mineHire',
        'mineHired/mineHired',
        'mineCancel/mineCancel',
        'mineCollectTask/mineCollectTask',
        'mineAgreementSign/mineAgreementSign',
apps/cMiniApp/src/constants/router.ts
@@ -33,6 +33,7 @@
  mineSign = '/subpackages/mine/mineSign/mineSign',
  mineHire = '/subpackages/mine/mineHire/mineHire',
  mineHired = '/subpackages/mine/mineHired/mineHired',
  mineCancel = '/subpackages/mine/mineCancel/mineCancel',
  mineCollectTask = '/subpackages/mine/mineCollectTask/mineCollectTask',
  mineAgreementSign = '/subpackages/mine/mineAgreementSign/mineAgreementSign',
apps/cMiniApp/src/pages/mine/index.vue
@@ -95,9 +95,27 @@
            @click="goMineSign"
          >
            <img :src="IconOrderSign" class="mine-order-list-icon" />
            <div class="mine-order-list-text">我的报名</div>
            <div class="mine-order-list-text">已报名</div>
          </nut-badge>
          <nut-badge
            class="mine-order-list-item"
            top="8"
            :value="userDetail?.inProcessTaskCount ?? 0"
            @click="goMineHire"
          >
            <img :src="IconOrderHire" class="mine-order-list-icon" />
            <div class="mine-order-list-text">任务中</div>
          </nut-badge>
          <nut-badge
            class="mine-order-list-item"
            top="8"
            :value="userDetail?.hirePassTaskCount ?? 0"
            @click="goMineHired"
          >
            <img :src="IconOrderHire" class="mine-order-list-icon" />
            <div class="mine-order-list-text">已录用</div>
          </nut-badge>
          <!-- <nut-badge
            class="mine-order-list-item"
            top="8"
            :value="userDetail?.hirePassTaskCount ?? 0"
@@ -114,7 +132,7 @@
          >
            <img :src="IconOrderCancel" class="mine-order-list-icon" />
            <div class="mine-order-list-text">已取消</div>
          </nut-badge>
          </nut-badge> -->
        </div>
      </List>
      <List class="mine-list-wrapper mine-setting-list">
@@ -215,6 +233,9 @@
function goMineCancel() {
  goPage(RouterPath.mineCancel);
}
function goMineHired() {
  goPage(RouterPath.mineHired);
}
function goMineCollectTask() {
  goPage(RouterPath.mineCollectTask);
}
apps/cMiniApp/src/subpackages/mine/mineHire/InnerPage.vue
@@ -1,5 +1,5 @@
<template>
  <ProTabs
  <!-- <ProTabs
    v-model="queryState.status"
    name="home-tab"
    :showPaneContent="false"
@@ -18,7 +18,7 @@
      :title="`已完成`"
      :pane-key="GetPersonalHireTaskInfosQueryStatus.Completed"
    ></ProTabPane>
  </ProTabs>
  </ProTabs> -->
  <InfiniteLoading
    scrollViewClassName="common-infinite-scroll-list home-list"
    v-bind="infiniteLoadingProps"
@@ -57,6 +57,7 @@
  GetPersonalHireTaskInfosQueryStatus,
  GetPersonalHireTaskInfosQueryStatusText,
  GetPersonalHireTaskInfosQueryStatusColor,
  EnumTaskUserArrangeStatus,
} from '@12333/constants';
import * as taskServices from '@12333/services/apiV2/task';
import Taro from '@tarojs/taro';
@@ -77,10 +78,11 @@
        page: pageParam,
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
      },
      arrangeStatus: EnumTaskUserArrangeStatus.Complete,
    };
    if (Number(queryState.status)) {
      params.status = queryState.status;
    }
    // if (Number(queryState.status)) {
    //   params.status = queryState.status;
    // }
    return taskServices.getPersonalHireTaskInfos(params, {
      showLoading: false,
    });
apps/cMiniApp/src/subpackages/mine/mineHire/mineHire.vue
@@ -1,5 +1,5 @@
<template>
  <PageLayoutWithBg class="mineHire-page-wrapper" :title="'已安排'">
  <PageLayoutWithBg class="mineHire-page-wrapper" :title="'任务中'">
    <InnerPage></InnerPage>
  </PageLayoutWithBg>
</template>
apps/cMiniApp/src/subpackages/mine/mineHired/InnerPage.vue
New file
@@ -0,0 +1,111 @@
<template>
  <!-- <ProTabs
    v-model="queryState.status"
    name="home-tab"
    :showPaneContent="false"
    class="home-tabs"
    isTransparent
    title-gutter="12"
    title-scroll
  >
    <ProTabPane :title="`全部`" :pane-key="0"></ProTabPane>
    <ProTabPane :title="`待开始`" :pane-key="GetPersonalHireTaskInfosQueryStatus.Wait"></ProTabPane>
    <ProTabPane
      :title="`进行中`"
      :pane-key="GetPersonalHireTaskInfosQueryStatus.InProcess"
    ></ProTabPane>
    <ProTabPane
      :title="`已完成`"
      :pane-key="GetPersonalHireTaskInfosQueryStatus.Completed"
    ></ProTabPane>
  </ProTabs> -->
  <InfiniteLoading
    scrollViewClassName="common-infinite-scroll-list home-list"
    v-bind="infiniteLoadingProps"
    :key="queryState.status"
  >
    <template #renderItem="{ item }">
      <TaskCard
        :name="item.name"
        :begin-time="item.beginTime"
        :end-time="item.endTime"
        :billing-method="item.billingMethod"
        :benefits="item.benefits"
        :service-fee="item.serviceFee"
        :settlement-cycle="item.settlementCycle"
        :address-name="item.addressName"
        @click="goTaskDetail(item)"
      >
        <template #actions>
          <div
            class="task-card-actions-text"
            :style="{ color: GetPersonalHireTaskInfosQueryStatusColor[item.status] }"
          >
            {{ GetPersonalHireTaskInfosQueryStatusText[item.status] }}
          </div>
        </template>
      </TaskCard>
    </template>
  </InfiniteLoading>
</template>
<script setup lang="ts">
import { TaskCard, ProTabs, ProTabPane } from '@12333/components';
import { useInfiniteLoading } from '@12333/hooks';
import {
  EnumPagedListOrder,
  GetPersonalHireTaskInfosQueryStatus,
  GetPersonalHireTaskInfosQueryStatusText,
  GetPersonalHireTaskInfosQueryStatusColor,
  EnumTaskUserHireStatus,
} from '@12333/constants';
import * as taskServices from '@12333/services/apiV2/task';
import Taro from '@tarojs/taro';
defineOptions({
  name: 'InnerPage',
});
const queryState = reactive({
  status: 0 as any as GetPersonalHireTaskInfosQueryStatus,
});
const { infiniteLoadingProps } = useInfiniteLoading(
  ({ pageParam }) => {
    let params: API.GetPersonalHireTaskInfosQuery = {
      pageModel: {
        rows: 20,
        page: pageParam,
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
      },
      hireStatus: EnumTaskUserHireStatus.Pass,
    };
    // if (Number(queryState.status)) {
    //   params.status = queryState.status;
    // }
    return taskServices.getPersonalHireTaskInfos(params, {
      showLoading: false,
    });
  },
  {
    queryKey: ['taskServices/getPersonalHireTaskInfos', queryState],
  }
);
function goTaskDetail(item: API.GetPersonalHireTaskInfosQueryResultItem) {
  Taro.navigateTo({
    url: `${RouterPath.taskDetail}?id=${item.id}`,
  });
}
</script>
<style lang="scss">
@import '@/styles/common.scss';
.mineHired-page-wrapper {
  .task-card-actions-text {
    font-size: 24px;
    line-height: 42px;
  }
}
</style>
apps/cMiniApp/src/subpackages/mine/mineHired/mineHired.config.ts
New file
@@ -0,0 +1,3 @@
export default definePageConfig({
  disableScroll: true,
});
apps/cMiniApp/src/subpackages/mine/mineHired/mineHired.vue
New file
@@ -0,0 +1,17 @@
<template>
  <PageLayoutWithBg class="mineHired-page-wrapper" :title="'已录用'">
    <InnerPage></InnerPage>
  </PageLayoutWithBg>
</template>
<script setup lang="ts">
import InnerPage from './InnerPage.vue';
defineOptions({
  name: 'mineHired',
});
</script>
<style lang="scss">
@import '@/styles/common.scss';
</style>
apps/cMiniApp/src/subpackages/wallet/bindAlipay/InnerPage.vue
@@ -12,12 +12,15 @@
import { EnumUserBankCardAccess } from '@12333/constants';
import { BindWalletView } from '@12333/components';
import { usePersonalUserBankCard } from '../hooks';
import { goBack } from '@/utils';
defineOptions({
  name: 'InnerPage',
});
const switchTab = useSwitchTab();
const { updateUserInfo } = useUser();
const { detail } = usePersonalUserBankCard({
  access: EnumUserBankCardAccess.AliPay,
@@ -33,9 +36,8 @@
    if (res) {
      Message.success('解绑成功', {
        onClosed() {
          switchTab({
            url: RouterPath.mine,
          });
          updateUserInfo();
          goBack();
        },
      });
    }
apps/cMiniApp/src/subpackages/wallet/bindBankCard/InnerPage.vue
@@ -1,6 +1,6 @@
<template>
  <BindWalletView
    :type="EnumUserBankCardAccess.AliPay"
    :type="EnumUserBankCardAccess.Bank"
    :detail="detail"
    @Unbind="handleUnbind"
  ></BindWalletView>
@@ -12,12 +12,13 @@
import { EnumUserBankCardAccess } from '@12333/constants';
import { BindWalletView } from '@12333/components';
import { usePersonalUserBankCard } from '../hooks';
import { goBack } from '@/utils';
defineOptions({
  name: 'InnerPage',
});
const switchTab = useSwitchTab();
const { updateUserInfo } = useUser();
const { detail } = usePersonalUserBankCard({
  access: EnumUserBankCardAccess.Bank,
@@ -33,9 +34,8 @@
    if (res) {
      Message.success('解绑成功', {
        onClosed() {
          switchTab({
            url: RouterPath.mine,
          });
          updateUserInfo();
          goBack();
        },
      });
    }
packages/services/apiV2/electronSign.ts
@@ -32,6 +32,21 @@
  });
}
/** 校验合同模板业务编号是否存在 POST /api/user/electronSign/checkExistContractTemplateCode */
export async function checkExistContractTemplateCode(
  body: API.CheckExistContractTemplateCodeCommand,
  options?: API.RequestConfig
) {
  return request<boolean>('/api/user/electronSign/checkExistContractTemplateCode', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 电子签回传 POST /api/user/electronSign/electronSignCallback */
export async function electronSignCallback(
  body: API.ElectronSignCallbackCommand,
packages/services/apiV2/typings.d.ts
@@ -459,6 +459,13 @@
    accesses?: EnumElectronSignAccess[];
  }
  interface CheckExistContractTemplateCodeCommand {
    /** 模板Id(编辑时传入) */
    id?: string;
    /** 业务编号 */
    code: string;
  }
  type CheckHealthQuery = Record<string, any>;
  interface CheckOperatorTokenCommand {
@@ -5054,6 +5061,8 @@
  }
  interface GetPersonalHireTaskInfosQuery {
    hireStatus?: EnumTaskUserHireStatus;
    arrangeStatus?: EnumTaskUserArrangeStatus;
    status?: GetPersonalHireTaskInfosQueryStatus;
    pageModel?: PagedListQueryPageModel;
  }
@@ -6696,14 +6705,14 @@
    identity?: string;
    /** 手机号 */
    contactPhoneNumber?: string;
    /** 累计工时 */
    totalWorkHours?: number;
    /** 所属银行 */
    bank?: string;
    /** 所属支行 */
    bankBranch?: string;
    /** 收款账户 */
    receiveAccount?: string;
    /** 累计工时 */
    totalWorkHours?: number;
    /** 结算金额 */
    settlementAmount?: number;
    /** 实发金额 */