zhengyiming
2 天以前 1d472eb06970c85b0edfb58871956bc2c8d69916
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';
@@ -150,8 +152,7 @@
// 底部操作按钮触发
const clickBtnOperate = (op: { type: string; value: number }) => {
  // addStandardOrder(op.value);
  Message.warning('支付系统维护中,请稍后预约');
  goAddStandardOrder(op.value);
};
const openSkuDialog = () => {
@@ -159,64 +160,12 @@
};
const goAddStandardOrder = useAccessLogin((specNumber: number) => {
  const spec = SkuUtils.getCurrentActiveSpec(skuState.sku);
  Taro.navigateTo({
    url: `${RouterPath.addStandardOrder}?specNumber=${specNumber}`,
    url: `${RouterPath.addStandardOrder}?specNumber=${specNumber}&specId=${spec.id}&id=${id}`,
  });
});
async function addStandardOrder(specNumber: number) {
  try {
    const spec = SkuUtils.getCurrentActiveSpec(skuState.sku);
    let params: API.AddStandardOrderCommand = {
      serviceId: detail.value.id,
      serviceName: detail.value.name,
      serviceCode: detail.value.code,
      specId: spec.id,
      specName: spec.name,
      specPrice: detail.value.specs.find((x) => x.id === spec.id)?.price ?? 0,
      specNumber: specNumber,
      addressId: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
      name: detail.value.name,
      contactPhoneNumber: 'string',
      provinceCode: 'string',
      provinceContent: 'string',
      cityCode: 'string',
      cityContent: 'string',
      areaCode: 'string',
      areaContent: 'string',
      addressName: 'string',
      addressDetail: 'string',
      longitude: 0,
      latitude: 0,
      beginTime: '2025-12-24T08:25:08.372Z',
      endTime: '2025-12-24T08:25:08.372Z',
      supplierEnterpriseId: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
      enterpriseEmployeeIds: ['3fa85f64-5717-4562-b3fc-2c963f66afa6'],
      remark: 'string',
      payAccess: 1,
    };
    let res = await standardOrderServices.addStandardOrder(params);
  } catch (error) {}
}
async function pay() {
  try {
    let params: API.PayStandardOrderCommand = {
      id: '9e919af2-3d33-4eac-f6dc-08de429676b3',
    };
    let res = await standardOrderServices.payStandardOrder(params);
    if (res) {
      Taro.requestPayment({
        timeStamp: res.timestamp,
        nonceStr: res.nonceStr,
        package: res.package,
        signType: res.signType as any,
        paySign: res.paySign,
      });
    }
  } catch (error) {}
}
async function handleAttention() {
  try {
    let params: API.CollectionStandardServiceCommand = {
@@ -236,12 +185,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;
    }
  }
@@ -262,6 +214,7 @@
          font-size: 48px;
          color: #ff6414;
          line-height: 52px;
          margin-right: 8px;
        }
        .serciceDetail-price-unit {