investment-proposals.component.html 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. <h2 class="floating-title">{{ title }}</h2>
  2. <div class="main-content">
  3. <div class="container-fluid">
  4. <div class="row">
  5. <div class="col-12 align-right">
  6. <div class="align-container">
  7. <nav aria-label="breadcrumb">
  8. <ol class="breadcrumb">
  9. <li class="breadcrumb-item">
  10. <a [routerLink]="['/']">Dashboard</a>
  11. </li>
  12. <li class="breadcrumb-item">Propuestas de inversión</li>
  13. </ol>
  14. </nav>
  15. <a
  16. class="btn btn-primary"
  17. *ngIf="userType(userRole, 'analistas')"
  18. (click)="create_investment_proposal()"
  19. >
  20. Nuevo registro
  21. </a>
  22. </div>
  23. </div>
  24. <div class="col-12">
  25. <div class="align-container">
  26. <h4><b>Listado de propuestas de inversión</b></h4>
  27. <br />
  28. <div class="form-group">
  29. <label for="filter" class="control-label">Filtro: </label>
  30. <input
  31. name="filter"
  32. (keyup)="applyFilter($event)"
  33. class="form-control input-md"
  34. placeholder="Codigo, Instrumento, Estado, Asunto o Comentario"
  35. />
  36. </div>
  37. <br />
  38. <div class="example-container mat-elevation-z8">
  39. <div class="example-table-container">
  40. <table mat-table [dataSource]="dataSource" class="example-table">
  41. <!-- Name Column -->
  42. <ng-container matColumnDef="codigo_inversion">
  43. <th mat-header-cell *matHeaderCellDef>Codigo</th>
  44. <td mat-cell *matCellDef="let row">
  45. {{ row.codigo_inversion }}
  46. </td>
  47. </ng-container>
  48. <!-- Country Column -->
  49. <ng-container matColumnDef="asunto">
  50. <th mat-header-cell *matHeaderCellDef>Asunto</th>
  51. <td mat-cell *matCellDef="let row">
  52. {{ row.asunto }}
  53. </td>
  54. </ng-container>
  55. <!-- Country Column -->
  56. <ng-container matColumnDef="id_tipo_mercado">
  57. <th mat-header-cell *matHeaderCellDef>Tipo de mercado</th>
  58. <td mat-cell *matCellDef="let row">
  59. {{
  60. row.id_tipo_mercado == "" ||
  61. row.id_tipo_mercado == undefined
  62. ? "-"
  63. : row.id_tipo_mercado.nombre
  64. }}
  65. </td>
  66. </ng-container>
  67. <!-- Country Column -->
  68. <ng-container matColumnDef="id_inversion_instrumento">
  69. <th mat-header-cell *matHeaderCellDef>Instrumento</th>
  70. <td mat-cell *matCellDef="let row">
  71. {{
  72. row.id_inversion_instrumento.id_tipo_instrumento == "" ||
  73. row.id_inversion_instrumento.id_tipo_instrumento ==
  74. undefined
  75. ? "-"
  76. : row.id_inversion_instrumento.id_tipo_instrumento
  77. .nombre
  78. }}
  79. </td>
  80. </ng-container>
  81. <ng-container matColumnDef="id_estado_inversion">
  82. <th mat-header-cell *matHeaderCellDef>Estado</th>
  83. <td mat-cell *matCellDef="let row">
  84. {{
  85. row.id_estado_inversion == "" ||
  86. row.id_estado_inversion == undefined
  87. ? "-"
  88. : row.id_estado_inversion.nombre
  89. }}
  90. </td>
  91. </ng-container>
  92. <!-- Column -->
  93. <ng-container matColumnDef="id">
  94. <th mat-header-cell *matHeaderCellDef>&nbsp;</th>
  95. <td mat-cell *matCellDef="let row">
  96. <div class="action-buttons">
  97. <a
  98. title="Detalle propuesta"
  99. class="btn btn-primary btn-custom-small"
  100. (click)="view_investment_proposal(row.id_inversion)"
  101. >
  102. <i class="fas fa-info"></i>
  103. </a>
  104. <a
  105. *ngIf="
  106. can_modify_or_send_to_review(
  107. row.id_estado_inversion.codigo
  108. ) ||
  109. (can_finish_proposal(
  110. row.id_estado_inversion.codigo
  111. ) &&
  112. userType(userRole, 'analistas'))
  113. "
  114. title="Editar"
  115. class="btn btn-primary btn-custom-small"
  116. (click)="modify_investment_proposal(row.id_inversion)"
  117. >
  118. <i class="fas fa-edit"></i>
  119. </a>
  120. <a
  121. *ngIf="
  122. can_modify_or_send_to_review(
  123. row.id_estado_inversion.codigo
  124. )
  125. "
  126. title="Enviar a revisión"
  127. class="btn btn-dark btn-custom-small"
  128. (click)="
  129. sendToReview(
  130. row.id_inversion,
  131. row.codigo_inversion
  132. ) && userType(userRole, 'analistas')
  133. "
  134. >
  135. <i class="fas fa-share"></i>
  136. </a>
  137. <a
  138. *ngIf="
  139. can_review(row.id_estado_inversion.codigo) &&
  140. userType(userRole, 'supervisores')
  141. "
  142. title="Revisar"
  143. class="btn btn-warning btn-custom-small"
  144. [routerLink]="[
  145. '/investment-proposal',
  146. row.id_inversion,
  147. 'review'
  148. ]"
  149. >
  150. <i class="fas fa-spell-check"></i>
  151. </a>
  152. <a
  153. *ngIf="
  154. can_approve(row.id_estado_inversion.codigo) &&
  155. userType(userRole, 'autorizadores')
  156. "
  157. title="Aprobar"
  158. class="btn btn-warning btn-custom-small"
  159. [routerLink]="[
  160. '/investment-proposal',
  161. row.id_inversion,
  162. 'approve'
  163. ]"
  164. >
  165. <i class="far fa-thumbs-up"></i>
  166. </a>
  167. <a
  168. *ngIf="
  169. can_write_payment_info(
  170. row.id_estado_inversion.codigo
  171. ) && userType(userRole, 'analistas')
  172. "
  173. title="Información de pago"
  174. class="btn btn-warning btn-custom-small"
  175. [routerLink]="[
  176. '/investment-proposal',
  177. row.id_inversion,
  178. 'payment-info'
  179. ]"
  180. >
  181. <i class="fas fa-money-check-alt"></i>
  182. </a>
  183. <a
  184. *ngIf="
  185. can_upload_payment(row.id_estado_inversion.codigo) &&
  186. userType(userRole, 'contabilidad')
  187. "
  188. title="Requisición de pago"
  189. class="btn btn-success btn-custom-small"
  190. [routerLink]="[
  191. '/investment-proposal',
  192. row.id_inversion,
  193. 'payment'
  194. ]"
  195. >
  196. <i class="fas fa-money-bill-wave"></i>
  197. </a>
  198. <a
  199. *ngIf="
  200. can_finish_proposal(row.id_estado_inversion.codigo) &&
  201. userType(userRole, 'analistas')
  202. "
  203. title="Finalizar inversión"
  204. class="btn btn-success btn-custom-small"
  205. (click)="
  206. finishProposal(row.id_inversion, row.codigo_inversion)
  207. "
  208. >
  209. <i class="far fa-check-circle"></i>
  210. </a>
  211. <!--
  212. <a
  213. title="Historico"
  214. class="btn btn-link btn-custom-small"
  215. [routerLink]="[
  216. '/investment-proposal',
  217. row.id_inversion,
  218. 'change-history'
  219. ]"
  220. >
  221. <i class="fas fa-history"></i>
  222. </a>-->
  223. </div>
  224. </td>
  225. </ng-container>
  226. <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
  227. <tr
  228. mat-row
  229. *matRowDef="let row; columns: displayedColumns"
  230. ></tr>
  231. </table>
  232. <mat-paginator
  233. [pageSizeOptions]="[10, 15, 25]"
  234. [pageIndex]="0"
  235. [pageSize]="10"
  236. ></mat-paginator>
  237. </div>
  238. </div>
  239. </div>
  240. </div>
  241. <br />
  242. </div>
  243. </div>
  244. </div>