diff --git a/src/common/repositories/CustomersRepository.ts b/src/common/repositories/CustomersRepository.ts index d9acaef5..57aaa67f 100644 --- a/src/common/repositories/CustomersRepository.ts +++ b/src/common/repositories/CustomersRepository.ts @@ -4,6 +4,13 @@ import { Service } from "typedi"; import { Customers, ECivility, ECustomerStatus, Prisma } from "@prisma/client"; import { Customer } from "le-coffre-resources/dist/SuperAdmin"; +type IExcludedCustomerVars = { + smsCode?: string; + smsCodeExpire?: Date; + passwordCode?: string; + passwordcodeExpire?: Date; + password?: string; +}; @Service() export default class CustomersRepository extends BaseRepository { constructor(private database: Database) { @@ -70,7 +77,7 @@ export default class CustomersRepository extends BaseRepository { /** * @description : Update data from a customer */ - public async update(uid: string, customer: Customer): Promise { + public async update(uid: string, customer: Customer, excludedVars?: IExcludedCustomerVars): Promise { const updateArgs: Prisma.CustomersUpdateArgs = { where: { uid: uid, @@ -88,13 +95,14 @@ export default class CustomersRepository extends BaseRepository { address: {}, }, }, - smsCode: customer.smsCode, - smsCodeExpire: customer.smsCodeExpire, - passwordCode: customer.passwordCode, - passwordcodeExpire: customer.passwordCodeExpire, - password: customer.password, + smsCode: excludedVars && excludedVars.smsCode, + smsCodeExpire: excludedVars && excludedVars.smsCodeExpire, + passwordCode: excludedVars && excludedVars.passwordCode, + passwordcodeExpire: excludedVars && excludedVars.passwordcodeExpire, + password: excludedVars && excludedVars.password, }, }; + if (customer.contact!.address) { updateArgs.data.contact!.update!.address!.update = { address: customer.contact!.address!.address, diff --git a/src/services/customer/CustomersService/CustomersService.ts b/src/services/customer/CustomersService/CustomersService.ts index 15e561fd..82eadc72 100644 --- a/src/services/customer/CustomersService/CustomersService.ts +++ b/src/services/customer/CustomersService/CustomersService.ts @@ -37,9 +37,11 @@ export default class CustomersService extends BaseService { customer.uid as string, Customer.hydrate({ ...customer, - smsCode: smsCode.toString(), - smsCodeExpire: new Date(now.getTime() + 5 * 60 * 1000), }), + { + smsCode: smsCode.toString(), + smsCodeExpire: new Date(now.getTime() + 5 * 60000), + }, ); } @@ -52,10 +54,10 @@ export default class CustomersService extends BaseService { customer.uid as string, Customer.hydrate({ ...customer, - password, - smsCode: null, - smsCodeExpire: null, }), + { + password, + }, ); } }