master
271556543@qq.com 3 years ago
parent a82e712f70
commit a57a0b09d9

@ -98,6 +98,16 @@ export default {
createIndexRow(){
return <el-table-column type="index" align="center" fixed="left"></el-table-column>
},
createPage(){
return(
<Page
total={40}
size="small"
show-elevator={true}
show-sizer={true}
class="xy-table-page"></Page>
)
},
toggleRowSelection(row){
this.$nextTick(()=>{
this.$refs.table.toggleRowSelection(row);
@ -116,9 +126,9 @@ export default {
mounted() {
},
render(h) {
let {summaryMethod,cellClick,btnWidth,selectClick,height,createIndexRow,tableStyle,treeProps,showSummary,showHeader,$scopedSlots,showIndex,defaultExpandAll,headerCellStyle,headerRowStyle,rowStyle,cellStyle,indent,tableHeight,tableItem,list,deleteClick,editorClick} = this
let {createPage,summaryMethod,cellClick,btnWidth,selectClick,height,createIndexRow,tableStyle,treeProps,showSummary,showHeader,$scopedSlots,showIndex,defaultExpandAll,headerCellStyle,headerRowStyle,rowStyle,cellStyle,indent,tableHeight,tableItem,list,deleteClick,editorClick} = this
return (
<div class="table-tree">
<div class="table-tree" style={{ 'position': 'relative' }}>
{ tableItem && tableItem.length>0 ?
(<el-table
ref="table"
@ -281,6 +291,23 @@ export default {
</script>
<style scoped lang="scss">
.xy-table-page{
display: flex;
justify-content: right;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
background: rgba(140,140,140,0.6);
z-index: 10;
position: absolute;
bottom: 0;
left: 0;
right: 0;
::v-deep .ivu-page-item{
background: transparent !important;
}
}
</style>

@ -12,22 +12,22 @@
</div>
</div>
</template>
<template v-slot:logo_id>
<template v-slot:logo>
<div class="xy-table-item">
<div class="xy-table-item-label">
图片logo
</div>
<div class="xy-table-item-content">
<div class="xy-table-item-content">
<div v-if="form.logo_id" style="position: relative;">
<img :src="form.logo_id" class="avatar">
<div v-if="form.logo.url" style="position: relative;">
<img :src="form.logo.url" class="avatar">
<Button
shape="circle"
icon="md-close"
type="error"
size="small"
class="img__delete"
@click="form.logo_id = ''"></Button>
@click="form.logo = {id:'',url:''}"></Button>
</div>
<el-upload
v-else
@ -35,7 +35,7 @@
:limit="1"
class="avatar-uploader"
list-type="picture-card"
action="/api/admin/upload-file"
:action="action"
:show-file-list="true"
:on-error="uploadFail"
:on-success="uploadSuccess"
@ -116,22 +116,22 @@
</div>
</div>
</template>
<template v-slot:certificate_id>
<template v-slot:certificate>
<div class="xy-table-item">
<div class="xy-table-item-label">
营业执照
</div>
<div class="xy-table-item-content">
<div class="xy-table-item-content">
<div v-if="form.certificate_id" style="position: relative;">
<img :src="form.certificate_id" class="avatar">
<div v-if="form.certificate.url" style="position: relative;">
<img :src="form.certificate.url" class="avatar">
<Button
shape="circle"
icon="md-close"
type="error"
size="small"
class="img__delete"
@click="form.certificate_id = ''"></Button>
@click="form.certificate = {id:'',url:''}"></Button>
</div>
<el-upload
v-else
@ -139,7 +139,7 @@
:limit="1"
class="avatar-uploader"
list-type="picture-card"
action="/api/admin/upload-file"
:action="action"
:show-file-list="true"
:on-error="uploadFail"
:on-success="uploadSuccess1"
@ -185,17 +185,24 @@ export default {
id:'',
type:'add',
isShow:false,
action:`${process.env.VUE_APP_BASE_API}api/admin/upload-file`,
form:{
name:"",//
logo_id:'',//
logo:{
id:'',
url:''
},//
address:"",
slogan:'',
boss:'',
boss_phone:'',
contact:'',
phone:'',
certificate_id:'',//
certificate:{
id:'',
url:''
},//
business_number:'',//
state:1,
username:"",//
@ -242,11 +249,13 @@ export default {
},
uploadSuccess(response){
console.log(response)
this.form.logo_id = response.id
this.form.logo.id = response.id
this.form.logo.url = response.url
},
uploadSuccess1(response){
console.log(response)
this.form.certificate_id = response.id
this.form.certificate.id = response.id
this.form.certificate.url = response.url
},
uploadBefore(file){
console.log(file)
@ -261,7 +270,21 @@ export default {
submit(){
if(this.type === 'add'){
store(this.form).then(res => {
store({
name:this.form.name,
logo_id:this.form.logo.id,
address:this.form.address,
slogan:this.form.slogan,
boss:this.form.boss,
boss_phone:this.form.boss_phone,
contact:this.form.contact,
phone:this.form.phone,
certificate_id:this.form.certificate.id,
business_number:this.form.business_number,
username:this.form.username,
password:this.form.password,
state:1
}).then(res => {
this.isShow = false
this.$emit('refresh')
Message({
@ -275,14 +298,14 @@ export default {
save({
id:this.id,
name:this.form.name,
logo_id:this.form.logo_id,
logo_id:this.form.logo.id,
address:this.form.address,
slogan:this.form.slogan,
boss:this.form.boss,
boss_phone:this.form.boss_phone,
contact:this.form.contact,
phone:this.form.phone,
certificate_id:this.form.certificate_id,
certificate_id:this.form.certificate.id,
business_number:this.form.business_number,
username:this.form.username,
password:this.form.password
@ -304,14 +327,14 @@ export default {
show({id:this.id}).then(res => {
this.form = {
name:res.name,//
logo_id:res.logo_id,//
logo: { id:res.logo_id,url:res.logo?.url },//
address:res.address,
slogan:res.slogan,
boss:res.boss,
boss_phone:res.boss_phone,
contact:res.contact,
phone:res.phone,
certificate_id:res.certificate_id,//
certificate: { id:res.certificate_id,url:res.certificate?.url },//
business_number:res.business_number,//
state:res.state,
username:res.username,//
@ -333,8 +356,8 @@ export default {
transform: scale(0.8,0.8);
position: absolute;
top: 1px;
right: 12px;
top: 4px;
right: 4px;
}
::v-deep .avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;

@ -123,7 +123,7 @@
:limit="1"
class="avatar-uploader"
list-type="picture-card"
action="/api/admin/upload-file"
:action="action"
:show-file-list="true"
:on-error="uploadFail"
:on-success="uploadSuccess"
@ -167,6 +167,7 @@ export default {
id:'',
type:'add',
isShow:false,
action:`${process.env.VUE_APP_BASE_API}api/admin/upload-file`,
types:[{label:'首页轮播图',value:0},{label:'商品轮播图',value:1}],
states:[

@ -4,10 +4,29 @@
<lx-header icon="md-apps" text="会员管理" style="margin-bottom: 10px; border: 0px; margin-top: 15px">
<div slot="content"></div>
<slot>
<div>
<Input style="width: 200px; margin-right: 10px" placeholder="关键字搜索" />
<Button type="primary">查询</Button>
<Button type="primary" style="margin-left: 10px" @click="$refs['addMember'].isShow = true,$refs['addMember'].type = 'add'">新增会员</Button>
<div class="selector">
<div class="selector-item">
<div class="selector-item__label">关键词</div>
<Input v-model="select.keywords" clearable style="width: 200px;" placeholder="关键字搜索" />
</div>
<div class="selector-item">
<div class="selector-item__label">区域</div>
<Select clearable v-model="select.area" style="width: 130px;" placeholder="选择区域搜索">
<Option v-for="item in areas" :value="item">{{item}}</Option>
</Select>
</div>
<div class="selector-item">
<div class="selector-item__label">建卡医院</div>
<Input clearable v-model="select.hospital" style="width: 200px;" placeholder="建卡医院搜索"/>
</div>
<div class="selector-item">
<Button type="primary" @click="getMembers"></Button>
</div>
<div class="selector-item">
<Button type="primary" @click="$refs['addMember'].isShow = true,$refs['addMember'].type = 'add'">新增会员</Button>
</div>
</div>
</slot>
</lx-header>
@ -37,8 +56,12 @@ export default {
return {
select:{
pageSize:10,
pageIndex:1
pageIndex:1,
keywords:"",
area:"",
hospital:""
},
areas:['高新区','吴中区','姑苏区','相城区','吴江区','工业园区','相城区'],
total:0,
list:[],
@ -103,7 +126,10 @@ export default {
async getMembers(){
const res = await index({
page_size:this.select.pageSize,
page:this.select.pageIndex
page:this.select.pageIndex,
keyword:this.select.keywords,
hospital:this.select.hospital,
area:this.select.area
})
this.total = res.total
this.list = res.data
@ -134,4 +160,22 @@ export default {
</script>
<style scoped lang="scss">
.selector{
display: flex;
flex-wrap: wrap;
align-items: center;
align-content: center;
&-item{
display: flex;
align-items: center;
align-content: center;
margin-top: 6px;
margin-right: 10px;
&__label{
word-break: keep-all;
}
}
}
</style>

Loading…
Cancel
Save