wupengfei
1 天以前 83a43c957729ffdec7ca8eb4f8ebd62a1c6b4abc
fix: bug
2个文件已添加
16个文件已修改
457 ■■■■ 已修改文件
apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/pages/mine/index.vue 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/pages/task/InnerPage.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/cMiniApp/src/subpackages/mine/mineHire/InnerPage.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Calendar/Calendar.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Card/TaskCard.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/apiEnum.ts 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/task.ts 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/hooks/task.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/fileUtils.ts 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/index.ts 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/ocrUtils.ts 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/resource.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/task.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/typings.d.ts 233 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/user.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/bMiniApp/src/subpackages/task/batchTaskList/InnerPage.vue
@@ -15,6 +15,9 @@
        :age="item.age"
        :avatar="item.avatar"
        :educationalBackgroundContent="item.educationalBackgroundContent"
        :personalIdentityContent="item.personalIdentityContent"
        :workExperience="item.workExperience"
        :workSeniority="item.workSeniority"
        :taskCount="item.taskCount"
        :showFooterLeft="false"
      >
apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue
@@ -182,7 +182,7 @@
const { userDetail } = useUser();
const { findAreaNameFromCode } = useAllAreaList();
const router = Taro.useRouter();
const taskId = router.params?.taskId ?? '';
const taskId = router.params?.id ?? '';
const isEdit = !!taskId;
const isCopy = router.params?.isCopy === 'true';
console.log('isCopy: ', router.params?.isCopy);
@@ -272,7 +272,7 @@
      message: '请选择结束日期',
      validator(value) {
        if (!value) return Promise.reject('请选择结束日期');
        if (!dayjs(value).isAfter(dayjs(form.beginTime)))
        if (dayjs(value).isBefore(dayjs(form.beginTime)))
          return Promise.reject('结束日期需大于开始日期');
        return Promise.resolve(true);
      },
apps/cMiniApp/src/pages/mine/index.vue
@@ -132,7 +132,9 @@
const bgHeight = computed(() => 133 + systemStore.navHeight);
Taro.useDidShow(() => {
  updateUserInfo();
  if (isLogin.value) {
    updateUserInfo();
  }
});
function goLogin() {
apps/cMiniApp/src/pages/task/InnerPage.vue
@@ -51,7 +51,10 @@
      url: `${RouterPath.taskSubmitCheck}?id=${item.id}&date=${queryState.date}`,
    });
  }
  if (Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed) {
  if (
    Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.WaitCheckReceive ||
    Number(queryState.checkReceiveStatus) === EnumTaskCheckReceiveStatus.Completed
  ) {
    Taro.navigateTo({
      url: `${RouterPath.taskCheckDetail}?id=${item.id}`,
    });
apps/cMiniApp/src/subpackages/curriculum/mineCertificateAddOrEdit/InnerPage.vue
@@ -9,7 +9,7 @@
        />
      </nut-form-item>
      <nut-form-item label="证书编号:" class="bole-form-item" prop="code">
        <nut-input v-model="form.code" type="text" placeholder="请输入"> </nut-input>
        <nut-input v-model="form.code" type="number" placeholder="请输入"> </nut-input>
      </nut-form-item>
      <nut-form-item
        label="永久证书:"
apps/cMiniApp/src/subpackages/mine/mineHire/InnerPage.vue
@@ -9,6 +9,7 @@
    title-scroll
  >
    <ProTabPane :title="`全部`" :pane-key="0"></ProTabPane>
    <ProTabPane :title="`待开始`" :pane-key="GetPersonalHireTaskInfosQueryStatus.Wait"></ProTabPane>
    <ProTabPane
      :title="`进行中`"
      :pane-key="GetPersonalHireTaskInfosQueryStatus.InProcess"
packages/components/src/Calendar/Calendar.vue
@@ -1,7 +1,12 @@
<template>
  <div class="bole-calendar-wrapper">
    <div :class="['bole-calendar-inner', { isCollapse }]">
      <nut-calendar-card v-model="model" class="bole-calendar"></nut-calendar-card>
      <nut-calendar-card
        v-model="model"
        class="bole-calendar"
        ref="calendar"
        @change="handleChange"
      ></nut-calendar-card>
    </div>
    <div :class="['bole-calendar-arrow', { active: !isCollapse }]" @click="toggle">
      <DownArrow :size="12" :class="['bole-calendar-arrow-icon']" />
@@ -12,6 +17,7 @@
<script setup lang="ts">
import { DownArrow } from '@nutui/icons-vue-taro';
import { useToggle } from 'senin-mini/hooks';
import { ref, watch } from 'vue';
defineOptions({
  name: 'Calendar',
@@ -23,6 +29,12 @@
const model = defineModel<Date | Date[]>();
const { isCollapse, toggle } = useToggle(true);
const calendar = ref();
function handleChange(value) {
  console.log('value: ', value);
  console.log('calendar: ', calendar.value);
}
</script>
<style lang="scss">
packages/components/src/Card/TaskCard.vue
@@ -41,6 +41,7 @@
            v-if="releaseStatus === EnumTaskReleaseStatus.InProcess"
            type="primary"
            @click="emit('apply', props.id)"
            :disabled="!!hireStatus"
            >报名</nut-button
          >
        </slot>
@@ -63,6 +64,7 @@
  EnumUserGenderText,
  EnumSettlementCycleText,
  BillingMethodEnumUnit,
  EnumTaskUserHireStatus,
} from '@12333/constants';
import TaskPrice from './TaskPrice.vue';
import { CommonTaskCardProps } from './card';
@@ -119,6 +121,7 @@
  recommendStatus?: EnumTaskRecommendStatus;
  /** 创建时间 */
  createdTime?: string;
  hireStatus?: EnumTaskUserHireStatus;
};
const props = withDefaults(defineProps<Props>(), {
packages/constants/apiEnum.ts
@@ -21,6 +21,20 @@
  Wxmp = 20,
}
/** 数据来源 */
export enum EnumDataSource {
  /**818 */
  HumanResources = 10,
}
/** 企业实名方式 */
export enum EnumEnterpriseRealMethod {
  /**企业三要素 */
  Identity3 = 10,
  /**企业四要素 */
  Identity4 = 20,
}
/** 菜单类型 */
export enum EnumMenuType {
  /**菜单 */
@@ -45,12 +59,26 @@
  NeedPower = 30,
}
/** 文字识别通道 */
export enum EnumOcrAccess {
  /**百度 */
  Baidu = 10,
}
/** 分页列表排序 */
export enum EnumPagedListOrder {
  /**升序 */
  Asc = 0,
  /**降序 */
  Desc = 1,
}
/** 支付通道 */
export enum EnumPayAccess {
  /**平安银行 */
  PingAnBank = 10,
  /**支付宝 */
  Alipay = 20,
}
/** 空闲时间 */
@@ -77,6 +105,16 @@
  Not = 30,
}
/** 个人实名方式 */
export enum EnumPersonalRealMethod {
  /**个人手机号三要素 */
  Identity3 = 10,
  /**银行卡多要素 */
  Identity4 = 20,
  /**刷脸认证 */
  Face = 30,
}
/** 实名通道 */
export enum EnumRealAccess {
  /**上上签 */
@@ -95,22 +133,26 @@
  TaskUser = 2,
  /**任务验收 */
  TaskCheckReceive = 3,
  /**文字识别 */
  FileUtils = 4,
  /**文字识别 */
  OcrUtils = 5,
  /**用户认证 */
  Auth = 4,
  Auth = 6,
  /**用户菜单 */
  Menu = 5,
  Menu = 7,
  /**用户资源 */
  Resource = 6,
  Resource = 8,
  /**用户角色 */
  Role = 7,
  Role = 9,
  /**用户信息 */
  User = 8,
  User = 10,
  /**用户简历 */
  UserResume = 9,
  UserResume = 11,
  /**企业信息 */
  Enterprise = 10,
  Enterprise = 12,
  /**灵工信息 */
  EnterpriseEmployee = 11,
  EnterpriseEmployee = 13,
}
/** 资源请求方式 */
@@ -285,6 +327,8 @@
/** 我的已录用分页列表-状态 */
export enum GetPersonalHireTaskInfosQueryStatus {
  /**待开始 */
  Wait = 1,
  /**进行中 */
  InProcess = 10,
  /**已完成 */
@@ -301,8 +345,10 @@
/** 我的录用列表-详情-按钮类型 */
export enum GetTaskInfoQueryResultHireButton {
  /**待开始 */
  Wait = 1,
  /**申请验收 */
  ApplyCheckReceive = 1,
  ApplyCheckReceive = 5,
  /**进行中 */
  InProcess = 10,
  /**已完成 */
packages/constants/task.ts
@@ -81,17 +81,20 @@
};
export const GetPersonalHireTaskInfosQueryStatusText = {
  [GetPersonalHireTaskInfosQueryStatus.Wait]: '待开始',
  [GetPersonalHireTaskInfosQueryStatus.InProcess]: '进行中',
  [GetPersonalHireTaskInfosQueryStatus.Completed]: '已完成',
};
export const GetPersonalHireTaskInfosQueryStatusColor = {
  [GetPersonalHireTaskInfosQueryStatus.Wait]: '#9FA4AC',
  [GetPersonalHireTaskInfosQueryStatus.InProcess]: '#2A9E1B',
  [GetPersonalHireTaskInfosQueryStatus.Completed]: '#9FA4AC',
};
export const GetTaskInfoQueryResultHireButtonText = {
  [GetTaskInfoQueryResultHireButton.ApplyCheckReceive]: '申请验收',
  [GetTaskInfoQueryResultHireButton.Wait]: '待开始',
  [GetTaskInfoQueryResultHireButton.InProcess]: '进行中',
  [GetTaskInfoQueryResultHireButton.Completed]: '已完成',
};
packages/hooks/task.ts
@@ -161,7 +161,7 @@
          rows: 20,
          page: pageParam,
        },
        id: id,
        taskInfoId: id,
      };
      return taskCheckReceiveServices.getCheckReceiveTaskUserSubmits(params, {
packages/services/apiV2/fileUtils.ts
New file
@@ -0,0 +1,52 @@
/* eslint-disable */
// @ts-ignore
import { request } from '@/utils/request';
/** 获取文件地址 GET /api/common/fileUtils/getFileUrl */
export async function getFileUrl(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.APIgetFileUrlParams,
  options?: API.RequestConfig
) {
  return request<string>('/api/common/fileUtils/getFileUrl', {
    method: 'GET',
    params: {
      ...params,
    },
    ...(options || {}),
  });
}
/** 上传文件 POST /api/common/fileUtils/uploadFile */
export async function uploadFile(
  body: {
    /** 场景 */
    Scene?: string;
  },
  File?: File,
  options?: API.RequestConfig
) {
  const formData = new FormData();
  if (File) {
    formData.append('File', File);
  }
  Object.keys(body).forEach((ele) => {
    const item = (body as any)[ele];
    if (item !== undefined && item !== null) {
      formData.append(
        ele,
        typeof item === 'object' && !(item instanceof File) ? JSON.stringify(item) : item
      );
    }
  });
  return request<API.UploadFileCommandResult>('/api/common/fileUtils/uploadFile', {
    method: 'POST',
    data: formData,
    requestType: 'form',
    ...(options || {}),
  });
}
packages/services/apiV2/index.ts
@@ -7,6 +7,7 @@
import * as role from './role';
import * as enterprise from './enterprise';
import * as task from './task';
import * as ocrUtils from './ocrUtils';
import * as dictionary from './dictionary';
import * as userResume from './userResume';
import * as auth from './auth';
@@ -14,12 +15,14 @@
import * as resource from './resource';
import * as taskUser from './taskUser';
import * as menu from './menu';
import * as fileUtils from './fileUtils';
export default {
  enterpriseEmployee,
  user,
  role,
  enterprise,
  task,
  ocrUtils,
  dictionary,
  userResume,
  auth,
@@ -27,4 +30,5 @@
  resource,
  taskUser,
  menu,
  fileUtils,
};
packages/services/apiV2/ocrUtils.ts
New file
@@ -0,0 +1,18 @@
/* eslint-disable */
// @ts-ignore
import { request } from '@/utils/request';
/** 文字识别营业执照 GET /api/common/ocrUtils/getLicenseOcr */
export async function getLicenseOcr(
  // 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
  params: API.APIgetLicenseOcrParams,
  options?: API.RequestConfig
) {
  return request<API.GetLicenseOcrCommandResult>('/api/common/ocrUtils/getLicenseOcr', {
    method: 'GET',
    params: {
      ...params,
    },
    ...(options || {}),
  });
}
packages/services/apiV2/resource.ts
@@ -31,18 +31,3 @@
    ...(options || {}),
  });
}
/** 保存任务调度-作业 POST /api/user/resource/saveScheduleJobDetail */
export async function saveScheduleJobDetail(
  body: API.SaveScheduleJobDetailCommand,
  options?: API.RequestConfig
) {
  return request<boolean>('/api/user/resource/saveScheduleJobDetail', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
packages/services/apiV2/task.ts
@@ -2,21 +2,6 @@
// @ts-ignore
import { request } from '@/utils/request';
/** 按日期修订任务状态 POST /api/flexjob/task/autoTaskStatusByDate */
export async function autoTaskStatusByDate(
  body: API.AutoTaskStatusByDateCommand,
  options?: API.RequestConfig
) {
  return request<number>('/api/flexjob/task/autoTaskStatusByDate', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 删除任务 DELETE /api/flexjob/task/deleteTaskInfo */
export async function deleteTaskInfo(body: API.DeleteTaskInfoCommand, options?: API.RequestConfig) {
  return request<number>('/api/flexjob/task/deleteTaskInfo', {
packages/services/apiV2/typings.d.ts
@@ -83,6 +83,22 @@
    id?: string;
  }
  interface APIgetFileUrlParams {
    /** 地址 */
    url?: string;
  }
  interface APIgetLicenseOcrParams {
    /** 通道 */
    access?: EnumOcrAccess;
    /** 场景 */
    scene?: string;
    /** 链接地址 */
    url?: string;
    /** 是否为云存储相对地址 */
    isOssUrl?: boolean;
  }
  interface APIgetMenuParams {
    /** Id */
    id?: string;
@@ -189,7 +205,24 @@
    ids?: string[];
  }
  type AutoTaskStatusByDateCommand = Record<string, any>;
  interface BaiduOcrBusinessLicenseResultModel {
    /** 企业全称 */
    enterpriseName?: string;
    /** 统一社会信用代码 */
    societyCreditCode?: string;
    /** 法人姓名 */
    legalPerson?: string;
    /** 企业类型 */
    enterpriseType?: string;
    /** 注册资本 */
    registeredCapital?: string;
    /** 成立日期 */
    establishmentDate?: string;
    /** 企业地址 */
    address?: string;
    /** 经营范围 */
    mainBusiness?: string;
  }
  interface BindWxmpUserInfoCommand {
    /** 访问令牌 */
@@ -292,6 +325,18 @@
    Wxmp = 20,
  }
  enum EnumDataSource {
    /**818 */
    HumanResources = 10,
  }
  enum EnumEnterpriseRealMethod {
    /**企业三要素 */
    Identity3 = 10,
    /**企业四要素 */
    Identity4 = 20,
  }
  enum EnumMenuType {
    /**菜单 */
    Menu = 10,
@@ -314,11 +359,23 @@
    NeedPower = 30,
  }
  enum EnumOcrAccess {
    /**百度 */
    Baidu = 10,
  }
  enum EnumPagedListOrder {
    /**升序 */
    Asc = 0,
    /**降序 */
    Desc = 1,
  }
  enum EnumPayAccess {
    /**平安银行 */
    PingAnBank = 10,
    /**支付宝 */
    Alipay = 20,
  }
  enum EnumPersonalFreeTime {
@@ -343,6 +400,15 @@
    Not = 30,
  }
  enum EnumPersonalRealMethod {
    /**个人手机号三要素 */
    Identity3 = 10,
    /**银行卡多要素 */
    Identity4 = 20,
    /**刷脸认证 */
    Face = 30,
  }
  enum EnumRealAccess {
    /**上上签 */
    BestSign = 10,
@@ -359,22 +425,26 @@
    TaskUser = 2,
    /**任务验收 */
    TaskCheckReceive = 3,
    /**文字识别 */
    FileUtils = 4,
    /**文字识别 */
    OcrUtils = 5,
    /**用户认证 */
    Auth = 4,
    Auth = 6,
    /**用户菜单 */
    Menu = 5,
    Menu = 7,
    /**用户资源 */
    Resource = 6,
    Resource = 8,
    /**用户角色 */
    Role = 7,
    Role = 9,
    /**用户信息 */
    User = 8,
    User = 10,
    /**用户简历 */
    UserResume = 9,
    UserResume = 11,
    /**企业信息 */
    Enterprise = 10,
    Enterprise = 12,
    /**灵工信息 */
    EnterpriseEmployee = 11,
    EnterpriseEmployee = 13,
  }
  enum EnumResourceMethod {
@@ -752,6 +822,24 @@
    /** 错误码 */
    errorCode?: string;
    data?: GetEnterpriseSmsSettingQueryResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  interface FriendlyResultGetLicenseOcrCommandResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: GetLicenseOcrCommandResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
@@ -1458,6 +1546,24 @@
    timestamp?: number;
  }
  interface FriendlyResultUploadFileCommandResult {
    /** 跟踪Id */
    traceId?: string;
    /** 状态码 */
    code?: number;
    /** 错误码 */
    errorCode?: string;
    data?: UploadFileCommandResult;
    /** 执行成功 */
    success?: boolean;
    /** 错误信息 */
    msg?: any;
    /** 附加数据 */
    extras?: any;
    /** 时间戳 */
    timestamp?: number;
  }
  type GetAliyunOSSAcsQuery = Record<string, any>;
  interface GetAliyunOSSAcsQueryResult {
@@ -2031,6 +2137,12 @@
    isConfigured?: boolean;
  }
  interface GetLicenseOcrCommandResult {
    /** 地址 */
    url?: string;
    model?: BaiduOcrBusinessLicenseResultModel;
  }
  interface GetMenuQueryResult {
    /** Id */
    id?: string;
@@ -2318,6 +2430,8 @@
  }
  enum GetPersonalHireTaskInfosQueryStatus {
    /**待开始 */
    Wait = 1,
    /**进行中 */
    InProcess = 10,
    /**已完成 */
@@ -2610,8 +2724,10 @@
  }
  enum GetTaskInfoQueryResultHireButton {
    /**待开始 */
    Wait = 1,
    /**申请验收 */
    ApplyCheckReceive = 1,
    ApplyCheckReceive = 5,
    /**进行中 */
    InProcess = 10,
    /**已完成 */
@@ -2692,6 +2808,7 @@
    checkReceiveStatus?: EnumTaskCheckReceiveStatus;
    settlementStatus?: EnumTaskSettlementStatus;
    recommendStatus?: EnumTaskRecommendStatus;
    hireStatus?: EnumTaskUserHireStatus;
    /** 发布时间 */
    createdTime?: string;
  }
@@ -3021,6 +3138,7 @@
    workExperience?: string;
    /** 创建时间 */
    createdTime?: string;
    hireStatus?: EnumTaskUserHireStatus;
  }
  type GetUserResumeWorkExperienceQuery = Record<string, any>;
@@ -3360,15 +3478,6 @@
    resources?: GetRoleQueryResultResource[];
  }
  interface SaveScheduleJobDetailCommand {
    /** 资源Id */
    resourceId?: string;
    /** 请求数据 */
    body?: string;
    /** Cron表达式 */
    cron?: string;
  }
  interface SaveTaskInfoCommand {
    /** 任务名称 */
    name: string;
@@ -3591,6 +3700,87 @@
    files?: string[];
  }
  interface SyncEnterpriseUserCommand {
    dataSource?: EnumDataSource;
    /** 数据来源Id */
    dataSourceId?: string;
    /** 密码 */
    password?: string;
    /** 姓名 */
    name?: string;
    /** 用户名 */
    userName?: string;
    /** 手机号 */
    phoneNumber?: string;
    status?: EnumUserStatus;
    enterprise?: SyncEnterpriseUserCommandEnterprise;
  }
  interface SyncEnterpriseUserCommandEnterprise {
    /** 企业全称 */
    enterpriseName: string;
    /** 统一社会信用代码 */
    societyCreditCode: string;
    /** 营业执照照片 */
    licenseImage?: string;
    /** 法人姓名 */
    legalPerson?: string;
    /** 法人身份证号 */
    legalIdentity?: string;
    /** 所在省份编号 */
    provinceCode?: string;
    /** 所在城市编号 */
    cityCode?: string;
    /** 联系人 */
    contacts?: string;
    /** 联系电话 */
    contactPhoneNumber?: string;
    /** 联系邮箱 */
    contactEmail?: string;
    payAccess?: EnumPayAccess;
    /** 开户总行 */
    bankName?: string;
    /** 开户支行 */
    bankBranchName?: string;
    /** 银行账户 */
    bankCard?: string;
    /** 是否已校验银行账户 */
    isCheckedBankCard?: boolean;
    realAccess?: EnumRealAccess;
    /** 实名费用 */
    realVerifyCost?: number;
    /** 签约费用 */
    signCost?: number;
    /** 一口价 */
    mergeSignCost?: number;
    /** 是否实名 */
    isReal?: boolean;
    enterpriseAuth?: SyncEnterpriseUserCommandEnterpriseAuth;
  }
  interface SyncEnterpriseUserCommandEnterpriseAuth {
    enterpriseRealMethod?: EnumEnterpriseRealMethod;
    personalRealMethod?: EnumPersonalRealMethod;
    /** 法人或经办人姓名 */
    name?: string;
    /** 法人或经办人身份证号 */
    identity?: string;
    /** 法人或经办人身份证人像面 */
    identityImg?: string;
    /** 法人或经办人身份证国徽面 */
    identityBackImg?: string;
    /** 法人或经办人银行卡号 */
    bankCard?: string;
    /** 法人或经办人银行卡照片 */
    bankCardImg?: string;
    /** 法人或经办人手机号 */
    phoneNumber?: string;
    /** 是否委托经办人 */
    proxy?: boolean;
    /** 企业授权书 */
    proxyPowerAttorneyUrl?: string;
  }
  type SyncHumanResourcesAreaDictionaryDataCommand = Record<string, any>;
  interface UpdatePhoneNumberVerifyCodeCommand {
@@ -3598,6 +3788,11 @@
    phoneNumber: string;
  }
  interface UploadFileCommandResult {
    /** 地址 */
    url?: string;
  }
  interface WxmpLoginCommand {
    /** 用户登录凭证 */
    code: string;
packages/services/apiV2/user.ts
@@ -97,3 +97,18 @@
    ...(options || {}),
  });
}
/** 同步企业用户 POST /api/user/user/syncEnterpriseUser */
export async function syncEnterpriseUser(
  body: API.SyncEnterpriseUserCommand,
  options?: API.RequestConfig
) {
  return request<string>('/api/user/user/syncEnterpriseUser', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}