diff --git a/prisma/migrations/20240916040230_update_customer_fields/migration.sql b/prisma/migrations/20240916040230_update_customer_fields/migration.sql new file mode 100644 index 0000000..73cd9d1 --- /dev/null +++ b/prisma/migrations/20240916040230_update_customer_fields/migration.sql @@ -0,0 +1,33 @@ +/* + Warnings: + + - You are about to drop the column `businessTypeEN` on the `CustomerBranch` table. All the data in the column will be lost. + - You are about to drop the column `jobPositionEN` on the `CustomerBranch` table. All the data in the column will be lost. + - You are about to drop the column `saleEmployee` on the `CustomerBranch` table. All the data in the column will be lost. + - You are about to drop the column `workplace` on the `CustomerBranch` table. All the data in the column will be lost. + - You are about to drop the column `workplaceEN` on the `CustomerBranch` table. All the data in the column will be lost. + - Added the required column `agent` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + - Added the required column `contactTel` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + - Added the required column `employmentOfficeEN` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + - Added the required column `homeCode` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + - Added the required column `officeTel` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + - Added the required column `payDateEN` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + - Added the required column `wageRateText` to the `CustomerBranch` table without a default value. This is not possible if the table is not empty. + +*/ +-- AlterTable +ALTER TABLE "CustomerBranch" DROP COLUMN "businessTypeEN", +DROP COLUMN "jobPositionEN", +DROP COLUMN "saleEmployee", +DROP COLUMN "workplace", +DROP COLUMN "workplaceEN", +ADD COLUMN "agent" TEXT NOT NULL, +ADD COLUMN "authorizedName" TEXT, +ADD COLUMN "authorizedNameEN" TEXT, +ADD COLUMN "contactTel" TEXT NOT NULL, +ADD COLUMN "employmentOfficeEN" TEXT NOT NULL, +ADD COLUMN "homeCode" TEXT NOT NULL, +ADD COLUMN "officeTel" TEXT NOT NULL, +ADD COLUMN "payDateEN" TEXT NOT NULL, +ADD COLUMN "wageRateText" TEXT NOT NULL, +ALTER COLUMN "payDate" SET DATA TYPE TEXT; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index ab42f85..7843e1c 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -466,11 +466,15 @@ model CustomerBranch { registerNameEN String? registerDate DateTime? @db.Date authorizedCapital String? + authorizedName String? + authorizedNameEN String? - workplace String - workplaceEN String - address String - addressEN String + // NOTE: Address + homeCode String + employmentOffice String + employmentOfficeEN String + address String + addressEN String soi String? soiEN String? @@ -488,18 +492,21 @@ model CustomerBranch { subDistrict SubDistrict? @relation(fields: [subDistrictId], references: [id], onDelete: SetNull) subDistrictId String? + // NOTE: contact email String + contactTel String + officeTel String contactName String + agent String - employmentOffice String - businessType String - businessTypeEN String - jobPosition String - jobPositionEN String - jobDescription String - saleEmployee String - payDate DateTime @db.Date - wageRate Int + // NOTE: Business + businessType String + jobPosition String + jobDescription String + payDate String + payDateEN String + wageRate Int + wageRateText String status Status @default(CREATED) statusOrder Int @default(0) diff --git a/src/controllers/03-customer-branch-controller.ts b/src/controllers/03-customer-branch-controller.ts index f9487d0..a58df7a 100644 --- a/src/controllers/03-customer-branch-controller.ts +++ b/src/controllers/03-customer-branch-controller.ts @@ -71,14 +71,19 @@ export type CustomerBranchCreate = ( registerNameEN: string; registerDate: Date; authorizedCapital: string; + authorizedName: string; + authorizedNameEN: string; } ) & { customerId: string; + telephoneNo: string; + status?: Status; - workplace: string; - workplaceEN: string; + homeCode: string; + employmentOffice: string; + employmentOfficeEN: string; address: string; addressEN: string; soi?: string | null; @@ -89,18 +94,18 @@ export type CustomerBranchCreate = ( streetEN?: string | null; email: string; + contactTel: string; + officeTel: string; contactName: string; - telephoneNo: string; + agent: string; - employmentOffice: string; businessType: string; - businessTypeEN: string; jobPosition: string; - jobPositionEN: string; jobDescription: string; - saleEmployee: string; - payDate: Date; + payDate: string; + payDateEN: string; wageRate: number; + wageRateText: string; subDistrictId?: string | null; districtId?: string | null; @@ -119,16 +124,19 @@ export type CustomerBranchUpdate = ( registerNameEN?: string; registerDate?: Date; authorizedCapital?: string; + authorizedName: string; + authorizedNameEN: string; } ) & { customerId?: string; + telephoneNo: string; + status?: "ACTIVE" | "INACTIVE"; - workplace: string; - workplaceEN: string; - address: string; - addressEN: string; + homeCode?: string; + address?: string; + addressEN?: string; soi?: string | null; soiEN?: string | null; moo?: string | null; @@ -137,18 +145,18 @@ export type CustomerBranchUpdate = ( streetEN?: string | null; email?: string; + contactTel?: string; + officeTel?: string; contactName?: string; - telephoneNo?: string; + agent?: string; - employmentOffice?: string; businessType?: string; - businessTypeEN?: string; jobPosition?: string; - jobPositionEN?: string; jobDescription?: string; - saleEmployee?: string; - payDate?: Date; + payDate?: string; + payDateEN?: string; wageRate?: number; + wageRateText?: string; subDistrictId?: string | null; districtId?: string | null; diff --git a/src/controllers/03-customer-controller.ts b/src/controllers/03-customer-controller.ts index 996fe1e..b29f410 100644 --- a/src/controllers/03-customer-controller.ts +++ b/src/controllers/03-customer-controller.ts @@ -63,12 +63,19 @@ export type CustomerCreate = { registerNameEN: string; registerDate: Date; authorizedCapital: string; + authorizedName: string; + authorizedNameEN: string; } ) & { + customerId: string; + + telephoneNo: string; + status?: Status; - workplace: string; - workplaceEN: string; + homeCode: string; + employmentOffice: string; + employmentOfficeEN: string; address: string; addressEN: string; soi?: string | null; @@ -79,18 +86,18 @@ export type CustomerCreate = { streetEN?: string | null; email: string; + contactTel: string; + officeTel: string; contactName: string; - telephoneNo: string; + agent: string; - employmentOffice: string; businessType: string; - businessTypeEN: string; jobPosition: string; - jobPositionEN: string; jobDescription: string; - saleEmployee: string; - payDate: Date; + payDate: string; + payDateEN: string; wageRate: number; + wageRateText: string; subDistrictId?: string | null; districtId?: string | null; @@ -170,7 +177,7 @@ export class CustomerController extends Controller { district: true, subDistrict: true, }, - orderBy: { createdAt: "asc" }, + orderBy: [{ statusOrder: "asc" }, { createdAt: "asc" }], } : { include: {