Commit cd5a6dcf by 陈羽

update: 退款列表+兑换列表优化

parent 08f6776e
......@@ -17,9 +17,7 @@
<div>
<div class="operate-top">
<div class="fl">
<div class="search-item">
<el-date-picker class="date-picker" @change="changeTime" v-model="dateValue" type="datetimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</div>
<div class="search-item"><span>下单时间</span><el-date-picker class="date-picker" @change="changeTime" v-model="dateValue" type="datetimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker></div>
<!-- <div class="search-item">
<el-select v-model="changeType" placeholder="配送方式" clearable @change="getList">
<el-option label="物流发货" :value="2"></el-option>
......@@ -38,7 +36,10 @@
<!-- <el-input v-model.trim="searchValue" style="width:260px;" placeholder="请输入会员/卡券/订单进行搜索" prefix-icon="el-icon-search" clearable @keyup.enter.native="handleInputSearch(searchValue)" @clear="handleInputSearch(searchValue)"> </el-input> -->
</div>
<div class="search-item">
<el-checkbox v-model="showSelfStatus" label="仅看本人" border @change="handleInputSearch" v-if="showFlag"></el-checkbox>
<span>优惠券创建人</span
><el-autocomplete class="inline-input" :value="creatorName" :select-when-unmatched="true" @change.native="changeAuto" @select="selectCreator" :fetch-suggestions="querySearch" placeholder="请输入创建人" :trigger-on-focus="false">
<template slot-scope="{ item }">{{ item.creatorName }}</template>
</el-autocomplete>
</div>
</div>
<div class="fr">
......@@ -84,6 +85,7 @@
<p style="line-height:18px" class="gray-color">{{ scope.row.createTime ? getSeconds(scope.row.createTime) : '--' }}</p>
</template>
</el-table-column>
<el-table-column prop="creatorName" label="优惠券创建人"></el-table-column>
<el-table-column prop="definedCode" label="订单编号" width="170px">
<template slot-scope="scope">
<el-dropdown @visible-change="i => getOrderInfo(i, scope.row.integralMallProExchangeId)" trigger="click" class="drop-list">
......@@ -171,6 +173,9 @@ export default {
total: 0,
tableData: [],
deliverNum: 0,
creatorId: '',
creatorName: '',
searchDateType: 1,
searchValue: '',
searchType: 1,
changeType: '', //配送方式
......@@ -195,7 +200,6 @@ export default {
integralMallProId: '',
requestProject: 'integral-mall',
placement: 'top-start',
showSelfStatus: false,
showFlag: false,
loading: false
};
......@@ -212,6 +216,35 @@ export default {
this.getList();
},
methods: {
changeAuto(e) {
if (!e.target.value) {
this.creatorId = '';
this.creatorName = '';
this.handleInputSearch();
}
},
selectCreator(v) {
this.creatorName = v.creatorName;
this.creatorId = v.creatorId;
this.handleInputSearch();
},
querySearch(v, cb) {
this.creatorLoading = true;
let params = {
creatorName: v
};
request.get('/api-integral-mall/list-creator', { params }).then(res => {
if (res.data.errorCode === 0) {
if (res.data.result) {
cb(res.data.result);
} else {
cb([]);
}
} else {
this.$message.error(res.data.message);
}
});
},
getStatus() {
request.post('/api-integral-mall/is-show-self ').then(res => {
if (res.data.errorCode === 0) {
......@@ -296,7 +329,7 @@ export default {
integralMallProId: '',
pageType: 1, //1、代表优惠券订单列表 2、礼品订单
requestProject: 'integral-mall',
showSelfFlag: this.showSelfStatus ? 1 : 0
creatorId: this.creatorId
};
this.dialogVisibleAll = true;
// window.location = `${exportOnlineListExcel}?orderStatus=${this.listParams.orderStatus}&changeType=${this.listParams.changeType}&searchParams=${this.listParams.searchParams}&beginTime=${this.listParams.beginTime}&endTime=${this.listParams.endTime}&requestProject=marketing`;
......@@ -357,8 +390,8 @@ export default {
beginTime: this.beginTime,
endTime: this.endTime,
sortType: this.sortType,
integralMallProId: this.integralMallProId ? this.integralMallProId : '',
showSelfFlag: this.showSelfStatus ? 1 : 0
creatorId: this.creatorId,
integralMallProId: this.integralMallProId ? this.integralMallProId : ''
};
this.loading = true;
request.post('/api-integral-mall/page-undeliver', qs.stringify(params)).then(res => {
......@@ -409,19 +442,73 @@ export default {
}
};
</script>
<style scoped>
.section {
background: #fff;
margin: 24px;
padding: 24px;
<style lang="less" scoped>
.search-item > span {
margin-right: 8px;
font-size: 14px;
line-height: 32px;
vertical-align: middle;
}
.operate-top {
position: relative;
background: #fff;
height: 32px;
background: #fff;
margin: 0 25px;
padding: 25px 25px 0 25px;
transition: height 0.3s;
.top-right-btn {
position: absolute;
top: 25px;
right: 25px;
}
.el-collapse {
display: inline-block;
width: 180px;
height: 32px;
margin-left: -4px;
overflow: visible;
.el-collapse-item {
overflow: visible;
}
/deep/.el-collapse-item__header {
height: 32px;
line-height: 32px;
border: none;
.el-collapse-item__arrow {
display: none;
}
}
/deep/.el-collapse-item__wrap {
position: relative;
left: -288px;
top: 25px;
min-width: 1102px;
height: 33px;
border: none;
.el-collapse-item__content {
line-height: 32px;
}
}
}
}
/deep/.search-item.date-input > .el-input-group {
& > .el-input__inner {
display: none !important;
}
& > .el-input-group__append {
/* display: none !important; */
padding: 0;
border: none;
& > .el-date-editor {
border-radius: 0 4px 4px 0;
}
}
}
.section {
background: #fff;
margin: 24px;
padding: 24px;
}
.goods-list-content {
margin: 0 25px 25px 25px;
......
......@@ -53,7 +53,7 @@
</el-select>
</div>
<div class="search-item">
<el-autocomplete class="inline-input" :value="creatorName" :select-when-unmatched="true" @select="selectCreator" clearable :fetch-suggestions="querySearch" placeholder="请输入创建人" :trigger-on-focus="false">
<el-autocomplete class="inline-input" :value="creatorName" :select-when-unmatched="true" @select="selectCreator" @change.native="changeAuto" :fetch-suggestions="querySearch" placeholder="请输入创建人" :trigger-on-focus="false">
<template slot-scope="{ item }">{{ item.creatorName }}</template>
</el-autocomplete>
</div>
......@@ -137,6 +137,7 @@
<!-- <p style="line-height:18px" v-else-if="scope.row.refundStatus === -1">--</p> -->
</template>
</el-table-column>
<el-table-column prop="creatorName" label="礼品创建人"></el-table-column>
<el-table-column prop="complete" label="交易状态" width="170px">
<template slot-scope="scope">
<p style="line-height:18px">
......@@ -429,8 +430,12 @@ export default {
this.getList();
},
methods: {
collapseActiveChange(v) {
console.log(v);
changeAuto(e) {
if (!e.target.value) {
this.creatorId = '';
this.creatorName = '';
this.handleInputSearch();
}
},
selectCreator(v) {
this.creatorName = v.creatorName;
......
......@@ -39,7 +39,9 @@
<!-- <el-input class="w-340" v-model.trim="searchValue" placeholder="请输入商品/会员/订单/退款编号进行搜索" prefix-icon="el-icon-search" clearable @keyup.enter.native="handleInputSearch(searchValue)" @clear="handleInputSearch(searchValue)"> </el-input> -->
</div>
<div class="search-item">
<el-checkbox v-model="showSelfStatus" label="仅看本人" border @change="getListCurr" v-if="showFlag"></el-checkbox>
<el-autocomplete class="inline-input" :value="updaterName" :select-when-unmatched="true" @change.native="changeAuto" @select="selectCreator" :fetch-suggestions="querySearch" placeholder="请输入操作人" :trigger-on-focus="false">
<template slot-scope="{ item }">{{ item.creatorName }}</template>
</el-autocomplete>
</div>
</div>
</div>
......@@ -113,6 +115,9 @@
</p> -->
</template>
</el-table-column>
<el-table-column prop="updaterName" label="操作人" width="160px">
<template slot-scope="scope">{{ scope.row.refundStatus === 0 || status === '0' ? '--' : scope.row.updaterName }}</template>
</el-table-column>
<el-table-column prop="complete" label="退款状态" width="120px">
<template slot-scope="scope">
<p style="line-height:18px;margin-bottom:5px" v-if="scope.row.refundStatus === 0">待退款</p>
......@@ -186,6 +191,8 @@ export default {
total: 0,
loading: false,
tableData: [],
updaterId: '',
updaterName: '',
searchValue: '', //搜索字段
searchType: 1,
refundType: '', //退款方式
......@@ -226,7 +233,6 @@ export default {
shopIntegralMallProExchangeId: '', //门店自提订单id
writeOffCode: '', //核销码
submitLoading: false, //门店自提确认按钮
showSelfStatus: false,
showFlag: false
};
},
......@@ -235,6 +241,35 @@ export default {
this.getList();
},
methods: {
changeAuto(e) {
if (!e.target.value) {
this.updaterId = '';
this.updaterName = '';
this.handleInputSearch();
}
},
selectCreator(v) {
this.updaterName = v.creatorName;
this.updaterId = v.creatorId;
this.handleInputSearch();
},
querySearch(v, cb) {
this.creatorLoading = true;
let params = {
creatorName: v
};
request.get('/api-integral-mall/list-creator', { params }).then(res => {
if (res.data.errorCode === 0) {
if (res.data.result) {
cb(res.data.result);
} else {
cb([]);
}
} else {
this.$message.error(res.data.message);
}
});
},
getStatus() {
request.post('/api-integral-mall/is-show-self ').then(res => {
if (res.data.errorCode === 0) {
......@@ -306,24 +341,26 @@ export default {
sort: this.sortType,
startTime: this.startTime,
endTime: this.endTime,
status: this.status === '-1' ? '' : this.status,
showSelfFlag: this.showSelfStatus ? 1 : 0
updaterId: this.updaterId,
status: this.status === '-1' ? '' : this.status
};
this.loading = true;
request.post('/api-integral-mall/page-refunds', qs.stringify(params)).then(res => {
if (res.data.errorCode === 0) {
if (res.data.result.result) {
this.tableData = res.data.result.result;
this.total = res.data.result.totalCount;
request
.post('/api-integral-mall/page-refunds', qs.stringify(params))
.then(res => {
if (res.data.errorCode === 0) {
if (res.data.result.result) {
this.tableData = res.data.result.result;
this.total = res.data.result.totalCount;
} else {
this.tableData = [];
this.total = 0;
}
} else {
this.tableData = [];
this.total = 0;
this.$message.error(res.data.message);
}
this.loading = false;
} else {
this.$message.error(res.data.message);
}
});
})
.finally(_ => (this.loading = false));
},
// 关闭退款
handleCloseRefund(item) {
......
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