Added the backend code for completed task and also frontend is completed
This commit is contained in:
@@ -270,8 +270,22 @@ app.post("/api/delivery/create", async(req,res)=>{
|
||||
await newDelivery.save().then(()=>res.status(201).json({ message: "Delivery saved successfully", success: true })).catch((err)=>res.status(500).json({ error: err.message }));
|
||||
})
|
||||
|
||||
//TODO: Check create and read from frontend
|
||||
//TODO: Add another Field to DeliverySchema called "isCompleted: boolean" - remove the table from DB FIRST
|
||||
app.put("/api/delivery/update/:id", async(req, res)=> {
|
||||
const filter = { _id : req.params.id }
|
||||
const update = { delivery_status : req.body.delivery_status }
|
||||
console.log(update)
|
||||
if (!req.body.delivery_status) {
|
||||
res.status(404).send("Delivery status is required")
|
||||
}
|
||||
|
||||
const updateClient = await DeliveryModel.findOneAndUpdate(filter,update)
|
||||
|
||||
if (!updateClient) {
|
||||
res.send(404).send("Client not Found")
|
||||
}
|
||||
res.status(200).send("Delivery Type Updated")
|
||||
})
|
||||
|
||||
//TODO: FIx the file structure
|
||||
//TODO: delivery Update
|
||||
//TODO: delivery Delete
|
||||
|
||||
@@ -1,31 +1,4 @@
|
||||
<div class="container">
|
||||
<div class="client_list">
|
||||
<h1>Todays Task</h1>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Client Name</th>
|
||||
<th>Delivery Status</th>
|
||||
<th>Delivery Type</th>
|
||||
<th>Delivery Date</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr *ngFor="let client of allDeliveryTasks">
|
||||
<ng-container *ngIf="client.delivery_date === today && client.delivery_status !='Completed'">
|
||||
<td>{{client.client_name}}</td>
|
||||
<td>{{client.delivery_status}}</td>
|
||||
<td>{{client.delivery_type}}</td>
|
||||
<td>{{client.delivery_date }}</td>
|
||||
<td>
|
||||
<button (click)="completedTask()">Completed</button>
|
||||
</td>
|
||||
</ng-container>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="form-container">
|
||||
<form action="" #clientForm="ngForm" (ngSubmit)="addNewClient()">
|
||||
<label for="clientName">Client Name</label>
|
||||
@@ -53,6 +26,34 @@
|
||||
<button type="submit" [disabled]="clientForm.invalid">Add</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="client_list today-task">
|
||||
<h1>Todays Task</h1>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Client Name</th>
|
||||
<th>Delivery Status</th>
|
||||
<th>Delivery Type</th>
|
||||
<th>Delivery Date</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr *ngFor="let client of allDeliveryTasks">
|
||||
<ng-container *ngIf="client.delivery_date === today && client.delivery_status !='Completed'">
|
||||
<td>{{client.client_name}}</td>
|
||||
<td>{{client.delivery_status}}</td>
|
||||
<td>{{client.delivery_type}}</td>
|
||||
<td>{{client.delivery_date }}</td>
|
||||
<td>
|
||||
<button (click)="completedTask(client)">Completed</button>
|
||||
</td>
|
||||
</ng-container>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="pending-cotainer">
|
||||
<div class="client_list">
|
||||
<h1>Pending Task</h1>
|
||||
@@ -68,13 +69,13 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr *ngFor="let client of allDeliveryTasks">
|
||||
<ng-container *ngIf="client.delivery_date < today">
|
||||
<ng-container *ngIf="client.delivery_date < today && client.delivery_status !='Completed'">
|
||||
<td>{{client.client_name}}</td>
|
||||
<td>{{client.delivery_status}}</td>
|
||||
<td>{{client.delivery_type}}</td>
|
||||
<td>{{client.delivery_date }}</td>
|
||||
<td>
|
||||
<button (click)="completedTask()">Completed</button>
|
||||
<button (click)="completedTask(client)">Completed</button>
|
||||
</td>
|
||||
</ng-container>
|
||||
</tr>
|
||||
|
||||
@@ -52,17 +52,24 @@ export class ClientServiceComponent implements OnInit, OnDestroy {
|
||||
this.allDeliverySubscription.unsubscribe();
|
||||
}
|
||||
|
||||
completedTask() {
|
||||
|
||||
}
|
||||
|
||||
addNewClient() {
|
||||
this.clientDeliveryService.addNewClientToDB(this.newClient).subscribe(res=>{
|
||||
console.log(res);
|
||||
this.newClient = new DeliveryModel();
|
||||
completedTask(client: DeliveryModel): void {
|
||||
client.delivery_status = "Completed";
|
||||
//TODO11: When Completed is pressed send request to backend to change delivery Status to completed
|
||||
this.clientDeliveryService.updateStatus(client).subscribe(response=>{
|
||||
console.log(response)
|
||||
this.clientDeliveryService.allDelivery().subscribe(data=>{
|
||||
this.allDeliveryTasks = data;
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
addNewClient() {
|
||||
this.clientDeliveryService.addNewClientToDB(this.newClient).subscribe(response=>{
|
||||
console.log("response", response);
|
||||
this.newClient = new DeliveryModel();
|
||||
this.clientDeliveryService.allDelivery().subscribe(data=>{
|
||||
this.allDeliveryTasks = data;
|
||||
},error=>{console.log("error", error)})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
export class DeliveryModel {
|
||||
_id?: string;
|
||||
client_name!: string;
|
||||
// Termination, provision, Test
|
||||
delivery_type!: string;
|
||||
|
||||
@@ -20,4 +20,10 @@ export class ClientDeliveryService {
|
||||
addNewClientToDB(newClient: DeliveryModel){
|
||||
return this.httpClient.post("http://localhost:3000/api/delivery/create", newClient)
|
||||
}
|
||||
|
||||
updateStatus(newStatus: DeliveryModel) {
|
||||
return this.httpClient.put(`http://localhost:3000/api/delivery/update/${newStatus._id}`, newStatus, {responseType: 'text'})
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -132,3 +132,10 @@ export const service_links: navLink[] =[
|
||||
"url" : "https://s3.brilliant.com.bd/bucket-1-ee86738d/client-doc/friendship-diagram.html"
|
||||
}
|
||||
]
|
||||
|
||||
export const documents = [
|
||||
{
|
||||
"name": "Test",
|
||||
"url" : "Test"
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user