提交 008c2227 编写于 作者: huangwensu's avatar huangwensu

接口联调

上级 0b71e155
......@@ -6,7 +6,7 @@
<el-col :span="15">
<el-form-item label="">
<el-input
v-model="searchParam.menuCode"
v-model="searchParam.searchContent"
clearable
placeholder="请输入要查找的页面或事件编码或名称"
style="width:400px;margin-left: -74px;"
......@@ -14,23 +14,34 @@
</el-form-item>
</el-col>
<el-col :span="9" style="padding:0;text-align:right;padding-right:15px;">
<el-button type="primary" size="small" @click="createAndEditPage">新建页面</el-button>
<el-button type="primary" size="small" @click="createAndEditPage(1)">新建页面</el-button>
</el-col>
</el-row>
<el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">
<el-col :span="8">
<div class="time-container">
<el-form-item label="发布时间">
<el-date-picker
type="date"
placeholder="请选择发布时间"
v-model="searchParam.modifyDate"
style="width: 200px;"
value-format="yyyy-MM-dd"
placeholder="开始时间"
v-model="startTime"
style="width: 150px;"
value-format="yyyy-MM-dd 00:00:00"
@change="searchList(1)">
</el-date-picker>
<span>-</span>
<el-date-picker
type="date"
placeholder="结束时间"
v-model="endTime"
style="width: 150px;"
value-format="yyyy-MM-dd 23:59:59"
@change="searchList(1)">
</el-date-picker>
</el-form-item>
</div>
<el-form-item label="发布版本">
<el-select v-model="searchParam.version" clearable @change="searchList(1)" placeholder="请选择发布版本" style="width:200px">
<el-select v-model="searchParam.releaseVersion" clearable @change="searchList(1)" placeholder="请选择发布版本" style="width:290px">
<el-option
v-for="(eItem,eIndex) in versionSelect"
:key="eIndex"
......@@ -42,7 +53,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="所属模块">
<el-select v-model="searchParam.smallModule" clearable @change="searchList(1)" placeholder="请选择所属模块" style="width:200px">
<el-select v-model="searchParam.moduleId2" clearable @change="searchList(1)" placeholder="请选择所属模块" style="width:200px">
<el-option
v-for="(eItem,eIndex) in moduleSelect"
:key="eIndex"
......@@ -52,7 +63,7 @@
</el-select>
</el-form-item>
<el-form-item label="当前处理人">
<el-select v-model="searchParam.member" clearable @change="searchList(1)" placeholder="请选择当前处理人" style="width:200px">
<el-select v-model="searchParam.handlerId" clearable @change="searchList(1)" placeholder="请选择当前处理人" style="width:200px">
<el-option
v-for="(eItem,eIndex) in memberSelect"
:key="eIndex"
......@@ -64,7 +75,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="实现方式">
<el-select v-model="searchParam.style" clearable @change="searchList(1)" placeholder="请选择实现方式" style="width:200px">
<el-select v-model="searchParam.implementMethodId" clearable @change="searchList(1)" placeholder="请选择实现方式" style="width:200px">
<el-option
v-for="(item,index) in styleSelect"
:key="index"
......@@ -86,7 +97,6 @@
</el-col>
</el-row>
</el-form>
<!-- 表格 -->
<el-table
class="search-table"
......@@ -94,25 +104,25 @@
style="width: 100%"
:empty-text="tableText"
@row-click="tableRowClick">
<el-table-column prop="menuCode" label="页面编码" min-width="100" align="left"></el-table-column>
<el-table-column prop="menuName" label="页面名" min-width="120" align="left"></el-table-column>
<el-table-column prop="stepEndName" label="实现方式" min-width="80" align="left"></el-table-column>
<el-table-column prop="menuCode" label="归属模块" min-width="100" align="left"></el-table-column>
<el-table-column prop="menuName" label="发布时间" min-width="100" align="left"></el-table-column>
<el-table-column prop="menuName" label="发布版本" min-width="80" align="left"></el-table-column>
<el-table-column prop="img" label="图例" min-width="120" align="left">
<el-table-column prop="pageCode" label="页面编码" min-width="100" align="left"></el-table-column>
<el-table-column prop="pageName" label="页面名" min-width="120" align="left"></el-table-column>
<el-table-column prop="implementMethod" label="实现方式" min-width="80" align="left"> </el-table-column>
<el-table-column prop="moduleName2" label="归属模块" min-width="100" align="left"></el-table-column>
<el-table-column prop="releaseTime" label="发布时间" min-width="100" align="left"></el-table-column>
<el-table-column prop="releaseVersion" label="发布版本" min-width="80" align="left"></el-table-column>
<el-table-column label="图例" min-width="120" align="left">
<template slot-scope="scope">
<img :src="scope.row.img" />
<img :src="scope.row.imageUrl" style="width: 100px;"/>
</template>
</el-table-column>
<el-table-column prop="menuName" label="处理人" min-width="100" align="left"></el-table-column>
<el-table-column prop="menuName" label="状态" min-width="80" align="left"></el-table-column>
<el-table-column prop="handlerNames" label="处理人" min-width="100" align="left"></el-table-column>
<el-table-column prop="statusDesc" label="状态" min-width="80" align="left"></el-table-column>
<el-table-column label="操作" fixed="right" align="center" min-width="200">
<template slot-scope="scope">
<el-button type="primary" size="small" @click.stop="createAndEditPage(scope.row)">编辑</el-button>
<el-button type="primary" size="small" @click.stop="downPage(scope.row)">下线</el-button>
<el-button type="primary" size="small" @click.stop="createPoing(scope.row)">新建埋点</el-button>
<el-button type="primary" size="small" @click.stop="assignDialog(scope.row)">指派</el-button>
<el-button :disabled="scope.row.editBtnStatus == 2" type="primary" size="small" @click.stop="createAndEditPage(scope.row)">编辑</el-button>
<el-button :disabled="scope.row.offLineBtnStatus == 2" type="primary" size="small" @click.stop="downPage(scope.row)">下线</el-button>
<el-button :disabled="scope.row.createActionBtnStatus == 2" type="primary" size="small" @click.stop="createPoing(scope.row)">新建埋点</el-button>
<el-button :disabled="scope.row.assignBtnStatus == 2" type="primary" size="small" @click.stop="assignDialog(scope.row)">指派</el-button>
</template>
</el-table-column>
</el-table>
......@@ -129,9 +139,9 @@
:total="totalRows">
</el-pagination>
</div>
<!-- 新建页面 -->
<!-- 新建页面页面 -->
<el-dialog
title="新建/编辑 页面"
:title="pageTitle"
:visible.sync="creatPageVisible"
width="30%">
<el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">
......@@ -143,52 +153,51 @@
:rules="pageRules"
size="mini">
<el-col :span="20">
<el-form-item label="页面名" prop="menuCode">
<el-input v-model="pageForm.menuCode" placeholder="请输入页面名" style="width:200px"></el-input>
<el-form-item label="页面名" prop="name">
<el-input v-model="pageForm.name" placeholder="请输入页面名" style="width:200px"></el-input>
</el-form-item>
<el-form-item label="归属模块" prop="bigModule">
<el-select v-model="pageForm.bigModule" clearable placeholder="请选择归属模块" style="width:200px">
<el-form-item label="归属模块" prop="moduleId">
<el-select v-model="pageForm.moduleId" clearable placeholder="请选择归属模块" style="width:200px">
<el-option
v-for="(eItem,eIndex) in bigModuleSelect"
v-for="(eItem,eIndex) in moduleSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
:label="eItem.name"
:value="eItem.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="实现方式" prop="style">
<el-select v-model="pageForm.style" clearable placeholder="请选择实现方式" style="width:200px">
<el-form-item label="实现方式" prop="implementMethodId">
<el-select v-model="pageForm.implementMethodId" clearable placeholder="请选择实现方式" style="width:200px">
<el-option
v-for="(eItem,eIndex) in styleSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
:label="eItem.name"
:value="eItem.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="上传图例" prop="location">
<el-form-item label="上传图例" prop="imageUrl">
<el-upload
v-model="pageForm.location"
v-model="pageForm.imageUrl"
class="avatar-uploader"
action="#"
:show-file-list="false"
:before-upload="beforeAvatarUpload">
<img v-if="!imageUrl" class="bg-img" src="../../../static/img/default.png">
<img v-if="imageUrl" class="bg-img" :src="imageUrl">
<img v-if="!pageForm.imageUrl" class="bg-img" src="../../../static/img/default.png">
<img v-if="pageForm.imageUrl" class="bg-img" :src="pageForm.imageUrl">
</el-upload>
</el-form-item>
<el-form-item label="发布时间" prop="smallModule">
<el-select v-model="pageForm.smallModule" clearable placeholder="请选择发布时间" style="width:200px">
<el-option
v-for="(eItem,eIndex) in moduleSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
</el-option>
</el-select>
<el-form-item label="发布时间" prop="releaseTime">
<el-date-picker
type="date"
placeholder="请选择发布时间"
v-model="pageForm.releaseTime"
style="width: 200px;"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="发布版本" prop="smallModule">
<el-select v-model="pageForm.smallModule" clearable placeholder="请选择发布版本" style="width:200px">
<el-form-item label="发布版本" prop="releaseVersion">
<el-select v-model="pageForm.releaseVersion" clearable placeholder="请选择发布版本" style="width:200px">
<el-option
v-for="(eItem,eIndex) in versionSelect"
:key="eIndex"
......@@ -205,7 +214,7 @@
<el-button type="primary" @click="saveCreatePageMenu">确 定</el-button>
</span>
</el-dialog>
<!-- 新建(编辑)menu -->
<!-- 新建(编辑)埋点 -->
<el-dialog
title="新建(编辑)menu"
:visible.sync="dialogVisible"
......@@ -229,7 +238,7 @@
<el-input v-model="form.menuName" placeholder="请输入事件名" style="width:200px"></el-input>
</el-form-item>
<el-form-item label="事件类型" prop="style">
<el-select v-model="form.style" clearable placeholder="请选择实现方式" style="width:200px">
<el-select v-model="form.style" clearable placeholder="请选择事件类型" style="width:200px">
<el-option
v-for="(eItem,eIndex) in styleSelect"
:key="eIndex"
......@@ -239,9 +248,9 @@
</el-select>
</el-form-item>
<el-form-item label="发布版本" prop="bigModule">
<el-select v-model="form.bigModule" clearable placeholder="请选择模块大类" style="width:200px">
<el-select v-model="form.bigModule" clearable placeholder="请选择发布版本" style="width:200px">
<el-option
v-for="(eItem,eIndex) in bigModuleSelect"
v-for="(eItem,eIndex) in versionSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
......@@ -250,19 +259,19 @@
</el-form-item>
<el-form-item label="上传图例" prop="location">
<el-upload
v-model="form.location"
v-model="form.imageUrl"
class="avatar-uploader"
action="#"
:show-file-list="false"
:before-upload="beforeAvatarUpload">
<img v-if="!imageUrl" class="bg-img" src="../../../static/img/default.png">
<img v-if="imageUrl" class="bg-img" :src="imageUrl">
<img v-if="!form.imageUrl" class="bg-img" src="../../../static/img/default.png">
<img v-if="form.imageUrl" class="bg-img" :src="form.imageUrl">
</el-upload>
</el-form-item>
<el-form-item label="额外投递1" prop="bigModule">
<el-select v-model="form.bigModule" clearable placeholder="请选择额外投递1" style="width:200px">
<el-option
v-for="(eItem,eIndex) in bigModuleSelect"
v-for="(eItem,eIndex) in actionSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
......@@ -308,22 +317,21 @@
<el-form-item label="下线版本" prop="bigModule">
<el-select v-model="form.bigModule" clearable placeholder="请选择下线版本" style="width:200px">
<el-option
v-for="(eItem,eIndex) in bigModuleSelect"
v-for="(eItem,eIndex) in versionSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="下线时间" prop="bigModule">
<el-select v-model="form.bigModule" clearable placeholder="请选择下线时间" style="width:200px">
<el-option
v-for="(eItem,eIndex) in bigModuleSelect"
:key="eIndex"
:label="eItem"
:value="eItem">
</el-option>
</el-select>
<el-form-item label="下线时间" prop="time">
<el-date-picker
type="date"
placeholder="请选择下线时间"
v-model="searchParam.time"
style="width: 140px;"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
</el-form>
......@@ -339,15 +347,15 @@
:visible.sync="assignVisible"
width="30%">
<el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">
<el-form ref="changeForm"
:model="form"
<el-form ref="assignForm"
:model="assignForm"
label-width="150px"
label-suffix=":"
label-position="right"
size="mini">
<el-col :span="20">
<el-form-item label="状态流转" prop="changeStatus">
<el-select v-model="form.changeStatus" placeholder="请选择状态流转" style="width:200px">
<el-form-item label="任务状态" prop="changeStatus">
<el-select v-model="assignForm.changeStatus" placeholder="请选择任务状态" style="width:200px">
<el-option
v-for="(eItem,eIndex) in statusSelect"
:key="eIndex"
......@@ -356,8 +364,8 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="人员流转" prop="member">
<el-select v-model="form.member" placeholder="请选择人员流转" style="width:200px">
<el-form-item label="指派人" prop="member">
<el-select v-model="assignForm.member" placeholder="请选择指派人" style="width:200px">
<el-option
v-for="(eItem,eIndex) in memberSelect"
:key="eIndex"
......@@ -378,40 +386,43 @@
</template>
<script>
import { doUpload, getFilePath } from "../../common/qiniuUtil";
import { isEmptyUtils, openLoading, closeLoading,messageBox } from '../../common/utils';
import { isEmptyUtils, openLoading, closeLoading } from '../../common/utils';
export default {
data() {
return {
startTime: '',
endTime: '',
rowId: 0,
pageTitle: '新建页面',
labelPosition: 'right',
dialogVisible: false,
creatPageVisible: false,
downPageVisible: false,
assignVisible: false,
searchParam: {
menuCode: '',
actionCode: '',
modifyDate: '',
style: '',
bigModule: '',
smallModule: '',
member: '',
version: '',
searchContent: '',
handlerId: '',
moduleId2: '',
implementMethodId: '',
releaseTimeStart: 0,
releaseTimeEnd: 0,
releaseVersion: '',
status: '',
pageNo: 1,
pageSize: 15
},
moduleSelect: [],
styleSelect: [],
bigModuleSelect: [],
memberSelect: [],
statusSelect: [],
versionSelect: [],
actionSelect: [],
tableData: [{
'menuCode': '001'
}],
totalRows: 0,
tableText: '无匹配结果',
form: {
form: { // 新建埋点页面
menuCode: '',
menuName: '',
style: '',
......@@ -419,10 +430,18 @@ export default {
smallModule: '',
location: ''
},
pageForm: {
pageForm: { // 新建(编辑)页面
imageUrl: '',
implementMethodId: '',
moduleId: '',
name: '',
releaseTime: 0,
releaseVersion: ''
},
assignForm: { // 任务指派
},
imageUrl: '',
imgUrl: '',
rules: {
menuCode: [
{ required: true, message: '请输入menu_code', trigger: 'blur' },
......@@ -445,7 +464,24 @@ export default {
]
},
pageRules: {
name: [
{ required: true, message: '请输入页面名称', trigger: 'blur' }
],
implementMethodId: [
{ required: true, message: '请选择实现方式', trigger: 'change' }
],
moduleId: [
{ required: true, message: '请选择模块归类', trigger: 'change' }
],
releaseTime: [
{ required: true, message: '请选择发布时间', trigger: 'change' }
],
imageUrl: [
{ required: true, message: '请上传图片', trigger: 'change' }
],
releaseVersion: [
{ required: true, message: '请选择发布版本', trigger: 'change' }
]
},
downRules: {
......@@ -458,6 +494,7 @@ export default {
this.getCurrentData();
this.getStyleList();
this.getModuleList();
this.searchList();
},
methods: {
// 封装一下请求通用的方法
......@@ -495,7 +532,7 @@ export default {
// 获取当前处理人
getCurrentData() {
this.getData(
"get", `/basic-data/bi/constants/userList`, {},
"get", `/basic-data/bi/constants/userList/page`, {},
res => {
this.memberSelect = res.data;
}
......@@ -510,7 +547,7 @@ export default {
}
);
},
// 获取属模块
// 获取属模块
getModuleList() {
this.getData(
"get", `/basic-data/bi/constants/moduleList`, {},
......@@ -527,25 +564,57 @@ export default {
// 搜索
searchList(param) {
if(param) this.searchParam.pageNo = 1;
this.searchParam.releaseTimeStart = new Date(this.startTime).getTime();
this.searchParam.releaseTimeEnd = new Date(this.endTime).getTime();
let req = this.searchParam;
this.getData(
"get", `/session/funnel/list?searchName=${this.searchParam.searchName}&pageNo=${this.searchParam.pageNo}&pageSize=${this.searchParam.pageSize}`, {},
"post", `/basic-data/bi/page/search`, req,
res => {
this.tableData = res.data.data;
this.totalRows = res.data.totalRows;
this.tableData = res.data.contentList;
this.totalRows = res.data.total;
if(this.tableData.length == 0) {
this.tableText = param ? "暂无数据" : '暂无匹配的结果';
}
}
);
},
// 新建编辑页面
createAndEditPage() {
// 新建(编辑)页面
createAndEditPage(row) {
if(row == 1) {
this.pageTitle = "新建页面";
if(this.$refs.creatPageForm) {
this.$refs.creatPageForm.resetFields();
}
}else {
this.pageTitle = "编辑页面";
this.rowId = row.pageId;
}
this.creatPageVisible = true;
},
// 保存新建编辑页面
saveCreatePageMenu() {
let url, req;
this.$refs.creatPageForm.validate((valid) => {
if(valid) {
if(this.pageTitle == '新建页面') {
url = "/basic-data/bi/page/create";
}else {
url = "/basic-data/bi/page/save";
this.pageForm.id = this.rowId;
}
req = JSON.parse(JSON.stringify(this.pageForm));
console.log("============",req)
req.releaseTime = new Date(req.releaseTime).getTime();
this.getData(
"post", url, req,
res => {
this.$message.success("新建页面成功");
this.creatPageVisible = false;
}
);
}
})
},
// 下线页面
downPage(row) {
......@@ -555,7 +624,7 @@ export default {
updateConfim() {
},
// 新建页面埋点
// 新建埋点埋点
createPoing(row) {
this.dialogVisible = true;
if(this.$refs.menuForm) {
......@@ -586,8 +655,7 @@ export default {
}
_this.$message.info('开始上传');
doUpload(_this, file, getFilePath(file,null), 'preview4', 'progress1', 1).then(function (path) {
_this.imageUrl = path.fullPath;
_this.form.location = path.fullPath
_this.pageForm.imageUrl = path.fullPath;
_this.$message.success('上传成功');
});
return false;
......@@ -608,22 +676,25 @@ export default {
.title {
margin-bottom: 30px;
}
.tui-image-editor-container {
width: 900px;
height: 900px;
.tui-image-editor-submenu {
width: 300px;
height: 130px;
white-space: normal !important;
}
.tui-image-editor-controls-buttons > div, .tui-image-editor-controls-logo{
display: none !important;
}
.tui-image-editor-button ul li input {
width: 18px;
height: 18px;
}
.time-container .el-form-item{
display: inline-block;
}
// .tui-image-editor-container {
// width: 900px;
// height: 900px;
// .tui-image-editor-submenu {
// width: 300px;
// height: 130px;
// white-space: normal !important;
// }
// .tui-image-editor-controls-buttons > div, .tui-image-editor-controls-logo{
// display: none !important;
// }
// .tui-image-editor-button ul li input {
// width: 18px;
// height: 18px;
// }
// }
}
</style>
\ No newline at end of file
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册