import { isNil } from 'lodash' import { Bioimpedance } from '../bioimpedance.model' import { Subscription } from '../subscription.model' import { BioimpedanceCreditReason } from '../types/bioimpendance-credit-reason.type' import { Credit, CreditAuthor } from './credit.model' export class BioimpedanceCredit extends Credit { bioimpedance_id?: string static createBy( this: { new (args?: any): T }, params: Partial & { objectModel?: Subscription | Bioimpedance author?: CreditAuthor }, ): T { const { objectModel, reason } = params const credit = this['createCreditBy'](params) if (!isNil(objectModel)) { if (reason === 'bioimpedance_use') credit.bioimpedance_id = objectModel.id if (reason === 'plan_subscription') credit.subscription_id = objectModel.id } return credit } }