feat(customers): enhance customer retrieval with filtering options

- Updated `findAll` method in `CustomersController` to accept filtering parameters.
- Implemented filtering logic in `CustomersService` to retrieve customers based on type and search query.
- Added `PosCustomerFilterDto` for query validation.
- Updated customer-related DTOs to make fields optional and added length validation where necessary.
- Modified customer-related logic in `sales-invoice-tsp.utils.ts` to accommodate new DTO structure.
- Added unique constraints to `customer_individuals` and `customer_legal` tables in the database migration.
- Removed commented-out code in `PosMiddleware` for cleaner codebase.
- Set default value for `is_default_guild_good` to false in `OwnedGoodsService`.
This commit is contained in:
2026-06-03 18:00:06 +03:30
parent b2d8fdc8a0
commit 5ce560ce97
19 changed files with 946 additions and 613 deletions
+52
View File
@@ -128,3 +128,55 @@ Typecheck before handoff:
```bash
pnpm -s tsc --noEmit
```
# INVESTIGATION LIMITS
For localized fixes:
- maximum 3 file reads before first edit
- maximum 1 related-file read unless required
- maximum 5 total file reads before implementation
Stop searching once the target service, controller, DTO, schema, or repository method is identified.
# TARGETED READ RULES
Do not read files larger than 300 lines unless required.
For known symbols:
1. rtk grep
2. rtk smart
3. read only the relevant section
Avoid opening entire services, modules, or controllers for localized changes.
Prefer symbol-level inspection.
# REVIEW MODE
During reviews:
- inspect changed files only
- avoid repository-wide searches
- avoid architecture exploration
- avoid reading unrelated modules
Review only code affected by the diff.
# HARD TOKEN LIMITS
For localized fixes:
- Never read more than 5 files before the first edit.
- Never read a file larger than 300 lines unless the target symbol cannot be isolated.
- Never open an entire service, controller, or module when a symbol-level read is possible.
- Never reread a file already summarized by `rtk smart` unless implementation details are required.
When a file exceeds 300 lines:
1. rtk grep
2. rtk smart
3. read only the required section
Avoid full-file reads.
@@ -0,0 +1,25 @@
/*
Warnings:
- A unique constraint covering the columns `[business_activity_id,postal_code,national_id]` on the table `customer_individuals` will be added. If there are existing duplicate values, this will fail.
- A unique constraint covering the columns `[business_activity_id,postal_code,registration_number]` on the table `customer_legal` will be added. If there are existing duplicate values, this will fail.
*/
-- AlterTable
ALTER TABLE `customer_individuals` MODIFY `first_name` VARCHAR(255) NULL,
MODIFY `last_name` VARCHAR(255) NULL,
MODIFY `national_id` CHAR(10) NULL,
MODIFY `mobile_number` CHAR(15) NULL,
MODIFY `postal_code` CHAR(10) NULL,
MODIFY `economic_code` CHAR(14) NULL;
-- AlterTable
ALTER TABLE `customer_legal` MODIFY `name` VARCHAR(255) NULL,
MODIFY `economic_code` CHAR(11) NULL,
MODIFY `postal_code` CHAR(10) NULL;
-- CreateIndex
CREATE UNIQUE INDEX `customer_individuals_business_activity_id_postal_code_nation_key` ON `customer_individuals`(`business_activity_id`, `postal_code`, `national_id`);
-- CreateIndex
CREATE UNIQUE INDEX `customer_legal_business_activity_id_postal_code_registration_key` ON `customer_legal`(`business_activity_id`, `postal_code`, `registration_number`);
+11 -9
View File
@@ -13,33 +13,35 @@ model Customer {
}
model CustomerIndividual {
first_name String @db.VarChar(255)
last_name String @db.VarChar(255)
national_id String @db.Char(10)
mobile_number String @db.Char(15)
postal_code String @db.Char(10)
economic_code String? @db.Char(10)
first_name String? @db.VarChar(255)
last_name String? @db.VarChar(255)
national_id String? @db.Char(10)
mobile_number String? @db.Char(15)
postal_code String? @db.Char(10)
economic_code String? @db.Char(14)
customer_id String @id
business_activity_id String
business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])
customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)
@@unique([business_activity_id, national_id])
@@unique([business_activity_id, postal_code, national_id])
@@index([business_activity_id])
@@map("customer_individuals")
}
model CustomerLegal {
name String @db.VarChar(255)
economic_code String @db.Char(10)
name String? @db.VarChar(255)
economic_code String? @db.Char(11)
registration_number String? @db.Char(20)
postal_code String @db.Char(10)
postal_code String? @db.Char(10)
customer_id String @id
business_activity_id String
business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])
customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)
@@unique([business_activity_id, economic_code])
@@unique([business_activity_id, postal_code, registration_number])
@@index([business_activity_id])
@@map("customer_legal")
}
+3
View File
@@ -21,6 +21,8 @@ export const summarySelect: SalesInvoiceSelect = {
last_name: true,
mobile_number: true,
national_id: true,
economic_code: true,
postal_code: true,
},
},
legal: {
@@ -28,6 +30,7 @@ export const summarySelect: SalesInvoiceSelect = {
name: true,
economic_code: true,
registration_number: true,
postal_code: true,
},
},
},
@@ -214,84 +214,126 @@ export class SharedSaleInvoiceCreateService {
data: SharedCreateSalesInvoiceDto,
businessId: string,
) {
if (data.customer_id) {
return data.customer_id
const { customer_id, customer_type, customer } = data
if (customer_id) {
return customer_id
}
if (
data.customer_type === CustomerType.INDIVIDUAL &&
data.customer?.customer_individual
) {
const { national_id, mobile_number, ...rest } = data.customer.customer_individual
if (customer_type === CustomerType.INDIVIDUAL && customer?.customer_individual) {
const { national_id, postal_code, economic_code, ...rest } =
customer.customer_individual
const customerIndividual = await tx.customerIndividual.upsert({
const foundedCustomer = await tx.customerIndividual.findFirst({
where: {
business_activity_id_national_id: {
business_activity_id: businessId,
national_id: data.customer.customer_individual.national_id,
},
},
create: {
...data.customer.customer_individual,
customer: {
create: {
type: CustomerType.INDIVIDUAL,
business_activity_id: businessId,
OR: [
{
economic_code,
},
},
business_activity: {
connect: {
id: businessId,
{
postal_code,
national_id,
},
},
},
update: { ...rest },
select: {
customer_id: true,
},
})
if (!customerIndividual) {
throw new BadRequestException('متاسفانه مشکلی در اطلاعات مشتری وجود دارد.')
}
return customerIndividual.customer_id
}
if (data.customer_type === CustomerType.LEGAL && data.customer?.customer_legal) {
const { registration_number, ...rest } = data.customer.customer_legal
const customerLegal = await tx.customerLegal.upsert({
where: {
business_activity_id_economic_code: {
business_activity_id: businessId,
economic_code: data.customer.customer_legal.economic_code,
},
},
create: {
...data.customer.customer_legal,
customer: {
create: {
type: CustomerType.LEGAL,
},
},
business_activity: {
connect: {
id: businessId,
},
},
},
update: {
...rest,
],
},
select: {
customer_id: true,
},
})
let customerIndividualId: string | undefined = foundedCustomer?.customer_id
if (!customerLegal) {
if (foundedCustomer) {
await tx.customerIndividual.update({
where: {
customer_id: foundedCustomer.customer_id,
},
data: {
...customer.customer_individual,
},
})
} else {
const createdCustomer = await tx.customerIndividual.create({
data: {
...customer.customer_individual,
customer: {
create: {
type: CustomerType.INDIVIDUAL,
},
},
business_activity: {
connect: {
id: businessId,
},
},
},
})
customerIndividualId = createdCustomer.customer_id
}
if (!customerIndividualId) {
throw new BadRequestException('متاسفانه مشکلی در اطلاعات مشتری وجود دارد.')
}
return customerLegal.customer_id
return customerIndividualId
}
if (customer_type === CustomerType.LEGAL && customer?.customer_legal) {
const { registration_number, economic_code, postal_code } = customer.customer_legal
const foundedCustomer = await tx.customerLegal.findFirst({
where: {
business_activity_id: businessId,
OR: [
{
economic_code,
},
{
postal_code,
registration_number,
},
],
},
select: {
customer_id: true,
},
})
let customerLegalId: string | undefined = foundedCustomer?.customer_id
if (foundedCustomer) {
await tx.customerLegal.update({
where: {
customer_id: foundedCustomer.customer_id,
},
data: {
...customer.customer_legal,
},
})
} else {
const createdCustomer = await tx.customerLegal.create({
data: {
...customer.customer_legal,
customer: {
create: {
type: CustomerType.LEGAL,
},
},
business_activity: {
connect: {
id: businessId,
},
},
},
})
customerLegalId = createdCustomer.customer_id
}
if (!customerLegalId) {
throw new BadRequestException('متاسفانه مشکلی در اطلاعات مشتری وجود دارد.')
}
return customerLegalId
}
return null
File diff suppressed because one or more lines are too long
@@ -4094,8 +4094,6 @@ export const SalesInvoiceScalarFieldEnum = {
id: 'id',
code: 'code',
total_amount: 'total_amount',
tax_amount: 'tax_amount',
discount_amount: 'discount_amount',
invoice_number: 'invoice_number',
invoice_date: 'invoice_date',
type: 'type',
@@ -4109,7 +4107,9 @@ export const SalesInvoiceScalarFieldEnum = {
customer_id: 'customer_id',
consumer_account_id: 'consumer_account_id',
pos_id: 'pos_id',
settlement_type: 'settlement_type'
settlement_type: 'settlement_type',
discount_amount: 'discount_amount',
tax_amount: 'tax_amount'
} as const
export type SalesInvoiceScalarFieldEnum = (typeof SalesInvoiceScalarFieldEnum)[keyof typeof SalesInvoiceScalarFieldEnum]
@@ -4125,14 +4125,15 @@ export const SalesInvoiceItemScalarFieldEnum = {
unit_price: 'unit_price',
total_amount: 'total_amount',
created_at: 'created_at',
discount_amount: 'discount_amount',
tax_amount: 'tax_amount',
discount: 'discount',
notes: 'notes',
payload: 'payload',
good_snapshot: 'good_snapshot',
invoice_id: 'invoice_id',
good_id: 'good_id',
service_id: 'service_id'
service_id: 'service_id',
discount_amount: 'discount_amount',
tax_amount: 'tax_amount'
} as const
export type SalesInvoiceItemScalarFieldEnum = (typeof SalesInvoiceItemScalarFieldEnum)[keyof typeof SalesInvoiceItemScalarFieldEnum]
@@ -619,8 +619,6 @@ export const SalesInvoiceScalarFieldEnum = {
id: 'id',
code: 'code',
total_amount: 'total_amount',
tax_amount: 'tax_amount',
discount_amount: 'discount_amount',
invoice_number: 'invoice_number',
invoice_date: 'invoice_date',
type: 'type',
@@ -634,7 +632,9 @@ export const SalesInvoiceScalarFieldEnum = {
customer_id: 'customer_id',
consumer_account_id: 'consumer_account_id',
pos_id: 'pos_id',
settlement_type: 'settlement_type'
settlement_type: 'settlement_type',
discount_amount: 'discount_amount',
tax_amount: 'tax_amount'
} as const
export type SalesInvoiceScalarFieldEnum = (typeof SalesInvoiceScalarFieldEnum)[keyof typeof SalesInvoiceScalarFieldEnum]
@@ -650,14 +650,15 @@ export const SalesInvoiceItemScalarFieldEnum = {
unit_price: 'unit_price',
total_amount: 'total_amount',
created_at: 'created_at',
discount_amount: 'discount_amount',
tax_amount: 'tax_amount',
discount: 'discount',
notes: 'notes',
payload: 'payload',
good_snapshot: 'good_snapshot',
invoice_id: 'invoice_id',
good_id: 'good_id',
service_id: 'service_id'
service_id: 'service_id',
discount_amount: 'discount_amount',
tax_amount: 'tax_amount'
} as const
export type SalesInvoiceItemScalarFieldEnum = (typeof SalesInvoiceItemScalarFieldEnum)[keyof typeof SalesInvoiceItemScalarFieldEnum]
+125 -125
View File
@@ -166,11 +166,11 @@ export type CustomerIndividualGroupByArgs<ExtArgs extends runtime.Types.Extensio
}
export type CustomerIndividualGroupByOutputType = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name: string | null
last_name: string | null
national_id: string | null
mobile_number: string | null
postal_code: string | null
economic_code: string | null
customer_id: string
business_activity_id: string
@@ -198,11 +198,11 @@ export type CustomerIndividualWhereInput = {
AND?: Prisma.CustomerIndividualWhereInput | Prisma.CustomerIndividualWhereInput[]
OR?: Prisma.CustomerIndividualWhereInput[]
NOT?: Prisma.CustomerIndividualWhereInput | Prisma.CustomerIndividualWhereInput[]
first_name?: Prisma.StringFilter<"CustomerIndividual"> | string
last_name?: Prisma.StringFilter<"CustomerIndividual"> | string
national_id?: Prisma.StringFilter<"CustomerIndividual"> | string
mobile_number?: Prisma.StringFilter<"CustomerIndividual"> | string
postal_code?: Prisma.StringFilter<"CustomerIndividual"> | string
first_name?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
last_name?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
national_id?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
mobile_number?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
postal_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
economic_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
customer_id?: Prisma.StringFilter<"CustomerIndividual"> | string
business_activity_id?: Prisma.StringFilter<"CustomerIndividual"> | string
@@ -211,11 +211,11 @@ export type CustomerIndividualWhereInput = {
}
export type CustomerIndividualOrderByWithRelationInput = {
first_name?: Prisma.SortOrder
last_name?: Prisma.SortOrder
national_id?: Prisma.SortOrder
mobile_number?: Prisma.SortOrder
postal_code?: Prisma.SortOrder
first_name?: Prisma.SortOrderInput | Prisma.SortOrder
last_name?: Prisma.SortOrderInput | Prisma.SortOrder
national_id?: Prisma.SortOrderInput | Prisma.SortOrder
mobile_number?: Prisma.SortOrderInput | Prisma.SortOrder
postal_code?: Prisma.SortOrderInput | Prisma.SortOrder
economic_code?: Prisma.SortOrderInput | Prisma.SortOrder
customer_id?: Prisma.SortOrder
business_activity_id?: Prisma.SortOrder
@@ -230,11 +230,11 @@ export type CustomerIndividualWhereUniqueInput = Prisma.AtLeast<{
AND?: Prisma.CustomerIndividualWhereInput | Prisma.CustomerIndividualWhereInput[]
OR?: Prisma.CustomerIndividualWhereInput[]
NOT?: Prisma.CustomerIndividualWhereInput | Prisma.CustomerIndividualWhereInput[]
first_name?: Prisma.StringFilter<"CustomerIndividual"> | string
last_name?: Prisma.StringFilter<"CustomerIndividual"> | string
national_id?: Prisma.StringFilter<"CustomerIndividual"> | string
mobile_number?: Prisma.StringFilter<"CustomerIndividual"> | string
postal_code?: Prisma.StringFilter<"CustomerIndividual"> | string
first_name?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
last_name?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
national_id?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
mobile_number?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
postal_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
economic_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
business_activity_id?: Prisma.StringFilter<"CustomerIndividual"> | string
business_activity?: Prisma.XOR<Prisma.BusinessActivityScalarRelationFilter, Prisma.BusinessActivityWhereInput>
@@ -242,11 +242,11 @@ export type CustomerIndividualWhereUniqueInput = Prisma.AtLeast<{
}, "customer_id" | "business_activity_id_national_id">
export type CustomerIndividualOrderByWithAggregationInput = {
first_name?: Prisma.SortOrder
last_name?: Prisma.SortOrder
national_id?: Prisma.SortOrder
mobile_number?: Prisma.SortOrder
postal_code?: Prisma.SortOrder
first_name?: Prisma.SortOrderInput | Prisma.SortOrder
last_name?: Prisma.SortOrderInput | Prisma.SortOrder
national_id?: Prisma.SortOrderInput | Prisma.SortOrder
mobile_number?: Prisma.SortOrderInput | Prisma.SortOrder
postal_code?: Prisma.SortOrderInput | Prisma.SortOrder
economic_code?: Prisma.SortOrderInput | Prisma.SortOrder
customer_id?: Prisma.SortOrder
business_activity_id?: Prisma.SortOrder
@@ -259,86 +259,86 @@ export type CustomerIndividualScalarWhereWithAggregatesInput = {
AND?: Prisma.CustomerIndividualScalarWhereWithAggregatesInput | Prisma.CustomerIndividualScalarWhereWithAggregatesInput[]
OR?: Prisma.CustomerIndividualScalarWhereWithAggregatesInput[]
NOT?: Prisma.CustomerIndividualScalarWhereWithAggregatesInput | Prisma.CustomerIndividualScalarWhereWithAggregatesInput[]
first_name?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
last_name?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
national_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
mobile_number?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
postal_code?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
first_name?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null
last_name?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null
national_id?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null
mobile_number?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null
postal_code?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null
economic_code?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null
customer_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
business_activity_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string
}
export type CustomerIndividualCreateInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_individualsInput
customer: Prisma.CustomerCreateNestedOneWithoutIndividualInput
}
export type CustomerIndividualUncheckedCreateInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
customer_id: string
business_activity_id: string
}
export type CustomerIndividualUpdateInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_individualsNestedInput
customer?: Prisma.CustomerUpdateOneRequiredWithoutIndividualNestedInput
}
export type CustomerIndividualUncheckedUpdateInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type CustomerIndividualCreateManyInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
customer_id: string
business_activity_id: string
}
export type CustomerIndividualUpdateManyMutationInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
}
export type CustomerIndividualUncheckedUpdateManyInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string
@@ -478,21 +478,21 @@ export type CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput = {
}
export type CustomerIndividualCreateWithoutBusiness_activityInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
customer: Prisma.CustomerCreateNestedOneWithoutIndividualInput
}
export type CustomerIndividualUncheckedCreateWithoutBusiness_activityInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
customer_id: string
}
@@ -527,32 +527,32 @@ export type CustomerIndividualScalarWhereInput = {
AND?: Prisma.CustomerIndividualScalarWhereInput | Prisma.CustomerIndividualScalarWhereInput[]
OR?: Prisma.CustomerIndividualScalarWhereInput[]
NOT?: Prisma.CustomerIndividualScalarWhereInput | Prisma.CustomerIndividualScalarWhereInput[]
first_name?: Prisma.StringFilter<"CustomerIndividual"> | string
last_name?: Prisma.StringFilter<"CustomerIndividual"> | string
national_id?: Prisma.StringFilter<"CustomerIndividual"> | string
mobile_number?: Prisma.StringFilter<"CustomerIndividual"> | string
postal_code?: Prisma.StringFilter<"CustomerIndividual"> | string
first_name?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
last_name?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
national_id?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
mobile_number?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
postal_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
economic_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null
customer_id?: Prisma.StringFilter<"CustomerIndividual"> | string
business_activity_id?: Prisma.StringFilter<"CustomerIndividual"> | string
}
export type CustomerIndividualCreateWithoutCustomerInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_individualsInput
}
export type CustomerIndividualUncheckedCreateWithoutCustomerInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
business_activity_id: string
}
@@ -574,61 +574,61 @@ export type CustomerIndividualUpdateToOneWithWhereWithoutCustomerInput = {
}
export type CustomerIndividualUpdateWithoutCustomerInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_individualsNestedInput
}
export type CustomerIndividualUncheckedUpdateWithoutCustomerInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type CustomerIndividualCreateManyBusiness_activityInput = {
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name?: string | null
last_name?: string | null
national_id?: string | null
mobile_number?: string | null
postal_code?: string | null
economic_code?: string | null
customer_id: string
}
export type CustomerIndividualUpdateWithoutBusiness_activityInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer?: Prisma.CustomerUpdateOneRequiredWithoutIndividualNestedInput
}
export type CustomerIndividualUncheckedUpdateWithoutBusiness_activityInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityInput = {
first_name?: Prisma.StringFieldUpdateOperationsInput | string
last_name?: Prisma.StringFieldUpdateOperationsInput | string
national_id?: Prisma.StringFieldUpdateOperationsInput | string
mobile_number?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
national_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
mobile_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
@@ -674,11 +674,11 @@ export type $CustomerIndividualPayload<ExtArgs extends runtime.Types.Extensions.
customer: Prisma.$CustomerPayload<ExtArgs>
}
scalars: runtime.Types.Extensions.GetPayloadResult<{
first_name: string
last_name: string
national_id: string
mobile_number: string
postal_code: string
first_name: string | null
last_name: string | null
national_id: string | null
mobile_number: string | null
postal_code: string | null
economic_code: string | null
customer_id: string
business_activity_id: string
+75 -75
View File
@@ -154,10 +154,10 @@ export type CustomerLegalGroupByArgs<ExtArgs extends runtime.Types.Extensions.In
}
export type CustomerLegalGroupByOutputType = {
name: string
economic_code: string
name: string | null
economic_code: string | null
registration_number: string | null
postal_code: string
postal_code: string | null
customer_id: string
business_activity_id: string
_count: CustomerLegalCountAggregateOutputType | null
@@ -184,10 +184,10 @@ export type CustomerLegalWhereInput = {
AND?: Prisma.CustomerLegalWhereInput | Prisma.CustomerLegalWhereInput[]
OR?: Prisma.CustomerLegalWhereInput[]
NOT?: Prisma.CustomerLegalWhereInput | Prisma.CustomerLegalWhereInput[]
name?: Prisma.StringFilter<"CustomerLegal"> | string
economic_code?: Prisma.StringFilter<"CustomerLegal"> | string
name?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
economic_code?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
registration_number?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
postal_code?: Prisma.StringFilter<"CustomerLegal"> | string
postal_code?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
customer_id?: Prisma.StringFilter<"CustomerLegal"> | string
business_activity_id?: Prisma.StringFilter<"CustomerLegal"> | string
business_activity?: Prisma.XOR<Prisma.BusinessActivityScalarRelationFilter, Prisma.BusinessActivityWhereInput>
@@ -195,10 +195,10 @@ export type CustomerLegalWhereInput = {
}
export type CustomerLegalOrderByWithRelationInput = {
name?: Prisma.SortOrder
economic_code?: Prisma.SortOrder
name?: Prisma.SortOrderInput | Prisma.SortOrder
economic_code?: Prisma.SortOrderInput | Prisma.SortOrder
registration_number?: Prisma.SortOrderInput | Prisma.SortOrder
postal_code?: Prisma.SortOrder
postal_code?: Prisma.SortOrderInput | Prisma.SortOrder
customer_id?: Prisma.SortOrder
business_activity_id?: Prisma.SortOrder
business_activity?: Prisma.BusinessActivityOrderByWithRelationInput
@@ -212,20 +212,20 @@ export type CustomerLegalWhereUniqueInput = Prisma.AtLeast<{
AND?: Prisma.CustomerLegalWhereInput | Prisma.CustomerLegalWhereInput[]
OR?: Prisma.CustomerLegalWhereInput[]
NOT?: Prisma.CustomerLegalWhereInput | Prisma.CustomerLegalWhereInput[]
name?: Prisma.StringFilter<"CustomerLegal"> | string
economic_code?: Prisma.StringFilter<"CustomerLegal"> | string
name?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
economic_code?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
registration_number?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
postal_code?: Prisma.StringFilter<"CustomerLegal"> | string
postal_code?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
business_activity_id?: Prisma.StringFilter<"CustomerLegal"> | string
business_activity?: Prisma.XOR<Prisma.BusinessActivityScalarRelationFilter, Prisma.BusinessActivityWhereInput>
customer?: Prisma.XOR<Prisma.CustomerScalarRelationFilter, Prisma.CustomerWhereInput>
}, "customer_id" | "business_activity_id_economic_code">
export type CustomerLegalOrderByWithAggregationInput = {
name?: Prisma.SortOrder
economic_code?: Prisma.SortOrder
name?: Prisma.SortOrderInput | Prisma.SortOrder
economic_code?: Prisma.SortOrderInput | Prisma.SortOrder
registration_number?: Prisma.SortOrderInput | Prisma.SortOrder
postal_code?: Prisma.SortOrder
postal_code?: Prisma.SortOrderInput | Prisma.SortOrder
customer_id?: Prisma.SortOrder
business_activity_id?: Prisma.SortOrder
_count?: Prisma.CustomerLegalCountOrderByAggregateInput
@@ -237,71 +237,71 @@ export type CustomerLegalScalarWhereWithAggregatesInput = {
AND?: Prisma.CustomerLegalScalarWhereWithAggregatesInput | Prisma.CustomerLegalScalarWhereWithAggregatesInput[]
OR?: Prisma.CustomerLegalScalarWhereWithAggregatesInput[]
NOT?: Prisma.CustomerLegalScalarWhereWithAggregatesInput | Prisma.CustomerLegalScalarWhereWithAggregatesInput[]
name?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string
economic_code?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string
name?: Prisma.StringNullableWithAggregatesFilter<"CustomerLegal"> | string | null
economic_code?: Prisma.StringNullableWithAggregatesFilter<"CustomerLegal"> | string | null
registration_number?: Prisma.StringNullableWithAggregatesFilter<"CustomerLegal"> | string | null
postal_code?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string
postal_code?: Prisma.StringNullableWithAggregatesFilter<"CustomerLegal"> | string | null
customer_id?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string
business_activity_id?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string
}
export type CustomerLegalCreateInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_legalsInput
customer: Prisma.CustomerCreateNestedOneWithoutLegalInput
}
export type CustomerLegalUncheckedCreateInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
customer_id: string
business_activity_id: string
}
export type CustomerLegalUpdateInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_legalsNestedInput
customer?: Prisma.CustomerUpdateOneRequiredWithoutLegalNestedInput
}
export type CustomerLegalUncheckedUpdateInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type CustomerLegalCreateManyInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
customer_id: string
business_activity_id: string
}
export type CustomerLegalUpdateManyMutationInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
}
export type CustomerLegalUncheckedUpdateManyInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string
}
@@ -434,18 +434,18 @@ export type CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput = {
}
export type CustomerLegalCreateWithoutBusiness_activityInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
customer: Prisma.CustomerCreateNestedOneWithoutLegalInput
}
export type CustomerLegalUncheckedCreateWithoutBusiness_activityInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
customer_id: string
}
@@ -479,27 +479,27 @@ export type CustomerLegalScalarWhereInput = {
AND?: Prisma.CustomerLegalScalarWhereInput | Prisma.CustomerLegalScalarWhereInput[]
OR?: Prisma.CustomerLegalScalarWhereInput[]
NOT?: Prisma.CustomerLegalScalarWhereInput | Prisma.CustomerLegalScalarWhereInput[]
name?: Prisma.StringFilter<"CustomerLegal"> | string
economic_code?: Prisma.StringFilter<"CustomerLegal"> | string
name?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
economic_code?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
registration_number?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
postal_code?: Prisma.StringFilter<"CustomerLegal"> | string
postal_code?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null
customer_id?: Prisma.StringFilter<"CustomerLegal"> | string
business_activity_id?: Prisma.StringFilter<"CustomerLegal"> | string
}
export type CustomerLegalCreateWithoutCustomerInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_legalsInput
}
export type CustomerLegalUncheckedCreateWithoutCustomerInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
business_activity_id: string
}
@@ -520,50 +520,50 @@ export type CustomerLegalUpdateToOneWithWhereWithoutCustomerInput = {
}
export type CustomerLegalUpdateWithoutCustomerInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_legalsNestedInput
}
export type CustomerLegalUncheckedUpdateWithoutCustomerInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type CustomerLegalCreateManyBusiness_activityInput = {
name: string
economic_code: string
name?: string | null
economic_code?: string | null
registration_number?: string | null
postal_code: string
postal_code?: string | null
customer_id: string
}
export type CustomerLegalUpdateWithoutBusiness_activityInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer?: Prisma.CustomerUpdateOneRequiredWithoutLegalNestedInput
}
export type CustomerLegalUncheckedUpdateWithoutBusiness_activityInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
export type CustomerLegalUncheckedUpdateManyWithoutBusiness_activityInput = {
name?: Prisma.StringFieldUpdateOperationsInput | string
economic_code?: Prisma.StringFieldUpdateOperationsInput | string
name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
postal_code?: Prisma.StringFieldUpdateOperationsInput | string
postal_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
customer_id?: Prisma.StringFieldUpdateOperationsInput | string
}
@@ -604,10 +604,10 @@ export type $CustomerLegalPayload<ExtArgs extends runtime.Types.Extensions.Inter
customer: Prisma.$CustomerPayload<ExtArgs>
}
scalars: runtime.Types.Extensions.GetPayloadResult<{
name: string
economic_code: string
name: string | null
economic_code: string | null
registration_number: string | null
postal_code: string
postal_code: string | null
customer_id: string
business_activity_id: string
}, ExtArgs["result"]["customerLegal"]>
File diff suppressed because it is too large Load Diff
+142 -91
View File
@@ -31,6 +31,7 @@ export type SalesInvoiceItemAvgAggregateOutputType = {
sku_vat: runtime.Decimal | null
unit_price: runtime.Decimal | null
total_amount: runtime.Decimal | null
discount: runtime.Decimal | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
}
@@ -40,6 +41,7 @@ export type SalesInvoiceItemSumAggregateOutputType = {
sku_vat: runtime.Decimal | null
unit_price: runtime.Decimal | null
total_amount: runtime.Decimal | null
discount: runtime.Decimal | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
}
@@ -54,12 +56,13 @@ export type SalesInvoiceItemMinAggregateOutputType = {
unit_price: runtime.Decimal | null
total_amount: runtime.Decimal | null
created_at: Date | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
discount: runtime.Decimal | null
notes: string | null
invoice_id: string | null
good_id: string | null
service_id: string | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
}
export type SalesInvoiceItemMaxAggregateOutputType = {
@@ -72,12 +75,13 @@ export type SalesInvoiceItemMaxAggregateOutputType = {
unit_price: runtime.Decimal | null
total_amount: runtime.Decimal | null
created_at: Date | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
discount: runtime.Decimal | null
notes: string | null
invoice_id: string | null
good_id: string | null
service_id: string | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
}
export type SalesInvoiceItemCountAggregateOutputType = {
@@ -90,14 +94,15 @@ export type SalesInvoiceItemCountAggregateOutputType = {
unit_price: number
total_amount: number
created_at: number
discount_amount: number
tax_amount: number
discount: number
notes: number
payload: number
good_snapshot: number
invoice_id: number
good_id: number
service_id: number
discount_amount: number
tax_amount: number
_all: number
}
@@ -107,6 +112,7 @@ export type SalesInvoiceItemAvgAggregateInputType = {
sku_vat?: true
unit_price?: true
total_amount?: true
discount?: true
discount_amount?: true
tax_amount?: true
}
@@ -116,6 +122,7 @@ export type SalesInvoiceItemSumAggregateInputType = {
sku_vat?: true
unit_price?: true
total_amount?: true
discount?: true
discount_amount?: true
tax_amount?: true
}
@@ -130,12 +137,13 @@ export type SalesInvoiceItemMinAggregateInputType = {
unit_price?: true
total_amount?: true
created_at?: true
discount_amount?: true
tax_amount?: true
discount?: true
notes?: true
invoice_id?: true
good_id?: true
service_id?: true
discount_amount?: true
tax_amount?: true
}
export type SalesInvoiceItemMaxAggregateInputType = {
@@ -148,12 +156,13 @@ export type SalesInvoiceItemMaxAggregateInputType = {
unit_price?: true
total_amount?: true
created_at?: true
discount_amount?: true
tax_amount?: true
discount?: true
notes?: true
invoice_id?: true
good_id?: true
service_id?: true
discount_amount?: true
tax_amount?: true
}
export type SalesInvoiceItemCountAggregateInputType = {
@@ -166,14 +175,15 @@ export type SalesInvoiceItemCountAggregateInputType = {
unit_price?: true
total_amount?: true
created_at?: true
discount_amount?: true
tax_amount?: true
discount?: true
notes?: true
payload?: true
good_snapshot?: true
invoice_id?: true
good_id?: true
service_id?: true
discount_amount?: true
tax_amount?: true
_all?: true
}
@@ -273,14 +283,15 @@ export type SalesInvoiceItemGroupByOutputType = {
unit_price: runtime.Decimal
total_amount: runtime.Decimal
created_at: Date
discount_amount: runtime.Decimal
tax_amount: runtime.Decimal
discount: runtime.Decimal
notes: string | null
payload: runtime.JsonValue | null
good_snapshot: runtime.JsonValue
invoice_id: string
good_id: string
service_id: string | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
_count: SalesInvoiceItemCountAggregateOutputType | null
_avg: SalesInvoiceItemAvgAggregateOutputType | null
_sum: SalesInvoiceItemSumAggregateOutputType | null
@@ -316,14 +327,15 @@ export type SalesInvoiceItemWhereInput = {
unit_price?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFilter<"SalesInvoiceItem"> | Date | string
discount_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null
payload?: Prisma.JsonNullableFilter<"SalesInvoiceItem">
good_snapshot?: Prisma.JsonFilter<"SalesInvoiceItem">
invoice_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string
good_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string
service_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null
discount_amount?: Prisma.DecimalNullableFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.DecimalNullableFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
good?: Prisma.XOR<Prisma.GoodScalarRelationFilter, Prisma.GoodWhereInput>
invoice?: Prisma.XOR<Prisma.SalesInvoiceScalarRelationFilter, Prisma.SalesInvoiceWhereInput>
service?: Prisma.XOR<Prisma.ServiceNullableScalarRelationFilter, Prisma.ServiceWhereInput> | null
@@ -339,14 +351,15 @@ export type SalesInvoiceItemOrderByWithRelationInput = {
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
created_at?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
notes?: Prisma.SortOrderInput | Prisma.SortOrder
payload?: Prisma.SortOrderInput | Prisma.SortOrder
good_snapshot?: Prisma.SortOrder
invoice_id?: Prisma.SortOrder
good_id?: Prisma.SortOrder
service_id?: Prisma.SortOrderInput | Prisma.SortOrder
discount_amount?: Prisma.SortOrderInput | Prisma.SortOrder
tax_amount?: Prisma.SortOrderInput | Prisma.SortOrder
good?: Prisma.GoodOrderByWithRelationInput
invoice?: Prisma.SalesInvoiceOrderByWithRelationInput
service?: Prisma.ServiceOrderByWithRelationInput
@@ -366,14 +379,15 @@ export type SalesInvoiceItemWhereUniqueInput = Prisma.AtLeast<{
unit_price?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFilter<"SalesInvoiceItem"> | Date | string
discount_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null
payload?: Prisma.JsonNullableFilter<"SalesInvoiceItem">
good_snapshot?: Prisma.JsonFilter<"SalesInvoiceItem">
invoice_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string
good_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string
service_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null
discount_amount?: Prisma.DecimalNullableFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.DecimalNullableFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
good?: Prisma.XOR<Prisma.GoodScalarRelationFilter, Prisma.GoodWhereInput>
invoice?: Prisma.XOR<Prisma.SalesInvoiceScalarRelationFilter, Prisma.SalesInvoiceWhereInput>
service?: Prisma.XOR<Prisma.ServiceNullableScalarRelationFilter, Prisma.ServiceWhereInput> | null
@@ -389,14 +403,15 @@ export type SalesInvoiceItemOrderByWithAggregationInput = {
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
created_at?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
notes?: Prisma.SortOrderInput | Prisma.SortOrder
payload?: Prisma.SortOrderInput | Prisma.SortOrder
good_snapshot?: Prisma.SortOrder
invoice_id?: Prisma.SortOrder
good_id?: Prisma.SortOrder
service_id?: Prisma.SortOrderInput | Prisma.SortOrder
discount_amount?: Prisma.SortOrderInput | Prisma.SortOrder
tax_amount?: Prisma.SortOrderInput | Prisma.SortOrder
_count?: Prisma.SalesInvoiceItemCountOrderByAggregateInput
_avg?: Prisma.SalesInvoiceItemAvgOrderByAggregateInput
_max?: Prisma.SalesInvoiceItemMaxOrderByAggregateInput
@@ -417,14 +432,15 @@ export type SalesInvoiceItemScalarWhereWithAggregatesInput = {
unit_price?: Prisma.DecimalWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeWithAggregatesFilter<"SalesInvoiceItem"> | Date | string
discount_amount?: Prisma.DecimalWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.StringNullableWithAggregatesFilter<"SalesInvoiceItem"> | string | null
payload?: Prisma.JsonNullableWithAggregatesFilter<"SalesInvoiceItem">
good_snapshot?: Prisma.JsonWithAggregatesFilter<"SalesInvoiceItem">
invoice_id?: Prisma.StringWithAggregatesFilter<"SalesInvoiceItem"> | string
good_id?: Prisma.StringWithAggregatesFilter<"SalesInvoiceItem"> | string
service_id?: Prisma.StringNullableWithAggregatesFilter<"SalesInvoiceItem"> | string | null
discount_amount?: Prisma.DecimalNullableWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.DecimalNullableWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateInput = {
@@ -437,11 +453,12 @@ export type SalesInvoiceItemCreateInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
good: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput
invoice: Prisma.SalesInvoiceCreateNestedOneWithoutItemsInput
service?: Prisma.ServiceCreateNestedOneWithoutSales_invoice_itemsInput
@@ -457,14 +474,15 @@ export type SalesInvoiceItemUncheckedCreateInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id: string
good_id: string
service_id?: string | null
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUpdateInput = {
@@ -477,11 +495,12 @@ export type SalesInvoiceItemUpdateInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
good?: Prisma.GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput
invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput
service?: Prisma.ServiceUpdateOneWithoutSales_invoice_itemsNestedInput
@@ -497,14 +516,15 @@ export type SalesInvoiceItemUncheckedUpdateInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id?: Prisma.StringFieldUpdateOperationsInput | string
good_id?: Prisma.StringFieldUpdateOperationsInput | string
service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateManyInput = {
@@ -517,14 +537,15 @@ export type SalesInvoiceItemCreateManyInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id: string
good_id: string
service_id?: string | null
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUpdateManyMutationInput = {
@@ -537,11 +558,12 @@ export type SalesInvoiceItemUpdateManyMutationInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUncheckedUpdateManyInput = {
@@ -554,14 +576,15 @@ export type SalesInvoiceItemUncheckedUpdateManyInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id?: Prisma.StringFieldUpdateOperationsInput | string
good_id?: Prisma.StringFieldUpdateOperationsInput | string
service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemListRelationFilter = {
@@ -590,14 +613,15 @@ export type SalesInvoiceItemCountOrderByAggregateInput = {
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
created_at?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
notes?: Prisma.SortOrder
payload?: Prisma.SortOrder
good_snapshot?: Prisma.SortOrder
invoice_id?: Prisma.SortOrder
good_id?: Prisma.SortOrder
service_id?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
}
export type SalesInvoiceItemAvgOrderByAggregateInput = {
@@ -605,6 +629,7 @@ export type SalesInvoiceItemAvgOrderByAggregateInput = {
sku_vat?: Prisma.SortOrder
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
}
@@ -619,12 +644,13 @@ export type SalesInvoiceItemMaxOrderByAggregateInput = {
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
created_at?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
notes?: Prisma.SortOrder
invoice_id?: Prisma.SortOrder
good_id?: Prisma.SortOrder
service_id?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
}
export type SalesInvoiceItemMinOrderByAggregateInput = {
@@ -637,12 +663,13 @@ export type SalesInvoiceItemMinOrderByAggregateInput = {
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
created_at?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
notes?: Prisma.SortOrder
invoice_id?: Prisma.SortOrder
good_id?: Prisma.SortOrder
service_id?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
}
export type SalesInvoiceItemSumOrderByAggregateInput = {
@@ -650,6 +677,7 @@ export type SalesInvoiceItemSumOrderByAggregateInput = {
sku_vat?: Prisma.SortOrder
unit_price?: Prisma.SortOrder
total_amount?: Prisma.SortOrder
discount?: Prisma.SortOrder
discount_amount?: Prisma.SortOrder
tax_amount?: Prisma.SortOrder
}
@@ -790,11 +818,12 @@ export type SalesInvoiceItemCreateWithoutGoodInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
invoice: Prisma.SalesInvoiceCreateNestedOneWithoutItemsInput
service?: Prisma.ServiceCreateNestedOneWithoutSales_invoice_itemsInput
}
@@ -809,13 +838,14 @@ export type SalesInvoiceItemUncheckedCreateWithoutGoodInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id: string
service_id?: string | null
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateOrConnectWithoutGoodInput = {
@@ -857,14 +887,15 @@ export type SalesInvoiceItemScalarWhereInput = {
unit_price?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFilter<"SalesInvoiceItem"> | Date | string
discount_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null
payload?: Prisma.JsonNullableFilter<"SalesInvoiceItem">
good_snapshot?: Prisma.JsonFilter<"SalesInvoiceItem">
invoice_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string
good_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string
service_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null
discount_amount?: Prisma.DecimalNullableFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.DecimalNullableFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateWithoutInvoiceInput = {
@@ -877,11 +908,12 @@ export type SalesInvoiceItemCreateWithoutInvoiceInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
good: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput
service?: Prisma.ServiceCreateNestedOneWithoutSales_invoice_itemsInput
}
@@ -896,13 +928,14 @@ export type SalesInvoiceItemUncheckedCreateWithoutInvoiceInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
good_id: string
service_id?: string | null
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateOrConnectWithoutInvoiceInput = {
@@ -941,11 +974,12 @@ export type SalesInvoiceItemCreateWithoutServiceInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
good: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput
invoice: Prisma.SalesInvoiceCreateNestedOneWithoutItemsInput
}
@@ -960,13 +994,14 @@ export type SalesInvoiceItemUncheckedCreateWithoutServiceInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id: string
good_id: string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateOrConnectWithoutServiceInput = {
@@ -1005,13 +1040,14 @@ export type SalesInvoiceItemCreateManyGoodInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id: string
service_id?: string | null
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUpdateWithoutGoodInput = {
@@ -1024,11 +1060,12 @@ export type SalesInvoiceItemUpdateWithoutGoodInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput
service?: Prisma.ServiceUpdateOneWithoutSales_invoice_itemsNestedInput
}
@@ -1043,13 +1080,14 @@ export type SalesInvoiceItemUncheckedUpdateWithoutGoodInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id?: Prisma.StringFieldUpdateOperationsInput | string
service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUncheckedUpdateManyWithoutGoodInput = {
@@ -1062,13 +1100,14 @@ export type SalesInvoiceItemUncheckedUpdateManyWithoutGoodInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id?: Prisma.StringFieldUpdateOperationsInput | string
service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateManyInvoiceInput = {
@@ -1081,13 +1120,14 @@ export type SalesInvoiceItemCreateManyInvoiceInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
good_id: string
service_id?: string | null
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUpdateWithoutInvoiceInput = {
@@ -1100,11 +1140,12 @@ export type SalesInvoiceItemUpdateWithoutInvoiceInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
good?: Prisma.GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput
service?: Prisma.ServiceUpdateOneWithoutSales_invoice_itemsNestedInput
}
@@ -1119,13 +1160,14 @@ export type SalesInvoiceItemUncheckedUpdateWithoutInvoiceInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
good_id?: Prisma.StringFieldUpdateOperationsInput | string
service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceInput = {
@@ -1138,13 +1180,14 @@ export type SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
good_id?: Prisma.StringFieldUpdateOperationsInput | string
service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemCreateManyServiceInput = {
@@ -1157,13 +1200,14 @@ export type SalesInvoiceItemCreateManyServiceInput = {
unit_price?: runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Date | string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id: string
good_id: string
discount_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUpdateWithoutServiceInput = {
@@ -1176,11 +1220,12 @@ export type SalesInvoiceItemUpdateWithoutServiceInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
good?: Prisma.GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput
invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput
}
@@ -1195,13 +1240,14 @@ export type SalesInvoiceItemUncheckedUpdateWithoutServiceInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id?: Prisma.StringFieldUpdateOperationsInput | string
good_id?: Prisma.StringFieldUpdateOperationsInput | string
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
export type SalesInvoiceItemUncheckedUpdateManyWithoutServiceInput = {
@@ -1214,13 +1260,14 @@ export type SalesInvoiceItemUncheckedUpdateManyWithoutServiceInput = {
unit_price?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
discount_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
tax_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue
good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue
invoice_id?: Prisma.StringFieldUpdateOperationsInput | string
good_id?: Prisma.StringFieldUpdateOperationsInput | string
discount_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
tax_amount?: Prisma.NullableDecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string | null
}
@@ -1235,14 +1282,15 @@ export type SalesInvoiceItemSelect<ExtArgs extends runtime.Types.Extensions.Inte
unit_price?: boolean
total_amount?: boolean
created_at?: boolean
discount_amount?: boolean
tax_amount?: boolean
discount?: boolean
notes?: boolean
payload?: boolean
good_snapshot?: boolean
invoice_id?: boolean
good_id?: boolean
service_id?: boolean
discount_amount?: boolean
tax_amount?: boolean
good?: boolean | Prisma.GoodDefaultArgs<ExtArgs>
invoice?: boolean | Prisma.SalesInvoiceDefaultArgs<ExtArgs>
service?: boolean | Prisma.SalesInvoiceItem$serviceArgs<ExtArgs>
@@ -1260,17 +1308,18 @@ export type SalesInvoiceItemSelectScalar = {
unit_price?: boolean
total_amount?: boolean
created_at?: boolean
discount_amount?: boolean
tax_amount?: boolean
discount?: boolean
notes?: boolean
payload?: boolean
good_snapshot?: boolean
invoice_id?: boolean
good_id?: boolean
service_id?: boolean
discount_amount?: boolean
tax_amount?: boolean
}
export type SalesInvoiceItemOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "quantity" | "measure_unit_text" | "measure_unit_code" | "sku_code" | "sku_vat" | "unit_price" | "total_amount" | "created_at" | "discount_amount" | "tax_amount" | "notes" | "payload" | "good_snapshot" | "invoice_id" | "good_id" | "service_id", ExtArgs["result"]["salesInvoiceItem"]>
export type SalesInvoiceItemOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "quantity" | "measure_unit_text" | "measure_unit_code" | "sku_code" | "sku_vat" | "unit_price" | "total_amount" | "created_at" | "discount" | "notes" | "payload" | "good_snapshot" | "invoice_id" | "good_id" | "service_id" | "discount_amount" | "tax_amount", ExtArgs["result"]["salesInvoiceItem"]>
export type SalesInvoiceItemInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
good?: boolean | Prisma.GoodDefaultArgs<ExtArgs>
invoice?: boolean | Prisma.SalesInvoiceDefaultArgs<ExtArgs>
@@ -1294,14 +1343,15 @@ export type $SalesInvoiceItemPayload<ExtArgs extends runtime.Types.Extensions.In
unit_price: runtime.Decimal
total_amount: runtime.Decimal
created_at: Date
discount_amount: runtime.Decimal
tax_amount: runtime.Decimal
discount: runtime.Decimal
notes: string | null
payload: runtime.JsonValue | null
good_snapshot: runtime.JsonValue
invoice_id: string
good_id: string
service_id: string | null
discount_amount: runtime.Decimal | null
tax_amount: runtime.Decimal | null
}, ExtArgs["result"]["salesInvoiceItem"]>
composites: {}
}
@@ -1683,14 +1733,15 @@ export interface SalesInvoiceItemFieldRefs {
readonly unit_price: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
readonly total_amount: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
readonly created_at: Prisma.FieldRef<"SalesInvoiceItem", 'DateTime'>
readonly discount_amount: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
readonly tax_amount: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
readonly discount: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
readonly notes: Prisma.FieldRef<"SalesInvoiceItem", 'String'>
readonly payload: Prisma.FieldRef<"SalesInvoiceItem", 'Json'>
readonly good_snapshot: Prisma.FieldRef<"SalesInvoiceItem", 'Json'>
readonly invoice_id: Prisma.FieldRef<"SalesInvoiceItem", 'String'>
readonly good_id: Prisma.FieldRef<"SalesInvoiceItem", 'String'>
readonly service_id: Prisma.FieldRef<"SalesInvoiceItem", 'String'>
readonly discount_amount: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
readonly tax_amount: Prisma.FieldRef<"SalesInvoiceItem", 'Decimal'>
}
@@ -1,22 +1,25 @@
import { Body, Controller, Get, Param, Post } from '@nestjs/common'
import { PosInfo } from '@/common/decorators/posInfo.decorator'
import type { IPosPayload } from '@/common/models'
import { Controller, Get, Query } from '@nestjs/common'
import { CustomersService } from './customers.service'
import { PosCustomerFilterDto } from './dto/customer-filter.dto'
@Controller('pos/customers')
export class CustomersController {
constructor(private readonly customerService: CustomersService) {}
@Get()
findAll() {
return this.customerService.findAll()
findAll(@PosInfo() posInfo: IPosPayload, @Query() query: PosCustomerFilterDto) {
return this.customerService.findAll(posInfo, query)
}
@Get(':id')
findOne(@Param('id') id: string) {
return this.customerService.findOne(+id)
}
// @Get(':id')
// findOne(@Param('id') id: string) {
// return this.customerService.findOne(+id)
// }
@Post()
create(@Body() data: any) {
return this.customerService.create(data)
}
// @Post()
// create(@Body() data: any) {
// return this.customerService.create(data)
// }
}
+122 -3
View File
@@ -1,10 +1,129 @@
import { IPosPayload } from '@/common/models'
import { ResponseMapper } from '@/common/response/response-mapper'
import { CustomerType } from '@/generated/prisma/enums'
import { CustomerSelect, CustomerWhereInput } from '@/generated/prisma/models'
import { PrismaService } from '@/prisma/prisma.service'
import { Injectable } from '@nestjs/common'
import { PosCustomerFilterDto } from './dto/customer-filter.dto'
@Injectable()
export class CustomersService {
findAll() {
// TODO: Implement fetching all customers
return []
constructor(private prisma: PrismaService) {}
async findAll(posInfo: IPosPayload, query: PosCustomerFilterDto) {
const { type, q } = query
const where: CustomerWhereInput = {
type,
}
const select: CustomerSelect = {
id: true,
}
if (type === CustomerType.LEGAL) {
where.legal = {
business_activity_id: posInfo.business_id,
}
select.legal = {
select: {
name: true,
economic_code: true,
postal_code: true,
registration_number: true,
},
}
if (q) {
where.legal = {
...where.legal,
OR: [
{
name: {
contains: q,
},
},
{
economic_code: {
contains: q,
},
},
{
postal_code: {
contains: q,
},
},
{
registration_number: {
contains: q,
},
},
],
}
}
} else if (type === CustomerType.INDIVIDUAL) {
where.individual = {
business_activity_id: posInfo.business_id,
}
select.individual = {
select: {
first_name: true,
last_name: true,
economic_code: true,
postal_code: true,
mobile_number: true,
national_id: true,
},
}
if (q) {
where.individual = {
...where.individual,
OR: [
{
first_name: {
contains: q,
},
},
{
last_name: {
contains: q,
},
},
{
economic_code: {
contains: q,
},
},
{
postal_code: {
contains: q,
},
},
{
mobile_number: {
contains: q,
},
},
{
national_id: {
contains: q,
},
},
],
}
}
}
const customers = await this.prisma.customer.findMany({
where,
take: 20,
orderBy: {
created_at: 'desc',
},
select: {
id: true,
type: true,
created_at: true,
updated_at: true,
},
})
return ResponseMapper.list(customers)
}
findOne(id: number) {
@@ -0,0 +1,15 @@
import { ApiPropertyOptional } from '@nestjs/swagger'
import { IsEnum, IsOptional, IsString } from 'class-validator'
import { CustomerType } from 'generated/prisma/enums'
export class PosCustomerFilterDto {
@ApiPropertyOptional({ enum: CustomerType })
@IsOptional()
@IsEnum(CustomerType)
type: CustomerType
@ApiPropertyOptional()
@IsOptional()
@IsString()
q?: string
}
@@ -87,7 +87,7 @@ export class OwnedGoodsService {
return await tx.good.create({
data: {
...rest,
is_default_guild_good: true,
is_default_guild_good: false,
image_url,
sku: {
connect: {
-37
View File
@@ -103,43 +103,6 @@ export class PosMiddleware implements NestMiddleware {
return doForbidden()
}
// if (role !== ConsumerRole.OWNER) {
// const accountPermissions = await tx.permissionConsumer.findUnique({
// where: {
// consumer_account_id: account_id,
// },
// select: {
// pos_permissions: {
// select: {
// pos_id: true,
// },
// },
// business_permissions: {
// select: {
// business_id: true,
// },
// },
// complex_permissions: {
// select: {
// complex_id: true,
// },
// },
// },
// })
// if (
// !// accountPermissions?.business_permissions.some(
// // permission => permission.id,
// // ) ||
// // accountPermissions?.complex_permissions.some(
// // permission => permission.complex_id,
// // ) ||
// accountPermissions?.pos_permissions.some(permission => permission.pos_id)
// ) {
// return doForbidden()
// }
// }
req.posData = {
pos_id: posId,
complex_id: pos.complex.id,
+45 -18
View File
@@ -13,48 +13,77 @@ import {
IsObject,
IsOptional,
IsString,
Length,
Min,
ValidateNested,
} from 'class-validator'
export class CustomerUnknownInfoDto {
@ApiProperty({})
@ApiProperty()
@IsString()
@IsOptional()
name: string
name?: string
@ApiProperty({})
@ApiProperty()
@IsString()
@IsOptional()
economic_code: string
economic_code?: string
}
export class CustomerLegalInfoDto {
@ApiProperty({ required: true })
@ApiProperty()
@IsOptional()
@IsString()
name: string
name?: string
@ApiProperty({ required: true })
@ApiProperty()
@IsOptional()
@IsString()
economic_code: string
registration_number?: string
@ApiProperty()
@IsOptional()
@IsString()
postal_code?: string
@ApiProperty()
@IsOptional()
@IsString()
@Length(11)
economic_code?: string
}
export class CustomerIndividualInfoDto {
@ApiProperty({ required: true })
@ApiProperty()
@IsOptional()
@IsString()
first_name: string
first_name?: string
@ApiProperty({ required: true })
@ApiProperty()
@IsOptional()
@IsString()
last_name: string
last_name?: string
@ApiProperty({ required: true })
@ApiProperty()
@IsOptional()
@IsString()
national_id: string
national_id?: string
@ApiProperty({ required: true })
@ApiProperty()
@IsOptional()
@IsString()
mobile_number: string
mobile_number?: string
@ApiProperty()
@IsOptional()
@IsString()
postal_code?: string
@ApiProperty()
@IsOptional()
@IsString()
@Length(14)
economic_code?: string
}
export class CustomerInfoDto {
@@ -64,12 +93,10 @@ export class CustomerInfoDto {
@ApiProperty({})
@Type(() => CustomerLegalInfoDto)
@ValidateNested({ each: true })
legal_info?: CustomerLegalInfoDto
@ApiProperty({})
@Type(() => CustomerIndividualInfoDto)
@ValidateNested({ each: true })
individual_info?: CustomerIndividualInfoDto
@ApiProperty({})
@@ -1,6 +1,9 @@
import { SaleInvoiceTspAttemptsUpdateInput } from '@/generated/prisma/models'
import { PrismaService } from '@/prisma/prisma.service'
import { BadRequestException, NotFoundException } from '@nestjs/common'
import {
CustomerType,
} from '@/generated/prisma/enums'
import {
Prisma,
TspProviderRequestType,
@@ -288,11 +291,30 @@ export async function buildCorrectionPayload(
invoice.customer && invoice.customer.type !== 'UNKNOWN'
? {
type: invoice.customer.type,
legal_info: invoice.customer.legal ?? undefined,
individual_info: invoice.customer.individual ?? undefined,
legal_info: invoice.customer.legal
? {
name: invoice.customer.legal.name ?? undefined,
registration_number:
invoice.customer.legal.registration_number ?? undefined,
postal_code: invoice.customer.legal.postal_code ?? undefined,
economic_code: invoice.customer.legal.economic_code ?? undefined,
}
: undefined,
individual_info: invoice.customer.individual
? {
first_name: invoice.customer.individual.first_name ?? undefined,
last_name: invoice.customer.individual.last_name ?? undefined,
national_id: invoice.customer.individual.national_id ?? undefined,
mobile_number:
invoice.customer.individual.mobile_number ?? undefined,
postal_code: invoice.customer.individual.postal_code ?? undefined,
economic_code:
invoice.customer.individual.economic_code ?? undefined,
}
: undefined,
}
: {
type: 'UNKNOWN',
type: CustomerType.UNKNOWN,
unknown_info: {
name: unknown_customer?.name || '',
economic_code: unknown_customer?.economic_code || '',
@@ -384,20 +406,8 @@ export async function buildOriginalPayload(
customer: {
select: {
type: true,
individual: {
select: {
first_name: true,
last_name: true,
national_id: true,
mobile_number: true,
},
},
legal: {
select: {
name: true,
economic_code: true,
},
},
individual: true,
legal: true,
},
},
payments: {
@@ -460,14 +470,33 @@ export async function buildOriginalPayload(
},
})),
customer:
invoice.customer && invoice.customer.type !== 'UNKNOWN'
invoice.customer && invoice.customer.type !== CustomerType.UNKNOWN
? {
type: invoice.customer.type,
legal_info: invoice.customer.legal ?? undefined,
individual_info: invoice.customer.individual ?? undefined,
legal_info: invoice.customer.legal
? {
name: invoice.customer.legal.name ?? undefined,
registration_number:
invoice.customer.legal.registration_number ?? undefined,
postal_code: invoice.customer.legal.postal_code ?? undefined,
economic_code: invoice.customer.legal.economic_code ?? undefined,
}
: undefined,
individual_info: invoice.customer.individual
? {
first_name: invoice.customer.individual.first_name ?? undefined,
last_name: invoice.customer.individual.last_name ?? undefined,
national_id: invoice.customer.individual.national_id ?? undefined,
mobile_number:
invoice.customer.individual.mobile_number ?? undefined,
postal_code: invoice.customer.individual.postal_code ?? undefined,
economic_code:
invoice.customer.individual.economic_code ?? undefined,
}
: undefined,
}
: {
type: 'UNKNOWN',
type: CustomerType.UNKNOWN,
unknown_info: {
name: unknown_customer?.name || '',
economic_code: unknown_customer?.economic_code || '',