1. 数据运维-任务运维新增编辑列表 2.历史工单

main
赵培友 3 years ago
parent c28dce9f17
commit 2d3bb806bd
  1. 34
      src/api/maintenance/task.js
  2. 84
      src/const/maintenance/task.js
  3. 80
      src/const/workflow/workorder.js
  4. 2
      src/lang/zh.js
  5. 88
      src/styles/custom/custom.scss
  6. 247
      src/views/maintenance/task.vue
  7. 30
      src/views/plugin/workflow/process/components/examForm.vue
  8. 243
      src/views/plugin/workflow/process/components/form.vue
  9. 23
      src/views/plugin/workflow/process/start.vue
  10. 102
      src/views/plugin/workflow/process/workorder.vue
  11. 12
      src/views/system/user.vue

@ -0,0 +1,34 @@
import request from '@/router/axios';
const prefix = '/api/blade-workflow/taskInfo'
// 查询
export const getList = () => {
return request({
url: `${prefix}/list`,
method: 'get'
})
}
export const add = (row) => {
return request({
url: `${prefix}/save`,
method: 'post',
data: row
})
}
export const update = (row) => {
return request({
url: `${prefix}/update`,
method: 'post',
data: row
})
}
export const remove = (ids) => {
return request({
url: `${prefix}/remove`,
method: 'post',
params: {
ids,
}
})
}

@ -0,0 +1,84 @@
export const tableOption = {
index: true,
indexLabel: "序号",
indexWidth:120,
labelPosition: "top",
selection: true,
border: false,
headerAlign: "left",
align: "left",
menuAlign:'left',
menuHeaderAlign:'left',
menuBtn: true,
editBtn: false,
delBtn: false,
addBtn: false,
tip: false,
searchMenuSpan: 3, //控制搜索按钮
columnBtn: false,
refreshBtn: false,
header: false,
menuWidth:220,
dialogCustomClass:"custom",
column: [
{
type: "select",
label: "任务父类",
prop: "taskParentId",
align: "left",
overHidden: true,
dicUrl:'/api/blade-system/dict-biz/dictionary?code=task_parent',
props: {
label: "dictValue",
value: "id",
},
rules: [{ required: true, message: "请选择任务父类" }],
span:8
},
{
type: "input",
label: "任务种类",
prop: "taskTypeName",
align: "left",
overHidden: true,
rules: [{ required: true, message: "请输入任务种类" }],
span:8
},
{
type: "select",
label: "任务等级",
prop: "taskLevel",
align: "left",
overHidden: true,
dicUrl:'/api/blade-system/dict-biz/dictionary?code=task_level',
props: {
label: "dictValue",
value: "id",
},
rules: [{ required: true, message: "请选择任务等级" }],
span:8
},
{
type: "input",
label: "创建人",
prop: "createUser",
align: "left",
overHidden: true,
addDisplay:false,
editDisplay: false
},
{
label: "创建时间",
type: "datetime",
overHidden: true,
prop: "createTime",
format: "yyyy-MM-dd HH:mm",
valueFormat: "yyyy-MM-dd HH:mm:ss",
addDisplay:false,
editDisplay: false
},
],
}

@ -0,0 +1,80 @@
export const tableOption = {
selection: true,
border: false,
gutter: 60, //设置input的大小
headerAlign: "left",
align: "left",
menuAlign:'left',
menuHeaderAlign:'left',
menuBtn: true,
editBtn: false,
delBtn: false,
addBtn: false,
tip: false,
searchMenuSpan: 3, //控制搜索按钮
columnBtn: false,
refreshBtn: false,
// dialogCustomClass: "custom",
header: false,
menuWidth:120,
column: [
{
type: "input",
label: "任务名称",
prop: "year",
align: "left",
overHidden: true,
},
{
type: "input",
label: "当前责任人",
prop: "userStatusAnalysis",
align: "left",
overHidden: true,
},
{
type: "input",
label: "公司名称",
prop: "count",
align: "left",
overHidden: true,
},
{
type: "input",
label: "发起人",
prop: "count",
align: "left",
overHidden: true,
},
{
type: "input",
label: "状态",
prop: "status",
align: "left",
overHidden: true,
},
{
label: "创建时间",
type: "datetime",
overHidden: true,
prop: "startTime",
format: "yyyy-MM-dd HH:mm",
valueFormat: "yyyy-MM-dd HH:mm:ss",
},
{
label: "结束时间",
type: "datetime",
overHidden: true,
prop: "startTime",
format: "yyyy-MM-dd HH:mm",
valueFormat: "yyyy-MM-dd HH:mm:ss",
},
{
type: "input",
label: "处理状态",
prop: "status",
align: "left",
overHidden: true,
},
],
}

@ -1,5 +1,5 @@
export default { export default {
title: 'Saber企业管理平台', title: '工单系统',
logoutTip: '退出系统, 是否继续?', logoutTip: '退出系统, 是否继续?',
submitText: '确定', submitText: '确定',
cancelText: '取消', cancelText: '取消',

@ -1,8 +1,6 @@
// // input输入框 // // input输入框
// .el-input--small .el-input__inner { // .el-input--small .el-input__inner {
// width: 420px;
// height: 50px;
// line-height: 50px;
// border-radius: 3px 3px 3px 3px; // border-radius: 3px 3px 3px 3px;
// color: #333; // color: #333;
// position: relative; // position: relative;
@ -14,6 +12,7 @@
// color: #273240; // color: #273240;
// padding: 0!important; // padding: 0!important;
// } // }
// 包裹容器 // 包裹容器
.cus-container { .cus-container {
margin: 0 38px; margin: 0 38px;
@ -21,3 +20,86 @@
height: 100%; height: 100%;
width: calc(100% - 76px); width: calc(100% - 76px);
} }
#avue-id {
// .el-table {
// height: 776px;
// min-height: 776px;
// }
.el-table thead {
background: #fff;
height: 80px;
font-size: 16px;
}
.el-table th {
background: #fff;
font-weight: 600;
}
.el-table tr {
height: 80px;
color: #374454;
}
}
// 分页
.avue-crud__pagination {
text-align: left;
background: #F0F2F5;
}
// 自定义弹框样式只有父类包含 custom类才可使用
.custom {
width: 920px !important;
// 表单输入框
.avue-crud .el-input--small input,
.avue-form .el-input--small input {
height: 40px;
line-height: 40px;
border-radius: 0px;
padding-left: 16px;
border-color: #e4e7ec;
}
.el-input--small {
width: 240px!important;
}
.avue-form .el-date-editor.el-input {
width: 240px!important;
}
.avue-form,
.avue-form__group .el-col {
position: relative;
padding: 0 !important;
margin: 0;
}
// 下拉
.avue-select {
width: 240px !important;
}
// label
.el-form--label-top .el-form-item__label {
padding: 0;
margin-bottom: 5px;
}
// 时间选择器
.avue-crud .el-range-editor--small,
.avue-form .el-range-editor--small {
height: 40px;
line-height: 40px;
border-radius: 0px;
}
// 上下距离
.el-form-item--mini.el-form-item,
.el-form-item--small.el-form-item {
margin-bottom: 21px;
}
.el-col-8 {
width: 240px;
}
.el-col-8:nth-child(3n-1) {
margin: 0 45px;
}
.el-col-8:nth-child(3n+1) {
margin-left: 35px;
}
}

@ -0,0 +1,247 @@
<template>
<div class="cus-container">
<el-form :model="searchForm">
<div class="search">
<div>
<el-select
v-model="searchForm.taskParentId"
placeholder="任务父类"
class="search-select"
>
<el-option
v-for="item in conpanyList"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
<el-select
v-model="searchForm.taskTypeName"
placeholder="任务种类"
class="search-select"
>
<el-option
v-for="item in conpanyList"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
<el-select
v-model="searchForm.taskLevel"
placeholder="任务等级"
class="search-select"
>
<el-option
v-for="item in conpanyList"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
<el-date-picker
style="width: 180px"
v-model="searchForm.createTime"
type="datetime"
placeholder="创建日期"
format="yyyy-MM-dd HH:mm"
valueFormat="yyyy-MM-dd HH:mm:ss"
>
</el-date-picker>
</div>
<div style="display: flex">
<el-input
:rows="18"
v-model="searchForm.name"
placeholder="请输入创建人"
class="search-input"
></el-input>
<el-button class="search-btn" @click="searchHandle(1)"
>查询</el-button
>
<el-button
class="search-btn"
style="margin: 0; background: #2ee27c"
@click="addHandle"
>新增</el-button
>
<div class="search-reset" @click="searchHandle(2)">
<i class="el-icon-refresh-right" style="font-size: 20px"></i>
</div>
</div>
</div>
</el-form>
<div style="margin-top: 30px">
<avue-crud
id="avue-id"
ref="crud"
:option="option"
:data="tableData"
:page.sync="page"
:table-loading="loading"
@row-save="rowSave"
@row-update="rowUpdate"
@row-del="rowDel"
@current-change="currentChange"
@size-change="sizeChange"
>
<template slot-scope="scope" slot="menu">
<el-button type="primary" @click="editHandle(scope.row)"
>编辑
</el-button>
<el-button type="danger" @click="rowDel(scope.row)">删除 </el-button>
</template>
</avue-crud>
</div>
</div>
</template>
<script>
import { getList, add, update, remove } from "@/api/maintenance/task.js";
import { tableOption } from "@/const/maintenance/task.js";
export default {
data() {
return {
searchForm: {},
conpanyList: [{ label: "运维公司", value: 1 }],
option: tableOption,
page: {
current: 1,
total: 0,
size: 10,
},
//
tableData: [],
loading: false,
};
},
created() {
this.onLoad();
},
methods: {
//
onLoad() {
this.loading = true;
const { current, size } = this.page;
getList(Object.assign({ current, size })).then((res) => {
const { total, records } = res.data.data;
this.page.total = total;
this.tableData = records;
this.loading = false;
});
},
//
currentChange(currentPage) {
this.page.current = currentPage;
this.onLoad();
},
sizeChange(pageSize) {
this.page.size = pageSize;
this.onLoad();
},
//
searchHandle(index) {
if (index === 1) {
//
} else {
//
}
this.onLoad();
},
//
addHandle() {
this.$refs.crud.rowAdd();
},
editHandle(row) {
this.$refs.crud.rowEdit(row);
},
//
rowSave(row, done, loading) {
add(row).then(
(res) => {
const data = res.data.data;
row.id = data.id;
this.$message({ type: "success", message: "新增成功!" });
this.onLoad();
//
done(row);
},
(error) => {
window.console.log(error);
loading();
}
);
},
//
rowUpdate(row, index, done, loading) {
update(row).then(
() => {
this.onLoad(this.page);
this.$message({
type: "success",
message: "修改成功!",
});
done();
},
(error) => {
window.console.log(error);
loading();
}
);
},
//
rowDel(row) {
this.$confirm("此操作会删除该数据,且无法恢复,确定删除数据?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
remove(row.id).then((res) => {
//
console.log(res);
this.$message.success("删除成功!");
this.onLoad(this.page[0]);
});
})
.catch(() => {
// this.$message({ type: "info", message: "" });
});
},
},
};
</script>
<style lang="scss" scoped>
.search {
display: flex;
justify-content: space-between;
}
.search-select {
width: 150px;
margin-right: 20px;
}
.search-input {
width: 288px;
}
.search-btn {
width: 130px;
height: 46px !important;
background: #2e92f6;
color: #fff;
margin: 0 20px;
}
.search-reset {
width: 46px;
height: 46px !important;
background: #ff9130;
margin-left: 20px;
color: #fff;
text-align: center;
line-height: 46px;
}
/deep/ .el-input__inner {
height: 46px;
}
</style>

@ -64,20 +64,22 @@ export default {
action: '/api/blade-resource/oss/endpoint/put-file', action: '/api/blade-resource/oss/endpoint/put-file',
span: 24, span: 24,
display: true display: true
}, { },
label: '抄送人', // {
prop: '$copyUser', // label: '',
placeholder: '请选择 抄送人', // prop: '$copyUser',
readonly: true, // placeholder: ' ',
append: '+', // readonly: true,
span: 24, // append: '+',
event: { // span: 24,
click: () => { // event: {
this.$emit('user-select', { type: 'copy', checkType: 'checkbox' }) // click: () => {
} // this.$emit('user-select', { type: 'copy', checkType: 'checkbox' })
}, // }
display: true // },
}, { // display: true
// },
{
label: '指定审批人', label: '指定审批人',
prop: '$assignee', prop: '$assignee',
placeholder: '指定下一级审批人,如不选择则使用默认处理人,驳回时无效。多选时若下一节点为多实例并行则会进行动态加减签,若不是则只有第一个生效。', placeholder: '指定下一级审批人,如不选择则使用默认处理人,驳回时无效。多选时若下一节点为多实例并行则会进行动态加减签,若不是则只有第一个生效。',

@ -1,81 +1,124 @@
<template> <template>
<basic-container> <basic-container>
<avue-skeleton :loading="waiting" <avue-skeleton :loading="waiting" avatar :rows="8">
avatar <avue-title
:rows="8"> style="margin-bottom: 20px"
<avue-title style="margin-bottom: 20px; " :styles="{ fontSize: '20px' }"
:styles="{fontSize: '20px'}" :value="process.name"
:value="process.name"></avue-title> ></avue-title>
<el-card shadow="never" <el-card shadow="never" style="margin-top: 20px">
style="margin-top: 20px"> <avue-form
<avue-form v-if="option && ((option.column && option.column.length > 0) || (option.group && option.group.length > 0))" v-if="
v-model="form" option &&
ref="form" ((option.column && option.column.length > 0) ||
:option="option" (option.group && option.group.length > 0))
:defaults.sync="defaults" "
:upload-preview="handleUploadPreview"> v-model="form"
ref="form"
:option="option"
:defaults.sync="defaults"
:upload-preview="handleUploadPreview"
:upload-after="uploadAfter"
>
<template slot="uploadrecord">
<el-table
v-if="tableData.length > 0"
:data="tableData"
style="width: 100%"
>
<el-table-column prop="name" label="附件名称" width="180">
<template slot-scope="scope">
<span style="color: blue; cursor: pointer">{{
scope.row.name
}}</span>
</template>
</el-table-column>
<el-table-column prop="path" label="地址" width="180">
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<i class="el-icon-delete"></i>
</template>
</el-table-column>
</el-table>
<span v-else></span>
</template>
</avue-form> </avue-form>
</el-card> </el-card>
<el-card shadow="never" <el-card shadow="never" style="margin-top: 20px" v-if="showExamForm">
style="margin-top: 20px" <wf-examine-form
v-if="showExamForm"> ref="examineForm"
<wf-examine-form ref="examineForm" :process="process"
:process="process" @user-select="handleUserSelect"
@user-select="handleUserSelect"></wf-examine-form> ></wf-examine-form>
</el-card> </el-card>
<div style="height: 120px;"></div> <div style="height: 120px"></div>
<el-row class="foot-item avue-affix" <el-row
:style="{width: isCollapse? 'calc(100% - 80px)': 'calc(100% - 260px)' }" class="foot-item avue-affix"
id="avue-view"> :style="{
<el-button type="primary" width: isCollapse ? 'calc(100% - 80px)' : 'calc(100% - 260px)',
size="medium" }"
v-loading="loading" id="avue-view"
@click="handleStartProcess"> </el-button> >
<el-button v-if="permission.wf_process_draft" <el-button
type="success" type="primary"
size="medium" size="medium"
v-loading="loading" v-loading="loading"
@click="handleDraft(process.id, process.formKey, form)">存为草稿</el-button> @click="handleStartProcess"
> </el-button
>
<el-button
v-if="permission.wf_process_draft"
type="success"
size="medium"
v-loading="loading"
@click="handleDraft(process.id, process.formKey, form)"
>存为草稿</el-button
>
</el-row> </el-row>
</avue-skeleton> </avue-skeleton>
<!-- 人员选择弹窗 --> <!-- 人员选择弹窗 -->
<wf-user-select ref="user-select" <wf-user-select
:check-type="checkType" ref="user-select"
:default-checked="defaultChecked" :check-type="checkType"
@onConfirm="handleUserSelectConfirm"></wf-user-select> :default-checked="defaultChecked"
@onConfirm="handleUserSelectConfirm"
></wf-user-select>
</basic-container> </basic-container>
</template> </template>
<script> <script>
import WfExamineForm from './examForm.vue' import WfExamineForm from "./examForm.vue";
import WfUserSelect from './user-select' import WfUserSelect from "./user-select";
import exForm from '../../mixins/ex-form' import exForm from "../../mixins/ex-form";
import draft from '../../mixins/draft' import draft from "../../mixins/draft";
export default { export default {
components: { components: {
WfUserSelect, WfExamineForm WfUserSelect,
WfExamineForm,
}, },
mixins: [exForm, draft], mixins: [exForm, draft],
watch: { watch: {
'$route.params.params': { "$route.params.params": {
handler(val) { handler(val) {
if (val) { if (val) {
const param = JSON.parse(Buffer.from(val, 'base64').toString()) const param = JSON.parse(Buffer.from(val, "base64").toString());
const { processId, processDefKey } = param const { processId, processDefKey } = param;
if (processId || processDefKey) this.getForm(processId, processDefKey) if (processId || processDefKey)
this.getForm(processId, processDefKey);
} }
}, },
immediate: true immediate: true,
} },
}, },
computed: { computed: {
showExamForm() { showExamForm() {
const { hideComment, hideCopy, hideExamine } = this.process const { hideComment, hideCopy, hideExamine } = this.process;
return !hideComment || !hideCopy || !hideExamine return !hideComment || !hideCopy || !hideExamine;
} },
}, },
data() { data() {
return { return {
@ -83,57 +126,76 @@ export default {
form: {}, form: {},
option: {}, option: {},
process: {}, process: {},
loading: false loading: false,
} tableData: [],
};
}, },
methods: { methods: {
uploadAfter(file, column) {
this.tableData.push({
name: "文件流",
path: "/d:/sgh",
});
console.log(file);
console.log(column);
},
getForm(processId, processDefKey) { getForm(processId, processDefKey) {
let param let param;
let method let method;
if (processId) { if (processId) {
param = processId param = processId;
method = 'getStartForm' method = "getStartForm";
} else if (processDefKey) { } else if (processDefKey) {
param = processDefKey param = processDefKey;
method = 'getStartFormByProcessDefKey' method = "getStartFormByProcessDefKey";
} }
this[method](param).then(res => { this[method](param).then((res) => {
let { process, form, startForm } = res let { process, form, startForm } = res;
this.form.processId = process.id this.form.processId = process.id;
if (form) { if (form) {
const option = { ...eval('(' + form + ')'), menuBtn: false } const option = { ...eval("(" + form + ")"), menuBtn: false };
const { column, group } = option const { column, group } = option;
const groupArr = [] const groupArr = [];
const columnArr = this.filterAvueColumn(column, startForm).column const columnArr = this.filterAvueColumn(column, startForm).column;
if (group && group.length > 0) { // group if (group && group.length > 0) {
group.forEach(gro => { // group
gro.column = this.filterAvueColumn(gro.column, startForm).column group.forEach((gro) => {
if (gro.column.length > 0) groupArr.push(gro) gro.column = this.filterAvueColumn(gro.column, startForm).column;
}) if (gro.column.length > 0) groupArr.push(gro);
});
} }
option.column = columnArr option.column = columnArr;
option.group = groupArr option.group = groupArr;
this.option = option this.option = option;
console.log(this.option)
// this.findObject(this.option.column, 'yunweigongsi').disabled = true // this.findObject(this.option.column, 'yunweigongsi').disabled = true
//
// const gongshimingcheng = this.findObject(
// this.option.column,
// "gongshimingcheng"
// );
// if(gongshimingcheng.dicData.length === 1) {
// gongshimingcheng.disabled = true;
// gongshimingcheng.value = gongshimingcheng.dicData[0].dictKey;
// }
if (this.permission.wf_process_draft) { if (this.permission.wf_process_draft) {
// 稿 // 稿
this.initDraft(process.id).then(data => { this.initDraft(process.id).then((data) => {
this.$confirm('是否恢复之前保存的草稿?', '提示', { this.$confirm("是否恢复之前保存的草稿?", "提示", {})
}).then(() => { .then(() => {
this.form = JSON.parse(data) this.form = JSON.parse(data);
}).catch(() => { })
}) .catch(() => {});
}) });
} }
} }
this.waiting = false this.waiting = false;
}) });
}, },
} },
} };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -153,4 +215,11 @@ export default {
-webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
} }
</style> .aaa {
// .avue-crud .el-input--small input, .avue-form .el-input--small input {
// width: 420px;
// height: 50px;
// line-height: 50px;
// }
}
</style>

@ -22,10 +22,6 @@
@refresh-change="onLoad(page, query)"> @refresh-change="onLoad(page, query)">
<template #menuLeft <template #menuLeft
v-if="isDev"> v-if="isDev">
<el-tag type="warning"
effect="dark"
size="medium"><i class="el-icon-warning"></i> 部署的流程不显示请查看使用文档或到 模型设计 中配置权限
</el-tag>
</template> </template>
<template #menuRight> <template #menuRight>
<el-button size="mini" <el-button size="mini"
@ -94,24 +90,19 @@ export default {
searchMenuSpan: 6, searchMenuSpan: 6,
searchSize: 'mini', searchSize: 'mini',
column: [ column: [
{
label: "图标",
prop: "icon",
type: 'upload',
width: 80
},
{ {
label: "流程名称", label: "流程名称",
prop: "name", prop: "name",
overHidden: true, overHidden: true,
search: true search: true
}, },
{ // {
label: "流程标识", // label: "",
prop: "key", // prop: "key",
overHidden: true, // overHidden: true,
search: true // search: true
}, // },
{ {
label: "流程分类", label: "流程分类",
row: true, row: true,

@ -7,7 +7,6 @@
v-model="searchForm.company" v-model="searchForm.company"
placeholder="公司" placeholder="公司"
class="search-select" class="search-select"
> >
<el-option <el-option
v-for="item in conpanyList" v-for="item in conpanyList"
@ -57,32 +56,103 @@
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
<div style="display:flex;"> <div style="display: flex">
<el-input <el-input
:rows="18" :rows="18"
v-model="searchForm.name" v-model="searchForm.name"
placeholder="请输入" placeholder="请输入"
class="search-input" class="search-input"
></el-input> ></el-input>
<el-button class="search-btn">查询</el-button> <el-button class="search-btn" @click="searchHandle(1)"
<el-button class="search-btn" style="margin:0;background:#2EE27C;">导出</el-button> >查询</el-button
<div class="search-reset"> >
<i class="el-icon-refresh-right" style="font-size:20px;"></i> <el-button
</div> class="search-btn"
style="margin: 0; background: #2ee27c"
@click="exportHandle"
>导出</el-button
>
<div class="search-reset" @click="searchHandle(2)">
<i class="el-icon-refresh-right" style="font-size: 20px"></i>
</div>
</div> </div>
</div> </div>
</el-form> </el-form>
<div>1</div> <div style="margin-top:30px;">
<avue-crud
id="avue-id"
ref="crud"
:option="option"
:data="tableData"
:page.sync="page"
:table-loading="loading"
@current-change="currentChange"
@size-change="sizeChange"
>
<template slot-scope="scope" slot="menu">
<el-button @click="detailsHandle(scope.row)">查看详情 </el-button>
</template>
<!-- <template slot-scope="scope" slot="status">
</template> -->
</avue-crud>
</div>
</div> </div>
</template> </template>
<script> <script>
import { tableOption } from "@/const/workflow/workorder.js";
export default { export default {
data() { data() {
return { return {
searchForm: {}, searchForm: {},
conpanyList: [{ label: "运维公司", value: 1 }], conpanyList: [{ label: "运维公司", value: 1 }],
option: tableOption,
page: {
current: 1,
total: 0,
size: 10,
},
//
tableData: [],
loading: false,
}; };
}, },
created() {
this.onLoad();
},
methods: {
//
onLoad() {
// this.loading = true;
// const { current, size } = this.page;
// getList(Object.assign({ current, size })).then((res) => {
// const { total, records } = res.data.data;
// this.page.total = total;
// this.tableData = records;
// this.loading = false;
// });
},
//
currentChange(currentPage) {
this.page.current = currentPage;
this.onLoad();
},
sizeChange(pageSize) {
this.page.size = pageSize;
this.onLoad();
},
//
searchHandle(index) {
if(index === 1) {
//
}else {
//
}
this.onLoad()
},
//
exportHandle() {},
},
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -100,20 +170,20 @@ export default {
.search-btn { .search-btn {
width: 130px; width: 130px;
height: 46px !important; height: 46px !important;
background: #2E92F6; background: #2e92f6;
color:#fff; color: #fff;
margin: 0 20px; margin: 0 20px;
} }
.search-reset { .search-reset {
width: 46px; width: 46px;
height: 46px !important; height: 46px !important;
background: #FF9130; background: #ff9130;
margin-left:20px; margin-left: 20px;
color:#fff; color: #fff;
text-align: center; text-align: center;
line-height: 46px; line-height: 46px;
} }
/deep/ .el-input__inner{ /deep/ .el-input__inner {
height: 46px; height: 46px;
} }
</style> </style>

@ -308,12 +308,12 @@
slot: true, slot: true,
display: false display: false
}, },
{ // {
label: "用户平台", // label: "",
prop: "userTypeName", // prop: "userTypeName",
slot: true, // slot: true,
display: false // display: false
}, // },
{ {
label: "用户平台", label: "用户平台",
type: "select", type: "select",

Loading…
Cancel
Save