Commit ee0839c9 authored by dupengyu's avatar dupengyu

变更提交

parent e3782ae4
......@@ -268,10 +268,10 @@ export default {
},
async handleSelectParam(row) {
let res = await selectParam({ equipId: row.id });
if (res && res.paramsJson) {
this.paramsJson = JSON.parse(res.paramsJson);
console.log("--------paramsJson------------");
console.log(this.paramsJson);
this.openSetting = true;
}
},
async handleSetting(row) {
this.rowData = row;
......
......@@ -2,10 +2,11 @@ import request from '@/utils/request'
const path = {
list: 'api/user/selectUserPage',
create: 'api/user/saveUser',
create: 'api/user/add',
updatePwd: 'api/user/updatePwd',
updateInfo: 'api/user/updateUserBaseInfo',
selectLogPage:'/api/sysLog/selectLogPage',
logList: 'api/sysLog/selectLogPage',
}
......@@ -28,4 +29,7 @@ export function updateInfo() {
export function logList() {
return request.post(path.logList, ...arguments);
}
export function selectLogPage() {
return request.post(path.selectLogPage, ...arguments);
}
......@@ -24,4 +24,6 @@ export function formInitPwd(data = {}) {
export const rules = {
userName: { required: true, message: '请输入用户名', trigger: 'blur' },
phone: { required: true, message: '请输入手机号码', trigger: 'blur' },
realName: { required: true, message: '请输入真实姓名', trigger: 'blur' },
}
<template>
<div>
<el-form
class="search-form"
:model="form"
ref="form"
label-width="80px"
:inline="true"
size="mini"
>
<el-form-item label="操作对象">
<el-select
v-model="form.operateObj"
placeholder="请选择操作对象"
clearable
>
<el-option
v-for="item in operatObj"
:key="item.dictValue"
:label="item.dictValue"
:value="+item.dictValue1"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="操作内容">
<el-select
v-model="form.operateContent"
placeholder="请选择操作内容"
clearable
>
<el-option
v-for="item in operatContent"
:key="item.dictValue"
:label="item.dictValue"
:value="item.dictValue1"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="操作结果">
<el-select
v-model="form.operateResult"
placeholder="请选择操作结果"
clearable
>
<el-option
v-for="(val, key) in resultEnum"
:key="val"
:label="val"
:value="+key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="success" @click="toSearch">查询</el-button>
<el-button type="primary" @click="reset">重置</el-button>
</el-form-item>
</el-form>
</div>
</template>
<script>
import { selectDictType } from '@/api/baseData';
export default {
name: 'search',
data() {
return {
operatContent: [],
operatObj: [],
resultEnum: {
0: '失败',
1: '成功',
},
form: formInit()
}
},
computed: {
},
mounted() {
this.getInit()
},
methods: {
toSearch() {
this.$emit('search', this.form);
},
reset() {
this.form = formInit();
this.$emit('search');
},
getInit() {
selectDictType({ dictType: '06' }).then(res => {
let list = res || [];
this.operatContent = list;
})
selectDictType({ dictType: '07' }).then(res => {
let list = res || [];
this.operatObj = list;
})
}
}
}
function formInit() {
return {
operateContent: '',
operateObj: null,
operateResult: null,
}
}
</script>
<style scoped lang="scss">
.w200 {
width: 200px;
}
.search-form {
padding: 10px;
background-color: #eaf1fe;
margin-bottom: 20px;
border-radius: 8px;
.el-form-item--mini.el-form-item,
.el-form-item--small.el-form-item {
margin-bottom: 0;
}
}
</style>
\ No newline at end of file
<template>
<!-- 用户操作日志 -->
<div class="leakage-cable">
<el-radio-group v-model="operateType" style="margin-bottom: 20px;" @input="search">
<el-radio-button label="0">登录</el-radio-button>
<el-radio-button label="4">退出登录</el-radio-button>
</el-radio-group>
<el-table
:data="tableData"
style="width: 100%"
class="statistics-table"
:row-class-name="tableRowClassName"
:row-style="{ height: '50px' }"
:header-cell-style="{ background: '#EAF1FE', color: '#666666' }"
>
<el-table-column prop="userName" label="用户名" align="center" />
<el-table-column prop="operateTypeName" label="操作类别" align="center" />
<el-table-column prop="operateObjName" label="操作对象" align="center" />
<el-table-column prop="objectName" label="对象名称" align="center" />
<el-table-column prop="operateContent" label="操作内容" align="center" />
<el-table-column
prop="operateResultName"
label="操作结果"
align="center"
/>
<el-table-column prop="creationTime" label="操作时间" align="center" />
</el-table>
<Pagination
:limit="params.size"
:page="params.current"
:total="total"
class="pagination"
@pagination="handlePageChange"
/>
</div>
</template>
<script>
import { selectLogPage } from "../api";
import { successAlert, warningAlert } from "@/utils/alert";
export default {
data() {
return {
params: {
current: 1,
size: 10,
},
total: 10,
tableData: [],
isQuery: false,
istrue: 0,
searchOption: {},
exids: [],
operateType: 0,
};
},
methods: {
handlePageChange(pageData) {
this.params.size = pageData.size;
this.params.current = pageData.page;
this.getTableData();
},
refresh() {
this.$refs.reset != undefined
? this.$refs.reset.reset()
: this.getTableData();
},
search() {
this.params.current = 1;
this.istrue = 1;
this.getTableData();
},
getTableData() {
let params = {
...this.params,
operateType: this.operateType,
};
selectLogPage(params).then((res) => {
let list = res.records || [];
this.tableData = list;
this.total = res.total;
this.exids = list.map((i) => i.id);
if (this.istrue == 1) {
if (this.tableData.length != 0) {
successAlert("操作成功");
} else {
warningAlert("查询结果为空");
}
this.istrue = 0;
}
});
},
tableRowClassName({ row, rowIndex }) {
return rowIndex % 2 === 0 ? "" : "single-row";
},
},
mounted() {
this.getTableData();
},
};
</script>
<style lang="scss" scoped>
.leakage-cable {
.leakage-top {
margin-bottom: 20px;
display: flex;
align-items: flex-end;
justify-content: space-between;
}
& ::v-deep .cell {
color: #333333;
}
.page {
display: flex;
align-items: center;
justify-content: center;
margin: 20px 0;
.current {
margin: 0 20px;
}
}
}
</style>
<style lang="scss">
.statistics-table {
.single-row {
background: #f1f6ff;
}
td {
padding: 5px !important;
}
}
</style>
\ No newline at end of file
......@@ -5,7 +5,7 @@
<el-form-item label="用户名:" prop="userName" >
<el-input v-model="form.userName" disabled />
</el-form-item>
<el-form-item label="电话号码:">
<el-form-item label="电话号码:" prop="phone">
<el-input v-model="form.phone" />
</el-form-item>
<el-form-item label="邮箱:">
......
......@@ -13,7 +13,7 @@
<el-form-item label="真实姓名:" prop="realName">
<el-input v-model="form.realName" />
</el-form-item>
<el-form-item label="电话号码:">
<el-form-item label="电话号码:" prop="phone">
<el-input v-model="form.phone" />
</el-form-item>
<el-form-item label="邮箱:">
......
......@@ -2,7 +2,7 @@ import request from '@/utils/request'
const path = {
list: 'api/user/selectUserPage',
create: 'api/user/saveUser',
create: 'api/user/add',
updatePwd: 'api/user/updatePwd',
updateInfo: 'api/user/updateUserBaseInfo',
......
<template>
<div>
<el-form
class="search-form"
:model="form"
ref="form"
label-width="80px"
:inline="true"
size="mini"
>
<el-form-item label="操作对象">
<el-select
v-model="form.operateObj"
placeholder="请选择操作对象"
clearable
>
<el-option
v-for="item in operatObj"
:key="item.dictValue"
:label="item.dictValue"
:value="+item.dictValue1"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="操作内容">
<el-select
v-model="form.operateContent"
placeholder="请选择操作内容"
clearable
>
<el-option
v-for="item in operatContent"
:key="item.dictValue"
:label="item.dictValue"
:value="item.dictValue1"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="操作结果">
<el-select
v-model="form.operateResult"
placeholder="请选择操作结果"
clearable
>
<el-option
v-for="(val, key) in resultEnum"
:key="val"
:label="val"
:value="+key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="success" @click="toSearch">查询</el-button>
<el-button type="primary" @click="reset">重置</el-button>
</el-form-item>
</el-form>
</div>
</template>
<script>
import { selectDictType } from '@/api/baseData';
export default {
name: 'search',
data() {
return {
operatContent: [],
operatObj: [],
resultEnum: {
0: '失败',
1: '成功',
},
form: formInit()
}
},
computed: {
},
mounted() {
this.getInit()
},
methods: {
toSearch() {
this.$emit('search', this.form);
},
reset() {
this.form = formInit();
this.$emit('search');
},
getInit() {
selectDictType({ dictType: '06' }).then(res => {
let list = res || [];
this.operatContent = list;
})
selectDictType({ dictType: '07' }).then(res => {
let list = res || [];
this.operatObj = list;
})
}
}
}
function formInit() {
return {
operateContent: '',
operateObj: null,
operateResult: null,
}
}
</script>
<style scoped lang="scss">
.w200 {
width: 200px;
}
.search-form {
padding: 10px;
background-color: #eaf1fe;
margin-bottom: 20px;
border-radius: 8px;
.el-form-item--mini.el-form-item,
.el-form-item--small.el-form-item {
margin-bottom: 0;
}
}
</style>
\ No newline at end of file
<template>
<!-- 用户操作日志 -->
<div class="leakage-cable">
<div class="leakage-top">
<div style="color: #666666"></div>
<div class="operate-btn">
<el-button type="primary" @click="refresh">刷新</el-button>
<el-button type="primary" @click="isQuery = !isQuery">查询</el-button>
<el-button type="primary" @click="exportLog">导出</el-button>
</div>
</div>
<div v-if="isQuery">
<search @search="search" ref="reset" />
</div>
<el-table
:data="tableData"
style="width: 100%"
class="statistics-table"
:row-class-name="tableRowClassName"
:row-style="{ height: '50px' }"
:header-cell-style="{ background: '#EAF1FE', color: '#666666' }"
>
<el-table-column prop="userName" label="用户名" align="center" />
<el-table-column prop="operateTypeName" label="操作类别" align="center" />
<el-table-column prop="operateObjName" label="操作对象" align="center" />
<el-table-column prop="objectName" label="对象名称" align="center" />
<el-table-column prop="operateContent" label="操作内容" align="center" />
<el-table-column
prop="operateResultName"
label="操作结果"
align="center"
/>
<el-table-column prop="creationTime" label="操作时间" align="center" />
</el-table>
<Pagination
:limit="params.size"
:page="params.current"
:total="total"
class="pagination"
@pagination="handlePageChange"
/>
</div>
</template>
<script>
import { logList } from "../api";
import search from "./components/search.vue";
import { exportLog } from "@/api/export";
import download from "@/utils/download";
import { successAlert, warningAlert } from "@/utils/alert";
export default {
data() {
return {
params: {
current: 1,
size: 10,
},
total: 10,
tableData: [],
isQuery: false,
istrue: 0,
searchOption: {},
exids: [],
};
},
components: {
search,
},
methods: {
handlePageChange(pageData) {
this.params.size = pageData.size;
this.params.current = pageData.page;
this.getTableData();
},
refresh() {
this.$refs.reset != undefined
? this.$refs.reset.reset()
: this.getTableData();
},
search(option) {
this.params.current = 1;
this.istrue = 1;
this.searchOption = option;
this.getTableData();
},
getTableData() {
let params = {
...this.params,
...this.searchOption,
};
logList(params).then((res) => {
let list = res.records || [];
this.tableData = list;
this.total = res.total;
this.exids = list.map((i) => i.id);
if (this.istrue == 1) {
if (this.tableData.length != 0) {
successAlert("操作成功");
} else {
warningAlert("查询结果为空");
}
this.istrue = 0;
}
});
},
tableRowClassName({ row, rowIndex }) {
return rowIndex % 2 === 0 ? "" : "single-row";
},
exportLog() {
if (this.exids.length == 0) {
this.$message.warning("暂无数据");
return false;
} else {
exportLog({ ids: this.exids }).then((res) => {
download(res, "vnd.ms-excel", `用户日志.xls`);
});
}
},
},
mounted() {
this.getTableData();
},
};
</script>
<style lang="scss" scoped>
.leakage-cable {
.leakage-top {
margin-bottom: 20px;
display: flex;
align-items: flex-end;
justify-content: space-between;
}
& ::v-deep .cell {
color: #333333;
}
.page {
display: flex;
align-items: center;
justify-content: center;
margin: 20px 0;
.current {
margin: 0 20px;
}
}
}
</style>
<style lang="scss">
.statistics-table {
.single-row {
background: #f1f6ff;
}
td {
padding: 5px !important;
}
}
</style>
\ No newline at end of file
......@@ -5,7 +5,7 @@
<el-form-item label="用户名:" prop="userName">
<el-input v-model="form.userName" disabled />
</el-form-item>
<el-form-item label="电话号码:">
<el-form-item label="电话号码:" prop="phone">
<el-input v-model="form.phone" />
</el-form-item>
<el-form-item label="邮箱:">
......
......@@ -13,7 +13,7 @@
<el-form-item label="真实姓名:" prop="realName">
<el-input v-model="form.realName" />
</el-form-item>
<el-form-item label="电话号码:">
<el-form-item label="电话号码:" prop="phone">
<el-input v-model="form.phone" />
</el-form-item>
<el-form-item label="邮箱:">
......
......@@ -9,8 +9,8 @@ function resolve(dir) {
const name = defaultSettings.title || '漏缆故障定位监测系统' // page title
const port = process.env.port || process.env.npm_config_port || 8890 // dev port
// const href = 'http://101.126.159.207'
// const href = 'http://127.0.0.1'
const href = 'http://192.168.0.115'
const href = 'http://127.0.0.1'
// const href = 'http://192.168.0.115'
const rewriteDefaultConfig = {
changeOrigin: 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