优化页面select选择器

This commit is contained in:
2023-12-01 16:25:44 +08:00
parent 574ccc203c
commit 5a4044a08f
2 changed files with 43 additions and 38 deletions

View File

@@ -1,15 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="68px">
<el-form-item label="会员ID" prop="memberId"> <el-form-item label="会员ID" prop="memberId">
<el-input v-model="queryParams.memberId" placeholder="请输入会员ID" clearable <el-input v-model="queryParams.memberId" placeholder="请输入会员ID" clearable
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="手机号" prop="mobileNumber"> <el-form-item label="手机号" prop="mobileNumber">
<el-input v-model="queryParams.mobileNumber" placeholder="请输入手机号" clearable <el-input v-model="queryParams.mobileNumber" placeholder="请输入手机号" clearable
@keyup.enter.native="handleQuery" /> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@@ -21,7 +22,8 @@
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['member:merchantVip:add']">开卡</el-button> v-hasPermi="['member:merchantVip:add']">开卡
</el-button>
</el-col> </el-col>
<!--<el-col :span="1.5"> <!--<el-col :span="1.5">
<el-button <el-button
@@ -59,16 +61,16 @@
</el-row> </el-row>
<el-table v-loading="loading" :data="infoList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="infoList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center"/>
<el-table-column label="卡号" align="center" prop="walletCode" /> <el-table-column label="卡号" align="center" prop="walletCode"/>
<el-table-column label="运营商" align="center" prop="merchantName" /> <el-table-column label="运营商" align="center" prop="merchantName"/>
<el-table-column label="会员id" align="center" prop="memberId" /> <el-table-column label="会员id" align="center" prop="memberId"/>
<el-table-column label="头像" align="center" prop="avatarUrl"> <el-table-column label="头像" align="center" prop="avatarUrl">
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <el-image v-if="scope.row.avatarUrl === null" :src="defaultImg" />--> <!-- <el-image v-if="scope.row.avatarUrl === null" :src="defaultImg" />-->
<el-image style="height: 50px;width: 50px" <el-image style="height: 50px;width: 50px"
:src="scope.row.avatarUrl === null ? defaultImg[0].img : scope.row.avatarUrl" :src="scope.row.avatarUrl === null ? defaultImg[0].img : scope.row.avatarUrl"
:preview-src-list='[scope.row.avatarUrl === null ? defaultImg[0].img : scope.row.avatarUrl]' /> :preview-src-list='[scope.row.avatarUrl === null ? defaultImg[0].img : scope.row.avatarUrl]'/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="昵称" align="center" prop="nickName"> <el-table-column label="昵称" align="center" prop="nickName">
@@ -78,47 +80,51 @@
</router-link> </router-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="手机号" align="center" prop="mobileNumber" /> <el-table-column label="手机号" align="center" prop="mobileNumber"/>
<el-table-column label="本金余额" align="center" prop="principalBalance" /> <el-table-column label="本金余额" align="center" prop="principalBalance"/>
<el-table-column label="赠送余额" align="center" prop="giftBalance" /> <el-table-column label="赠送余额" align="center" prop="giftBalance"/>
<el-table-column label="总余额" align="center" prop="totalAccountAmount" /> <el-table-column label="总余额" align="center" prop="totalAccountAmount"/>
<el-table-column label="备注" align="center" prop="remark" /> <el-table-column label="备注" align="center" prop="remark"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdateBalance(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdateBalance(scope.row)"
v-hasPermi="['member:merchantVip:update']">充值/扣款 v-hasPermi="['member:merchantVip:update']">充值/扣款
</el-button> </el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
@pagination="getList" /> :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 添加或修改会员基础信息对话框 --> <!-- 添加或修改会员基础信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="createMerchantVip" :rules="rules" label-width="100px"> <el-form ref="form" :model="createMerchantVip" :rules="rules" label-width="100px">
<el-form-item label="选择运营商"> <el-form-item label="选择运营商">
<el-select v-model="selectedValue" clearable placeholder="请选择运营商"> <el-select v-model="createMerchantVip.targetMerchantId" clearable placeholder="请选择运营商" @change="$forceUpdate()">
<el-option v-for="item in merchantList" :key="item.merchantName" :label="item.merchantName" <el-option v-for="item in merchantList"
:value="item.merchantId"> :key="item.merchantId"
:label="item.merchantName"
:value="item.merchantId">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="手机号码"> <el-form-item label="手机号码">
<el-input v-model="createMerchantVip.mobileNumber" placeholder="请输入手机号码" /> <el-input v-model="createMerchantVip.mobileNumber" placeholder="请输入手机号码"/>
</el-form-item> </el-form-item>
<el-form-item label="操作类型"> <el-form-item label="操作类型">
<el-radio v-model="createMerchantVip.type" label="1" border>充值</el-radio> <el-radio v-model="createMerchantVip.type" label="1" border>充值</el-radio>
<el-radio v-model="createMerchantVip.type" label="2" border>扣款</el-radio> <el-radio v-model="createMerchantVip.type" label="2" border>扣款</el-radio>
</el-form-item> </el-form-item>
<el-form-item label="金额" prop="balance"> <el-form-item label="金额" prop="balance">
<el-input-number v-model="createMerchantVip.updatePrincipalBalance" placeholder="请输入金额" :min="0" <el-input-number v-model="createMerchantVip.updatePrincipalBalance" placeholder="请输入金额"
:controls="false" :precision="2" /> :min="0"
:controls="false" :precision="2"/>
</el-form-item> </el-form-item>
<el-form-item label="赠送金" prop="balance"> <el-form-item label="赠送金" prop="balance">
<el-input-number v-model="createMerchantVip.updateGiftBalance" placeholder="请输入赠送金" :min="0" <el-input-number v-model="createMerchantVip.updateGiftBalance" placeholder="请输入赠送金" :min="0"
:controls="false" :precision="2" /> :controls="false" :precision="2"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@@ -129,7 +135,7 @@
<!-- 添加或修改会员余额对话框 --> <!-- 添加或修改会员余额对话框 -->
<el-dialog title="会员充值/扣款" @close="closeUpdateBalance" :visible.sync="openUpdateBalance" width="500px" <el-dialog title="会员充值/扣款" @close="closeUpdateBalance" :visible.sync="openUpdateBalance" width="500px"
append-to-body> append-to-body>
<p>线下充值本金客户直接在线下付款给商家</p> <p>线下充值本金客户直接在线下付款给商家</p>
<el-form ref="form" :model="form" :rules="rules" label-width="100px"> <el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="选择运营商"> <el-form-item label="选择运营商">
@@ -140,12 +146,13 @@
<el-radio v-model="type" label="2" border>扣款</el-radio> <el-radio v-model="type" label="2" border>扣款</el-radio>
</el-form-item> </el-form-item>
<el-form-item label="金额" prop="balance"> <el-form-item label="金额" prop="balance">
<el-input-number v-model="updatePrincipalBalance" placeholder="请输入金额" :min="0" :controls="false" <el-input-number v-model="updatePrincipalBalance" placeholder="请输入金额" :min="0"
:precision="2" /> :controls="false"
:precision="2"/>
</el-form-item> </el-form-item>
<el-form-item label="赠送金" prop="balance"> <el-form-item label="赠送金" prop="balance">
<el-input-number v-model="updateGiftBalance" placeholder="请输入赠送金" :min="0" :controls="false" <el-input-number v-model="updateGiftBalance" placeholder="请输入赠送金" :min="0" :controls="false"
:precision="2" /> :precision="2"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@@ -172,7 +179,7 @@ export default {
dicts: ['member_status'], dicts: ['member_status'],
data() { data() {
return { return {
defaultImg: [{ img: require('../../../assets/images/headPort.png') }], defaultImg: [{img: require('../../../assets/images/headPort.png')}],
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 选中数组 // 选中数组
@@ -258,7 +265,7 @@ export default {
getMerchantList().then((response) => { getMerchantList().then((response) => {
console.log("response", response) console.log("response", response)
this.merchantList = response.obj; this.merchantList = response.obj;
this.selectedValue = this.merchantList[0].merchantId this.createMerchantVip.targetMerchantId = this.merchantList[0].merchantId
}) })
}, },
// 取消按钮 // 取消按钮
@@ -269,7 +276,6 @@ export default {
// 表单重置 // 表单重置
reset() { reset() {
this.form = { this.form = {
id: null,
nickName: null, nickName: null,
status: "0", status: "0",
avatarUrl: null, avatarUrl: null,
@@ -277,12 +283,11 @@ export default {
remark: null, remark: null,
principalBalance: null, principalBalance: null,
giftBalance: null, giftBalance: null,
createTime: null,
createBy: null,
updateTime: null,
updateBy: null
}; };
this.resetForm("form"); this.resetForm("form");
if (this.merchantList.length > 0) {
this.createMerchantVip.targetMerchantId = this.merchantList[0].merchantId;
}
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */
handleQuery() { handleQuery() {
@@ -368,7 +373,6 @@ export default {
}, },
/* 开卡确定按钮 */ /* 开卡确定按钮 */
submitCreateMerchantVip() { submitCreateMerchantVip() {
this.createMerchantVip.targetMerchantId = this.selectedValue
console.log("submitCreateMerchantVip", this.createMerchantVip); console.log("submitCreateMerchantVip", this.createMerchantVip);
createMerchantVip(this.createMerchantVip).then(response => { createMerchantVip(this.createMerchantVip).then(response => {
console.log("开卡确定按钮 response:", response); console.log("开卡确定按钮 response:", response);

View File

@@ -142,6 +142,7 @@
<el-select <el-select
v-model="form.merchantId" v-model="form.merchantId"
clearable placeholder="请选择运营商" clearable placeholder="请选择运营商"
@change="$forceUpdate()"
> >
<el-option <el-option
v-for="item in merchantList" v-for="item in merchantList"
@@ -263,7 +264,7 @@ export default {
// 获取运营商列表 // 获取运营商列表
getMerchantList() { getMerchantList() {
getMerchantList().then((response) => { getMerchantList().then((response) => {
console.log("getMerchantList response", response) // console.log("getMerchantList response", response);
this.merchantList = response.obj; this.merchantList = response.obj;
this.form.merchantId = this.merchantList[0].merchantId this.form.merchantId = this.merchantList[0].merchantId
}) })