user-editer.component.html 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644
  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-tabset style="width: 100%">
  5. <nz-tab nzTitle="{{ 'mxk.users.tab.basic' | i18n }}">
  6. <div nz-row>
  7. <nz-form-item style="display: none">
  8. <nz-form-label [nzMd]="8" nzFor="id">{{ 'mxk.text.id' | i18n }}</nz-form-label>
  9. <nz-form-control [nzMd]="16" nzErrorTip="The input is not valid id!">
  10. <input
  11. [(ngModel)]="form.model.id"
  12. disabled="{{ isEdit }}"
  13. [ngModelOptions]="{ standalone: true }"
  14. nz-input
  15. name="id"
  16. id="id"
  17. />
  18. <input
  19. [(ngModel)]="form.model.pictureId"
  20. disabled="{{ isEdit }}"
  21. [ngModelOptions]="{ standalone: true }"
  22. nz-input
  23. name="pictureId"
  24. id="pictureId"
  25. />
  26. </nz-form-control>
  27. </nz-form-item>
  28. <nz-form-item>
  29. <div nz-row style="width: 100%; margin-bottom: 18px">
  30. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="name">{{ 'mxk.users.displayName' | i18n }} </nz-form-label>
  31. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid displayName!">
  32. <input
  33. [(ngModel)]="form.model.displayName"
  34. [ngModelOptions]="{ standalone: true }"
  35. nz-input
  36. name="displayName"
  37. id="displayName"
  38. />
  39. </nz-form-control>
  40. </div>
  41. <div nz-row style="width: 100%; margin-bottom: 18px">
  42. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="username">{{ 'mxk.users.username' | i18n }} </nz-form-label>
  43. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid username!">
  44. <input [(ngModel)]="form.model.username" [ngModelOptions]="{ standalone: true }" nz-input name="username" id="username" />
  45. </nz-form-control>
  46. </div>
  47. <div nz-row class="{{ isEdit ? 'passwordhidden' : 'passwordshow' }}">
  48. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="password">{{ 'mxk.users.password' | i18n }} </nz-form-label>
  49. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid password!">
  50. <nz-input-group [nzAddOnAfter]="suffixPasswordButton" style="width: 100%">
  51. <input
  52. type="text"
  53. nz-input
  54. placeholder="new password"
  55. [(ngModel)]="form.model.password"
  56. [ngModelOptions]="{ standalone: true }"
  57. name="password"
  58. id="password"
  59. />
  60. </nz-input-group>
  61. <ng-template #suffixPasswordButton>
  62. <button nz-button nzType="primary" nzSearch (click)="onPassword($event)">{{ 'mxk.text.generate' | i18n }}</button>
  63. </ng-template>
  64. </nz-form-control>
  65. </div>
  66. <div nz-row style="width: 100%">
  67. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="gender">{{ 'mxk.users.gender' | i18n }}</nz-form-label>
  68. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid gender!">
  69. <nz-radio-group [(ngModel)]="form.model.gender_select" [ngModelOptions]="{ standalone: true }" nzButtonStyle="solid">
  70. <label nz-radio-button nzValue="2">{{ 'mxk.users.gender.male' | i18n }}</label>
  71. <label nz-radio-button nzValue="1">{{ 'mxk.users.gender.female' | i18n }}</label>
  72. </nz-radio-group>
  73. </nz-form-control>
  74. </div>
  75. </nz-form-item>
  76. <nz-form-item>
  77. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="uploadFile">{{ 'mxk.users.picture' | i18n }}</nz-form-label>
  78. <div nz-col class="clearfix" nzSm="16" nzXs="24">
  79. <nz-upload
  80. nzAction="/file/upload/"
  81. nzListType="picture-card"
  82. [(nzFileList)]="fileList"
  83. nzName="uploadFile"
  84. [nzShowButton]="fileList.length < 1"
  85. [nzPreview]="handlePreview"
  86. (nzChange)="uploadImageChange($event)"
  87. >
  88. <div>
  89. <i nz-icon nzType="plus"></i>
  90. <div style="margin-top: 8px">Upload</div>
  91. </div>
  92. </nz-upload>
  93. <nz-modal [nzVisible]="previewVisible" [nzContent]="modalContent" [nzFooter]="null" (nzOnCancel)="previewVisible = false">
  94. <ng-template #modalContent>
  95. <img [src]="previewImage" [ngStyle]="{ width: '100%' }" />
  96. </ng-template>
  97. </nz-modal>
  98. </div>
  99. </nz-form-item>
  100. </div>
  101. <div nz-row>
  102. <nz-form-item>
  103. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="employeeNumber">{{ 'mxk.users.employeeNumber' | i18n }} </nz-form-label>
  104. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid employeeNumber!">
  105. <input
  106. [(ngModel)]="form.model.employeeNumber"
  107. [ngModelOptions]="{ standalone: true }"
  108. nz-input
  109. name="employeeNumber"
  110. id="employeeNumber"
  111. />
  112. </nz-form-control>
  113. </nz-form-item>
  114. <nz-form-item>
  115. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="windowsAccount">{{ 'mxk.users.windowsAccount' | i18n }} </nz-form-label>
  116. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid status!">
  117. <input
  118. [(ngModel)]="form.model.windowsAccount"
  119. [ngModelOptions]="{ standalone: true }"
  120. nz-input
  121. name="windowsAccount"
  122. id="windowsAccount"
  123. />
  124. </nz-form-control>
  125. </nz-form-item>
  126. </div>
  127. <div nz-row>
  128. <nz-form-item>
  129. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="mobile">{{ 'mxk.users.mobile' | i18n }}</nz-form-label>
  130. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid mobile!">
  131. <input [(ngModel)]="form.model.mobile" [ngModelOptions]="{ standalone: true }" nz-input name="mobile" id="mobile" />
  132. </nz-form-control>
  133. </nz-form-item>
  134. <nz-form-item>
  135. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="email">{{ 'mxk.users.email' | i18n }}</nz-form-label>
  136. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid email!">
  137. <input [(ngModel)]="form.model.email" [ngModelOptions]="{ standalone: true }" nz-input name="email" id="email" />
  138. </nz-form-control>
  139. </nz-form-item>
  140. </div>
  141. <div nz-row>
  142. <nz-form-item>
  143. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="userType">{{ 'mxk.users.userType' | i18n }} </nz-form-label>
  144. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid userType!">
  145. <nz-select [(ngModel)]="form.model.userType" [ngModelOptions]="{ standalone: true }" name="userType" id="userType">
  146. <nz-option nzValue="EMPLOYEE" nzLabel="{{ 'mxk.users.userType.employee' | i18n }}"> </nz-option>
  147. <nz-option nzValue="SUPPLIER" nzLabel="{{ 'mxk.users.userType.supplier' | i18n }}"> </nz-option>
  148. <nz-option nzValue="CUSTOMER" nzLabel="{{ 'mxk.users.userType.customer' | i18n }}"> </nz-option>
  149. <nz-option nzValue="CONTRACTOR" nzLabel="{{ 'mxk.users.userType.contractor' | i18n }}"></nz-option>
  150. <nz-option nzValue="DEALER" nzLabel="{{ 'mxk.users.userType.dealer' | i18n }}"></nz-option>
  151. <nz-option nzValue="PARTNER" nzLabel="{{ 'mxk.users.userType.partner' | i18n }}"></nz-option>
  152. <nz-option nzValue="EXTERNAL" nzLabel="{{ 'mxk.users.userType.external' | i18n }}"></nz-option>
  153. <nz-option nzValue="INTERN" nzLabel="{{ 'mxk.users.userType.intern' | i18n }}"></nz-option>
  154. <nz-option nzValue="TEMP" nzLabel="{{ 'mxk.users.userType.temp' | i18n }}"></nz-option>
  155. </nz-select>
  156. </nz-form-control>
  157. </nz-form-item>
  158. <nz-form-item>
  159. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="userState">{{ 'mxk.users.userstate' | i18n }} </nz-form-label>
  160. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid userState!">
  161. <nz-select [(ngModel)]="form.model.userState" [ngModelOptions]="{ standalone: true }" name="userState" id="userState">
  162. <nz-option nzValue="RESIDENT" nzLabel="{{ 'mxk.users.userstate.resident' | i18n }}"> </nz-option>
  163. <nz-option nzValue="WITHDRAWN" nzLabel="{{ 'mxk.users.userstate.withdrawn' | i18n }}"> </nz-option>
  164. <nz-option nzValue="INACTIVE" nzLabel="{{ 'mxk.users.userstate.inactive' | i18n }}"> </nz-option>
  165. <nz-option nzValue="RETIREE" nzLabel="{{ 'mxk.users.userstate.retiree' | i18n }}"></nz-option>
  166. </nz-select>
  167. </nz-form-control>
  168. </nz-form-item>
  169. </div>
  170. <div nz-row>
  171. <nz-form-item>
  172. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="sortIndex">{{ 'mxk.text.sortIndex' | i18n }} </nz-form-label>
  173. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid sortIndex!">
  174. <nz-input-number
  175. [(ngModel)]="form.model.sortIndex"
  176. [ngModelOptions]="{ standalone: true }"
  177. [nzMin]="1"
  178. [nzMax]="100000"
  179. [nzStep]="1"
  180. ></nz-input-number>
  181. </nz-form-control>
  182. </nz-form-item>
  183. <nz-form-item>
  184. <nz-form-label [nzSm]="8" [nzXs]="24" nzRequired nzFor="status">{{ 'mxk.text.status' | i18n }} </nz-form-label>
  185. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid status!">
  186. <nz-select [(ngModel)]="form.model.str_status" [ngModelOptions]="{ standalone: true }" name="status" id="status">
  187. <nz-option nzValue="1" nzLabel="{{ 'mxk.users.status.active' | i18n }}"></nz-option>
  188. <nz-option nzValue="2" nzLabel="{{ 'mxk.users.status.inactive' | i18n }}"></nz-option>
  189. <nz-option nzValue="4" nzLabel="{{ 'mxk.users.status.forbidden' | i18n }}"></nz-option>
  190. <nz-option nzValue="5" nzLabel="{{ 'mxk.users.status.lock' | i18n }}"></nz-option>
  191. <nz-option nzValue="9" nzLabel="{{ 'mxk.users.status.delete' | i18n }}"></nz-option>
  192. </nz-select>
  193. </nz-form-control>
  194. </nz-form-item>
  195. </div>
  196. </nz-tab>
  197. <nz-tab nzTitle="{{ 'mxk.users.tab.personal' | i18n }}">
  198. <div nz-row>
  199. <nz-form-item>
  200. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="familyName">{{ 'mxk.users.familyName' | i18n }}</nz-form-label>
  201. <nz-form-control [nzSm]="16" [nzXs]="16" nzErrorTip="The input is not valid familyName!">
  202. <input
  203. [(ngModel)]="form.model.familyName"
  204. [ngModelOptions]="{ standalone: true }"
  205. nz-input
  206. name="familyName"
  207. id="familyName"
  208. />
  209. </nz-form-control>
  210. </nz-form-item>
  211. <nz-form-item>
  212. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="middleName">{{ 'mxk.users.middleName' | i18n }}</nz-form-label>
  213. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid middleName!">
  214. <input
  215. [(ngModel)]="form.model.middleName"
  216. [ngModelOptions]="{ standalone: true }"
  217. nz-input
  218. name="middleName"
  219. id="middleName"
  220. />
  221. </nz-form-control>
  222. </nz-form-item>
  223. </div>
  224. <div nz-row>
  225. <nz-form-item>
  226. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="givenName">{{ 'mxk.users.givenName' | i18n }}</nz-form-label>
  227. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid givenName!">
  228. <input [(ngModel)]="form.model.givenName" [ngModelOptions]="{ standalone: true }" nz-input name="givenName" id="givenName" />
  229. </nz-form-control>
  230. </nz-form-item>
  231. <nz-form-item>
  232. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="nickName">{{ 'mxk.users.nickName' | i18n }}</nz-form-label>
  233. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid nickName!">
  234. <input [(ngModel)]="form.model.nickName" [ngModelOptions]="{ standalone: true }" nz-input name="nickName" id="nickName" />
  235. </nz-form-control>
  236. </nz-form-item>
  237. </div>
  238. <div nz-row>
  239. <nz-form-item>
  240. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="idType">{{ 'mxk.users.idtype' | i18n }}</nz-form-label>
  241. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid idType!">
  242. <nz-select [(ngModel)]="form.model.str_idType" [ngModelOptions]="{ standalone: true }" name="idType" id="idType">
  243. <nz-option nzValue="0" nzLabel="{{ 'mxk.users.idtype.unknown' | i18n }}"></nz-option>
  244. <nz-option nzValue="1" nzLabel="{{ 'mxk.users.idtype.idcard' | i18n }}"></nz-option>
  245. <nz-option nzValue="2" nzLabel="{{ 'mxk.users.idtype.passport' | i18n }}"></nz-option>
  246. <nz-option nzValue="3" nzLabel="{{ 'mxk.users.idtype.studentcard' | i18n }}"></nz-option>
  247. <nz-option nzValue="4" nzLabel="{{ 'mxk.users.idtype.militarycard' | i18n }}"></nz-option>
  248. </nz-select>
  249. </nz-form-control>
  250. </nz-form-item>
  251. <nz-form-item>
  252. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="idCardNo">{{ 'mxk.users.idCardNo' | i18n }}</nz-form-label>
  253. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid idCardNo!">
  254. <input [(ngModel)]="form.model.idCardNo" [ngModelOptions]="{ standalone: true }" nz-input name="idCardNo" id="idCardNo" />
  255. </nz-form-control>
  256. </nz-form-item>
  257. </div>
  258. <div nz-row>
  259. <nz-form-item>
  260. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="married">{{ 'mxk.users.married' | i18n }}</nz-form-label>
  261. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid married!">
  262. <nz-select [(ngModel)]="form.model.str_married" [ngModelOptions]="{ standalone: true }" name="married" id="married">
  263. <nz-option nzValue="0" nzLabel="{{ 'mxk.users.married.unknown' | i18n }}"></nz-option>
  264. <nz-option nzValue="1" nzLabel="{{ 'mxk.users.married.single' | i18n }}"></nz-option>
  265. <nz-option nzValue="2" nzLabel="{{ 'mxk.users.married.married' | i18n }}"></nz-option>
  266. <nz-option nzValue="3" nzLabel="{{ 'mxk.users.married.divorce' | i18n }}"></nz-option>
  267. <nz-option nzValue="4" nzLabel="{{ 'mxk.users.married.widowed' | i18n }}"></nz-option>
  268. </nz-select>
  269. </nz-form-control>
  270. </nz-form-item>
  271. <nz-form-item>
  272. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="birthDate">{{ 'mxk.users.birthDate' | i18n }}</nz-form-label>
  273. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid birthDate!">
  274. <input [(ngModel)]="form.model.birthDate" [ngModelOptions]="{ standalone: true }" nz-input name="birthDate" id="birthDate" />
  275. </nz-form-control>
  276. </nz-form-item>
  277. </div>
  278. <div nz-row>
  279. <nz-form-item>
  280. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="education">{{ 'mxk.users.education' | i18n }}</nz-form-label>
  281. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid education!">
  282. <input [(ngModel)]="form.model.education" [ngModelOptions]="{ standalone: true }" nz-input name="education" />
  283. </nz-form-control>
  284. </nz-form-item>
  285. <nz-form-item>
  286. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="graduateFrom">{{ 'mxk.users.graduateFrom' | i18n }}</nz-form-label>
  287. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid graduateFrom!">
  288. <input [(ngModel)]="form.model.graduateFrom" [ngModelOptions]="{ standalone: true }" nz-input name="graduateFrom" />
  289. </nz-form-control>
  290. </nz-form-item>
  291. </div>
  292. <div nz-row>
  293. <nz-form-item>
  294. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="graduateDate">{{ 'mxk.users.graduateDate' | i18n }}</nz-form-label>
  295. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid graduateDate!">
  296. <input [(ngModel)]="form.model.graduateDate" [ngModelOptions]="{ standalone: true }" nz-input name="graduateDate" />
  297. </nz-form-control>
  298. </nz-form-item>
  299. <nz-form-item>
  300. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="startWorkDate">{{ 'mxk.users.startWorkDate' | i18n }} </nz-form-label>
  301. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid startWorkDate!">
  302. <input
  303. [(ngModel)]="form.model.startWorkDate"
  304. [ngModelOptions]="{ standalone: true }"
  305. nz-input
  306. name="startWorkDate"
  307. id="startWorkDate"
  308. />
  309. </nz-form-control>
  310. </nz-form-item>
  311. </div>
  312. <div nz-row>
  313. <nz-form-item>
  314. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="timeZone">{{ 'mxk.users.timeZone' | i18n }}</nz-form-label>
  315. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid timeZone!">
  316. <input [(ngModel)]="form.model.timeZone" [ngModelOptions]="{ standalone: true }" nz-input name="timeZone" />
  317. </nz-form-control>
  318. </nz-form-item>
  319. <nz-form-item>
  320. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="preferredLanguage">{{ 'mxk.users.preferredLanguage' | i18n }} </nz-form-label>
  321. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid preferredLanguage!">
  322. <input
  323. [(ngModel)]="form.model.preferredLanguage"
  324. [ngModelOptions]="{ standalone: true }"
  325. nz-input
  326. name="preferredLanguage"
  327. id="preferredLanguage"
  328. />
  329. </nz-form-control>
  330. </nz-form-item>
  331. </div>
  332. <div nz-row>
  333. <nz-form-item>
  334. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="webSite">{{ 'mxk.users.website' | i18n }}</nz-form-label>
  335. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid webSite!">
  336. <input [(ngModel)]="form.model.webSite" [ngModelOptions]="{ standalone: true }" nz-input name="webSite" id="webSite" />
  337. </nz-form-control>
  338. </nz-form-item>
  339. <nz-form-item>
  340. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="defineIm">{{ 'mxk.users.ims' | i18n }}</nz-form-label>
  341. <nz-form-control [nzSm]="16" [nzXs]="24" nzErrorTip="The input is not valid defineIm!">
  342. <input [(ngModel)]="form.model.defineIm" [ngModelOptions]="{ standalone: true }" nz-input name="defineIm" id="defineIm" />
  343. </nz-form-control>
  344. </nz-form-item>
  345. </div>
  346. </nz-tab>
  347. <nz-tab nzTitle="{{ 'mxk.users.tab.business' | i18n }}">
  348. <div nz-row>
  349. <nz-form-item>
  350. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="organization">{{ 'mxk.users.organization' | i18n }} </nz-form-label>
  351. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid organization!">
  352. <input
  353. [(ngModel)]="form.model.organization"
  354. [ngModelOptions]="{ standalone: true }"
  355. nz-input
  356. name="organization"
  357. id="organization"
  358. />
  359. </nz-form-control>
  360. </nz-form-item>
  361. <nz-form-item>
  362. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="division">{{ 'mxk.users.division' | i18n }}</nz-form-label>
  363. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid division!">
  364. <input [(ngModel)]="form.model.division" [ngModelOptions]="{ standalone: true }" nz-input name="division" id="division" />
  365. </nz-form-control>
  366. </nz-form-item>
  367. </div>
  368. <div nz-row>
  369. <nz-form-item>
  370. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="departmentId">{{ 'mxk.users.departmentId' | i18n }}</nz-form-label>
  371. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid departmentId!">
  372. <input
  373. [(ngModel)]="form.model.departmentId"
  374. [ngModelOptions]="{ standalone: true }"
  375. [disabled]="true"
  376. nz-input
  377. name="departmentId"
  378. id="departmentId"
  379. />
  380. </nz-form-control>
  381. </nz-form-item>
  382. <nz-form-item>
  383. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="departmentId">{{ 'mxk.users.department' | i18n }} </nz-form-label>
  384. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid departmentId!">
  385. <!-- <input [(ngModel)]="form.model.departmentId" [ngModelOptions]="{ standalone: true }" nz-input name="departmentId" id="departmentId" />-->
  386. <nz-tree-select
  387. #orgTree
  388. [nzNodes]="orgNodes"
  389. nzShowSearch
  390. nzPlaceHolder="Please select"
  391. [(ngModel)]="form.model.departmentId"
  392. [ngModelOptions]="{ standalone: true }"
  393. (ngModelChange)="onDeptChange($event)"
  394. nzVirtualHeight="300px"
  395. ></nz-tree-select>
  396. </nz-form-control>
  397. </nz-form-item>
  398. </div>
  399. <div nz-row>
  400. <nz-form-item>
  401. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="costCenter">{{ 'mxk.users.costCenter' | i18n }}</nz-form-label>
  402. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid departmentId!">
  403. <input
  404. [(ngModel)]="form.model.costCenter"
  405. [ngModelOptions]="{ standalone: true }"
  406. nz-input
  407. name="costCenter"
  408. id="costCenter"
  409. />
  410. </nz-form-control>
  411. </nz-form-item>
  412. <nz-form-item>
  413. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="jobLevel">{{ 'mxk.users.jobLevel' | i18n }}</nz-form-label>
  414. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid jobLevel!">
  415. <input [(ngModel)]="form.model.jobLevel" [ngModelOptions]="{ standalone: true }" nz-input name="jobLevel" id="jobLevel" />
  416. </nz-form-control>
  417. </nz-form-item>
  418. </div>
  419. <div nz-row>
  420. <nz-form-item>
  421. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="jobTitle">{{ 'mxk.users.jobTitle' | i18n }}</nz-form-label>
  422. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid jobTitle!">
  423. <input [(ngModel)]="form.model.jobTitle" [ngModelOptions]="{ standalone: true }" nz-input name="jobTitle" id="jobTitle" />
  424. </nz-form-control>
  425. </nz-form-item>
  426. <nz-form-item>
  427. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="manager">{{ 'mxk.users.manager' | i18n }}</nz-form-label>
  428. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid manager!">
  429. <input [(ngModel)]="form.model.manager" [ngModelOptions]="{ standalone: true }" nz-input name="manager" id="manager" />
  430. </nz-form-control>
  431. </nz-form-item>
  432. </div>
  433. <div nz-row>
  434. <nz-form-item>
  435. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="assistant">{{ 'mxk.users.assistant' | i18n }}</nz-form-label>
  436. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid assistant!">
  437. <input [(ngModel)]="form.model.assistant" [ngModelOptions]="{ standalone: true }" nz-input name="assistant" id="assistant" />
  438. </nz-form-control>
  439. </nz-form-item>
  440. <nz-form-item>
  441. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="workOfficeName">{{ 'mxk.users.workOfficeName' | i18n }} </nz-form-label>
  442. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid workOfficeName!">
  443. <input
  444. [(ngModel)]="form.model.workOfficeName"
  445. [ngModelOptions]="{ standalone: true }"
  446. nz-input
  447. name="workOfficeName"
  448. id="workOfficeName"
  449. />
  450. </nz-form-control>
  451. </nz-form-item>
  452. </div>
  453. <div nz-row>
  454. <nz-form-item>
  455. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="entryDate">{{ 'mxk.users.entryDate' | i18n }}</nz-form-label>
  456. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid entryDate!">
  457. <input [(ngModel)]="form.model.entryDate" [ngModelOptions]="{ standalone: true }" nz-input name="entryDate" id="entryDate" />
  458. </nz-form-control>
  459. </nz-form-item>
  460. <nz-form-item>
  461. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="quitDate">{{ 'mxk.users.quitDate' | i18n }}</nz-form-label>
  462. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid quitDate!">
  463. <input [(ngModel)]="form.model.quitDate" [ngModelOptions]="{ standalone: true }" nz-input name="quitDate" id="quitDate" />
  464. </nz-form-control>
  465. </nz-form-item>
  466. </div>
  467. </nz-tab>
  468. <nz-tab nzTitle="{{ 'mxk.users.tab.business.extra' | i18n }}">
  469. <div nz-row>
  470. <nz-form-item>
  471. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="workPhoneNumber">{{ 'mxk.users.workPhoneNumber' | i18n }} </nz-form-label>
  472. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid workPhoneNumber!">
  473. <input
  474. [(ngModel)]="form.model.workPhoneNumber"
  475. [ngModelOptions]="{ standalone: true }"
  476. nz-input
  477. name="workPhoneNumber"
  478. id="workPhoneNumber"
  479. />
  480. </nz-form-control>
  481. </nz-form-item>
  482. <nz-form-item>
  483. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="workEmail">{{ 'mxk.users.workEmail' | i18n }}</nz-form-label>
  484. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid workEmail!">
  485. <input [(ngModel)]="form.model.workEmail" [ngModelOptions]="{ standalone: true }" nz-input name="workEmail" id="workEmail" />
  486. </nz-form-control>
  487. </nz-form-item>
  488. </div>
  489. <div nz-row>
  490. <nz-form-item>
  491. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="workCountry">{{ 'mxk.users.workCountry' | i18n }} </nz-form-label>
  492. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid workCountry!">
  493. <input
  494. [(ngModel)]="form.model.workCountry"
  495. [ngModelOptions]="{ standalone: true }"
  496. nz-input
  497. name="workCountry"
  498. id="workCountry"
  499. />
  500. </nz-form-control>
  501. </nz-form-item>
  502. <nz-form-item>
  503. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="region">{{ 'mxk.users.workRegion' | i18n }}</nz-form-label>
  504. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid region!">
  505. <input [(ngModel)]="form.model.workRegion" [ngModelOptions]="{ standalone: true }" nz-input name="region" id="region" />
  506. </nz-form-control>
  507. </nz-form-item>
  508. </div>
  509. <div nz-row>
  510. <nz-form-item>
  511. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="locality">{{ 'mxk.users.workLocality' | i18n }}</nz-form-label>
  512. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid locality!">
  513. <input [(ngModel)]="form.model.workLocality" [ngModelOptions]="{ standalone: true }" nz-input name="locality" id="locality" />
  514. </nz-form-control>
  515. </nz-form-item>
  516. <nz-form-item>
  517. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="street">{{ 'mxk.users.workStreetAddress' | i18n }} </nz-form-label>
  518. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid street!">
  519. <input
  520. [(ngModel)]="form.model.workStreetAddress"
  521. [ngModelOptions]="{ standalone: true }"
  522. nz-input
  523. name="street"
  524. id="street"
  525. />
  526. </nz-form-control>
  527. </nz-form-item>
  528. </div>
  529. <div nz-row>
  530. <nz-form-item>
  531. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="postalCode">{{ 'mxk.users.workPostalCode' | i18n }} </nz-form-label>
  532. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid postalCode!">
  533. <input
  534. [(ngModel)]="form.model.workPostalCode"
  535. [ngModelOptions]="{ standalone: true }"
  536. nz-input
  537. name="postalCode"
  538. id="postalCode"
  539. />
  540. </nz-form-control>
  541. </nz-form-item>
  542. <nz-form-item>
  543. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="workFax">{{ 'mxk.users.workFax' | i18n }}</nz-form-label>
  544. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid workFax!">
  545. <input [(ngModel)]="form.model.workFax" [ngModelOptions]="{ standalone: true }" nz-input name="workFax" id="workFax" />
  546. </nz-form-control>
  547. </nz-form-item>
  548. </div>
  549. </nz-tab>
  550. <nz-tab nzTitle="{{ 'mxk.users.tab.home' | i18n }}">
  551. <div nz-row>
  552. <nz-form-item>
  553. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="homeEmail">{{ 'mxk.users.homeEmail' | i18n }}</nz-form-label>
  554. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid homeEmail!">
  555. <input [(ngModel)]="form.model.homeEmail" [ngModelOptions]="{ standalone: true }" nz-input name="homeEmail" id="homeEmail" />
  556. </nz-form-control>
  557. </nz-form-item>
  558. <nz-form-item>
  559. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="homePhoneNumber">{{ 'mxk.users.homePhoneNumber' | i18n }} </nz-form-label>
  560. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid homePhoneNumber!">
  561. <input
  562. [(ngModel)]="form.model.homePhoneNumber"
  563. [ngModelOptions]="{ standalone: true }"
  564. nz-input
  565. name="homePhoneNumber"
  566. id="homePhoneNumber"
  567. />
  568. </nz-form-control>
  569. </nz-form-item>
  570. </div>
  571. <div nz-row>
  572. <nz-form-item>
  573. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="homeFax">{{ 'mxk.users.homeFax' | i18n }}</nz-form-label>
  574. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid homeFax!">
  575. <input [(ngModel)]="form.model.homeFax" [ngModelOptions]="{ standalone: true }" nz-input name="homeFax" id="homeFax" />
  576. </nz-form-control>
  577. </nz-form-item>
  578. <nz-form-item>
  579. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="homePostalCode">{{ 'mxk.users.homePostalCode' | i18n }} </nz-form-label>
  580. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid postalCode!">
  581. <input
  582. [(ngModel)]="form.model.homePostalCode"
  583. [ngModelOptions]="{ standalone: true }"
  584. nz-input
  585. name="homePostalCode"
  586. id="homePostalCode"
  587. />
  588. </nz-form-control>
  589. </nz-form-item>
  590. </div>
  591. <div nz-row>
  592. <nz-form-item>
  593. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="homeCountry">{{ 'mxk.users.homeCountry' | i18n }} </nz-form-label>
  594. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid homeCountry!">
  595. <input
  596. [(ngModel)]="form.model.homeCountry"
  597. [ngModelOptions]="{ standalone: true }"
  598. nz-input
  599. name="homeCountry"
  600. id="homeCountry"
  601. />
  602. </nz-form-control>
  603. </nz-form-item>
  604. <nz-form-item>
  605. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="region">{{ 'mxk.users.homeRegion' | i18n }}</nz-form-label>
  606. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid region!">
  607. <input [(ngModel)]="form.model.homeRegion" [ngModelOptions]="{ standalone: true }" nz-input name="region" id="region" />
  608. </nz-form-control>
  609. </nz-form-item>
  610. </div>
  611. <div nz-row>
  612. <nz-form-item>
  613. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="locality">{{ 'mxk.users.homeLocality' | i18n }}</nz-form-label>
  614. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid locality!">
  615. <input [(ngModel)]="form.model.homeLocality" [ngModelOptions]="{ standalone: true }" nz-input name="locality" id="locality" />
  616. </nz-form-control>
  617. </nz-form-item>
  618. <nz-form-item>
  619. <nz-form-label [nzSm]="8" [nzXs]="24" nzFor="homeStreetAddress">{{ 'mxk.users.homeStreetAddress' | i18n }} </nz-form-label>
  620. <nz-form-control [nzSm]="16" [nzMd]="16" [nzXs]="36" [nzXl]="48" nzErrorTip="The input is not valid street!">
  621. <input
  622. [(ngModel)]="form.model.homeStreetAddress"
  623. [ngModelOptions]="{ standalone: true }"
  624. nz-input
  625. name="street"
  626. id="street"
  627. />
  628. </nz-form-control>
  629. </nz-form-item>
  630. </div>
  631. <div nz-row> </div>
  632. </nz-tab>
  633. </nz-tabset>
  634. </form>
  635. </div>
  636. <div *nzModalFooter>
  637. <button nz-button nzType="default" (click)="onClose($event)">{{ 'mxk.text.close' | i18n }}</button>
  638. <button nz-button nzType="primary" (click)="onSubmit($event)">{{ 'mxk.text.submit' | i18n }}</button>
  639. </div>