zhouwenxuan
2023-09-27 50e18f9d144e78d0f47247f46b5d712745e0035d
src/views/coalMine/cPlaceManage/cTrainManage/components/addDialog.vue
@@ -8,33 +8,33 @@
    :before-close="handleClose"
  >
    <el-form ref="dataForm" :model="dataForm"  :rules="rules" label-position="right" label-width="150px" style="padding-right: 50px" element-loading-text="保存中...">
      <el-form-item label="机构名称:" prop="idCard">
        <el-input v-model.trim="dataForm.idCard"/>
      <el-form-item label="机构名称:" prop="institutionName">
        <el-input v-model.trim="dataForm.institutionName"/>
      </el-form-item>
      <el-form-item label="所属地区:" prop="iCCard">
        <el-select v-model="value" placeholder="请选择" style="width: 100%;">
      <el-form-item label="所属地区:" prop="districtId">
        <el-select v-model="dataForm.districtId" placeholder="请选择" style="width: 100%;">
          <el-option
            v-for="item in options"
            :key="item.value"
            :label="item.label"
            :value="item.value">
            v-for="item in areaList"
            :key="item.id"
            :label="item.name"
            :value="item.id">
          </el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="地址:" prop="remark">
        <el-input type="textarea" v-model.trim="dataForm.remark"/>
      <el-form-item label="地址:" prop="address">
        <el-input type="textarea" v-model.trim="dataForm.address"/>
      </el-form-item>
      <el-form-item label="负责人:" prop="remark">
        <el-input v-model.trim="dataForm.remark"/>
      <el-form-item label="负责人:" prop="header">
        <el-input v-model.trim="dataForm.header"/>
      </el-form-item>
      <el-form-item label="电话:" prop="remark">
        <el-input v-model.trim="dataForm.remark"/>
      <el-form-item label="电话:" prop="hphone" >
        <el-input v-model.trim="dataForm.hphone" :maxlength="11" />
      </el-form-item>
      <el-form-item label="联系人:" prop="remark">
        <el-input v-model.trim="dataForm.remark"/>
      <el-form-item label="联系人:" prop="contact">
        <el-input v-model.trim="dataForm.contact"/>
      </el-form-item>
      <el-form-item label="电话:" prop="remark">
        <el-input v-model.trim="dataForm.remark"/>
      <el-form-item label="电话:" prop="cphone" >
        <el-input v-model.trim="dataForm.cphone" :maxlength="11" />
      </el-form-item>
      <el-form-item label="备注:" prop="remark">
        <el-input type="textarea" v-model.trim="dataForm.remark"/>
@@ -48,6 +48,8 @@
</template>
<script >
import {addTrain, getAreaList, updateTrain} from "@/api/coalMine/placeManage/train";
export default {
  name: 'addUser',
  components: {
@@ -56,13 +58,30 @@
    return {
      dialogVisible: false,
      dialogStatus: '',
      areaList: [],
      rules: {
        name: [{ required: true, message: '身份证号', trigger: 'blur' }],
        institutionName: [{ required: true, message: '请输入机构名称', trigger: 'blur' }],
        districtId: [{ required: true, message: '请选择地区', trigger: 'blur' }],
        hphone: [
          {
            pattern: /^1[0-9]{10}$/,
            message: '手机号格式不正确',
            trigger: 'blur'
          }
        ],
        cphone: [
          {
            pattern: /^1[0-9]{10}$/,
            message: '手机号格式不正确',
            trigger: 'blur'
          }
        ],
      },
      dataForm: {}
    }
  },
  created() {
    this.getArea();
  },
  methods: {
@@ -70,21 +89,66 @@
      this.resetDataForm();
      this.dialogVisible = true;
      this.dialogStatus = type;
      if(this.dialogStatus == 'edit') {
        this.dataForm = data;
      }
      this.$nextTick(() => {
        this.$refs['dataForm'].clearValidate()
      })
    },
    async getArea() {
      const res = await getAreaList();
      if(res.code == 200) {
        this.areaList = res.data;
      }
    },
    handleClose() {
      this.dialogVisible = false;
      this.$emit("getList");
    },
    onSubmit() {
      this.$emit("getList");
      this.dialogVisible = false;
      this.$refs["dataForm"].validate( async valid => {
        if(valid){
          if(this.dialogStatus == 'add'){
            this.dataForm.isCm = 1;
            console.log("this.dataForm",this.dataForm)
            const res = await addTrain(this.dataForm);
            if(res.code == 200) {
              this.$emit("getList");
              this.dialogVisible = false;
              this.$message({
                type:'success',
                message: '新增成功'
              })
            }else{
              this.$message({
                type:'warning',
                message: res.msg
              })
            }
          }else {
            this.dataForm.isCm = 1;
            console.log("this.dataForm",this.dataForm)
            const res = await updateTrain(this.dataForm);
            if(res.code == 200) {
              this.$emit("getList");
              this.dialogVisible = false;
              this.$message({
                type:'success',
                message: '编辑成功'
              })
            }else{
              this.$message({
                type:'warning',
                message: res.msg
              })
            }
          }
        }
      })
    },
    resetDataForm() {
      this.dataForm = {
      }
      this.dataForm = {}
    },
  }
}