ibc-check-chose.vue 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <el-dialog
  3. title="选择检验项目"
  4. width="50%"
  5. :close-on-click-modal="false"
  6. :visible.sync="visible">
  7. <div class="check">
  8. <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="auto">
  9. <el-row class="my-row">
  10. <el-col :span="12">
  11. <el-form-item label="检验项目" prop="inspectionProject">
  12. <el-input v-model="dataForm.inspectionProject" placeholder="检验项目"></el-input>
  13. </el-form-item>
  14. </el-col>
  15. <el-col :span="12" style="padding-left: 20px">
  16. <el-form-item label="技术指标" prop="technicalIndicators">
  17. <el-input v-model="dataForm.technicalIndicators" placeholder="技术指标"></el-input>
  18. </el-form-item>
  19. </el-col>
  20. </el-row>
  21. <el-row>
  22. <el-form-item label="实测记录" prop="measuredRecords">
  23. <el-input v-model="dataForm.measuredRecords" placeholder="实测记录"></el-input>
  24. </el-form-item>
  25. </el-row>
  26. <el-row>
  27. <el-form-item label="备注/说明" prop="notes">
  28. <el-input type="textarea" v-model="dataForm.notes" placeholder="备注/说明"></el-input>
  29. </el-form-item>
  30. </el-row>
  31. </el-form>
  32. <span slot="footer" class="dialog-footer">
  33. <el-button @click="visible = false">取消</el-button>
  34. <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
  35. </span>
  36. </div>
  37. </el-dialog>
  38. </template>
  39. <script>
  40. export default {
  41. data () {
  42. return {
  43. visible: false,
  44. dataForm: {},
  45. id: 0,
  46. dataRule: {
  47. inspectionProject: [{ required: true, message: '检验项目不能为空', trigger: 'blur' }],
  48. technicalIndicators: [{ required: true, message: '技术指标不能为空', trigger: 'blur' }],
  49. measuredRecords: [{ required: true, message: '实测记录不能为空', trigger: 'blur' }]
  50. }
  51. }
  52. },
  53. methods: {
  54. async init (row) {
  55. this.visible = true
  56. this.id = row ? row.id : Math.round(Math.random() * 1000000)
  57. if (!row) return
  58. this.dataForm = row
  59. },
  60. validateField (type) {
  61. this.$refs.dataForm.validateField(type)
  62. },
  63. // 表单提交
  64. dataFormSubmit () {
  65. this.$refs['dataForm'].validate((valid) => {
  66. if (valid) {
  67. this.visible = false
  68. this.dataForm.id = this.id
  69. this.$emit('addItem', this.dataForm)
  70. }
  71. })
  72. }
  73. }
  74. }
  75. </script>
  76. <style scoped>
  77. </style>