Blame view

src/views/workflow/components/dialog/clxxAddDialog.vue 2.48 KB
1
<!--
yuanbo committed
2
 * @Description:
3
 * @Autor: renchao
4
 * @LastEditTime: 2023-07-18 08:55:31
5
-->
吴蕾 committed
6
<template>
任超 committed
7
  <dialogBox title="新建材料信息" width="20%" isMain v-model="myValue" @closeDialog="closeDialog" @submitForm="handleSubmit"
任超 committed
8
    :isFullscreen="false">
9
    <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="80px">
吴蕾 committed
10 11
      <el-row>
        <el-col :span="24">
12
          <el-form-item label="材料类型" prop="cllx">
任超 committed
13 14 15 16
            <el-select v-model="ruleForm.cllx" class="width100" placeholder="请选择">
              <el-option v-for="item in dictData['A40']" :key="item.dcode" :label="item.dname" :value="item.dcode">
              </el-option>
            </el-select>
吴蕾 committed
17 18 19 20 21
          </el-form-item>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col :span="24">
22
          <el-form-item label="材料名称" prop="clmc">
吴蕾 committed
23 24 25 26 27
            <el-input v-model="ruleForm.clmc"></el-input>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
吴蕾 committed
28 29 30 31
  </dialogBox>
</template>

<script>
32 33 34 35 36 37 38 39 40 41 42 43
  import { mapGetters } from "vuex";
  export default {
    props: {
      value: { type: Boolean, default: false },
    },
    data () {
      return {
        myValue: this.value,
        ruleForm: {
          cllx: "",
          clmc: "",
        },
44 45 46 47 48 49 50 51 52
        rules: {
          cllx: [
            { required: true, message: '请选择材料类型', trigger: 'change' }
          ],
          clmc: [
            { required: true, message: '请输入材料名称', trigger: 'blur' }
          ]
        }
      }
53 54 55
    },
    computed: {
      ...mapGetters(["dictData"]),
吴蕾 committed
56
    },
57 58 59 60
    watch: {
      value (val) {
        this.myValue = val;
      },
吴蕾 committed
61
    },
62
    methods: {
yuanbo committed
63 64 65 66
      /**
       * @description: closeDialog
       * @author: renchao
       */
67 68 69 70 71 72 73
      closeDialog () {
        this.$emit("input", false);
        this.ruleForm = {
          cllx: "",
          clmc: "",
        }
      },
yuanbo committed
74 75 76 77
      /**
       * @description: handleSubmit
       * @author: renchao
       */
78
      handleSubmit () {
79 80 81 82 83 84 85 86 87 88 89 90 91 92
        this.$refs['ruleForm'].validate((valid) => {
          if (valid) {
            this.$parent.addSave(this.ruleForm);
            this.ruleForm = {
              cllx: "",
              clmc: "",
            }
            this.$emit("input", false);
          } else {
            return false;
          }
        })
      }
    }
93
  };
吴蕾 committed
94 95
</script>
<style scoped lang="scss">
96 97 98 99 100 101
  .submit-button {
    text-align: center;
    height: 52px;
    padding-top: 10px;
    background-color: #fff;
  }
吴蕾 committed
102
</style>