阅行客电子档案
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.7 KiB

  1. <template>
  2. <!--表单组件-->
  3. <el-dialog append-to-body :close-on-click-modal="false" :modal-append-to-body="false" :before-close="crud.cancelCU" :visible="crud.status.cu > 0" :title="crud.status.title">
  4. <div class="setting-dialog">
  5. <el-form ref="form" inline :model="form" :rules="rules" size="small" label-width="90px">
  6. <el-row>
  7. <el-form-item label="所属父级" prop="pid">
  8. <el-input v-model="parentName" disabled />
  9. </el-form-item>
  10. </el-row>
  11. <el-form-item label="名称" prop="cnName">
  12. <el-input v-model="form.cnName" />
  13. </el-form-item>
  14. <el-form-item label="节点类型" prop="isType">
  15. <el-select v-model="form.isType" style="width: 225px;">
  16. <el-option v-for="item in selectOptions" :key="item.value" :label="item.label" :value="item.value" />
  17. </el-select>
  18. </el-form-item>
  19. <el-form-item label="备注" prop="remark">
  20. <el-input v-model="form.remark" type="textarea" :rows="4" style="width: 580px;" />
  21. </el-form-item>
  22. </el-form>
  23. <div slot="footer" class="dialog-footer">
  24. <el-button type="text" @click="crud.cancelCU">取消</el-button>
  25. <el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
  26. </div>
  27. </div>
  28. </el-dialog>
  29. </template>
  30. <script>
  31. import { form } from '@crud/crud'
  32. import CRUD from '@crud/crud'
  33. const defaultForm = { id: null, pid: null, cnName: null, isType: null, remark: null, categorySeq: null }
  34. export default {
  35. // components: { Treeselect },
  36. mixins: [
  37. form(function() {
  38. return Object.assign({ pid: this.pid }, defaultForm)
  39. })
  40. ],
  41. props: {
  42. selectedCategory: {
  43. type: Object,
  44. default: function() {
  45. return {}
  46. }
  47. }
  48. },
  49. data() {
  50. return {
  51. pid: null,
  52. parentName: null,
  53. rules: {
  54. // pid: [
  55. // { required: true, message: '所属父级不可为空', trigger: 'blur' }
  56. // ],
  57. cnName: [
  58. { required: true, message: '名称不可为空', trigger: 'blur' }
  59. ],
  60. isType: [
  61. { required: true, message: '节点类型不可为空', trigger: 'change' }
  62. ]
  63. },
  64. selectOptions: [
  65. {
  66. value: 1,
  67. label: '文件夹'
  68. },
  69. {
  70. value: 2,
  71. label: '分类'
  72. }
  73. ]
  74. }
  75. },
  76. created() {
  77. },
  78. methods: {
  79. beforeToAdd() {
  80. this.form.isType = null
  81. },
  82. // 提交前的验证
  83. [CRUD.HOOK.afterValidateCU](crud) {
  84. this.form.pid = this.selectedCategory.id
  85. return true
  86. }
  87. }
  88. }
  89. </script>
  90. <style lang="scss" scoped>
  91. </style>