const getCompanyProduct = Effect.fn("getCompanyProduct")(function* (uuid: string) {
const mysql = yield* MySQLService
return yield* mysql.use((c) =>
c.companyProduct.findFirstOrThrow({
where: {
uuid,
status: {
code: SysStatusCode.ACTIVE,
},
},
select: {
id: true,
uuid: true,
},
}),
)
})
export class CompanyProductService extends Effect.Service<CompanyProductService>()(
"app/CompanyProductService",
{
effect: getCompanyProduct,
dependencies: [MySQLService.Default(mysql)],
},
) {}
const getCompanyProduct = Effect.fn("getCompanyProduct")(function* (uuid: string) {
const mysql = yield* MySQLService
return yield* mysql.use((c) =>
c.companyProduct.findFirstOrThrow({
where: {
uuid,
status: {
code: SysStatusCode.ACTIVE,
},
},
select: {
id: true,
uuid: true,
},
}),
)
})
export class CompanyProductService extends Effect.Service<CompanyProductService>()(
"app/CompanyProductService",
{
effect: getCompanyProduct,
dependencies: [MySQLService.Default(mysql)],
},
) {}