| | |
| | | ></ChooseInputWithSuppliers> |
| | | </nut-form-item> |
| | | <nut-form-item |
| | | label="支付通道:" |
| | | class="bole-form-item" |
| | | prop="payAccess" |
| | | label-width="90px" |
| | | required |
| | | > |
| | | <ChooseInputWithPicker |
| | | v-model="form.payAccess" |
| | | placeholder="请选择支付通道" |
| | | :value-enum="EnumUserBankCardAccessTextFormStandard" |
| | | /> |
| | | </nut-form-item> |
| | | <nut-form-item |
| | | label="备注:" |
| | | class="bole-form-item alignTop" |
| | | prop="remark" |
| | |
| | | </nut-form-item> |
| | | </nut-form> |
| | | </ContentScrollView> |
| | | <PageFooter> |
| | | <div class="addStandardOrder-price-wrapper"> |
| | | <div class="addStandardOrder-price-text">支付:</div> |
| | | <PageFooter class="order-settle-bar"> |
| | | <div class="order-settle-price-wrapper"> |
| | | <div class="order-settle-price-label">支付:</div> |
| | | <nut-price :price="totlePrice" size="large" /> |
| | | </div> |
| | | <PageFooterBtn type="primary" class="business-card-btn" @click="goConfirm" |
| | |
| | | :is-show-custom-address="false" |
| | | @selected="selected" |
| | | exist-address-title="选择地址" |
| | | ></nut-address> |
| | | > |
| | | <template #bottom> |
| | | <div class="select-address-bottom"> |
| | | <nut-button type="primary" @click="goSelectAddress">新增地址</nut-button> |
| | | </div> |
| | | </template> |
| | | </nut-address> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | |
| | | List, |
| | | ListItem, |
| | | ChooseInputWithDatePicker, |
| | | ChooseInputWithPicker, |
| | | } from '@12333/components'; |
| | | import Taro from '@tarojs/taro'; |
| | | import { RouterPath } from '@/constants'; |
| | |
| | | import * as standardOrderServices from '@12333/services/apiV2/standardOrder'; |
| | | import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; |
| | | import dayjs from 'dayjs'; |
| | | import { EnumUserBankCardAccess } from '@12333/constants'; |
| | | import { EnumUserBankCardAccess, EnumUserBankCardAccessTextFormStandard } from '@12333/constants'; |
| | | import { Message } from '@12333/utils'; |
| | | import { template } from 'lodash'; |
| | | |
| | | defineOptions({ |
| | | name: 'InnerPage', |
| | |
| | | enterpriseEmployeeId: '', |
| | | enterpriseEmployeeName: '', |
| | | remark: '', |
| | | payAccess: EnumUserBankCardAccess.WeChatPay, |
| | | }); |
| | | |
| | | const nowDate = dayjs().toDate(); |
| | |
| | | beginTime: [{ required: true, message: '请选择服务开始时间' }], |
| | | endTime: [{ required: true, message: '请选择服务结束时间' }], |
| | | enterpriseEmployeeId: [{ required: true, message: '请选择服务机构' }], |
| | | payAccess: [{ required: true, message: '请选择支付通道' }], |
| | | }); |
| | | |
| | | const { isLoading, isError, detail, refetch } = useStandardServiceDetail({ |
| | |
| | | |
| | | const { infiniteLoadingProps } = useEnterpriseAddresses({ |
| | | rows: 100, |
| | | refeshDidShow: false, |
| | | onSuccess(res) { |
| | | const data = res.pages[0].data; |
| | | const address = data.find((item) => item.isDefault); |
| | |
| | | const existAddress = computed(() => { |
| | | return infiniteLoadingProps.value.flattenListData.map((x) => ({ |
| | | id: x.id, |
| | | addressDetail: x.addressDetail, |
| | | addressDetail: `${x.addressName}${x.addressDetail}`, |
| | | cityName: '', |
| | | countyName: '', |
| | | provinceName: '', |
| | |
| | | }; |
| | | let res = await standardOrderServices.addStandardOrder(params); |
| | | if (res) { |
| | | pay(res); |
| | | payStandardOrder(res); |
| | | } |
| | | } catch (error) {} |
| | | } |
| | | |
| | | async function pay(orderId: string) { |
| | | async function payStandardOrder(orderId: string) { |
| | | try { |
| | | let params: API.PayStandardOrderCommand = { |
| | | id: orderId, |
| | |
| | | paySign: res.paySign, |
| | | }); |
| | | Message.success('支付成功'); |
| | | Taro.redirectTo({ |
| | | url: `${RouterPath.mineOrderDetail}?id=${orderId}`, |
| | | }); |
| | | } |
| | | } catch (error) {} |
| | | } catch (error) { |
| | | } finally { |
| | | Taro.redirectTo({ |
| | | url: `${RouterPath.serciceDetail}?id=${id}`, |
| | | }); |
| | | } |
| | | } |
| | | </script> |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | .addStandardOrder-price-wrapper { |
| | | display: flex; |
| | | flex: 2; |
| | | min-width: 0; |
| | | align-items: center; |
| | | padding-left: 28px; |
| | | .order-settle-bar { |
| | | .order-settle-price-wrapper { |
| | | height: 100%; |
| | | flex: 1; |
| | | min-width: 0; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-left: 28px; |
| | | |
| | | .addStandardOrder-price-text { |
| | | font-size: 32px; |
| | | color: boleGetCssVar('text-color', 'primary'); |
| | | .order-settle-price-label { |
| | | color: boleGetCssVar('text-color', 'primary'); |
| | | } |
| | | } |
| | | } |
| | | } |