project-approval.component.ts 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. import { Component, OnInit, ViewChild, TemplateRef } from '@angular/core';
  2. import { _HttpClient, ModalHelper } from '@delon/theme';
  3. import { STColumn, STComponent } from '@delon/abc';
  4. import { SFSchema } from '@delon/form';
  5. import { NzDropdownService, NzModalService, NzDropdownContextComponent, NzTreeNode, NzFormatEmitEvent } from 'ng-zorro-antd';
  6. import { FormBuilder, Validators, FormGroup } from '@angular/forms';
  7. import { BaseArchivesProjectApproval } from 'app/entity/basedata/base-archives-project-approval';
  8. import { BasedataProjectApprovalAddComponent } from './add/add.component';
  9. @Component({
  10. selector: 'app-basedata-project-approval',
  11. templateUrl: './project-approval.component.html',
  12. })
  13. export class BasedataProjectApprovalComponent implements OnInit {
  14. constructor(
  15. private nzDropdownService: NzDropdownService,
  16. private modalService:NzModalService,
  17. private fb: FormBuilder
  18. ) { }
  19. ngOnInit() {
  20. this.validateForm = this.fb.group({
  21. code: [null, [Validators.required]],
  22. name: [null, [Validators.required]],
  23. status:[null]
  24. });
  25. this.getListContractTree()
  26. }
  27. validateForm!: FormGroup;
  28. dropdown: NzDropdownContextComponent;
  29. searchValue = "";//搜索框的值
  30. nodes: any=[];//tree集合
  31. status=true;
  32. //查询tree合同类型
  33. getListContractTree() {
  34. // this.contractClassService.getAllContractClass1().then((response) => {
  35. // this.nodes = response.result
  36. // })
  37. this.nodes=[
  38. {
  39. code: "001",
  40. createBy: "admin",
  41. createTime: "2019-05-17 12:01:32",
  42. isLeaf: false,
  43. key: "604d450067afc7b7f52a8987d60bd745",
  44. parentId: "",
  45. parentIds: null,
  46. title: "产品",
  47. value: "604d450067afc7b7f52a8987d60bd745",
  48. status:"1",
  49. children:[
  50. {
  51. code: "0001",
  52. createBy: "admin",
  53. createTime: "2019-05-17 12:01:32",
  54. isLeaf: true,
  55. key: "2",
  56. parentId: "604d450067afc7b7f52a8987d60bd745",
  57. parentIds: null,
  58. title: "架构",
  59. value: "2",
  60. status:"0",
  61. children:null
  62. }
  63. ]
  64. }
  65. ]
  66. }
  67. //双击节点自动打开树分支
  68. openFolder(data: NzTreeNode | Required<NzFormatEmitEvent>): void {
  69. if (data instanceof NzTreeNode) {
  70. data.isExpanded = !data.isExpanded;
  71. } else {
  72. const node = data.node;
  73. if (node) {
  74. node.isExpanded = !node.isExpanded;
  75. }
  76. }
  77. }
  78. //右键树节点
  79. id="";
  80. contextMenu(Fid, $event: MouseEvent, template: TemplateRef<void>): void {
  81. this.id = Fid;//获取id
  82. this.dropdown = this.nzDropdownService.create($event, template);
  83. }
  84. //树节点点击事件
  85. treeClick(event) {
  86. var getdDepart = event.node.origin;//当前点击的对象
  87. if(getdDepart.status=="0"){//是否启用
  88. this.status=false;
  89. }else{
  90. this.status=true;
  91. }
  92. this.baseArchivesProjectApproval = {
  93. name: getdDepart.title,
  94. code: getdDepart.code,
  95. id: getdDepart.key
  96. }
  97. }
  98. //右键取消
  99. cancel() {
  100. this.dropdown.close()
  101. }
  102. //项目立项实体
  103. baseArchivesProjectApproval:BaseArchivesProjectApproval={};
  104. /**
  105. * 新增一级按钮
  106. */
  107. add() {
  108. const modalRef = this.modalService.create({
  109. nzTitle: "新增",
  110. nzContent: BasedataProjectApprovalAddComponent,
  111. nzWidth: 600,
  112. nzFooter: [
  113. {
  114. label: "关闭",
  115. type: "default",
  116. onClick: addModel => {
  117. addModel.close()
  118. }
  119. },
  120. {
  121. label: "确定",
  122. type: "primary",
  123. // loading:this.modelSaveLoading,
  124. onClick: addModel => {
  125. addModel.submitForm()
  126. }
  127. }
  128. ]
  129. })
  130. }
  131. /**
  132. * 右键新增子集按钮
  133. */
  134. addChild(){
  135. const modalRef = this.modalService.create({
  136. nzTitle: "新增",
  137. nzContent: BasedataProjectApprovalAddComponent,
  138. nzWidth: 600,
  139. nzComponentParams:{
  140. parentId:this.id
  141. },
  142. nzFooter: [
  143. {
  144. label: "关闭",
  145. type: "default",
  146. onClick: addModel => {
  147. addModel.close()
  148. }
  149. },
  150. {
  151. label: "确定",
  152. type: "primary",
  153. // loading:this.modelSaveLoading,
  154. onClick: addModel => {
  155. addModel.submitForm()
  156. }
  157. }
  158. ]
  159. })
  160. }
  161. reset(){
  162. this.baseArchivesProjectApproval={}
  163. }
  164. /**
  165. * 删除
  166. */
  167. delete(){
  168. }
  169. /**
  170. * 修改保存
  171. */
  172. submitForm(){
  173. for (const i in this.validateForm.controls) {
  174. this.validateForm.controls[i].markAsDirty();
  175. this.validateForm.controls[i].updateValueAndValidity();
  176. }
  177. let valid = this.validateForm.valid;
  178. if(valid){
  179. //格式化是否期用
  180. if(this.status){
  181. this.baseArchivesProjectApproval.status="1"
  182. }else{
  183. this.baseArchivesProjectApproval.status="0"
  184. }
  185. alert(this.baseArchivesProjectApproval.code)
  186. }
  187. }
  188. }