add.component.html 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <nz-spin [nzSpinning]="isLoadingSave">
  2. <form nz-form [formGroup]="validateForm" (ngSubmit)="submitForm()">
  3. <div nz-row [nzGutter]="24">
  4. <div nz-col [nzSpan]="8">
  5. <nz-form-item>
  6. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="code">单据编码</nz-form-label>
  7. <nz-form-control [nzSm]="14" [nzXs]="24">
  8. <input placeholder="自动生成" nz-input formControlName="billcode" id="billcode"
  9. [(ngModel)]="proWorkLogic.billcode" [disabled]="true" />
  10. </nz-form-control>
  11. </nz-form-item>
  12. </div>
  13. <div nz-col [nzSpan]="8">
  14. <nz-form-item>
  15. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired>项目名称</nz-form-label>
  16. <nz-form-control [nzSm]="14" [nzXs]="24">
  17. <nz-select style="widows: 100%;" nzShowSearch nzAllowClear formControlName="proId" id="proId"
  18. [(ngModel)]="proWorkLogic.proId" nzPlaceHolder="请选择" (ngModelChange)="proChange($event)">
  19. <nz-option *ngFor="let i of proList" [nzValue]="i.id" [nzLabel]="i.proName"></nz-option>
  20. </nz-select>
  21. <nz-form-explain *ngIf="validateForm.get('proId')?.dirty && validateForm.get('proId')?.errors">
  22. 请选择项目名称
  23. </nz-form-explain>
  24. </nz-form-control>
  25. </nz-form-item>
  26. </div>
  27. <div nz-col [nzSpan]="8">
  28. <nz-form-item>
  29. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired>汇报人</nz-form-label>
  30. <nz-form-control [nzSm]="14" [nzXs]="24">
  31. <nz-tree-select style="width: 100%" [nzNodes]="personnelList" nzShowSearch [nzMultiple]="false"
  32. formControlName="reporterId" id="reporterId" nzPlaceHolder="请选择" [(ngModel)]="proWorkLogic.reporterId"
  33. [nzMaxTagCount]="3" [nzAllowClear]="true">
  34. </nz-tree-select>
  35. <nz-form-explain *ngIf="validateForm.get('proId')?.dirty && validateForm.get('proId')?.errors">
  36. 请选择汇报人
  37. </nz-form-explain>
  38. </nz-form-control>
  39. </nz-form-item>
  40. </div>
  41. </div>
  42. <div nz-row [nzGutter]="24">
  43. <div nz-col [nzSpan]="8">
  44. <nz-form-item>
  45. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired>开始时间</nz-form-label>
  46. <!-- <nz-form-control [nzSm]="14" [nzXs]="24">
  47. <nz-range-picker [nzShowTime]="true" formControlName="date" id="date" [(ngModel)]="date"></nz-range-picker>
  48. </nz-form-control> -->
  49. <nz-form-control [nzSm]="14" [nzXs]="24">
  50. <nz-date-picker nzShowTime nzFormat="yyyy-MM-dd HH:mm:ss" formControlName="startDate" id="startDate"
  51. [(ngModel)]="proWorkLogic.startDate" [nzDisabledDate]="disabledDate"></nz-date-picker>
  52. <nz-form-explain *ngIf="validateForm.get('startDate')?.dirty && validateForm.get('startDate')?.errors">
  53. 请选择开始时间
  54. </nz-form-explain>
  55. </nz-form-control>
  56. </nz-form-item>
  57. </div>
  58. <div nz-col [nzSpan]="8">
  59. <nz-form-item>
  60. <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired>结束时间</nz-form-label>
  61. <!-- <nz-form-control [nzSm]="14" [nzXs]="24">
  62. <nz-range-picker [nzShowTime]="true" formControlName="date" id="date" [(ngModel)]="date"></nz-range-picker>
  63. </nz-form-control> -->
  64. <nz-form-control [nzSm]="14" [nzXs]="24">
  65. <nz-date-picker nzShowTime nzFormat="yyyy-MM-dd HH:mm:ss" formControlName="endDate" id="endDate"
  66. [(ngModel)]="proWorkLogic.endDate" [nzDisabledDate]="disabledDate2"></nz-date-picker>
  67. <nz-form-explain *ngIf="validateForm.get('endDate')?.dirty && validateForm.get('endDate')?.errors">
  68. 请选择结束时间
  69. </nz-form-explain>
  70. </nz-form-control>
  71. </nz-form-item>
  72. </div>
  73. </div>
  74. </form>
  75. <nz-card>
  76. <div nz-row [nzGutter]="24">
  77. <div nz-col [nzSpan]="24">
  78. <!-- 新增按钮 -->
  79. <button (click)="addRow()" nz-button nzType="primary">{{ 'button.add' | translate }}</button>
  80. </div>
  81. </div>
  82. <div nz-row [nzGutter]="24">
  83. <div nz-col [nzSpan]="24">
  84. <nz-table style="padding-top: 5px;" nzSize="small" class="tableTdPadding" #basicTable [nzData]="itemList"
  85. [nzFrontPagination]="false" [nzShowPagination]="false">
  86. <thead>
  87. <tr>
  88. <th nzAlign="center" style="width: 5%;">序号</th>
  89. <th style="width: 30%;">里程碑</th>
  90. <th style="width: 50%;">工作内容</th>
  91. <th style="width: 5%;">工作用时</th>
  92. <th style="width: 10%;">操作</th>
  93. </tr>
  94. </thead>
  95. <tbody>
  96. <tr *ngFor="let data of basicTable.data;let i =index">
  97. <td nzAlign="center">{{i+1}}</td>
  98. <td>
  99. <nz-tree-select style="width: 100%" [nzNodes]="mieList" nzShowSearch [nzMultiple]="false"
  100. nzPlaceHolder="请选择" [(ngModel)]="data.proArchivesId" [nzMaxTagCount]="3" [nzAllowClear]="true"
  101. (ngModelChange)="proArchivesIdChange(data)">
  102. </nz-tree-select>
  103. </td>
  104. <td>
  105. <textarea rows="1" nz-input [(ngModel)]="data.content"></textarea>
  106. </td>
  107. <td style="width: 10%;">
  108. <nz-input-number [(ngModel)]="data.duration" [nzMin]="0" [nzStep]="1"></nz-input-number>
  109. </td>
  110. <td>
  111. <a nz-popconfirm nzTitle="是否删除?" (nzOnConfirm)="deleteRow(data.sort)">{{'table.delete'|translate}}</a>
  112. </td>
  113. </tr>
  114. </tbody>
  115. </nz-table>
  116. </div>
  117. </div>
  118. </nz-card>
  119. </nz-spin>
  120. <!-- 按钮 -->
  121. <div class="base">
  122. <strong>填写人:</strong>{{proWorkLogic.currentUser}} <strong>填写时间:</strong>{{proWorkLogic.createTime}}
  123. <!-- 关闭按钮 -->
  124. <a nz-popconfirm nzTitle="{{'pm.contract.contract.add.button.cancel'|translate}}" (nzOnConfirm)="close()"
  125. style="padding-right: 8px">
  126. <button nz-button>{{'pm.quotation.cancel'|translate}}</button>
  127. </a>
  128. <!-- 保存按钮 -->
  129. <button nz-button nzType="primary" class="ant-btn ant-btn-primary" (click)="submitForm()"
  130. [nzLoading]="isLoadingSave"><span>{{'pm.finish' | translate}}</span></button>
  131. </div>