Commit 4e9dc9ee authored by 69237's avatar 69237

Merge remote-tracking branch 'origin/dev-sunyu' into dev-sunyu

parents 1ed0836e 66635d53
......@@ -33,6 +33,7 @@
margin-left: 1px;
"
index="/employee/employee"
v-if="roles[0] === 'admin'"
>
<i style="width: 10px; height: 10px; margin-top: -12px"></i>
员工信息
......@@ -101,6 +102,7 @@ export default {
components: { Menu },
data() {
return {
roles: [],
backTag: false,
newTopNev: [
{
......@@ -197,6 +199,8 @@ export default {
this.currentIndex = this.$route.path;
this.$store.dispatch("app/toggleSideBarHide", true);
this.setVisibleNumber();
this.roles = this.$store.getters.roles;
},
created() {
this.getinfo();
......
......@@ -124,29 +124,36 @@ service.interceptors.response.use(res => {
// 通用下载方法
export function download(url, params, filename, config) {
downloadLoadingInstance = Loading.service({ text: "正在下载数据,请稍候", spinner: "el-icon-loading", background: "rgba(0, 0, 0, 0.7)", })
downloadLoadingInstance = Loading.service({
text: "正在下载数据,请稍候",
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.7)"
});
return service.post(url, params, {
transformRequest: [(params) => { return tansParams(params) }],
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
transformRequest: [function (data) {
return JSON.stringify(data); // 将参数转换为 JSON 字符串
}],
headers: { 'Content-Type': 'application/json' }, // 设置 Content-Type 为 application/json
responseType: 'blob',
...config
}).then(async (data) => {
const isBlob = blobValidate(data);
if (isBlob) {
const blob = new Blob([data])
saveAs(blob, filename)
const blob = new Blob([data]);
saveAs(blob, filename);
} else {
const resText = await data.text();
const rspObj = JSON.parse(resText);
const errMsg = errorCode[rspObj.code] || rspObj.msg || errorCode['default']
const errMsg = errorCode[rspObj.code] || rspObj.msg || errorCode['default'];
Message.error(errMsg);
}
downloadLoadingInstance.close();
}).catch((r) => {
console.error(r)
Message.error('下载文件出现错误,请联系管理员!')
}).catch((error) => {
console.error(error);
Message.error('下载文件出现错误,请联系管理员!');
downloadLoadingInstance.close();
})
});
}
export default service
......@@ -141,7 +141,7 @@
<el-table-column label="员工姓名" align="center" key="nickName" prop="nickName" width="190" v-if="columns[2].visible" :show-overflow-tooltip="true" />
<!-- <el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" />-->
<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" width="190" v-if="columns[4].visible" />
<el-table-column label="权重" align="center" key="weightNum" prop="weightNum" width="190" v-if="columns[8].visible" />
<el-table-column label="权重" align="center" key="weightNum" prop="weightNum" width="150" v-if="columns[8].visible" />
<el-table-column label="创建人" align="center" key="createBy" prop="createBy" width="190" v-if="columns[7].visible" />
<el-table-column label="创建时间" align="center" key="createTime" prop="createTime" width="190" v-if="columns[6].visible" >
<template slot-scope="scope">
......@@ -158,7 +158,7 @@
<el-table-column
label="操作"
align="center"
width="192"
width="232"
class-name="small-padding fixed-width"
>
<template slot-scope="scope" v-if="scope.row.userId !== 1">
......@@ -249,7 +249,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="权重">
<el-input-number v-model="form.weightNum" controls-position="right" :min="0" ></el-input-number>
<el-input-number v-model="form.weightNum" controls-position="right" :min="1" ></el-input-number>
</el-form-item>
</el-col>
</el-row>
......@@ -296,13 +296,13 @@
</el-form-item>
</el-col>
</el-row>-->
<el-row>
<!-- <el-row>
<el-col :span="12">
<el-form-item label="创建账号">
<el-input v-model="form.createBy" maxlength="11" ></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="12">
<el-col :span="12">
<el-form-item label="创建时间" >
<el-date-picker
v-model="form.createTime"
......@@ -310,8 +310,8 @@
placeholder="选择日期和时间">
</el-date-picker>
</el-form-item>
</el-col>-->
</el-row>
</el-col>
</el-row>-->
<el-row>
<el-col :span="24">
<el-form-item label="备注">
......@@ -331,7 +331,7 @@
<div class="form-header">
<h3><span class="blue-square"></span> 用户详细信息</h3>
</div>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form ref="form" :model="form" :rules="updaterules" label-width="80px">
<el-row>
<el-col :span="12">
<el-form-item label="账号" prop="userName">
......@@ -482,7 +482,6 @@ import { listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUs
import { getToken } from "@/utils/auth";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {update} from "script-ext-html-webpack-plugin/lib/elements";
export default {
name: "User",
......@@ -530,8 +529,12 @@ export default {
roleOptions: [],
// 表单参数
form: {
createBy: '', // 创建账号
createTime: '', // 创建时间
// 创建账号
createBy: '',
// 创建时间
createTime: '',
// 默认排序
weightNum: 1,
},
defaultProps: {
children: "children",
......@@ -577,6 +580,16 @@ export default {
{ key: 8, label: '权重', visible: true}
],
// 表单校验
updaterules:{
userName: [
{ required: true, message: "账号不能为空", trigger: "blur" },
{ min: 2, max: 20, message: '账号长度必须介于 2 和 20 之间', trigger: 'blur' }
],
nickName: [
{ required: true, message: "姓名不能为空", trigger: "blur" }
],
},
rules: {
userName: [
{ required: true, message: "账号不能为空", trigger: "blur" },
......@@ -696,7 +709,7 @@ export default {
// 多选框选中数据
handleSelectionChange(selection) {
this.selectedRowKeys = selection.map(row => row.userId );
this.ids = selection.map(item => item.id);
this.ids = selection.map(item => item.userId);
this.single = selection.length !== 1;
this.multiple = selection.length > 1;
},
......@@ -802,13 +815,15 @@ export default {
submitForm: function() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.userId != undefined) {
if (this.form.userId !== undefined) {
// 更新现有记录
updateUser(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
// 添加新记录
addUser(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
......@@ -821,7 +836,7 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const userIds = row.userId || this.ids;
this.$modal.confirm('是否确认删除用户编号为"' + userIds + '"的数据项?').then(function() {
this.$modal.confirm('是否确认删除该用户').then(function() {
return delUser(userIds);
}).then(() => {
this.getList();
......@@ -832,10 +847,7 @@ export default {
handleExport() {
// 获取选中的用户 ID
const userIds = this.ids;
this.download('system/user/export', {
...this.queryParams,
userIds, // 将用户 ID 传递给服务器
}, `user_${new Date().getTime()}.xlsx`)
this.download('system/user/export', userIds, `user_${new Date().getTime()}.xlsx`);
},
/** 导入按钮操作 */
handleImport() {
......
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