tango-app-ui-manage-tickets 3.7.0-beta.16 → 3.7.0-beta.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.
Files changed (91) hide show
  1. package/esm2022/lib/components/add-csm-modal/add-csm-modal.component.mjs +98 -0
  2. package/esm2022/lib/components/audit-log/audit-log.component.mjs +11 -0
  3. package/esm2022/lib/components/audit-metrics/audit-metrics.component.mjs +298 -0
  4. package/esm2022/lib/components/comment-model/comment-model.component.mjs +58 -0
  5. package/esm2022/lib/components/count/count.component.mjs +89 -0
  6. package/esm2022/lib/components/footfall-dic/footfall-dic.component.mjs +983 -0
  7. package/esm2022/lib/components/group-select/group-select.component.mjs +155 -0
  8. package/esm2022/lib/components/re-trigger/re-trigger.component.mjs +96 -0
  9. package/esm2022/lib/components/reactive-select/reactive-select.component.mjs +108 -0
  10. package/esm2022/lib/components/tango-manage-tickets/tango-manage-tickets.component.mjs +127 -0
  11. package/esm2022/lib/components/tickets/tickets.component.mjs +793 -0
  12. package/esm2022/lib/services/excel.service.mjs +45 -0
  13. package/esm2022/lib/services/ticket.service.mjs +161 -0
  14. package/esm2022/lib/tango-manage-tickets-routing.module.mjs +24 -0
  15. package/esm2022/lib/tango-manage-tickets.module.mjs +54 -0
  16. package/esm2022/public-api.mjs +6 -0
  17. package/esm2022/tango-app-ui-manage-tickets.mjs +5 -0
  18. package/fesm2022/tango-app-ui-manage-tickets.mjs +3006 -0
  19. package/fesm2022/tango-app-ui-manage-tickets.mjs.map +1 -0
  20. package/index.d.ts +5 -0
  21. package/lib/components/add-csm-modal/add-csm-modal.component.d.ts +30 -0
  22. package/lib/components/audit-log/audit-log.component.d.ts +5 -0
  23. package/lib/components/audit-metrics/audit-metrics.component.d.ts +59 -0
  24. package/lib/components/comment-model/comment-model.component.d.ts +17 -0
  25. package/lib/components/count/count.component.d.ts +23 -0
  26. package/lib/components/footfall-dic/footfall-dic.component.d.ts +139 -0
  27. package/lib/components/group-select/group-select.component.d.ts +33 -0
  28. package/lib/components/re-trigger/re-trigger.component.d.ts +32 -0
  29. package/lib/components/reactive-select/reactive-select.component.d.ts +32 -0
  30. package/lib/components/tango-manage-tickets/tango-manage-tickets.component.d.ts +27 -0
  31. package/lib/components/tickets/tickets.component.d.ts +84 -0
  32. package/lib/services/excel.service.d.ts +10 -0
  33. package/lib/services/ticket.service.d.ts +49 -0
  34. package/lib/tango-manage-tickets-routing.module.d.ts +7 -0
  35. package/lib/tango-manage-tickets.module.d.ts +21 -0
  36. package/package.json +25 -12
  37. package/{src/public-api.ts → public-api.d.ts} +2 -8
  38. package/.eslintrc.json +0 -37
  39. package/ng-package.json +0 -7
  40. package/src/lib/components/add-csm-modal/add-csm-modal.component.html +0 -32
  41. package/src/lib/components/add-csm-modal/add-csm-modal.component.scss +0 -14
  42. package/src/lib/components/add-csm-modal/add-csm-modal.component.spec.ts +0 -23
  43. package/src/lib/components/add-csm-modal/add-csm-modal.component.ts +0 -94
  44. package/src/lib/components/audit-log/audit-log.component.html +0 -1
  45. package/src/lib/components/audit-log/audit-log.component.scss +0 -0
  46. package/src/lib/components/audit-log/audit-log.component.spec.ts +0 -23
  47. package/src/lib/components/audit-log/audit-log.component.ts +0 -10
  48. package/src/lib/components/audit-metrics/audit-metrics.component.html +0 -345
  49. package/src/lib/components/audit-metrics/audit-metrics.component.scss +0 -34
  50. package/src/lib/components/audit-metrics/audit-metrics.component.spec.ts +0 -23
  51. package/src/lib/components/audit-metrics/audit-metrics.component.ts +0 -292
  52. package/src/lib/components/comment-model/comment-model.component.html +0 -24
  53. package/src/lib/components/comment-model/comment-model.component.scss +0 -20
  54. package/src/lib/components/comment-model/comment-model.component.spec.ts +0 -23
  55. package/src/lib/components/comment-model/comment-model.component.ts +0 -53
  56. package/src/lib/components/count/count.component.html +0 -54
  57. package/src/lib/components/count/count.component.scss +0 -14
  58. package/src/lib/components/count/count.component.spec.ts +0 -23
  59. package/src/lib/components/count/count.component.ts +0 -82
  60. package/src/lib/components/footfall-dic/footfall-dic.component.html +0 -1242
  61. package/src/lib/components/footfall-dic/footfall-dic.component.scss +0 -273
  62. package/src/lib/components/footfall-dic/footfall-dic.component.spec.ts +0 -23
  63. package/src/lib/components/footfall-dic/footfall-dic.component.ts +0 -1106
  64. package/src/lib/components/group-select/group-select.component.html +0 -44
  65. package/src/lib/components/group-select/group-select.component.scss +0 -144
  66. package/src/lib/components/group-select/group-select.component.spec.ts +0 -23
  67. package/src/lib/components/group-select/group-select.component.ts +0 -145
  68. package/src/lib/components/re-trigger/re-trigger.component.html +0 -53
  69. package/src/lib/components/re-trigger/re-trigger.component.scss +0 -16
  70. package/src/lib/components/re-trigger/re-trigger.component.spec.ts +0 -23
  71. package/src/lib/components/re-trigger/re-trigger.component.ts +0 -96
  72. package/src/lib/components/reactive-select/reactive-select.component.html +0 -18
  73. package/src/lib/components/reactive-select/reactive-select.component.scss +0 -52
  74. package/src/lib/components/reactive-select/reactive-select.component.spec.ts +0 -23
  75. package/src/lib/components/reactive-select/reactive-select.component.ts +0 -104
  76. package/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.html +0 -38
  77. package/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.scss +0 -35
  78. package/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.spec.ts +0 -23
  79. package/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.ts +0 -116
  80. package/src/lib/components/tickets/tickets.component.html +0 -439
  81. package/src/lib/components/tickets/tickets.component.scss +0 -131
  82. package/src/lib/components/tickets/tickets.component.spec.ts +0 -23
  83. package/src/lib/components/tickets/tickets.component.ts +0 -748
  84. package/src/lib/services/excel.service.ts +0 -48
  85. package/src/lib/services/ticket.service.spec.ts +0 -16
  86. package/src/lib/services/ticket.service.ts +0 -175
  87. package/src/lib/tango-manage-tickets-routing.module.ts +0 -16
  88. package/src/lib/tango-manage-tickets.module.ts +0 -34
  89. package/tsconfig.lib.json +0 -14
  90. package/tsconfig.lib.prod.json +0 -10
  91. package/tsconfig.spec.json +0 -14
package/.eslintrc.json DELETED
@@ -1,37 +0,0 @@
1
- {
2
- "extends": "../../.eslintrc.json",
3
- "ignorePatterns": [
4
- "!**/*"
5
- ],
6
- "overrides": [
7
- {
8
- "files": [
9
- "*.ts"
10
- ],
11
- "rules": {
12
- "@angular-eslint/directive-selector": [
13
- "error",
14
- {
15
- "type": "attribute",
16
- "prefix": "lib",
17
- "style": "camelCase"
18
- }
19
- ],
20
- "@angular-eslint/component-selector": [
21
- "error",
22
- {
23
- "type": "element",
24
- "prefix": "lib",
25
- "style": "kebab-case"
26
- }
27
- ]
28
- }
29
- },
30
- {
31
- "files": [
32
- "*.html"
33
- ],
34
- "rules": {}
35
- }
36
- ]
37
- }
package/ng-package.json DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
3
- "dest": "../../dist/tango-manage-tickets",
4
- "lib": {
5
- "entryFile": "src/public-api.ts"
6
- }
7
- }
@@ -1,32 +0,0 @@
1
- <div class="card py-0">
2
- <div class="card-body py-0 d-flex flex-start flex-column p-9 ">
3
- <div class="my-5">
4
- <div class="symbol symbol-75px symbol-circle">
5
- <svg width="56" height="56" viewBox="0 0 56 56" fill="none" xmlns="http://www.w3.org/2000/svg">
6
- <rect x="4" y="4" width="48" height="48" rx="24" fill="#DAF1FF"/>
7
- <rect x="4" y="4" width="48" height="48" rx="24" stroke="#EAF8FF" stroke-width="8"/>
8
- <path d="M32 37V35C32 33.9391 31.5786 32.9217 30.8284 32.1716C30.0783 31.4214 29.0609 31 28 31H21C19.9391 31 18.9217 31.4214 18.1716 32.1716C17.4214 32.9217 17 33.9391 17 35V37M36 24V30M39 27H33M28.5 23C28.5 25.2091 26.7091 27 24.5 27C22.2909 27 20.5 25.2091 20.5 23C20.5 20.7909 22.2909 19 24.5 19C26.7091 19 28.5 20.7909 28.5 23Z" stroke="#00A3FF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9
- </svg>
10
- </div>
11
- </div>
12
- <a class="fs-4 text-gray-800 text-hover-primary fw-bold mb-0 title cursor-pointer">Assign Ticket</a>
13
- <p class="text-sub">Assign the ticket to a particular user</p>
14
- <div class="mt-5 w-100">
15
- <!-- <lib-reactive-select [formControl]="csmSelectInput" [idField]="'email'" [nameField]="'userName'" [data]="csmUserList" ></lib-reactive-select> -->
16
-
17
- <!-- <select [formControl]="csmSelectInput" class="form-select border-val my-3">
18
- <option [value]="user.email" *ngFor="let user of csmUserList">{{user.userName}}</option>
19
- </select> -->
20
-
21
- <lib-select [items]="userList" [multi]="false" [searchField]="'userName'" [idField]="'_id'"
22
- (selected)="onCsmSelect($event)" ></lib-select>
23
-
24
- <div class="d-flex my-7" role="group">
25
- <button class="btn btn-outline w-100 me-3" (click)="cancel()">Cancel</button>
26
- <button class="btn btn-primary w-100 ms-3" [disabled]="!csmSelectInput.value" (click)="assignCsm()">Submit</button>
27
- </div>
28
-
29
- </div>
30
-
31
- </div>
32
- </div>
@@ -1,14 +0,0 @@
1
- ::ng-deep.modal-content {
2
- border-radius: 12px !important;
3
- overflow: unset !important;
4
- }
5
-
6
- ::ng-deep ngb-modal-window .component-host-scrollable {
7
- overflow: unset !important;
8
- }
9
- .text-sub{
10
- color: var(--Gray-500, #667085) !important;
11
- font-size: 14px;
12
- font-weight: 400;
13
- line-height: 20px;
14
- }
@@ -1,23 +0,0 @@
1
- import { ComponentFixture, TestBed } from '@angular/core/testing';
2
-
3
- import { AddCsmModalComponent } from './add-csm-modal.component';
4
-
5
- describe('AddCsmModalComponent', () => {
6
- let component: AddCsmModalComponent;
7
- let fixture: ComponentFixture<AddCsmModalComponent>;
8
-
9
- beforeEach(async () => {
10
- await TestBed.configureTestingModule({
11
- declarations: [AddCsmModalComponent]
12
- })
13
- .compileComponents();
14
-
15
- fixture = TestBed.createComponent(AddCsmModalComponent);
16
- component = fixture.componentInstance;
17
- fixture.detectChanges();
18
- });
19
-
20
- it('should create', () => {
21
- expect(component).toBeTruthy();
22
- });
23
- });
@@ -1,94 +0,0 @@
1
- import { Component, Input, OnDestroy, OnInit } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
4
- import { Subject, takeUntil } from 'rxjs';
5
- import { GlobalStateService } from 'tango-app-ui-global';
6
- import { TicketService } from '../../services/ticket.service';
7
- import { ToastService } from 'tango-app-ui-shared';
8
-
9
- @Component({
10
- selector: "lib-add-csm-modal",
11
- templateUrl: "./add-csm-modal.component.html",
12
- styleUrl: "./add-csm-modal.component.scss",
13
- })
14
- export class AddCsmModalComponent implements OnInit, OnDestroy {
15
- @Input() ticketId: any;
16
- csmUserList: any = [];
17
- csmSelectInput = new FormControl("");
18
- private readonly destroy$ = new Subject();
19
- headerFilters: any;
20
- userList_req: {};
21
- users: any=[];
22
- userList: any=[];
23
-
24
- constructor(
25
- private activeModal: NgbActiveModal,
26
- public gs: GlobalStateService,
27
- private service: TicketService,
28
- private toast: ToastService
29
- ) {}
30
- ngOnInit(): void {
31
- const userData: any = JSON.parse(localStorage.getItem("user-info") || "{}");
32
- this.users = userData;
33
- this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({
34
- next: (data: any) => {
35
- if (data) {
36
- this.headerFilters = data;
37
- this.userList_req = {
38
- "userType": this.users.userType, "isActive": true
39
- // clientId: this.headerFilters.client,
40
- // limit: 10000,
41
- // offset: 1,
42
- // userType: this.users.userType,
43
- // FilterByStatus:'isActive'
44
- };
45
- this.getuserlist();
46
- }
47
- },
48
- });
49
- }
50
- ngOnDestroy(): void {
51
- this.destroy$.next(true);
52
- this.destroy$.complete();
53
- }
54
-
55
- getuserlist() {
56
- this.service
57
- .getUserActiveList(this.userList_req)
58
- .pipe(takeUntil(this.destroy$))
59
- .subscribe((res: any) => {
60
- if (res && res.code === 200) {
61
- this.userList = res?.data?.result;
62
- }
63
- });
64
- }
65
-
66
- assignCsm() {
67
- let obj = {
68
- tickets: this.ticketId,
69
- user: this.csmSelectInput.value,
70
- };
71
- this.service
72
- .getAssignTicket(obj)
73
- .pipe(takeUntil(this.destroy$))
74
- .subscribe({
75
- next: (res: any) => {
76
- if (res && res.code === 200) {
77
- this.toast.getSuccessToast(res.message);
78
- this.activeModal.close("submit");
79
- }
80
- },
81
- error: (err: any) => {
82
- this.toast.getErrorToast(err.error.error ? err.error.error : err.error);
83
- },
84
- complete: () => {},
85
- });
86
- }
87
-
88
- onCsmSelect(selectedCsm: any) {
89
- this.csmSelectInput.setValue(selectedCsm?._id);
90
- }
91
- cancel() {
92
- this.activeModal.close("submit");
93
- }
94
- }
@@ -1 +0,0 @@
1
- <p>audit-log works!</p>
@@ -1,23 +0,0 @@
1
- import { ComponentFixture, TestBed } from '@angular/core/testing';
2
-
3
- import { AuditLogComponent } from './audit-log.component';
4
-
5
- describe('AuditLogComponent', () => {
6
- let component: AuditLogComponent;
7
- let fixture: ComponentFixture<AuditLogComponent>;
8
-
9
- beforeEach(async () => {
10
- await TestBed.configureTestingModule({
11
- declarations: [AuditLogComponent]
12
- })
13
- .compileComponents();
14
-
15
- fixture = TestBed.createComponent(AuditLogComponent);
16
- component = fixture.componentInstance;
17
- fixture.detectChanges();
18
- });
19
-
20
- it('should create', () => {
21
- expect(component).toBeTruthy();
22
- });
23
- });
@@ -1,10 +0,0 @@
1
- import { Component } from '@angular/core';
2
-
3
- @Component({
4
- selector: 'lib-audit-log',
5
- templateUrl: './audit-log.component.html',
6
- styleUrl: './audit-log.component.scss'
7
- })
8
- export class AuditLogComponent {
9
-
10
- }
@@ -1,345 +0,0 @@
1
- <div class="card">
2
- <div class="card-header border-0 pt-3">
3
- <h3 class="card-title align-items-start flex-column">
4
- <span class="card-label mb-2">Audit Metrics</span>
5
- <!-- <span class="text-sub mb-2">Last updated 1 hour ago</span> -->
6
- </h3>
7
- <div class="card-toolbar">
8
- <div class="d-flex">
9
- <div class="d-flex align-items-center position-relative my-1">
10
- <span class="svg-icon svg-icon-1 position-absolute ms-3">
11
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
12
- <rect opacity="0.5" x="17.0365" y="15.1223" width="8.15546" height="2" rx="1"
13
- transform="rotate(45 17.0365 15.1223)" fill="currentColor"></rect>
14
- <path
15
- d="M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z"
16
- fill="currentColor"></path>
17
- </svg>
18
- </span>
19
- <input type="text" class="form-control ps-14 me-2" placeholder="Search" autocomplete="off"
20
- (change)="searchData()" [(ngModel)]="searchTerm" />
21
-
22
- <lib-filters *ngIf="clientList" [dataObject]="dataObject" (appliedFilters)="receiveData($event)"></lib-filters>
23
-
24
- <button type="button" *ngIf="!noData&&!loading" (click)="exportXLSX()"
25
- class="btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val">
26
- <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
27
- <path
28
- d="M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5"
29
- stroke="#344054" stroke-width="1.67" stroke-linecap="round" stroke-linejoin="round" />
30
- </svg>
31
- <span class="ms-2">Export</span>
32
- </button>
33
- </div>
34
- </div>
35
- </div>
36
- </div>
37
- <div class="card-body">
38
- <ul class="nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll">
39
- <li class="nav-item" (click)="selectedTabs('all')">
40
- <a [ngClass]="selectedTab === '' ? 'active' : ''" class="nav-link cursor-pointer no-border me-2">
41
- All <span class="mx-2"
42
- [ngClass]="selectedTab === '' ? 'text-border-priamry' : 'text-border'">{{totalCount?.totalauditCount ? totalCount?.totalauditCount : 0}}</span>
43
- </a>
44
- </li>
45
- <li class="nav-item" (click)="selectedTabs('Audit')">
46
- <a [ngClass]="selectedTab === 'Audit' ? 'active' :''" class="nav-link cursor-pointer no-border me-2">
47
- Audit <span class="mx-2"
48
- [ngClass]="selectedTab === 'Audit' ? 'text-border-priamry' : 'text-border'">{{totalCount?.auditCount ? totalCount?.auditCount : 0}}</span>
49
- </a>
50
- </li>
51
- <li class="nav-item" (click)="selectedTabs('ReAudit')">
52
- <a [ngClass]="selectedTab === 'ReAudit' ? 'active' : ''" class="nav-link cursor-pointer no-border me-2">
53
- Re Audit <span class="mx-2"
54
- [ngClass]="selectedTab === 'ReAudit' ? 'text-border-priamry' : 'text-border'">{{totalCount?.reauditCount ? totalCount?.reauditCount : 0}}</span>
55
- </a>
56
- </li>
57
- </ul>
58
- <div *ngIf="!loading && !noData" class="mt-5">
59
- <div class="table-responsive">
60
- <table class="table bottom-border text-nowrap">
61
- <thead>
62
- <tr>
63
- <th>File Date</th>
64
- <th><div class="cursor-pointer" (click)="sortData('storeName')">
65
- Store Name
66
- <span
67
- *ngIf="sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'">
68
- <svg width="12" height="12" viewBox="0 0 12 12"
69
- fill="none" xmlns="http://www.w3.org/2000/svg">
70
- <path
71
- d="M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004"
72
- stroke="#667085" stroke-width="1.33333"
73
- stroke-linecap="round"
74
- stroke-linejoin="round" />
75
- </svg>
76
- </span>
77
- <span
78
- *ngIf="sortColumName === 'storeName' && sortBy !== -1">
79
- <svg width="12" height="12" viewBox="0 0 12 12"
80
- fill="none" xmlns="http://www.w3.org/2000/svg">
81
- <path
82
- d="M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004"
83
- stroke="#667085" stroke-width="1.33333"
84
- stroke-linecap="round"
85
- stroke-linejoin="round" />
86
- </svg>
87
- </span>
88
-
89
- </div></th>
90
- <th><div class="cursor-pointer" (click)="sortData('storeId')">
91
- Store Id
92
- <span
93
- *ngIf="sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'">
94
- <svg width="12" height="12" viewBox="0 0 12 12"
95
- fill="none" xmlns="http://www.w3.org/2000/svg">
96
- <path
97
- d="M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004"
98
- stroke="#667085" stroke-width="1.33333"
99
- stroke-linecap="round"
100
- stroke-linejoin="round"/>
101
- </svg>
102
- </span>
103
- <span
104
- *ngIf="sortColumName === 'storeId' && sortBy !== -1">
105
- <svg width="12" height="12" viewBox="0 0 12 12"
106
- fill="none" xmlns="http://www.w3.org/2000/svg">
107
- <path
108
- d="M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004"
109
- stroke="#667085" stroke-width="1.33333"
110
- stroke-linecap="round"
111
- stroke-linejoin="round" />
112
- </svg>
113
- </span>
114
-
115
- </div></th>
116
- <th><div class="cursor-pointer" (click)="sortData('userName')">
117
- User Name
118
- <span
119
- *ngIf="sortColumName === 'userName' && sortBy !== 1 || sortColumName !== 'userName'">
120
- <svg width="12" height="12" viewBox="0 0 12 12"
121
- fill="none" xmlns="http://www.w3.org/2000/svg">
122
- <path
123
- d="M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004"
124
- stroke="#667085" stroke-width="1.33333"
125
- stroke-linecap="round"
126
- stroke-linejoin="round" />
127
- </svg>
128
- </span>
129
- <span
130
- *ngIf="sortColumName === 'userName' && sortBy !== -1">
131
- <svg width="12" height="12" viewBox="0 0 12 12"
132
- fill="none" xmlns="http://www.w3.org/2000/svg">
133
- <path
134
- d="M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004"
135
- stroke="#667085" stroke-width="1.33333"
136
- stroke-linecap="round"
137
- stroke-linejoin="round"/>
138
- </svg>
139
- </span>
140
-
141
- </div></th>
142
- <th><div class="cursor-pointer" (click)="sortData('userEmail')">
143
- User Email
144
- <span
145
- *ngIf="sortColumName === 'userEmail' && sortBy !== 1 || sortColumName !== 'userEmail'">
146
- <svg width="12" height="12" viewBox="0 0 12 12"
147
- fill="none" xmlns="http://www.w3.org/2000/svg">
148
- <path
149
- d="M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004"
150
- stroke="#667085" stroke-width="1.33333"
151
- stroke-linecap="round"
152
- stroke-linejoin="round" />
153
- </svg>
154
- </span>
155
- <span
156
- *ngIf="sortColumName === 'userEmail' && sortBy !== -1">
157
- <svg width="12" height="12" viewBox="0 0 12 12"
158
- fill="none" xmlns="http://www.w3.org/2000/svg">
159
- <path
160
- d="M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004"
161
- stroke="#667085" stroke-width="1.33333"
162
- stroke-linecap="round"
163
- stroke-linejoin="round" />
164
- </svg>
165
- </span>
166
-
167
- </div></th>
168
- <th>BC</th>
169
- <th>AC</th>
170
- <th><div class="cursor-pointer" (click)="sortData('accuracy')">
171
- Accuracy
172
- <span
173
- *ngIf="sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'">
174
- <svg width="12" height="12" viewBox="0 0 12 12"
175
- fill="none" xmlns="http://www.w3.org/2000/svg">
176
- <path
177
- d="M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004"
178
- stroke="#667085" stroke-width="1.33333"
179
- stroke-linecap="round"
180
- stroke-linejoin="round" />
181
- </svg>
182
- </span>
183
- <span
184
- *ngIf="sortColumName === 'accuracy' && sortBy !== -1">
185
- <svg width="12" height="12" viewBox="0 0 12 12"
186
- fill="none" xmlns="http://www.w3.org/2000/svg">
187
- <path
188
- d="M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004"
189
- stroke="#667085" stroke-width="1.33333"
190
- stroke-linecap="round"
191
- stroke-linejoin="round" />
192
- </svg>
193
- </span>
194
-
195
- </div></th>
196
- <th><div class="cursor-pointer" (click)="sortData('timeSpent')">
197
- TimeSpent
198
- <span
199
- *ngIf="sortColumName === 'timeSpent' && sortBy !== 1 || sortColumName !== 'timeSpent'">
200
- <svg width="12" height="12" viewBox="0 0 12 12"
201
- fill="none" xmlns="http://www.w3.org/2000/svg">
202
- <path
203
- d="M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004"
204
- stroke="#667085" stroke-width="1.33333"
205
- stroke-linecap="round"
206
- stroke-linejoin="round" />
207
- </svg>
208
- </span>
209
- <span
210
- *ngIf="sortColumName === 'timeSpent' && sortBy !== -1">
211
- <svg width="12" height="12" viewBox="0 0 12 12"
212
- fill="none" xmlns="http://www.w3.org/2000/svg">
213
- <path
214
- d="M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004"
215
- stroke="#667085" stroke-width="1.33333"
216
- stroke-linecap="round"
217
- stroke-linejoin="round" />
218
- </svg>
219
- </span>
220
-
221
- </div></th>
222
- <th>Audit Type</th>
223
- <th>Status</th>
224
- <th><span>Actions</span></th>
225
- </tr>
226
- </thead>
227
- <tbody>
228
- <tr *ngFor="let item of storesData">
229
- <td>
230
- <div>{{ item?.fileDate ? item?.fileDate :'NA' }}</div>
231
- </td>
232
- <td>
233
- <div>{{ item?.storeName ? item?.storeName :'NA' }}</div>
234
- </td>
235
- <td>
236
- <div>{{item?.storeId ? item?.storeId : 'NA'}}</div>
237
- </td>
238
- <td>
239
- <div>{{ item?.userName ? item?.userName :'NA' }}</div>
240
- </td>
241
- <td>
242
- <div>{{ item?.userEmail ? item?.userEmail :'NA' }}</div>
243
- </td>
244
- <td>
245
- <div class="d-flex align-items-center">
246
- <div [ngClass]="item?.beforeCount ? 'text-decoration-underline':''" class="text-title text-primary cursor-pointer mb-1" (click)="openBeforecount(item)">
247
- {{ item?.beforeCount ?? '--' }}</div>
248
- </div>
249
- </td>
250
- <td>
251
- <div class="d-flex align-items-center">
252
- <div [ngClass]="item?.afterCount ? 'text-decoration-underline':''" class="text-title text-primary cursor-pointer mb-1" (click)="openAftercount(item)">
253
- {{ item?.afterCount ?? '--' }}</div>
254
- </div>
255
- </td>
256
- <td>
257
- <div>{{ item?.accuracy ?? '--' }}</div>
258
- </td>
259
- <td>{{ item?.timeSpent ? item?.timeSpent :'NA'}}</td>
260
- <td><span *ngIf="item?.auditType" [ngClass]="item?.auditType === 'Audit' ? 'badge-light-success':'badge-light-warning'" class="badge">{{ item?.auditType }}</span></td>
261
- <td><span *ngIf="item?.status" [ngClass]="statusBadge(item?.status)" class="badge">{{ item?.status | titlecase}}</span></td>
262
- <td><button class="btn btn-default btn-outline" (click)="openView()">View-Log</button>
263
- <button class="btn btn-default btn-outline ms-3" [disabled]="item?.status === 'not_assign' || item?.status === 'assigned'" (click)="openreTrigger(item)">Re-Trigger</button></td>
264
- </tr>
265
- </tbody>
266
- </table>
267
- </div>
268
- </div>
269
- <div *ngIf="!loading && !noData" class="my-3">
270
- <lib-pagination [itemsPerPage]="limit" [currentPage]="offset" [totalItems]="totalCount"
271
- [paginationSizes]="pagination" [pageSize]="setItemsperPage()" (pageChange)="onPageChange($event)"
272
- (pageSizeChange)="onPageSizeChange($event)"></lib-pagination>
273
- </div>
274
-
275
- <div *ngIf="loading" class="row loader d-flex justify-content-center align-items-center">
276
- <div class="shimmer">
277
- <div class="wrapper">
278
- <div class="stroke animate title"></div>
279
- <div class="stroke animate link"></div>
280
- <div class="stroke animate description"></div>
281
- </div>
282
- </div>
283
- <div class="shimmer">
284
- <div class="wrapper">
285
- <div class="stroke animate title"></div>
286
- <div class="stroke animate link"></div>
287
- <div class="stroke animate description"></div>
288
- </div>
289
- </div>
290
- </div>
291
- <div *ngIf="noData" class="row">
292
- <div class="col-lg-12 mb-3">
293
- <div class="card-body d-flex justify-content-center align-items-center flex-column">
294
- <img class="img-src w-25" src="./assets/tango/Icons/Nodata.svg" alt="">
295
- </div>
296
- </div>
297
- </div>
298
-
299
- </div>
300
- </div>
301
-
302
- <ng-template #activitylog let-modal>
303
- <div class="card">
304
- <div class="card-header">
305
- <div class="card-title">
306
- <span class="card-label">Activity Log</span>
307
- </div>
308
- <div class="card-toolbar">
309
- <div class="cursor-pointer" (click)="modal.dismiss()"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
310
- <path d="M15 5L5 15M5 5L15 15" stroke="#101828" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
311
- </svg></div>
312
- </div>
313
- </div>
314
- <div class="card-body">
315
- <div *ngFor="let log of activity" class="d-flex mb-5 ms-5">
316
- <div
317
- class="d-flex flex-column justify-content-center align-items-center pe-3">
318
- <div class="d-flex align-items-centre justify-content-centre">
319
- <!-- <img class="msgprofile"
320
- src="./assets/tango/Images/userProfile.svg"> -->
321
- <div class="symbol symbol-35px symbol-circle">
322
- <span [ngClass]="log?.type === 'Audit' ? 'badge-light-success' : 'badge-light-primary'" class="symbol-label badge-light-primary text-symbol">
323
- <span [ngClass]="log?.type === 'Audit' ? 'text-success badge badge-light-success' : 'text-primary badge badge-light-primary'" class="fs-4 fw-normal">
324
- {{log?.type?.slice(0,1) | uppercase }}
325
- </span>
326
- </span>
327
- </div>
328
- </div>
329
- <div class="p-0 h-100 mt-1 border border-1 border-gray" style="width:0px"></div>
330
- </div>
331
- <div class="py-3 pt-0">
332
- <div class="activity-title fw-semibold mt-2 d-flex mb-4">
333
- <span>{{log?.type}} </span><span class="ms-5 list"><li>Fasila</li></span>
334
- </div>
335
- <div class="date-time mb-4">
336
- {{log?.FileDate}} | {{log?.Time}}
337
- </div>
338
- <div class=""><span class="badge badge-light-default fw-semibold">Before Count : {{log?.beforeCout}}</span>
339
- <span class="badge badge-light-default fw-semibold ms-3">After Count : {{log?.AfterCount}}</span>
340
- </div>
341
- </div>
342
- </div>
343
- </div>
344
- </div>
345
- </ng-template>
@@ -1,34 +0,0 @@
1
- .nav-item .nav-link.active{
2
- border:none;
3
- border-radius: 6px;
4
- background: var(--Primary-50, #EAF8FF);
5
- padding: 8px 12px;
6
- }
7
- .nav-item .nav-link:hover{
8
- border: none;
9
- }
10
- .text-border {
11
- border-radius: 16px !important;
12
- background: var(--Gray-100, #F2F4F7) !important;
13
- color: var(--Gray-700, #344054);
14
- text-align: center;
15
- font-size: 14px;
16
- font-weight: 500;
17
- line-height: 20px;
18
- padding: 2px 10px !important;
19
- }
20
-
21
- .text-border-priamry{
22
- border-radius: 16px;
23
- background: var(--Primary-50, #EAF8FF);
24
- color: var(--Primary-700, #009BF3);
25
- text-align: center;
26
- font-size: 14px;
27
- font-weight: 500;
28
- line-height: 20px;
29
- padding: 2px 10px !important;
30
- mix-blend-mode: multiply !important;
31
- }
32
- tr{
33
- vertical-align: middle !important;
34
- }