zhengyiming
2025-06-10 e9c808a55b0b1837181391681f3fec34eb71cd2a
packages/components/src/views/Mine/ApplyAgentView.vue
@@ -30,22 +30,22 @@
        type="text"
      />
    </NutFormItem>
    <NutFormItem label="意向代理类型 " class="bole-form-item" prop="type" required>
    <NutFormItem label="意向代理类型" class="bole-form-item" prop="agentType" required>
      <ChooseInputWithPicker
        v-model="form.type"
        v-model="form.agentType"
        placeholder="请选择您想申请的代理类型"
        :value-enum="[]"
        :value-enum="LifeRechargeConstants.LifePayChannelAgentTypeText"
        enum-label-key="gasOrgName"
        enum-value-key="gasOrgCode"
      />
    </NutFormItem>
    <NutFormItem label="客户资源" class="bole-form-item" prop="refundApplyRemark" required>
    <NutFormItem label="客户资源" class="bole-form-item" prop="customerResources" required>
      <NutTextarea
        placeholder="请填写您拥有的客户资源"
        placeholderClass="bole-input-text-placeholder"
        autoSize
        class="bole-input-textarea"
        v-model="form.refundApplyRemark"
        v-model="form.customerResources"
        :max-length="200"
        limit-show
      >
@@ -63,24 +63,33 @@
} from '@nutui/nutui-taro';
import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types';
import { reactive, ref, computed } from 'vue';
import { useLifeRechargeContext } from '@life-payment/core-vue';
import {
  CreateChannelConsultationInput,
  LifeRechargeConstants,
  useLifeRechargeContext,
} from '@life-payment/core-vue';
import { FormValidator } from '../../utils';
import ChooseInputWithPicker from '../../components/Input/ChooseInputWithPicker.vue';
import Taro from '@tarojs/taro';
defineOptions({
  name: 'ApplyAgentView',
});
const emit = defineEmits<{
  (e: 'submit'): void;
  (e: 'submit', consultationId: string): void;
}>();
const router = Taro.useRouter();
const promoterIdNumber = router.params?.promoterIdNumber ?? '';
const form = reactive({
  companyName: '',
  name: '',
  phoneNumber: '',
  type: '',
  refundApplyRemark: '',
  agentType: '' as any as LifeRechargeConstants.LifePayChannelAgentType,
  customerResources: '',
});
const rules = reactive<FormRules>({
@@ -89,7 +98,8 @@
    { required: true, message: '请填写您的联系方式' },
    { validator: FormValidator.validatorPhoneNumber, message: '请输入正确的手机号' },
  ],
  refundApplyRemark: [{ required: true, message: '请输入退款原因' }],
  agentType: [{ required: true, message: '请选择您想申请的代理类型' }],
  customerResources: [{ required: true, message: '请填写您拥有的客户资源' }],
});
const { blLifeRecharge } = useLifeRechargeContext();
@@ -100,19 +110,26 @@
  if (!formRef.value) return;
  formRef.value.validate().then(({ valid, errors }: any) => {
    if (valid) {
      refundUserLifePayOrder();
      createChannelConsultation();
    }
  });
}
async function refundUserLifePayOrder() {
async function createChannelConsultation() {
  try {
    let params = {
    let params: CreateChannelConsultationInput = {
      userId: blLifeRecharge.accountModel.userId,
      refundApplyRemark: form.refundApplyRemark,
      idNumber: promoterIdNumber,
      name: form.name,
      agentType: form.agentType,
      phoneNumber: form.phoneNumber,
      companyName: form.companyName,
      customerResources: form.customerResources,
    };
    let res = await blLifeRecharge.services.refundUserLifePayOrder(params);
    emit('submit');
    let res = await blLifeRecharge.services.createChannelConsultation(params);
    if (res) {
      emit('submit', res);
    }
  } catch (error) {}
}