Commit 24bfba42 by crushh

update: 完成

parent 25b7842d
......@@ -852,7 +852,6 @@ export default {
integralMallProId: '',
},
textStock: 0, // 文本券码库存数
groupIdDisableList: [],
creatorId: '', // 权限id
getSaveData: '',
sceneValue: 'member', // 场景值
......@@ -877,6 +876,7 @@ export default {
isEdit: this.$route.meta.type == 'edit',
isAdd: this.$route.meta.type == 'add',
isCopy: this.$route.meta.type == 'copy',
isInfo: this.$route.meta.type == 'info',
isCorrect: true, // 校验阶梯价的验证是否可以保存阶梯价
enterpriseId: '', // 商户id
specialOrder: false, // 是否定制
......@@ -922,14 +922,13 @@ export default {
this.giftType = Number(this.$route.query.type); // 列表上实物是1虚拟是0
this.giftId = this.$route.query.giftId;
this.mallProId = this.$route.query.giftId;
if (this.$route.query.proReferId !== '-1') {
if (this.isEdit || this.isInfo) {
this.giftForm.proReferId = this.$route.query.proReferId;
} else {
this.giftForm.proReferId = '';
this.getMemberGradeList(); // 会员等级列表
this.isNew = true;
}
this.getCategoryOptions(); // 分类数据
if (this.giftType === 1) {
......@@ -1117,14 +1116,6 @@ export default {
});
},
getDisGroupList (arr) {
this.groupIdDisableList = arr;
// console.log(this.mallProId);
// if (this.giftId !== '-1') {
// this.getInfo();
// }
},
// 获取卡券详情
getCardInfo () {
const params = {
......@@ -1247,6 +1238,11 @@ export default {
this.giftForm.cashCost = data.cashCost; // 现金
this.giftForm.virtualStock = data.virtualStock; // 库存
this.currentStock = data.virtualStock;
if (this.isCopy) {
console.log('copy回显');
this.giftForm.virtualStock = ''; // 库存
this.currentStock = 0;
}
this.giftForm.proCodeQuery = data.proCodeQuery; // 条形码
this.giftForm.costValue = data.costValue; // 礼品成本
this.giftForm.marketPrice = data.marketPrice; // 市场价
......@@ -1283,7 +1279,7 @@ export default {
}
})
.finally(() => {
if (this.$route.query.proReferId !== '-1') {
if (this.isEdit || this.isInfo) {
const list = this.memberGradeList.filter(item => {
return this.memberGrade.indexOf(item.gradeId) != -1;
});
......@@ -1293,10 +1289,9 @@ export default {
gradeName: item.gradeName,
});
});
console.log(this.ladderMemberGrade);
}
});
this.giftForm.proReferId = data.proReferId;
this.giftForm.proReferId = this.isEdit || this.isInfo ? data.proReferId : '';
this.refash = !this.refash;
const giftFormFileList = [];
this.giftForm.images = [];
......
......@@ -50,11 +50,27 @@
<el-radio v-model="ruleForm.memberType" :label="1">
全部会员
</el-radio>
<el-radio v-model="ruleForm.memberType" :label="4">
门店筛选
</el-radio>
<el-radio v-model="ruleForm.memberType" :label="3">
会员筛选
</el-radio>
</el-form-item>
<el-form-item v-show="ruleForm.memberType === 1">
<span class="tips">提示:单商户下【会员】类型的上架规则只支持1条</span>
</el-form-item>
<el-form-item v-show="ruleForm.memberType === 4">
<vue-gic-store-new
v-if="isAdd||uuid"
:isAdd="isAdd"
:uuid.sync="uuid"
ref="storeGroup"
@store-change="storeChange"
/>
</el-form-item>
<el-form-item v-show="ruleForm.memberType === 3">
<span class="tips">提示:单商户下【会员筛选】类型的上架规则最多支持20条 {{ `${memberTypeTotal}/20` }}</span>
<vue-gic-people
v-bind="storeParams"
:projectName="projectName"
......@@ -107,7 +123,7 @@ export default {
breadcrumbTitle: '新建上架规则',
fixedWidth: document.documentElement.clientWidth - 200,
ruleForm: {
memberType: 1,
memberType: 1, // 1:全部会员 3 会员筛选 4 门店筛选
},
rules: {
ruleTitle: [
......@@ -127,6 +143,8 @@ export default {
isCopy: this.$route.meta.type === 'copy',
loading: false,
btnLoading: false,
uuid: '',
memberTypeTotal: 0,
};
},
computed: {
......@@ -139,6 +157,7 @@ export default {
this.integralMallProRuleId = this.$route.params.id;
this.getDatail(this.$route.params.id);
}
this.memberTypeNum();
const obj = {
edit: '编辑上架规则',
add: '新建上架规则',
......@@ -147,6 +166,10 @@ export default {
this.breadcrumbTitle = obj[this.$route.meta.type];
},
methods: {
/** 门店筛选器 */
storeChange (storeId) {
this.uuid = storeId;
},
/** 人群筛选器 */
cancelFilter () { // 取消
this.$refs.peopleFilter.cancelSet();
......@@ -181,7 +204,7 @@ export default {
request.get('/api-integral-mall/get-rule', { params: { integralMallProRuleId } }).then(res => {
if (res.data.result) {
this.ruleForm = res.data.result;
if (this.ruleForm.memberType == 3) {
if (this.ruleForm.memberType == 3) { // 人群筛选器回显
this.hasSearchData = this.ruleForm.filterJson;
this.useId = this.ruleForm.searchId;
if (this.isCopy) {
......@@ -192,6 +215,9 @@ export default {
this.ruleForm.searchJson = res.data.result && res.data.result.detail;
});
}
} else if (this.ruleForm.memberType == 4) { // 门店筛选器回显
this.uuid = JSON.parse(this.ruleForm.filterJson).storeWidgetId;
console.log(this.uuid);
}
}
}).finally(() => {
......@@ -226,10 +252,24 @@ export default {
this.$refs.peopleFilter.confirmSet().then(() => {
this.submitRequest();
});
} else if (this.ruleForm.memberType == 4) {
this.$refs.storeGroup.getStoreConfig().then(data => {
let type = 1;
if (data.type != 0) {
type = 2;
}
this.ruleForm.filterJson = JSON.stringify({ storeMode: type, storeWidgetId: this.uuid });
this.submitRequest();
});
} else {
this.submitRequest();
}
},
memberTypeNum () {
request.get('/api-integral-mall/list-rule', { params: { memberType: 3 } }).then(res => {
this.memberTypeTotal = res.data.result.length || 0;
});
},
},
};
......
......@@ -18,7 +18,7 @@
<div class="search-wrap">
<div class="table-page-search-wrapper">
<el-input
v-model="ruleTitle"
v-model="form.ruleTitle"
placeholder="请输入上架规则名称"
prefix-icon="el-icon-search"
clearable
......@@ -26,17 +26,36 @@
@keyup.enter.native="getList"
@clear="getList"
/>
<el-select
v-model="form.memberType"
placeholder="类型"
clearable
class="w-140"
@change="getList"
>
<el-option label="全部会员" :value="1" />
<el-option label="会员筛选" :value="3" />
<el-option label="门店筛选" :value="4" />
</el-select>
<el-checkbox
style="margin-left:10px;"
v-model="form.showSelfFlag"
label="仅看本人"
border
:true-label="1"
:false-label="0"
@change="getList"
/>
</div>
<el-button
type="primary"
size="small"
:disabled="tableDate.length>=20"
@click="$router.push('/addRule')"
v-if="$getButtonLimit($buttonCode.ruleListAdd)"
:limit-code="$buttonCode.ruleListAdd"
>
新建上架规则({{ tableDate.length }}/20)
新建上架规则
</el-button>
</div>
<el-table
......@@ -64,6 +83,14 @@
</template>
</el-table-column>
<el-table-column
prop="memberType"
label="会员类型"
>
<template slot-scope="{row}">
{{ row.memberType | filterMemberType }}
</template>
</el-table-column>
<el-table-column
prop="relationCount"
label="已关联商品"
>
......@@ -124,7 +151,17 @@
</template>
</el-table-column>
</el-table>
<div class="pagination-conteiner" style="padding:10px 0 0 0;">
<div class="pagination">
<el-pagination
layout="prev, pager, next"
:current-page.sync="form.currentPage"
:page-size.sync="form.pageSize"
@current-change="getList"
:total="totalCount"
/>
</div>
</div>
<el-dialog
:title="`${type}关联商品`"
:visible.sync="dialogTableVisible"
......@@ -252,7 +289,7 @@
:current-page.sync="relateForm.currentPage"
:page-size.sync="relateForm.pageSize"
@current-change="getRelatingGoodsTable"
:total="totalCount"
:total="relateCount"
/>
</div>
</div>
......@@ -287,6 +324,21 @@ export default {
}
return str;
},
filterMemberType (val) {
let str = '';
switch (val) {
case 1:
str = '全部会员';
break;
case 3:
str = '会员筛选';
break;
case 4:
str = '门店筛选';
break;
}
return str;
},
},
data () {
......@@ -309,7 +361,14 @@ export default {
currentPage: 1,
ruleRelationFlag: '',
},
ruleTitle: '',
form: {
ruleTitle: '',
memberType: '',
showSelfFlag: 0,
currentPage: 1,
pageSize: 20,
},
relateCount: '',
totalCount: '',
integralMallProRuleId: '',
defaultImg: '../../../../static/img/pic_default.png',
......@@ -321,8 +380,10 @@ export default {
methods: {
getList () {
this.loading = true;
request.get('/api-integral-mall/list-rule', { params: { ruleTitle: this.ruleTitle } }).then(res => {
this.tableDate = res.data.result || [];
request.get('/api-integral-mall/page-rule', { params: this.form }).then(res => {
console.log(res);
this.tableDate = res.data.result.result || [];
this.totalCount = res.data.result.totalCount;
}).finally(_ => {
this.loading = false;
});
......@@ -393,7 +454,7 @@ export default {
const params = this.relateForm;
request.get('/api-integral-mall/page-rule-pro', { params }).then(res => {
this.relatingGoodsTable = res.data.result.result || [];
this.totalCount = res.data.result.totalCount;
this.relateCount = res.data.result.relateCount;
}).finally(_ => {
this.loading = false;
});
......
......@@ -166,6 +166,14 @@
>
失效
</el-button>
<el-button
type="text"
@click="open(scope.row)"
v-if="scope.row.isValid !== 1&&$getButtonLimit($buttonCode.deliverSetActive)"
:limit-code="$buttonCode.deliverSetActive"
>
启用
</el-button>
<el-popover
placement="top"
width="160"
......@@ -192,14 +200,6 @@
删除
</el-button>
</el-popover>
<el-button
type="text"
@click="open(scope.row)"
v-if="scope.row.isValid !== 1&&$getButtonLimit($buttonCode.deliverSetActive)"
:limit-code="$buttonCode.deliverSetActive"
>
启用
</el-button>
</div>
</template>
</el-table-column>
......
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