| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div> |
| | | <el-steps direction="vertical" :active="1"> |
| | | <el-step title="å夿°æ®"> |
| | | <span class="desc">导å
¥çæ°æ®ä¸ªæ°éå°äº200,ææå
许导å
¥çåæ®µè¯·åèæ¨¡æ¿; |
| | | <span class="bolder">åæ®µä¸ç¬¦åè§åï¼æ´æ¡æ°æ®ä¸äºä»¥å¯¼å
¥</span> |
| | | </span> |
| | | <button type="button" class="el-button more-btn el-button--text el-button--mini"><span>æ´å¤å段导å
¥è§å <i class="el-icon-arrow-down no-open"></i></span></button> |
| | | <div class="desc"> |
| | | <ul class="tip" style=""> |
| | | <li>1ãå工工å·ï¼å¿
å¡«ï¼å·¥å·ä¸å¯éå¤ï¼æ¯æå¤§å°ååæ¯ãæ°åç»åï¼</li> |
| | | <li>2ãåå·¥å§åï¼å¿
å¡«ï¼å¦æéåï¼å»ºè®®å æ°ååºåï¼å¦âå¼ ä¸1âï¼</li> |
| | | <li>3ãç¶æï¼å¿
å¡«ï¼éæ©å¨è/离èï¼</li> |
| | | <li>4ãçµè¯ï¼å¿
å¡«ï¼å¨æ¬ä¼ä¸å
ä¸å¯éå¤ï¼</li> |
| | | <li>5ãPINç ï¼å¿
å¡«ï¼æ¯æ4-6使°åï¼</li> |
| | | <li>6ãå²ä½ï¼éå¿
å¡«ï¼å¯ä»¥å¡«å
¥å¤ä¸ªå²ä½ï¼ä»¥è±æéå·â,âé´éï¼ä¸å¯éåï¼</li> |
| | | <li>7ãé®ç®±ï¼éå¿
å¡«ï¼é®ç®±æ ¼å¼æ ¡éªï¼æ¯å¦â***@126.comâï¼</li> |
| | | <li>8ãé¨é¨ï¼éå¿
å¡«ï¼è¯·å¡«åé¨é¨å®æ´å±çº§ï¼ä¸é´é´éï¼è¯·ç¨è±æç¬¦å·â-âé´éãå¦âxxå
¬å¸-xxé¨é¨-xxâ</li> |
| | | <li>9ãå
¥èæ¥æï¼éå¿
å¡«ï¼æ¥ææ ¼å¼âYY-MM-DDâ</li> |
| | | </ul> |
| | | <a class="download el-link el-link--primary is-underline"><i class="el-icon-download"></i><span class="el-link--inner">ä¸è½½æ¨¡æ¿</span></a> |
| | | </div> |
| | | </el-step> |
| | | <el-step title="ä¸ä¼ æ°æ®æä»¶"></el-step> |
| | | </el-steps> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | data() { |
| | | return { |
| | | } |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | methods: { |
| | | |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | .desc { |
| | | color: #333; |
| | | } |
| | | .desc .bolder { |
| | | font-weight: bolder; |
| | | } |
| | | .tip { |
| | | font-size: 12px; |
| | | padding-left: 16px |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <el-dialog :title="titleMap[mode]" v-model="visible" :width="800" destroy-on-close @closed="$emit('closed')"> |
| | | <el-form :model="form" :rules="rules" :disabled="mode=='show'" ref="dialogForm" label-width="120px" label-position="center"> |
| | | <el-form :model="depatmentForm" :rules="depatmentRules" :disabled="mode=='show'" ref="dialogForm" label-width="120px" label-position="center"> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="é¨é¨åç§°" prop="userName"> |
| | | <el-input v-model="form.userName" placeholder="é¨é¨åç§°" clearable></el-input> |
| | | <el-form-item label="é¨é¨åç§°" prop="name"> |
| | | <el-input v-model="depatmentForm.name" placeholder="é¨é¨åç§°" clearable></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="ä¸çº§é¨é¨" prop="name"> |
| | | <el-input v-model="form.name" placeholder="ä¸çº§é¨é¨" clearable></el-input> |
| | | <el-form-item label="ä¸çº§é¨é¨" prop="parentId"> |
| | | <el-tree-select @change= "parentIdChange" v-model="depatmentForm.parentId" clearable placeholder="ä¸çº§é¨é¨" default-expand-all check-on-click-nod :data="departmentList" check-strictly :props="{ label: 'name' }" node-key="id" ref="parentTree" style="width: 240px" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="使ç¨ç¶æ" prop="name"> |
| | | <el-switch v-model="value1" /> |
| | | <el-switch v-model="depatmentForm.status" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <template #footer> |
| | | <el-button @click="visible=false" >å æ¶</el-button> |
| | | <el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="submit()">ä¿ å</el-button> |
| | | <el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="departmentSubmit()">ä¿ å</el-button> |
| | | </template> |
| | | </el-dialog> |
| | | </template> |
| | |
| | | emits: ['success', 'closed'], |
| | | data() { |
| | | return { |
| | | departmentList: [], |
| | | value1: true, |
| | | mode: "add", |
| | | titleMap: { |
| | |
| | | visible: false, |
| | | isSaveing: false, |
| | | //è¡¨åæ°æ® |
| | | form: { |
| | | id:"", |
| | | userName: "", |
| | | avatar: "", |
| | | depatmentForm: { |
| | | name: "", |
| | | dept: "", |
| | | group: [] |
| | | parentId: "", |
| | | groupCategory: 1, |
| | | groupType: "group_organization", |
| | | status: true |
| | | }, |
| | | //éªè¯è§å |
| | | rules: { |
| | | avatar:[ |
| | | {required: true, message: '请ä¸ä¼ 头å'} |
| | | ], |
| | | userName: [ |
| | | {required: true, message: '请è¾å
¥ç»å½è´¦å·'} |
| | | ], |
| | | name: [ |
| | | {required: true, message: '请è¾å
¥çå®å§å'} |
| | | ], |
| | | password: [ |
| | | {required: true, message: '请è¾å
¥ç»å½å¯ç '}, |
| | | {validator: (rule, value, callback) => { |
| | | if (this.form.password2 !== '') { |
| | | this.$refs.dialogForm.validateField('password2'); |
| | | } |
| | | callback(); |
| | | }} |
| | | ], |
| | | password2: [ |
| | | {required: true, message: 'è¯·åæ¬¡è¾å
¥å¯ç '}, |
| | | {validator: (rule, value, callback) => { |
| | | if (value !== this.form.password) { |
| | | callback(new Error('两次è¾å
¥å¯ç ä¸ä¸è´!')); |
| | | }else{ |
| | | callback(); |
| | | } |
| | | }} |
| | | ], |
| | | dept: [ |
| | | {required: true, message: 'è¯·éæ©æå±é¨é¨'} |
| | | ], |
| | | group: [ |
| | | {required: true, message: 'è¯·éæ©æå±è§è²', trigger: 'change'} |
| | | ] |
| | | depatmentRules: { |
| | | name: [{required: true, message: '请è¾å
¥é¨é¨åç§°'}], |
| | | parentId: [{required: true, message: 'è¯·éæ©ä¸çº§é¨é¨'}] |
| | | }, |
| | | //æéæ°æ®é项 |
| | | groups: [], |
| | |
| | | } |
| | | }, |
| | | mounted() { |
| | | // this.getGroup() |
| | | // this.getDept() |
| | | this.getOrganizationList(); |
| | | }, |
| | | methods: { |
| | | getOrganizationList() { |
| | | this.$HTTP.get(`/api/blade-cps/organization/tree?groupType=group_organization&groupCategory=1`).then(res=> { |
| | | if(res.code == 200) { |
| | | this.departmentList = res.data; |
| | | } |
| | | }) |
| | | }, |
| | | parentIdChange(val) { |
| | | // var $parentId = this.$refs.parentTree.getCurrentNode().title; |
| | | // this.depatmentForm.$parentId = $parentId; |
| | | }, |
| | | //æ¾ç¤º |
| | | open(mode='add'){ |
| | | this.mode = mode; |
| | |
| | | this.depts = res.data; |
| | | }, |
| | | //表åæäº¤æ¹æ³ |
| | | submit(){ |
| | | departmentSubmit(){ |
| | | var obj = Object.assign({},this.depatmentForm); |
| | | obj.status = obj.status ? 1 : 0; |
| | | this.$refs.dialogForm.validate(async (valid) => { |
| | | if (valid) { |
| | | this.isSaveing = true; |
| | | var res = await this.$API.demo.post.post(this.form); |
| | | this.isSaveing = false; |
| | | if(res.code == 200){ |
| | | this.$emit('success', this.form, this.mode) |
| | | this.visible = false; |
| | | this.$message.success("æä½æå") |
| | | }else{ |
| | | this.$alert(res.message, "æç¤º", {type: 'error'}) |
| | | } |
| | | this.$HTTP.post("/api/blade-cps/group",obj).then(res=> { |
| | | if(res.code == 200) { |
| | | this.$emit('success', this.depatmentForm, this.mode); |
| | | this.visible = false; |
| | | this.$message.success("æä½æå"); |
| | | }else { |
| | | this.$alert(res.message, "æç¤º", {type: 'error'}); |
| | | } |
| | | }) |
| | | }else{ |
| | | return false; |
| | | } |
| | |
| | | }, |
| | | //è¡¨åæ³¨å
¥æ°æ® |
| | | setData(data){ |
| | | this.form.id = data.id |
| | | this.form.userName = data.userName |
| | | this.form.avatar = data.avatar |
| | | this.form.name = data.name |
| | | this.form.group = data.group |
| | | this.form.dept = data.dept |
| | | |
| | | data.status = data.status=="1"? true:false; |
| | | //å¯ä»¥åä¸é¢ä¸æ ·å个注å
¥ï¼ä¹å¯ä»¥åä¸é¢ä¸æ ·ç´æ¥åå¹¶è¿å» |
| | | //Object.assign(this.form, data) |
| | | Object.assign(this.depatmentForm, data) |
| | | } |
| | | } |
| | | } |
| | |
| | | </div> |
| | | <div> |
| | | <el-select v-model="searchData.status" placeholder="ç¶æ" class="searchStatus"> |
| | | <el-option v-for="item in statusList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" size="small"/> |
| | | <el-option key="1" label="å¯ç¨" value="1" size="small"/> |
| | | <el-option key="0" label="åç¨" value="0" size="small"/> |
| | | </el-select> |
| | | <el-input v-model="searchData.name" style="width: 200px" size="small" placeholder="请è¾å
¥å
³é®åè¿è¡è¿æ»¤"> |
| | | <el-input v-model="searchData.keywords" style="width: 200px" size="small" placeholder="请è¾å
¥å
³é®åè¿è¡è¿æ»¤"> |
| | | <template #append> |
| | | <el-button :icon="searchIcon" @click="getOrganizationList" /> |
| | | <el-button @click="getOrganizationList"> |
| | | <i class="el-icon"><svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704z"></path></svg></i> |
| | | </el-button> |
| | | </template> |
| | | </el-input> |
| | | </div> |
| | | </div> |
| | | <div class="right-table"> |
| | | <!-- lazy :load="tableLoad" --> |
| | | <el-table :data="departmentList" style="width: 100%;margin-bottom: 20px;" row-key="id" border default-expand-all ref="treeRef" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" /> |
| | | <el-table-column prop="name" label="å²ä½åç§°"></el-table-column> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSuccess" @closed="dialog.save=false"></save-dialog> |
| | | <!-- å é¤ --> |
| | | <el-dialog title="" v-model="delPersonModel" :width="300" destroy-on-close> |
| | | <div> |
| | | <div style="margin-bottom: 6px;"><span class="delIcon">!</span>è¯·ä½ è°¨æ
éæ©ï¼</div> |
| | | <div style="text-indent: 24px;">å 餿°æ®ä¼å½±åå·²å
³èçä¸å¡ ,è¥æ¨æ³å¨å·²å
³èçä¸å¡ä¸ä¾ç¶æ¾ç¤ºè¿äºæ°æ®, æ¨å¯ä»¥éæ© åç¨ æä½ãåç¨åæ¤æ°æ®å°ä¸è½å被æ°ä¸å¡ä½¿ç¨ã</div> |
| | | </div> |
| | | <template #footer> |
| | | <div class="footerDiv"> |
| | | <div class="delBtn" @click="delData(0)">å é¤</div> |
| | | <div class="delBtn" @click="delData(1)">åç¨</div> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <save-dialog v-if="dialog.save" ref="saveDialog" @success="addHandleSuccess" @closed="dialog.save=false"></save-dialog> |
| | | </template> |
| | | <script> |
| | | import saveDialog from './department' |
| | |
| | | name: "bakalaka", |
| | | data(){ |
| | | return { |
| | | selectId: "", |
| | | selection: [], |
| | | total: 0, |
| | | searchData: { |
| | |
| | | dialog: { |
| | | save: false |
| | | }, |
| | | departmentList: [] |
| | | departmentList: [], |
| | | delPersonModel: false |
| | | } |
| | | }, |
| | | created(){ |
| | |
| | | saveDialog |
| | | }, |
| | | methods: { |
| | | addHandleSuccess() { |
| | | this.getOrganizationList(); |
| | | }, |
| | | delData(type) { |
| | | this.$HTTP.delete(`/api/blade-cps/organization?ids=${this.selectId}&type=${type}`).then(res=> { |
| | | if(res.code == 200) { |
| | | this.$message.success("æä½æå"); |
| | | this.delPersonModel = false; |
| | | this.selectId = ""; |
| | | this.getOrganizationList(); |
| | | } |
| | | }) |
| | | }, |
| | | removeHasChildren(arr) { |
| | | return arr.map(item => { |
| | | // å建ä¸ä¸ªä¸å
å«hasChildrençæ°å¯¹è±¡ |
| | |
| | | handleSelectionChange (selection) { |
| | | this.selection = selection; |
| | | }, |
| | | delPerson() {}, |
| | | delPerson() { |
| | | if(this.selection.length == 0) { |
| | | this.$message({ |
| | | message: 'è¯·éæ©è³å°ä¸æ¡æ°æ®', |
| | | type: 'warning' |
| | | }); |
| | | return; |
| | | } |
| | | var selStr = ""; |
| | | this.selection.map(item=> { |
| | | selStr += item.id + "," |
| | | }) |
| | | this.selectId = selStr.replace(/,$/, ''); |
| | | this.delPersonModel = true; |
| | | }, |
| | | handleSizeChange(val) { |
| | | console.log(`æ¯é¡µ ${val} æ¡`); |
| | | }, |
| | |
| | | .multipleTableRef { |
| | | margin-bottom: 8px; |
| | | } |
| | | .footerDiv { |
| | | text-align: center; |
| | | } |
| | | .delBtn { |
| | | color: #fff; |
| | | width: 112px; |
| | | height: 32px; |
| | | display: inline-block; |
| | | color: #fa554c; |
| | | background-color: #fff; |
| | | border: 1px solid #fdbbb7; |
| | | text-align: center; |
| | | line-height: 32px; |
| | | cursor: pointer; |
| | | } |
| | | .delBtn:nth-child(1) { |
| | | margin-right:4px; |
| | | } |
| | | .delBtn:hover { |
| | | background-color: #f34d5b; |
| | | border-color: #f34d5b; |
| | | color: #fff; |
| | | } |
| | | .delIcon { |
| | | color: #fff; |
| | | background: red; |
| | | border-radius: 50%; |
| | | display: inline-block; |
| | | width: 20px; |
| | | height: 20px; |
| | | font-size: 14px; |
| | | text-align: center; |
| | | line-height: 20px; |
| | | margin-right: 6px; |
| | | } |
| | | </style> |
| | |
| | | </div> |
| | | <div class="person-tree"> |
| | | <!-- é¨é¨ --> |
| | | <!-- <div v-for="(item,index) in titleList" :data-id="item.id" v-if="leftActive" :class="{treeActive: item.active}" @click="selectbtn(index)">{{item.name}}({{item.peopleNum}})</div> --> |
| | | <el-tree style="max-width: 600px" :data="titleList" :expand-on-click-node="false" default-expand-all :props="{label: 'name', children: 'children'}" class="treeActive" @node-click="titleListNode" /> |
| | | <!-- å²ä½ --> |
| | | <div v-for="(item,index) in titleList" :data-id="item.id" v-if="!leftActive" :class="{treeActive: item.active}" @click="selectbtn(index)">{{item.postName}}</div> |
| | |
| | | <el-form :model="departmentFrom" :rules="departmentVisibleRules" :disabled="mode=='show'" ref="dialogForm" label-width="80px" label-position="center"> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="é¨é¨" prop="department"> |
| | | <el-select v-model="departmentFrom.department" style="width: 100%"> |
| | | <el-option v-for="item in groups" :key="item.id" :label="item.label" :value="item.id"/> |
| | | </el-select> |
| | | <el-form-item label="é¨é¨" prop="parentId"> |
| | | <el-tree-select @change= "parentIdChange" v-model="departmentFrom.parentId" clearable placeholder="é¨é¨" default-expand-all check-on-click-nod :data="titleList" check-strictly :props="{ label: 'name' }" node-key="id" ref="parentTree" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | current: 1, |
| | | size: 15, |
| | | status: "1", |
| | | total: "0", |
| | | total: "1", |
| | | keywords: "", |
| | | postId: "", //postId |
| | | organizationCode: "" //ç»ç»code |
| | |
| | | department: "" |
| | | }, |
| | | departmentVisibleRules: { |
| | | department:[ |
| | | {required: true, message: 'è¯·éæ©é¨é¨'} |
| | | ] |
| | | parentId:[{required: true, message: 'è¯·éæ©é¨é¨'}] |
| | | }, |
| | | departmentVisible: false, |
| | | dialog: { |
| | |
| | | statusList: [], |
| | | input3: '', |
| | | tableData: [], |
| | | selection: [] |
| | | selection: [], |
| | | departmentFrom: { |
| | | parentId: "" |
| | | } |
| | | } |
| | | }, |
| | | created(){ |
| | |
| | | saveDialog |
| | | }, |
| | | methods: { |
| | | parentIdChange(val) { |
| | | // var $parentId = this.$refs.parentTree.getCurrentNode().title; |
| | | // this.depatmentForm.$parentId = $parentId; |
| | | }, |
| | | titleListNode(data) { |
| | | this.searchData.organizationCode = data.code; |
| | | this.searchPerson(); |
| | |
| | | }) |
| | | }, |
| | | departmentSubmit() { |
| | | this.departmentVisible=false; //é¨é¨è°æ´ |
| | | var employeeIds = []; |
| | | this.selection.forEach(item=> { |
| | | employeeIds.push(item.id); |
| | | }) |
| | | this.$refs.dialogForm.validate(async (valid) => { |
| | | if (valid) { |
| | | this.$HTTP.put(`/api/blade-cps/employee/change-organization?organizationId=${this.departmentFrom.parentId}&employeeIds=${employeeIds.join(",")}`).then(res=> { |
| | | if(res.code == 200) { |
| | | this.searchPerson(); |
| | | this.departmentVisible=false; //é¨é¨è°æ´ |
| | | this.departmentFrom.parentId = ""; |
| | | this.$message.success("æä½æå"); |
| | | }else { |
| | | this.$alert(res.message, "æç¤º", {type: 'error'}); |
| | | } |
| | | }) |
| | | }else{ |
| | | return false; |
| | | } |
| | | }) |
| | | }, |
| | | //æ·»å |
| | | addPerson(){ |
| | |
| | | this.delPersonModel = true; |
| | | }, |
| | | changeDepartment() { |
| | | if(this.selection.length == 0) { |
| | | this.$message({ |
| | | message: 'è¯·éæ©è³å°ä¸æ¡æ°æ®', |
| | | type: 'warning' |
| | | }); |
| | | return; |
| | | } |
| | | var selStr = ""; |
| | | this.selection.map(item=> { |
| | | selStr += item.id + "," |
| | | }) |
| | | this.selectId = selStr.replace(/,$/, ''); |
| | | this.departmentVisible = true; |
| | | }, |
| | | changeTab(name) { |
| | |
| | | </div> |
| | | <div> |
| | | <el-select v-model="postSearchData.status" placeholder="ç¶æ" class="searchStatus"> |
| | | <el-option v-for="item in statusList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" size="small"/> |
| | | <el-option key="1" label="å¯ç¨" value="1" size="small"/> |
| | | <el-option key="0" label="åç¨" value="0" size="small"/> |
| | | </el-select> |
| | | <el-input v-model="postSearchData.keywords" style="width: 200px" size="small" placeholder="请è¾å
¥å
³é®åè¿è¡è¿æ»¤"> |
| | | <template #append> |
| | | <el-button :icon="searchIcon" @click="searchPerson" /> |
| | | <el-button @click="getPost"> |
| | | <i class="el-icon"><svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704z"></path></svg></i> |
| | | </el-button> |
| | | </template> |
| | | </el-input> |
| | | </div> |
| | |
| | | data(){ |
| | | return { |
| | | totle: "0", |
| | | statusList: [], |
| | | postSearchData: { |
| | | current: 1, |
| | | size: 15, |
| | |
| | | |
| | | }, |
| | | mounted(){ |
| | | this.getStatus(); |
| | | this.getPost(); |
| | | }, |
| | | components: { |
| | |
| | | }, |
| | | postHandleSuccess() { |
| | | this.getPost(); |
| | | }, |
| | | getStatus() { //è·åå
¨é¨è´¦å· |
| | | this.$HTTP.get(`/api/blade-system/dict/dictionary?code=employee_status`).then(res=> { |
| | | if(res.code == 200) { |
| | | this.statusList = res.data; |
| | | } |
| | | }) |
| | | }, |
| | | getPost() { //å²ä½ |
| | | this.$HTTP.get(`/api/blade-system/post/page?`+this.$TOOL.qsStringify(this.postSearchData)).then(res=> { |
| | |
| | | setData(data){ |
| | | this.$HTTP.get(`/api/blade-cps/employee/detail/${data.id}`).then(res=> { |
| | | if(res.code == 200) { |
| | | res.data.postId = res.data.postId.split(","); |
| | | res.data.deptId = res.data.deptId.split(","); |
| | | if(res.data.postId) { |
| | | res.data.postId = res.data.postId.split(","); |
| | | }else { |
| | | res.data.postId = []; |
| | | } |
| | | if(res.data.deptId) { |
| | | res.data.deptId = res.data.deptId.split(","); |
| | | }else { |
| | | res.data.deptId = []; |
| | | } |
| | | //å¯ä»¥åä¸é¢ä¸æ ·å个注å
¥ï¼ä¹å¯ä»¥åä¸é¢ä¸æ ·ç´æ¥åå¹¶è¿å» |
| | | Object.assign(this.addPersonForm, res.data) |
| | | Object.assign(this.addPersonForm, res.data); |
| | | } |
| | | }) |
| | | } |