Commit a6b6c78c authored by chenwei's avatar chenwei

会员详情跳转逻辑

parent 7dac7713
...@@ -134,10 +134,18 @@ ...@@ -134,10 +134,18 @@
> >
</dict-selector> </dict-selector>
</el-form-item> </el-form-item>
<el-form-item :label="$t('费用')" required> <el-form-item :label="$t('费用')">
<el-row :gutter="10"> <el-row :gutter="10">
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="expenses"> <el-form-item prop="expenses" :rules="rules.expenses" v-show="item.currency">
<el-input
v-model="item.expenses"
:placeholder="$t('请输入数字')"
clearable
onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"
/>
</el-form-item>
<el-form-item v-show="!item.currency">
<el-input <el-input
v-model="item.expenses" v-model="item.expenses"
:placeholder="$t('请输入数字')" :placeholder="$t('请输入数字')"
...@@ -147,8 +155,28 @@ ...@@ -147,8 +155,28 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10"> <el-col :span="10">
<el-form-item prop="currency"> <div>
<el-form-item prop="currency" :rules="rules.currency" v-show="item.expenses">
<el-select
clearable
v-model="item.currency"
:placeholder="$t('请选择币种')"
>
<el-option
v-for="nodeItem in currencyList"
:key="nodeItem.id"
:label="
isChinese
? nodeItem.titleZh
: nodeItem.titleEn
"
:value="nodeItem.id"
/>
</el-select>
</el-form-item>
<el-form-item v-show="!item.expenses">
<el-select <el-select
clearable
v-model="item.currency" v-model="item.currency"
:placeholder="$t('请选择币种')" :placeholder="$t('请选择币种')"
> >
...@@ -164,10 +192,11 @@ ...@@ -164,10 +192,11 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</div>
</el-col> </el-col>
</el-row> </el-row>
</el-form-item> </el-form-item>
<el-form-item :label="$t('收件人姓名')" prop="recipientName" <el-form-item :label="$t('收件人姓名')"
><el-input ><el-input
:placeholder="$t('请输入收件人姓名')" :placeholder="$t('请输入收件人姓名')"
clearable clearable
...@@ -177,7 +206,6 @@ ...@@ -177,7 +206,6 @@
</el-form-item> </el-form-item>
<el-form-item <el-form-item
:label="$t('收件人电话')" :label="$t('收件人电话')"
prop="recipientPhoneNum"
> >
<el-input <el-input
:placeholder="$t('请输入收件人电话')" :placeholder="$t('请输入收件人电话')"
...@@ -188,7 +216,6 @@ ...@@ -188,7 +216,6 @@
</el-form-item> </el-form-item>
<el-form-item <el-form-item
:label="$t('收件人地址')" :label="$t('收件人地址')"
prop="recipientAddress"
v-if="item.redeemType != '1'" v-if="item.redeemType != '1'"
> >
<el-input <el-input
......
...@@ -165,7 +165,7 @@ ...@@ -165,7 +165,7 @@
width="140" width="140"
:label="$t('兑换记录ID')" :label="$t('兑换记录ID')"
align="center" align="center"
prop="id" prop="redemptionNumber"
/> />
<el-table-column <el-table-column
width="140" width="140"
......
...@@ -147,6 +147,7 @@ ...@@ -147,6 +147,7 @@
<el-select <el-select
v-model="item.currency" v-model="item.currency"
:disabled="veriftyDisable" :disabled="veriftyDisable"
clearable
:placeholder="$t('请选择币种')" :placeholder="$t('请选择币种')"
> >
<el-option <el-option
...@@ -387,6 +388,15 @@ export default { ...@@ -387,6 +388,15 @@ export default {
return callback(); return callback();
} }
}; };
var expensesValidate =(rule, value, callback) => {
if (this.queryParamsList[0].currency && !value) {
return callback(
new Error(this.$t("请输入"))
);
} else {
return callback();
}
};
return { return {
env: process.env.NODE_ENV, env: process.env.NODE_ENV,
// 是否显示弹出层 // 是否显示弹出层
...@@ -462,6 +472,10 @@ export default { ...@@ -462,6 +472,10 @@ export default {
message: this.$t("请输入整数或保留小数点后两位"), message: this.$t("请输入整数或保留小数点后两位"),
trigger: "blur", trigger: "blur",
}, },
{
validator:expensesValidate,
trigger: "change",
}
], ],
currency: [ currency: [
{ {
......
...@@ -193,7 +193,7 @@ ...@@ -193,7 +193,7 @@
}, },
}) })
" "
>{{ `${$t("兑换记录ID")}:${row.extParamJson.redeemId}` }}</el-button >{{ `${$t("兑换记录ID")}:${row.extParamJson.redemptionNumber}` }}</el-button
> >
<!-- 系统过期 sourceType = 3 不展示 --> <!-- 系统过期 sourceType = 3 不展示 -->
<span v-if="row.sourceType == '3'"> -</span> <span v-if="row.sourceType == '3'"> -</span>
......
...@@ -236,7 +236,7 @@ ...@@ -236,7 +236,7 @@
<el-menu-item index="exchange">{{ $t("兑换记录") }}</el-menu-item> <el-menu-item index="exchange">{{ $t("兑换记录") }}</el-menu-item>
</el-menu> </el-menu>
<div class="table-container"> <div class="table-container">
<div class="reward" v-if="activeIndex == 'reward'"> <div class="reward" v-show="activeIndex == 'reward'">
<el-form <el-form
:model="queryParams" :model="queryParams"
ref="queryForm" ref="queryForm"
...@@ -336,7 +336,7 @@ ...@@ -336,7 +336,7 @@
@pagination="handleQueryPagination" @pagination="handleQueryPagination"
/> />
</div> </div>
<div class="exchange" v-else> <div class="exchange" v-show="activeIndex != 'reward'">
<el-form <el-form
:model="queryParamsRecord" :model="queryParamsRecord"
ref="queryForm" ref="queryForm"
...@@ -395,17 +395,32 @@ ...@@ -395,17 +395,32 @@
:data="memberRecordList" :data="memberRecordList"
> >
<el-table-column <el-table-column
width="140"
:label="$t('兑换记录ID')" :label="$t('兑换记录ID')"
width="160"
align="center" align="center"
prop="id" >
></el-table-column> <template #default="{ row }">
<el-button
type="text"
@click="handleViewRecord(scope.row)"
>{{ row.redemptionNumber }}</el-button>
</template>
</el-table-column>
<el-table-column <el-table-column
width="140" width="140"
:label="$t('礼品ID')" :label="$t('礼品ID')"
align="center" align="center"
prop="rewardCode"
></el-table-column> >
<template #default="{ row }">
<el-button
type="text"
@click="
handleShowRewardsDetail(row)
"
>{{ row.rewardCode }}</el-button>
</template>
</el-table-column>
<el-table-column <el-table-column
:label="$t('礼品名称')" :label="$t('礼品名称')"
align="center" align="center"
...@@ -418,8 +433,8 @@ ...@@ -418,8 +433,8 @@
></el-table-column> ></el-table-column>
<el-table-column :label="$t('兑换时间')" align="center"> <el-table-column :label="$t('兑换时间')" align="center">
<template v-slot="{ row }"> <template v-slot="{ row }">
{{ parseTime(row.redemptionTime) || "/" }}</template {{ parseTime(row.redemptionTime) || "/" }}
> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
:label="$t('兑换积分')" :label="$t('兑换积分')"
...@@ -818,6 +833,14 @@ ...@@ -818,6 +833,14 @@
</el-tabs> </el-tabs>
</div> </div>
</el-dialog> </el-dialog>
<!-- 查看 礼品 -->
<operating-gift
ref="operatingGift"
:title="operatingPagetitle"
:rewards-details="rewardsItem"
:show.sync="dialogVisible"
:node-list="nodeList"
/>
</div> </div>
</template> </template>
<script> <script>
...@@ -843,12 +866,15 @@ import { ...@@ -843,12 +866,15 @@ import {
queryMemberScoreRecord, queryMemberScoreRecord,
queryMemberExchangeRecord, queryMemberExchangeRecord,
} from "@/api/ecw/memberManagement"; } from "@/api/ecw/memberManagement";
import { getNodeList, getRewardsDetails } from '@/api/ecw/giftManagement'
import OperatingGift from '@/views/ecw/giftManagement/components/operatingGift.vue'
export default { export default {
name: "memberDetails", name: "memberDetails",
components: { ImageUpload, FileUpload }, components: { ImageUpload, FileUpload, OperatingGift },
data() { data() {
return { return {
// 网点
nodeList: [],
//兑换记录: //兑换记录:
dateRangeCreateTimeRecord: [], dateRangeCreateTimeRecord: [],
memberRecordList: [], memberRecordList: [],
...@@ -1006,6 +1032,10 @@ export default { ...@@ -1006,6 +1032,10 @@ export default {
row: 10, row: 10,
userId: undefined, userId: undefined,
}, },
loading: true,
dialogVisible: false,
operatingPagetitle: '',
rewardsItem: {},
attestationShow: false, attestationShow: false,
modifyLicense: false, modifyLicense: false,
modifyIdCard: true, //修改身份证 modifyIdCard: true, //修改身份证
...@@ -1021,6 +1051,7 @@ export default { ...@@ -1021,6 +1051,7 @@ export default {
this.getDetails(); this.getDetails();
this.handleQuery(); this.handleQuery();
this.handleQueryRecord(); this.handleQueryRecord();
this.getNodeListAPI();
}, },
computed: { computed: {
isChinese() { isChinese() {
...@@ -1037,6 +1068,27 @@ export default { ...@@ -1037,6 +1068,27 @@ export default {
}); });
}, },
methods: { methods: {
handleViewRecord(row) {
this.$router.push({
path: '/memberManagement/exchangeRecordOperation',
query: { exchangeRewardID: row.id, pageStatus: 'view' }
})
},
getNodeListAPI() {
getNodeList().then((res) => {
this.nodeList = res.data
})
},
handleShowRewardsDetail(row){
let params = {
id: row.rewardId
};
getRewardsDetails(params).then((res) => {
this.dialogVisible = true
this.operatingPagetitle = '1'
this.rewardsItem = res.data;
});
},
handleExchangeRedeemType(id) { handleExchangeRedeemType(id) {
return this.getDictDatas(DICT_TYPE.WAY_OF_RECEIVING).filter( return this.getDictDatas(DICT_TYPE.WAY_OF_RECEIVING).filter(
(item) => item.value == id (item) => item.value == id
......
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