@7365admin1/layer-common 3.0.17 → 3.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/components/DashboardMain.vue +54 -36
- package/composables/useVehicle.ts +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3547,10 +3547,10 @@ async function exportDashboard(format: "PDF" | "Word") {
|
|
|
3547
3547
|
}
|
|
3548
3548
|
|
|
3549
3549
|
if (isHygieneMode.value) {
|
|
3550
|
+
wordHtml += `<div class="section-title">${primaryListConfig.value.title}</div>`;
|
|
3551
|
+
wordHtml += `<table class="data-table">`;
|
|
3552
|
+
wordHtml += `<thead><tr><th>Task Title</th><th>Description / Subtitle</th><th>Assigned Staff</th><th>Time</th><th>Status</th></tr></thead><tbody>`;
|
|
3550
3553
|
if (taskScheduleItems.value.length > 0) {
|
|
3551
|
-
wordHtml += `<div class="section-title">${primaryListConfig.value.title}</div>`;
|
|
3552
|
-
wordHtml += `<table class="data-table">`;
|
|
3553
|
-
wordHtml += `<thead><tr><th>Task Title</th><th>Description / Subtitle</th><th>Assigned Staff</th><th>Time</th><th>Status</th></tr></thead><tbody>`;
|
|
3554
3554
|
taskScheduleItems.value.forEach((item) => {
|
|
3555
3555
|
wordHtml += `<tr>
|
|
3556
3556
|
<td><strong>${item.title}</strong></td>
|
|
@@ -3562,13 +3562,15 @@ async function exportDashboard(format: "PDF" | "Word") {
|
|
|
3562
3562
|
)}">${item.status || ""}</span></td>
|
|
3563
3563
|
</tr>`;
|
|
3564
3564
|
});
|
|
3565
|
-
|
|
3565
|
+
} else {
|
|
3566
|
+
wordHtml += `<tr><td colspan="5" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3566
3567
|
}
|
|
3568
|
+
wordHtml += `</tbody></table>`;
|
|
3567
3569
|
|
|
3570
|
+
wordHtml += `<div class="section-title">Staff's Total Attendance</div>`;
|
|
3571
|
+
wordHtml += `<table class="data-table">`;
|
|
3572
|
+
wordHtml += `<thead><tr><th>Staff Name</th><th>Role</th><th>Total Hours</th></tr></thead><tbody>`;
|
|
3568
3573
|
if (staffStatusItems.value.length > 0) {
|
|
3569
|
-
wordHtml += `<div class="section-title">Staff's Total Attendance</div>`;
|
|
3570
|
-
wordHtml += `<table class="data-table">`;
|
|
3571
|
-
wordHtml += `<thead><tr><th>Staff Name</th><th>Role</th><th>Total Hours</th></tr></thead><tbody>`;
|
|
3572
3574
|
staffStatusItems.value.forEach((item) => {
|
|
3573
3575
|
wordHtml += `<tr>
|
|
3574
3576
|
<td><strong>${item.name}</strong></td>
|
|
@@ -3576,69 +3578,79 @@ async function exportDashboard(format: "PDF" | "Word") {
|
|
|
3576
3578
|
<td>${item.totalHours || 0} hrs</td>
|
|
3577
3579
|
</tr>`;
|
|
3578
3580
|
});
|
|
3579
|
-
|
|
3581
|
+
} else {
|
|
3582
|
+
wordHtml += `<tr><td colspan="3" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3580
3583
|
}
|
|
3584
|
+
wordHtml += `</tbody></table>`;
|
|
3581
3585
|
}
|
|
3582
3586
|
|
|
3583
3587
|
if (isPropertyMode.value) {
|
|
3588
|
+
wordHtml += `<div class="section-title">Upcoming Events</div>`;
|
|
3589
|
+
wordHtml += `<table class="data-table">`;
|
|
3590
|
+
wordHtml += `<thead><tr><th>Event Title</th><th>Description / Subtitle</th></tr></thead><tbody>`;
|
|
3584
3591
|
if (upcomingEvents.value.length > 0) {
|
|
3585
|
-
wordHtml += `<div class="section-title">Upcoming Events</div>`;
|
|
3586
|
-
wordHtml += `<table class="data-table">`;
|
|
3587
|
-
wordHtml += `<thead><tr><th>Event Title</th><th>Description / Subtitle</th></tr></thead><tbody>`;
|
|
3588
3592
|
upcomingEvents.value.forEach((item) => {
|
|
3589
3593
|
wordHtml += `<tr>
|
|
3590
3594
|
<td><strong>${item.title}</strong></td>
|
|
3591
3595
|
<td>${item.subtitle || ""}</td>
|
|
3592
3596
|
</tr>`;
|
|
3593
3597
|
});
|
|
3594
|
-
|
|
3598
|
+
} else {
|
|
3599
|
+
wordHtml += `<tr><td colspan="2" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3595
3600
|
}
|
|
3601
|
+
wordHtml += `</tbody></table>`;
|
|
3596
3602
|
|
|
3603
|
+
wordHtml += `<div class="section-title">Today's Reminder</div>`;
|
|
3604
|
+
wordHtml += `<table class="data-table">`;
|
|
3605
|
+
wordHtml += `<thead><tr><th>Reminder</th><th>Details / Subtitle</th></tr></thead><tbody>`;
|
|
3597
3606
|
if (todayReminders.value.length > 0) {
|
|
3598
|
-
wordHtml += `<div class="section-title">Today's Reminder</div>`;
|
|
3599
|
-
wordHtml += `<table class="data-table">`;
|
|
3600
|
-
wordHtml += `<thead><tr><th>Reminder</th><th>Details / Subtitle</th></tr></thead><tbody>`;
|
|
3601
3607
|
todayReminders.value.forEach((item) => {
|
|
3602
3608
|
wordHtml += `<tr>
|
|
3603
3609
|
<td><strong>${item.title}</strong></td>
|
|
3604
3610
|
<td>${item.subtitle || ""}</td>
|
|
3605
3611
|
</tr>`;
|
|
3606
3612
|
});
|
|
3607
|
-
|
|
3613
|
+
} else {
|
|
3614
|
+
wordHtml += `<tr><td colspan="2" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3608
3615
|
}
|
|
3616
|
+
wordHtml += `</tbody></table>`;
|
|
3609
3617
|
|
|
3618
|
+
wordHtml += `<div class="section-title">Today's Attentions</div>`;
|
|
3619
|
+
wordHtml += `<table class="data-table">`;
|
|
3620
|
+
wordHtml += `<thead><tr><th>Attention</th><th>Details / Subtitle</th></tr></thead><tbody>`;
|
|
3610
3621
|
if (todayAttentions.value.length > 0) {
|
|
3611
|
-
wordHtml += `<div class="section-title">Today's Attentions</div>`;
|
|
3612
|
-
wordHtml += `<table class="data-table">`;
|
|
3613
|
-
wordHtml += `<thead><tr><th>Attention</th><th>Details / Subtitle</th></tr></thead><tbody>`;
|
|
3614
3622
|
todayAttentions.value.forEach((item) => {
|
|
3615
3623
|
wordHtml += `<tr>
|
|
3616
3624
|
<td><strong>${item.title}</strong></td>
|
|
3617
3625
|
<td>${item.subtitle || ""}</td>
|
|
3618
3626
|
</tr>`;
|
|
3619
3627
|
});
|
|
3620
|
-
|
|
3628
|
+
} else {
|
|
3629
|
+
wordHtml += `<tr><td colspan="2" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3621
3630
|
}
|
|
3631
|
+
wordHtml += `</tbody></table>`;
|
|
3622
3632
|
|
|
3633
|
+
wordHtml += `<div class="section-title">Work Order Status</div>`;
|
|
3634
|
+
wordHtml += `<table class="data-table">`;
|
|
3635
|
+
wordHtml += `<thead><tr><th>Status</th><th>Count / Value</th></tr></thead><tbody>`;
|
|
3623
3636
|
if (workOrderStatus.value.length > 0) {
|
|
3624
|
-
wordHtml += `<div class="section-title">Work Order Status</div>`;
|
|
3625
|
-
wordHtml += `<table class="data-table">`;
|
|
3626
|
-
wordHtml += `<thead><tr><th>Status</th><th>Count / Value</th></tr></thead><tbody>`;
|
|
3627
3637
|
workOrderStatus.value.forEach((item) => {
|
|
3628
3638
|
wordHtml += `<tr>
|
|
3629
3639
|
<td><strong>${item.label}</strong></td>
|
|
3630
3640
|
<td>${item.value || 0}</td>
|
|
3631
3641
|
</tr>`;
|
|
3632
3642
|
});
|
|
3633
|
-
|
|
3643
|
+
} else {
|
|
3644
|
+
wordHtml += `<tr><td colspan="2" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3634
3645
|
}
|
|
3646
|
+
wordHtml += `</tbody></table>`;
|
|
3635
3647
|
}
|
|
3636
3648
|
|
|
3637
3649
|
if (isSecurityMode.value) {
|
|
3650
|
+
wordHtml += `<div class="section-title">Active Patrol</div>`;
|
|
3651
|
+
wordHtml += `<table class="data-table">`;
|
|
3652
|
+
wordHtml += `<thead><tr><th>Patrol Route</th><th>Location</th><th>Assigned Officer</th><th>Status</th></tr></thead><tbody>`;
|
|
3638
3653
|
if (activePatrolItems.value.length > 0) {
|
|
3639
|
-
wordHtml += `<div class="section-title">Active Patrol</div>`;
|
|
3640
|
-
wordHtml += `<table class="data-table">`;
|
|
3641
|
-
wordHtml += `<thead><tr><th>Patrol Route</th><th>Location</th><th>Assigned Officer</th><th>Status</th></tr></thead><tbody>`;
|
|
3642
3654
|
activePatrolItems.value.forEach((item) => {
|
|
3643
3655
|
wordHtml += `<tr>
|
|
3644
3656
|
<td><strong>${item.title || item.name}</strong></td>
|
|
@@ -3649,13 +3661,15 @@ async function exportDashboard(format: "PDF" | "Word") {
|
|
|
3649
3661
|
)}">${item.status || ""}</span></td>
|
|
3650
3662
|
</tr>`;
|
|
3651
3663
|
});
|
|
3652
|
-
|
|
3664
|
+
} else {
|
|
3665
|
+
wordHtml += `<tr><td colspan="4" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3653
3666
|
}
|
|
3667
|
+
wordHtml += `</tbody></table>`;
|
|
3654
3668
|
|
|
3669
|
+
wordHtml += `<div class="section-title">Staff Status</div>`;
|
|
3670
|
+
wordHtml += `<table class="data-table">`;
|
|
3671
|
+
wordHtml += `<thead><tr><th>Officer Name</th><th>Role / Designation</th><th>Status</th></tr></thead><tbody>`;
|
|
3655
3672
|
if (securityStaffItems.value.length > 0) {
|
|
3656
|
-
wordHtml += `<div class="section-title">Staff Status</div>`;
|
|
3657
|
-
wordHtml += `<table class="data-table">`;
|
|
3658
|
-
wordHtml += `<thead><tr><th>Officer Name</th><th>Role / Designation</th><th>Status</th></tr></thead><tbody>`;
|
|
3659
3673
|
securityStaffItems.value.forEach((item) => {
|
|
3660
3674
|
wordHtml += `<tr>
|
|
3661
3675
|
<td><strong>${
|
|
@@ -3667,14 +3681,16 @@ async function exportDashboard(format: "PDF" | "Word") {
|
|
|
3667
3681
|
)}">${item.status || "On duty"}</span></td>
|
|
3668
3682
|
</tr>`;
|
|
3669
3683
|
});
|
|
3670
|
-
|
|
3684
|
+
} else {
|
|
3685
|
+
wordHtml += `<tr><td colspan="3" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3671
3686
|
}
|
|
3687
|
+
wordHtml += `</tbody></table>`;
|
|
3672
3688
|
}
|
|
3673
3689
|
|
|
3690
|
+
wordHtml += `<div class="section-title">Feedbacks</div>`;
|
|
3691
|
+
wordHtml += `<table class="data-table">`;
|
|
3692
|
+
wordHtml += `<thead><tr><th>Title</th><th>Description / Category</th><th>Reporter / Person</th><th>Status</th></tr></thead><tbody>`;
|
|
3674
3693
|
if (feedbackItems.value.length > 0) {
|
|
3675
|
-
wordHtml += `<div class="section-title">Feedbacks</div>`;
|
|
3676
|
-
wordHtml += `<table class="data-table">`;
|
|
3677
|
-
wordHtml += `<thead><tr><th>Title</th><th>Description / Category</th><th>Reporter / Person</th><th>Status</th></tr></thead><tbody>`;
|
|
3678
3694
|
feedbackItems.value.forEach((item) => {
|
|
3679
3695
|
wordHtml += `<tr>
|
|
3680
3696
|
<td><strong>${item.title}</strong></td>
|
|
@@ -3685,8 +3701,10 @@ async function exportDashboard(format: "PDF" | "Word") {
|
|
|
3685
3701
|
)}">${item.status || "To-Do"}</span></td>
|
|
3686
3702
|
</tr>`;
|
|
3687
3703
|
});
|
|
3688
|
-
|
|
3704
|
+
} else {
|
|
3705
|
+
wordHtml += `<tr><td colspan="4" style="padding: 10px; text-align: center; color: #64748b;">No data available</td></tr>`;
|
|
3689
3706
|
}
|
|
3707
|
+
wordHtml += `</tbody></table>`;
|
|
3690
3708
|
|
|
3691
3709
|
wordHtml += `
|
|
3692
3710
|
</body>
|