feildconfig
<template>
<div style="float:left;width: 100%">
<el-row>
<el-col :span=6>
<el-input size = "small" v-model="apiId" placeholder="接口名" autocomplete="off" clearable @keyup.enter="query"></el-input>
</el-col>
<el-col :span=4>
<el-button size = "small" icon="el-icon-search" @click="query">查询</el-button>
<el-button size = "small" type="primary" icon="el-icon-plus" :disabled = "!$root.writeFlag" @click="add">增加</el-button>
</el-col>
</el-row>
</div>
<div >
<el-table :data="tableData.filter(data => !search || data.apiId.toLowerCase().includes(search.toLowerCase()))"
stripe
height="700"
style="width: 100%">
<el-table-column label="序号" fixed width="60">
<template #default="scope">
{{paginationData.pageSize * (paginationData.currentPage - 1) + scope.$index+1}}
</template>
</el-table-column>
<el-table-column label="copybook" prop="copybook"></el-table-column>
<el-table-column label="fieldNo" prop="fieldNo"></el-table-column>
<el-table-column label="cobolName" prop="cobolName"></el-table-column>
<el-table-column label="schema" prop="schema"></el-table-column>
<el-table-column label="tableName" prop="tableName"></el-table-column>
<el-table-column label="columnName" prop="columnName"></el-table-column>
<el-table-column label="columnName" prop="pic"></el-table-column>
<el-table-column label="scale" prop="scale"></el-table-column>
<el-table-column label="signed" prop="signed"></el-table-column>
<el-table-column label="parent" prop="parent"></el-table-column>
<el-table-column label="redefine" prop="redefine"></el-table-column>
<el-table-column label="offset" prop="offset"></el-table-column>
<el-table-column label="length" prop="length"></el-table-column>
<el-table-column label="lengthDependOn" prop="lengthDependOn"></el-table-column>
<el-table-column label="filler" prop="filler"></el-table-column>
<el-table-column label="key" prop="key"></el-table-column>
<el-table-column label="displayName" prop="displayName"></el-table-column>
<el-table-column label="memo" prop="memo"></el-table-column>
<el-table-column label="picLength" prop="picLength"></el-table-column>
<el-table-column label="comp" prop="comp"></el-table-column>
<el-table-column align="right" width="100" fixed="right" >
<template #header>
<el-input v-model="search" size="mini" placeholder="API"></el-input>
</template>
<template #default="scope">
<el-button size="mini" @click="handleEdit(scope.$index, scope.row)" icon="el-icon-edit" :disabled="!$root.writeFlag"
>编辑</el-button>
<!-- <el-button size="mini" @click="handleCopy(scope.$index, scope.row)" icon="el-icon-plus" type="primary" :disabled="!$root.writeFlag"-->
<!-- >复制</el-button>-->
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<paging ref="paging" :pagination-data="paginationData"></paging>
</div>
<div>
<el-dialog title="配置信息" v-model = "show">
<el-form :model="form">
<el-form-item label="ABTable" :label-width="formLabelWidth">
<el-input v-model="form.ABTable" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="copybook" :label-width="formLabelWidth">
<el-input v-model="form.copybook" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="fieldNo" :label-width="formLabelWidth">
<el-input v-model="form.fieldNo" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="cobolName" :label-width="formLabelWidth">
<el-input v-model="form.cobolName" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="schema" :label-width="formLabelWidth">
<el-input v-model="form.schema" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="tableName" :label-width="formLabelWidth">
<el-input v-model="form.tableName" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="columnName" :label-width="formLabelWidth">
<el-input v-model="form.columnName" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="pic" :label-width="formLabelWidth">
<el-input v-model="form.pic" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="numeric" :label-width="formLabelWidth">
<el-input v-model="form.numeric" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="scale" :label-width="formLabelWidth">
<el-input v-model="form.scale" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="signed" :label-width="formLabelWidth">
<el-input v-model="form.signed" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="parent" :label-width="formLabelWidth">
<el-input v-model="form.parent" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="redefine" :label-width="formLabelWidth">
<el-input v-model="form.redefine" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="offset" :label-width="formLabelWidth">
<el-input v-model="form.offset" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="length" :label-width="formLabelWidth">
<el-input v-model="form.length" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="lengthDependOn" :label-width="formLabelWidth">
<el-input v-model="form.lengthDependOn" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="filler" :label-width="formLabelWidth">
<el-input v-model="form.filler" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="key" :label-width="formLabelWidth">
<el-input v-model="form.key" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="displayName" :label-width="formLabelWidth">
<el-input v-model="form.displayName" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="memo" :label-width="formLabelWidth">
<el-input v-model="form.memo" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="picLength" :label-width="formLabelWidth">
<el-input v-model="form.picLength" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="comp" :label-width="formLabelWidth">
<el-input v-model="form.comp" placeholder="" autocomplete="off" clearable :disabled="true"></el-input>
</el-form-item>
<el-form-item label="修改原因" :label-width="formLabelWidth">
<el-input v-model="reason" placeholder="请输入修改原因" autocomplete="off" clearable :disabled="insert"></el-input>
</el-form-item>
</el-form>
<div class="dialog-footer">
<el-button @click="show = false">取 消</el-button>
<el-button type="primary" @click="save">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import Paging from '../../components/Paging'
import { post } from '../../api/request'
import Cookies from 'js-cookies/src/cookies'
import { isEmpty } from '../../utils/commonUtil'
export default {
components: { Paging },
data () {
return {
formLabelWidth: '120px',
tableData: [
],
search: '',
apiId: '',
insert: true,
show: false,
paginationData: {
total: 0,
currentPage: 1,
pageSize: 30,
handleCurrentChange: val => {
this.paginationData.currentPage = val
this.query()
},
handleSizeChange: val => {
this.paginationData.pageSize = val
this.query()
}
},
old: {
},
reason: '',
form: {
ABTable: '',
copybook: '',
fieldNo: '',
cobolName: '',
schema: '',
tableName: '',
columnName: '',
pic: '',
numeric: '',
scale: '',
signed: '',
parent: '',
redefine: '',
offset: '',
length: '',
lengthDependOn: '',
filler: '',
key: '',
displayName: '',
memo: '',
picLength: '',
comp: '',
total: 0,
currentPage: 1,
pageSize: 30
}
}
},
mounted () {
this.$nextTick(() => {
this.query()
})
},
methods: {
preQuery () {
this.form.currentPage = this.paginationData.currentPage
this.form.total = this.paginationData.total
this.form.pageSize = this.paginationData.pageSize
},
query () {
this.preQuery()
console.log(this)
console.log(JSON.stringify(this))
debugger
post('/api/config/copybookFiled/query', this.form).then((reult) => {
this.tableData = reult.list
this.paginationData.total = reult.total
})
},
add () {
this.form = {
apiId: '',
url: '',
type: '0',
percentage: 0,
coxTps: 1000,
ctgTps: 50,
status: '1',
switchTail: ''
}
this.insert = true
this.show = true
},
// handleCopy (index, row) {
// this.form = {
// apiId: '',
// url: row.url.replaceAll(row.apiId, ''),
// type: row.type,
// percentage: row.percentage,
// coxTps: row.coxTps,
// ctgTps: row.ctgTps,
// status: row.status,
// switchTail: row.switchTail
// }
// this.insert = true
// this.show = true
// },
handleEdit (index, row) {
this.form = {
ABTable: row.ABTable,
copybook: row.copybook,
fieldNo: row.fieldNo,
cobolName: row.cobolName,
schema: row.schema,
tableName: row.tableName,
columnName: row.columnName,
pic: row.pic,
numeric: row.numeric,
scale: row.scale,
signed: row.signed,
parent: row.parent,
redefine: row.redefine,
offset: row.offset,
length: row.length,
lengthDependOn: row.lengthDependOn,
filler: row.filler,
key: row.key,
displayName: row.displayName,
memo: row.memo,
picLength: row.picLength,
comp: row.comp,
total: row.total,
currentPage: row.currentPage,
pageSize: row.pageSize
}
this.old = {
ABTable: row.ABTable,
copybook: row.copybook,
fieldNo: row.fieldNo,
cobolName: row.cobolName,
schema: row.schema,
tableName: row.tableName,
columnName: row.columnName,
pic: row.pic,
numeric: row.numeric,
scale: row.scale,
signed: row.signed,
parent: row.parent,
redefine: row.redefine,
offset: row.offset,
length: row.length,
lengthDependOn: row.lengthDependOn,
filler: row.filler,
key: row.key,
displayName: row.displayName,
memo: row.memo,
picLength: row.picLength,
comp: row.comp,
total: row.total,
currentPage: row.currentPage,
pageSize: row.pageSize
}
this.reason = ''
this.insert = false
this.show = true
},
save () {
if (this.insert) {
this.insert2Db()
} else {
this.update()
}
},
update () {
if (isEmpty(this.reason)) {
this.$message({ type: 'error', message: '请填写修改原因' })
return
}
this.$confirm('此操作将永久修改,是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const p = [this.form, this.old]
Cookies.setItem('reason', this.reason)
post('/api/config/api_configs/update', p).then((result) => {
if (result.code === '200') {
this.$message({ type: 'info', message: '修改成功' })
this.query()
} else {
this.$message({ type: 'error', message: '修改失败' })
}
Cookies.removeItem('reason')
})
}).catch(() => {
this.$message({ type: 'info', message: '已取消修改' })
Cookies.removeItem('reason')
})
this.show = false
},
insert2Db () {
if (this.checkInput(this.form)) {
post('/api/config/api_configs/add', this.form).then((result) => {
if (result.code === '200') {
this.$message({ type: 'info', message: '插入成功' })
this.query()
} else {
this.$message({ type: 'error', message: '插入失败' })
}
})
this.show = false
}
},
checkInput (form) {
if (isEmpty(form.apiId)) {
this.$message({ type: 'error', message: '请输入接口名!' })
return false
}
if (isEmpty(form.url)) {
this.$message({ type: 'error', message: '请输入接口URL!' })
return false
}
const url = form.url
if (url.indexOf('custinfo') === -1 && url.indexOf('cardinfo') === -1 && url.indexOf('accountinfo') === -1) {
this.$message({ type: 'error', message: '请输入正确的URL,如/custinfo/apiId、/cardinfo/apiId、/accountinfo/apiId!' })
return false
}
return true
}
}
} </script>
feildconfig的更多相关文章
- Redis:解决分布式高并发修改同一个Key的问题
本篇文章是通过watch(监控)+mutil(事务)实现应用于在分布式高并发处理等相关场景.下边先通过redis-cli.exe来测试多个线程修改时,遇到问题及解决问题. 高并发下修改同一个key遇到 ...
随机推荐
- [FAQ] GoLand 需要手动开启代码补全吗 ?
使用 go mod download 下载模块到本地缓存中,之后 GoLand 就会根据输入自动代码提示. Other:[FAQ] Goland 始终没有包代码的提示 Link:https://www ...
- 2019-9-2-C#-设计模式-责任链
title author date CreateTime categories C# 设计模式 责任链 lindexi 2019-09-02 12:57:37 +0800 2018-2-13 17:2 ...
- 万字长文总结与剖析C语言关键字 -- <<C语言深度解剖>>
C总结与剖析:关键字篇 -- <<C语言深度解剖>> 目录 C总结与剖析:关键字篇 -- <<C语言深度解剖>> 程序的本质:二进制文件 变量 1.变量 ...
- 【Python爬虫案例】用python爬1000条哔哩哔哩搜索结果
目录 一.爬取目标 二.讲解代码 三.同步讲解视频 四.完整源码 一.爬取目标 大家好,我是 @马哥python说 ,一名10年程序猿. 今天分享一期爬虫的案例,用python爬哔哩哔哩的搜索结果,也 ...
- Ryght 在 Hugging Face 专家助力下赋能医疗保健和生命科学之旅
本文是 Ryght 团队的客座博文. Ryght 是何方神圣? Ryght 的使命是构建一个专为医疗保健和生命科学领域量身定制的企业级生成式人工智能平台.最近,公司正式公开了 Ryght 预览版 平台 ...
- Mysql5.7 Linux编译安装教程
1.系统约定 安装文件下载目录:/data/software Mysql目录安装位置:/usr/local/mysql 数据库保存位置:/usr/local/mysql/data 日志保存位置:/tm ...
- LVS负载均衡(7)-- LVS+keepalived实现高可用
目录 1. LVS+keepalived实现高可用 1.1 实验环境说明 1.2 路由器配置 1.3 WEB服务器nginx配置 1.4 LVS+keepalived配置 1.4.1 keepaliv ...
- 4G EPS 中的小区搜索
目录 文章目录 目录 前文列表 小区搜索(Cell Search)流程 PSS(主同步信号)与 SSS(辅同步信号) DL-RS(下行参考信号) PBCH(物理广播信道) PDSCH(物理下行共享信道 ...
- 【题解】A18536.星光交错的律动
题目跳转 思路:这道题可能跟博弈论有一点关系,没有学习过博弈论做起来应该问题也不大.思考一个问题,先手必胜的前提是什么? 有关更多的内容可以前往:浅谈有向无环图 先手必胜的前提是,在任何一种局面下,先 ...
- C#简易商城收银系统v1.1简单工厂实现(2-2)
C#简易商城收银系统v1.1简单工厂实现(2-2) 当初: C#简易商城收银系统v1.0 现在: 用之前的工厂模式对商城收银系统v1.0进行升级 可以参考之前的 C#简易商城收银系统v1.0 随笔 ...