wupengfei
9 天以前 7508a26c00c2ce93ad8c08394f0f9d3d13ebb4ab
feat: 接口对接
6个文件已修改
113 ■■■■ 已修改文件
pnpm-lock.yaml 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/constants/insuranceClaim.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/InsuranceOrder.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/services/api/typings.d.ts 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Home/Home.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Home/components/InsureOrderInfoView.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pnpm-lock.yaml
@@ -21,13 +21,13 @@
    version: 1.0.3(@bole-12333/chat-kit@1.0.1)(@tiptap/core@2.1.13)(@tiptap/extension-document@2.1.13)(@tiptap/extension-image@2.1.13)(@tiptap/extension-mention@2.1.13)(@tiptap/extension-paragraph@2.1.13)(@tiptap/extension-placeholder@2.1.13)(@tiptap/extension-text@2.1.13)(@tiptap/pm@2.1.13)(@tiptap/suggestion@2.1.13)(dayjs@1.11.6)(vue@3.5.11)
  '@bole-core/components':
    specifier: latest
    version: 1.3.10(@bole-core/core@1.0.6)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@tanstack/vue-query@4.37.1)(@videojs-player/vue@1.0.0)(@vueuse/core@11.1.0)(@vueuse/shared@11.1.0)(dayjs@1.11.6)(element-plus@2.9.1)(lodash@4.17.21)(mitt@3.0.0)(senin-help@1.0.5)(senin-vue@1.0.4)(video.js@7.20.3)(vue-component-type-helpers@2.1.6)(vue@3.5.11)
    version: 1.3.10(@bole-core/core@1.0.7)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@tanstack/vue-query@4.37.1)(@videojs-player/vue@1.0.0)(@vueuse/core@11.1.0)(@vueuse/shared@11.1.0)(dayjs@1.11.6)(element-plus@2.9.1)(lodash@4.17.21)(mitt@3.0.0)(senin-help@1.0.5)(senin-vue@1.0.4)(video.js@7.20.3)(vue-component-type-helpers@2.1.6)(vue@3.5.11)
  '@bole-core/core':
    specifier: latest
    version: 1.0.6(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5)
    version: 1.0.7(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5)
  '@bole-core/pretty-layout':
    specifier: latest
    version: 1.2.0(@bole-core/core@1.0.6)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@vueuse/core@11.1.0)(element-plus@2.9.1)(fuse.js@6.6.2)(lottie-web@5.10.2)(path-browserify@1.0.1)(path-to-regexp@6.2.1)(pinia@2.2.4)(vue-router@4.4.5)(vue@3.5.11)
    version: 1.2.0(@bole-core/core@1.0.7)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@vueuse/core@11.1.0)(element-plus@2.9.1)(fuse.js@6.6.2)(lottie-web@5.10.2)(path-browserify@1.0.1)(path-to-regexp@6.2.1)(pinia@2.2.4)(vue-router@4.4.5)(vue@3.5.11)
  '@bole-core/sass-utils':
    specifier: latest
    version: 0.0.1(element-plus@2.9.1)
@@ -1889,7 +1889,7 @@
      vue: 3.5.11(typescript@4.8.4)
    dev: false
  /@bole-core/components@1.3.10(@bole-core/core@1.0.6)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@tanstack/vue-query@4.37.1)(@videojs-player/vue@1.0.0)(@vueuse/core@11.1.0)(@vueuse/shared@11.1.0)(dayjs@1.11.6)(element-plus@2.9.1)(lodash@4.17.21)(mitt@3.0.0)(senin-help@1.0.5)(senin-vue@1.0.4)(video.js@7.20.3)(vue-component-type-helpers@2.1.6)(vue@3.5.11):
  /@bole-core/components@1.3.10(@bole-core/core@1.0.7)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@tanstack/vue-query@4.37.1)(@videojs-player/vue@1.0.0)(@vueuse/core@11.1.0)(@vueuse/shared@11.1.0)(dayjs@1.11.6)(element-plus@2.9.1)(lodash@4.17.21)(mitt@3.0.0)(senin-help@1.0.5)(senin-vue@1.0.4)(video.js@7.20.3)(vue-component-type-helpers@2.1.6)(vue@3.5.11):
    resolution: {integrity: sha512-SRE33nhD4i8MQVvBGbCGH++RfozRM74ctmkhCOCeCoZnlKSqI/i9UlYVrg1Yre5P9TLjh7vEXmSI4TlALrTNXQ==}
    peerDependencies:
      '@bole-core/core': '*'
@@ -1909,7 +1909,7 @@
      vue: 3.5.11
      vue-component-type-helpers: ^2.1.6
    dependencies:
      '@bole-core/core': 1.0.6(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5)
      '@bole-core/core': 1.0.7(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5)
      '@bole-core/sass-utils': 0.0.1(element-plus@2.9.1)
      '@element-plus/icons-vue': 2.3.1(vue@3.5.11)
      '@tanstack/vue-query': 4.37.1(vue@3.5.11)
@@ -1927,8 +1927,8 @@
      vue-component-type-helpers: 2.1.6
    dev: false
  /@bole-core/core@1.0.6(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5):
    resolution: {integrity: sha512-0q0E0ebl6+Arqgg2+OxewmeyizwlxGQdHLLivA9WaFxAY6a5rskVYyEgCwf7hCr4C3saXpNVTzhmmvjVxrr6Lw==}
  /@bole-core/core@1.0.7(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5):
    resolution: {integrity: sha512-VICs9m+qAaMvORNcaKSP1Gkr4thhxvwooh2hd7fBmkIYqDitOYmcssBsPno7jjp+5fuZYQ3LwHQ9Vl/whbTpCw==}
    peerDependencies:
      '@ywwlmm/openapi': '*'
      ali-oss: '*'
@@ -1959,7 +1959,7 @@
      xlsx-style: 0.8.13(patch_hash=6ixwdxwh5a3amidwu6vee22jpi)
    dev: false
  /@bole-core/pretty-layout@1.2.0(@bole-core/core@1.0.6)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@vueuse/core@11.1.0)(element-plus@2.9.1)(fuse.js@6.6.2)(lottie-web@5.10.2)(path-browserify@1.0.1)(path-to-regexp@6.2.1)(pinia@2.2.4)(vue-router@4.4.5)(vue@3.5.11):
  /@bole-core/pretty-layout@1.2.0(@bole-core/core@1.0.7)(@bole-core/sass-utils@0.0.1)(@element-plus/icons-vue@2.3.1)(@vueuse/core@11.1.0)(element-plus@2.9.1)(fuse.js@6.6.2)(lottie-web@5.10.2)(path-browserify@1.0.1)(path-to-regexp@6.2.1)(pinia@2.2.4)(vue-router@4.4.5)(vue@3.5.11):
    resolution: {integrity: sha512-LvneMdMfGj6dpFR7voQd2F+v02P4zYHGP3BAWKcrTj8BMeWXRt08Sz7qBrhq1F8lidjqi7TCttQbx2cEV1qBEA==}
    peerDependencies:
      '@bole-core/core': '*'
@@ -1975,7 +1975,7 @@
      vue: 3.5.11
      vue-router: '*'
    dependencies:
      '@bole-core/core': 1.0.6(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5)
      '@bole-core/core': 1.0.7(@ywwlmm/openapi@0.0.3)(ali-oss@6.21.0)(axios@1.7.7)(dayjs@1.11.6)(element-plus@2.9.1)(file-saver@2.0.5)(jszip@3.10.1)(lodash@4.17.21)(senior-request@1.0.1)(vue-router@4.4.5)(vue@3.5.11)(xlsx-style@0.8.13)(xlsx@0.18.5)
      '@bole-core/sass-utils': 0.0.1(element-plus@2.9.1)
      '@element-plus/icons-vue': 2.3.1(vue@3.5.11)
      '@vueuse/core': 11.1.0(vue@3.5.11)
@@ -3692,8 +3692,8 @@
      vue-demi: 0.13.11(vue@3.5.11)
    dev: false
  /@tencentcloud/call-engine-js@3.0.1:
    resolution: {integrity: sha512-OafM512KDbk4b9dpVVymLvuQuoVNqp7ZQmnZVjDmC5v/bQxA1FSUaAinty+7AU1Fb1FxQwxuHKDPysQAU+9M0g==}
  /@tencentcloud/call-engine-js@3.1.0:
    resolution: {integrity: sha512-ygbGO+NDsqVoF4ud4bAto4zLzqC6CYSJ1lvkoMsRHdaTeXi2M4qrcAqbqbrFD9L8VjLTsbw1o2MzbQCQfYnv3g==}
    dependencies:
      '@tencentcloud/chat': 3.5.5
      core-js: 3.38.1
@@ -3703,10 +3703,10 @@
      tuikit-logger: 0.0.4-beta.1
    dev: false
  /@tencentcloud/call-uikit-vue2.6@4.0.6(vue@3.5.11):
    resolution: {integrity: sha512-As0qoW6TncyZ0y10Ogm6KrziZGznM5DX5HBPdYfZDbDm6eIYxG13HD3K8BzUC/GRlny8Nxn4EfhSkn48StBruQ==}
  /@tencentcloud/call-uikit-vue2.6@4.0.7(vue@3.5.11):
    resolution: {integrity: sha512-w3EankGnt74+S6rDrsVsLY/sRm+R4PtnHQEKHiJyySOGUKlgthq8/gOh2Lee03mh3+Yd6gRivOnEmlBbVNEmQA==}
    dependencies:
      '@tencentcloud/call-engine-js': 3.0.1
      '@tencentcloud/call-engine-js': 3.1.0
      '@tencentcloud/chat': 3.5.5
      '@tencentcloud/tui-core': 2.4.0
      '@vue/composition-api': 1.7.2(vue@3.5.11)
@@ -3714,10 +3714,10 @@
      - vue
    dev: false
  /@tencentcloud/call-uikit-vue2@4.0.6:
    resolution: {integrity: sha512-egV/rS0T77vj3+d3YpurJxynFBJ41hbBO8WPmwc5z9BD2qjM2HSKgbMR2jGF6XAxjherCK/qlaIZLQQiNIKmNQ==}
  /@tencentcloud/call-uikit-vue2@4.0.7:
    resolution: {integrity: sha512-EzLrlzOgAnIY+aSVT2if06D0ebPgqIXTcVQuY+xj6NQI+PTpfkRu/SAlC50CHuaGOdH7F5P+U32dCOjcCoS4BQ==}
    dependencies:
      '@tencentcloud/call-engine-js': 3.0.1
      '@tencentcloud/call-engine-js': 3.1.0
      '@tencentcloud/chat': 3.5.5
      '@tencentcloud/tui-core': 2.4.0
    dev: false
@@ -3729,10 +3729,10 @@
      tuicall-engine-webrtc: 3.1.7
    dev: false
  /@tencentcloud/call-uikit-vue@4.0.6:
    resolution: {integrity: sha512-eqcIv2QcsH1iRdpbBJu6sv73wVMzaeb4Bap5A2B+uVJrnrwEd1KwOzk8wV4gNIbtF08fK933R4OnkuCRMhoH4A==}
  /@tencentcloud/call-uikit-vue@4.0.7:
    resolution: {integrity: sha512-FGaCeCOAyk0z/qiobT+d9F1RFKLal1/lhk51pDso38MlJbvhzk7/s/feubO1Fbi5nHqRBF71m7+RS44m/Fcspg==}
    dependencies:
      '@tencentcloud/call-engine-js': 3.0.1
      '@tencentcloud/call-engine-js': 3.1.0
      '@tencentcloud/chat': 3.5.5
      '@tencentcloud/tui-core': 2.4.0
    dev: false
@@ -3758,9 +3758,9 @@
      '@tiptap/pm': ^2.0.0-beta.220
      '@tiptap/suggestion': ^2.0.0-beta.220
    dependencies:
      '@tencentcloud/call-uikit-vue': 4.0.6
      '@tencentcloud/call-uikit-vue2': 4.0.6
      '@tencentcloud/call-uikit-vue2.6': 4.0.6(vue@3.5.11)
      '@tencentcloud/call-uikit-vue': 4.0.7
      '@tencentcloud/call-uikit-vue2': 4.0.7
      '@tencentcloud/call-uikit-vue2.6': 4.0.7(vue@3.5.11)
      '@tencentcloud/chat-uikit-engine': 2.4.4
      '@tencentcloud/tui-core': 2.4.0
      '@tencentcloud/tui-customer-service-plugin': 2.2.6(@tencentcloud/tui-core@2.4.0)(vue@3.5.11)
src/constants/insuranceClaim.ts
@@ -86,3 +86,18 @@
  '30D': '月保',
  '360D': '年保',
};
export enum InsuranceClaimAuditStatusEnum {
  /**驳回 */
  Reject = -10,
  /**待审核 */
  WaitAudit = 10,
  /**通过 */
  Pass = 20,
}
export const InsuranceClaimAuditStatusEnumText = {
  [InsuranceClaimAuditStatusEnum.Reject]: '驳回',
  [InsuranceClaimAuditStatusEnum.WaitAudit]: '待审核',
  [InsuranceClaimAuditStatusEnum.Pass]: '通过',
};
src/services/api/InsuranceOrder.ts
@@ -398,6 +398,21 @@
  });
}
/** 保单审核 POST /api/InsuranceOrder/InsurancePolicyAudit */
export async function insurancePolicyAudit(
  body: API.InsurancePolicyAuditInput,
  options?: API.RequestConfig
) {
  return request<number>('/api/InsuranceOrder/InsurancePolicyAudit', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    data: body,
    ...(options || {}),
  });
}
/** 修改保单人员信息 POST /api/InsuranceOrder/UpdateInsuranceStaffInfo */
export async function updateInsuranceStaffInfo(
  body: API.UpdateInsuranceStaffInfoInput,
src/services/api/typings.d.ts
@@ -897,6 +897,8 @@
    companyName?: string;
    isClosedOutTime?: boolean;
    auditStatus?: InsuranceClaimAuditStatusEnum;
    /** 审核备注 */
    auditRemark?: string;
    /** 保险产品IdNumber */
    productIdNumber?: string;
  }
@@ -1467,6 +1469,22 @@
    materialName?: string;
  }
  interface InsurancePolicyAuditInput {
    /** 保单Id */
    insurancePolicyId?: string;
    /** 保单起期 */
    effectStartTime?: string;
    /** 保单止期 */
    effectEndTime?: string;
    /** 保额 */
    sumInsured?: number;
    /** 保费 */
    amount?: number;
    auditStatus?: InsuranceClaimAuditStatusEnum;
    /** 审核备注 */
    auditRemark?: string;
  }
  type InsurancePolicyStatusEnum = 10 | 20 | 30;
  interface InsureBatchBillDetailDto {
src/views/Home/Home.vue
@@ -26,6 +26,15 @@
          </QueryFilterItem>
          <QueryFilterItem>
            <FieldRadio
              v-model="extraParamState.auditStatus"
              :value-enum="InsuranceClaimAuditStatusEnumText"
              buttonStyle
              showAllBtn
              @change="getList()"
            />
          </QueryFilterItem>
          <QueryFilterItem>
            <FieldRadio
              v-model="extraParamState.status"
              :value-enum="InsurancePolicyStatusEnumText"
              buttonStyle
@@ -109,6 +118,8 @@
  InsurancePolicyStatusEnumText,
  InsurancePolicyStatusEnum,
  AppType,
  InsuranceClaimAuditStatusEnumText,
  InsuranceClaimAuditStatusEnum,
} from '@/constants';
import dayjs from 'dayjs';
import _ from 'lodash';
@@ -209,10 +220,12 @@
      creationDate: [] as unknown as ModelValueType,
      condition: '',
      status: '' as any as InsurancePolicyStatusEnum,
      auditStatus: '' as any as InsuranceClaimAuditStatusEnum,
      insurancePeriod: '',
    },
    columnsRenderProps: {
      status: { type: 'enum', valueEnum: InsurancePolicyStatusEnumText },
      auditStatus: { type: 'enum', valueEnum: InsuranceClaimAuditStatusEnumText },
      insurancePeriod: { type: 'enum', valueEnum: insuranceTypeText },
      creationTime: { type: 'date', format: 'YYYY-MM-DD' },
      effectStartTime: { type: 'date', format: 'YYYY-MM-DD' },
@@ -243,6 +256,7 @@
    condition: extraParamState.condition,
    insurancePeriod: extraParamState.insurancePeriod,
    status: extraParamState.status,
    auditStatus: extraParamState.auditStatus,
  };
  return params;
}
src/views/Home/components/InsureOrderInfoView.vue
@@ -85,6 +85,7 @@
            <template v-if="detail.status === InsurancePolicyStatusEnum.WaitEffect">
              <el-button @click="handleTemplateDownload()" link type="primary">模板下载</el-button>
              <BlFileUpload
                v-if="detail.auditStatus !== InsuranceClaimAuditStatusEnum.Pass"
                :limitFileSize="10"
                accept="xls,xlsx"
                :showTip="false"
@@ -149,6 +150,7 @@
  insuranceTypeText,
  InsurancePolicyStatusEnum,
  InsurancePolicyStatusEnumText,
  InsuranceClaimAuditStatusEnum,
} from '@/constants';
import ChangePersonInfoDialog from './ChangePersonInfoDialog.vue';
import InsureClaimDetailDialog from './InsureClaimDetailDialog.vue';
@@ -239,7 +241,8 @@
    },
    extraProps: {
      hide: (row: API.GetInsuranceStaffPageTemplate) =>
        detail.value?.status !== InsurancePolicyStatusEnum.WaitEffect,
        detail.value?.status !== InsurancePolicyStatusEnum.WaitEffect ||
        detail.value?.auditStatus === InsuranceClaimAuditStatusEnum.Pass,
    },
  },
  {