| | |
| | | <el-form-item :label="$t('table.user.username')" prop="username"> |
| | | <el-input v-model="user.username" :readonly="user.userId === '' ? false : 'readonly'" /> |
| | | </el-form-item> |
| | | <el-form-item v-show="user.userId === ''" :label="$t('table.user.password')" prop="password"> |
| | | <el-tooltip class="item" effect="dark" :content="$t('tips.defaultPassword')" placement="top-start"> |
| | | <el-input value="1234qwer" type="password" readonly /> |
| | | </el-tooltip> |
| | | <el-form-item label="员工姓名" prop="nickName"> |
| | | <el-select v-model="user.nickName" filterable placeholder="" style="width:100%" @change="nickName"> |
| | | <el-option |
| | | v-for="item in baseinfo" |
| | | :key="item.certificateNumb" |
| | | :label="item.empName" |
| | | :value="String(item.certificateNumb)" |
| | | > |
| | | <span style="float: left">{{ item.certificateNumb }}</span> |
| | | <span style="float: right; color: #8492a6; font-size: 13px">{{ item.empName }}</span> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.email')" prop="email"> |
| | | <el-input v-model="user.email" /> |
| | | <el-form-item label="身份证号" prop="certificateNumb"> |
| | | <el-input v-model="user.certificateNumb" /> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.mobile')" prop="mobile"> |
| | | <el-form-item label="手机号码" prop="mobile"> |
| | | <el-input v-model="user.mobile" /> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.dept')" prop="deptId"> |
| | |
| | | style="width:100%" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item v-show="user.userId === ''" :label="$t('table.user.password')" prop="password"> |
| | | <el-tooltip class="item" effect="dark" :content="$t('tips.defaultPassword')" placement="top-start"> |
| | | <el-input value="1234qwer" type="password" readonly /> |
| | | </el-tooltip> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.email')" prop="email"> |
| | | <el-input v-model="user.email" /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item :label="$t('table.user.role')" prop="roleId"> |
| | | <el-select v-model="user.roleId" multiple value="" placeholder="" style="width:100%"> |
| | | <el-option |
| | |
| | | :key="item.roleId" |
| | | :label="item.roleName" |
| | | :value="String(item.roleId)" |
| | | /> |
| | | > |
| | | <span style="float: left">{{ item.roleId }}</span> |
| | | <span style="float: right; color: #8492a6; font-size: 13px">{{ item.roleName }}</span> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.dataPermission')" prop="deptIds"> |
| | |
| | | highlight-current |
| | | style="border: 1px solid #DCDFE6;border-radius: 3px;padding: 6px;" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.sex')" prop="sex"> |
| | | <el-select v-model="user.sex" value="" placeholder="" style="width:100%"> |
| | | <el-option value="0" :label="$t('common.sex.male') " /> |
| | | <el-option value="1" :label="$t('common.sex.female') " /> |
| | | <el-option value="2" :label="$t('common.sex.secret') " /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('table.user.status')" prop="status"> |
| | | <el-radio-group v-model="user.status"> |
| | |
| | | width: this.initWidth(), |
| | | depts: [], |
| | | roles: [], |
| | | baseinfo: [], |
| | | deptTree: [], |
| | | rules: { |
| | | username: [ |
| | |
| | | mounted() { |
| | | this.initDept() |
| | | this.initRoles() |
| | | this.initBaseinfo() |
| | | window.onresize = () => { |
| | | return (() => { |
| | | this.width = this.initWidth() |
| | |
| | | } |
| | | }, |
| | | methods: { |
| | | nickName(data) { |
| | | this.user.certificateNumb = data |
| | | for (let i = 0; i < this.baseinfo.length; i++) { |
| | | if (this.baseinfo[i].certificateNumb === data) { |
| | | this.user.nickName = this.baseinfo[i].empName |
| | | } |
| | | } |
| | | }, |
| | | initUser() { |
| | | return { |
| | | userId: '', |
| | | username: '', |
| | | certificateNumb: '', |
| | | nickName: '', |
| | | password: '1234qwer', |
| | | email: '', |
| | | mobile: '', |
| | |
| | | }) |
| | | }) |
| | | }, |
| | | initBaseinfo() { |
| | | this.$get('hr/empBaseInfo/options').then((r) => { |
| | | this.baseinfo = r.data.data |
| | | }).catch((error) => { |
| | | console.error(error) |
| | | this.$message({ |
| | | message: this.$t('tips.getDataFail'), |
| | | type: 'error' |
| | | }) |
| | | }) |
| | | }, |
| | | setUser(val) { |
| | | this.user = { ...val } |
| | | this.user.deptIds && (this.user.deptIdsArr = this.user.deptIds.split(',')) |