|
|
<template>
|
|
|
<div class="container">
|
|
|
<!-- 查询配置 -->
|
|
|
<div style="padding: 0px 20px">
|
|
|
<div ref="lxHeader">
|
|
|
<LxHeader icon="md-apps" text="工具箱操作日志" style="margin-bottom: 10px; border: 0px; margin-top: 15px">
|
|
|
<div slot="content">
|
|
|
|
|
|
</div>
|
|
|
<slot>
|
|
|
<div>
|
|
|
<Select v-model="model1" style="width:150px" placeholder="工具箱">
|
|
|
<Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option>
|
|
|
</Select>
|
|
|
<DatePicker type="datetimerange" placeholder="选择时间范围" style="width: 300px;margin-left:10px;"></DatePicker>
|
|
|
<Input style="width: 200px; margin-left: 10px" v-model.number="searchFields.Name" placeholder="关键词搜索" />
|
|
|
<Button type="primary" @click="load" style="margin-left: 10px">查询</Button>
|
|
|
<Button icon="md-cloud-download" style="margin-left: 10px" type="primary">导出</Button>
|
|
|
</div>
|
|
|
</slot>
|
|
|
</LxHeader>
|
|
|
</div>
|
|
|
|
|
|
<!-- table数据 -->
|
|
|
<!-- :max-height="450" -->
|
|
|
<LxTable ref="table" :loadKey="true" :columns="columns" :pagination-hide="false" :height="tableHeight"
|
|
|
:tableData="data" :index="true" @loadBefore="loadTableBefore" @loadAfter="loadTableAfter"></LxTable>
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
import LxTable from "@/components/LxTable/index.vue";
|
|
|
import LxHeader from "@/components/LxHeader/index.vue";
|
|
|
export default {
|
|
|
components: {
|
|
|
LxTable,
|
|
|
LxHeader
|
|
|
},
|
|
|
created() {
|
|
|
this.initLoad();
|
|
|
},
|
|
|
mounted() {},
|
|
|
data() {
|
|
|
return {
|
|
|
options: [{
|
|
|
value: '1',
|
|
|
label: '1楼'
|
|
|
}, {
|
|
|
value: '2',
|
|
|
label: '2楼'
|
|
|
}, ],
|
|
|
dialogFormVisible: false,
|
|
|
form: {
|
|
|
name: "",
|
|
|
region: ""
|
|
|
},
|
|
|
formLabelWidth: "120px",
|
|
|
tableHeight: 0,
|
|
|
//查询条件字段
|
|
|
searchFields: {
|
|
|
CreateDate1: "",
|
|
|
CreateDate2: "",
|
|
|
UserName: "",
|
|
|
},
|
|
|
//url: "api/App_Transaction/getPageData", //后从加载数据的url
|
|
|
data: [
|
|
|
|
|
|
],
|
|
|
columns: [{
|
|
|
field: "Id",
|
|
|
title: "主键ID",
|
|
|
type: "int",
|
|
|
width: 90,
|
|
|
hidden: true,
|
|
|
readonly: true,
|
|
|
require: true,
|
|
|
}, {
|
|
|
field: "Name",
|
|
|
title: "工具箱",
|
|
|
type: "string",
|
|
|
width: 90,
|
|
|
require: true,
|
|
|
},
|
|
|
{
|
|
|
field: "Name",
|
|
|
title: "预警时间",
|
|
|
type: "string",
|
|
|
width: 90,
|
|
|
require: true
|
|
|
},
|
|
|
{
|
|
|
field: "PhoneNo",
|
|
|
title: "接收人",
|
|
|
type: "string",
|
|
|
link: true,
|
|
|
width: 100,
|
|
|
require: true,
|
|
|
},
|
|
|
{
|
|
|
field: "Quantity",
|
|
|
title: "接收电话",
|
|
|
type: "int",
|
|
|
width: 80,
|
|
|
require: true,
|
|
|
},
|
|
|
{
|
|
|
field: "Quantity",
|
|
|
title: "短信发送时间",
|
|
|
type: "int",
|
|
|
width: 80,
|
|
|
require: true,
|
|
|
},
|
|
|
{
|
|
|
field: "Quantity",
|
|
|
title: "短信发送状态",
|
|
|
type: "int",
|
|
|
width: 80,
|
|
|
require: true,
|
|
|
},
|
|
|
{
|
|
|
field: "Quantity",
|
|
|
title: "微信发送",
|
|
|
type: "int",
|
|
|
width: 80,
|
|
|
require: true,
|
|
|
},
|
|
|
{
|
|
|
field: "操作",
|
|
|
title: "操作",
|
|
|
width: 120,
|
|
|
render: this.getRender()
|
|
|
},
|
|
|
],
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
|
initLoad() {
|
|
|
var that = this;
|
|
|
var clientHeight = document.documentElement.clientHeight
|
|
|
var lxHeader_height = 96.5; //查询 头部
|
|
|
var paginationHeight = 37; //分页的高度
|
|
|
var topHeight = 50; //页面 头部
|
|
|
let tableHeight = clientHeight - lxHeader_height - topHeight - paginationHeight;
|
|
|
that.tableHeight = tableHeight;
|
|
|
},
|
|
|
edit() {
|
|
|
this.dialogFormVisible = true;
|
|
|
},
|
|
|
//点击查询时生成查询条件
|
|
|
loadTableBefore(param, callBack) {
|
|
|
//此处是从后台加数据前的处理,自己在此处自定义查询条件,查询数据格式自己定义或参考代码生成器查询页面请求的数据格式
|
|
|
console.log("加载数据前" + param);
|
|
|
//生成查询条件
|
|
|
param.wheres = [
|
|
|
//设置为like模糊查询
|
|
|
{
|
|
|
name: "Name",
|
|
|
value: this.searchFields.Name,
|
|
|
displayType: "like"
|
|
|
},
|
|
|
//设置日期查询>=、<=
|
|
|
{
|
|
|
name: "CreateDate",
|
|
|
value: this.searchFields.CreateDate1,
|
|
|
displayType: "thanorequal",
|
|
|
},
|
|
|
{
|
|
|
name: "CreateDate",
|
|
|
value: this.searchFields.CreateDate2,
|
|
|
displayType: "lessorequal",
|
|
|
},
|
|
|
];
|
|
|
callBack(true); //此处必须进行回调,返回处理结果,如果是false,则不会执行后台查询
|
|
|
},
|
|
|
loadTableAfter(data, callBack) {
|
|
|
//此处是从后台加数据后,你可以在渲染表格前,预先处理返回的数据
|
|
|
console.log("加载数据后" + data);
|
|
|
callBack(true); //同上
|
|
|
},
|
|
|
load() {
|
|
|
//此处可以自定义查询条件,如果不调用的框架的查询,格式需要自己定义,
|
|
|
//如果查询的是框架getPageData方法,需要指定格式,如:
|
|
|
// let where={wheres:[{"name":"UserTrueName","value":"教兽",displayType:"text"}]};
|
|
|
let where = {};
|
|
|
this.$refs.table.load(where);
|
|
|
},
|
|
|
del() {
|
|
|
let rows = this.$refs.table.getSelected();
|
|
|
if (rows.length == 0) {
|
|
|
return this.$message.error("请先选中行");
|
|
|
}
|
|
|
this.delClick();
|
|
|
// this.$refs.table.delRow();
|
|
|
//此处可以接着写删除后台的代码
|
|
|
},
|
|
|
getRows() {
|
|
|
let rows = this.$refs.table.getSelected();
|
|
|
if (rows.length == 0) {
|
|
|
return this.$message.error("请先选中行1");
|
|
|
}
|
|
|
let text = "当前选中的行数据:" + JSON.stringify(rows);
|
|
|
|
|
|
this.$Message.info(text);
|
|
|
},
|
|
|
delClick(row) {
|
|
|
//删除
|
|
|
let tigger = false;
|
|
|
this.$Modal.confirm({
|
|
|
title: "删除警告!",
|
|
|
content: "确认要删除选择的数据吗?",
|
|
|
onOk: () => {
|
|
|
if (tigger) return;
|
|
|
tigger = true;
|
|
|
let url = this.getUrl(this.const.DEL);
|
|
|
this.http.post(url, [row.Id], "正在删除数据....").then((x) => {
|
|
|
if (!x.status) return this.$error(x.message);
|
|
|
this.$success(x.message);
|
|
|
this.refresh();
|
|
|
});
|
|
|
}, //, onCancel: () => {}
|
|
|
});
|
|
|
},
|
|
|
getRender() {
|
|
|
return (h, {
|
|
|
row,
|
|
|
column,
|
|
|
index
|
|
|
}) => {
|
|
|
return h("div", {
|
|
|
style: {}
|
|
|
}, [
|
|
|
h(
|
|
|
"a", {
|
|
|
props: {
|
|
|
|
|
|
},
|
|
|
style: {
|
|
|
"border-bottom": "1px solid"
|
|
|
},
|
|
|
on: {
|
|
|
click: (e) => {
|
|
|
e.stopPropagation();
|
|
|
this.delClick(row);
|
|
|
},
|
|
|
},
|
|
|
},
|
|
|
"查看"
|
|
|
),
|
|
|
|
|
|
]);
|
|
|
};
|
|
|
},
|
|
|
},
|
|
|
};
|
|
|
</script>
|