From d042bb3c5679375956c7616e6b1afe681fb82d9b Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 24 十二月 2025 16:12:02 +0800
Subject: [PATCH] fix: 甲方小程序

---
 apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue |  101 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 98 insertions(+), 3 deletions(-)

diff --git a/apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue b/apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue
index 1f5ba06..f41598b 100644
--- a/apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue
+++ b/apps/housekeepingMiniApp/src/subpackages/sercice/serciceDetail/serciceDetail.vue
@@ -2,14 +2,39 @@
   <PageLayoutWithBg class="mineHire-page-wrapper" :title="'鏈嶅姟鍚�'" :need-auth="false">
     <LoadingLayout :loading="isLoading" :error="isError" :loadError="refetch">
       <ContentScrollView style="background-color: transparent"> serciceDetail </ContentScrollView>
+      <PageFooter>
+        <!-- <PageFooterAction
+            :icon="IconShare"
+            text="鍒嗕韩"
+            :isFlex="false"
+            openType="share"
+          ></PageFooterAction>
+          <PageFooterAction
+            :icon="userResumeInfo.isCollected ? IconAttentionActive : IconAttention"
+            text="鏀惰棌"
+            :isFlex="false"
+            @click="handleAttention"
+          ></PageFooterAction> -->
+        <PageFooterBtn type="primary" @click="skuState.visible = true">棰勭害涓嬪崟</PageFooterBtn>
+        <PageFooterBtn type="primary" @click="pay">棰勭害涓嬪崟</PageFooterBtn>
+      </PageFooter>
+      <Sku
+        v-model:visible="skuState.visible"
+        :sku="skuState.sku"
+        v-model:goods="skuState.goods"
+        @clickBtnOperate="clickBtnOperate"
+      >
+      </Sku>
     </LoadingLayout>
   </PageLayoutWithBg>
 </template>
 
 <script setup lang="ts">
-import { useTaskInfo } from '@12333/hooks';
-import InnerPage from './InnerPage.vue';
+import { useStandardServiceDetail } from '@12333/hooks';
 import Taro from '@tarojs/taro';
+import * as standardOrderServices from '@12333/services/apiV2/standardOrder';
+import { toThousand, setOSSLink } from '@12333/utils';
+import { Sku, Goods, SkuItem } from '@12333/components';
 
 defineOptions({
   name: 'serciceDetail',
@@ -18,9 +43,79 @@
 const router = Taro.useRouter();
 const id = router.params?.id ?? '';
 
-const { isLoading, isError, detail, refetch } = useTaskInfo({
+const { isLoading, isError, detail, refetch } = useStandardServiceDetail({
   id,
+  onSuccess(res) {
+    skuState.sku = [
+      {
+        id: '1',
+        name: '瑙勬牸',
+        list: res.specs.map((item, index) => ({
+          id: item.id,
+          name: item.name,
+          active: index === 0,
+          disable: false,
+        })),
+      },
+    ];
+    skuState.goods = {
+      skuId: '1',
+      price: toThousand(res.specs[0].price),
+      imagePath: setOSSLink(res.files[0]),
+      name: res.name,
+    };
+  },
 });
+
+const skuState = reactive({
+  visible: false,
+  sku: [] as SkuItem[],
+  goods: {} as Goods,
+});
+
+// 搴曢儴鎿嶄綔鎸夐挳瑙﹀彂
+const clickBtnOperate = (op) => {
+  console.log('鐐瑰嚮浜嗘搷浣滄寜閽�', op);
+};
+
+async function addStandardOrder() {
+  try {
+    let params: API.AddStandardOrderCommand = {
+      serviceId: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
+      serviceName: 'string',
+      specId: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
+      specName: 'string',
+      specPrice: 0,
+      specNumber: 0,
+      addressId: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
+      beginTime: '2025-12-24T06:44:24.840Z',
+      endTime: '2025-12-24T06:44:24.840Z',
+      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) {}
+}
 </script>
 
 <style lang="scss">

--
Gitblit v1.10.0