@7365admin1/layer-common 1.11.31 → 1.11.32

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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # @iservice365/layer-common
2
2
 
3
+ ## 1.11.32
4
+
5
+ ### Patch Changes
6
+
7
+ - fe5ced9: Update Unregistered Registration
8
+
3
9
  ## 1.11.31
4
10
 
5
11
  ### Patch Changes
@@ -924,7 +924,14 @@ async function submit() {
924
924
  }
925
925
 
926
926
  try {
927
- const res = await createVisitor(payload);
927
+ let res;
928
+ if (prop.mode === "add") {
929
+ res = await createVisitor(payload as TVisitorPayload);
930
+ } else if ((prop.mode === "edit" || prop.mode === "register") && prop.visitorData?._id) {
931
+ const { unitName, ...rest } = payload
932
+ res = await updateVisitor(prop.visitorData._id, rest as TVisitorPayload);
933
+ }
934
+
928
935
  if (res) {
929
936
  if (prop.type === "contractor" && passType.value) {
930
937
  const visitorId = res as unknown as string;
@@ -209,34 +209,21 @@
209
209
  <v-row no-gutters class="d-flex flex-column py-2">
210
210
  <span class="d-flex align-center ga-2">
211
211
  <v-icon
212
- icon="mdi-clock-time-eight-outline"
213
- color="success"
212
+ icon="mdi-clock-time-four-outline"
213
+ color="green"
214
214
  size="20"
215
215
  />
216
- <template v-if="!item.checkIn && canUpdateVisitor">
217
- <v-btn
218
- size="x-small"
219
- class="text-capitalize"
220
- color="success"
221
- text="Checkin"
222
- :disabled="isVisitorDataFromScannedQRCodeCheckingInOut"
223
- @click.stop="handleCheckin(item)"
224
- :loading="isVisitorDataFromScannedQRCodeCheckingInOut"
216
+ <span class="text-capitalize">{{
217
+ UTCToLocalTIme(item.checkIn) || "-"
218
+ }}</span>
219
+ <span>
220
+ <v-icon
221
+ v-if="item?.snapshotEntryImage"
222
+ size="17"
223
+ icon="mdi-image"
224
+ @click.stop="handleViewImage(item.snapshotEntryImage)"
225
225
  />
226
- </template>
227
- <template v-else>
228
- <span class="text-capitalize">{{
229
- UTCToLocalTIme(item.checkIn)
230
- }}</span>
231
- <span>
232
- <v-icon
233
- v-if="item?.snapshotEntryImage"
234
- size="17"
235
- icon="mdi-image"
236
- @click.stop="handleViewImage(item.snapshotEntryImage)"
237
- />
238
- </span>
239
- </template>
226
+ </span>
240
227
  </span>
241
228
 
242
229
  <span
@@ -379,6 +366,23 @@
379
366
  <v-icon icon="mdi-clock-time-four-outline" size="20" />
380
367
  {{ item.arrivalTime ?? "N/A" }}
381
368
  </span>
369
+
370
+ <span v-if="!item.checkIn && canUpdateVisitor">
371
+ <span class="d-flex align-center ga-2 cursor-pointer">
372
+ <v-icon
373
+ icon="mdi-clock-time-eight-outline"
374
+ color="success"
375
+ size="20"
376
+ />
377
+ <v-btn
378
+ size="x-small"
379
+ class="text-capitalize"
380
+ color="success"
381
+ text="Checkin"
382
+ @click.stop="handleCheckin(item)"
383
+ />
384
+ </span>
385
+ </span>
382
386
  </v-row>
383
387
  </template>
384
388
 
@@ -1327,6 +1331,11 @@ const {
1327
1331
  params.status = activeTab.value;
1328
1332
  }
1329
1333
 
1334
+ if (activeTab.value !== "registered") {
1335
+ delete params.type;
1336
+ delete params.checkedOut;
1337
+ }
1338
+
1330
1339
  return await getVisitors(params);
1331
1340
  },
1332
1341
  {
@@ -1761,6 +1770,11 @@ function buildReportParams(): any {
1761
1770
  params.status = activeTab.value;
1762
1771
  }
1763
1772
 
1773
+ if (activeTab.value !== "registered") {
1774
+ delete params.type;
1775
+ delete params.checkedOut;
1776
+ }
1777
+
1764
1778
  return params;
1765
1779
  }
1766
1780
 
@@ -1798,6 +1812,7 @@ async function handleDownloadCSVReport() {
1798
1812
  showMessage("Generating CSV report...", "info");
1799
1813
 
1800
1814
  const params = buildReportParams();
1815
+
1801
1816
  const reportData = await getVisitors(params);
1802
1817
  const csvData = generateCSVData(reportData.items ?? []);
1803
1818
  downloadCSVFile(csvData);
@@ -1951,11 +1966,14 @@ onMounted(() => {
1951
1966
  if (route.query.dateTo) {
1952
1967
  dateTo.value = normalizeDateOnly(route.query.dateTo as string);
1953
1968
  }
1954
- filterTypes.value = ((route.query.type as string)?.split(",") || []).filter(
1955
- Boolean
1956
- ) as TVisitorType[];
1957
- displayNotCheckedOut.value =
1958
- (route.query.checkedOut as string) == "true" || false;
1969
+ if (activeTab.value === "registered") {
1970
+ filterTypes.value = ((route.query.type as string)?.split(",") || []).filter(
1971
+ Boolean
1972
+ ) as TVisitorType[];
1973
+
1974
+ displayNotCheckedOut.value =
1975
+ (route.query.checkedOut as string) == "true" || false;
1976
+ }
1959
1977
  });
1960
1978
  </script>
1961
1979
 
@@ -10,7 +10,7 @@
10
10
  <span style="font-size: clamp(11px, 1.1vw, 13px); word-break: break-word;">Date Range: {{
11
11
  formatDateDDMMYYYY(dateFrom) }} - {{ formatDateDDMMYYYY(dateTo) ?? "" }}</span>
12
12
  <span class="text-subtitle-1" style="word-break: break-word;">Site Name: {{ activeSiteName
13
- }}</span>
13
+ }}</span>
14
14
  </div>
15
15
 
16
16
  </v-row>
@@ -26,12 +26,12 @@
26
26
  formatCamelCaseToWords(item.contractorType)
27
27
  }}</span>
28
28
  <span v-else class="text-capitalize" style="word-break: break-word;">{{ formatType(item)
29
- }}</span>
29
+ }}</span>
30
30
  </span>
31
31
  <span class="d-flex align-center ga-2" style="flex-wrap: wrap;">
32
32
  <v-icon icon="mdi-domain" size="15" />
33
33
  <span class="text-capitalize" style="word-break: break-word;">{{ item?.company || "N/A"
34
- }}</span>
34
+ }}</span>
35
35
  </span>
36
36
  </template>
37
37
 
@@ -52,7 +52,7 @@
52
52
  <span class="d-flex align-center ga-2" style="flex-wrap: wrap;">
53
53
  <v-icon icon="mdi-phone" size="15" />
54
54
  <span class="text-capitalize" style="word-break: break-word;">{{ item?.contact || "N/A"
55
- }}</span>
55
+ }}</span>
56
56
  </span>
57
57
  <span class="d-flex align-center ga-2" style="flex-wrap: wrap;">
58
58
  <v-icon icon="mdi-car-back" size="15" />
@@ -64,7 +64,8 @@
64
64
  <template v-slot:item.checkInOut="{ item }">
65
65
  <span class="d-flex align-center ga-2" style="flex-wrap: wrap;">
66
66
  <v-icon icon="mdi-login" size="15" />
67
- <span class="text-capitalize" style="word-break: break-word;">{{ formatDate(item.checkIn) }}</span>
67
+ <span class="text-capitalize" style="word-break: break-word;">{{
68
+ formatDate(item.checkIn) }}</span>
68
69
  </span>
69
70
  <span class="d-flex align-center ga-2" style="flex-wrap: wrap;">
70
71
  <v-icon icon="mdi-logout" size="15" />
@@ -238,6 +239,11 @@ const {
238
239
  params.status = activeTab.value;
239
240
  }
240
241
 
242
+ if (activeTab.value !== 'registered') {
243
+ delete params.type
244
+ delete params.checkedOut
245
+ }
246
+
241
247
  return await getVisitors(params);
242
248
  },
243
249
  {
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@7365admin1/layer-common",
3
3
  "license": "MIT",
4
4
  "type": "module",
5
- "version": "1.11.31",
5
+ "version": "1.11.32",
6
6
  "author": "7365admin1",
7
7
  "main": "./nuxt.config.ts",
8
8
  "publishConfig": {