hospital-management.component.html 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. <div class="list-template">
  2. <div class="list-template__content">
  3. <div *ngIf="currentUserAccount == 'dsadmin'" class="list-template__top">
  4. <!-- <div class="list-template__top"> -->
  5. <div nz-col nzXl="18" class="list-template__searchBox"></div>
  6. <div nz-col nzXl="6" class="list-template__btns">
  7. <button nz-button class="btn default" (click)="addModal()">新增</button>
  8. </div>
  9. </div>
  10. <div class="list-template__bottom">
  11. <nz-table
  12. class="list-template__nzTable"
  13. [nzData]="listOfData"
  14. nzSize="middle"
  15. [nzShowPagination]="false"
  16. [nzLoading]="loading1"
  17. >
  18. <thead>
  19. <tr class="thead">
  20. <th nzWidth="16%">院区/部门名称</th>
  21. <th nzWidth="16%">部门类型</th>
  22. <th nzWidth="16%">父院区</th>
  23. <th nzWidth="16%">父级部门</th>
  24. <th nzWidth="16%">院区编码</th>
  25. <th nzWidth="20%">操作</th>
  26. </tr>
  27. </thead>
  28. <tbody>
  29. <tr *ngFor="let data of listOfData">
  30. <td>{{ data.hosName || '无' }}</td>
  31. <td>{{ data.type ? data.type.name : '无' }}</td>
  32. <td>{{ data.parent ? data.parent.hosName : '无' }}</td>
  33. <td>{{ data.parentDeptDTO ? data.parentDeptDTO.hosName : '无' }}</td>
  34. <td>{{ data.hosNo || '无' }}</td>
  35. <td>
  36. <div class="coop">
  37. <span *ngIf="currentUserAccount == 'dsadmin'" (click)="copy(data)">复制</span>
  38. <span *ngIf="coopBtns.edit" (click)="edit(data)">编辑</span>
  39. <span *ngIf="coopBtns.del" (click)="showDelModal(data.id)">删除</span>
  40. </div>
  41. </td>
  42. </tr>
  43. </tbody>
  44. </nz-table>
  45. <div class="list-template__pagination">
  46. <nz-pagination
  47. [(nzPageIndex)]="pageIndex"
  48. [(nzTotal)]="listLength"
  49. nzShowSizeChanger
  50. [(nzPageSize)]="pageSize"
  51. (nzPageIndexChange)="getList()"
  52. (nzPageSizeChange)="getList()"
  53. >
  54. </nz-pagination>
  55. </div>
  56. </div>
  57. </div>
  58. <!-- 新增/编辑模态框 -->
  59. <div class="save align-items_center display_flex justify-content_flex-center add" *ngIf="modal">
  60. <div class="modalBody">
  61. <div class="title">{{ add ? "新增" : "编辑" }}<i class="icon_transport transport-guanbi" (click)="hideAddModal()"></i>
  62. </div>
  63. <div class="content">
  64. <form
  65. nz-form
  66. [formGroup]="validateForm"
  67. class="addForm"
  68. (ngSubmit)="submitForm()"
  69. >
  70. <nz-form-item>
  71. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="parentHospital">父院区</nz-form-label>
  72. <nz-form-control nzErrorTip="请选择父院区!">
  73. <nz-select formControlName="parentHospital" [nzDropdownMatchSelectWidth]="false" nzPlaceHolder="请选择父院区" nzShowSearch nzAllowClear nzServerSearch (nzOnSearch)="changeInp($event, 'parent')"
  74. (nzOpenChange)="openHospitalSelect($event)" (ngModelChange)="changeHospitalSelect($event)">
  75. <ng-container *ngFor="let option of parentHospitals">
  76. <nz-option *ngIf="!isLoading" [nzLabel]="option.hosName" [nzValue]="option.id"></nz-option>
  77. </ng-container>
  78. <nz-option *ngIf="isLoading" nzDisabled nzCustomContent>
  79. <i nz-icon nzType="loading" class="loading-icon"></i>
  80. 搜索中...
  81. </nz-option>
  82. </nz-select>
  83. </nz-form-control>
  84. </nz-form-item>
  85. <nz-form-item>
  86. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="parentDeptId">父级部门</nz-form-label>
  87. <nz-form-control nzErrorTip="请选择父级部门!">
  88. <nz-select formControlName="parentDeptId" [nzDropdownMatchSelectWidth]="false" nzPlaceHolder="请选择父级部门" nzShowSearch nzAllowClear nzServerSearch (nzOnSearch)="changeInp($event, 'parentDept')"
  89. (nzOpenChange)="openParentDeptSelect($event)">
  90. <ng-container *ngFor="let option of parentDepts">
  91. <nz-option *ngIf="!isLoading" [nzLabel]="option.hosName" [nzValue]="option.id"></nz-option>
  92. </ng-container>
  93. <nz-option *ngIf="isLoading" nzDisabled nzCustomContent>
  94. <i nz-icon nzType="loading" class="loading-icon"></i>
  95. 搜索中...
  96. </nz-option>
  97. </nz-select>
  98. </nz-form-control>
  99. </nz-form-item>
  100. <nz-form-item>
  101. <nz-form-label
  102. [nzSm]="6"
  103. [nzXs]="24"
  104. nzRequired
  105. nzFor="hospitalName"
  106. >{{validateForm.value.parentHospital ? '部门' : '院区'}}名称</nz-form-label
  107. >
  108. <nz-form-control nzErrorTip="请输入院区名称!">
  109. <nz-input-group>
  110. <input
  111. type="hospitalName"
  112. nz-input
  113. formControlName="hospitalName"
  114. placeholder="请输入院区名称"
  115. />
  116. </nz-input-group>
  117. </nz-form-control>
  118. </nz-form-item>
  119. <nz-form-item [hidden]="!validateForm.value.parentHospital">
  120. <nz-form-label [nzSm]="6" [nzXs]="24" nzFor="hospitalType" [nzRequired]="validateForm.value.parentHospital">部门类型</nz-form-label>
  121. <nz-form-control nzErrorTip="请选择部门类型!">
  122. <nz-select formControlName="hospitalType" [nzDropdownMatchSelectWidth]="false" nzPlaceHolder="请选择部门类型" nzShowSearch nzAllowClear (nzOpenChange)="openHospitalTypeSelect($event)">
  123. <ng-container *ngFor="let option of hospitalTypes">
  124. <nz-option *ngIf="!isHospitalTypeLoading" [nzLabel]="option.name" [nzValue]="option.id"></nz-option>
  125. </ng-container>
  126. <nz-option *ngIf="isHospitalTypeLoading" nzDisabled nzCustomContent>
  127. <i nz-icon nzType="loading" class="loading-icon"></i>
  128. 搜索中...
  129. </nz-option>
  130. </nz-select>
  131. </nz-form-control>
  132. </nz-form-item>
  133. <nz-form-item>
  134. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="hospitalNum"
  135. >院区编码</nz-form-label
  136. >
  137. <nz-form-control nzErrorTip="请输入院区编码!">
  138. <nz-input-group>
  139. <input
  140. type="hospitalNum"
  141. nz-input
  142. formControlName="hospitalNum"
  143. placeholder="请输入院区编码"
  144. />
  145. </nz-input-group>
  146. </nz-form-control>
  147. </nz-form-item>
  148. </form>
  149. </div>
  150. <div class="display_flex justify-content_flex-center">
  151. <button
  152. nzType="primary"
  153. [nzLoading]="btnLoading"
  154. nz-button
  155. (click)="submitForm()"
  156. >
  157. 确认
  158. </button>
  159. <button
  160. class="btn cancel"
  161. nz-button
  162. nzType="default"
  163. (click)="hideAddModal()"
  164. >
  165. 取消
  166. </button>
  167. </div>
  168. </div>
  169. </div>
  170. <!-- 复制模态框 -->
  171. <div
  172. class="save align-items_center display_flex justify-content_flex-center add"
  173. *ngIf="modalCopy"
  174. >
  175. <div class="modalBody">
  176. <div class="title">
  177. 复制院区信息<i
  178. class="icon_transport transport-guanbi"
  179. (click)="hideAddModalCopy()"
  180. ></i>
  181. </div>
  182. <div class="content">
  183. <div class="red" style="margin-bottom: 16px">
  184. 请选择您要复制的院区,如院区已经有任务类型则无法复制成功!
  185. </div>
  186. <form
  187. nz-form
  188. [formGroup]="validateFormCopy"
  189. class="addForm"
  190. (ngSubmit)="submitFormCopy()"
  191. >
  192. <nz-form-item>
  193. <nz-form-label
  194. style="line-height: 1"
  195. [nzSm]="6"
  196. [nzXs]="24"
  197. nzFor="copyHosId"
  198. >复制的院区</nz-form-label
  199. >
  200. <nz-form-control nzErrorTip="请选择复制的院区!">
  201. <nz-select
  202. nzAllowClear
  203. [nzDropdownMatchSelectWidth]="false"
  204. formControlName="copyHosId"
  205. nzPlaceHolder="请选择复制的院区"
  206. >
  207. <nz-option
  208. *ngFor="let item of listOfData | filterSelf: coopId"
  209. [nzLabel]="item.hosName"
  210. [nzValue]="item.id"
  211. >
  212. </nz-option>
  213. </nz-select>
  214. </nz-form-control>
  215. </nz-form-item>
  216. </form>
  217. </div>
  218. <div class="display_flex justify-content_flex-center">
  219. <button
  220. nzType="primary"
  221. [nzLoading]="btnLoading"
  222. nz-button
  223. (click)="submitFormCopy()"
  224. >
  225. 确认
  226. </button>
  227. <button
  228. class="btn cancel"
  229. nz-button
  230. nzType="default"
  231. (click)="hideAddModalCopy()"
  232. >
  233. 取消
  234. </button>
  235. </div>
  236. </div>
  237. </div>
  238. <!-- 删除模态框 -->
  239. <app-dialog-delete
  240. [delModal]="delModal"
  241. (hideDelModalEvent)="hideDelModal()"
  242. [btnLoading]="btnLoading"
  243. (confirmDelEvent)="confirmDel()"
  244. content="您确认要删除此院区吗?"
  245. ></app-dialog-delete>
  246. </div>
  247. <!-- 操作成功/失败提示框 -->
  248. <app-prompt-modal
  249. *ngIf="promptModalShow"
  250. [content]="promptContent"
  251. [success]="ifSuccess"
  252. [show]="promptModalShow"
  253. [info]="promptInfo"
  254. ></app-prompt-modal>