| | |
| | | { label: '星期日', value: 7 }, |
| | | ] |
| | | |
| | | function getFenceStrategyTypeText(item: Record<string, any>) { |
| | | function getFenceStrategyTypeLabels(item: Record<string, any>) { |
| | | if (Number(item?.type) === 3) { |
| | | const labels = (Array.isArray(item?.typeStr) ? item.typeStr : []) |
| | | .map((value: unknown) => fenceStrategyWeekOptions.find(option => option.value === Number(value))?.label) |
| | | .filter(Boolean) |
| | | return labels.length ? labels.join('、') : '-' |
| | | return labels.length ? labels : ['-'] |
| | | } |
| | | return fenceStrategyDateTypeOptions.find(option => option.value === Number(item?.type))?.label || '-' |
| | | return [fenceStrategyDateTypeOptions.find(option => option.value === Number(item?.type))?.label || '-'] |
| | | } |
| | | |
| | | function getFenceStrategyTypeText(item: Record<string, any>) { |
| | | return getFenceStrategyTypeLabels(item).join('\n') |
| | | } |
| | | |
| | | function normalizeFenceStrategyWeekFilter(value: Array<number | string> | null | undefined) { |
| | |
| | | } |
| | | |
| | | :deep(.strategy-label) { |
| | | min-width:50px; |
| | | max-width:50%; |
| | | word-break: break-word; |
| | | white-space: pre-line; |
| | | color: rgba(23, 31, 38, 0.6); |
| | | } |
| | | |
| | |
| | | { label: '星期日', value: 7 }, |
| | | ] |
| | | |
| | | function getFenceStrategyTypeText(item: Record<string, any>) { |
| | | function getFenceStrategyTypeLabels(item: Record<string, any>) { |
| | | if (Number(item?.type) === 3) { |
| | | const labels = (Array.isArray(item?.typeStr) ? item.typeStr : []) |
| | | .map((value: unknown) => fenceStrategyWeekOptions.find(option => option.value === Number(value))?.label) |
| | | .filter(Boolean) |
| | | return labels.length ? labels.join('、') : '-' |
| | | return labels.length ? labels : ['-'] |
| | | } |
| | | return fenceStrategyDateTypeOptions.find(option => option.value === Number(item?.type))?.label || '-' |
| | | return [fenceStrategyDateTypeOptions.find(option => option.value === Number(item?.type))?.label || '-'] |
| | | } |
| | | |
| | | function getFenceStrategyTypeText(item: Record<string, any>) { |
| | | return getFenceStrategyTypeLabels(item).join('\n') |
| | | } |
| | | |
| | | function normalizeFenceStrategyWeekFilter(value: Array<number | string> | null | undefined) { |
| | |
| | | } |
| | | |
| | | :deep(.strategy-label) { |
| | | min-width:50px; |
| | | max-width:50%; |
| | | word-break: break-word; |
| | | white-space: pre-line; |
| | | color: rgba(23, 31, 38, 0.6); |
| | | } |
| | | |
| | |
| | | if (value === null || value === undefined) return true |
| | | const payAmount = Number(formModel.value.payAmount) |
| | | if (!isNaN(payAmount) && value > maxDiscountAmount.value) { |
| | | return new Error('优惠后支付金额必须大于1元') |
| | | return new Error('优惠后金额需大于1元') |
| | | } |
| | | return true |
| | | }, |
| | |
| | | </div> |
| | | <n-form-item :span="1" label="优惠金额" path="discountAmount" :first="true"> |
| | | <n-input-group> |
| | | <n-input-number v-model:value="formModel.discountAmount" :input-props="{ onKeydown: handleInputNumberKeyDown }" min="0" :max="maxDiscountAmount" :precision="2" :show-button="false" class="w-full" /> |
| | | <n-input-number v-model:value="formModel.discountAmount" :input-props="{ onKeydown: handleInputNumberKeyDown }" min="0" :precision="2" :show-button="false" class="w-full" /> |
| | | <n-input-group-label>元</n-input-group-label> |
| | | </n-input-group> |
| | | </n-form-item> |