| | |
| | | } |
| | | |
| | | function buildStartDescription(includedKm: any, includedMin: any) { |
| | | const hasIncludedKm = hasDisplayValue(includedKm); |
| | | const hasIncludedMin = hasConfiguredDuration(includedMin); |
| | | const parts: string[] = []; |
| | | if (hasIncludedKm) { |
| | | parts.push(`包含里程${includedKm}公里`); |
| | | const hasKm = hasDisplayValue(includedKm); |
| | | const hasMin = hasDisplayValue(includedMin); |
| | | |
| | | if (hasKm && hasMin) { |
| | | return `行程在${includedKm}公里内且用时不超过${includedMin}分钟,统一收取起步价;行程超出${includedKm}公里,或是行驶时长超过${includedMin}分钟任一情况,均会在起步价基础上叠加收取对应里程费、时长费。`; |
| | | } |
| | | if (hasIncludedMin) { |
| | | parts.push(`包含时长${includedMin}分钟`); |
| | | if (hasKm && !hasMin) { |
| | | return `基础里程${includedKm}公里内统一收取起步价,行程超出${includedKm}公里后,额外叠加里程费。`; |
| | | } |
| | | if (parts.length === 0) { |
| | | return '起步价内包含一定的基础里程或时长,超出后将在起步价基础上累加计费。'; |
| | | if (!hasKm && hasMin) { |
| | | return `包含时长${includedMin}分钟,时长超出时,将在起步价基础上累加计费。`; |
| | | } |
| | | if (hasIncludedKm && hasIncludedMin) { |
| | | return `${parts.join(',')},包含里程或包含时长(低速时长)任何一项超出时,将在起步价基础上累加计费。`; |
| | | } |
| | | if (hasIncludedKm) { |
| | | return `${parts.join(',')},超出包含里程后,将在起步价基础上累加计费。`; |
| | | } |
| | | return `${parts.join(',')},超出包含时长(低速时长)后,将在起步价基础上累加计费。`; |
| | | return '起步价内包含一定的基础里程或时长,超出后将在起步价基础上累加计费。'; |
| | | } |
| | | |
| | | function PricingRulesPage() { |
| | |
| | | waitingFeePerMinute !== null && |
| | | waitingFeePerMinute !== undefined && |
| | | waitingFeePerMinute !== '' |
| | | ? `司机到达预约地点${waitingFreeMinutes}分钟后开始收取等待费,为${formatMoney(waitingFeePerMinute)}元/分钟,不足1分钟按1分钟计算` |
| | | ? `车辆抵达上车点可享 ${waitingFreeMinutes} 分钟免费等候时长,超时后按 ${formatMoney(waitingFeePerMinute)} 元/分钟收取等待费,等候时长不足 1 分钟统一按 1 分钟核算。` |
| | | : ''; |
| | | |
| | | const longDistanceStep1 = basicPricing?.num7; |
| | |
| | | const f2 = formatMoney(fee2); |
| | | const f3 = formatMoney(fee3); |
| | | const result: string[] = []; |
| | | if (f1) result.push(`总里程超过${baseIncludedKm}公里后,公里不足${step1}公里,超出部分每公里加收${f1}元`); |
| | | if (f2) result.push(`超过${step1}公里不足${step2}公里,超出部分每公里加收${f2}元`); |
| | | if (f3) result.push(`超过${step2}公里以后,超出部分每公里加收${f3}元`); |
| | | if (f1) result.push(`总里程超${baseIncludedKm}公里且未满${step1}公里,超出部分每公里加收${f1}元。`); |
| | | if (f2) result.push(`总里程超${step1}公里且未满${step2}公里,超出部分每公里加收${f2}元。`); |
| | | if (f3) result.push(`总里程超${step2}公里,超出部分每公里加收${f3}元。`); |
| | | return result; |
| | | } |
| | | |
| | |
| | | <View className='group-title'>{group.title}</View> |
| | | {group.bullets.map((b, bi) => ( |
| | | <View className='bullet' key={`long-${idx}-${bi}`}> |
| | | {`- ${b}`} |
| | | {`${b}`} |
| | | </View> |
| | | ))} |
| | | </View> |
| | |
| | | ) : null} |
| | | {waitingFeeText ? ( |
| | | <View className='section'> |
| | | <View className='item-title'>等待费设置</View> |
| | | <View className='item-title'>等待费</View> |
| | | <Text className='item-value'>{waitingFeeText}</Text> |
| | | </View> |
| | | ) : null} |
| | |
| | | <Text className='notice-text'> |
| | | {isFixedPriceMode |
| | | ? '高速费、停车费、过桥费、跨城费等行程中实际产生的杂费,由乘客另行据实支付。最终费用=一口价套餐费+超额里程费+超额时长费。' |
| | | : '最终费用以实际行驶里程与时间为准。若行程发生路线变更,如不可避免的绕路情况,超出原路线计费,您的行程将按原路线爱进行收费。'} |
| | | : '最终费用是基于行程起终点预估里程和时长,按照实时计价规则计算的预估价,再根据供需等因素进行一定幅度调整的价格。若实际终点远离原终点或实际里程与原里程偏差较大,将重新计算价格。'} |
| | | </Text> |
| | | </View> |
| | | </View> |