Skip to content

Commit e7f3474

Browse files
authored
fix(apply-jobpost): incorporate feedback (#168)
- remove 'submitted' status - add comments for 'rejected status'
1 parent 1bd4ffc commit e7f3474

File tree

3 files changed

+32
-6
lines changed

3 files changed

+32
-6
lines changed

Diff for: src/models/JobApplication.ts

+6-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,12 @@ const jobApplicationSchema = new mongoose.Schema({
2121
},
2222
status:{
2323
type:String,
24-
enum:['submitted','under-review','accepted','rejected'],
25-
default:'submitted'
24+
enum:['under-review','accepted','rejected'],
25+
default:'under-review'
26+
},
27+
comment: {
28+
type:String,
29+
required: false
2630
}
2731
},{timestamps:true})
2832

Diff for: src/resolvers/jobApplicationResolver.ts

+24-4
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ interface getOneFormData {
1818

1919
interface statusData {
2020
applicationId: string,
21-
status: string
21+
status: string,
22+
comment: string
2223
}
2324

2425
const formatDate = (date:Date) => {
@@ -114,6 +115,7 @@ export const jobApplicationResolver = {
114115
essay: application.essay,
115116
resume: application.resume,
116117
status: application.status,
118+
comment: application.comment,
117119
jobId: application.jobId,
118120
createdAt: formatDate(application.createdAt)
119121
}
@@ -175,10 +177,28 @@ export const jobApplicationResolver = {
175177
);
176178
}
177179

178-
const { status, applicationId } = input
179-
await JobApplication.findByIdAndUpdate(applicationId, {status})
180+
const { status, applicationId, comment } = input
181+
if(comment){
182+
await JobApplication.findByIdAndUpdate(applicationId, {status, comment})
183+
}else{
184+
await JobApplication.findByIdAndUpdate(applicationId, {status})
185+
}
186+
180187
const application = await JobApplication.findOne({_id:applicationId}).populate('userId').populate('jobId')
181-
return application
188+
if(!application){
189+
throw new Error('Application not found');
190+
}
191+
192+
return {
193+
_id: application._id,
194+
userId: application.userId,
195+
essay: application.essay,
196+
resume: application.resume,
197+
status: application.status,
198+
comment: application.comment,
199+
jobId: application.jobId,
200+
createdAt: formatDate(application.createdAt)
201+
}
182202
}
183203
},
184204
};

Diff for: src/schema/jobApplicationSchema.ts

+2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ export const jobApplicationTypeDefs = gql`
2323
essay: String!
2424
resume: String!
2525
status: String!
26+
comment: String
2627
createdAt: String!
2728
}
2829
@@ -39,6 +40,7 @@ export const jobApplicationTypeDefs = gql`
3940
input StatusInput {
4041
applicationId: ID!
4142
status: String!
43+
comment: String
4244
}
4345
4446
type checkIfUserAppliedOutput {

0 commit comments

Comments
 (0)