From 02193ae203da515afd55bd9d9e1215abbbf8315b Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 27 十月 2025 15:35:00 +0800
Subject: [PATCH] fix: bug

---
 apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue       |    6 
 apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue |    1 
 apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue                |    2 
 apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue                  |  229 +++++++++++++++++++++++++++
 apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue         |    1 
 packages/services/apiV2/taskCheckReceive.ts                                       |   18 ++
 packages/components/src/index.ts                                                  |    1 
 apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue             |    1 
 packages/services/apiV2/typings.d.ts                                              |   64 ++++++++
 packages/components/src/Form/PayrollForm.vue                                      |  132 ++++++++++++++++
 10 files changed, 448 insertions(+), 7 deletions(-)

diff --git a/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue b/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue
index bd4882c..5626b31 100644
--- a/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue
+++ b/apps/bMiniApp/src/components/JobDetailContent/JobDetailContent.vue
@@ -48,6 +48,7 @@
           :photos="photos"
           :height="height"
           :weight="weight"
+          :shoeSize="shoeSize"
           :videos="videos"
         />
       </ProTabPane>
@@ -99,6 +100,7 @@
   height?: number;
   /** 浣撻噸 */
   weight?: number;
+  shoeSize?: number;
 
   taskInfoUsers?: API.GetUserResumeQueryResultExperience[];
 };
diff --git a/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue b/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue
index cc5a2dc..2736931 100644
--- a/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue
+++ b/apps/bMiniApp/src/components/JobDetailContent/components/curriculumView.vue
@@ -51,6 +51,11 @@
           :text="weight && `${weight} kg`"
           :label-width="labelWidth"
         ></CurriculumViewItem>
+        <CurriculumViewItem
+          label="闉嬬爜锛�"
+          :text="shoeSize && `${shoeSize} kg`"
+          :label-width="labelWidth"
+        ></CurriculumViewItem>
         <CurriculumViewItem label="涓汉鐓х墖锛�">
           <nut-grid
             square
@@ -113,6 +118,7 @@
   height?: number;
   /** 浣撻噸 */
   weight?: number;
+  shoeSize?: number;
 };
 
 const props = withDefaults(defineProps<Props>(), {
diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue
index 4774ccc..5f0766f 100644
--- a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue
+++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue
@@ -22,6 +22,7 @@
         :photos="userResumeInfo.photos"
         :height="userResumeInfo.height"
         :weight="userResumeInfo.weight"
+        :shoeSize="userResumeInfo.shoeSize"
         :videos="userResumeInfo.videos"
         :taskInfoUsers="userResumeInfo.taskInfoUsers"
       >
diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue
index 5e4c702..0f06f1f 100644
--- a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetailFromTask/InnerPage.vue
@@ -20,6 +20,7 @@
       :photos="userResumeInfo.photos"
       :height="userResumeInfo.height"
       :weight="userResumeInfo.weight"
+      :shoeSize="userResumeInfo.shoeSize"
       :videos="userResumeInfo.videos"
       :taskInfoUsers="userResumeInfo.taskInfoUsers"
       :isCollapse="true"
diff --git a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue
index 41939b6..40702b5 100644
--- a/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/flexJobManage/flexJobDetailFromManage/InnerPage.vue
@@ -20,6 +20,7 @@
       :photos="userResumeInfo.photos"
       :height="userResumeInfo.height"
       :weight="userResumeInfo.weight"
+      :shoeSize="userResumeInfo.shoeSize"
       :videos="userResumeInfo.videos"
       :taskInfoUsers="userResumeInfo.taskInfoUsers"
       :isCollapse="true"
diff --git a/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
index 77591a8..ed9b683 100644
--- a/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/task/taskCheckDetail/InnerPage.vue
@@ -26,10 +26,113 @@
           :checkReceiveMethod="detail?.checkReceiveMethod"
           :submitCheckReceiveStatus="item.submitCheckReceiveStatus"
           @checkReceive="goTaskDetail(item)"
-          @checkInOrOut="(ev) => checkReceiveTask(ev, item.id)"
+          @checkInOrOut="(ev) => checkReceiveTask(ev, item)"
         />
       </template>
     </InfiniteLoading>
+    <nut-popup v-model:visible="dialogVisible">
+      <div class="payroll-form-wrapper">
+        <nut-form :model-value="form" ref="formRef">
+          <nut-form-item
+            label="鏈嶅姟璐�:"
+            class="bole-form-item"
+            prop="serviceFee"
+            label-width="90px"
+          >
+            <div class="bole-form-input-wrapper">
+              <NumberInput
+                v-model.trim="form.serviceFee"
+                class="nut-input-text bole-input-text"
+                placeholder="璇疯緭鍏ユ湇鍔¤垂"
+                :min="0"
+                :max="999999999999"
+                :precision="2"
+                type="text"
+                disabled
+              />
+              <div class="form-input-unit">鍏�</div>
+            </div>
+          </nut-form-item>
+          <nut-form-item
+            label="瓒呮椂:"
+            class="bole-form-item"
+            prop="timeoutHours"
+            label-width="90px"
+          >
+            <div class="bole-form-input-wrapper">
+              <NumberInput
+                v-model.trim="form.timeoutHours"
+                class="nut-input-text bole-input-text"
+                placeholder="璇疯緭鍏ヨ秴鏃舵椂闀�"
+                :min="0"
+                :max="999999999999"
+                :precision="2"
+                type="text"
+                disabled
+              />
+              <div class="form-input-unit">灏忔椂</div>
+            </div>
+          </nut-form-item>
+          <nut-form-item
+            label="瓒呮椂璐圭敤:"
+            class="bole-form-item"
+            prop="timeoutFee"
+            label-width="90px"
+          >
+            <div class="bole-form-input-wrapper">
+              <NumberInput
+                v-model.trim="form.timeoutFee"
+                class="nut-input-text bole-input-text"
+                placeholder="璇疯緭鍏ヨ秴鏃惰垂鐢�"
+                :min="0"
+                :max="999999999999"
+                :precision="2"
+                type="text"
+              />
+              <div class="form-input-unit">鍏�</div>
+            </div>
+          </nut-form-item>
+          <nut-form-item
+            label="鍏朵粬璐圭敤:"
+            class="bole-form-item"
+            prop="otherFee"
+            label-width="90px"
+          >
+            <div class="bole-form-input-wrapper">
+              <NumberInput
+                v-model.trim="form.otherFee"
+                class="nut-input-text bole-input-text"
+                placeholder="璇疯緭鍏ュ叾浠栬垂鐢�"
+                :max="999999999999"
+                :precision="2"
+                type="text"
+              />
+              <div class="form-input-unit">鍏�</div>
+            </div>
+          </nut-form-item>
+          <nut-form-item
+            label="缁撶畻閲戦:"
+            class="bole-form-item"
+            prop="settlementAmount"
+            label-width="90px"
+          >
+            {{ `${settlementAmount}鍏僠 }}
+          </nut-form-item>
+          <nut-form-item
+            label="澶囨敞:"
+            class="bole-form-item alignTop"
+            prop="remark"
+            label-width="90px"
+          >
+            <nut-textarea v-model="form.remark" rows="4" placeholder="璇疯緭鍏ュ娉�"> </nut-textarea>
+          </nut-form-item>
+        </nut-form>
+        <div class="payroll-form-footer">
+          <nut-button @click="handleCancel">鍙栨秷</nut-button>
+          <nut-button type="primary" @click="handleConfirm">纭</nut-button>
+        </div>
+      </div>
+    </nut-popup>
   </LoadingLayout>
 </template>
 
@@ -38,7 +141,7 @@
 import * as taskCheckReceiveServices from '@12333/services/apiV2/taskCheckReceive';
 import { useInfiniteLoading } from '@12333/hooks';
 import TaskCheckCard from '../components/TaskCheckCard.vue';
-import { MyTaskCard } from '@12333/components';
+import { MyTaskCard, NumberInput } from '@12333/components';
 import {
   EnumTaskCheckReceiveMethod,
   EnumTaskCheckReceiveStatus,
@@ -46,7 +149,6 @@
 } from '@12333/constants';
 import { Message, setOSSLink } from '@12333/utils';
 import dayjs from 'dayjs';
-import { CheckInOrOutEventEnum } from '../constants';
 
 defineOptions({
   name: 'InnerPage',
@@ -56,6 +158,21 @@
 const id = router.params?.id ?? '';
 const date = router.params?.date ?? '';
 const checkReceiveStatus = Number(router.params?.checkReceiveStatus);
+
+const dialogVisible = ref(false);
+
+const form = reactive({
+  serviceFee: 0,
+  timeoutHours: 0,
+  timeoutFee: 0,
+  otherFee: 0,
+  remark: '',
+  timeoutServiceFee: 0,
+
+  taskInfoId: '',
+  checkInTime: '',
+  checkoutTime: '',
+});
 
 const detail = ref<API.GetCheckReceiveTasksQueryResultItem>();
 
@@ -82,6 +199,70 @@
   }
 );
 
+const settlementAmount = computed(() => sumSettlementAmount());
+
+function sumSettlementAmount() {
+  return (
+    getFeeValue(Number(form.timeoutFee ?? 0)) +
+    getFeeValue(Number(form.serviceFee ?? 0)) +
+    getFeeValue(Number(form.otherFee ?? 0))
+  );
+}
+
+function getFeeValue(val: number) {
+  return val || 0;
+}
+
+async function openDialog(item: API.GetCheckReceiveTaskQueryResultItem) {
+  let res = await calcTaskCheckReceive(item);
+  if (res) {
+    dialogVisible.value = true;
+    form.taskInfoId = item.id;
+    form.serviceFee = res.serviceFee;
+    form.timeoutHours = res.timeoutHours;
+    form.timeoutFee = res.timeoutFee;
+    form.otherFee = 0;
+    form.remark = '';
+  }
+}
+
+function handleCancel() {
+  dialogVisible.value = false;
+}
+
+async function handleConfirm() {
+  try {
+    let params: API.CheckReceiveTaskCommand = {
+      taskInfoUserId: form.taskInfoId,
+      date: dayjs(date).format('YYYY-MM-DD'),
+      checkOutTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
+      checkReceiveStatus: EnumTaskUserSubmitCheckReceiveStatus.Success,
+      serviceFee: form.serviceFee,
+      timeoutHours: form.timeoutHours,
+      timeoutFee: form.timeoutFee,
+      otherFee: form.otherFee,
+      remark: form.remark,
+    };
+    let res = await taskCheckReceiveServices.checkReceiveTask(params);
+    if (res) {
+      Message.success('鎻愪氦鎴愬姛');
+      dialogVisible.value = false;
+      infiniteLoadingProps.value?.refetch?.();
+    }
+  } catch (error) {}
+}
+
+async function calcTaskCheckReceive(item: API.GetCheckReceiveTaskQueryResultItem) {
+  try {
+    let params: API.CalcTaskCheckReceiveCommand = {
+      taskInfoId: id,
+      checkInTime: dayjs(item.checkInTime).format('YYYY-MM-DD HH:mm:ss'),
+      checkOutTime: dayjs().format('YYYY-MM-DD HH:mm:ss'),
+    };
+    return await taskCheckReceiveServices.calcTaskCheckReceive(params);
+  } catch (error) {}
+}
+
 function goTaskDetail(item: API.GetCheckReceiveTaskQueryResultItem) {
   if (detail.value.checkReceiveMethod !== EnumTaskCheckReceiveMethod.CheckIn) {
     if (item.checkReceiveStatus === EnumTaskCheckReceiveStatus.Completed) {
@@ -100,18 +281,23 @@
   }
 }
 
-async function checkReceiveTask(ev: EnumTaskUserSubmitCheckReceiveStatus, taskInfoUserId: string) {
+async function checkReceiveTask(
+  ev: EnumTaskUserSubmitCheckReceiveStatus,
+  item: API.GetCheckReceiveTaskQueryResultItem
+) {
   try {
     let params: API.CheckReceiveTaskCommand = {
-      taskInfoUserId: taskInfoUserId,
+      taskInfoUserId: item.id,
       date: dayjs(date).format('YYYY-MM-DD'),
     };
     if (ev === EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive) {
       params.checkInTime = dayjs().format('YYYY-MM-DD HH:mm:ss');
       params.checkReceiveStatus = ev;
     } else if (ev === EnumTaskUserSubmitCheckReceiveStatus.Success) {
-      params.checkOutTime = dayjs().format('YYYY-MM-DD HH:mm:ss');
-      params.checkReceiveStatus = ev;
+      openDialog(item);
+      return;
+      // params.checkOutTime = dayjs().format('YYYY-MM-DD HH:mm:ss');
+      // params.checkReceiveStatus = ev;
     } else if (ev === EnumTaskUserSubmitCheckReceiveStatus.Fail) {
       params.checkReceiveStatus = ev;
     }
@@ -123,3 +309,32 @@
   } catch (error) {}
 }
 </script>
+<style lang="scss">
+@import '@/styles/common.scss';
+
+.taskCheckDetail-page-wrapper {
+  .bole-form-input-wrapper {
+    display: flex;
+    align-items: center;
+  }
+
+  .form-input-unit {
+    margin-left: 10px;
+    color: boleGetCssVar('text-color', 'primary');
+    flex-shrink: 0;
+  }
+
+  .payroll-form-wrapper {
+    width: 600px;
+  }
+
+  .payroll-form-footer {
+    padding: 10px 20px;
+    text-align: center;
+
+    .nut-button + .nut-button {
+      margin-left: 20px;
+    }
+  }
+}
+</style>
diff --git a/packages/components/src/Form/PayrollForm.vue b/packages/components/src/Form/PayrollForm.vue
new file mode 100644
index 0000000..868b7ef
--- /dev/null
+++ b/packages/components/src/Form/PayrollForm.vue
@@ -0,0 +1,132 @@
+<template>
+  <nut-form :model-value="form" ref="payrollFormRef" :rules="rules">
+    <nut-form-item label="鏈嶅姟璐�:" class="bole-form-item" prop="serviceFee" label-width="90px">
+      <div class="bole-form-input-wrapper">
+        <NumberInput
+          v-model.trim="form.serviceFee"
+          class="nut-input-text bole-input-text"
+          placeholder="璇疯緭鍏ユ湇鍔¤垂"
+          :min="0"
+          :max="999999999999"
+          :precision="2"
+          type="text"
+          disabled
+        />
+        <div class="form-input-unit">鍏�</div>
+      </div>
+    </nut-form-item>
+    <nut-form-item label="瓒呮椂:" class="bole-form-item" prop="timeoutHours" label-width="90px">
+      <div class="bole-form-input-wrapper">
+        <NumberInput
+          v-model.trim="form.timeoutHours"
+          class="nut-input-text bole-input-text"
+          placeholder="璇疯緭鍏ヨ秴鏃舵椂闀�"
+          :min="0"
+          :max="999999999999"
+          :precision="2"
+          type="text"
+          @change="onTimeoutHoursChange"
+        />
+        <div class="form-input-unit">灏忔椂</div>
+      </div>
+    </nut-form-item>
+    <nut-form-item label="瓒呮椂璐圭敤:" class="bole-form-item" prop="timeoutFee" label-width="90px">
+      <div class="bole-form-input-wrapper">
+        <NumberInput
+          v-model.trim="form.timeoutFee"
+          class="nut-input-text bole-input-text"
+          placeholder="璇疯緭鍏ヨ秴鏃惰垂鐢�"
+          :min="0"
+          :max="999999999999"
+          :precision="2"
+          type="text"
+          @change="onActualSettlementAmountChange"
+        />
+        <div class="form-input-unit">鍏�</div>
+      </div>
+    </nut-form-item>
+    <nut-form-item label="鍏朵粬璐圭敤:" class="bole-form-item" prop="otherFee" label-width="90px">
+      <div class="bole-form-input-wrapper">
+        <NumberInput
+          v-model.trim="form.otherFee"
+          class="nut-input-text bole-input-text"
+          placeholder="璇疯緭鍏ュ叾浠栬垂鐢�"
+          :max="999999999999"
+          :precision="2"
+          type="text"
+          @change="onActualSettlementAmountChange"
+        />
+        <div class="form-input-unit">鍏�</div>
+      </div>
+    </nut-form-item>
+    <nut-form-item
+      label="缁撶畻閲戦:"
+      class="bole-form-item"
+      prop="settlementAmount"
+      label-width="90px"
+    >
+      {{ `${settlementAmount}鍏僠 }}
+    </nut-form-item>
+    <nut-form-item label="澶囨敞:" class="bole-form-item alignTop" prop="remark" label-width="90px">
+      <nut-textarea v-model="form.remark" rows="4" placeholder="璇疯緭鍏ュ娉�"> </nut-textarea>
+    </nut-form-item>
+  </nut-form>
+</template>
+
+<script setup lang="ts">
+import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types';
+import { computed, reactive, ref } from 'vue';
+import NumberInput from '../Input/NumberInput.vue';
+
+defineOptions({
+  name: 'ProRadio',
+});
+
+type Form = {
+  serviceFee: number;
+  timeoutHours: number;
+  timeoutFee: number;
+  otherFee: number;
+  remark: string;
+  timeoutServiceFee: number;
+};
+
+const form = defineModel<Form>();
+const payrollFormRef = ref(null);
+
+const rules = reactive<FormRules>({
+  verifyCode: [{ required: true, message: '璇疯緭鍏ラ獙璇佺爜' }],
+});
+
+function onTimeoutHoursChange(event: any) {
+  form.value.timeoutFee = form.value.timeoutServiceFee * event.detail.value;
+  onActualSettlementAmountChange();
+}
+
+function onActualSettlementAmountChange() {
+  //鏆傛椂娉ㄦ帀
+  // form.actualSettlementAmount = sumSettlementAmount();
+}
+
+function sumSettlementAmount() {
+  return (
+    getFeeValue(Number(form.value.timeoutFee ?? 0)) +
+    getFeeValue(Number(form.value.serviceFee ?? 0)) +
+    getFeeValue(Number(form.value.otherFee ?? 0))
+  );
+}
+
+const settlementAmount = computed(() => sumSettlementAmount());
+
+function getFeeValue(val: number) {
+  return val || 0;
+}
+
+defineExpose({
+  payrollFormRef,
+});
+</script>
+
+<style lang="scss">
+@import '@/styles/common.scss';
+</style>
diff --git a/packages/components/src/index.ts b/packages/components/src/index.ts
index 1656d39..a029f1a 100644
--- a/packages/components/src/index.ts
+++ b/packages/components/src/index.ts
@@ -39,6 +39,7 @@
 export { default as QueryMenuView } from './Menu/QueryMenuView.vue';
 export { default as QueryMenuItem } from './Menu/QueryMenuItem.vue';
 export { default as ProRadio } from './Form/ProRadio.vue';
+export { default as PayrollForm } from './Form/PayrollForm.vue';
 export { default as Calendar } from './Calendar/Calendar.vue';
 export { default as JobTagList } from './Tag/JobTagList.vue';
 export { default as CommonInputField } from './Input/CommonInputField.vue';
diff --git a/packages/services/apiV2/taskCheckReceive.ts b/packages/services/apiV2/taskCheckReceive.ts
index a287364..2b47075 100644
--- a/packages/services/apiV2/taskCheckReceive.ts
+++ b/packages/services/apiV2/taskCheckReceive.ts
@@ -2,6 +2,24 @@
 // @ts-ignore
 import { request } from '@/utils/request';
 
+/** 璁$畻浠诲姟楠屾敹閲戦 POST /api/flexjob/taskCheckReceive/calcTaskCheckReceive */
+export async function calcTaskCheckReceive(
+  body: API.CalcTaskCheckReceiveCommand,
+  options?: API.RequestConfig
+) {
+  return request<API.CalcTaskCheckReceiveCommandResult>(
+    '/api/flexjob/taskCheckReceive/calcTaskCheckReceive',
+    {
+      method: 'POST',
+      headers: {
+        'Content-Type': 'application/json-patch+json',
+      },
+      data: body,
+      ...(options || {}),
+    }
+  );
+}
+
 /** 浠诲姟楠屾敹 POST /api/flexjob/taskCheckReceive/checkReceiveTask */
 export async function checkReceiveTask(
   body: API.CheckReceiveTaskCommand,
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index de32e94..beb6a74 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -461,6 +461,24 @@
     operatorToken?: string;
   }
 
+  interface CalcTaskCheckReceiveCommand {
+    /** 浠诲姟Id */
+    taskInfoId?: string;
+    /** 绛惧埌鏃堕棿 */
+    checkInTime?: string;
+    /** 绛惧嚭鏃堕棿 */
+    checkOutTime?: string;
+  }
+
+  interface CalcTaskCheckReceiveCommandResult {
+    /** 鏈嶅姟璐癸紙鍏冿級 */
+    serviceFee?: number;
+    /** 瓒呮椂锛堝皬鏃讹級 */
+    timeoutHours?: number;
+    /** 瓒呮椂璐圭敤锛堝厓锛� */
+    timeoutFee?: number;
+  }
+
   interface ChangePhoneNumberCommand {
     /** 鎵嬫満鍙风爜 */
     phoneNumber: string;
@@ -503,6 +521,18 @@
     checkInTime?: string;
     /** 绛惧嚭鏃堕棿 */
     checkOutTime?: string;
+    /** 鏈嶅姟璐癸紙鍏冿級 */
+    serviceFee?: number;
+    /** 瓒呮椂锛堝皬鏃讹級 */
+    timeoutHours?: number;
+    /** 瓒呮椂璐圭敤锛堝厓锛� */
+    timeoutFee?: number;
+    /** 鍏朵粬璐圭敤锛堝厓锛� */
+    otherFee?: number;
+    /** 澶囨敞 */
+    remark?: string;
+    /** 缁撶畻閲戦 */
+    settlementAmount?: number;
     checkReceiveStatus?: EnumTaskUserSubmitCheckReceiveStatus;
   }
 
@@ -1488,6 +1518,24 @@
     /** 閿欒鐮� */
     errorCode?: string;
     data?: BuildOperatorTokenCommandResult;
+    /** 鎵ц鎴愬姛 */
+    success?: boolean;
+    /** 閿欒淇℃伅 */
+    msg?: any;
+    /** 闄勫姞鏁版嵁 */
+    extras?: any;
+    /** 鏃堕棿鎴� */
+    timestamp?: number;
+  }
+
+  interface FriendlyResultCalcTaskCheckReceiveCommandResult {
+    /** 璺熻釜Id */
+    traceId?: string;
+    /** 鐘舵�佺爜 */
+    code?: number;
+    /** 閿欒鐮� */
+    errorCode?: string;
+    data?: CalcTaskCheckReceiveCommandResult;
     /** 鎵ц鎴愬姛 */
     success?: boolean;
     /** 閿欒淇℃伅 */
@@ -3969,6 +4017,10 @@
     access?: EnumElectronSignAccess;
     /** 妯℃澘Id */
     templateId?: string;
+    /** 鏄惁鑷姩绛� */
+    isAutoSign?: boolean;
+    /** 鑷姩绛炬巿鏉冧功 */
+    autoSignPowerAttorneyUrl?: string;
     /** 鍙橀噺 */
     values?: GetContractTemplateQueryResultValue[];
     /** 鍒涘缓鎿嶄綔浜� */
@@ -4237,6 +4289,8 @@
     /** 妯℃澘Id */
     templateId?: string;
     access?: EnumElectronSignAccess;
+    /** 鏄惁鑷姩绛� */
+    isAutoSign?: boolean;
     /** 涓氬姟缂栫爜 */
     code?: string;
     /** 妯℃澘 */
@@ -6526,6 +6580,8 @@
     height?: number;
     /** 浣撻噸 */
     weight?: number;
+    /** 闉嬬爜 */
+    shoeSize?: number;
     /** 鐢熸椿鐓� */
     photos?: string[];
     /** 鐢熸椿鐓� */
@@ -6627,6 +6683,8 @@
     height?: number;
     /** 浣撻噸 */
     weight?: number;
+    /** 闉嬬爜 */
+    shoeSize?: number;
     /** 鐢熸椿鐓� */
     photos?: string[];
     /** 鐢熸椿鐓� */
@@ -7170,6 +7228,10 @@
     access?: EnumElectronSignAccess;
     /** 妯℃澘Id */
     templateId?: string;
+    /** 鏄惁鑷姩绛� */
+    isAutoSign?: boolean;
+    /** 鑷姩绛炬巿鏉冧功 */
+    autoSignPowerAttorneyUrl?: string;
     /** Id */
     id?: string;
   }
@@ -7586,6 +7648,8 @@
     height?: number;
     /** 浣撻噸 */
     weight?: number;
+    /** 闉嬬爜 */
+    shoeSize?: number;
     /** 鐢熸椿鐓� */
     photos?: string[];
     /** 涓汉瑙嗛 */

--
Gitblit v1.9.1