Commit 7a1872aa by 萱草

update: 更改

parent 35dddf75
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel=stylesheet type=text/css href=./static/css/iconfont.css><link rel=stylesheet type=text/css href=./static/css/common.css><link rel="shortcut icon" type=image/x-icon href=./static/img/favicon.ico><title>积分商城</title><link href=./static/css/app.6c374110297e3f22f8c60d590c0adb79.css rel=stylesheet></head><body><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.5.2/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/elementUI/index.2.5.4.js></script><script src=//web-1251519181.file.myqcloud.com/components/header.2.0.45.js></script><script src=//web-1251519181.file.myqcloud.com/components/aside-menu.2.0.15.js></script><script src=//web-1251519181.file.myqcloud.com/components/footer.2.0.04.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-linkage.2.0.41.js></script><script src=//web-1251519181.file.myqcloud.com/components/activity-select.1.0.2.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-new.2.0.71.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.19.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.15.js></script><script src=//web-1251519181.file.myqcloud.com/components/people.2.0.26.js></script><script src=//web-1251519181.file.myqcloud.com/components/delete.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.30.js></script><script src=//web-1251519181.file.myqcloud.com/components/pagination.1.0.8.js></script><script src=//web-1251519181.file.myqcloud.com/components/track.1.0.4.js></script><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.be8aabf13848b6ca3aa7.js></script><script type=text/javascript src=./static/js/app.18acb75100102c77285c.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link rel=stylesheet type=text/css href=./static/css/iconfont.css><link rel=stylesheet type=text/css href=./static/css/common.css><link rel="shortcut icon" type=image/x-icon href=./static/img/favicon.ico><title>积分商城</title><link href=./static/css/app.dc028c60555c6678c4e12970194c0f61.css rel=stylesheet></head><body><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.5.2/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/elementUI/index.2.5.4.js></script><script src=//web-1251519181.file.myqcloud.com/components/header.2.0.45.js></script><script src=//web-1251519181.file.myqcloud.com/components/aside-menu.2.0.15.js></script><script src=//web-1251519181.file.myqcloud.com/components/footer.2.0.04.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-linkage.2.0.41.js></script><script src=//web-1251519181.file.myqcloud.com/components/activity-select.1.0.2.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-new.2.0.71.js></script><script src=//web-1251519181.file.myqcloud.com/components/card.2.0.19.js></script><script src=//web-1251519181.file.myqcloud.com/components/export-excel.2.0.15.js></script><script src=//web-1251519181.file.myqcloud.com/components/people.2.0.26.js></script><script src=//web-1251519181.file.myqcloud.com/components/delete.2.0.00.js></script><script src=//web-1251519181.file.myqcloud.com/components/store-card.2.0.30.js></script><script src=//web-1251519181.file.myqcloud.com/components/pagination.1.0.8.js></script><script src=//web-1251519181.file.myqcloud.com/components/track.1.0.4.js></script><script type=text/javascript src=./static/js/manifest.3ad1d5771e9b13dbdad2.js></script><script type=text/javascript src=./static/js/vendor.be8aabf13848b6ca3aa7.js></script><script type=text/javascript src=./static/js/app.36d0186f47ffd4d4b0d9.js></script></body></html>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
<template>
<el-dialog title="设置阶梯价" :visible.sync="dialogVisible" width="600px" @close="cancelSubmit()">
<el-dialog :visible.sync="dialogVisible" width="600px" @close="cancelSubmit()">
<div slot="title" style="margin-top:10px;margin-bottom:10px">
<span style="color:#303133;font-size:16px">设置阶梯价</span>
<span style="color:#606266;font-size:12px">*若未设置阶梯价则以原价进行兑换,请勿随意填入0积分/现金;</span>
</div>
<div v-loading="loading">
<div style="margin-top:10px;margin-bottom:10px">
<!-- <div style="margin-top:10px;margin-bottom:10px">
<span style="color:#303133;font-size:16px">设置阶梯价</span>
<span>*若未设置阶梯价则以原价进行兑换,请勿随意填入0积分/现金;</span>
</div>
</div> -->
<el-tabs :value="selectTab" type="border-card">
<el-tab-pane :name="index" v-for="(item, index) in ladderMemberGrade" :key="index" :label="item.gradeName" :value="item.gradeId">
<div class="fr" style="margin-bottom:20px" v-if="list3.length && isTable">
......@@ -13,7 +17,7 @@
<el-button type="primary" size="small" @click="handleLadder(list3[index].skuList)">批量填充</el-button>
</div>
<el-table v-if="list3.length && isTable" :data="list3.length && isTable ? list3[index].skuList : []">
<el-table-column v-for="(it, i) in ladderHeader" :key="i" :label="it.proName">
<el-table-column v-for="(it, i) in skuHeaderList" :key="i" :label="it.proName">
<template slot-scope="{ row }">{{ row.giftPropValues[i].valueName }}</template>
</el-table-column>
<el-table-column label="积分">
......@@ -35,8 +39,9 @@
</el-form>
</el-tab-pane>
</el-tabs>
<el-button type="primary" @click="saveLadderDetail">保存</el-button>
<div>1111</div>
<div style="margin-top: 20px;text-align:right">
<el-button type="primary" @click="saveLadderDetail">保存</el-button>
</div>
</div>
</el-dialog>
</template>
......@@ -105,6 +110,11 @@ export default {
}
}
this.list3 = res.data.result.gradeProSkus ? res.data.result.gradeProSkus : [];
this.list3.forEach(item => {
item.skuList.forEach(it => {
it.giftPropValues = JSON.parse(it.giftPropValuesJson);
});
});
let giftProStandardJson = res.data.result.giftProStandardJson ? JSON.parse(res.data.result.giftProStandardJson) : [];
this.isTable = giftProStandardJson.length; // giftProStandardJson存在代表有sku
this.gradeType = res.data.result.gradeType;
......@@ -152,14 +162,35 @@ export default {
},
handleLadder(value) {
value.forEach(item => {
item.giftProSkuIntegral = this.integral;
item.giftProSkuCash = this.cash;
item.giftProSkuIntegral = this.integral ? this.integral : item.giftProSkuIntegral;
item.giftProSkuCash = this.cash ? this.cash : item.giftProSkuCash;
});
this.integral = '';
this.cash = '';
},
saveLadderDetail() {
console.log(this.list3);
// this.ladderMemberGrade;
// let list = [];
// this.list3.forEach(item => {
// this.ladderMemberGrade.forEach(it => {
// if (item.gradeId === it.gradeId) {
// item.gradeName = it.gradeName;
// }
// });
// list.push({
// gradeId: item.gradeId,
// gradeName: item.gradeName,
// skuList: []
// });
// item.skuList.forEach(ittt =>{
// list.forEach(ite =>{
// });
// });
// });
let params = {
integralMallProId: this.id,
differentialPricingJson: JSON.stringify(this.list3)
};
request.post('/api-integral-mall/set-differential-pricing', params).then(res => {
......@@ -182,3 +213,8 @@ export default {
}
};
</script>
<style scoped>
.w-100 {
width: 100px;
}
</style>
......@@ -7,6 +7,9 @@ import main from '../views/main';
import gift from '../views/goods/gift/gift';
import giftInfo from '../views/goods/gift/info';
import coupon from '../views/goods/coupon/coupon';
import soldStatistics from '../views/goods/soldStatistics/statistics';
import flashSale from '../views/activities/flashSale/list';
import flashSaleInfo from '../views/activities/flashSale/detail';
import couponInfo from '../views/goods/coupon/info';
import giftExchange from '../views/order/giftExchange';
import couponExchange from '../views/order/couponExchange';
......@@ -55,6 +58,21 @@ const router = new Router({
component: couponInfo
},
{
path: '/soldStatistics',
name: 'soldStatistics',
component: soldStatistics
},
{
path: '/flashSale',
name: 'flashSale',
component: flashSale
},
{
path: '/flashSaleInfo',
name: 'flashSaleInfo',
component: flashSaleInfo
},
{
path: '/giftExchange',
name: 'giftExchange',
component: giftExchange,
......
<template>
<div class="mall-section-container">
<div class="mall-content-section">
<div class="mall-content-title">
<el-breadcrumb separator="/">
<el-breadcrumb-item :to="{ path: '' }">
<a href="/report/#/memberSummary">首页</a>
</el-breadcrumb-item>
<el-breadcrumb-item>积分商城</el-breadcrumb-item>
<el-breadcrumb-item>商品</el-breadcrumb-item>
<el-breadcrumb-item>礼品</el-breadcrumb-item>
</el-breadcrumb>
<h3>
<span>礼品</span>
</h3>
</div>
<div class="section">1111</div>
</div>
</div>
</template>
<script>
// import qs from 'qs';
// import request from '../../../service/request.js';
// import getInputVal from '../../../utils/common.js';
// import copy from '../../../utils/clone.js';
export default {
data() {
return {
// getTime: getInputVal.getTime,
// getSeconds: getInputVal.getSeconds,
};
},
// created() {},
methods: {
// renderHeader(h, { column, $index }, index) {
// return h('span', {}, [h('span', {}, '序号'), h('el-popover', { props: { placement: 'top-start', width: '200', trigger: 'hover', content: '礼品在小程序端的展示排序,序号越大,排序越靠前。' } }, [h('i', { slot: 'reference', class: 'iconfont icon-xinxixianshi' }, '')])]);
// },
}
};
</script>
<style scoped>
.section {
background: #fff;
margin: 24px;
padding: 24px;
}
.w-280 {
width: 280px;
}
.w-140 {
width: 140px;
}
.gift-info img {
width: 75px;
height: 75px;
border-radius: 4px;
padding: 4px;
border: 1px solid #dcdfe6;
}
.info-name {
display: inline-block;
vertical-align: top;
width: 60%;
}
.pro-ellipsis {
color: #303133;
height: 54px;
line-height: 18px;
/* width: 230px; */
font-size: 14px;
}
.category-ellipsis {
color: #909399;
font-size: 13px;
}
.el-icon-edit {
margin-left: 5px;
cursor: pointer;
}
.operate-span {
font-size: 13px;
cursor: pointer;
}
.intergral-edit .el-icon-edit {
display: none;
}
.intergral-edit:hover .el-icon-edit {
display: inline-block;
}
.icon-xinxixianshi {
margin-left: 5px;
color: #909399;
font-size: 14px;
cursor: pointer;
}
.page-info {
padding: 8px 16px;
box-sizing: border-box;
border-radius: 4px;
background: #f4f4f5;
color: #606266;
margin-bottom: 22px;
line-height: 1.5;
}
.page-info h3 {
font-size: 13px;
color: #606266;
margin-bottom: 4px;
}
.page-info .el-icon-info {
color: #1890ff;
margin-right: 10px;
font-size: 14px;
}
</style>
<template>
<div class="mall-section-container">
<div class="mall-content-section">
<div class="mall-content-title">
<el-breadcrumb separator="/">
<el-breadcrumb-item :to="{ path: '' }">
<a href="/report/#/memberSummary">首页</a>
</el-breadcrumb-item>
<el-breadcrumb-item>积分商城</el-breadcrumb-item>
<el-breadcrumb-item>活动</el-breadcrumb-item>
<el-breadcrumb-item>秒杀</el-breadcrumb-item>
</el-breadcrumb>
<h3>
<span>秒杀</span>
</h3>
</div>
<div class="section">11111</div>
</div>
</div>
</template>
<script>
// import qs from 'qs';
// import request from '../../../service/request.js';
export default {
data() {
return {};
},
// created() {},
methods: {
// renderHeader(h, { column, $index }, index) {
// return h('span', {}, [h('span', {}, '序号'), h('el-popover', { props: { placement: 'top-start', width: '200', trigger: 'hover', content: '礼品在小程序端的展示排序,序号越大,排序越靠前。' } }, [h('i', { slot: 'reference', class: 'iconfont icon-xinxixianshi' }, '')])]);
// },
}
};
</script>
<style scoped>
.section {
background: #fff;
margin: 24px;
padding: 24px;
}
.w-280 {
width: 280px;
}
.w-140 {
width: 140px;
}
.gift-info img {
width: 75px;
height: 75px;
border-radius: 4px;
padding: 4px;
border: 1px solid #dcdfe6;
}
.info-name {
display: inline-block;
vertical-align: top;
width: 60%;
}
.pro-ellipsis {
color: #303133;
height: 54px;
line-height: 18px;
/* width: 230px; */
font-size: 14px;
}
.category-ellipsis {
color: #909399;
font-size: 13px;
}
.el-icon-edit {
margin-left: 5px;
cursor: pointer;
}
.operate-span {
font-size: 13px;
cursor: pointer;
}
.intergral-edit .el-icon-edit {
display: none;
}
.intergral-edit:hover .el-icon-edit {
display: inline-block;
}
.icon-xinxixianshi {
margin-left: 5px;
color: #909399;
font-size: 14px;
cursor: pointer;
}
.page-info {
padding: 8px 16px;
box-sizing: border-box;
border-radius: 4px;
background: #f4f4f5;
color: #606266;
margin-bottom: 22px;
line-height: 1.5;
}
.page-info h3 {
font-size: 13px;
color: #606266;
margin-bottom: 4px;
}
.page-info .el-icon-info {
color: #1890ff;
margin-right: 10px;
font-size: 14px;
}
</style>
<template>
<div class="mall-section-container">
<div class="mall-content-section">
<div class="mall-content-title">
<el-breadcrumb separator="/">
<el-breadcrumb-item :to="{ path: '' }">
<a href="/report/#/memberSummary">首页</a>
</el-breadcrumb-item>
<el-breadcrumb-item>积分商城</el-breadcrumb-item>
<el-breadcrumb-item>商品</el-breadcrumb-item>
<el-breadcrumb-item>偏好统计</el-breadcrumb-item>
</el-breadcrumb>
<h3>
<span>售罄礼品偏好统计</span>
</h3>
</div>
<div class="section">
<div class="operate-top">
<div>
<el-input v-model="searchValue" placeholder="请输入礼品名称/编码进行搜索" prefix-icon="el-icon-search" clearable class="w-280" @change="getSearchList('1')" @clear="getSearchList('1')"></el-input>
</div>
</div>
<div v-loading="loading">
<el-table :data="tableData" style="width: 100%" @sort-change="sortChange">
<el-table-column label="礼品">
<template slot-scope="{ row }">
<div class="gift-info">
<img :src="scope.row.mainImageUrl" alt />
<div class="info-name">
<p class="pro-ellipsis">{{ row.proName }}</p>
<p class="category-ellipsis">编码:{{ proCode }}</p>
</div>
</div>
</template>
</el-table-column>
<el-table-column label="统计开始时间"></el-table-column>
<el-table-column label="当前人数" prop="people" sortable="custom" :render-header="renderHeader">
<template slot-scope="{ row }"
><span @click="removeMutil(row)">{{ row.people }}</span></template
>
</el-table-column>
<el-table-column label="操作">
<template slot-scope="{ row }"><el-button type="text" @click="checkDistribution(row)">查看分布</el-button></template>
</el-table-column>
<template slot="empty">
<div class="no-data-wrap">
<div class="no-data-icon">
<img src="../../../../static/img/no-data_icon.png" />
</div>
<p>暂无数据</p>
</div>
</template>
</el-table>
<div class="pagination-conteiner" v-show="tableData.length > 0">
<div class="pagination">
<dm-pagination v-if="total != 0" background @size-change="getSearchList('1')" @current-change="getSearchList" :current-page="query.currentPage" :page-sizes="pageSizes" :page-size="query.pageSize" layout="total, sizes, prev, pager, next" :total="total"></dm-pagination>
</div>
</div>
</div>
</div>
<el-dialog title="查看分布" :visible.sync="dialogVisible" width="40%">
<div v-loading="dialogLoading">
<span>这是一段信息</span>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="dialogVisible = false">关闭</el-button>
</span>
</div>
</el-dialog>
</div>
</div>
</template>
<script>
// import qs from 'qs';
import request from '../../../service/request.js';
export default {
data() {
return {
loading: false,
dialogLoading: false,
query: {
searchValue: '',
pageSize: 20,
currentPage: 1,
sortType: '',
sortColumn: ''
},
pageSizes: '',
total: '',
tableData: [],
dialogVisible: false
};
},
created() {
this.getSearchList();
},
methods: {
renderHeader(h, { column, $index }, index) {
return h('span', {}, [h('span', {}, '序号'), h('el-popover', { props: { placement: 'top-start', width: '200', trigger: 'hover', content: '点击次数将会根据会员去重。' } }, [h('i', { slot: 'reference', class: 'iconfont icon-xinxixianshi' }, '')])]);
},
getSearchList(value) {
if (value) {
this.query.currentPage = 1;
}
let params = {
...this.query
};
this.loading = true;
request.get('/api-integral-mall/get-subscribe-page', { params }).then(res => {
if (res.data.errorCode === 0) {
let resResult = res.data.result;
this.tableData = resResult.result;
this.total = resResult.totalCount;
this.pageSizes = resResult.totalPage;
this.loading = false;
} else {
this.$message.error(res.data.message);
this.loading = false;
}
});
},
checkDistribution(value) {
console.log(value);
this.dialogVisible = true;
let params = {
id: value.id
};
this.dialogLoading = true;
request
.get('/api-integral-mall/get-subscribe-info', { params })
.then(res => {
if (res.data.errorCode === 0) {
console.log(res.data.result);
}
})
.finally(() => (this.dialogLoading = false));
},
removeMutil(value) {
console.log(value);
let params = {
id: value.id
};
request.get('/api-integral-mall/distinct-subscribe', { params }).then(res => {
if (res.data.errorCode === 0) {
console.log(res.data.result);
}
});
},
sortChange(value) {
this.sortColumn = value.prop;
if (value.order == 'ascending') {
this.sortType = 'asc';
} else if (value.order == 'descending') {
this.sortType = 'desc';
}
this.getSearchList();
}
}
// components: {}
};
</script>
<style scoped>
.section {
background: #fff;
margin: 24px;
padding: 24px;
}
.w-280 {
width: 280px;
}
.w-140 {
width: 140px;
}
.gift-info img {
width: 75px;
height: 75px;
border-radius: 4px;
padding: 4px;
border: 1px solid #dcdfe6;
}
.info-name {
display: inline-block;
vertical-align: top;
width: 60%;
}
.pro-ellipsis {
color: #303133;
height: 54px;
line-height: 18px;
font-size: 14px;
}
.category-ellipsis {
color: #909399;
font-size: 13px;
}
</style>
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