synchronizer-editer.component.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. <div *nzModalTitle> {{ isEdit ? ('mxk.text.edit' | i18n) : ('mxk.text.add' | i18n) }} </div>
  2. <div>
  3. <form nz-form [formGroup]="formGroup" (ngSubmit)="onSubmit($event)" se-container="1">
  4. <nz-form-item>
  5. <nz-form-label [nzMd]="6" nzFor="id">{{ 'mxk.text.id' | i18n }}</nz-form-label>
  6. <nz-form-control [nzMd]="18" nzErrorTip="The input is not valid id!">
  7. <input [(ngModel)]="form.model.id" disabled="{{ isEdit }}" [ngModelOptions]="{ standalone: true }" nz-input
  8. name="id" id="id" />
  9. </nz-form-control>
  10. </nz-form-item>
  11. <nz-form-item>
  12. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="sourceType">{{ 'mxk.synchronizers.sourceType' | i18n }}
  13. </nz-form-label>
  14. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid sourceType!">
  15. <nz-select [(ngModel)]="form.model.sourceType" disabled="{{ isEdit }}" [ngModelOptions]="{ standalone: true }">
  16. <nz-option nzValue="SCIMV20" nzLabel="SCIM v2.0"> </nz-option>
  17. <nz-option nzValue="API" nzLabel="API"></nz-option>
  18. <nz-option nzValue="MSAD" nzLabel="MSAD"></nz-option>
  19. <nz-option nzValue="LDAP" nzLabel="LDAP"></nz-option>
  20. <nz-option nzValue="DB" nzLabel="DATABASE"></nz-option>
  21. </nz-select>
  22. </nz-form-control>
  23. </nz-form-item>
  24. <nz-form-item>
  25. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="service">{{ 'mxk.synchronizers.service' | i18n }}
  26. </nz-form-label>
  27. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid icon!">
  28. <input [(ngModel)]="form.model.service" [ngModelOptions]="{ standalone: true }" nz-input name="service"
  29. id="service" />
  30. </nz-form-control>
  31. </nz-form-item>
  32. <nz-form-item>
  33. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="scheduler">{{ 'mxk.synchronizers.scheduler' | i18n }}</nz-form-label>
  34. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid icon!">
  35. <input [(ngModel)]="form.model.scheduler" [ngModelOptions]="{ standalone: true }" nz-input name="scheduler"
  36. placeholder="0 0 12 * * ?" id="scheduler" />
  37. </nz-form-control>
  38. </nz-form-item>
  39. <nz-form-item *ngIf="form.model.sourceType == 'DB'">
  40. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="driverClass">{{ 'mxk.synchronizers.driverClass' | i18n }}
  41. </nz-form-label>
  42. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid driverClass!">
  43. <input [(ngModel)]="form.model.driverClass" [ngModelOptions]="{ standalone: true }" nz-input name="driverClass"
  44. id="driverClass" />
  45. </nz-form-control>
  46. </nz-form-item>
  47. <nz-form-item>
  48. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="providerUrl">{{ 'mxk.synchronizers.providerUrl' | i18n }}
  49. </nz-form-label>
  50. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid providerUrl!">
  51. <input [(ngModel)]="form.model.providerUrl" [ngModelOptions]="{ standalone: true }" nz-input name="providerUrl"
  52. id="providerUrl" />
  53. </nz-form-control>
  54. </nz-form-item>
  55. <nz-form-item>
  56. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="principal">{{ 'mxk.synchronizers.principal' | i18n }}
  57. </nz-form-label>
  58. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid principal!">
  59. <input [(ngModel)]="form.model.principal" [ngModelOptions]="{ standalone: true }" nz-input name="principal"
  60. id="principal" />
  61. </nz-form-control>
  62. </nz-form-item>
  63. <nz-form-item>
  64. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="credentials">{{ 'mxk.synchronizers.credentials' | i18n }}
  65. </nz-form-label>
  66. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid credentials!">
  67. <input type="password" [(ngModel)]="form.model.credentials" [ngModelOptions]="{ standalone: true }" nz-input
  68. name="credentials" id="credentials" />
  69. </nz-form-control>
  70. </nz-form-item>
  71. <nz-form-item *ngIf="form.model.sourceType == 'LDAP' || form.model.sourceType == 'MSAD'">
  72. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="userBasedn">{{ 'mxk.synchronizers.userBasedn' | i18n }}
  73. </nz-form-label>
  74. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid userBasedn!">
  75. <input [(ngModel)]="form.model.userBasedn" [ngModelOptions]="{ standalone: true }" nz-input name="userBasedn"
  76. id="userBasedn" />
  77. </nz-form-control>
  78. </nz-form-item>
  79. <nz-form-item *ngIf="form.model.sourceType == 'DB'">
  80. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="userFilters">{{ 'mxk.synchronizers.userFilters' | i18n }}
  81. </nz-form-label>
  82. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid userFilters!">
  83. <textarea [(ngModel)]="form.model.userFilters" [ngModelOptions]="{ standalone: true }" nz-input
  84. name="userFilters" id="userFilters">
  85. </textarea>
  86. </nz-form-control>
  87. </nz-form-item>
  88. <nz-form-item *ngIf="form.model.sourceType == 'LDAP' || form.model.sourceType == 'MSAD'">
  89. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="userFilters">{{ 'mxk.synchronizers.userFilters' | i18n }}
  90. </nz-form-label>
  91. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid userFilters!">
  92. <input [(ngModel)]="form.model.userFilters" [ngModelOptions]="{ standalone: true }" nz-input name="userFilters"
  93. id="userFilters" />
  94. </nz-form-control>
  95. </nz-form-item>
  96. <nz-form-item *ngIf="form.model.sourceType == 'LDAP'">
  97. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="orgBasedn">{{ 'mxk.synchronizers.orgBasedn' | i18n }}
  98. </nz-form-label>
  99. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid orgBasedn!">
  100. <input [(ngModel)]="form.model.orgBasedn" [ngModelOptions]="{ standalone: true }" nz-input name="orgBasedn"
  101. id="orgBasedn" />
  102. </nz-form-control>
  103. </nz-form-item>
  104. <nz-form-item *ngIf="form.model.sourceType == 'DB'">
  105. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="orgFilters">{{ 'mxk.synchronizers.orgFilters' | i18n }}
  106. </nz-form-label>
  107. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid orgFilters!">
  108. <textarea [(ngModel)]="form.model.orgFilters" [ngModelOptions]="{ standalone: true }" nz-input name="orgFilters"
  109. id="orgFilters"></textarea>
  110. </nz-form-control>
  111. </nz-form-item>
  112. <nz-form-item *ngIf="form.model.sourceType == 'LDAP'">
  113. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="orgFilters">{{ 'mxk.synchronizers.orgFilters' | i18n }}
  114. </nz-form-label>
  115. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid orgFilters!">
  116. <input [(ngModel)]="form.model.orgFilters" [ngModelOptions]="{ standalone: true }" nz-input name="orgFilters"
  117. id="orgFilters" />
  118. </nz-form-control>
  119. </nz-form-item>
  120. <nz-form-item *ngIf="form.model.sourceType == 'MSAD'">
  121. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="msadDomain">{{ 'mxk.synchronizers.msadDomain' | i18n }}
  122. </nz-form-label>
  123. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid msadDomain!">
  124. <input [(ngModel)]="form.model.msadDomain" [ngModelOptions]="{ standalone: true }" nz-input name="msadDomain"
  125. id="msadDomain" />
  126. </nz-form-control>
  127. </nz-form-item>
  128. <nz-form-item *ngIf="form.model.sourceType == 'LDAP' || form.model.sourceType == 'MSAD'">
  129. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="sslSwitch">{{ 'mxk.synchronizers.sslSwitch' | i18n }}</nz-form-label>
  130. <nz-form-control [nzSm]="14" [nzXs]="24" nzErrorTip="The input is not valid sslSwitch!">
  131. <nz-switch [(ngModel)]="form.model.switch_sslSwitch" [ngModelOptions]="{ standalone: true }" name="sslSwitch"
  132. [nzCheckedChildren]="checkedTemplate" [nzUnCheckedChildren]="unCheckedTemplate"></nz-switch>
  133. <ng-template #checkedTemplate><i nz-icon nzType="check"></i></ng-template>
  134. <ng-template #unCheckedTemplate><i nz-icon nzType="close"></i></ng-template>
  135. </nz-form-control>
  136. </nz-form-item>
  137. <nz-form-item
  138. *ngIf="(form.model.sourceType == 'LDAP' || form.model.sourceType == 'MSAD') && form.model.switch_sslSwitch">
  139. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="trustStore">{{ 'mxk.synchronizers.trustStore' | i18n }}
  140. </nz-form-label>
  141. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid trustStore!">
  142. <input [(ngModel)]="form.model.trustStore" [ngModelOptions]="{ standalone: true }" nz-input name="trustStore"
  143. id="trustStore" />
  144. </nz-form-control>
  145. </nz-form-item>
  146. <nz-form-item
  147. *ngIf="(form.model.sourceType == 'LDAP' || form.model.sourceType == 'MSAD') && form.model.switch_sslSwitch">
  148. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="trustStorePassword">{{ 'mxk.synchronizers.trustStorePassword' | i18n
  149. }}</nz-form-label>
  150. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid sortIndex!">
  151. <input [(ngModel)]="form.model.trustStorePassword" [ngModelOptions]="{ standalone: true }" nz-input
  152. name="trustStorePassword" id="trustStorePassword" />
  153. </nz-form-control>
  154. </nz-form-item>
  155. <nz-form-item *ngIf="form.model.sourceType == 'DB' || form.model.sourceType == 'API'">
  156. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="syncStartTime">{{ 'mxk.synchronizers.syncStartTime' | i18n }}
  157. </nz-form-label>
  158. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48"
  159. nzErrorTip="The input is not valid syncStartTime!">
  160. <nz-input-group nzAddOnAfter="{{ 'mxk.text.day' | i18n }}">
  161. <input [(ngModel)]="form.model.syncStartTime" [ngModelOptions]="{ standalone: true }" nz-input
  162. name="syncStartTime" id="syncStartTime" />
  163. </nz-input-group>
  164. </nz-form-control>
  165. </nz-form-item>
  166. <nz-form-item>
  167. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="resumeTime">{{ 'mxk.synchronizers.resumeTime' | i18n }}
  168. </nz-form-label>
  169. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid resumeTime!">
  170. <input [(ngModel)]="form.model.resumeTime" [ngModelOptions]="{ standalone: true }" nz-input name="resumeTime"
  171. id="resumeTime" />
  172. </nz-form-control>
  173. </nz-form-item>
  174. <nz-form-item>
  175. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="suspendTime">{{ 'mxk.synchronizers.suspendTime' | i18n }}
  176. </nz-form-label>
  177. <nz-form-control [nzSm]="18" [nzMd]="18" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid suspendTime!">
  178. <input [(ngModel)]="form.model.suspendTime" [ngModelOptions]="{ standalone: true }" nz-input name="suspendTime"
  179. id="suspendTime" />
  180. </nz-form-control>
  181. </nz-form-item>
  182. <nz-form-item>
  183. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="status">{{ 'mxk.text.status' | i18n }}</nz-form-label>
  184. <nz-form-control [nzSm]="14" [nzXs]="24" nzErrorTip="The input is not valid status!">
  185. <nz-switch [(ngModel)]="form.model.switch_status" [ngModelOptions]="{ standalone: true }" name="status"
  186. [nzCheckedChildren]="checkedTemplate" [nzUnCheckedChildren]="unCheckedTemplate"></nz-switch>
  187. <ng-template #checkedTemplate><i nz-icon nzType="check"></i></ng-template>
  188. <ng-template #unCheckedTemplate><i nz-icon nzType="close"></i></ng-template>
  189. </nz-form-control>
  190. </nz-form-item>
  191. </form>
  192. </div>
  193. <div *nzModalFooter>
  194. <button nz-button nzType="default" (click)="onClose($event)">{{ 'mxk.text.close' | i18n }}</button>
  195. <button nz-button nzType="primary" (click)="onSubmit($event)">{{ 'mxk.text.submit' | i18n }}</button>
  196. </div>