Commit bec5894a authored by 张冬's avatar 张冬

在线聊天优化和供应商成员和角色

parent 7dbfa459
...@@ -6618,6 +6618,11 @@ ...@@ -6618,6 +6618,11 @@
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
}, },
"iscroll": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/iscroll/-/iscroll-5.2.0.tgz",
"integrity": "sha1-1RMwcIi1slpPiTr0dIBEaEgYKcg="
},
"isexe": { "isexe": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
...@@ -6758,6 +6763,32 @@ ...@@ -6758,6 +6763,32 @@
"resolved": "https://registry.npmjs.org/jstoxml/-/jstoxml-0.2.4.tgz", "resolved": "https://registry.npmjs.org/jstoxml/-/jstoxml-0.2.4.tgz",
"integrity": "sha1-/z+2eFaIOgMpU8fOjOdIYhD0hEc=" "integrity": "sha1-/z+2eFaIOgMpU8fOjOdIYhD0hEc="
}, },
"jwchat": {
"version": "0.2.48",
"resolved": "https://registry.npmjs.org/jwchat/-/jwchat-0.2.48.tgz",
"integrity": "sha512-NZJ2KtFF70+gHbFKdqqufFRcrhQP++euMNxyAD17YJLXhHF3DFcNvUAW3sh1NmXwJpGDN8jDrslgCMXocRd1xg==",
"requires": {
"element-ui": "^2.13.1",
"iscroll": "^5.2.0",
"vue": "^2.6.11",
"wechat-emoji-parser": "^1.1.0"
},
"dependencies": {
"element-ui": {
"version": "2.13.2",
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.13.2.tgz",
"integrity": "sha512-r761DRPssMPKDiJZWFlG+4e4vr0cRG/atKr3Eqr8Xi0tQMNbtmYU1QXvFnKiFPFFGkgJ6zS6ASkG+sellcoHlQ==",
"requires": {
"async-validator": "~1.8.1",
"babel-helper-vue-jsx-merge-props": "^2.0.0",
"deepmerge": "^1.2.0",
"normalize-wheel": "^1.0.1",
"resize-observer-polyfill": "^1.5.0",
"throttle-debounce": "^1.0.1"
}
}
}
},
"killable": { "killable": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
...@@ -11574,6 +11605,11 @@ ...@@ -11574,6 +11605,11 @@
"integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==",
"dev": true "dev": true
}, },
"wechat-emoji-parser": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/wechat-emoji-parser/-/wechat-emoji-parser-1.1.1.tgz",
"integrity": "sha512-FOB3KIhyEYmYledm/gnyHitL+sq1SGvDPpUE1AYxougmcd1/ibGHld/J+GDC+8DtgxsmGpY5f30gTFX0zwtTJQ=="
},
"which": { "which": {
"version": "1.3.1", "version": "1.3.1",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
"axios": "^0.18.0", "axios": "^0.18.0",
"babel-polyfill": "^6.26.0", "babel-polyfill": "^6.26.0",
"element-ui": "^2.11.0", "element-ui": "^2.11.0",
"jwchat": "^0.2.48",
"mavon-editor": "^2.6.17", "mavon-editor": "^2.6.17",
"vue": "^2.6.10", "vue": "^2.6.10",
"vue-chat-scroll": "^1.4.0", "vue-chat-scroll": "^1.4.0",
......
...@@ -21,6 +21,10 @@ Vue.use(VueChatScroll) ...@@ -21,6 +21,10 @@ Vue.use(VueChatScroll)
// 按钮6S后可以点击 // 按钮6S后可以点击
import preventClick from '@utils/clickStatefrom' // 根据自己的路径 import preventClick from '@utils/clickStatefrom' // 根据自己的路径
Vue.use(preventClick) Vue.use(preventClick)
// 聊天
import Chat from 'jwchat';
// import 'jwchat/lib/JwChat.css';
Vue.use(Chat)
Vue.config.productionTip = false; Vue.config.productionTip = false;
Vue.use(VueI18n); Vue.use(VueI18n);
......
<template> <template>
<div> <div>
<div class="content"> <div class="content">
<upload @onsuccess="get"></upload> <JwChat :taleList="list" scrollType="norell" :config="config" @enter="bindEnter" v-model="inputMsg" :toolConfig="tool">
<div @click="up">上传</div> </JwChat>
<singleUpload :limit="1" tip="支持扩展名:.rar .zip .doc .docx .pdf .jpg..." @input="getfile"></singleUpload> <div @click="up">上传</div>
</div> <singleUpload :limit="1" tip="支持扩展名:.rar .zip .doc .docx .pdf .jpg..." @input="getfile"></singleUpload>
</div> </div>
</div>
</template> </template>
<script> <script>
import { autodeploy} from '@api/common/list' import {
import imgupload from '@components/Upload/imgUpload.vue' autodeploy
import upload from '@components/Upload/newUpload.vue' } from '@api/common/list'
import singleUpload from '@components/Upload/Upload.vue' import imgupload from '@components/Upload/imgUpload.vue'
export default { import upload from '@components/Upload/newUpload.vue'
components: { import singleUpload from '@components/Upload/Upload.vue'
upload, export default {
imgupload, components: {
singleUpload upload,
}, imgupload,
data() { singleUpload
return { },
} data() {
}, return {
methods: { inputMsg: '',
config: {
getfile(val){ historyConfig: {
console.log(val) tip: '查看更多'
}, }
async up() { },
try { list: [{
const { "date": "2020/04/25 21:19:07",
data, "text": {
code "text": "起床不"
} = await autodeploy() },
} catch (e) { "mine": false,
console.log(e) "name": "留恋人间不羡仙",
} "img": ""
} },
} {
"date": "2020/04/25 21:19:07",
"text": {
"text": "11"
},
"mine": false,
"name": "只盼流星不盼雨",
"img": ""
},
{
"date": "2020/04/25 21:19:07",
"text": {
"text": "111"
},
"mine": false,
"name": "只盼流星不盼雨",
"img": ""
},
{
"date": "2020/04/16 21:19:07",
"text": {
"text": "222"
},
"mine": true,
"name": "JwChat",
"img": ""
},
],
tool: {
show: [''],
callback: this.toolEvent,
showEmoji: true,
},
}
},
methods: {
bindEnter() {
const msg = this.inputMsg
if (!msg) return;
const msgObj = {
"date": "2020/05/20 23:19:07",
"text": {
"text": msg
},
"mine": true,
"name": "JwChat",
"img": ""
}
this.list.push(msgObj)
},
toolEvent(type) {
console.log('tools', type)
},
getfile(val) {
console.log(val)
},
async up() {
try {
const {
data,
code
} = await autodeploy()
} catch (e) {
console.log(e)
}
}
}
} }
</script> </script>
<style scoped> <style scoped>
...@@ -48,6 +48,10 @@ ...@@ -48,6 +48,10 @@
</div> </div>
<!-- 在线对话 --> <!-- 在线对话 -->
<div class="dialogue" style="margin-top: 30px;" v-show="dialogue"> <div class="dialogue" style="margin-top: 30px;" v-show="dialogue">
<JwChat :taleList="dialogueList" scrollType @enter="bindEnter" v-model="content" :toolConfig="tool" >
</JwChat>
</div>
<!--
<ul class="dialogueList" v-chat-scroll> <ul class="dialogueList" v-chat-scroll>
<li v-for="(item,index) in dialogueList" :key="index" :class="myId==item.userId?'flex-left':'flex-right'"> <li v-for="(item,index) in dialogueList" :key="index" :class="myId==item.userId?'flex-left':'flex-right'">
<div> <div>
...@@ -62,7 +66,7 @@ ...@@ -62,7 +66,7 @@
</ul> </ul>
<el-input placeholder="请输入内容" v-model="content" clearable @keyup.enter.native="send" maxlength="30"> <el-input placeholder="请输入内容" v-model="content" clearable @keyup.enter.native="send" maxlength="30">
</el-input> </el-input>
</div> </div> -->
</div> </div>
<!-- 最下面一栏 --> <!-- 最下面一栏 -->
<div class="flex-between buttons"> <div class="flex-between buttons">
...@@ -217,6 +221,11 @@ ...@@ -217,6 +221,11 @@
}, },
data() { data() {
return { return {
tool: {
show: [''],
callback: this.toolEvent,
showEmoji: true,
},
issueTable: false, issueTable: false,
openStatus: '', openStatus: '',
faildetail: "", faildetail: "",
...@@ -325,12 +334,12 @@ ...@@ -325,12 +334,12 @@
}, 5000); }, 5000);
}, },
methods: { methods: {
openInfo(){ openInfo() {
this.isopenInfo=true this.isopenInfo = true
this.getopenInfo(); this.getopenInfo();
}, },
openInfo1(){ openInfo1() {
this.isopenInfo1=true this.isopenInfo1 = true
this.getopenInfo(); this.getopenInfo();
}, },
// 下发 // 下发
...@@ -342,13 +351,13 @@ ...@@ -342,13 +351,13 @@
code code
} = await issueopenInfo(projectId) } = await issueopenInfo(projectId)
if (code == 200) { if (code == 200) {
this.getsigndetail() this.getsigndetail()
this.$message({ this.$message({
message: msg, message: msg,
type: 'success', type: 'success',
duration: 1500 duration: 1500
}) })
this.isopenInfo1=false this.isopenInfo1 = false
} }
} catch (e) { } catch (e) {
console.log(e) console.log(e)
...@@ -613,11 +622,21 @@ ...@@ -613,11 +622,21 @@
let data = JSON.parse(event.data); let data = JSON.parse(event.data);
console.log(data) console.log(data)
if (data.type == 1) { if (data.type == 1) {
console.log("自己发的") if(data.userId==this.myId){
if (data.userId == this.myId) { data.mine=true
this.content = "" }else{
} data.mine=false
this.dialogueList.push(data) }
const msgObj = {
"date":data.time ,
"text": {
"text": data.chatContent
},
"mine": data.mine,
"name": data.name,
"img": "@static/images/tou.jpg"
}
this.dialogueList.push(msgObj)
} else { } else {
this.halList.push(data) this.halList.push(data)
} }
...@@ -634,13 +653,10 @@ ...@@ -634,13 +653,10 @@
this.websocket.close() this.websocket.close()
} }
}, },
send() { bindEnter() {
let content = this.content; const content = this.content
if (content.split(" ").join("").length == 0) { if (!content) return;
this.$message.error("请输入内容") this.websocket.send(content)
} else {
this.websocket.send(content)
}
} }
}, },
// watch: { // watch: {
...@@ -679,6 +695,8 @@ ...@@ -679,6 +695,8 @@
position: absolute; position: absolute;
top: 10%; top: 10%;
right: 10%; right: 10%;
border:1px solid #CCCCCC;
padding:10px
} }
......
...@@ -292,16 +292,16 @@ export default { ...@@ -292,16 +292,16 @@ export default {
}, },
{ {
label: '联系人', label: '联系人',
prop: 'legalPersonName' prop: 'userName'
}, },
{ {
label: '手机号', label: '手机号',
prop: 'legalPersonPhone' prop: 'phonenumber'
}, },
{ {
label: '邮件', label: '邮件',
prop: 'legalPersonEmail' prop: 'email'
}, },
{ {
slot: 'operate' slot: 'operate'
...@@ -552,17 +552,18 @@ export default { ...@@ -552,17 +552,18 @@ export default {
}, },
// 邀请状态下选择供应商 // 邀请状态下选择供应商
choice(row) { choice(row) {
let indexof = false let list=[]
if (this.ruleForm.companyVOList.length > 0) { if (this.ruleForm.companyVOList.length > 0) {
for (let item of this.ruleForm.companyVOList) { for (let item of this.ruleForm.companyVOList) {
if (row.id === item.id) { list.push(item.companyId)
indexof = true
}
} }
if (!indexof) { let indexof=list.indexOf(row.companyId)
if (indexof==-1) {
this.ruleForm.companyVOList.push(row) this.ruleForm.companyVOList.push(row)
// this.tableData..push(row) // this.tableData..push(row)
} }else{
this.$message.error("请勿选择相同公司")
}
} else { } else {
this.ruleForm.companyVOList.push(row) this.ruleForm.companyVOList.push(row)
// this.tableData.push(row) // this.tableData.push(row)
......
...@@ -44,6 +44,10 @@ ...@@ -44,6 +44,10 @@
</div> </div>
<!-- 在线对话 --> <!-- 在线对话 -->
<div class="dialogue" style="margin-top: 30px;" v-show="dialogue"> <div class="dialogue" style="margin-top: 30px;" v-show="dialogue">
<JwChat :taleList="dialogueList" scrollType @enter="bindEnter" v-model="content" :toolConfig="tool" >
</JwChat>
</div>
<!-- <div class="dialogue" style="margin-top: 30px;" v-show="dialogue">
<ul class="dialogueList" v-chat-scroll> <ul class="dialogueList" v-chat-scroll>
<li v-for="(item,index) in dialogueList" :key="index" :class="myId==item.userId?'flex-left':'flex-right'"> <li v-for="(item,index) in dialogueList" :key="index" :class="myId==item.userId?'flex-left':'flex-right'">
<div> <div>
...@@ -58,7 +62,7 @@ ...@@ -58,7 +62,7 @@
</ul> </ul>
<el-input placeholder="请输入内容" v-model="content" clearable @keyup.enter.native="send" maxlength="30"> <el-input placeholder="请输入内容" v-model="content" clearable @keyup.enter.native="send" maxlength="30">
</el-input> </el-input>
</div> </div> -->
</div> </div>
<div class="flex-center buttons"> <div class="flex-center buttons">
<div> <div>
...@@ -121,6 +125,11 @@ ...@@ -121,6 +125,11 @@
}, },
data() { data() {
return { return {
tool: {
show: [''],
callback: this.toolEvent,
showEmoji: true,
},
issueTable:"", issueTable:"",
openStatus: "", openStatus: "",
isSignature: false, isSignature: false,
...@@ -283,11 +292,21 @@ ...@@ -283,11 +292,21 @@
let data = JSON.parse(event.data); let data = JSON.parse(event.data);
console.log(data) console.log(data)
if (data.type == 1) { if (data.type == 1) {
if(data.userId==this.myId){ if(data.userId==this.myId){
console.log("自己发的") data.mine=true
this.content = "" }else{
} data.mine=false
this.dialogueList.push(data) }
const msgObj = {
"date":data.time ,
"text": {
"text": data.chatContent
},
"mine": data.mine,
"name": data.name,
"img": "@static/images/tou.jpg"
}
this.dialogueList.push(msgObj)
} else { } else {
this.halList.push(data) this.halList.push(data)
} }
...@@ -304,13 +323,10 @@ ...@@ -304,13 +323,10 @@
this.websocket.close() this.websocket.close()
}) })
}, },
send() { bindEnter() {
let content = this.content; const content = this.content
if (content.split(" ").join("").length == 0) { if (!content) return;
this.$message.error("请输入内容") this.websocket.send(content)
} else {
this.websocket.send(content)
}
}, },
back() { back() {
this.$router.go(-1) this.$router.go(-1)
...@@ -462,6 +478,8 @@ ...@@ -462,6 +478,8 @@
position: absolute; position: absolute;
top: 10%; top: 10%;
right: 10%; right: 10%;
border:1px solid #CCCCCC;
padding:10px
} }
.dialogue>.dialogueList { .dialogue>.dialogueList {
......
...@@ -2,7 +2,8 @@ ...@@ -2,7 +2,8 @@
<div > <div >
<div class="content"> <div class="content">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<dataTable :table-data="tableData" :columns="columns" :is-pageobj="false" > <el-button type="primary" @click="add">创建新的角色</el-button>
<dataTable :table-data="tableData" :columns="columns" :is-pageobj="false" :tableTop="30">
<el-table-column slot="operate" label="操作" align="center" fixed="right" > <el-table-column slot="operate" label="操作" align="center" fixed="right" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" size="small" @click="see(scope.row)">查看</el-button> <el-button type="text" size="small" @click="see(scope.row)">查看</el-button>
...@@ -14,7 +15,8 @@ ...@@ -14,7 +15,8 @@
</template> </template>
<script> <script>
import dataTable from '@components/dataTable.vue' import {roleList} from '@api/purchaser/organization'
import dataTable from '@components/nopageTable.vue'
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import dataBreadcrumb from '@components/dataBreadcrumb.vue'
export default { export default {
components: { components: {
...@@ -24,20 +26,16 @@ export default { ...@@ -24,20 +26,16 @@ export default {
data() { data() {
return { return {
breads: ['系统管理', '角色权限'], breads: ['系统管理', '角色权限'],
tableData: [{ tableData: [],
name: '部长',
remark: 'XXXXX'
}],
columns: [{ columns: [{
label: '角色名称', label: '角色名称',
prop: 'name', prop: 'roleName',
width: 400 width: 400
}, },
{ {
label: '备注', label: '备注',
prop: 'remark', prop: 'remark',
width: 400 width: 400
}, },
{ {
slot: 'operate' slot: 'operate'
...@@ -58,7 +56,26 @@ export default { ...@@ -58,7 +56,26 @@ export default {
methods: { methods: {
see() { see() {
this.$router.push('/purchaser/organization/jurisdictionSee') this.$router.push('/purchaser/organization/jurisdictionSee')
} },
add(){
this.$router.push("/purchaser/organization/jurisdictionSee")
},
async getroleList() {
let type=JSON.parse(localStorage.getItem("userInfo")).type
const {
data,
code
} = await roleList(type)
for(let item of data){
if(!item.remark){
item.remark="空"
}
}
this.tableData=data
}
},
created() {
this.getroleList()
} }
} }
</script> </script>
......
<template> <template>
<div> <div>
<div class="content-head"> <div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb> <dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>新建角色</h3> <h3>新建角色</h3>
<h5>新建角色</h5> <h5>新建角色</h5>
</div> </div>
<div class="content"> <div class="content">
<div class="message"> <div class="message">
<div>角色名称:项目经理</div> <el-form :model="form" :rules="rules" ref="form" label-width="100px" class="demo-ruleForm">
<div>备注:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</div> <el-form-item label="角色名称" prop="roleName">
<div class="flex"> <el-input v-model="form.roleName"></el-input>
<div>权限</div> </el-form-item>
<el-tree :data="data" :props="defaultProps" show-checkbox node-key="id"> <el-form-item label="权限" prop="menuPOList">
</el-tree> <el-tree :data="data" :props="defaultProps" show-checkbox @check-change="handleCheckChange" node-key="id" ref="tree">
</div> </el-tree>
</div> </el-form-item>
</div> </el-form>
</div> </div>
</div>
<div class="centerButton">
<el-button @click="back">返回</el-button>
<el-button @click="add">添加</el-button>
</div>
</div>
</template> </template>
<script> <script>
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import {
export default { roleMenus,roleadd
components: { } from '@api/purchaser/organization'
dataBreadcrumb import dataBreadcrumb from '@components/dataBreadcrumb.vue'
}, export default {
data() { components: {
return { dataBreadcrumb
breads: ['系统管理', '权限管理'], },
data: [{ data() {
id: 1, let check = async (rule, value, callback) => {
label: '首页', console.log("1")
children: [{ console.log(this.form.menuPOList.length)
id: 4, if (this.form.menuPOList.length == 0) {
label: '招标管理', console.log("空")
children: [{ return callback(new Error('请选择权限'));
id: 9, } else {
label: '招标项目管理' callback();
}] }
}] };
}, { return {
id: 2, breads: ['系统管理', '权限管理'],
label: '平台交货管理', data: [],
children: [{ defaultProps: {
id: 5, children: 'children',
label: '平台交货列表' label: 'label'
}] },
}, { form: {
id: 3, roleName: "",
label: '供应商管理', menuPOList: []
children: [{ },
id: 7, rules: {
label: '供应商列表' roleName: [{
}, { required: true,
id: 8, message: '请填写',
label: '我的供应商' trigger: 'blur'
}] }],
}, { menuPOList: [{
id: 10, required: true,
label: '组织管理', validator: check,
children: [{ trigger: 'change'
id: 11, }],
label: '单位信息' }
}, { }
id: 12, },
label: '成员管理' methods: {
}, { back() {
id: 13, this.$router.go(-1)
label: '权限管理' },
}] async getroleMenus() {
}, { const {
id: 14, data,
label: '系统管理', code
children: [{ } = await roleMenus(1)
id: 15, this.data = data
label: '绑定CA' },
}, { handleCheckChange(data, checked, indeterminate) {
id: 16, console.log(data, checked, indeterminate);
label: '日志列表' },
}] handleCheckChange() {
}], this.form.menuPOList = this.$refs.tree.getCheckedKeys()
defaultProps: { },
children: 'children', async add() {
label: 'label' try {
} const valid = await this.$refs['form'].validate()
} if (valid) {
}, let form = this.form
methods: { const {
code,
} msg
} = await roleadd(form)
} if (code === 200) {
this.$message({
message: msg,
type: 'success',
duration: 1500
})
setTimeout(() => {
this.$router.go(-1)
}, 1500)
}else{
this.$message.error(msg)
}
}
} catch (e) {
console.log(e)
}
}
},
created() {
this.getroleMenus()
}
}
</script> </script>
...@@ -102,6 +129,6 @@ export default { ...@@ -102,6 +129,6 @@ export default {
} }
.message>div { .message>div {
margin-bottom: 30px; margin-bottom: 30px;
} }
</style> </style>
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
</template> </template>
<script> <script>
import dataTable from '@components/nopageTable.vue' import dataTable from '@components/dataTable.vue'
import dataBreadcrumb from '@components/dataBreadcrumb.vue' import dataBreadcrumb from '@components/dataBreadcrumb.vue'
export default { export default {
components: { components: {
......
<template> <template>
<div> <div>
<div class="content"> <div class="content">
<dataTable :table-data="tableData" :columns="columns" :page-obj="pageObj" :breads="breads" :checklist="checklist"> <dataTable :table-data="tableData" :columns="columns" :page-obj="pageObj" :breads="breads" :checklist="checklist"
<el-table-column slot="operate" label="操作" align="center" fixed="right" width="100"> url="log/logList">
<template slot-scope="scope"> <el-table-column slot="name" label="姓名" align="center" width="100">
<el-button type="text" size="small" @click="examine(scope.row)">审核</el-button> <template slot-scope="scope">
</template> <div>{{scope.row.name?scope.row.name:"无"}}</div>
</el-table-column> </template>
</dataTable> </el-table-column>
</div>
</div> <el-table-column slot="args" label="请求参数" align="center" width="100">
<template slot-scope="scope">
<div>{{scope.row.args?scope.row.args:"无"}}</div>
</template>
</el-table-column>
<el-table-column slot="operate" label="操作" align="center" fixed="right" width="100">
<template slot-scope="scope">
<el-button type="text" size="small" @click="examine(scope.row)">审核</el-button>
</template>
</el-table-column>
</dataTable>
</div>
</div>
</template> </template>
<script> <script>
import dataTable from '@components/dataTable.vue' import dataTable from '@components/dataTable.vue'
export default { export default {
name: 'bidingList', name: 'bidingList',
components: { components: {
dataTable dataTable
}, },
data() { data() {
return { return {
checklist: [{ checklist: [{
title: '姓名', title: '姓名',
type: 'input', type: 'input',
model: 'name' model: 'name'
}, { }, {
title: '用户操作', title: '用户操作',
type: 'input', type: 'input',
model: 'operate' model: 'operation'
}], }],
breads: ['系统管理', '日志列表'], breads: ['系统管理', '日志列表'],
tableData: [{}], tableData: [{}],
columns: [{ columns: [{
label: '姓名', slot: "name"
prop: 'name' },
}, {
{ label: '用户操作',
label: '用户操作', prop: 'operation'
prop: 'operate' },
}, {
{ label: '请求方式',
label: '请求方式', prop: 'method'
prop: 'requestType' },
}, {
{ slot: "args"
label: '请求参数', },
prop: 'requestData' {
}, label: '请求时长',
{ prop: 'elapsed'
label: '请求时长', },
prop: 'requestTime' {
}, label: '状态',
{ prop: 'status'
label: '状态', },
prop: 'state' {
}, label: '操作IP',
{ prop: 'ip'
label: '操作IP', },
prop: 'ip' {
}, label: '创建时间',
{ prop: 'createTime'
label: '创建时间', }
prop: 'data' ],
}], pageObj: {
pageObj: { size: 10,
size: 10, currentPage: 1,
total: 1, func: (currentPage) => {
currentPage: 1, this.pageTurning(currentPage)
sizes: [100, 200, 300], }
func: (currentPage) => { }
this.pageTurning(currentPage) }
} },
} methods: {
} examine() {
}, this.$router.push('/admin/bid/bidingDetail')
methods: { }
examine() { }
this.$router.push('/admin/bid/bidingDetail') }
}
}
}
</script> </script>
<style scoped> <style scoped>
......
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