@@ -235,6 +235,47 @@ class ObjectInstanceController {
235235 }
236236 }
237237
238+ public async moveAllObjects ( request : Request , response : Response ) : Promise < void > {
239+ const session = this . memberService . decryptSession ( request , response ) ;
240+ if ( ! session ) return ;
241+ try {
242+ await this . objectInstanceService . moveAllObjects ( session . id ) ;
243+ response . status ( 200 ) . json ( { status : 'success' } ) ;
244+ } catch {
245+ response . status ( 400 ) . json ( { error : 'Error moving objects.' } ) ;
246+ }
247+ }
248+
249+ public async updateObjectOwner ( request : Request , response : Response ) : Promise < void > {
250+ const session = this . memberService . decryptSession ( request , response ) ;
251+ if ( ! session ) return ;
252+ try {
253+ const username = request . body . username ;
254+ const objects = request . body . id ;
255+ const userId = await this . memberService . getMemberId ( username ) ;
256+ if ( ! userId ) {
257+ throw new Error ( 'Username not found.' )
258+ }
259+ for ( const obj of objects ) {
260+ await this . objectInstanceService . updateObjectOwner ( obj , userId [ 0 ] . id ) ;
261+ }
262+ response . status ( 200 ) . json ( { status : 'success' } ) ;
263+ } catch ( error ) {
264+ response . status ( 400 ) . json ( { error : error } ) ;
265+ }
266+ }
267+
268+ public async seizedObjects ( request : Request , response : Response ) : Promise < void > {
269+ const session = this . memberService . decryptSession ( request , response ) ;
270+ if ( ! session ) return ;
271+ try {
272+ const seizedObjects = await this . objectInstanceService . seizedObjects ( ) ;
273+ response . status ( 200 ) . json ( { objects : seizedObjects } ) ;
274+ } catch {
275+ response . status ( 400 ) . json ( { error : 'Error moving objects.' } ) ;
276+ }
277+ }
278+
238279 public async pickUpObjectInstance ( request : Request , response : Response ) : Promise < void > {
239280 const session = this . memberService . decryptSession ( request , response ) ;
240281 if ( ! session ) return ;
0 commit comments