productInfo.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. import { required, mobileRequired, mobile, httpUrl, email } from '@/components/template/rules_verify.js'
  2. import ImageUpload from '@/components/file-upload'
  3. export default {
  4. data() {
  5. return {
  6. }
  7. },
  8. computed: {
  9. productInfo() {
  10. return [
  11. {
  12. name: 'el-input',
  13. md: 6,
  14. attributes: { disabled: false, placeholder: '请输入' },
  15. formItemAttributes: {
  16. label: '内机条码',
  17. prop: 'insideCode',
  18. rules: [...required]
  19. }
  20. },
  21. {
  22. name: 'el-input',
  23. md: 6,
  24. attributes: { disabled: false, placeholder: '请输入' },
  25. formItemAttributes: {
  26. label: '发票价格',
  27. prop: 'invoiceAmount',
  28. rules: [...required]
  29. }
  30. },
  31. {
  32. name: 'el-date-picker',
  33. md: 6,
  34. attributes: {
  35. disabled: false,
  36. style: { width: '100%' },
  37. placeholder: '请选择',
  38. type: 'date',
  39. 'value-format': 'yyyy-MM-dd HH:mm:ss',
  40. // 'picker-options': {
  41. // disabledDate: time => {
  42. // return time.getTime() < (Date.now() - 86400000)
  43. // }
  44. // }
  45. },
  46. formItemAttributes: {
  47. label: '原保到期',
  48. prop: 'insureTime',
  49. rules: [...required]
  50. },
  51. events: {
  52. change: (val) => {
  53. if (val && this.addFormData.limitNum) {
  54. const initialDate = new Date(val);
  55. initialDate.setFullYear(initialDate.getFullYear() + (this.addFormData.limitNum || 0));
  56. this.addFormData.serviceEndTime = initialDate.toISOString().split('T')[0];
  57. } else {
  58. this.addFormData.serviceEndTime = ""
  59. }
  60. }
  61. }
  62. },
  63. {
  64. name: 'el-date-picker',
  65. md: 6,
  66. attributes: {
  67. disabled: true,
  68. style: { width: '100%' },
  69. placeholder: '请选择',
  70. type: 'date',
  71. 'value-format': 'yyyy-MM-dd HH:mm:ss',
  72. // 'picker-options': {
  73. // disabledDate: time => {
  74. // return time.getTime() < (Date.now() - 86400000)
  75. // }
  76. // }
  77. },
  78. formItemAttributes: {
  79. label: '服务期限',
  80. prop: 'serviceEndTime',
  81. rules: [...required]
  82. }
  83. },
  84. {
  85. name: 'slot-component',
  86. md: 3,
  87. formItemAttributes: {
  88. label: '',
  89. 'label-width': '0px',
  90. prop: 'insideCodeImg',
  91. rules: [...required],
  92. errLabel: '内机条码'
  93. },
  94. render: (h, { props }) => {
  95. return (
  96. <div style="padding: 0 10px">
  97. <ImageUpload fileList={this.addFormData.insideCodeImg} limit={1} isEdit={true} />
  98. <div style="padding-left:20px">*内机条码</div>
  99. </div>
  100. )
  101. }
  102. },
  103. {
  104. name: 'slot-component',
  105. md: 3,
  106. formItemAttributes: {
  107. label: '',
  108. 'label-width': '0px',
  109. prop: 'machineImg',
  110. rules: [...required],
  111. errLabel: '机器铭牌'
  112. },
  113. render: (h, { props }) => {
  114. return (
  115. <div style="padding: 0 10px">
  116. <ImageUpload fileList={this.addFormData.machineImg} limit={1} isEdit={true} />
  117. <div style="padding-left:20px">*机器铭牌</div>
  118. </div>
  119. )
  120. }
  121. },
  122. {
  123. name: 'slot-component',
  124. md: 3,
  125. formItemAttributes: {
  126. label: '',
  127. 'label-width': '0px',
  128. prop: 'buyCertImg',
  129. rules: [...required],
  130. errLabel: '购机凭证'
  131. },
  132. render: (h, { props }) => {
  133. return (
  134. <div style="padding: 0 10px">
  135. <ImageUpload fileList={this.addFormData.buyCertImg} limit={1} isEdit={true} />
  136. <div style="padding-left:20px">*购机凭证</div>
  137. </div>
  138. )
  139. }
  140. },
  141. ]
  142. }
  143. },
  144. methods: {
  145. }
  146. }