Commit 0c5b5b25 authored by huangjie's avatar huangjie

*

parent 928f8c41
......@@ -120,9 +120,19 @@
plain
icon="el-icon-upload2"
size="mini"
@click="handleImport"
@click="handleImport(false)"
v-hasPermi="['system:user:import']"
>导入</el-button>
>批量新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="el-icon-upload2"
size="mini"
@click="handleImport(true)"
v-hasPermi="['system:user:import']"
>批量修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
......@@ -164,6 +174,7 @@
align="center"
width="160"
class-name="small-padding fixed-width"
fixed="right"
>
<template slot-scope="scope" v-if="scope.row.userId !== 1">
<el-button
......@@ -208,7 +219,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-row>
<el-col :span="12">
<el-form-item label="用户称" prop="nickName">
<el-form-item label="用户称" prop="nickName">
<el-input v-model="form.nickName" placeholder="请输入用户昵称" maxlength="30" />
</el-form-item>
</el-col>
......@@ -220,43 +231,57 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="手机号码" prop="phonenumber">
<el-input v-model="form.phonenumber" placeholder="请输入手机号码" maxlength="11" />
<el-form-item label="角色" prop="roleIds">
<el-select v-model="form.roleIds" multiple placeholder="请选择角色">
<el-option
v-for="item in roleOptions"
:key="item.roleId"
:label="item.roleName"
:value="item.roleId"
:disabled="item.status == 1"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email" placeholder="请输入邮箱" maxlength="50" />
<el-form-item label="手机号码" prop="phonenumber">
<el-input v-model="form.phonenumber" placeholder="请输入手机号码" maxlength="11" />
<!--<el-input v-model="form.userName" placeholder="请输入手机号码" maxlength="11" />-->
</el-form-item>
</el-col>
<!--<el-col :span="12">-->
<!--<el-form-item label="邮箱" prop="email">-->
<!--<el-input v-model="form.email" placeholder="请输入邮箱" maxlength="50" />-->
<!--</el-form-item>-->
<!--</el-col>-->
</el-row>
<el-row>
<el-col :span="12">
<el-form-item v-if="form.userId == undefined" label="用户名称" prop="userName">
<el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="30" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.userId == undefined" label="用户密码" prop="password">
<el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>
</el-form-item>
</el-col>
<!--<el-col :span="12">-->
<!--<el-form-item v-if="form.userId == undefined" label="用户名称" prop="userName">-->
<!--<el-input v-model="form.userName" placeholder="请输入用户名称" maxlength="30" />-->
<!--</el-form-item>-->
<!--</el-col>-->
<!--<el-col :span="12">-->
<!--<el-form-item v-if="form.userId == undefined" label="用户密码" prop="password">-->
<!--<el-input v-model="form.password" placeholder="请输入用户密码" type="password" maxlength="20" show-password/>-->
<!--</el-form-item>-->
<!--</el-col>-->
</el-row>
<el-row>
<!--<el-col :span="12">-->
<!--<el-form-item label="用户性别">-->
<!--<el-select v-model="form.sex" placeholder="请选择性别">-->
<!--<el-option-->
<!--v-for="dict in dict.type.sys_user_sex"-->
<!--:key="dict.value"-->
<!--:label="dict.label"-->
<!--:value="dict.value"-->
<!--&gt;</el-option>-->
<!--</el-select>-->
<!--</el-form-item>-->
<!--</el-col>-->
<el-col :span="12">
<el-form-item label="用户性别">
<el-select v-model="form.sex" placeholder="请选择性别">
<el-option
v-for="dict in dict.type.sys_user_sex"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="状态">
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio
v-for="dict in dict.type.sys_normal_disable"
......@@ -268,39 +293,26 @@
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="岗位">
<el-select v-model="form.postIds" multiple placeholder="请选择岗位">
<el-option
v-for="item in postOptions"
:key="item.postId"
:label="item.postName"
:value="item.postId"
:disabled="item.status == 1"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="角色">
<el-select v-model="form.roleIds" multiple placeholder="请选择角色">
<el-option
v-for="item in roleOptions"
:key="item.roleId"
:label="item.roleName"
:value="item.roleId"
:disabled="item.status == 1"
></el-option>
</el-select>
</el-form-item>
</el-col>
<!--<el-col :span="12">-->
<!--<el-form-item label="岗位">-->
<!--<el-select v-model="form.postIds" multiple placeholder="请选择岗位">-->
<!--<el-option-->
<!--v-for="item in postOptions"-->
<!--:key="item.postId"-->
<!--:label="item.postName"-->
<!--:value="item.postId"-->
<!--:disabled="item.status == 1"-->
<!--&gt;</el-option>-->
<!--</el-select>-->
<!--</el-form-item>-->
<!--</el-col>-->
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备注">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<!--<el-col :span="24">-->
<!--<el-form-item label="备注">-->
<!--<el-input v-model="form.remark" type="textarea" placeholder="请输入内容"></el-input>-->
<!--</el-form-item>-->
<!--</el-col>-->
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
......@@ -326,9 +338,9 @@
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<div class="el-upload__tip text-center" slot="tip">
<div class="el-upload__tip" slot="tip">
<el-checkbox v-model="upload.updateSupport" /> 是否更新已经存在的用户数据
</div>
<!--<div class="el-upload__tip" slot="tip">-->
<!--<el-checkbox v-model="upload.updateSupport" /> 是否更新已经存在的用户数据-->
<!--</div>-->
<span>仅允许导入xls、xlsx格式文件。</span>
<el-link type="primary" :underline="false" style="font-size:12px;vertical-align: baseline;" @click="importTemplate">下载模板</el-link>
</div>
......@@ -338,6 +350,33 @@
<el-button @click="upload.open = false">取 消</el-button>
</div>
</el-dialog>
<!--导入结果-->
<el-dialog title="导入失败" :visible.sync="showupload" width="60%" append-to-body>
<template>
<el-table max-height="600px"
:data="tableData" border
style="width: 100%">
<el-table-column
prop="date"
label="日期"
width="180">
</el-table-column>
<el-table-column
prop="name"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="address"
label="地址">
</el-table-column>
</el-table>
<el-row style="padding-top: 20px;text-align: right">
<el-button @click="showupload = false">取消</el-button>
<el-button type="primary" @click="downloaderr">生成表格</el-button>
</el-row>
</template>
</el-dialog>
</div>
</template>
......@@ -353,6 +392,25 @@ export default {
components: { Treeselect },
data() {
return {
//导入失败数据
showupload:true,
tableData: [{
date: '2016-05-02',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-04',
name: '王小虎',
address: '上海市普陀区金沙江路 1517 弄'
}, {
date: '2016-05-01',
name: '王小虎',
address: '上海市普陀区金沙江路 1519 弄'
}, {
date: '2016-05-03',
name: '王小虎',
address: '上海市普陀区金沙江路 1516 弄'
}],
// 遮罩层
loading: true,
// 选中数组
......@@ -425,23 +483,17 @@ export default {
],
// 表单校验
rules: {
userName: [
{ required: true, message: "用户名称不能为空", trigger: "blur" },
{ min: 2, max: 20, message: '用户名称长度必须介于 2 和 20 之间', trigger: 'blur' }
],
nickName: [
{ required: true, message: "用户昵称不能为空", trigger: "blur" }
],
password: [
{ required: true, message: "用户密码不能为空", trigger: "blur" },
{ min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur' }
deptId: [
{ required: true, message: "部门不能为空", trigger: "blur" }
],
email: [
{
type: "email",
message: "请输入正确的邮箱地址",
trigger: ["blur", "change"]
}
roleIds: [
{ required: true, message: "角色不能为空", trigger: "blur" }
],
status: [
{ required: true, message: "状态不能为空", trigger: "blur" }
],
phonenumber: [
{ required: true, message: "手机号码不能为空", trigger: "blur" },
......@@ -577,9 +629,9 @@ export default {
const userId = row.userId || this.ids;
getUser(userId).then(response => {
this.form = response.data.user;
this.postOptions = response.data.posts;
// this.postOptions = response.data.posts;
this.roleOptions = response.data.roles;
this.$set(this.form, "postIds", response.data.postIds);
// this.$set(this.form, "postIds", response.data.postIds); 岗位不需要了
this.$set(this.form, "roleIds", response.data.roleIds);
this.open = true;
this.title = "修改用户";
......@@ -609,6 +661,7 @@ export default {
submitForm: function() {
this.$refs["form"].validate(valid => {
if (valid) {
this.form.userName = this.form.phonenumber
if (this.form.userId != undefined) {
updateUser(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
......@@ -642,15 +695,21 @@ export default {
}, `user_${new Date().getTime()}.xlsx`)
},
/** 导入按钮操作 */
handleImport() {
handleImport(updateSupport) {
this.upload.title = "用户导入";
this.upload.open = true;
this.upload.updateSupport = updateSupport
},
/** 下载模板操作 */
importTemplate() {
this.download('system/user/importTemplate', {
}, `user_template_${new Date().getTime()}.xlsx`)
},
//下载导入失败数据
downloaderr() {
// this.download('system/user/importTemplate', {
// }, `user_template_${new Date().getTime()}.xlsx`)
},
// 文件上传中处理
handleFileUploadProgress(event, file, fileList) {
this.upload.isUploading = true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment