@@ -12,7 +12,7 @@ import {
1212 UnauthorizedActionException ,
1313 UserNotFoundException ,
1414} from '../common/exceptions' ;
15- import { CreatePollDto , DeletePollDto , GetPollsDto } from './Poll.dto' ;
15+ import { CreatePollDto , GetPollsDto } from './Poll.dto' ;
1616
1717@Injectable ( )
1818export class PollService {
@@ -51,17 +51,26 @@ export class PollService {
5151 return searchResults . map ( ( result ) => result . pollId ) ;
5252 }
5353
54- async createPoll ( createPollDto : CreatePollDto ) {
54+ async createPoll ( createPollDto : CreatePollDto , worldID : string ) {
5555 const user = await this . databaseService . user . findUnique ( {
56- where : { worldID : createPollDto . worldID } ,
56+ where : { worldID } ,
5757 } ) ;
5858 if ( ! user ) {
5959 throw new UserNotFoundException ( ) ;
6060 }
6161 const startDate = new Date ( createPollDto . startDate ) ;
62+ // temporary fix by adding 1min for tiny delay in time from receiving the request
63+ const checkDate = new Date ( startDate . getTime ( ) + 60000 ) ;
6264 const endDate = new Date ( createPollDto . endDate ) ;
6365 const now = new Date ( ) ;
64- if ( startDate < now ) {
66+
67+ console . log ( 'date' , {
68+ checkDate,
69+ startDate,
70+ now,
71+ } ) ;
72+
73+ if ( checkDate < now ) {
6574 throw new BadRequestException ( 'Start date cannot be in the past' ) ;
6675 }
6776 if ( endDate <= startDate ) {
@@ -97,7 +106,7 @@ export class PollService {
97106 } ) ;
98107 }
99108
100- async getPolls ( query : GetPollsDto ) {
109+ async getPolls ( query : GetPollsDto , worldID : string ) {
101110 const {
102111 page = 1 ,
103112 limit = 10 ,
@@ -122,9 +131,9 @@ export class PollService {
122131 filters . OR = [ { startDate : { gt : now } } , { endDate : { lte : now } } ] ;
123132 }
124133
125- if ( ( userCreated || userVoted ) && query . worldID ) {
134+ if ( ( userCreated || userVoted ) && worldID ) {
126135 const user = await this . databaseService . user . findUnique ( {
127- where : { worldID : query . worldID } ,
136+ where : { worldID } ,
128137 select : { id : true } ,
129138 } ) ;
130139
@@ -178,6 +187,9 @@ export class PollService {
178187 const [ polls , total ] = await this . databaseService . $transaction ( [
179188 this . databaseService . poll . findMany ( {
180189 where : filters ,
190+ include : {
191+ author : true ,
192+ } ,
181193 orderBy,
182194 skip,
183195 take : Number ( limit ) ,
@@ -208,9 +220,9 @@ export class PollService {
208220 return { poll, isActive, optionsTotalVotes, totalVotes } ;
209221 }
210222
211- async deletePoll ( pollId : number , query : DeletePollDto ) {
223+ async deletePoll ( pollId : number , worldID : string ) {
212224 const user = await this . databaseService . user . findUnique ( {
213- where : { worldID : query . worldID } ,
225+ where : { worldID } ,
214226 select : { id : true } ,
215227 } ) ;
216228 if ( ! user ) {
0 commit comments