apply.interface.ts 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. import { Rule, RuleType } from '@midwayjs/validate';
  2. import { ApiProperty } from '@midwayjs/swagger';
  3. import { SearchBase } from 'free-midway-component';
  4. import get = require('lodash/get');
  5. const dealVO = (cla, data) => {
  6. for (const key in cla) {
  7. const val = get(data, key);
  8. if (val || val === 0) cla[key] = val;
  9. }
  10. };
  11. export class FVO_apply {
  12. constructor(data: object) {
  13. dealVO(this, data);
  14. }
  15. @ApiProperty({ description: '数据id' })
  16. _id: string = undefined;
  17. @ApiProperty({ description: '用户' })
  18. 'user': string = undefined;
  19. @ApiProperty({ description: '公证员' })
  20. 'admin': string = undefined;
  21. @ApiProperty({ description: '业务' })
  22. 'business': string = undefined;
  23. @ApiProperty({ description: '材料' })
  24. 'material': object = undefined;
  25. @ApiProperty({ description: '类型' })
  26. 'type': string = undefined;
  27. @ApiProperty({ description: '地址' })
  28. 'address': string = undefined;
  29. @ApiProperty({ description: '签字' })
  30. 'sign': Array<any> = undefined;
  31. @ApiProperty({ description: '人脸识别' })
  32. 'face': Array<any> = undefined;
  33. @ApiProperty({ description: '支付信息' })
  34. 'pay': object = undefined;
  35. @ApiProperty({ description: '证书' })
  36. 'certificate': Array<any> = undefined;
  37. @ApiProperty({ description: '意见' })
  38. 'opinion': string = undefined;
  39. @ApiProperty({ description: '时间' })
  40. 'time': string = undefined;
  41. @ApiProperty({ description: '状态' })
  42. 'status': string = undefined;
  43. }
  44. export class QDTO_apply extends SearchBase {
  45. constructor() {
  46. const like_prop = [];
  47. const props = ['user', 'admin', 'business', 'type'];
  48. const mapping = [];
  49. super({ like_prop, props, mapping });
  50. }
  51. @ApiProperty({ description: '用户' })
  52. 'user': string = undefined;
  53. @ApiProperty({ description: '公证员' })
  54. 'admin': string = undefined;
  55. @ApiProperty({ description: '业务' })
  56. 'business': string = undefined;
  57. @ApiProperty({ description: '类型' })
  58. 'type': string = undefined;
  59. }
  60. export class QVO_apply extends FVO_apply {
  61. constructor(data: object) {
  62. super(data);
  63. dealVO(this, data);
  64. }
  65. }
  66. export class CDTO_apply {
  67. @ApiProperty({ description: '用户' })
  68. @Rule(RuleType['string']().empty(''))
  69. 'user': string = undefined;
  70. @ApiProperty({ description: '公证员' })
  71. @Rule(RuleType['string']().empty(''))
  72. 'admin': string = undefined;
  73. @ApiProperty({ description: '业务' })
  74. @Rule(RuleType['string']().empty(''))
  75. 'business': string = undefined;
  76. @ApiProperty({ description: '材料' })
  77. @Rule(RuleType['object']().empty(''))
  78. 'material': object = undefined;
  79. @ApiProperty({ description: '类型' })
  80. @Rule(RuleType['string']().empty(''))
  81. 'type': string = undefined;
  82. @ApiProperty({ description: '地址' })
  83. @Rule(RuleType['string']().empty(''))
  84. 'address': string = undefined;
  85. @ApiProperty({ description: '签字' })
  86. @Rule(RuleType['array']().empty(''))
  87. 'sign': Array<any> = undefined;
  88. @ApiProperty({ description: '人脸识别' })
  89. @Rule(RuleType['array']().empty(''))
  90. 'face': Array<any> = undefined;
  91. @ApiProperty({ description: '支付信息' })
  92. @Rule(RuleType['object']().empty(''))
  93. 'pay': object = undefined;
  94. @ApiProperty({ description: '证书' })
  95. @Rule(RuleType['array']().empty(''))
  96. 'certificate': Array<any> = undefined;
  97. @ApiProperty({ description: '意见' })
  98. @Rule(RuleType['string']().empty(''))
  99. 'opinion': string = undefined;
  100. @ApiProperty({ description: '时间' })
  101. @Rule(RuleType['string']().empty(''))
  102. 'time': string = undefined;
  103. @ApiProperty({ description: '状态' })
  104. @Rule(RuleType['string']().empty(''))
  105. 'status': string = undefined;
  106. }
  107. export class CVO_apply extends FVO_apply {
  108. constructor(data: object) {
  109. super(data);
  110. dealVO(this, data);
  111. }
  112. }
  113. export class UDTO_apply extends CDTO_apply {
  114. @ApiProperty({ description: '数据id' })
  115. @Rule(RuleType['string']().empty(''))
  116. _id: string = undefined;
  117. }
  118. export class UVAO_apply extends FVO_apply {
  119. constructor(data: object) {
  120. super(data);
  121. dealVO(this, data);
  122. }
  123. }