| | |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="上级组织" prop="parentId"> |
| | | <companySelect v-if="visible" v-model="form.parentId" placeholder="请选择上级菜单" clearable :inline="false"/> |
| | | <el-form-item label="上级组织" > |
| | | <!-- |
| | | <companySelect v-if="!form.id " v-model="form.parentId" placeholder="请选择上级菜单" clearable :inline="false"/> |
| | | --> |
| | | <span>【{{form.parentName || '-'}}】</span> |
| | | </el-form-item> |
| | | <el-form-item label="组织名称" prop="name"> |
| | | <el-input v-model="form.name" placeholder="请输入组织名称" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="排序码" prop="sortnum"> |
| | | <el-input v-model="form.sortnum" placeholder="请输入排序码" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="组织类型" prop="type" v-if="(editType === 'edit' && parentId) || (editType === 'add')" > |
| | | <el-radio-group v-model="form.type" :disabled="(editType === 'edit') || (!!(editType === 'add' && parentId))"> |
| | | <el-radio :label="0">相关方组织</el-radio> |
| | | <!-- <el-radio :label="1">内部组织</el-radio>--> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-form> |
| | | </GlobalWindow> |
| | | </template> |
| | |
| | | // 表单数据 |
| | | form: { |
| | | id: null, |
| | | type: 0, |
| | | name: '', |
| | | parentId: [], |
| | | disable: false |
| | | parentId: null, |
| | | disable: false, |
| | | parentName: '', |
| | | sortnum: '' |
| | | }, |
| | | editType: '', |
| | | parentId: null, |
| | | // 验证规则 |
| | | rules: { |
| | | name: [ |
| | | { required: true, message: '请输入组织名称' } |
| | | ], |
| | | type: [ |
| | | { required: true, message: '请选择组织类型' } |
| | | ] |
| | | } |
| | | } |
| | |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | api: '/business/company', |
| | | api: '/business/company.js', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | | methods: { |
| | | open(title, target, row, editType){ |
| | | this.title = title |
| | | this.editType = editType |
| | | if (editType === 'edit') { |
| | | this.parentId = row.parentId |
| | | } else if (editType === 'add') { |
| | | this.parentId = target.parentId |
| | | } |
| | | this.visible = true |
| | | this.form = { |
| | | id: null, |
| | | type: 0, |
| | | name: '', |
| | | parentId: null, |
| | | disable: false, |
| | | parentName: '', |
| | | parentType: null, |
| | | sortnum: null |
| | | } |
| | | if (target != null) { |
| | | this.form.parentId = target.id |
| | | this.form.parentType = target.type |
| | | this.form.parentName = target.companyNamePath |
| | | } |
| | | // 新建组织 |
| | | if (row == null) { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | this.form.type = target.type |
| | | }) |
| | | return |
| | | } |
| | | // 编辑 |
| | | this.$nextTick(() => { |
| | | this.originPermissionCode = target.code |
| | | for (const key in this.form) { |
| | | this.form[key] = row[key] |
| | | } |
| | | if(target.type == 0){ |
| | | this.form.type = 0 |
| | | } |
| | | }) |
| | | }, |
| | | // 确认新建/修改 |
| | | confirm () { |
| | | this.$refs.form.validate((valid) => { |
| | |
| | | this.api.create({ |
| | | parentId: this.form.parentId, |
| | | name: this.form.name, |
| | | type: 1 |
| | | type: this.form.type, |
| | | sortnum: this.form.sortnum |
| | | }) |
| | | .then(() => { |
| | | this.visible = false |
| | |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | // this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | |
| | | id: this.form.id, |
| | | parentId: this.form.parentId, |
| | | name: this.form.name, |
| | | type: 1 |
| | | type: this.form.type, |
| | | sortnum: this.form.sortnum |
| | | }) |
| | | .then(() => { |
| | | this.visible = false |
| | |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | // this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |