fix(medusa): discount types across model, service and api (#1545)

This commit is contained in:
Kasper Fabricius Kristensen authored and GitHub committed 2022-05-22 12:18:37 +02:00
1 parent 4489b75f5a
commit 2f08167480
4 files changed
+17 -13

No files matched your search

@@ -126,16 +126,16 @@ export class AdminPostDiscountsDiscountReq {
@IsOptional() @IsOptional()
@IsGreaterThan("starts_at") @IsGreaterThan("starts_at")
@Type(() => Date) @Type(() => Date)
ends_at?: Date ends_at?: Date | null
@IsISO8601Duration() @IsISO8601Duration()
@IsOptional() @IsOptional()
valid_duration?: string valid_duration?: string | null
@IsNumber() @IsNumber()
@IsOptional() @IsOptional()
@IsPositive() @IsPositive()
usage_limit?: number usage_limit?: number | null
@IsArray() @IsArray()
@IsOptional() @IsOptional()
+6 -6
View File
@@ -10,7 +10,7 @@ import {
ManyToMany, ManyToMany,
ManyToOne, ManyToOne,
PrimaryColumn, PrimaryColumn,
UpdateDateColumn, UpdateDateColumn
} from "typeorm" } from "typeorm"
import { ulid } from "ulid" import { ulid } from "ulid"
import { DbAwareColumn, resolveDbType } from "../utils/db-aware-column" import { DbAwareColumn, resolveDbType } from "../utils/db-aware-column"
@@ -54,10 +54,10 @@ export class Discount {
starts_at: Date starts_at: Date
@Column({ type: resolveDbType("timestamptz"), nullable: true }) @Column({ type: resolveDbType("timestamptz"), nullable: true })
ends_at: Date ends_at: Date | null
@Column({ nullable: true }) @Column({ type: String, nullable: true })
valid_duration: string valid_duration: string | null
@ManyToMany(() => Region, { cascade: true }) @ManyToMany(() => Region, { cascade: true })
@JoinTable({ @JoinTable({
@@ -73,8 +73,8 @@ export class Discount {
}) })
regions: Region[] regions: Region[]
@Column({ nullable: true }) @Column({ type: Number, nullable: true })
usage_limit: number usage_limit: number | null
@Column({ default: 0 }) @Column({ default: 0 })
usage_count: number usage_count: number
+5 -1
View File
@@ -721,7 +721,11 @@ class DiscountService extends BaseService {
} }
hasExpired(discount: Discount): boolean { hasExpired(discount: Discount): boolean {
return discount.ends_at && isPast(discount.ends_at) if (!discount.ends_at) {
return false
}
return isPast(discount.ends_at)
} }
isDisabled(discount: Discount): boolean { isDisabled(discount: Discount): boolean {
+3 -3
View File
@@ -151,9 +151,9 @@ export type UpdateDiscountInput = {
is_dynamic?: boolean is_dynamic?: boolean
is_disabled?: boolean is_disabled?: boolean
starts_at?: Date starts_at?: Date
ends_at?: Date ends_at?: Date | null
valid_duration?: string valid_duration?: string | null
usage_limit?: number usage_limit?: number | null
regions?: string[] regions?: string[]
metadata?: Record<string, unknown> metadata?: Record<string, unknown>
} }