@@ -452,11 +452,12 @@ export class QuestRepository {
452452 } > | null ;
453453 } ) : Promise < typeof quests . $inferSelect > {
454454 try {
455- const [ quest ] = await this . db
455+ const result = await this . db
456456 . insert ( quests )
457457 . values ( data )
458458 . returning ( ) ;
459459
460+ const quest = Array . isArray ( result ) ? result [ 0 ] : result ;
460461 if ( ! quest ) {
461462 throw new Error ( 'Не удалось создать квест' ) ;
462463 }
@@ -488,7 +489,7 @@ export class QuestRepository {
488489 data : Partial < typeof quests . $inferInsert > ,
489490 ) : Promise < typeof quests . $inferSelect | undefined > {
490491 try {
491- const [ quest ] = await this . db
492+ const result = await this . db
492493 . update ( quests )
493494 . set ( { ...data , updatedAt : new Date ( ) } )
494495 . where ( and (
@@ -497,6 +498,7 @@ export class QuestRepository {
497498 ) )
498499 . returning ( ) ;
499500
501+ const quest = Array . isArray ( result ) ? result [ 0 ] : result ;
500502 return quest ;
501503 } catch ( error : any ) {
502504 this . logger . error ( `Ошибка в update для квеста ID ${ id } :` , error ) ;
@@ -527,7 +529,7 @@ export class QuestRepository {
527529 */
528530 async softDelete ( id : number ) : Promise < typeof quests . $inferSelect | undefined > {
529531 try {
530- const [ quest ] = await this . db
532+ const result = await this . db
531533 . update ( quests )
532534 . set ( { recordStatus : 'DELETED' , updatedAt : new Date ( ) } )
533535 . where ( and (
@@ -536,6 +538,7 @@ export class QuestRepository {
536538 ) )
537539 . returning ( ) ;
538540
541+ const quest = Array . isArray ( result ) ? result [ 0 ] : result ;
539542 return quest ;
540543 } catch ( error : any ) {
541544 this . logger . error ( `Ошибка в softDelete для квеста ID ${ id } :` , error ) ;
@@ -650,7 +653,7 @@ export class QuestRepository {
650653 */
651654 async createUserQuest ( userId : number , questId : number , status : 'in_progress' | 'completed' | 'failed' = 'in_progress' ) : Promise < typeof userQuests . $inferSelect > {
652655 try {
653- const [ userQuest ] = await this . db
656+ const result = await this . db
654657 . insert ( userQuests )
655658 . values ( {
656659 userId,
@@ -659,6 +662,7 @@ export class QuestRepository {
659662 } )
660663 . returning ( ) ;
661664
665+ const userQuest = Array . isArray ( result ) ? result [ 0 ] : result ;
662666 if ( ! userQuest ) {
663667 throw new Error ( 'Не удалось создать связь пользователь-квест' ) ;
664668 }
@@ -678,12 +682,13 @@ export class QuestRepository {
678682 data : Partial < typeof userQuests . $inferInsert > ,
679683 ) : Promise < typeof userQuests . $inferSelect | undefined > {
680684 try {
681- const [ userQuest ] = await this . db
685+ const result = await this . db
682686 . update ( userQuests )
683687 . set ( data )
684688 . where ( eq ( userQuests . id , userQuestId ) )
685689 . returning ( ) ;
686690
691+ const userQuest = Array . isArray ( result ) ? result [ 0 ] : result ;
687692 return userQuest ;
688693 } catch ( error : any ) {
689694 this . logger . error ( `Ошибка в updateUserQuest для связи ID ${ userQuestId } :` , error ) ;
@@ -696,11 +701,12 @@ export class QuestRepository {
696701 */
697702 async deleteUserQuest ( userQuestId : number ) : Promise < typeof userQuests . $inferSelect | undefined > {
698703 try {
699- const [ userQuest ] = await this . db
704+ const result = await this . db
700705 . delete ( userQuests )
701706 . where ( eq ( userQuests . id , userQuestId ) )
702707 . returning ( ) ;
703708
709+ const userQuest = Array . isArray ( result ) ? result [ 0 ] : result ;
704710 return userQuest ;
705711 } catch ( error : any ) {
706712 this . logger . error ( `Ошибка в deleteUserQuest для связи ID ${ userQuestId } :` , error ) ;
0 commit comments