Commit 0dd85af0 authored by 王晓铜's avatar 王晓铜

接口信息

parents bf8d6c45 6d60141e
import request from '@/utils/holmesRequest' import request from '@/utils/holmesRequest'
// 项目模块相关接口
export function getProjectList(queryInfo) { export function getProjectList(queryInfo) {
return request({ return request({
url: '/auto/project/list', url: '/auto/project/list',
...@@ -28,11 +28,43 @@ export function delProject(queryInfo) { ...@@ -28,11 +28,43 @@ export function delProject(queryInfo) {
params: queryInfo params: queryInfo
}) })
} }
// 模块列表 // 模块列表相关接口
export function modulList(queryInfo) { export function getModulList(queryInfo) {
return request({ return request({
url: '/auto/module/list', url: '/auto/module/list',
method: 'get', method: 'get',
params: queryInfo params: queryInfo
}) })
} }
// 添加模块接口
export function addModul(data) {
return request({
url: '/auto/module/add',
method: 'post',
data
})
}
// 编辑模块接口
export function editModel(data) {
return request({
url: '/auto/module/modify',
method: 'post',
data
})
}
// 删除模块
export function delModel(queryInfo) {
return request({
url: '/auto/module/delete',
method: 'get',
params: queryInfo
})
}
// 获取接口列表
export function interfaceDetailList(queryInfo) {
return request({
url: '/auto/interface/list',
method: 'get',
params: queryInfo
})
}
import request from '@/utils/holmesRequest'
export function getProjectRobotList(queryInfo) {
return request({
url: '/jira/list/robot',
method: 'get',
params: queryInfo
})
}
export function addProjectRobot(data) {
return request({
url: '/jira/add/robot',
method: 'post',
data
})
}
export function modifyProjectRobot(data) {
return request({
url: '/jira/modify/robot',
method: 'post',
data
})
}
export function delProjectRobot(queryInfo) {
return request({
url: '/jira/delete/robot',
method: 'get',
params: queryInfo
})
}
...@@ -39,7 +39,8 @@ import { ...@@ -39,7 +39,8 @@ import {
TabPane, TabPane,
Switch, Switch,
RadioGroup, RadioGroup,
Radio Radio,
MessageBox
} from 'element-ui' } from 'element-ui'
Vue.config.productionTip = false Vue.config.productionTip = false
...@@ -49,6 +50,7 @@ Vue.prototype.$echarts = echarts ...@@ -49,6 +50,7 @@ Vue.prototype.$echarts = echarts
Vue.prototype.$message = Message Vue.prototype.$message = Message
Vue.prototype.$loading = Loading Vue.prototype.$loading = Loading
Vue.prototype.$messageBox = MessageBox
// axios.defaults.baseURL = 'https://qa-platform-pre.liangkebang.net' // axios.defaults.baseURL = 'https://qa-platform-pre.liangkebang.net'
// axios.defaults.baseURL = 'http://localhost:8082' // axios.defaults.baseURL = 'http://localhost:8082'
......
...@@ -17,6 +17,10 @@ import LoginWhiteList from '../views/effect/LoginWhiteList' ...@@ -17,6 +17,10 @@ import LoginWhiteList from '../views/effect/LoginWhiteList'
// 2021-040-09新添加 // 2021-040-09新添加
import ProjectList from '../views/auto/Project' import ProjectList from '../views/auto/Project'
import ModelList from '../views/auto/Model' import ModelList from '../views/auto/Model'
import InterfaceDetail from '../views/auto/InterfaceDetail'
import JiraNotify from '../views/jira/Notify'
import AddInterface from '../views/auto/AddInterface'
Vue.use(Router) Vue.use(Router)
const router = new Router({ const router = new Router({
mode: 'history', mode: 'history',
...@@ -99,9 +103,24 @@ const router = new Router({ ...@@ -99,9 +103,24 @@ const router = new Router({
path: '/auto/Model', path: '/auto/Model',
name: '模块管理', name: '模块管理',
component: ModelList component: ModelList
},
{
path: '/auto/InterfaceDetail',
name: '接口详情',
component: InterfaceDetail
},
{
path: '/auto/AddInterface',
name: '添加接口',
component: AddInterface
},
{
'path': '/effect/jira/notify',
component: JiraNotify
} }
] ]
} }
] ]
}) })
export default router export default router
<template>
<div>
<el-form ref="interfaceForm" :model="interfaceForm" >
<el-row>
<el-col :span="8">
<el-form-item label="接口名称:" >
<el-input v-model="interfaceForm.name"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="所属模块:">
<el-select v-model="interfaceForm.moduleName" placeholder="请选择模块">
<el-option v-for="item in modelList" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="请求方式:">
<el-select v-model="interfaceForm.method" placeholder="请选择模块">
<el-option v-for="item in optionMethod" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- <el-row>
<el-col :span="8">
<el-form-item label="请求路径:" style="float:left">
<el-input v-model="interfaceForm.url"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="参数类型:" class="col-style">
<el-select v-model="interfaceForm.reqType" placeholder="请选择参数类型">
<el-option v-for="item in optionReqType" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row> -->
</el-form>
</div>
</template>
<script>
import { getModulList } from '@/api/getAotoInterface'
export default {
data() {
return {
queryModuleInfo: {
pageNum: 1,
pageSize: 10
},
interfaceForm: {
name: '',
moduleName: '',
method: '',
url: '',
reqType: ''
},
modelList: [],
rules: {
name: [
{
required: true,
message: '接口名称不能为空!',
trigger: 'blur'
}
],
modelName: [
{
required: true,
message: '接口名称不能为空!',
trigger: 'blur'
}
],
method: [
{
required: true,
message: '接口名称不能为空!',
trigger: 'blur'
}
],
url: [
{
required: true,
message: '接口名称不能为空!',
trigger: 'blur'
}
],
reqType: [
{
required: true,
message: '接口名称不能为空!',
trigger: 'blur'
}
]
},
optionMethod: [
{
id: 'get',
name: 'get'
},
{
id: 'post',
name: 'post'
}
],
optionReqType: [
{
id: 'params',
name: 'params'
},
{
id: 'json',
name: 'json'
},
{
id: 'form',
name: 'form'
}
]
}
},
created() {
this.getModelList()
},
methods: {
// 模块列表
getModelList() {
getModulList(this.queryModuleInfo).then((resp) => {
this.modelList = resp.data.data.list
})
}
}
}
</script>
<style lang="less" scoped>
// .col-style {
// margin-left: 50px;
// float: left;
// }
// .col-new-style {
// margin-left: 20px;
// }
</style>
<template>
<div>
<el-card>
<div>
项目:
<el-select v-model="selectProjectId" placeholder="请选择项目" @change="selectChange">
<el-option v-for="item in projectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
模块:
<el-select v-model="interfaceDetailForm.moduleId" placeholder="请选择模块">
<el-option v-for="item in modelList" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
<el-input v-model="interfaceName" clearable placeholder="请输入接口名称" style="width: 300px;"></el-input>
<el-button type="primary" style="margin-left:20px" @click="queryData">查询</el-button>
<el-button type="primary" style="margin-left:20px" @click="addPage">新增</el-button>
</div>
<el-table :data="interfaceList" border style="width: 100%;margin-top:20px">
<el-table-column type='index' width="50px"></el-table-column>
<el-table-column prop="name" label="接口名称" width="200px"></el-table-column>
<el-table-column prop="moduleName" label="所属模块" width="200px"></el-table-column>
<el-table-column prop="url" label="接口路径" width="300px"></el-table-column>
<el-table-column prop="method" label="请求方式" width="100px"></el-table-column>
<el-table-column prop="paramType" label="参数类型" width="100px"></el-table-column>
<el-table-column prop="createTime" label="创建时间" width="200px"></el-table-column>
<el-table-column prop="updateTime" label="修改时间" width="200px"></el-table-column>
<el-table-column label="操作">
<slot slot-scope="scope">
<el-button type="success" @click="openEditDialog(scope.row)">编辑</el-button>
<el-button type="danger" @click="delModelFrom(scope.row)">删除</el-button>
</slot>
</el-table-column>
</el-table>
<el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="queryModuleInfo.pageNum" :page-size="queryModuleInfo.pageSize" layout="total, prev, pager, next"
:total="totalNum"></el-pagination>
</el-card>
</div>
</template>
<script>
import {
getModulList,
getProjectList,
interfaceDetailList
} from '@/api/getAotoInterface'
export default {
data() {
return {
queryModuleInfo: {
pageNum: 1,
pageSize: 10,
projectId: ''
},
totalNum: 0,
projectList: [],
modelList: [],
// 下来项目id
selectProjectId: '',
interfaceName: '',
interfaceList: [],
interfaceDetailForm: {}
}
},
created() {
this.getProjectList()
this.getInterfaceDetailList()
},
methods: {
// 项目列表
getProjectList() {
getProjectList(this.queryModuleInfo).then((resp) => {
this.projectList = resp.data.data.list
})
},
// 下来框选中改变事件
selectChange() {
this.queryModuleInfo.projectId = this.selectProjectId
getModulList(this.queryModuleInfo).then((resp) => {
this.modelList = resp.data.data.list
})
},
// 查询方法
queryData() {},
// 添加跳转页面
addPage() {
this.$router.push('AddInterface')
},
// 获取接口列表
getInterfaceDetailList() {
interfaceDetailList(this.queryModuleInfo).then((resp) => {
this.interfaceList = resp.data.data.list
})
},
handleSizeChange(newSize) {
this.queryModuleInfo.pageSize = newSize
this.getInterfaceDetailList()
},
handleCurrentChange(newPage) {
this.queryModuleInfo.pageNum = newPage
this.getInterfaceDetailList()
}
}
}
</script>
...@@ -4,30 +4,211 @@ ...@@ -4,30 +4,211 @@
<div class="filter"> <div class="filter">
<el-button type="primary" @click="DialogVisible = true">新增</el-button> <el-button type="primary" @click="DialogVisible = true">新增</el-button>
</div> </div>
<el-table :data="modelList" border style="width: 100%"> <el-table :data="modelList" border style="width: 100%;margin-top:20px">
<el-table-column prop="id" label="序号" width="80px"></el-table-column> <!-- <el-table-column prop="id" label="序号" width="80px"></el-table-column> -->
<el-table-column type='index' width="50px"></el-table-column>
<el-table-column prop="name" label="模块名称" width="200px"></el-table-column> <el-table-column prop="name" label="模块名称" width="200px"></el-table-column>
<el-table-column prop="description" label="所属项目" width="300px"></el-table-column> <el-table-column prop="projectName" label="所属项目" width="200px"></el-table-column>
<el-table-column prop="createTime" label="域名" width="200px"></el-table-column> <el-table-column prop="domain" label="域名" width="300px"></el-table-column>
<el-table-column prop="updateTime" label="描述" width="200px"></el-table-column> <el-table-column prop="description" label="描述" width="210px"></el-table-column>
<el-table-column prop="updateTime" label="创建时间" width="200px"></el-table-column> <el-table-column prop="createTime" label="创建时间" width="200px"></el-table-column>
<el-table-column prop="updateTime" label="修改时间" width="200px"></el-table-column> <el-table-column prop="updateTime" label="修改时间" width="200px"></el-table-column>
<el-table-column label="操作"> <el-table-column label="操作">
<slot slot-scope="scope"> <slot slot-scope="scope">
<el-button type="success" @click="openEditDialog(scope.row)">编辑</el-button> <el-button type="success" @click="openEditDialog(scope.row)">编辑</el-button>
<el-button type="danger" @click="delProjectFrom(scope.row)">删除</el-button> <el-button type="danger" @click="delModelFrom(scope.row)">删除</el-button>
</slot> </slot>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="queryModuleList.pageNum" :page-size="queryModuleList.pageSize" layout="total, prev, pager, next" <!-- 分页 -->
:total="totalNum"> <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="queryModuleInfo.pageNum" :page-size="queryModuleInfo.pageSize" layout="total, prev, pager, next"
</el-pagination> :total="totalNum"></el-pagination>
</el-card> </el-card>
<!-- 新增模块 -->
<el-dialog title="新增模块" :visible.sync="DialogVisible" width="30%">
<el-form ref="modelForm" :rules="rules" :model="modelForm" label-width="90px">
<el-form-item label="模块名称:" prop="name" style="width:400px">
<el-input v-model="modelForm.name"></el-input>
</el-form-item>
<el-form-item label="所属项目:" prop="projectName">
<el-select v-model="modelForm.projectId" placeholder="请选择项目" clearable style="width:310px">
<el-option v-for="item in projectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="模块描述:" prop="description" style="width:400px">
<el-input v-model="modelForm.description"></el-input>
</el-form-item>
<el-form-item label="域名:" prop="domain" style="width:400px">
<el-input v-model="modelForm.domain"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="DialogVisible = false">取 消</el-button>
<el-button type="primary" @click="addModelFrom">确 定</el-button>
</span>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import {
getModulList,
getProjectList,
addModul,
editModel,
delModel
} from '@/api/getAotoInterface'
export default { export default {
data() {
return {
queryModuleInfo: {
pageNum: 1,
pageSize: 10
},
totalNum: 0,
modelList: [],
projectList: [],
modelForm: {
name: '',
projectId: '',
description: '',
domain: ''
},
DialogVisible: false,
delModelParam: {
moduleId: ''
},
// 验证
rules: {
name: [
{
required: true,
message: '模块名称不能为空!',
trigger: 'blur'
}
],
projectName: [
{
required: true,
message: '模块名称不能为空!',
trigger: 'blur'
}
],
description: [
{
required: true,
message: '模块描述不能为空!',
trigger: 'blur'
}
],
domain: [
{
required: true,
message: '域名不能为空!',
trigger: 'blur'
}
]
}
}
},
created() {
this.getModelList()
this.getProjectList()
},
methods: {
// 获取模块列表
getModelList() {
getModulList(this.queryModuleInfo).then((resp) => {
this.modelList = resp.data.data.list
this.totalNum = resp.data.data.total
})
},
// 获取项目列表
getProjectList() {
getProjectList(this.queryModuleInfo).then((resp) => {
this.projectList = resp.data.data.list
})
},
// 分页展示
handleSizeChange(newSize) {
this.queryModuleInfo.pageSize = newSize
this.getModelList()
},
// 分页展示
handleCurrentChange(newPage) {
this.queryModuleInfo.pageNum = newPage
this.getModelList()
},
// 添加模块按钮
addModelFrom() {
if (this.modelForm.id) {
editModel(this.modelForm).then((resp) => {
if (resp.data.data === true) {
this.DialogVisible = false
this.$message.success('修改成功!')
this.getModelList()
} else {
this.$message.error(resp.data.msg)
}
})
} else {
// 添加模块
addModul(this.modelForm)
.then((resp) => {
console.log('保存信息', this.modelForm)
if (resp.data.data === true) {
this.DialogVisible = false
this.$message.success('新增成功!')
this.modelList.name = ''
this.modelList.projectName = ''
this.modelList.description = ''
this.modelList.domain = ''
this.getModelList()
} else {
this.$message.error(resp.data.msg)
}
})
.catch((error) => {
this.$message({ type: 'error', message: error })
})
}
},
// 编辑模块
openEditDialog(row) {
this.DialogVisible = true
this.modelForm = row
},
// 对话框方法
openMessage(message, confirmText, doit) {
this.$messageBox
.confirm(message, '确定', {
cancelButtonText: '取消',
confirmButtonText: confirmText,
type: 'warning'
})
.then(() => {
doit()
})
.catch(() => {})
},
// 删除模块
delModelFrom(row) {
this.delModelParam.moduleId = row.id
this.openMessage('您确定要删除吗?', '删除', () => {
delModel(this.delModelParam)
.then((resp) => {
if (resp.data.data === true) {
this.$message.success('删除成功!')
this.getModelList()
} else if (resp.data.data === false) {
this.$message.error(resp.data.msg)
}
})
.catch((error) => {
this.$message({ type: 'error', message: error })
})
})
}
}
} }
</script> </script>
...@@ -6,8 +6,9 @@ ...@@ -6,8 +6,9 @@
<el-button type="primary" icon="el-icon-search" @click="searchMockList">查询</el-button> --> <el-button type="primary" icon="el-icon-search" @click="searchMockList">查询</el-button> -->
<el-button type="primary" @click="DialogVisible = true">新增</el-button> <el-button type="primary" @click="DialogVisible = true">新增</el-button>
</div> </div>
<el-table :data="projectList" border style="width: 100%"> <el-table :data="projectList" border style="width: 100%;margin-top:20px">
<el-table-column prop="id" label="序号" width="80px"></el-table-column> <!-- <el-table-column prop="id" label="序号" width="80px"></el-table-column> -->
<el-table-column type='index' width="50px"></el-table-column>
<el-table-column prop="name" label="名称" width="200px"></el-table-column> <el-table-column prop="name" label="名称" width="200px"></el-table-column>
<el-table-column prop="description" label="描述" width="300px"></el-table-column> <el-table-column prop="description" label="描述" width="300px"></el-table-column>
<el-table-column prop="createTime" label="创建时间" width="200px"></el-table-column> <el-table-column prop="createTime" label="创建时间" width="200px"></el-table-column>
...@@ -19,7 +20,7 @@ ...@@ -19,7 +20,7 @@
</slot> </slot>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="queryModuleList.pageNum" :page-size="queryModuleList.pageSize" layout="total, prev, pager, next" <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="queryModuleInfo.pageNum" :page-size="queryModuleInfo.pageSize" layout="total, prev, pager, next"
:total="totalNum"> :total="totalNum">
</el-pagination> </el-pagination>
</el-card> </el-card>
...@@ -53,12 +54,7 @@ export default { ...@@ -53,12 +54,7 @@ export default {
return { return {
queryModuleInfo: { queryModuleInfo: {
pageNum: 1, pageNum: 1,
pageSize: 20 pageSize: 10
},
queryModuleList: {
pageNo: 1,
pageSize: 10,
modlue: ''
}, },
projectList: [], projectList: [],
totalNum: 0, totalNum: 0,
...@@ -109,7 +105,7 @@ export default { ...@@ -109,7 +105,7 @@ export default {
.then((resp) => { .then((resp) => {
if (resp.data.data === true) { if (resp.data.data === true) {
this.DialogVisible = false this.DialogVisible = false
this.$message.success('修改项目成功!') this.$message.success('修改成功!')
this.getProjectList() this.getProjectList()
} else if (resp.data.data === false) { } else if (resp.data.data === false) {
this.$message.error(resp.data.msg) this.$message.error(resp.data.msg)
...@@ -124,12 +120,14 @@ export default { ...@@ -124,12 +120,14 @@ export default {
.then((resp) => { .then((resp) => {
if (resp.data.data === true) { if (resp.data.data === true) {
this.DialogVisible = false this.DialogVisible = false
this.$message.success('新增项目成功!') this.$message.success('新增成功!')
this.projectForm.name = '' this.projectForm.name = ''
this.projectForm.description = '' this.projectForm.description = ''
this.getProjectList() this.getProjectList()
} else if (resp.data.data === false) { } else {
this.$message.error(resp.data.msg) this.$message.error(resp.data.msg)
this.projectForm.name = ''
this.projectForm.description = ''
} }
}) })
.catch((error) => { .catch((error) => {
...@@ -162,7 +160,7 @@ export default { ...@@ -162,7 +160,7 @@ export default {
delProject(this.delProjectParam) delProject(this.delProjectParam)
.then((resp) => { .then((resp) => {
if (resp.data.data === true) { if (resp.data.data === true) {
this.$message.success('删除项目成功!') this.$message.success('删除成功!')
this.getProjectList() this.getProjectList()
} else if (resp.data.data === false) { } else if (resp.data.data === false) {
this.$message.error(resp.data.msg) this.$message.error(resp.data.msg)
...@@ -175,12 +173,12 @@ export default { ...@@ -175,12 +173,12 @@ export default {
}, },
// 分页展示 // 分页展示
handleSizeChange(newSize) { handleSizeChange(newSize) {
this.queryModuleList.pageSize = newSize this.queryModuleInfo.pageSize = newSize
this.getProjectList() this.getProjectList()
}, },
// 分页展示 // 分页展示
handleCurrentChange(newPage) { handleCurrentChange(newPage) {
this.queryModuleList.pageNum = newPage this.queryModuleInfo.pageNum = newPage
this.getProjectList() this.getProjectList()
}, },
closeEditDialog() {} closeEditDialog() {}
......
<template>
<div>
<el-card>
<!-- 顶部搜索栏 -->
<div class="top">
<el-button type="primary" icon="el-icon-circle-plus-outline" @click="addDialogVisible = true">新增</el-button>
</div>
<el-table :data="dingRobotList" border style="width: 100%">
<!-- <el-table-column prop="id" label="编号" width="80px"></el-table-column> -->
<el-table-column type="index" label="序号" width="50px"></el-table-column>
<el-table-column prop="projectName" label="项目名" width="250px"></el-table-column>
<el-table-column prop="dingUrl" label="钉钉url"></el-table-column>
<el-table-column prop="creator" label="创建人" width="100px">
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="180px"></el-table-column>
<el-table-column label="操作" width="200px">
<slot slot-scope="scope">
<el-button type="primary" @click="openEditDialog(scope.row)">编辑</el-button>
<el-button type="danger" @click="delProjectRobot(scope.row.id)">删除</el-button>
</slot>
</el-table-column>
<!-- <el-table-column prop="updateTime" label="更新时间"></el-table-column> -->
</el-table>
</el-card>
<!-- 分页 -->
<el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="queryInfo.pageNum" :page-size="queryInfo.pageSize" layout="total, prev, pager, next" :total="totalNum"></el-pagination>
<!-- 新增对话框 -->
<el-dialog title="新增robot" :visible.sync="addDialogVisible" width="60%" @close="closeAddDialog">
<el-form ref="addRobotFormRef" :rules="formRules" :model="robotForm" label-width="150px">
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="robotForm.projectName" placeholder="请输入项目名称"></el-input>
</el-form-item>
<el-form-item label="钉钉通知地址" prop="dingUrl">
<el-input v-model="robotForm.dingUrl" placeholder="请输入钉钉通知地址" type="textarea"></el-input>
</el-form-item>
<el-form-item label="创建人">
<el-input v-model="robotForm.creator"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addDialogVisible = false">取 消</el-button>
<el-button type="primary" @click="addRobotProject">保 存</el-button>
</span>
</el-dialog>
<!-- 编辑对话框 -->
<el-dialog title="编辑" :visible.sync="editDialogVisible" width="60%" @close="closeEditDialog">
<el-form ref="editRobotFormRef" :rules="formRules" :model="editRobotForm" label-width="150px">
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="editRobotForm.projectName" placeholder="请输入项目名称"></el-input>
</el-form-item>
<el-form-item label="钉钉通知地址" prop="dingUrl">
<el-input v-model="editRobotForm.dingUrl" placeholder="请输入钉钉通知地址" type="textarea"></el-input>
</el-form-item>
<el-form-item label="创建人">
<el-input v-model="editRobotForm.creator"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editDialogVisible = false">取 消</el-button>
<el-button type="primary" @click="editRobotProject">保 存</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import {
getProjectRobotList,
addProjectRobot,
modifyProjectRobot,
delProjectRobot
} from '@/api/jira'
export default {
data() {
return {
dingRobotList: [],
queryInfo: {
pageNum: 1,
pageSize: 10
},
totalNum: 0,
addDialogVisible: false,
editDialogVisible: false,
robotForm: {
projectName: '',
dingUrl: '',
creator: ''
},
editRobotForm: {},
delRobotParams: {
projectRobotId: ''
},
formRules: {
projectName: [
{ required: true, message: '请输入项目名称', trigger: 'blur' }
],
dingUrl: [
{ required: true, message: '请输入钉钉机器人url', trigger: 'blur' }
]
}
}
},
methods: {
getProjectRobotList() {
getProjectRobotList(this.queryInfo).then((resp) => {
this.dingRobotList = resp.data.data.list
this.totalNum = resp.data.data.total
})
},
// 新增
addRobotProject() {
this.$refs.addRobotFormRef.validate((valid) => {
if (!valid) {
return false
} else {
addProjectRobot(this.robotForm).then((resp) => {
if (resp.data.data === true) {
this.addDialogVisible = false
this.getProjectRobotList()
return this.$message.success('新增成功!')
} else if (resp.data.data === false) {
return this.$message.error(resp.data.msg)
}
})
}
})
},
// 编辑
editRobotProject() {
this.$refs.editRobotFormRef.validate((valid) => {
if (!valid) {
return false
} else {
modifyProjectRobot(this.editRobotForm).then((resp) => {
if (resp.data.data === true) {
this.editDialogVisible = false
this.getProjectRobotList()
return this.$message.success('修改成功!')
} else if (resp.data.data === false) {
return this.$message.error(resp.data.msg)
}
})
}
})
},
// 删除
delProjectRobot(robotId) {
this.delRobotParams.projectRobotId = robotId
this.$messageBox
.confirm('此操作将永久删除, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
delProjectRobot(this.delRobotParams).then((resp) => {
if (resp.data.data === true) {
this.$message.success('删除成功!')
return this.getProjectRobotList()
} else if (resp.data.data === false) {
return this.$message.error(resp.data.msg)
}
})
})
.catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
handleSizeChange(newSize) {
this.queryInfo.pageSize = newSize
this.getProjectRobotList()
},
handleCurrentChange(newPage) {
this.queryInfo.pageNum = newPage
this.getProjectRobotList()
},
openEditDialog(projectRobot) {
this.editDialogVisible = true
this.editRobotForm = projectRobot
},
closeAddDialog() {
this.$refs.addRobotFormRef.resetFields()
},
closeEditDialog() {
this.$refs.editRobotFormRef.resetFields()
}
},
created() {
this.getProjectRobotList()
}
}
</script>
<style lang="less" scoped>
.el-input {
width: 300px;
margin-right: 20px;
}
.top {
margin-bottom: 20px;
}
</style>
...@@ -73,6 +73,7 @@ export default { ...@@ -73,6 +73,7 @@ export default {
}, },
created() { created() {
this.getNav() this.getNav()
this.activePath = window.sessionStorage.getItem('activePath')
} }
} }
</script> </script>
...@@ -90,7 +91,7 @@ export default { ...@@ -90,7 +91,7 @@ export default {
} }
> span { > span {
font-size: 22px; font-size: 22px;
color: #3F9EFF; color: #3f9eff;
margin-left: 15px; margin-left: 15px;
} }
} }
......
...@@ -79,6 +79,12 @@ ...@@ -79,6 +79,12 @@
"title": "登录白名单", "title": "登录白名单",
"icon": "el-icon-coffee", "icon": "el-icon-coffee",
"path": "/effect/whitelist" "path": "/effect/whitelist"
},
{
"id": 4,
"title": "jira-钉钉通知",
"icon": "el-icon-ice-tea",
"path": "/effect/jira/notify"
} }
] ]
}, },
...@@ -98,6 +104,12 @@ ...@@ -98,6 +104,12 @@
"title": "模块管理", "title": "模块管理",
"icon": "el-icon-wallet", "icon": "el-icon-wallet",
"path": "/auto/Model" "path": "/auto/Model"
},
{
"id": 3,
"title": "接口详情",
"icon": "el-icon-bank-card",
"path": "/auto/InterfaceDetail"
} }
] ]
} }
......
...@@ -94,7 +94,7 @@ ...@@ -94,7 +94,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="所属模块"> <el-form-item label="所属模块">
<el-select v-model="addMockForm.modlue" placeholder="模块" clearable> <el-select v-model="addMockForm.module" placeholder="模块" clearable>
<el-option v-for="item in moduleList" :key="item.id" :label="item.name" :value="item.id"> <el-option v-for="item in moduleList" :key="item.id" :label="item.name" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
...@@ -140,7 +140,7 @@ ...@@ -140,7 +140,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="所属模块"> <el-form-item label="所属模块">
<el-select v-model="editMockForm.modlue" placeholder="模块" clearable> <el-select v-model="editMockForm.module" placeholder="模块" clearable>
<el-option v-for="item in moduleList" :key="item.id" :label="item.name" :value="item.id"> <el-option v-for="item in moduleList" :key="item.id" :label="item.name" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
...@@ -179,7 +179,7 @@ export default { ...@@ -179,7 +179,7 @@ export default {
queryModuleList: { queryModuleList: {
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
modlue: '' module: ''
}, },
moduleList: [], moduleList: [],
selectModule: '', selectModule: '',
...@@ -197,7 +197,7 @@ export default { ...@@ -197,7 +197,7 @@ export default {
description: '', description: '',
success: '', success: '',
fail: '', fail: '',
flag: '', flag: 1,
type: 1, type: 1,
encrypt: 0, encrypt: 0,
module: '' module: ''
...@@ -230,7 +230,7 @@ export default { ...@@ -230,7 +230,7 @@ export default {
}, },
// 选中模块变化时 // 选中模块变化时
selectModuleChange() { selectModuleChange() {
this.queryModuleList.modlue = this.selectModule this.queryModuleList.module = this.selectModule
}, },
// 获取mock列表 // 获取mock列表
getMockList() { getMockList() {
...@@ -274,7 +274,7 @@ export default { ...@@ -274,7 +274,7 @@ export default {
this.editMockForm.flag = String(row.flag) this.editMockForm.flag = String(row.flag)
this.editMockForm.type = row.type this.editMockForm.type = row.type
this.editMockForm.encrypt = row.encrypt this.editMockForm.encrypt = row.encrypt
this.editMockForm.module = row.modlue this.editMockForm.module = row.module
}, },
// 修改mock // 修改mock
editMock() { editMock() {
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
<div class="filter"> <div class="filter">
手机号:<el-input 手机号:<el-input
v-model="queryInfo.phoneNo" v-model="queryInfo.phoneNo"
maxlength="11"
placeholder="请输入手机号" placeholder="请输入手机号"
></el-input> ></el-input>
<!-- 身份证号码:<el-input <!-- 身份证号码:<el-input
......
...@@ -9,18 +9,10 @@ ...@@ -9,18 +9,10 @@
<!-- 卡片区域 --> <!-- 卡片区域 -->
<el-card> <el-card>
<div> <div>
手机号:<el-input 手机号:<el-input v-model="genDataParams.phoneNo" placeholder="请输入手机号" maxlength="11"></el-input>
v-model="genDataParams.phoneNo"
placeholder="请输入手机号"
></el-input>
用户状态: 用户状态:
<el-select v-model="genDataParams.status" placeholder="请选择用户状态"> <el-select v-model="genDataParams.status" placeholder="请选择用户状态">
<el-option <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option> </el-option>
</el-select> </el-select>
<el-button type="primary" @click="genData">生成数据</el-button> <el-button type="primary" @click="genData">生成数据</el-button>
...@@ -78,7 +70,6 @@ export default { ...@@ -78,7 +70,6 @@ export default {
lock: true, lock: true,
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0,0,0,0.7)' background: 'rgba(0,0,0,0.7)'
} }
} }
}, },
...@@ -96,7 +87,11 @@ export default { ...@@ -96,7 +87,11 @@ export default {
} }
// 开户失败校验,尾号必须为9 // 开户失败校验,尾号必须为9
if (this.genDataParams.status === 4) { if (this.genDataParams.status === 4) {
if (this.genDataParams.phoneNo.charAt(this.genDataParams.phoneNo.length - 1) !== '9') { if (
this.genDataParams.phoneNo.charAt(
this.genDataParams.phoneNo.length - 1
) !== '9'
) {
return this.$message.error('开户失败对应手机尾号必须为9') return this.$message.error('开户失败对应手机尾号必须为9')
} }
} }
...@@ -107,12 +102,18 @@ export default { ...@@ -107,12 +102,18 @@ export default {
formData.set('channel', this.genDataParams.channel) formData.set('channel', this.genDataParams.channel)
formData.set('status', this.genDataParams.status) formData.set('status', this.genDataParams.status)
const tLoading = this.$loading.service(this.loadingOptions) const tLoading = this.$loading.service(this.loadingOptions)
genVccData(formData).then((resp) => { genVccData(formData)
.then((resp) => {
if (resp !== null) { if (resp !== null) {
tLoading.close() tLoading.close()
} }
this.tableData.push(resp.data.data) this.tableData.push(resp.data.data)
}) })
.catch((error) => {
console.log(error)
tLoading.close()
this.$$message.error('vcc或用户中心相关服务异常,请检查!')
})
} }
} }
} }
......
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