Commit ab31d31c authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents ef4be49c 26aa9e7b
...@@ -14,3 +14,4 @@ VUE_APP_PORTAL_PORT = 21085 ...@@ -14,3 +14,4 @@ VUE_APP_PORTAL_PORT = 21085
# 站点请求地址 # 站点请求地址
VUE_APP_SITETREE_URL = http://8.136.255.30:11078/base/site/siteTree VUE_APP_SITETREE_URL = http://8.136.255.30:11078/base/site/siteTree
VUE_APP_API_appName = '智慧办公管理平台'
\ No newline at end of file
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width,initial-scale=1.0"> <meta name="viewport" content="width=device-width,initial-scale=1.0" />
<link rel="icon" href="<%= BASE_URL %>favicon.ico"> <link rel="icon" href="<%= BASE_URL %>favicon.ico" />
<title>智慧办公平台</title> <title>智慧办公管理平台</title>
<link rel="stylesheet" href="https://unpkg.com/element-ui@2.15.5/lib/theme-chalk/index.css"> <link
rel="stylesheet"
href="https://unpkg.com/element-ui@2.15.5/lib/theme-chalk/index.css"
/>
</head> </head>
<body> <body>
<noscript> <noscript>
<strong>We're sorry but app doesn't work properly without JavaScript enabled. Please enable it to continue.</strong> <strong
>We're sorry but app doesn't work properly without JavaScript enabled.
Please enable it to continue.</strong
>
</noscript> </noscript>
<div id="app"></div> <div id="app"></div>
<!-- built files will be auto injected --> <!-- built files will be auto injected -->
......
// table-list 所需的一系列操作方法 // table-list 所需的一系列操作方法
/** /**
* formatter * formatter
* *
...@@ -10,8 +9,10 @@ ...@@ -10,8 +9,10 @@
*/ */
const formatter = (tableData, column, val) => { const formatter = (tableData, column, val) => {
const key = column.property; const key = column.property;
if(tableData.dict && tableData.dict[key]){ console.log(val);
const dict = tableData.dict[key] val = val ? val : "--";
if (tableData.dict && tableData.dict[key]) {
const dict = tableData.dict[key];
return dict[val] || val; return dict[val] || val;
} }
return val; return val;
...@@ -27,11 +28,11 @@ const formatter = (tableData, column, val) => { ...@@ -27,11 +28,11 @@ const formatter = (tableData, column, val) => {
const formatterAmount = (row, column) => { const formatterAmount = (row, column) => {
const property = column.property; const property = column.property;
const amount = row[property]; const amount = row[property];
if(!amount){ if (!amount) {
return '0.00'; return "0.00";
} }
if(amount == 0){ if (amount == 0) {
return '0.00'; return "0.00";
} }
return amount; return amount;
}; };
...@@ -46,15 +47,18 @@ const formatterAmount = (row, column) => { ...@@ -46,15 +47,18 @@ const formatterAmount = (row, column) => {
const formatterDate = (row, column) => { const formatterDate = (row, column) => {
const property = column.property; const property = column.property;
const time = row[property]; const time = row[property];
if(!time) return ''; if (!time) return "";
let date = new Date(Number(time)); let date = new Date(Number(time));
let Y = date.getFullYear() + '-'; let Y = date.getFullYear() + "-";
let M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; let M =
let D = panLeft(date.getDate()) + ' '; (date.getMonth() + 1 < 10
let h = panLeft(date.getHours()) + ':'; ? "0" + (date.getMonth() + 1)
let m = panLeft(date.getMinutes()) + ':'; : date.getMonth() + 1) + "-";
let D = panLeft(date.getDate()) + " ";
let h = panLeft(date.getHours()) + ":";
let m = panLeft(date.getMinutes()) + ":";
let s = panLeft(date.getSeconds()); let s = panLeft(date.getSeconds());
return Y+M+D+h+m+s; return Y + M + D + h + m + s;
}; };
/** /**
...@@ -67,16 +71,19 @@ const formatterDate = (row, column) => { ...@@ -67,16 +71,19 @@ const formatterDate = (row, column) => {
const formatterDateOnly = (row, column) => { const formatterDateOnly = (row, column) => {
const property = column.property; const property = column.property;
const time = row[property]; const time = row[property];
if(!time) return ''; if (!time) return "";
let date = new Date(Number(time)); let date = new Date(Number(time));
let Y = date.getFullYear() + '-'; let Y = date.getFullYear() + "-";
let M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; let M =
let D = panLeft(date.getDate()) + ' '; (date.getMonth() + 1 < 10
return Y+M+D; ? "0" + (date.getMonth() + 1)
: date.getMonth() + 1) + "-";
let D = panLeft(date.getDate()) + " ";
return Y + M + D;
}; };
function panLeft(num){ function panLeft(num) {
return num < 10 ? '0'+num : num; return num < 10 ? "0" + num : num;
} }
/** /**
...@@ -90,18 +97,18 @@ function panLeft(num){ ...@@ -90,18 +97,18 @@ function panLeft(num){
const find = (list, key, val) => { const find = (list, key, val) => {
let index = -1; let index = -1;
let data = null; let data = null;
list.forEach((item, i)=>{ list.forEach((item, i) => {
if(item[key] === val){ if (item[key] === val) {
index = i; index = i;
data = JSON.parse(JSON.stringify(item)); data = JSON.parse(JSON.stringify(item));
return; return;
} }
}) });
return { return {
index, index,
data, data,
} };
} };
/** /**
* 构造树型结构数据 * 构造树型结构数据
...@@ -112,24 +119,32 @@ const find = (list, key, val) => { ...@@ -112,24 +119,32 @@ const find = (list, key, val) => {
* @param {*} rootId 根Id 默认 0 * @param {*} rootId 根Id 默认 0
*/ */
function handleTree(data, id, parentId, children, rootId) { function handleTree(data, id, parentId, children, rootId) {
id = id || 'id' id = id || "id";
parentId = parentId || 'parentId' parentId = parentId || "parentId";
children = children || 'children' children = children || "children";
rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0 rootId =
rootId ||
Math.min.apply(
Math,
data.map((item) => {
return item[parentId];
})
) ||
0;
//对源数据深度克隆 //对源数据深度克隆
const cloneData = JSON.parse(JSON.stringify(data)) const cloneData = JSON.parse(JSON.stringify(data));
//循环所有项 //循环所有项
const treeData = cloneData.filter(father => { const treeData = cloneData.filter((father) => {
let branchArr = cloneData.filter(child => { let branchArr = cloneData.filter((child) => {
//返回每一项的子级数组 //返回每一项的子级数组
return father[id] === child[parentId] return father[id] === child[parentId];
}); });
branchArr.length > 0 ? father.children = branchArr : ''; branchArr.length > 0 ? (father.children = branchArr) : "";
//返回第一层 //返回第一层
return father[parentId] === rootId; return father[parentId] === rootId;
}); });
return treeData != '' ? treeData : data; return treeData != "" ? treeData : data;
}; }
export { export {
formatter, formatter,
...@@ -137,5 +152,5 @@ export { ...@@ -137,5 +152,5 @@ export {
formatterDate, formatterDate,
formatterDateOnly, formatterDateOnly,
find, find,
handleTree handleTree,
}; };
<template> <template>
<el-table <el-table
size='small' size="small"
:data="tableData" :data="tableData"
:row-key="handleRowKeyMethod" :row-key="handleRowKeyMethod"
:span-method="handleSpanMethod" :span-method="handleSpanMethod"
...@@ -10,113 +10,110 @@ ...@@ -10,113 +10,110 @@
@row-click="handleRowClick" @row-click="handleRowClick"
height="520" height="520"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
:empty-text='emptyText' :empty-text="emptyText"
border border
style="width: 100%"> style="width: 100%"
>
<el-table-column
v-for="column in columns"
:key="column.prop"
:type="column.type"
:index="handleIndexMethod"
:selectable="handleSelectableMethod"
:prop="column.prop"
:label="column.label"
:width="column.width"
:sortable="column.sortable"
:show-overflow-tooltip="column.tooltip"
:align="column.align || 'left'"
:formatter="column.formatter"
:reserve-selection="column.reserveSelection"
:subColumns="column.subColumns"
>
<el-table-column <el-table-column
v-for='column in columns' v-for="sunColumn in column.subColumns"
:key='column.prop' :key="sunColumn.prop"
:type="column.type" :type="sunColumn.type"
:index="handleIndexMethod" :prop="sunColumn.prop"
:selectable="handleSelectableMethod" :label="sunColumn.label"
:prop="column.prop" :width="sunColumn.width"
:label="column.label" :sortable="sunColumn.sortable"
:width="column.width" :align="sunColumn.align || 'left'"
:sortable="column.sortable" :formatter="sunColumn.formatter"
:show-overflow-tooltip="column.tooltip" />
:align="column.align || 'left'" </el-table-column>
:formatter='column.formatter'
:reserve-selection='column.reserveSelection'
:subColumns='column.subColumns'
>
<el-table-column
v-for='sunColumn in column.subColumns'
:key='sunColumn.prop'
:type="sunColumn.type"
:prop="sunColumn.prop"
:label="sunColumn.label"
:width="sunColumn.width"
:sortable="sunColumn.sortable"
:align="sunColumn.align || 'left'"
:formatter='sunColumn.formatter'
/>
</el-table-column>
</el-table> </el-table>
</template> </template>
<script> <script>
export default { export default {
props: { props: {
handleRowKeyMethod: { handleRowKeyMethod: {
type: Function, type: Function,
required: false, required: false,
default: row => { return row.id } default: (row) => {
return row.id;
},
}, },
handleSelectableMethod: { handleSelectableMethod: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
handleIndexMethod: { handleIndexMethod: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
handleSpanMethod: { handleSpanMethod: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
handleSelectionChange: { handleSelectionChange: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
handleRowClick: { handleRowClick: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
handleSortChange: { handleSortChange: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
tableRowClassName: { tableRowClassName: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
loading: { loading: {
type: Boolean, type: Boolean,
required: false, required: false,
default: true default: true,
}, },
tableData: { tableData: {
type: Array, type: Array,
required: false, required: false,
default: () => [] default: () => [],
}, },
columns: { columns: {
type: Array, type: Array,
required: false, required: false,
default: ()=> [], default: () => [],
} },
}, },
computed: { computed: {
emptyText() { emptyText() {
return (!this.loading && !this.tableData.length) ? '暂无数据' : '加载中...' return !this.loading && !this.tableData.length ? "暂无数据" : "加载中...";
}, },
}, },
methods:{ methods: {},
},
data() { data() {
return {} return {};
} },
} };
</script> </script>
<template> <template>
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="tableData" :data="tableData"
row-key="id" row-key="id"
border border
@row-click="handleRowClick" @row-click="handleRowClick"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
:default-expand-all="expand" :default-expand-all="expand"
height="640" height="560"
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
>
<el-table-column
v-for="column in columns"
:key="column.prop"
:type="column.type"
:prop="column.prop"
:label="column.label"
:width="column.width"
:show-overflow-tooltip="column.tooltip"
:align="column.align || 'left'"
:formatter="column.formatter"
> >
</el-table-column>
<el-table-column </el-table>
v-for='column in columns'
:key='column.prop'
:type="column.type"
:prop="column.prop"
:label="column.label"
:width="column.width"
:show-overflow-tooltip="column.tooltip"
:align="column.align || 'left'"
:formatter='column.formatter'
>
</el-table-column>
</el-table>
</template> </template>
<script> <script>
export default { export default {
props: { props: {
handleSpanMethod: { handleSpanMethod: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
handleRowClick: { handleRowClick: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
tableRowClassName: { tableRowClassName: {
type: Function, type: Function,
required: false, required: false,
default: () => {} default: () => {},
}, },
loading: { loading: {
type: Boolean, type: Boolean,
required: false, required: false,
default: true default: true,
}, },
expand: { expand: {
type: Boolean, type: Boolean,
required: false, required: false,
default: true default: true,
}, },
tableData: { tableData: {
type: Array, type: Array,
required: false, required: false,
default: () => [] default: () => [],
}, },
columns: { columns: {
type: Array, type: Array,
required: false, required: false,
default: ()=> [], default: () => [],
} },
}, },
computed: { computed: {
emptyText() { emptyText() {
return (!this.loading && !this.tableData.length) ? '暂无数据' : '加载中...' return !this.loading && !this.tableData.length ? "暂无数据" : "加载中...";
}, },
}, },
data() { data() {
return {} return {};
} },
} };
</script> </script>
...@@ -7,23 +7,34 @@ ...@@ -7,23 +7,34 @@
<script> <script>
export default { export default {
mounted() { mounted() {
let token = this.$route.query.token let token = this.$route.query.token;
console.log("token:"+token) if (token) {
if(token ) { this.$route.query.sysName
? localStorage.setItem("sysName", this.$route.query.sysName)
: "";
this.$route.query.sysLogo
? localStorage.setItem("sysLogo", this.$route.query.sysLogo)
: "";
this.$route.query.sysName
? (document.title = this.$route.query.sysName)
: "";
window.sessionStorage.setItem("token", token); window.sessionStorage.setItem("token", token);
this.$router.push('/index') // 有token直接跳转首页 this.$router.push("/index"); // 有token直接跳转首页
}else{ } else {
this.$message({ this.$message({
message: '没有权限,正在跳转登录页面...', message: "没有权限,正在跳转登录页面...",
center: true center: true,
}); });
setTimeout(function(){ setTimeout(function() {
window.location.href=process.env.VUE_APP_PORTAL_URL=='undefined'?'http://192.168.0.98:11072':process.env.VUE_APP_PORTAL_URL window.location.href =
//this.$router.push('/login') process.env.VUE_APP_PORTAL_URL == "undefined"
},1000) ? "http://192.168.0.98:11072"
: process.env.VUE_APP_PORTAL_URL;
//this.$router.push('/login')
}, 1000);
} }
} },
} };
</script> </script>
<style> <style>
...@@ -31,4 +42,4 @@ export default { ...@@ -31,4 +42,4 @@ export default {
width: 300px; width: 300px;
height: 100px; height: 100px;
} }
</style> </style>
\ No newline at end of file
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" notAdd notDel :config="tableConfig"> <LayoutTable :data="tableData" notAdd notDel :config="tableConfig">
</LayoutTable> </LayoutTable>
<drawer-show ref="drawerform" @ok="getData" />
<drawer-show ref="drawerform" @ok="getData" /> </div>
</div>
</template> </template>
<script> <script>
/** 表单弹出框模式需引入 */ /** 表单弹出框模式需引入 */
import drawerShow from "./drawershow"; import drawerShow from "./drawershow";
import table from "@/assets/mixins/table"; import table from "@/assets/mixins/table";
export default { export default {
name: "GocomeRecordList", name: "GocomeRecordList",
components: { components: {
drawerShow drawerShow,
}, },
mixins: [table], mixins: [table],
created() { created() {},
}, methods: {
methods: { /** 重写新增方法 */
/** 重写新增方法 */ toAdd(row) {
toAdd(row) { this.$refs.drawerform.add(row);
this.$refs.drawerform.add(row); },
}, /** 重写编辑方法 */
/** 重写编辑方法 */ toEdit(row) {
toEdit(row) { this.$refs.drawerform.edit(row);
this.$refs.drawerform.edit(row); },
}, /** 重写查看方法 */
/** 重写查看方法 */ toView(row) {
toView(row) { this.$refs.drawerform.view(row);
this.$refs.drawerform.view(row); },
}, },
data() {
}, return {
data() { config: {
return { search: [
config: { {
search: [ name: "userName",
{ type: "text",
name: "userName", label: "用户名称",
type: "text", fuzzy: true,
label: "用户名称", },
fuzzy: true {
}, name: "afterStatus",
{ type: "text",
name: "afterStatus", label: "状态",
type: "text", },
label: "状态" {
}, name: "createTimeStart",
{ type: "date",
name: "createTimeStart", label: "创建时间",
type: "date", },
label: "创建时间" {
},{ name: "createTimeEnd",
name: "createTimeEnd", type: "date",
type: "date", label: "结束时间",
label: "结束时间" },
} ],
], columns: [
columns: [ { type: "selection", width: 60 },
{type: "selection", width: 60}, { type: "index", label: "序号", width: 50 },
{type: "index",label: "序号",width: 50},
{label: "用户名称", prop: "userName"},
{label: "电话", prop: "phone"}, {
label: "用户名称",
prop: "userName",
formatter: (row) => (row.userName ? row.userName : "--"),
},
{label: "所属部门", prop: "deptName"}, {
label: "电话",
prop: "phone",
formatter: (row) => (row.phone ? row.phone : "--"),
},
{label: "所属房间名称", prop: "roomName"}, {
label: "所属部门",
prop: "deptName",
formatter: (row) => (row.deptName ? row.deptName : "--"),
},
{label: "修改前状态", prop: "beforeStatus"}, {
label: "所属房间名称",
prop: "roomName",
formatter: (row) => (row.roomName ? row.roomName : "--"),
},
{label: "修改后状态", prop: "afterStatus"}, {
label: "修改前状态",
prop: "beforeStatus",
formatter: (row) => (row.beforeStatus ? row.beforeStatus : "--"),
},
{label: "修改时间", prop: "createTime", formatter: this.formatterDate}, {
label: "修改后状态",
prop: "afterStatus",
formatter: (row) => (row.afterStatus ? row.afterStatus : "--"),
},
] {
} label: "修改时间",
}; prop: "createTime",
} formatter: this.formatterDate,
},
],
},
}; };
},
};
</script> </script>
...@@ -3,32 +3,40 @@ ...@@ -3,32 +3,40 @@
<template> <template>
<div class="page page-login flex flex-v"> <div class="page page-login flex flex-v">
<div class="form-wrap flex flex-1"> <div class="form-wrap flex flex-1">
<el-form @submit.prevent='onSubmit' ref="form" :model="form" label-width="80px" size="small"> <el-form
<h1>智慧办公管理平台</h1> @submit.prevent="onSubmit"
ref="form"
:model="form"
label-width="80px"
size="small"
>
<h1>{{ sysName }}</h1>
<el-form-item label="用户名"> <el-form-item label="用户名">
<el-input v-model="form.loginName"></el-input> <el-input v-model="form.loginName"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="密码"> <el-form-item label="密码">
<el-input v-model="form.password" type='password'></el-input> <el-input v-model="form.password" type="password"></el-input>
</el-form-item> </el-form-item>
<el-form-item size="large"> <el-form-item size="large">
<el-button type="primary" native-type='submit' :loading='loading' @click='onSubmit'>登录</el-button> <el-button
type="primary"
native-type="submit"
:loading="loading"
@click="onSubmit"
>登录</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="footer"> <div class="footer"></div>
</div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
name: "login", name: "login",
created() { created() {},
},
methods: { methods: {
login() { login() {
this.loading = true; this.loading = true;
...@@ -38,7 +46,7 @@ export default { ...@@ -38,7 +46,7 @@ export default {
}, },
loginSuccess({ data }) { loginSuccess({ data }) {
this.$store.commit("setUserData", data); this.$store.commit("setUserData", data);
console.log("userData",this.$store.state.userData) console.log("userData", this.$store.state.userData);
this.$router.replace({ this.$router.replace({
path: this.redirect, path: this.redirect,
}); });
...@@ -72,6 +80,9 @@ export default { ...@@ -72,6 +80,9 @@ export default {
loginName: "", loginName: "",
password: "", password: "",
}, },
sysName: localStorage.getItem("sysName")
? localStorage.getItem("sysName")
: "智慧办公管理平台",
}; };
}, },
}; };
...@@ -120,4 +131,3 @@ export default { ...@@ -120,4 +131,3 @@ export default {
} }
} }
</style> </style>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" :config="tableConfig"> <LayoutTable :data="tableData" :config="tableConfig"> </LayoutTable>
</LayoutTable>
<drawer-show ref="drawerform" @ok="getData" />
<drawer-show ref="drawerform" @ok="getData"/>
</div> </div>
</template> </template>
...@@ -17,11 +15,10 @@ import moment from "moment/moment"; ...@@ -17,11 +15,10 @@ import moment from "moment/moment";
export default { export default {
name: "MettingRecordList", name: "MettingRecordList",
components: { components: {
drawerShow drawerShow,
}, },
mixins: [table], mixins: [table],
created() { created() {},
},
methods: { methods: {
/** 重写新增方法 */ /** 重写新增方法 */
toAdd(row) { toAdd(row) {
...@@ -43,158 +40,177 @@ export default { ...@@ -43,158 +40,177 @@ export default {
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
that that
.$post("/metting/record/delete?id=" + id, {}) .$post("/metting/record/delete?id=" + id, {})
.then((res) => { .then((res) => {
// 更新数据 // 更新数据
if (res && res.code == 1) { if (res && res.code == 1) {
that.getData(); that.getData();
that.afterDel(id); that.afterDel(id);
} }
}) })
.catch((error) => { .catch((error) => {
that.$message.error(error.message); that.$message.error(error.message);
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
}); });
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
}); });
} });
},
,
toFinish(row) { toFinish(row) {
this.loading = true; this.loading = true;
this.$post("/metting/record/save", { this.$post("/metting/record/save", {
id: row.id, meetStatus: 2, id: row.id,
meetStatus: 2,
}) })
.then((res) => { .then((res) => {
if (res && res.code === 1) { if (res && res.code === 1) {
this.$message.success("结束成功!"); this.$message.success("结束成功!");
this.getData(); this.getData();
this.loading = false; this.loading = false;
} }
}) })
.catch((error) => { .catch((error) => {
this.$message.error(error.message); this.$message.error(error.message);
}); });
} },
}, },
data() { data() {
return { return {
config: { config: {
search: [ { search: [
name: "meetName", {
type: "text", name: "meetName",
label: "会议名称", type: "text",
fuzzy: true label: "会议名称",
}, fuzzy: true,
},
{ {
name: "meetStatus", name: "meetStatus",
type: "select", type: "select",
label: "会议状态" label: "会议状态",
}, },
{ {
name: "meetDateStart", name: "meetDateStart",
type: "date", type: "date",
label: "会议开始日期" label: "会议开始日期",
},{ },
{
name: "meetDateEnd", name: "meetDateEnd",
type: "date", type: "date",
label: "会议结束日期" label: "会议结束日期",
} },
], ],
columns: [ columns: [
{type: "selection", width: 60}, { type: "selection", width: 60 },
{type: "index", label: "序号", width: 50}, { type: "index", label: "序号", width: 50 },
{label: "会议名称", prop: "meetName"}, {
{label: "开会房间", prop: "roomName"}, label: "会议名称",
prop: "meetName",
formatter: (row) => (row.meetName ? row.meetName : "--"),
},
{
label: "开会房间",
prop: "roomName",
formatter: (row) => (row.roomName ? row.roomName : "--"),
},
{ {
label: "开会日期", prop: "meetDate", label: "开会日期",
prop: "meetDate",
formatter: (row) => { formatter: (row) => {
let meetDate = moment(row.meetDate).format('YYYY-MM-DD'); let meetDate = moment(row.meetDate).format("YYYY-MM-DD");
return ( return <span>{meetDate}</span>;
<span>{meetDate}</span>
);
}, },
}, },
{ {
label: "开始时间", prop: "meetTimeStart", label: "开始时间",
prop: "meetTimeStart",
formatter: (row) => { formatter: (row) => {
let meetTimeStart = moment(row.meetTimeStart).format('HH:mm'); let meetTimeStart = moment(row.meetTimeStart).format("HH:mm");
let meetTimeEnd = moment(row.meetTimeEnd).format('HH:mm'); let meetTimeEnd = moment(row.meetTimeEnd).format("HH:mm");
return ( return (
<span>{meetTimeStart}~{meetTimeEnd}</span> <span>
{meetTimeStart}~{meetTimeEnd}
</span>
); );
} },
},
{
label: "开会部门",
prop: "meetDeptName",
formatter: (row) => (row.meetDeptName ? row.meetDeptName : "--"),
}, },
{label: "开会部门", prop: "meetDeptName"},
{label: "结束方式", prop: "finishMethod", formatter: this.formatter}, {
label: "结束方式",
prop: "finishMethod",
formatter: this.formatter,
},
{label: "会议状态", prop: "meetStatus", formatter: this.formatter}, { label: "会议状态", prop: "meetStatus", formatter: this.formatter },
{ {
label: "操作", label: "操作",
width: 240, width: 240,
formatter: row => { formatter: (row) => {
let editButton = ( let editButton = (
<el-button <el-button
size="small" size="small"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
onClick={() => { onClick={() => {
this.toEdit(row); this.toEdit(row);
}} }}
> >
编辑 编辑
</el-button> </el-button>
); );
let viewButton = ( let viewButton = (
<el-button <el-button
size="small" size="small"
type="text" type="text"
icon="el-icon-view" icon="el-icon-view"
onClick={() => { onClick={() => {
this.toView(row); this.toView(row);
}} }}
> >
查看 查看
</el-button> </el-button>
); );
let delButton = ( let delButton = (
<el-button <el-button
size="small" size="small"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
onClick={() => { onClick={() => {
this.toDel(row.id); this.toDel(row.id);
}} }}
> >
删除 删除
</el-button> </el-button>
); );
let finishButton = ( let finishButton = (
<el-button <el-button
size="small" size="small"
type="text" type="text"
icon="el-icon-document" icon="el-icon-document"
onClick={() => { onClick={() => {
this.toFinish(row); this.toFinish(row);
}} }}
> >
结束 结束
</el-button> </el-button>
); );
let listButtons = []; let listButtons = [];
if (row.meetStatus === 0) { if (row.meetStatus === 0) {
...@@ -208,11 +224,11 @@ export default { ...@@ -208,11 +224,11 @@ export default {
listButtons.push(viewButton); listButtons.push(viewButton);
} }
return <div>{listButtons}</div>; return <div>{listButtons}</div>;
} },
} },
] ],
} },
}; };
} },
}; };
</script> </script>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" :config="tableConfig"> <LayoutTable :data="tableData" :config="tableConfig"> </LayoutTable>
</LayoutTable>
<drawer-show ref="drawerform" @ok="getData" />
<drawer-show ref="drawerform" @ok="getData" /> </div>
</div>
</template> </template>
<script> <script>
/** 表单弹出框模式需引入 */ /** 表单弹出框模式需引入 */
import drawerShow from "./drawershow"; import drawerShow from "./drawershow";
import table from "@/assets/mixins/table"; import table from "@/assets/mixins/table";
export default { export default {
name: "RoomList", name: "RoomList",
components: { components: {
drawerShow drawerShow,
}, },
mixins: [table], mixins: [table],
created() { created() {},
}, methods: {
methods: { renderTable(tableData) {
renderTable(tableData) { return (
return ( <el-table stripe data={tableData} class="total-table">
<el-table stripe data={tableData} class="total-table"> {this.columnSet.map((item) => this.renderTableColumn(item))}
{this.columnSet.map((item) => this.renderTableColumn(item))} </el-table>
</el-table> );
); },
}, renderTableColumn(options) {
renderTableColumn(options) { return (
return ( <el-table-column
<el-table-column prop={options.prop}
prop={options.prop} label={options.label}
label={options.label} width={options.width}
width={options.width} formatter={options.formatter}
formatter={options.formatter} ></el-table-column>
> );
</el-table-column> },
); /** 重写新增方法 */
toAdd(row) {
this.$refs.drawerform.add(row);
},
/** 重写编辑方法 */
toEdit(row) {
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.drawerform.view(row);
},
},
data() {
return {
/** 子表列元素 */
columnSet: [
{ label: "设备编码", prop: "deviceCode", width: 150 },
{ label: "设备名称", prop: "deviceName", width: 150 },
],
config: {
search: [
{
name: "userName",
type: "text",
label: "房间名称",
fuzzy: true,
}, },
/** 重写新增方法 */ ],
toAdd(row) { columns: [
this.$refs.drawerform.add(row); { type: "selection", width: 60 },
}, { type: "index", label: "序号", width: 50 },
/** 重写编辑方法 */
toEdit(row) {
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
this.$refs.drawerform.view(row);
},
},
data() {
return {
/** 子表列元素 */
columnSet:[
{label: "设备编码", prop: "deviceCode", width: 150},
{label: "设备名称", prop: "deviceName", width: 150}
],
config: {
search: [
{
name: "userName",
type: "text",
label: "房间名称",
fuzzy: true
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "房间名称", prop: "roomName"}, {
label: "房间名称",
prop: "roomName",
formatter: (row) => (row.roomName ? row.roomName : "--"),
},
{label: "房间编码", prop: "roomCode"}, {
label: "房间编码",
prop: "roomCode",
formatter: (row) => (row.roomCode ? row.roomCode : "--"),
},
{label: "房间类型", prop: "roomType",formatter: this.formatter}, { label: "房间类型", prop: "roomType", formatter: this.formatter },
{label: "绑定设备", {
width: 120, label: "绑定设备",
prop: "subColumns", width: 120,
formatter: (row) => { prop: "subColumns",
let widthsize = this.columnSet.reduce((pre, cur) => { formatter: (row) => {
return pre + Number(cur.width); let widthsize = this.columnSet.reduce((pre, cur) => {
}, 50); return pre + Number(cur.width);
return ( }, 50);
<el-popover placement="right" width={widthsize} trigger="click"> return (
{this.renderTable(row.roomDeviceList)} <el-popover placement="right" width={widthsize} trigger="click">
<el-button type="text" slot="reference">详细</el-button> {this.renderTable(row.roomDeviceList)}
</el-popover> <el-button type="text" slot="reference">
); 详细
}, </el-button>
}, </el-popover>
);
},
},
{label: "员工人数", prop: "countPerson", formatter: this.formatter}, { label: "员工人数", prop: "countPerson", formatter: this.formatter },
{ {
label: "操作", label: "操作",
width: 240, width: 240,
formatter: row => { formatter: (row) => {
return ( return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} /> <table-buttons
); noAdd
} row={row}
} onEdit={this.toEdit}
] onView={this.toView}
} onDel={this.toDel}
}; />
} );
},
},
],
},
}; };
},
};
</script> </script>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" :config="tableConfig"> <LayoutTable :data="tableData" :config="tableConfig"> </LayoutTable>
</LayoutTable>
<drawer-show ref="drawerform" @ok="getData" />
<drawer-show ref="drawerform" @ok="getData" /> </div>
</div>
</template> </template>
<script> <script>
/** 表单弹出框模式需引入 */ /** 表单弹出框模式需引入 */
import drawerShow from "./drawershow"; import drawerShow from "./drawershow";
import table from "@/assets/mixins/table"; import table from "@/assets/mixins/table";
export default { export default {
name: "RoomWorkmanList", name: "RoomWorkmanList",
components: { components: {
drawerShow drawerShow,
}, },
mixins: [table], mixins: [table],
created() { created() {},
}, methods: {
methods: { /** 重写新增方法 */
/** 重写新增方法 */ toAdd(row) {
toAdd(row) { this.$refs.drawerform.add(row);
this.$refs.drawerform.add(row); },
}, /** 重写编辑方法 */
/** 重写编辑方法 */ toEdit(row) {
toEdit(row) { this.$refs.drawerform.edit(row);
this.$refs.drawerform.edit(row); },
}, /** 重写查看方法 */
/** 重写查看方法 */ toView(row) {
toView(row) { this.$refs.drawerform.view(row);
this.$refs.drawerform.view(row); },
}, },
data() {
}, return {
data() { config: {
return { search: [],
config: { columns: [
search: [ { type: "selection", width: 60 },
], { type: "index", label: "序号", width: 50 },
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "房间名称", prop: "roomName"}, {
label: "房间名称",
prop: "roomName",
formatter: (row) => (row.roomName ? row.roomName : "--"),
},
{label: "工作人员名称", prop: "workmanName"}, {
label: "工作人员名称",
prop: "workmanName",
formatter: (row) => (row.workmanName ? row.workmanName : "--"),
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter}, {
{ label: "创建用户",
label: "操作", prop: "createUserId",
width: 240, formatter: this.formatter,
formatter: row => { },
return ( {
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} /> label: "操作",
); width: 240,
} formatter: (row) => {
} return (
] <table-buttons
} noAdd
}; row={row}
} onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
},
},
],
},
}; };
</script> },
\ No newline at end of file };
</script>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" notAdd notDel :config="tableConfig" /> <LayoutTable :data="tableData" notAdd notDel :config="tableConfig" />
</div> </div>
</template> </template>
...@@ -26,36 +25,41 @@ export default { ...@@ -26,36 +25,41 @@ export default {
}, },
], ],
columns: [ columns: [
{ type: "index", label: "序号",align:"center", width: 50 }, { type: "index", label: "序号", align: "center", width: 50 },
{ {
prop: "userName", prop: "userName",
label: "用户名称", label: "用户名称",
align: "center", align: "center",
formatter: (row) => (row.userName ? row.userName : "--"),
}, },
{ {
prop: "loginName", prop: "loginName",
label: "用户登录名", label: "用户登录名",
align: "center", align: "center",
formatter: (row) => (row.loginName ? row.loginName : "--"),
}, },
{ {
prop: "requestUrl", prop: "requestUrl",
label: "请求地址", label: "请求地址",
align: "center", align: "center",
formatter: (row) => (row.requestUrl ? row.requestUrl : "--"),
}, },
{ {
prop: "content", prop: "content",
label: "操作内容", label: "操作内容",
align: "center", align: "center",
formatter: (row) => (row.content ? row.content : "--"),
}, },
{ {
prop: "ip", prop: "ip",
label: "操作IP地址", label: "操作IP地址",
align: "center", align: "center",
formatter: (row) => (row.ip ? row.ip : "--"),
}, },
{ {
......
...@@ -142,11 +142,13 @@ export default { ...@@ -142,11 +142,13 @@ export default {
prop: "id", prop: "id",
label: "ID", label: "ID",
width: 120, width: 120,
formatter: (row) => (row.id ? row.id : "--"),
}, },
{ {
prop: "name", prop: "name",
label: "名称", label: "名称",
width: 160, width: 160,
formatter: (row) => (row.name ? row.name : "--"),
}, },
{ {
prop: "imgPath", prop: "imgPath",
...@@ -162,12 +164,12 @@ export default { ...@@ -162,12 +164,12 @@ export default {
{ {
prop: "parentId", prop: "parentId",
label: "父ID", label: "父ID",
width: 160, formatter: (row) => (row.parentId ? row.parentId : "--"),
}, },
{ {
prop: "url", prop: "url",
label: "地址", label: "地址",
width: 160, formatter: (row) => (row.url ? row.url : "--"),
}, },
{ {
prop: "status", prop: "status",
......
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data='tableData' :config='tableConfig' /> <LayoutTable :data="tableData" :config="tableConfig" />
<dialog-show ref="dialogform" @ok="getData" /> <dialog-show ref="dialogform" @ok="getData" />
</div> </div>
</template> </template>
<script> <script>
import table from '@/assets/mixins/table'; import table from "@/assets/mixins/table";
import dialogShow from "./dialogshow"; import dialogShow from "./dialogshow";
export default { export default {
mixins: [table], mixins: [table],
components: {dialogShow }, components: { dialogShow },
methods: { methods: {
// 新增 // 新增
toAdd(row) { toAdd(row) {
...@@ -21,92 +21,102 @@ export default { ...@@ -21,92 +21,102 @@ export default {
this.$refs.dialogform.edit(row); this.$refs.dialogform.edit(row);
}, },
// 查看 // 查看
toView(row,) { toView(row) {
this.$refs.dialogform.view(row); this.$refs.dialogform.view(row);
}, },
}, },
data() { data() {
return { return {
config: { config: {
search: [ search: [
{ {
name: 'name', name: "name",
type: 'text', type: "text",
label: '参数名称', label: "参数名称",
}, },
], ],
columns: [ columns: [
{ type: "selection",reserveSelection:true, width: 60 }, { type: "selection", reserveSelection: true, width: 60 },
{ type: "index", label: "序号",align:"center", width: 50 }, { type: "index", label: "序号", align: "center", width: 50 },
{ {
prop: 'name', prop: "name",
label: '参数名称', label: "参数名称",
formatter: (row) => (row.name ? row.name : "--"),
}, },
{ {
prop: 'firstOrganize', prop: "firstOrganize",
label: '一级组织', label: "一级组织",
formatter: (row) => (row.firstOrganize ? row.firstOrganize : "--"),
}, },
{ {
prop: 'secondOrganize', prop: "secondOrganize",
label: '二级组织', label: "二级组织",
formatter: (row) =>
row.secondOrganize ? row.secondOrganize : "--",
}, },
{ {
prop: 'paramKey', prop: "paramKey",
label: '参数键', label: "参数键",
formatter: (row) => (row.paramKey ? row.paramKey : "--"),
}, },
{ {
prop: 'paramValue', prop: "paramValue",
label: '参数值', label: "参数值",
formatter: (row) => (row.paramValue ? row.paramValue : "--"),
// formatter: this.util_short('paramValue', 20) // formatter: this.util_short('paramValue', 20)
}, },
{ {
prop: 'validStatus', prop: "validStatus",
label: '有效状态', label: "有效状态",
width: 70, width: 70,
formatter: this.formatter formatter: this.formatter,
}, },
{ {
prop: 'modStatus', prop: "modStatus",
label: '修改状态', label: "修改状态",
width: 100, width: 100,
formatter: this.formatter formatter: this.formatter,
}, },
{ {
prop: 'displayType', prop: "displayType",
label: '展现类型', label: "展现类型",
width: 100, width: 100,
formatter: this.formatter formatter: this.formatter,
}, },
{ {
prop: 'remark', prop: "remark",
label: '备注', label: "备注",
formatter: (row) => (row.remark ? row.remark : "--"),
}, },
{ {
label: '操作', label: "操作",
width: 260, width: 260,
formatter: (row)=> { formatter: (row) => {
return ( return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} /> <table-buttons
) noAdd
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}, },
}, },
], ],
}, },
} };
} },
} };
</script> </script>
<style lang="css"> <style lang="css">
.el-tooltip__popper{ .el-tooltip__popper {
display: inline-block; display: inline-block;
max-width: 80%; max-width: 80%;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: normal ; white-space: normal;
line-height: 18px; line-height: 18px;
cursor: pointer; cursor: pointer;
} }
</style> </style>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data='tableData' :config='tableConfig' /> <LayoutTable :data="tableData" :config="tableConfig" />
<dialog-show ref="dialogform" @ok="getData" /> <dialog-show ref="dialogform" @ok="getData" />
</div> </div>
</template> </template>
<script> <script>
import table from '@/assets/mixins/table'; import table from "@/assets/mixins/table";
import dialogShow from "./dialogshow"; import dialogShow from "./dialogshow";
export default { export default {
mixins: [table], mixins: [table],
components: { components: {
dialogShow, dialogShow,
}, },
methods: { methods: {
...@@ -32,56 +32,62 @@ export default { ...@@ -32,56 +32,62 @@ export default {
config: { config: {
search: [ search: [
{ {
name: 'name', name: "name",
type: 'text', type: "text",
label: '资源名称', label: "资源名称",
}, },
{ {
name: 'authType', name: "authType",
type: 'select', type: "select",
label: '权限类型', label: "权限类型",
}, },
], ],
columns: [ columns: [
{ type: "selection",reserveSelection:true, width: 60 }, { type: "selection", reserveSelection: true, width: 60 },
{ type: "index", label: "序号",align:"center", width: 50 }, { type: "index", label: "序号", align: "center", width: 50 },
// { // {
// prop: 'id', // prop: 'id',
// label: 'ID', // label: 'ID',
// }, // },
{ {
prop: 'name', prop: "name",
label: '名称', label: "名称",
formatter: (row) => (row.name ? row.name : "--"),
}, },
{ {
prop: 'url', prop: "url",
label: '资源', label: "资源",
formatter: (row) => (row.url ? row.url : "--"),
}, },
{ {
prop: 'authType', prop: "authType",
label: '认证类型', label: "认证类型",
formatter: this.formatter, formatter: this.formatter,
}, },
// { // {
// prop: 'userType', // prop: 'userType',
// label: '用户类型', // label: '用户类型',
// width: 100, // width: 100,
// formatter: this.formatter, // formatter: this.formatter,
// }, // },
{ {
label: '操作', label: "操作",
witdh: 120, witdh: 120,
formatter: (row)=> { formatter: (row) => {
return ( return (
<table-buttons noView row={row} onEdit={this.toEdit} onDel={this.toDel} /> <table-buttons
) noView
row={row}
onEdit={this.toEdit}
onDel={this.toDel}
/>
);
}, },
}, },
], ],
}, },
} };
} },
} };
</script> </script>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data="tableData" :config="tableConfig" /> <LayoutTable :data="tableData" :config="tableConfig" />
<dialog-show ref="dialogform" @ok="getData" /> <dialog-show ref="dialogform" @ok="getData" />
<el-dialog title="分配权限" :visible.sync="auth.visible"> <el-dialog title="分配权限" :visible.sync="auth.visible">
<el-form :model="auth.form"> <el-form :model="auth.form">
...@@ -158,7 +158,7 @@ import table from "@/assets/mixins/table"; ...@@ -158,7 +158,7 @@ import table from "@/assets/mixins/table";
import dialogShow from "./dialogshow"; import dialogShow from "./dialogshow";
export default { export default {
mixins: [table], mixins: [table],
components: { dialogShow }, components: { dialogShow },
created() {}, created() {},
methods: { methods: {
beforeRender(data) { beforeRender(data) {
...@@ -186,7 +186,7 @@ export default { ...@@ -186,7 +186,7 @@ export default {
return this.allResources; return this.allResources;
} }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$post("/resource/list", {size: -1}) this.$post("/resource/list", { size: -1 })
.then(({ data }) => { .then(({ data }) => {
resolve(this.groupByAuth(data.data)); resolve(this.groupByAuth(data.data));
}) })
...@@ -224,8 +224,8 @@ export default { ...@@ -224,8 +224,8 @@ export default {
getRoleAuths(id) { getRoleAuths(id) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$post("/role/auth/list", { this.$post("/role/auth/list", {
"roleId": id, roleId: id,
"size": -1, size: -1,
}) })
.then(({ data }) => { .then(({ data }) => {
const result = data.data.map((i) => i.resourceId); const result = data.data.map((i) => i.resourceId);
...@@ -240,7 +240,7 @@ export default { ...@@ -240,7 +240,7 @@ export default {
this.auth.form.resourceIdList = this.auth.checkList this.auth.form.resourceIdList = this.auth.checkList
.filter((i) => typeof i === "number") .filter((i) => typeof i === "number")
.join(","); .join(",");
await this.$post("/role/auth/distributionSource", this.auth.form); await this.$post("/role/auth/distributionSource", this.auth.form);
this.auth.visible = false; this.auth.visible = false;
this.auth.form = this.initForm(); this.auth.form = this.initForm();
this.$message.success("操作成功"); this.$message.success("操作成功");
...@@ -255,7 +255,7 @@ export default { ...@@ -255,7 +255,7 @@ export default {
// return this.allUsers; // return this.allUsers;
// } // }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$post("/user/list", { size: -1 }) this.$post("/user/list", { size: -1 })
.then(({ data }) => { .then(({ data }) => {
resolve(data.data); resolve(data.data);
}) })
...@@ -281,10 +281,10 @@ export default { ...@@ -281,10 +281,10 @@ export default {
async getUsersoo(userTypeIdVal, loginNameVal, realNameVal) { async getUsersoo(userTypeIdVal, loginNameVal, realNameVal) {
const query = { const query = {
"size": -1, size: -1,
"userType": userTypeIdVal, userType: userTypeIdVal,
"loginName": loginNameVal, loginName: loginNameVal,
"realName": realNameVal, realName: realNameVal,
}; };
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$post("/user/list", query) this.$post("/user/list", query)
...@@ -336,8 +336,8 @@ export default { ...@@ -336,8 +336,8 @@ export default {
getRoleUsers(id) { getRoleUsers(id) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$post("/role/user/list", { this.$post("/role/user/list", {
"roleId": id, roleId: id,
"size": -1, size: -1,
}) })
.then(({ data }) => { .then(({ data }) => {
const result = data.data const result = data.data
...@@ -380,8 +380,8 @@ export default { ...@@ -380,8 +380,8 @@ export default {
async saveUser() { async saveUser() {
try { try {
//this.user.form.userIdList = this.user.checkList.join(","); //this.user.form.userIdList = this.user.checkList.join(",");
this.user.form.userIdList = this.user.checkList this.user.form.userIdList = this.user.checkList;
await this.$post("/role/user/distributionUser", this.user.form,); await this.$post("/role/user/distributionUser", this.user.form);
this.user.visible = false; this.user.visible = false;
this.user.form = this.initForm(); this.user.form = this.initForm();
this.$message.success("操作成功"); this.$message.success("操作成功");
...@@ -445,19 +445,20 @@ export default { ...@@ -445,19 +445,20 @@ export default {
type: "text", type: "text",
label: "角色名", label: "角色名",
}, },
], ],
columns: [ columns: [
{ type: "selection",reserveSelection:true, width: 60 }, { type: "selection", reserveSelection: true, width: 60 },
{ type: "index", label: "序号",align:"center", width: 50 }, { type: "index", label: "序号", align: "center", width: 50 },
{ {
prop: "name", prop: "name",
label: "角色名", label: "角色名",
formatter: (row) => (row.name ? row.name : "--"),
}, },
{ {
prop: "remark", prop: "remark",
label: "备注", label: "备注",
formatter: (row) => (row.remark ? row.remark : "--"),
}, },
// { // {
// prop: "roleType", // prop: "roleType",
...@@ -470,7 +471,7 @@ export default { ...@@ -470,7 +471,7 @@ export default {
label: "创建时间", label: "创建时间",
formatter: this.formatterDate, formatter: this.formatterDate,
}, },
{ {
label: "操作", label: "操作",
witdh: 120, witdh: 120,
...@@ -483,16 +484,15 @@ export default { ...@@ -483,16 +484,15 @@ export default {
onEdit={this.toEdit} onEdit={this.toEdit}
onDel={this.toDel} onDel={this.toDel}
/>{" "} />{" "}
<el-button
<el-button icon="el-icon-share"
icon="el-icon-share" size="mini"
size="mini" type="text"
type="text" onClick={() => this.setAuth(row)}
onClick={() => this.setAuth(row)} >
> 分配权限
分配权限 </el-button>
</el-button> {/*
{/*
<el-button <el-button
icon="el-icon-goods" icon="el-icon-goods"
size="mini" size="mini"
...@@ -547,5 +547,3 @@ export default { ...@@ -547,5 +547,3 @@ export default {
margin-top: 20px; margin-top: 20px;
} }
</style> </style>
...@@ -41,23 +41,26 @@ export default { ...@@ -41,23 +41,26 @@ export default {
}, },
], ],
columns: [ columns: [
{ type: "selection", reserveSelection: true, width: 60 },
{ type: "selection",reserveSelection:true, width: 60 }, { type: "index", label: "序号", align: "center", width: 50 },
{ type: "index", label: "序号",align:"center", width: 50 },
{ {
prop: "name", prop: "name",
label: "任务名称", label: "任务名称",
align: "center", align: "center",
formatter: (row) => (row.name ? row.name : "--"),
}, },
{ {
prop: "excuteHost", prop: "excuteHost",
label: "执行主机", label: "执行主机",
align: "center", align: "center",
formatter: (row) => (row.excuteHost ? row.excuteHost : "--"),
}, },
{ {
prop: "excuteContainer", prop: "excuteContainer",
label: "执行容器", label: "执行容器",
align: "center", align: "center",
formatter: (row) =>
row.excuteContainer ? row.excuteContainer : "--",
}, },
{ {
prop: "excuteStrategy", prop: "excuteStrategy",
...@@ -69,6 +72,8 @@ export default { ...@@ -69,6 +72,8 @@ export default {
prop: "lastExcuteHost", prop: "lastExcuteHost",
label: "最后执行主机", label: "最后执行主机",
align: "center", align: "center",
formatter: (row) =>
row.lastExcuteHost ? row.lastExcuteHost : "--",
}, },
{ {
prop: "lastExcuteTime", prop: "lastExcuteTime",
...@@ -103,5 +108,3 @@ export default { ...@@ -103,5 +108,3 @@ export default {
}, },
}; };
</script> </script>
...@@ -110,8 +110,8 @@ export default { ...@@ -110,8 +110,8 @@ export default {
getRoleUsers(id) { getRoleUsers(id) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$post("/role/user/list", { this.$post("/role/user/list", {
"userId": id, userId: id,
"size": -1, size: -1,
}) })
.then(({ data }) => { .then(({ data }) => {
const result = data.data const result = data.data
...@@ -152,22 +152,25 @@ export default { ...@@ -152,22 +152,25 @@ export default {
}, },
config: { config: {
columns: [ columns: [
{ type: "selection",reserveSelection:true, width: 60 }, { type: "selection", reserveSelection: true, width: 60 },
{ type: "index", label: "序号",align:"center", width: 50 }, { type: "index", label: "序号", align: "center", width: 50 },
{ {
prop: "loginName", prop: "loginName",
label: "登录名称", label: "登录名称",
align: "center", align: "center",
formatter: (row) => (row.loginName ? row.loginName : "--"),
}, },
{ {
prop: "realName", prop: "realName",
label: "用户名称", label: "用户名称",
align: "center", align: "center",
formatter: (row) => (row.realName ? row.realName : "--"),
}, },
{ {
prop: "mobile", prop: "mobile",
label: "手机号码", label: "手机号码",
align: "center", align: "center",
formatter: (row) => (row.mobile ? row.mobile : "--"),
}, },
{ {
prop: "roleIds", prop: "roleIds",
...@@ -237,5 +240,3 @@ export default { ...@@ -237,5 +240,3 @@ export default {
}, },
}; };
</script> </script>
<template> <template>
<div class="page"> <div class="page">
<LayoutTable :data='tableData' :config='tableConfig' notAdd notDel /> <LayoutTable :data="tableData" :config="tableConfig" notAdd notDel />
</div> </div>
</template> </template>
<script> <script>
import table from '@/assets/mixins/table'; import table from "@/assets/mixins/table";
export default { export default {
mixins: [table], mixins: [table],
methods: { methods: {},
},
data() { data() {
return { return {
config: { config: {
columns: [ columns: [
{ {
type: 'selection', type: "selection",
width: 60, width: 60,
}, },
{ {
prop: 'id', prop: "id",
label: 'ID', label: "ID",
width: 60, width: 60,
formatter: (row) => (row.id ? row.id : "--"),
}, },
{ {
prop: 'code', prop: "code",
label: '验证码', label: "验证码",
formatter: (row) => (row.code ? row.code : "--"),
}, },
{ {
prop: 'url', prop: "url",
label: '校验地址', label: "校验地址",
formatter: (row) => (row.url ? row.url : "--"),
}, },
{ {
prop: 'mobile', prop: "mobile",
label: '手机号码', label: "手机号码",
formatter: (row) => (row.mobile ? row.mobile : "--"),
}, },
{ {
prop: 'email', prop: "email",
label: '校验邮箱', label: "校验邮箱",
formatter: (row) => (row.email ? row.email : "--"),
}, },
{ {
prop: 'type', prop: "type",
label: '校验方式', label: "校验方式",
width: 130, width: 130,
formatter: this.formatter, formatter: this.formatter,
}, },
{ {
prop: 'sessionId', prop: "sessionId",
label: '会话ID' label: "会话ID",
formatter: (row) => (row.sessionId ? row.sessionId : "--"),
}, },
{ {
prop: 'ip', prop: "ip",
label: 'IP地址' label: "IP地址",
formatter: (row) => (row.ip ? row.ip : "--"),
}, },
{ {
prop: 'createTime', prop: "createTime",
label: '创建时间' label: "创建时间",
formatter: (row) => (row.createTime ? row.createTime : "--"),
}, },
{ {
prop: 'lapseTime', prop: "lapseTime",
label: '失效时间' label: "失效时间",
formatter: (row) => (row.lapseTime ? row.lapseTime : "--"),
}, },
{ {
label: '操作', label: "操作",
formatter: (row)=> { formatter: (row) => {
return ( return (
<table-buttons row={row} onEdit={this.toEdit} onDel={this.toDel} /> <table-buttons
) row={row}
onEdit={this.toEdit}
onDel={this.toDel}
/>
);
}, },
}, },
], ],
search: [ search: [
{ {
name: 'mobile', name: "mobile",
type: 'text', type: "text",
label: '手机号码', label: "手机号码",
}, },
] ],
}, },
};
} },
} };
}
</script> </script>
This diff is collapsed.
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