update.component.ts 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. import { Component, OnInit } from '@angular/core';
  2. import { NzModalRef, NzMessageService, NzDrawerRef, NzNotificationService } from 'ng-zorro-antd';
  3. import { _HttpClient } from '@delon/theme';
  4. import { FbsAbnormalWorkingHours } from 'app/entity/fbs/fbs-abnormal-working-hours';
  5. import { FbsAbnormalWorkingHoursService } from 'app/services/fbs/fbs-abnormal-working-hours.service';
  6. import { DatePipe } from '@angular/common';
  7. import { FbsAbnormalWorkingHoursDescribe } from 'app/entity/fbs/fbs-abnormal-working-hours-describe';
  8. import { FbsAbnormalWorkingHoursType } from 'app/entity/fbs/fbs-abnormal-working-hours-type';
  9. @Component({
  10. selector: 'app-fbs-abnormal-working-hours-update',
  11. templateUrl: './update.component.html',
  12. styles: [
  13. `
  14. .base {
  15. position: absolute;
  16. bottom: 0px;
  17. width: 100%;
  18. border-top: 1px solid rgb(232, 232, 232);
  19. padding: 10px 16px;
  20. text-align: right;
  21. left: 0px;
  22. background: #fff;
  23. z-index: 99;
  24. }
  25. `,
  26. ],
  27. })
  28. export class FbsAbnormalWorkingHoursUpdateComponent implements OnInit {
  29. constructor(
  30. private drawerRef: NzDrawerRef,
  31. private fbsAbnormalWorkingHoursService: FbsAbnormalWorkingHoursService,
  32. private nzNotificationService: NzNotificationService,
  33. private datePipe: DatePipe,
  34. ) {}
  35. ngOnInit(): void {
  36. this.getProperList();
  37. this.getById().then(()=>{
  38. return this.getDescribeListById()
  39. }).then(()=>{
  40. return this.getTypeById();
  41. }).then(()=>{
  42. this.saveLoading=false;
  43. })
  44. }
  45. saveLoading = false; //加载效果
  46. fbsAbnormalWorkingHours: FbsAbnormalWorkingHours = {};
  47. properList = []; //人员下拉选择集合
  48. /**
  49. * 初始化人员下拉数据集合
  50. */
  51. getProperList() {
  52. this.properList = [{ id: '张三', name: '张三' }];
  53. }
  54. /**
  55. * 人员下拉款选择事件
  56. */
  57. personnelChange(personnelIdU8){
  58. //获取名称
  59. this.properList.forEach(element => {
  60. if(personnelIdU8===element.id){
  61. this.fbsAbnormalWorkingHours.name=element.name;
  62. this.fbsAbnormalWorkingHours.personnelNameU8=element.name;
  63. this.fbsAbnormalWorkingHours.productionLineName="电器组装";
  64. }
  65. });
  66. }
  67. /**
  68. * 根据id查询主表数据
  69. */
  70. id = '';
  71. getById() {
  72. return new Promise(resolve => {
  73. this.saveLoading=true;
  74. this.fbsAbnormalWorkingHoursService.getById(this.id).then(response => {
  75. if(response.success){//查询成功
  76. this.fbsAbnormalWorkingHours=response.result;
  77. resolve();
  78. }else{
  79. this.nzNotificationService.error("查询失败",response.message)
  80. this.saveLoading=false;
  81. }
  82. });
  83. });
  84. }
  85. /**
  86. * 查询异常工时描述
  87. */
  88. getDescribeListById(){
  89. return new Promise((resolve)=>{
  90. //查询条件
  91. let fbsAbnormalWorkingHoursDescribe=new FbsAbnormalWorkingHoursDescribe();
  92. fbsAbnormalWorkingHoursDescribe.pageSize=1000;
  93. fbsAbnormalWorkingHoursDescribe.abnormalWorkingHoursId=this.fbsAbnormalWorkingHours.id;//主表id
  94. //查询
  95. this.fbsAbnormalWorkingHoursService.getDescribeList(fbsAbnormalWorkingHoursDescribe).then((response)=>{
  96. this.describeList=response.result.records;
  97. this.describeSort=this.describeList.length+1;
  98. resolve();
  99. })
  100. })
  101. }
  102. /**
  103. * 查询异常工时类别
  104. */
  105. getTypeById(){
  106. return new Promise((resolve)=>{
  107. //查询条件
  108. let fbsAbnormalWorkingHoursType=new FbsAbnormalWorkingHoursType();
  109. fbsAbnormalWorkingHoursType.pageSize=1000;
  110. fbsAbnormalWorkingHoursType.abnormalWorkingHoursId=this.fbsAbnormalWorkingHours.id;//主表id
  111. //查询
  112. this.fbsAbnormalWorkingHoursService.getTypeList(fbsAbnormalWorkingHoursType).then((response)=>{
  113. this.typeList=response.result.records;
  114. this.typeSort=this.typeList.length+1;
  115. resolve();
  116. })
  117. })
  118. }
  119. describeList = []; //异常描述集合表格数据
  120. /**
  121. * 描述增加行按钮
  122. */
  123. describeSort = 1;
  124. describeAddRow() {
  125. this.describeList = [
  126. ...this.describeList,
  127. {
  128. describe: '',
  129. sort: this.describeSort,
  130. },
  131. ];
  132. this.describeSort++;
  133. }
  134. /**
  135. * 删除行
  136. */
  137. describeDeleteRow(sort) {
  138. this.describeList = this.describeList.filter(d => d.sort !== sort);
  139. }
  140. typeList = []; //异常类型集合表格数据
  141. /**
  142. * 异常类型增加行按钮
  143. */
  144. typeSort = 1;
  145. typeAddRow() {
  146. this.typeList = [
  147. ...this.typeList,
  148. {
  149. typeName: '',
  150. sort: this.typeSort,
  151. },
  152. ];
  153. this.typeSort++;
  154. }
  155. /**
  156. * 删除行
  157. */
  158. typeDeleteRow(sort) {
  159. this.typeList = this.typeList.filter(d => d.sort !== sort);
  160. }
  161. /**
  162. * 保存按钮
  163. */
  164. save() {
  165. this.saveLoading=true;
  166. //时间格式化
  167. this.fbsAbnormalWorkingHours.date = this.datePipe.transform(
  168. this.fbsAbnormalWorkingHours.date,
  169. 'yyyy-MM-dd HH:mm:ss',
  170. );
  171. this.fbsAbnormalWorkingHours.fbsAbnormalWorkingHoursDescribeList = this.describeList; //获取异常工时描述
  172. this.fbsAbnormalWorkingHours.fbsAbnormalWorkingHoursTypeList = this.typeList; //获取异常工时类别
  173. this.fbsAbnormalWorkingHoursService.updateAndChild(this.fbsAbnormalWorkingHours).then(response => {
  174. if (response.success) {
  175. //保存成功
  176. this.nzNotificationService.success('保存成功', '');
  177. this.saveLoading = false; //加载效果关闭
  178. this.drawerRef.close(true); //关闭抽屉 启动主页面的回调
  179. } else {
  180. //保存失败
  181. this.nzNotificationService.error('保存失败',response.message);
  182. this.saveLoading = false; //加载效果关闭
  183. }
  184. });
  185. }
  186. close() {
  187. //抽屉关闭
  188. this.drawerRef.close();
  189. }
  190. }