From f5105689af0ccee7d34632e8f8b47a66abda0884 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期一, 09 六月 2025 15:09:06 +0800 Subject: [PATCH] Merge branch 'dev-ui' of http://120.26.58.240:8888/r/LifePaymentFront into dev-ui --- apps/taro/src/subpackages/my/generatePromotionCode/generatePromotionCode.vue | 6 +- packages/components/src/views/Mine/GeneratePromotionCodeView.vue | 25 ++++++++---- apps/taro/src/subpackages/my/applyAgent/applyAgent.vue | 5 +- packages/components/src/views/Mine/ApplyAgentView.vue | 49 ++++++++++++++++-------- packages/core/src/lifeRechargeServices.ts | 27 +++++++++++++ apps/taro/src/subpackages/my/applyResult/applyResult.vue | 7 +++ 6 files changed, 88 insertions(+), 31 deletions(-) diff --git a/apps/taro/src/subpackages/my/applyAgent/applyAgent.vue b/apps/taro/src/subpackages/my/applyAgent/applyAgent.vue index 61edcaa..232af4e 100644 --- a/apps/taro/src/subpackages/my/applyAgent/applyAgent.vue +++ b/apps/taro/src/subpackages/my/applyAgent/applyAgent.vue @@ -13,7 +13,6 @@ import { PageLayout } from '@/components'; import { RouterPath } from '@/constants'; import { ApplyAgentView } from '@life-payment/components'; -import { goBack } from '@/utils'; import type { ComponentExposed } from 'vue-component-type-helpers'; defineOptions({ @@ -27,9 +26,9 @@ applyAgentViewRef.value?.handleSubmit?.(); } -function submit() { +function submit(value: string) { RouteHelper.navigateTo({ - url: RouterPath.applyResult, + url: `${RouterPath.applyResult}?promoterIdNumber=${value}`, }); } </script> diff --git a/apps/taro/src/subpackages/my/applyResult/applyResult.vue b/apps/taro/src/subpackages/my/applyResult/applyResult.vue index c7c56f1..59e712a 100644 --- a/apps/taro/src/subpackages/my/applyResult/applyResult.vue +++ b/apps/taro/src/subpackages/my/applyResult/applyResult.vue @@ -12,14 +12,19 @@ <script setup lang="ts"> import { PageLayout } from '@/components'; import { ResultWithoutBG } from '@life-payment/components'; +import Taro from '@tarojs/taro'; defineOptions({ name: 'applyAgent', }); +const router = Taro.useRouter(); + +const promoterIdNumber = router.params?.promoterIdNumber ?? ''; + function generate() { RouteHelper.navigateTo({ - url: RouterPath.promotionQrcode, + url: `${RouterPath.generatePromotionCode}?promoterIdNumber=${promoterIdNumber}`, }); } </script> diff --git a/apps/taro/src/subpackages/my/generatePromotionCode/generatePromotionCode.vue b/apps/taro/src/subpackages/my/generatePromotionCode/generatePromotionCode.vue index be38334..c264292 100644 --- a/apps/taro/src/subpackages/my/generatePromotionCode/generatePromotionCode.vue +++ b/apps/taro/src/subpackages/my/generatePromotionCode/generatePromotionCode.vue @@ -18,8 +18,8 @@ import { PageLayout } from '@/components'; import { RouterPath } from '@/constants'; import { GeneratePromotionCodeView } from '@life-payment/components'; -import { goBack } from '@/utils'; import type { ComponentExposed } from 'vue-component-type-helpers'; +import Taro from '@tarojs/taro'; defineOptions({ name: 'generatePromotionCode', @@ -33,9 +33,9 @@ generatePromotionCodeViewRef.value?.handleSubmit?.(); } -function submit() { +function submit(value: string) { RouteHelper.navigateTo({ - url: RouterPath.applyResult, + url: `${RouterPath.promotionQrcode}?promoterIdNumber=${value}`, }); } </script> diff --git a/packages/components/src/views/Mine/ApplyAgentView.vue b/packages/components/src/views/Mine/ApplyAgentView.vue index 68d9e8a..8c70ef6 100644 --- a/packages/components/src/views/Mine/ApplyAgentView.vue +++ b/packages/components/src/views/Mine/ApplyAgentView.vue @@ -30,22 +30,22 @@ type="text" /> </NutFormItem> - <NutFormItem label="鎰忓悜浠g悊绫诲瀷" class="bole-form-item" prop="type" required> + <NutFormItem label="鎰忓悜浠g悊绫诲瀷" 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"> + <NutFormItem label="瀹㈡埛璧勬簮" class="bole-form-item" prop="customerResources"> <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', value: 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,7 @@ { required: true, message: '璇峰~鍐欐偍鐨勮仈绯绘柟寮�' }, { validator: FormValidator.validatorPhoneNumber, message: '璇疯緭鍏ユ纭殑鎵嬫満鍙�' }, ], - type: [{ required: true, message: '璇烽�夋嫨鎮ㄦ兂鐢宠鐨勪唬鐞嗙被鍨�' }], + agentType: [{ required: true, message: '璇烽�夋嫨鎮ㄦ兂鐢宠鐨勪唬鐞嗙被鍨�' }], }); const { blLifeRecharge } = useLifeRechargeContext(); @@ -100,19 +109,27 @@ 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'); + console.log('params: ', params); + let res = await blLifeRecharge.services.createChannelConsultation(params); + if (res) { + emit('submit', res); + } } catch (error) {} } diff --git a/packages/components/src/views/Mine/GeneratePromotionCodeView.vue b/packages/components/src/views/Mine/GeneratePromotionCodeView.vue index b4b40d3..9a9c670 100644 --- a/packages/components/src/views/Mine/GeneratePromotionCodeView.vue +++ b/packages/components/src/views/Mine/GeneratePromotionCodeView.vue @@ -29,16 +29,21 @@ import { Form as NutForm, FormItem as NutFormItem, Input as NutInput } from '@nutui/nutui-taro'; import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; import { reactive, ref } from 'vue'; -import { useLifeRechargeContext } from '@life-payment/core-vue'; +import { CreateOrUpdatePromoterInput, useLifeRechargeContext } from '@life-payment/core-vue'; import { FormValidator } from '../../utils'; +import Taro from '@tarojs/taro'; defineOptions({ name: 'ApplyAgentView', }); const emit = defineEmits<{ - (e: 'submit'): void; + (e: 'submit', data: string): void; }>(); + +const router = Taro.useRouter(); + +const promoterIdNumber = router.params?.promoterIdNumber ?? ''; const form = reactive({ name: '', @@ -68,12 +73,16 @@ async function refundUserLifePayOrder() { try { - // let params = { - // userId: blLifeRecharge.accountModel.userId, - // refundApplyRemark: form.refundApplyRemark, - // }; - // let res = await blLifeRecharge.services.refundUserLifePayOrder(params); - emit('submit'); + let params: CreateOrUpdatePromoterInput = { + userId: blLifeRecharge.accountModel.userId, + idNumber: promoterIdNumber, + name: form.name, + phoneNumber: form.phoneNumber, + }; + let res = await blLifeRecharge.services.createOrUpdatePromoter(params); + if (res) { + emit('submit', res); + } } catch (error) {} } diff --git a/packages/core/src/lifeRechargeServices.ts b/packages/core/src/lifeRechargeServices.ts index 6762eea..71d3723 100644 --- a/packages/core/src/lifeRechargeServices.ts +++ b/packages/core/src/lifeRechargeServices.ts @@ -422,6 +422,18 @@ ...(options || {}), }); } + + /** 鍒涘缓鎴栨洿鏂版帹骞垮憳 POST /api/Promoter/CreateOrUpdatePromoter */ + async createOrUpdatePromoter(body: API.CreateOrUpdatePromoterInput, options?: API.RequestConfig) { + return this.request<string>('/api/Promoter/CreateOrUpdatePromoter', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + data: body, + ...(options || {}), + }); + } } export interface PhoneMesssageCodeLoginInput { @@ -945,3 +957,18 @@ /** 瀹㈡埛璧勬簮 */ customerResources?: string; } + +export interface CreateOrUpdatePromoterInput { + /** Id */ + id?: string; + /** 瀹㈡埛绔敤鎴稩d 濡傛湁 */ + userId?: string; + /** ID */ + idNumber?: string; + /** 鎺ㄥ箍鍛� */ + name?: string; + /** 鑱旂郴鏂瑰紡 */ + phoneNumber?: string; + /** 澶囨敞 */ + remark?: string; +} -- Gitblit v1.9.1