龚焕茏
2024-07-16 0ebcc1fd3b16b7a43e85a9a4bde1a1cee3ae5831
src/views/education/department/edit.vue
@@ -1,17 +1,45 @@
<template>
  <div class="app-container">
    <el-form :model="form" ref="form" label-width="100px" v-loading="formLoading">
      <el-form-item label="部门:" required>
        <el-input v-model="form.name"></el-input>
    <el-form :model="form" ref="form" label-width="120px" label-position="top" v-loading="formLoading">
      <el-form-item label="部门名称:" required>
        <el-input v-model="form.name" style="width: 450px"></el-input>
      </el-form-item>
      <el-form-item label="上级部门:">
        <el-cascader
          clearable
          v-model="form.parentId"
          :options="cascaderList"
          :props="{ checkStrictly: true }"
          ></el-cascader>
      </el-form-item>
<!--      <el-form-item label="部门:" required>-->
<!--        <el-select v-model="form.level" placeholder="部门">-->
<!--          <el-option v-for="item in levelEnum" :key="item.key" :value="item.key" :label="item.value"></el-option>-->
<!--        </el-select>-->
<!--      </el-form-item>-->
      <el-form-item v-if="fig === 0" label="管理员:">
        <el-select v-model="form.adminId" filterable placeholder="选择管理员">
          <el-option
            v-for="item in deptUserList"
            :key="item.id"
            :label="item.value"
            :value="item.id">
          </el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="可管理三级单位:">
        <el-switch
          style="display: block"
          v-model="form.special"
          active-color="#13ce66"
          inactive-color="#ff4949"
          active-text="允许"
          inactive-text="禁止">
        </el-switch>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" @click="submitForm">提交</el-button>
        <el-button type="primary" @click="submitForm">保存</el-button>
        <el-button @click="resetForm">重置</el-button>
      </el-form-item>
    </el-form>
@@ -20,14 +48,21 @@
<script>
import { mapGetters, mapState, mapActions } from 'vuex'
import subjectApi from '@/api/subject'
import departmentApi from '@/api/department'
export default {
  data () {
    return {
      // 部门级联下拉
      cascaderList: [],
      // 部门人员
      deptUserList: [],
      depart: [],
      form: {
        id: null,
        name: '',
        parentId: null,
        adminId: null,
        special: false,
        // level: 1,
        // levelName: ''
      },
@@ -37,50 +72,68 @@
  },
  created () {
    let id = this.$route.query.id
    console.log(id)
    let _this = this
    if (id && parseInt(id) !== 0) {
      _this.formLoading = true
      departmentApi.select(id).then(re => {
        re.response.parentId = re.response.parentIds
        _this.form = re.response
        _this.formLoading = false
      })
      // 获取部门人员
      _this.getUserSelect(id)
    }
    if (id == undefined) {
      _this.fig = 1 //是新增
    if (id === undefined) {
      _this.fig = 1 // 是新增
    } else {
      _this.fig = 0 //是编辑
      _this.fig = 0 // 是编辑
    }
  },
  mounted() {
    this.getCascaderList()
  },
  methods: {
    getCascaderList() {
      departmentApi.cascaderList().then(res => {
        this.cascaderList = res.response
      })
    },
    getUserSelect (id) {
      departmentApi.getDeptUserList(id).then(res => {
        this.deptUserList = res.response
      })
    },
    submitForm () {
      let _this = this
      this.formLoading = true
      // this.form.levelName = this.enumFormat(this.levelEnum, this.form.level)
      let obj = {
        name:this.form.name
      // let obj = {
      //   name: this.form.name
      // }
      if (_this.form.parentId) {
        _this.form.parentId = _this.form.parentId[_this.form.parentId.length - 1];
      }
      if (_this.fig==1){
        departmentApi.addData(this.form.name).then(res=>{
      if (_this.fig === 1) {
        departmentApi.addData(this.form).then(res => {
          console.log(res)
          if (res.code ==1){
            _this.$message.success(res.message)
                _this.delCurrentView(_this).then(() => {
                  _this.$router.push('/education/department/list')
                })
          }else {
            _this.$message.error(res.message)
          }
        })
      }else {
        departmentApi.edit(this.form).then(res=>{
          console.log(res)
          if (res.code ==1){
          if (res.code === 1) {
            _this.$message.success(res.message)
            _this.delCurrentView(_this).then(() => {
              _this.$router.push('/education/department/list')
            })
          }else {
          } else {
            _this.$message.error(res.message)
          }
        })
      } else {
        departmentApi.edit(this.form).then(res => {
          console.log(res)
          if (res.code === 1) {
            _this.$message.success(res.message)
            _this.delCurrentView(_this).then(() => {
              _this.$router.push('/education/department/list')
            })
          } else {
            _this.$message.error(res.message)
          }
        })
@@ -106,7 +159,9 @@
        id: null,
        name: '',
        level: 1,
        levelName: ''
        parentId: null,
        levelName: '',
        special: false
      }
      this.form.id = lastId
    },