zhengyiming
昨天 4659ec0d8cf62f89f2d0edd2e169e4bcd022f0d1
fix: 甲方小程序
已修改12个文件
已重命名1个文件
已添加1个文件
600 ■■■■■ 文件已修改
apps/housekeepingMiniApp/project.private.config.json 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/src/components/Card/StandardServiceCard.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/src/pages/home/index.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/src/subpackages/mine/editAddress/InnerPage.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/src/subpackages/mine/mineCollectTask/mineCollectTask.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/Chunk/SquareView.vue 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/components/src/index.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/constants/apiEnum.ts 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/standardOrder.ts 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/standardService.ts 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/typings.d.ts 292 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
packages/services/apiV2/userWallet.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
apps/housekeepingMiniApp/project.private.config.json
@@ -23,6 +23,13 @@
        "miniprogram": {
            "list": [
                {
                    "name": "新增地址",
                    "pathName": "subpackages/mine/editAddress/editAddress",
                    "query": "id=53208c5d-a823-40d3-e79e-08de429af17b",
                    "scene": null,
                    "launchMode": "default"
                },
                {
                    "name": "服务详情",
                    "pathName": "subpackages/sercice/serciceDetail/serciceDetail",
                    "query": "id=53208c5d-a823-40d3-e79e-08de429af17b",
@@ -58,13 +65,6 @@
                    "scene": null
                },
                {
                    "name": "新增地址",
                    "pathName": "subpackages/mine/editAddress/editAddress",
                    "query": "",
                    "launchMode": "default",
                    "scene": null
                },
                {
                    "name": "地址管理",
                    "pathName": "subpackages/mine/addressManange/addressManange",
                    "query": "",
apps/housekeepingMiniApp/src/components/Card/StandardServiceCard.vue
ÎļþÃû´Ó apps/housekeepingMiniApp/src/pages/home/StandardServiceCard.vue ÐÞ¸Ä
@@ -1,6 +1,8 @@
<template>
  <div class="standard-service-card-wrapper">
    <img :src="setOSSLink(file)" class="standard-service-card-cover" />
    <SquareView>
      <img :src="setOSSLink(file)" class="standard-service-card-cover" />
    </SquareView>
    <div class="standard-service-card-content">
      <div class="standard-service-card-content-title">{{ name }}</div>
      <div class="standard-service-card-content-price-wrapper">
@@ -13,6 +15,7 @@
<script setup lang="ts">
import { setOSSLink } from '@12333/utils';
import { SquareView } from '@12333/components';
defineOptions({
  name: 'StandardServiceCard',
@@ -37,7 +40,7 @@
  border-radius: 12px;
  .standard-service-card-cover {
    height: 240px;
    height: 100%;
    border-radius: 12px;
    object-fit: cover;
    width: 100%;
apps/housekeepingMiniApp/src/pages/home/index.vue
@@ -25,13 +25,13 @@
            <div class="city-btn-text">{{ locationCity }}</div>
          </div>
        </div>
        <div class="home-banner-wrapper">
          <nut-swiper :auto-play="3000">
        <SquareView class="home-banner-wrapper" :width-power="2">
          <nut-swiper :auto-play="3000" class="home-banner-swiper">
            <nut-swiper-item v-for="(item, index) in advertisements" :key="item.id">
              <img :src="item.file" class="banner-img" draggable="false" />
            </nut-swiper-item>
          </nut-swiper>
        </div>
        </SquareView>
        <!-- <div class="home-recommend-wrapper">
          <div class="home-recommend-item">推荐</div>
          <div class="home-recommend-item">推荐</div>
@@ -86,7 +86,7 @@
import { setLocationCity } from '@/utils';
import _ from 'lodash';
import IconLogo from '@/assets/home/icon-logo.png';
import { TaskCard } from '@12333/components';
import { SquareView } from '@12333/components';
import IconLocaltion from '@/assets/task/icon-localtion.png';
import { useAllAreaList, useInfiniteLoading, useTaskList } from '@12333/hooks';
import { useAccessLogin } from '@/hooks';
@@ -94,7 +94,6 @@
import { setOSSLink, trim } from '@12333/utils';
import * as standardServiceServices from '@12333/services/apiV2/standardService';
import { EnumPagedListOrder, EnumStandardServiceReleaseStatus } from '@12333/constants';
import StandardServiceCard from './StandardServiceCard.vue';
const { locationCity } = useUser();
@@ -122,12 +121,12 @@
      keywords: queryState.keywords,
    };
    return standardServiceServices.getStandardServices(params, {
    return standardServiceServices.getOpenStandardServices(params, {
      showLoading: false,
    });
  },
  {
    queryKey: ['standardServiceServices/getStandardServices', queryState],
    queryKey: ['standardServiceServices/getOpenStandardServices', queryState],
  }
);
@@ -213,10 +212,16 @@
  .home-banner-wrapper {
    margin-bottom: 20px;
    .home-banner-swiper {
      width: 100%;
      height: 100%;
    }
    .banner-img {
      width: 100%;
      height: 260px;
      height: 100%;
      object-fit: cover;
      object-position: center top;
    }
  }
apps/housekeepingMiniApp/src/subpackages/mine/editAddress/InnerPage.vue
@@ -113,6 +113,7 @@
      countyCode: data.areaCode,
      latitude: data.latitude,
      longitude: data.longitude,
      address: data.addressName,
    };
    form.addressDetail = data.addressDetail;
    form.isDefault = data.isDefault;
apps/housekeepingMiniApp/src/subpackages/mine/mineCollectTask/InnerPage.vue
@@ -1,10 +1,10 @@
<template>
  <InfiniteLoading
    scrollViewClassName="common-infinite-scroll-list home-list"
    scrollViewClassName="common-page-infinite-scroll-list"
    v-bind="infiniteLoadingProps"
  >
    <div class="mineCollectTask-service-list">
      <TaskCard
      <StandardServiceCard
        v-for="item in infiniteLoadingProps.flattenListData"
        :key="item.id"
        @click="goSerciceDetail(item)"
@@ -16,36 +16,45 @@
</template>
<script setup lang="ts">
import { TaskCard } from '@12333/components';
import * as taskServices from '@12333/services/apiV2/task';
import * as taskUserServices from '@12333/services/apiV2/taskUser';
import { useInfiniteLoading, useTaskList } from '@12333/hooks';
import Taro from '@tarojs/taro';
import { EnumPagedListOrder, EnumStandardServiceReleaseStatus } from '@12333/constants';
import * as standardServiceServices from '@12333/services/apiV2/standardService';
defineOptions({
  name: 'InnerPage',
});
const queryState = reactive({
  releaseStatus: EnumStandardServiceReleaseStatus.InProcess,
  isCollected: true,
});
const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
  ({ pageParam }) => {
    let params: API.GetTaskInfosQuery = {
    let params: API.GetStandardServicesQuery = {
      pageModel: {
        rows: 20,
        page: pageParam,
        orderInput: [
          { property: 'createdTime', order: EnumPagedListOrder.Desc },
          { property: 'recommendStatus', order: EnumPagedListOrder.Desc },
        ],
      },
      isCollected: true,
      releaseStatus: queryState.releaseStatus,
      isCollected: queryState.isCollected,
    };
    return taskServices.getOpenTaskInfos(params, {
    return standardServiceServices.getOpenStandardServices(params, {
      showLoading: false,
    });
  },
  {
    queryKey: ['taskServices/getOpenTaskInfos'],
    queryKey: ['standardServiceServices/getOpenStandardServices', queryState],
  }
);
function goSerciceDetail(item: any) {
function goSerciceDetail(item: API.GetStandardServicesQueryResultItem) {
  Taro.navigateTo({
    url: `${RouterPath.serciceDetail}?id=${item.id}`,
  });
apps/housekeepingMiniApp/src/subpackages/mine/mineCollectTask/mineCollectTask.vue
@@ -1,7 +1,7 @@
<template>
  <PageLayoutWithBg class="mineCollectTask-page-wrapper" :title="'我收藏的任务'">
  <PageLayout class="mineCollectTask-page-wrapper" :title="'我收藏的任务'">
    <InnerPage></InnerPage>
  </PageLayoutWithBg>
  </PageLayout>
</template>
<script setup lang="ts">
apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue
@@ -10,24 +10,25 @@
        scrollViewClassName="common-infinite-scroll-list-no-padding"
      >
        <div class="serciceDetail-top-view">
          <nut-swiper
            :auto-play="3000"
            v-if="detail?.files?.length > 0"
            class="serciceDetail-swiper"
          >
            <nut-swiper-item
              v-for="(item, index) in detail.files"
              :key="item"
              class="serciceDetail-swiper-item"
          <SquareView>
            <nut-swiper
              :auto-play="3000"
              v-if="detail?.files?.length > 0"
              class="serciceDetail-swiper"
            >
              <img
                :src="setOSSLink(item)"
                class="serciceDetail-swiper-item-img"
                draggable="false"
              />
            </nut-swiper-item>
          </nut-swiper>
              <nut-swiper-item
                v-for="(item, index) in detail.files"
                :key="item"
                class="serciceDetail-swiper-item"
              >
                <img
                  :src="setOSSLink(item)"
                  class="serciceDetail-swiper-item-img"
                  draggable="false"
                />
              </nut-swiper-item>
            </nut-swiper>
          </SquareView>
          <div class="serciceDetail-top-view-title-wrapper">
            <div class="serciceDetail-price-wrapper">
              <div class="serciceDetail-price">{{ toThousand(minPrice) }}</div>
@@ -102,6 +103,7 @@
  ListItem,
  ProTabs,
  ProTabPane,
  SquareView,
} from '@12333/components';
import { useAccessLogin } from '@/hooks';
import IconShare from '@/assets/flexJob/icon-share.png';
@@ -236,12 +238,15 @@
.serciceDetail-page-wrapper {
  .serciceDetail-swiper {
    height: 640px;
    width: 100%;
    height: 100%;
    .serciceDetail-swiper-item-img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      /* å¯é€‰ï¼šè°ƒæ•´å›¾ç‰‡è£å‰ªçš„对齐方式(默认居中) */
      object-position: center center;
    }
  }
packages/components/src/Chunk/SquareView.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
<template>
  <div class="square-view" :style="{ paddingTop: pTopRate }">
    <div class="square-view-inner">
      <slot></slot>
    </div>
  </div>
</template>
<script setup lang="ts">
import { computed } from 'vue';
defineOptions({
  name: 'SquareView',
});
type Props = {
  widthPower?: number;
  heightPower?: number;
};
const props = withDefaults(defineProps<Props>(), {
  widthPower: 1,
  heightPower: 1,
});
const pTopRate = computed(() => {
  return `${(props.heightPower / props.widthPower) * 100}%`;
});
</script>
<style lang="scss">
@import '@/styles/common.scss';
.square-view {
  position: relative;
  .square-view-inner {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
}
</style>
packages/components/src/index.ts
@@ -54,3 +54,4 @@
export { default as ChunkTitle } from './Chunk/ChunkTitle.vue';
export { default as Sku } from './Sku/Sku.vue';
export * from './Sku/sku';
export { default as SquareView } from './Chunk/SquareView.vue';
packages/constants/apiEnum.ts
@@ -825,6 +825,8 @@
export enum EnumUserWalletTransactionType {
  /**支付 */
  Payment = 1,
  /**退款 */
  Refund = 2,
  /**收入 */
  Income = 10,
  /**提现 */
packages/services/apiV2/standardOrder.ts
@@ -17,7 +17,7 @@
  });
}
/** æ ‡å‡†è®¢å•取消 POST /api/flexjob/standardOrder/cancelStandardOrderAppointment */
/** æ ‡å‡†è®¢å•取消预约 POST /api/flexjob/standardOrder/cancelStandardOrderAppointment */
export async function cancelStandardOrderAppointment(
  body: API.CancelStandardOrderAppointmentCommand,
  options?: API.RequestConfig
@@ -32,6 +32,24 @@
  });
}
/** æ ‡å‡†è®¢å•校验支付结果 POST /api/flexjob/standardOrder/checkPayStandardOrder */
export async function checkPayStandardOrder(
  body: API.CheckPayStandardOrderCommand,
  options?: API.RequestConfig
) {
  return request<API.CheckPayStandardOrderCommandResult>(
    '/api/flexjob/standardOrder/checkPayStandardOrder',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•详情 GET /api/flexjob/standardOrder/getStandardOrder */
export async function getStandardOrder(
  // å åŠ ç”Ÿæˆçš„Param类型 (非body参数swagger默认没有生成对象)
@@ -98,24 +116,6 @@
  });
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•服务人员分页列表 POST /api/flexjob/standardOrder/getStandardOrderServers */
export async function getStandardOrderServers(
  body: API.GetStandardOrderServersQuery,
  options?: API.RequestConfig
) {
  return request<API.GetStandardOrderServersQueryResult>(
    '/api/flexjob/standardOrder/getStandardOrderServers',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•结算分页列表 POST /api/flexjob/standardOrder/getStandardOrderSettlements */
export async function getStandardOrderSettlements(
  body: API.GetStandardOrderSettlementsQuery,
@@ -134,24 +134,6 @@
  );
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•供应商分页列表 POST /api/flexjob/standardOrder/getStandardOrderSupplierEnterprises */
export async function getStandardOrderSupplierEnterprises(
  body: API.GetStandardOrderSupplierEnterprisesQuery,
  options?: API.RequestConfig
) {
  return request<API.GetStandardOrderSupplierEnterprisesQueryResult>(
    '/api/flexjob/standardOrder/getStandardOrderSupplierEnterprises',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** æ ‡å‡†è®¢å•支付 POST /api/flexjob/standardOrder/payStandardOrder */
export async function payStandardOrder(
  body: API.PayStandardOrderCommand,
packages/services/apiV2/standardService.ts
@@ -17,6 +17,42 @@
  });
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•服务详情 GET /api/flexjob/standardService/getOpenStandardService */
export async function getOpenStandardService(
  // å åŠ ç”Ÿæˆçš„Param类型 (非body参数swagger默认没有生成对象)
  params: API.APIgetOpenStandardServiceParams,
  options?: API.RequestConfig
) {
  return request<API.GetStandardServiceQueryResult>(
    '/api/flexjob/standardService/getOpenStandardService',
    {
      method: 'GET',
      params: {
        ...params,
      },
      ...(options || {}),
    }
  );
}
/** æŸ¥è¯¢å¼€æ”¾æ ‡å‡†è®¢å•服务分页列表 POST /api/flexjob/standardService/getOpenStandardServices */
export async function getOpenStandardServices(
  body: API.GetOpenStandardServicesQuery,
  options?: API.RequestConfig
) {
  return request<API.GetStandardServicesQueryResult>(
    '/api/flexjob/standardService/getOpenStandardServices',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•服务详情 GET /api/flexjob/standardService/getStandardService */
export async function getStandardService(
  // å åŠ ç”Ÿæˆçš„Param类型 (非body参数swagger默认没有生成对象)
@@ -71,6 +107,42 @@
  );
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•服务人员分页列表 POST /api/flexjob/standardService/getStandardServiceServers */
export async function getStandardServiceServers(
  body: API.GetStandardServiceServersQuery,
  options?: API.RequestConfig
) {
  return request<API.GetStandardServiceServersQueryResult>(
    '/api/flexjob/standardService/getStandardServiceServers',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** æŸ¥è¯¢æ ‡å‡†è®¢å•服务供应商分页列表 POST /api/flexjob/standardService/getStandardServiceSupplierEnterprises */
export async function getStandardServiceSupplierEnterprises(
  body: API.GetStandardServiceSupplierEnterprisesQuery,
  options?: API.RequestConfig
) {
  return request<API.GetStandardServiceSupplierEnterprisesQueryResult>(
    '/api/flexjob/standardService/getStandardServiceSupplierEnterprises',
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json-patch+json',
      },
      data: body,
      ...(options || {}),
    }
  );
}
/** ä¿å­˜æ ‡å‡†è®¢å•服务 POST /api/flexjob/standardService/saveStandardService */
export async function saveStandardService(
  body: API.SaveStandardServiceCommand,
packages/services/apiV2/typings.d.ts
@@ -314,6 +314,11 @@
    roleId?: string;
  }
  interface APIgetOpenStandardServiceParams {
    /** Id */
    id?: string;
  }
  interface APIgetPartyAEnterpriseParams {
    /** åˆä½œId */
    id?: string;
@@ -718,6 +723,15 @@
    operatorToken?: string;
  }
  interface CheckPayStandardOrderCommand {
    /** è®¢å•Id */
    id?: string;
  }
  interface CheckPayStandardOrderCommandResult {
    payStatus?: EnumStandardOrderPayStatus;
  }
  interface CheckReceiveTaskCommand {
    /** æäº¤Id */
    id?: string;
@@ -1674,6 +1688,8 @@
  enum EnumUserWalletTransactionType {
    /**支付 */
    Payment = 1,
    /**退款 */
    Refund = 2,
    /**收入 */
    Income = 10,
    /**提现 */
@@ -2004,6 +2020,24 @@
    timestamp?: number;
  }
  interface FriendlyResultCheckPayStandardOrderCommandResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
    /** çŠ¶æ€ç  */
    code?: number;
    /** é”™è¯¯ç  */
    errorCode?: string;
    data?: CheckPayStandardOrderCommandResult;
    /** æ‰§è¡ŒæˆåŠŸ */
    success?: boolean;
    /** é”™è¯¯ä¿¡æ¯ */
    msg?: any;
    /** é™„加数据 */
    extras?: any;
    /** æ—¶é—´æˆ³ */
    timestamp?: number;
  }
  interface FriendlyResultEnterpriseUserElectronSignCommandResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
@@ -3319,24 +3353,6 @@
    timestamp?: number;
  }
  interface FriendlyResultGetStandardOrderServersQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
    /** çŠ¶æ€ç  */
    code?: number;
    /** é”™è¯¯ç  */
    errorCode?: string;
    data?: GetStandardOrderServersQueryResult;
    /** æ‰§è¡ŒæˆåŠŸ */
    success?: boolean;
    /** é”™è¯¯ä¿¡æ¯ */
    msg?: any;
    /** é™„加数据 */
    extras?: any;
    /** æ—¶é—´æˆ³ */
    timestamp?: number;
  }
  interface FriendlyResultGetStandardOrderSettlementsQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
@@ -3373,24 +3389,6 @@
    timestamp?: number;
  }
  interface FriendlyResultGetStandardOrderSupplierEnterprisesQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
    /** çŠ¶æ€ç  */
    code?: number;
    /** é”™è¯¯ç  */
    errorCode?: string;
    data?: GetStandardOrderSupplierEnterprisesQueryResult;
    /** æ‰§è¡ŒæˆåŠŸ */
    success?: boolean;
    /** é”™è¯¯ä¿¡æ¯ */
    msg?: any;
    /** é™„加数据 */
    extras?: any;
    /** æ—¶é—´æˆ³ */
    timestamp?: number;
  }
  interface FriendlyResultGetStandardServiceCommentsQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
@@ -3427,6 +3425,24 @@
    timestamp?: number;
  }
  interface FriendlyResultGetStandardServiceServersQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
    /** çŠ¶æ€ç  */
    code?: number;
    /** é”™è¯¯ç  */
    errorCode?: string;
    data?: GetStandardServiceServersQueryResult;
    /** æ‰§è¡ŒæˆåŠŸ */
    success?: boolean;
    /** é”™è¯¯ä¿¡æ¯ */
    msg?: any;
    /** é™„加数据 */
    extras?: any;
    /** æ—¶é—´æˆ³ */
    timestamp?: number;
  }
  interface FriendlyResultGetStandardServicesQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
@@ -3445,6 +3461,24 @@
    timestamp?: number;
  }
  interface FriendlyResultGetStandardServiceSupplierEnterprisesQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
    /** çŠ¶æ€ç  */
    code?: number;
    /** é”™è¯¯ç  */
    errorCode?: string;
    data?: GetStandardServiceSupplierEnterprisesQueryResult;
    /** æ‰§è¡ŒæˆåŠŸ */
    success?: boolean;
    /** é”™è¯¯ä¿¡æ¯ */
    msg?: any;
    /** é™„加数据 */
    extras?: any;
    /** æ—¶é—´æˆ³ */
    timestamp?: number;
  }
  interface FriendlyResultGetTaskEnterpriseQueryResult {
    /** è·Ÿè¸ªId */
    traceId?: string;
@@ -6610,6 +6644,22 @@
    remark?: string;
  }
  interface GetOpenStandardServicesQuery {
    /** å…³é”®å­—(服务名/Id) */
    keywords?: string;
    /** å²—位编号 */
    jobCode?: string;
    /** åˆ›å»ºæ—¶é—´-起始 */
    createdTimeBegin?: string;
    /** åˆ›å»ºæ—¶é—´-截止 */
    createdTimeEnd?: string;
    releaseStatus?: EnumStandardServiceReleaseStatus;
    recommendStatus?: EnumStandardServiceRecommendStatus;
    /** æ˜¯å¦æ”¶è— */
    isCollected?: boolean;
    pageModel?: PagedListQueryPageModel;
  }
  interface GetOpenTaskInfosQuery {
    /** å…³é”®å­—(任务名称) */
    keywords?: string;
@@ -8004,47 +8054,6 @@
    settlementAmount?: number;
  }
  interface GetStandardOrderServersQuery {
    /** è®¢å•Id */
    orderId?: string;
    pageModel?: PagedListQueryPageModel;
  }
  interface GetStandardOrderServersQueryResult {
    pageModel?: PagedListQueryResultPageModel;
    /** æ•°æ® */
    data?: GetStandardOrderServersQueryResultItem[];
  }
  interface GetStandardOrderServersQueryResultItem {
    /** Id */
    id?: string;
    /** å¤´åƒ */
    avatar?: string;
    /** å§“名 */
    name?: string;
    gender?: EnumUserGender;
    /** æ˜¯å¦å®žå */
    isReal?: boolean;
    realMethod?: EnumUserRealMethod;
    /** å¹´é¾„ */
    age?: number;
    /** èº«ä»½ç¼–号 */
    personalIdentityCode?: string;
    /** èº«ä»½ */
    personalIdentityContent?: string;
    /** å­¦åŽ†ç¼–å· */
    educationalBackgroundCode?: string;
    /** å­¦åކ */
    educationalBackgroundContent?: string;
    /** ä¸Šå²—次数 */
    taskCount?: number;
    /** å·¥ä½œèµ„历 */
    workSeniority?: string;
    /** å·¥ä½œç»éªŒ */
    workExperience?: string;
  }
  interface GetStandardOrderSettlementsQuery {
    /** å…³é”®å­—(订单号/服务名/供应商) */
    keywords?: string;
@@ -8150,33 +8159,6 @@
    settlementAmount?: number;
  }
  interface GetStandardOrderSupplierEnterprisesQuery {
    /** è®¢å•Id */
    orderId?: string;
    pageModel?: PagedListQueryPageModel;
  }
  interface GetStandardOrderSupplierEnterprisesQueryResult {
    pageModel?: PagedListQueryResultPageModel;
    /** æ•°æ® */
    data?: GetStandardOrderSupplierEnterprisesQueryResultItem[];
  }
  interface GetStandardOrderSupplierEnterprisesQueryResultItem {
    /** Id */
    id?: string;
    /** å¤´åƒ */
    avatar?: string;
    /** ä¼ä¸šå…¨ç§° */
    enterpriseName?: string;
    /** æœåŠ¡äººå‘˜ */
    serverCount?: number;
    /** æœåŠ¡äººæ¬¡ */
    serviceCount?: number;
    /** ç»è¥èŒƒå›´ */
    mainBusiness?: string;
  }
  interface GetStandardServiceCommentsQuery {
    pageModel?: PagedListQueryPageModel;
  }
@@ -8261,6 +8243,51 @@
    cityContent?: string;
  }
  interface GetStandardServiceServersQuery {
    /** ä¾›åº”商Id */
    supplierEnterpriseId?: string;
    /** æœåŠ¡èµ·å§‹æ—¶é—´ */
    beginTime?: string;
    /** æœåŠ¡æˆªæ­¢æ—¶é—´ */
    endTime?: string;
    pageModel?: PagedListQueryPageModel;
  }
  interface GetStandardServiceServersQueryResult {
    pageModel?: PagedListQueryResultPageModel;
    /** æ•°æ® */
    data?: GetStandardServiceServersQueryResultItem[];
  }
  interface GetStandardServiceServersQueryResultItem {
    /** Id */
    id?: string;
    /** å¤´åƒ */
    avatar?: string;
    /** å§“名 */
    name?: string;
    gender?: EnumUserGender;
    /** æ˜¯å¦å®žå */
    isReal?: boolean;
    realMethod?: EnumUserRealMethod;
    /** å¹´é¾„ */
    age?: number;
    /** èº«ä»½ç¼–号 */
    personalIdentityCode?: string;
    /** èº«ä»½ */
    personalIdentityContent?: string;
    /** å­¦åŽ†ç¼–å· */
    educationalBackgroundCode?: string;
    /** å­¦åކ */
    educationalBackgroundContent?: string;
    /** ä¸Šå²—次数 */
    taskCount?: number;
    /** å·¥ä½œèµ„历 */
    workSeniority?: string;
    /** å·¥ä½œç»éªŒ */
    workExperience?: string;
  }
  interface GetStandardServicesQuery {
    /** å…³é”®å­—(服务名/Id) */
    keywords?: string;
@@ -8308,6 +8335,33 @@
    supplierCount?: number;
  }
  interface GetStandardServiceSupplierEnterprisesQuery {
    /** æœåŠ¡Id */
    serviceId?: string;
    pageModel?: PagedListQueryPageModel;
  }
  interface GetStandardServiceSupplierEnterprisesQueryResult {
    pageModel?: PagedListQueryResultPageModel;
    /** æ•°æ® */
    data?: GetStandardServiceSupplierEnterprisesQueryResultItem[];
  }
  interface GetStandardServiceSupplierEnterprisesQueryResultItem {
    /** Id */
    id?: string;
    /** å¤´åƒ */
    avatar?: string;
    /** ä¼ä¸šå…¨ç§° */
    enterpriseName?: string;
    /** æœåŠ¡äººå‘˜ */
    serverCount?: number;
    /** æœåŠ¡äººæ¬¡ */
    serviceCount?: number;
    /** ç»è¥èŒƒå›´ */
    mainBusiness?: string;
  }
  type GetSupplierEnterpriseSelectQuery = Record<string, any>;
  interface GetSupplierEnterpriseSelectQueryOption {
@@ -11426,6 +11480,36 @@
    reject_reason: string;
  }
  interface WeChatPayTransactionsJsApiNotifyCommand {
    /** é€šçŸ¥ID,回调通知的唯一编号 */
    id?: string;
    /** é€šçŸ¥åˆ›å»ºæ—¶é—´
1、定义:本次回调通知创建的时间
2、格式:遵循rfc3339标准格式:yyyy-MM-DDTHH:mm:ss+TIMEZONE(示例:2015-05-20T13:29:35+08:00 è¡¨ç¤ºåŒ—京时间2015å¹´5月20日13点29分35秒) */
    create_time?: string;
    /** é€šçŸ¥çš„类型,微信支付回调通知的类型
支付成功通知的类型为TRANSACTION.SUCCESS */
    event_type?: string;
    /** é€šçŸ¥æ•°æ®ç±»åž‹ï¼Œé€šçŸ¥çš„资源数据类型,固定为encrypt-resource */
    resource_type?: string;
    resource?: WeChatPayTransactionsJsApiNotifyCommandResource;
    /** å›žè°ƒæ‘˜è¦ï¼Œå¾®ä¿¡æ”¯ä»˜å¯¹å›žè°ƒå†…容的摘要备注 */
    summary?: string;
  }
  interface WeChatPayTransactionsJsApiNotifyCommandResource {
    /** åŠ å¯†ç®—æ³•ç±»åž‹ï¼Œå›žè°ƒæ•°æ®å¯†æ–‡çš„åŠ å¯†ç®—æ³•ç±»åž‹ï¼Œç›®å‰ä¸ºAEAD_AES_256_GCM,开发者需要使用同样类型的数据进行解密 */
    algorithm?: string;
    /** æ•°æ®å¯†æ–‡ï¼ŒBase64编码后的回调数据密文,服务商需Base64解码并使用APIV3密钥解密,具体参考如何解密证书和回调报文 */
    ciphertext?: string;
    /** é™„加数据,参与解密的附加数据,该字段可能为空 */
    associated_data?: string;
    /** åŽŸå§‹å›žè°ƒç±»åž‹ï¼ŒåŠ å¯†å‰çš„å¯¹è±¡ç±»åž‹ï¼Œä¸ºtransaction */
    original_type?: string;
    /** éšæœºä¸²ï¼Œå‚与解密的随机串 */
    nonce?: string;
  }
  interface WxmpLoginCommand {
    /** ç”¨æˆ·ç™»å½•凭证 */
    code: string;
packages/services/apiV2/userWallet.ts
@@ -16,3 +16,18 @@
    ...(options || {}),
  });
}
/** å¾®ä¿¡JS支付通知 POST /api/user/userWallet/weChatPayTransactionsJsApiNotify */
export async function weChatPayTransactionsJsApiNotify(
  body: API.WeChatPayTransactionsJsApiNotifyCommand,
  options?: API.RequestConfig
) {
  return request<boolean>('/api/user/userWallet/weChatPayTransactionsJsApiNotify', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json-patch+json',
    },
    data: body,
    ...(options || {}),
  });
}