audit-logins.component.html 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <page-header> </page-header>
  2. <nz-card [nzBordered]="false">
  3. <form nz-form [nzLayout]="'inline'" (ngSubmit)="onSearch()" class="search__form">
  4. <div nz-row [nzGutter]="{ xs: 8, sm: 8, md: 8, lg: 24, xl: 48, xxl: 48 }">
  5. <div nz-col nzMd="8" nzSm="24">
  6. <nz-form-item>
  7. <nz-form-label nzFor="username">{{ 'mxk.users.username' | i18n }}</nz-form-label>
  8. <nz-form-control>
  9. <input nz-input [(ngModel)]="query.params.username" [ngModelOptions]="{ standalone: true }" name="username" id="username" />
  10. </nz-form-control>
  11. </nz-form-item>
  12. </div>
  13. <div nz-col nzMd="8" nzSm="24">
  14. <nz-form-item>
  15. <nz-form-label nzFor="displayName">{{ 'mxk.users.displayName' | i18n }}</nz-form-label>
  16. <nz-form-control>
  17. <input
  18. nz-input
  19. [(ngModel)]="query.params.displayName"
  20. [ngModelOptions]="{ standalone: true }"
  21. id="displayName"
  22. name="displayName"
  23. />
  24. </nz-form-control>
  25. </nz-form-item>
  26. </div>
  27. <div nz-col nzMd="8" nzSm="24" *ngIf="query.expandForm">
  28. <nz-form-item>
  29. <nz-form-label nzFor="employeeNumber">{{ 'mxk.users.employeeNumber' | i18n }}</nz-form-label>
  30. <nz-form-control>
  31. <input
  32. nz-input
  33. [(ngModel)]="query.params.employeeNumber"
  34. [ngModelOptions]="{ standalone: true }"
  35. id="employeeNumber"
  36. name="employeeNumber"
  37. />
  38. </nz-form-control>
  39. </nz-form-item>
  40. </div>
  41. <div nz-col nzMd="8" nzSm="24" *ngIf="query.expandForm">
  42. <nz-form-item>
  43. <nz-form-label nzFor="startDatePicker">{{ 'mxk.text.startDate' | i18n }}</nz-form-label>
  44. <nz-form-control>
  45. <nz-date-picker
  46. nzShowTime
  47. nzFormat="yyyy-MM-dd HH:mm:ss"
  48. [(ngModel)]="query.params.startDatePicker"
  49. [ngModelOptions]="{ standalone: true }"
  50. name="startDatePicker"
  51. nzPlaceHolder="startDatePicker"
  52. >
  53. </nz-date-picker>
  54. </nz-form-control>
  55. </nz-form-item>
  56. </div>
  57. <div nz-col nzMd="8" nzSm="24" *ngIf="query.expandForm">
  58. <nz-form-item>
  59. <nz-form-label nzFor="endDatePicker">{{ 'mxk.text.endDate' | i18n }}</nz-form-label>
  60. <nz-form-control>
  61. <nz-date-picker
  62. nzShowTime
  63. nzFormat="yyyy-MM-dd HH:mm:ss"
  64. [(ngModel)]="query.params.endDatePicker"
  65. [ngModelOptions]="{ standalone: true }"
  66. name="endDatePicker"
  67. nzPlaceHolder="endDatePicker"
  68. >
  69. </nz-date-picker>
  70. </nz-form-control>
  71. </nz-form-item>
  72. </div>
  73. <div nz-col [nzSpan]="query.expandForm ? 24 : 8" [class.text-right]="query.expandForm">
  74. <button nz-button type="submit" [nzType]="'primary'" >{{ 'mxk.text.query' | i18n }}</button>
  75. <button nz-button type="reset" (click)="onReset()" class="mx-sm">{{ 'mxk.text.reset' | i18n }}</button>
  76. <button nz-button (click)="query.expandForm = !query.expandForm" class="mx-sm">
  77. {{ query.expandForm ? ('mxk.text.collapse' | i18n) : ('mxk.text.expand' | i18n) }}</button
  78. >
  79. </div>
  80. </div>
  81. </form>
  82. </nz-card>
  83. <nz-card>
  84. <nz-table
  85. #dynamicTable
  86. nzTableLayout="auto"
  87. nzSize="small"
  88. nzShowSizeChanger
  89. [nzBordered]="true"
  90. [nzData]="query.results.rows"
  91. [nzFrontPagination]="false"
  92. [nzTotal]="query.results.records"
  93. [nzPageSizeOptions]="query.params.pageSizeOptions"
  94. [nzPageSize]="query.params.pageSize"
  95. [nzPageIndex]="query.params.pageNumber"
  96. [nzLoading]="this.query.tableLoading"
  97. (nzQueryParams)="onQueryParamsChange($event)"
  98. >
  99. <thead>
  100. <tr>
  101. <th nzAlign="center">{{ 'mxk.history.login.sessionId' | i18n }}</th>
  102. <th nzAlign="center">{{ 'mxk.history.login.username' | i18n }}</th>
  103. <th nzAlign="center">{{ 'mxk.history.login.displayName' | i18n }}</th>
  104. <th nzAlign="center">{{ 'mxk.history.login.message' | i18n }}</th>
  105. <th nzAlign="center">{{ 'mxk.history.login.loginType' | i18n }}</th>
  106. <th nzAlign="center">{{ 'mxk.history.login.sourceIp' | i18n }}</th>
  107. <th nzAlign="center">{{ 'mxk.history.login.location' | i18n }}</th>
  108. <th nzAlign="center">{{ 'mxk.history.login.browser' | i18n }}</th>
  109. <th nzAlign="center">{{ 'mxk.history.login.platform' | i18n }}</th>
  110. <th nzAlign="center">{{ 'mxk.history.login.loginTime' | i18n }}</th>
  111. <th nzAlign="center">{{ 'mxk.history.login.logoutTime' | i18n }}</th>
  112. </tr>
  113. </thead>
  114. <tbody>
  115. <tr *ngFor="let data of query.results.rows">
  116. <td nzAlign="left">
  117. <span>{{ data.sessionId }}</span>
  118. </td>
  119. <td nzAlign="left">{{ data.username }}</td>
  120. <td nzAlign="left">{{ data.displayName }}</td>
  121. <td nzAlign="left">{{ data.message }}</td>
  122. <td nzAlign="left">{{ data.loginType }}</td>
  123. <td nzAlign="left">{{ data.sourceIp }}</td>
  124. <td nzAlign="left">{{ data.location }}</td>
  125. <td nzAlign="left">{{ data.browser }}</td>
  126. <td nzAlign="left">{{ data.platform }}</td>
  127. <td nzAlign="left">{{ data.loginTime }}</td>
  128. <td nzAlign="left">{{ data.logoutTime }}</td>
  129. </tr>
  130. </tbody>
  131. </nz-table>
  132. </nz-card>