| ¶Ô±ÈÐÂÎļþ | 
|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <GlobalWindow | 
|---|
|  |  |  | :title="title" | 
|---|
|  |  |  | :visible.sync="visible" | 
|---|
|  |  |  | :confirm-working="isWorking" | 
|---|
|  |  |  | @confirm="confirm" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form :model="form" ref="form" :rules="rules"> | 
|---|
|  |  |  | <el-form-item label="è§è²ç¼ç " prop="code" required> | 
|---|
|  |  |  | <el-input v-model="form.code" placeholder="请è¾å
¥è§è²ç¼ç " v-trim maxlength="50"/> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="è§è²åç§°" prop="name" required> | 
|---|
|  |  |  | <el-input v-model="form.name" placeholder="请è¾å
¥è§è²åç§°" v-trim maxlength="50"/> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="è§è²å¤æ³¨" prop="remark"> | 
|---|
|  |  |  | <el-input v-model="form.remark" type="textarea" placeholder="请è¾å
¥è§è²å¤æ³¨" :rows="3" v-trim maxlength="500"/> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | </GlobalWindow> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | import BaseOpera from '@/components/base/BaseOpera' | 
|---|
|  |  |  | import GlobalWindow from '@/components/common/GlobalWindow' | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: 'OperaRoleWindow', | 
|---|
|  |  |  | extends: BaseOpera, | 
|---|
|  |  |  | components: { GlobalWindow }, | 
|---|
|  |  |  | data () { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | // åè§è²ç  | 
|---|
|  |  |  | originRoleCode: '', | 
|---|
|  |  |  | // è¡¨åæ°æ® | 
|---|
|  |  |  | form: { | 
|---|
|  |  |  | id: null, | 
|---|
|  |  |  | code: '', | 
|---|
|  |  |  | name: '', | 
|---|
|  |  |  | remark: '' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // éªè¯è§å | 
|---|
|  |  |  | rules: { | 
|---|
|  |  |  | code: [ | 
|---|
|  |  |  | { required: true, message: '请è¾å
¥è§è²ç¼ç ' } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | name: [ | 
|---|
|  |  |  | { required: true, message: '请è¾å
¥è§è²åç§°' } | 
|---|
|  |  |  | ] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * æå¼çªå£ | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @param title çªå£æ é¢ | 
|---|
|  |  |  | * @param target è¡å¯¹è±¡ï¼ä»
ç¼è¾éè¯¥åæ°ï¼ | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | open (title, target) { | 
|---|
|  |  |  | this.title = title | 
|---|
|  |  |  | this.visible = true | 
|---|
|  |  |  | // æ°å»º | 
|---|
|  |  |  | if (target == null) { | 
|---|
|  |  |  | this.$nextTick(() => { | 
|---|
|  |  |  | this.$refs.form.resetFields() | 
|---|
|  |  |  | this.form[this.configData['field.id']] = null | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | return | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // ç¼è¾ | 
|---|
|  |  |  | this.$nextTick(() => { | 
|---|
|  |  |  | this.originRoleCode = target.code | 
|---|
|  |  |  | for (const key in this.form) { | 
|---|
|  |  |  | this.form[key] = target[key] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * ç¡®è®¤ | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | confirm () { | 
|---|
|  |  |  | if (this.form.id == null || this.form.id === '') { | 
|---|
|  |  |  | this.__confirmCreate() | 
|---|
|  |  |  | return | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.originRoleCode === this.form.code) { | 
|---|
|  |  |  | this.__confirmEdit() | 
|---|
|  |  |  | return | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // ä¿®æ¹äºè§è²ç¼ç  | 
|---|
|  |  |  | this.$dialog.confirm('æ£æµå°æ¨ä¿®æ¹äºè§è²ç¼ç ï¼è§è²ç¼ç ä¿®æ¹ååå端åå¯è½éè¦è°æ´ä»£ç ï¼ç¡®è®¤ä¿®æ¹åï¼', 'æç¤º', { | 
|---|
|  |  |  | confirmButtonText: '确认修æ¹', | 
|---|
|  |  |  | type: 'warning' | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(() => { | 
|---|
|  |  |  | this.__confirmEdit() | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | created () { | 
|---|
|  |  |  | this.config({ | 
|---|
|  |  |  | api: '/system/role' | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|