zhengyiming
2 天以前 97334831995a7a442af237dd44eaf3fc7edc120b
src/views/EnterpriseManage/components/ConfigureDialog.vue
@@ -2,7 +2,7 @@
  <ProDialog title="配置" v-model="visible" @close="onDialogClose" destroy-on-close draggable>
    <FieldRadio
      v-model="form.enterpriseConfigureType"
      :value-enum="EnterpriseConfigureTypeText"
      :value-enum="EnterpriseConfigureTypeTextLsst"
      buttonStyle
      style="margin-bottom: 22px"
    />
@@ -13,14 +13,17 @@
      <el-tab-pane lazy :name="EnterpriseConfigureType.AliPay">
        <AliPayConfigureView :id="form.id" ref="aliPayConfigureViewRef" />
      </el-tab-pane>
      <!-- <el-tab-pane lazy :name="EnterpriseConfigureType.Wechat">
      <el-tab-pane lazy :name="EnterpriseConfigureType.Wechat">
        <WechatConfigureView :id="form.id" ref="wechatConfigureViewRef" />
      </el-tab-pane> -->
      </el-tab-pane>
      <el-tab-pane lazy :name="EnterpriseConfigureType.Electronic">
        <ElectronicConfigureView :id="form.id" ref="electronicConfigureViewRef" />
      </el-tab-pane>
      <el-tab-pane lazy :name="EnterpriseConfigureType.ShortMessage">
        <ShortMessageConfigureView :id="form.id" ref="shortMessageConfigureViewRef" />
      </el-tab-pane>
      <el-tab-pane lazy :name="EnterpriseConfigureType.InsureProduct">
        <InsureProductConfigureView :id="form.id" ref="insureProductConfigureViewRef" />
      </el-tab-pane>
    </el-tabs>
    <template #footer>
@@ -34,12 +37,17 @@
<script setup lang="ts">
import { ProDialog, FieldRadio } from '@bole-core/components';
import { EnterpriseConfigureType, EnterpriseConfigureTypeText } from '@/constants';
import {
  EnterpriseConfigureType,
  EnterpriseConfigureTypeTextPartA,
  EnterpriseConfigureTypeTextSupplier,
} from '@/constants';
import BankConfigureView from './BankConfigureView.vue';
import AliPayConfigureView from './AliPayConfigureView.vue';
import ElectronicConfigureView from './ElectronicConfigureView.vue';
import ShortMessageConfigureView from './ShortMessageConfigureView.vue';
import WechatConfigureView from './WechatConfigureView.vue';
import InsureProductConfigureView from './InsureProductConfigureView.vue';
defineOptions({
  name: 'ConfigureDialog',
@@ -48,13 +56,20 @@
type Form = {
  enterpriseConfigureType: EnterpriseConfigureType;
  id: string;
  type: EnumEnterpriseType;
};
const form = defineModel<Form>('form');
const visible = defineModel({ type: Boolean });
const EnterpriseConfigureTypeTextLsst = computed(() => {
  return form.value.type === EnumEnterpriseType.Supplier
    ? EnterpriseConfigureTypeTextSupplier
    : EnterpriseConfigureTypeTextPartA;
});
const emit = defineEmits<{
  (e: 'onConfirm'): void;
  (e: 'onConfirm', value: any): void;
  (e: 'onCancel'): void;
}>();
@@ -68,6 +83,9 @@
const shortMessageConfigureViewRef = useTemplateRef<InstanceType<typeof ShortMessageConfigureView>>(
  'shortMessageConfigureViewRef'
);
const insureProductConfigureViewRef = useTemplateRef<
  InstanceType<typeof InsureProductConfigureView>
>('insureProductConfigureViewRef');
const wechatConfigureViewRef =
  useTemplateRef<InstanceType<typeof WechatConfigureView>>('wechatConfigureViewRef');
@@ -87,12 +105,13 @@
    res = await electronicConfigureViewRef.value?.onConfirm?.();
  } else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.ShortMessage) {
    res = await shortMessageConfigureViewRef.value?.onConfirm?.();
  } else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.Wechat) {
    res = await wechatConfigureViewRef.value?.onConfirm?.();
  } else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.InsureProduct) {
    res = await insureProductConfigureViewRef.value?.onConfirm?.();
  }
  //  else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.Wechat) {
  //   res = await wechatConfigureViewRef.value?.onConfirm?.();
  // }
  if (res) {
    emit('onConfirm');
    emit('onConfirm', res);
  }
}
</script>