-
Notifications
You must be signed in to change notification settings - Fork 10
/
job.ts
75 lines (65 loc) · 1.39 KB
/
job.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
interface job{
title:String,
category:String,
description:String,
projectType:String,
skills:String[],
experience:String,
duration:String,
paymentChoice:String,
budget:Number
client:"clientId",
submittedProposals:[Proposal],
contract: Contract
status:["listed","active","closed"]
}
interface Proposal {
freelancer:String,
coverLetter:String,
upload:String,
jobId:String,
status:["submitted","accepted"]
}
interface client{
}
interface freelancer{
hisProposals:[Proposal],
hisContract:[Contract]
// acceptedJobs: [job],
profileId:"id"
}
interface profile {
freelanceId : "id",
// ....
}
// get all proposals for freelancer
// get all proposals for job
interface Contract {
clientId:"req.id", //
jobId:"req.params",
proposalId:"req.body",
///.......
budget : Number,
paymentMethods:String
}
//>> when accept
//> job >> status >> active and change api for feed;
//>>create contract :{
// freelancerId:"req.body",
// clientId:"req.id", //
// jobId:"req.params",
// status: ["active","closed"]
// }
// >> proposal >> accepted true
// time
//end contract and review
// closed job
// status contract
// add review to profile
//
//notification (back ,front)
// getcontracts
// createdDate
// freelancer >> full name, email
// job>> category,title
// status >> ["open"]