mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-19 21:06:06 +00:00
add member repository
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { IMemberSocketRepository } from 'src/app/core/chat/repository/member/member-socket-repository';
|
||||
import { z } from 'zod';
|
||||
|
||||
export const RemoveRoomMemberInputSchema = z.object({
|
||||
roomId: z.string(),
|
||||
members: z.number().array()
|
||||
})
|
||||
|
||||
export type RemoveRoomMemberInput = z.infer<typeof RemoveRoomMemberInputSchema>
|
||||
|
||||
|
||||
|
||||
export const RemoveRoomMemberOutputSchema = z.object({
|
||||
userPhoto: z.string().nullable(),
|
||||
wxFullName: z.string().optional(),
|
||||
wxUserId: z.number(),
|
||||
wxeMail: z.string(),
|
||||
}).array()
|
||||
|
||||
export type IRemoveRoomMemberOutput = z.infer<typeof RemoveRoomMemberOutputSchema>
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class MemberRemoveSocketUseCaseService {
|
||||
|
||||
constructor(
|
||||
private socketRepository: IMemberSocketRepository
|
||||
) { }
|
||||
|
||||
async execute(input: RemoveRoomMemberInput) {
|
||||
|
||||
return this.socketRepository.removeMember(input)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user