Skip to content

Commit dac0bdb

Browse files
authored
Merge pull request #84 from Together42/hotfix-rotation
hotfix: fix type error
2 parents 8179fe6 + a6e0514 commit dac0bdb

File tree

2 files changed

+20
-17
lines changed

2 files changed

+20
-17
lines changed

Diff for: src/rotation/rotations.controller.ts

+3-6
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {
66
Param,
77
Delete,
88
Patch,
9-
ValidationPipe,
109
Query,
1110
UseGuards,
1211
UnauthorizedException,
@@ -17,7 +16,6 @@ import { CreateRotationDto } from './dto/create-rotation.dto';
1716
import { UpdateRotationDto } from './dto/update-rotation.dto';
1817
import { RotationAttendeeEntity } from './entity/rotation-attendee.entity';
1918
import { GetUser } from 'src/decorator/user.decorator';
20-
import { FindRotationQueryDto } from './dto/find-rotation-query.dto';
2119
import { RemoveRotationQueryDto } from './dto/remove-rotation.dto';
2220
import { RotationEntity } from './entity/rotation.entity';
2321
import { JwtGuard } from 'src/auth/guard/jwt.guard';
@@ -43,8 +41,8 @@ import {
4341
} from 'src/common/dto/error-response.dto';
4442
import { FindTodayRotationDto } from './dto/find-today-rotation.dto';
4543
import { FindRegistrationDto } from './dto/find-registration.dto';
46-
import { FindAllRotationDto } from './dto/find-all-rotation.dto';
4744
import { MonthValidationPipe } from './pipe/month-validation.pipe';
45+
import { FindAllRotationDto } from './dto/find-all-rotation.dto';
4846

4947
@Controller('rotations')
5048
@ApiTags('rotations')
@@ -158,10 +156,9 @@ export class RotationsController {
158156
@ApiBadRequestResponse({ type: BadRequestExceptionBody })
159157
@ApiInternalServerErrorResponse({ type: InternalServerExceptionBody })
160158
findAllRotation(
161-
@Query(ValidationPipe)
162-
findRotationQueryDto: FindRotationQueryDto,
159+
@Query('year') year: number,
160+
@Query('month', new MonthValidationPipe()) month: number,
163161
): Promise<FindAllRotationDto[]> {
164-
const { month, year } = findRotationQueryDto
165162
return this.rotationsService.findAllRotation(year, month);
166163
}
167164

Diff for: src/rotation/rotations.service.ts

+17-11
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import { HolidayService } from 'src/holiday/holiday.service';
2121
import { createRotation } from './utils/rotation';
2222
import { FindTodayRotationDto } from './dto/find-today-rotation.dto';
2323
import { FindRegistrationDto } from './dto/find-registration.dto';
24+
import { FindAllRotationDto } from './dto/find-all-rotation.dto';
2425

2526
function getRotationCronTime() {
2627
if (process.env.NODE_ENV === 'production') {
@@ -225,18 +226,23 @@ export class RotationsService {
225226
}
226227

227228
const intraIdRecord = await this.userService.findOneById(userId);
228-
const modifiedRecord = {};
229+
230+
let modifiedRecord: FindRegistrationDto;
229231

230232
if (records.length == 0) {
231-
modifiedRecord['year'] = year;
232-
modifiedRecord['month'] = month;
233-
modifiedRecord['attendLimit'] = [];
234-
modifiedRecord['intraId'] = intraIdRecord.nickname;
233+
modifiedRecord = {
234+
year: year,
235+
month: month,
236+
attendLimit: JSON.parse(JSON.stringify([])),
237+
intraId: intraIdRecord.nickname,
238+
};
235239
} else {
236-
modifiedRecord['year'] = records[0].year;
237-
modifiedRecord['month'] = records[0].month;
238-
modifiedRecord['attendLimit'] = records[0].attendLimit;
239-
modifiedRecord['intraId'] = intraIdRecord.nickname;
240+
modifiedRecord = {
241+
year: records[0].year,
242+
month: records[0].month,
243+
attendLimit: records[0].attendLimit,
244+
intraId: intraIdRecord.nickname,
245+
};
240246
}
241247

242248
return modifiedRecord;
@@ -345,8 +351,8 @@ export class RotationsService {
345351
* 기본적으로는 모든 로테이션을 반환.
346352
* 만약 parameter로 month와 year가 들어오면, 해당 스코프에 맞는 레코드를 반환.
347353
*/
348-
async findAllRotation(year?: number, month?: number): Promise<Partial<RotationEntity>[]> {
349-
let records: Promise<Partial<RotationEntity>[]>;
354+
async findAllRotation(year?: number, month?: number): Promise<FindAllRotationDto[]> {
355+
let records: Promise<RotationEntity[]>;
350356

351357
if (year && month) {
352358
records = this.rotationRepository.find({

0 commit comments

Comments
 (0)