bc17b7988f1eb3c9923fd8b332f8714410a34a71..12f08c16ee7c7176368b5961fe104ed698227a8d
10 小时以前 wupengfei
Merge branch 'master' into dev-v1.1
12f08c 对比 | 目录
10 小时以前 wupengfei
feat: 页面
9c8b6d 对比 | 目录
12 小时以前 zhengyiming
fix: bug
4a8d6f 对比 | 目录
12 小时以前 zhengyiming
Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp
258008 对比 | 目录
12 小时以前 zhengyiming
fix: bug
a31b80 对比 | 目录
11个文件已修改
190 ■■■■ 已修改文件
apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/pages/mine/index.vue 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Card/TaskCheckFileCard.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Card/WithdrawMoneyCard.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/apiEnum.ts 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/authenticationV2.ts 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/task.ts 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/typings.d.ts 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/flexJobManage/flexJobManage/InnerPage.vue
@@ -1,6 +1,6 @@
<template>
  <ProTabs
    v-model="queryState.userSignContractStatus"
    v-model="queryState.status"
    name="home-tab"
    :showPaneContent="false"
    class="home-tabs"
@@ -8,14 +8,15 @@
    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="Status.FlexJobWait"></ProTabPane>
    <ProTabPane :title="`企业待签约`" :pane-key="Status.EnterpriseWait"></ProTabPane>
    <ProTabPane :title="`已签约`" :pane-key="Status.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.status"
  >
    <template #renderItem="{ item }">
      <FlexJobCard
@@ -35,7 +36,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 +48,16 @@
            <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"
            type="primary"
            @click.stop="goFlexJobSign(item)"
            >签约</nut-button
            >邀请签约</nut-button
          >
          <nut-button
            v-if="item.enterpriseSignContractStatus === EnumTaskUserSignContractStatus.Wait"
            type="primary"
            @click.stop="goFlexJobSign(item)"
            >企业签约</nut-button
          >
        </template>
      </FlexJobCard>
@@ -78,8 +82,14 @@
  name: 'InnerPage',
});
const enum Status {
  FlexJobWait = 1,
  EnterpriseWait = 2,
  Pass = 3,
}
const queryState = reactive({
  userSignContractStatus: EnumTaskUserSignContractStatus.Pass,
  status: Status.FlexJobWait,
});
const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
@@ -91,8 +101,16 @@
        orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
      },
      hireStatus: EnumTaskUserHireStatus.Pass,
      userSignContractStatus: queryState.userSignContractStatus,
    };
    if (Number(queryState.status) === Status.FlexJobWait) {
      params.userSignContractStatus = EnumTaskUserSignContractStatus.Wait;
    }
    if (Number(queryState.status) === Status.EnterpriseWait) {
      params.enterpriseSignContractStatus = EnumTaskUserSignContractStatus.Wait;
    }
    if (Number(queryState.status) === Status.Pass) {
      params.userSignContractStatus = EnumTaskUserSignContractStatus.Pass;
    }
    return enterpriseEmployeeServices.getEnterpriseEmployees(params, {
      showLoading: false,
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -42,6 +42,19 @@
          }}</BlRadio>
        </nut-radio-group>
      </nut-form-item>
      <nut-form-item
        label="结算日期:"
        class="bole-form-item"
        prop="settlementCycleDate"
        label-width="90px"
        required
      >
        <ChooseInputWithPicker
          v-model="form.genderLimit"
          placeholder="请设置结算日期"
          :value-enum="[]"
        />
      </nut-form-item>
      <nut-form-item label="福利:" class="bole-form-item" prop="benefits" label-width="90px">
        <ChooseInputWithCheckbox
          v-model="form.benefits"
@@ -218,6 +231,7 @@
const rules = reactive<FormRules>({
  name: [{ required: true, message: '请输入任务名称' }],
  genderLimit: [{ required: true, message: '请选择性别要求' }],
  settlementCycleDate: [{ required: true, message: '请设置结算日期' }],
  addressDetail: [{ required: true, message: '请输入详细地址' }],
  billingMethod: [
    {
apps/cMiniApp/src/pages/mine/index.vue
@@ -19,18 +19,34 @@
              <div class="user-info-item">{{ userDetail?.name ?? '' }}</div>
              <div class="user-info-auth">
                <div class="user-info-auth-item">
                  <div class="user-info-unCertified" v-if="!isCertified">
                    <div class="user-info-unCertified-text">未认证</div>
                    <div class="user-info-unCertified-btn" @click.stop="goAuthentication">
                  <div class="user-info-unCertified">
                    <div
                      class="user-info-unCertified-text"
                      v-if="userDetail.realStatus === EnumPersonalUserRealStatus.UnReal"
                    >
                      未认证
                    </div>
                    <div class="user-info-unCertified-text" v-else>
                      {{ EnumUserRealMethodText[userDetail?.realMethod]
                      }}{{ EnumPersonalUserRealStatusText[userDetail.realStatus] }}
                    </div>
                    <div
                      class="user-info-unCertified-btn"
                      @click.stop="goAuthentication"
                      v-if="
                        userDetail.realStatus === EnumPersonalUserRealStatus.UnReal ||
                        userDetail.realStatus === EnumPersonalUserRealStatus.Fail
                      "
                    >
                      立即认证
                    </div>
                  </div>
                  <div class="user-info-unCertified" v-else>
                  <!-- <div class="user-info-unCertified" v-else>
                    <img :src="IconAuth" class="user-info-unCertified-icon" />
                    <div class="user-info-unCertified-text">
                      {{ EnumUserRealMethodText[userDetail?.realMethod] }}
                      {{ EnumUserRealMethodText[userDetail?.realMethod] }}{{ EnumPersonalUserRealStatusText[userDetail.realStatus] }}
                    </div>
                  </div>
                  </div> -->
                </div>
              </div>
            </div>
@@ -107,7 +123,11 @@
import { useUser, useIsLogin, useGoLogin } from '@/hooks';
import Taro from '@tarojs/taro';
import { RouterPath, OssAssets } from '@/constants';
import { EnumUserRealMethodText } from '@12333/constants';
import {
  EnumUserRealMethodText,
  EnumPersonalUserRealStatusText,
  EnumPersonalUserRealStatus,
} from '@12333/constants';
import { List, ListItem } from '@12333/components';
import { useSystemStore } from '@/stores/modules/system';
import PageLayoutWithBg from '@/components/Layout/PageLayoutWithBg.vue';
apps/cMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
@@ -23,10 +23,10 @@
      </template>
    </InfiniteLoading>
  </ContentScrollView>
  <div class="taskCheckDetail-tips-wrapper" v-if="!isBindBankCard">
  <!-- <div class="taskCheckDetail-tips-wrapper" v-if="!isBindBankCard">
    <div class="taskCheckDetail-tips-text">您尚未绑定银行卡,暂时无法结算服务费</div>
    <div class="taskCheckDetail-tips-btn" @click="goBindBankCard">立即绑定银行卡信息</div>
  </div>
  </div> -->
</template>
<script setup lang="ts">
apps/cMiniApp/src/subpackages/task/taskDetail/InnerPage.vue
@@ -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/TaskCheckFileCard.vue
@@ -10,7 +10,7 @@
          color: Colors.Warning,
        }"
      >
        {{ EnumTaskCheckReceiveStatusText[props.checkReceiveStatus] }}
        {{ EnumTaskUserSubmitCheckReceiveStatusText[props.checkReceiveStatus] }}
      </div>
    </div>
@@ -44,7 +44,7 @@
import {
  Colors,
  EnumTaskUserSubmitCheckReceiveStatus,
  EnumTaskCheckReceiveStatusText,
  EnumTaskUserSubmitCheckReceiveStatusText,
} from '@12333/constants';
import { setOSSLink } from '@12333/utils';
import dayjs from 'dayjs';
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/constants/apiEnum.ts
@@ -259,9 +259,9 @@
export enum EnumPersonalUserRealStatus {
  /**未实名 */
  UnReal = 0,
  /**校验中 */
  /**认证中 */
  Checking = 10,
  /**实名失败 */
  /**认证失败 */
  Fail = 99,
  /**已实名 */
  Real = 100,
packages/constants/authenticationV2.ts
@@ -1,7 +1,14 @@
import { EnumUserRealMethod } from './apiEnum';
import { EnumUserRealMethod, EnumPersonalUserRealStatus } from './apiEnum';
export const EnumUserRealMethodText = {
  [EnumUserRealMethod.Face]: '实人已认证',
  [EnumUserRealMethod.Identity3]: '已实名',
  [EnumUserRealMethod.Identity4]: '已实名',
  [EnumUserRealMethod.Face]: '实人',
  [EnumUserRealMethod.Identity3]: '实名',
  [EnumUserRealMethod.Identity4]: '实名',
};
export const EnumPersonalUserRealStatusText = {
  [EnumPersonalUserRealStatus.UnReal]: '未认证',
  [EnumPersonalUserRealStatus.Checking]: '认证中',
  [EnumPersonalUserRealStatus.Fail]: '认证失败',
  [EnumPersonalUserRealStatus.Real]: '已认证',
};
packages/constants/task.ts
@@ -12,6 +12,7 @@
  GetPersonalHireTaskInfosQueryStatus,
  GetTaskInfoQueryResultHireButton,
  GetTaskInfoQueryResultApplyButton,
  EnumTaskUserSubmitCheckReceiveStatus,
} from './apiEnum';
export const EnumBillingMethodText = {
@@ -56,6 +57,13 @@
  [EnumTaskCheckReceiveStatus.Completed]: '已验收',
};
export const EnumTaskUserSubmitCheckReceiveStatusText = {
  [EnumTaskUserSubmitCheckReceiveStatus.WaitSubmit]: '待提交',
  [EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive]: '待验收',
  [EnumTaskUserSubmitCheckReceiveStatus.Success]: '已验收',
  [EnumTaskUserSubmitCheckReceiveStatus.Fail]: '验收未通过',
};
export const EnumPersonalFreeTimeText = {
  [EnumPersonalFreeTime.NoLimit]: '不限',
  [EnumPersonalFreeTime.WinterSummerVacations]: '寒暑假',
packages/services/apiV2/typings.d.ts
@@ -728,9 +728,9 @@
  enum EnumPersonalUserRealStatus {
    /**未实名 */
    UnReal = 0,
    /**校验中 */
    /**认证中 */
    Checking = 10,
    /**实名失败 */
    /**认证失败 */
    Fail = 99,
    /**已实名 */
    Real = 100,
@@ -3336,10 +3336,6 @@
    /** 钱包Id */
    id?: string;
    access?: EnumEnterpriseWalletAccess;
    /** 账号 */
    account?: string;
    /** 商户Id */
    merchantId?: string;
    /** 协议号 */
    code?: string;
    /** 通道协议号 */
@@ -3351,6 +3347,21 @@
    /** 协议失效时间 */
    invalidTime?: string;
    signStatus?: EnumEnterpriseWalletSignStatus;
    /** 支付宝姓名 */
    name?: string;
    /** 支付宝登录账号 */
    identity?: string;
    scene?: EnumEnterpriseWalletExpandindirectOrderScene;
    /** 转账场景说明 */
    sceneDirections?: string;
    orderStatus?: EnumEnterpriseWalletExpandindirectOrderStatus;
    /** 进件单任务完结时间 */
    taskFinishTime?: string;
    /** 进件单审核不通过原因 */
    riskReviewRemark?: string;
    sitesInfo?: GetEnterpriseWalletExpandindirectOrderQueryResultSites;
    /** 附件 */
    files?: GetEnterpriseWalletExpandindirectOrderQueryResultFile[];
    expandindirectOrderStatus?: EnumEnterpriseWalletExpandindirectOrderStatus;
  }
@@ -3759,6 +3770,9 @@
    contactPhoneNumber?: string;
    /** 是否实名 */
    isReal?: boolean;
    realStatus?: EnumPersonalUserRealStatus;
    /** 实名失败消息 */
    realFailMessage?: string;
    realMethod?: EnumUserRealMethod;
    /** 我的报名 */
    taskCount?: number;
@@ -4906,10 +4920,6 @@
    /** 企业Id */
    enterpriseId?: string;
    access?: EnumEnterpriseWalletAccess;
    /** 账号 */
    account?: string;
    /** 商户Id */
    merchantId?: string;
  }
  interface OpenEnterpriseWalletCommandResult {