Commit e7407e23 authored by leiqingsong's avatar leiqingsong

优惠券发放限制&活动专柜切换名称

parent cb885303
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>会员拉新</title> <title>注册会员</title>
<script src="../js/jquery-3.4.1.min.js"></script> <script src="../js/jquery-3.4.1.min.js"></script>
<style> <style>
html,body{ html,body{
......
<template> <template>
<div id="app"> <div id="app">
<loading v-if="LOADING" />
<router-view /> <router-view />
</div> </div>
</template> </template>
<script> <script>
import { getXToken } from "./utils/aCommon"; import { getXToken } from "./utils/aCommon";
import Loading from './components/loading';
import { mapState } from 'vuex';
getXToken(); getXToken();
export default { export default {
name: "App", name: "App",
components: { Loading },
computed: {
...mapState(['LOADING'])
}
}; };
</script> </script>
......
...@@ -83,9 +83,9 @@ export function getAllCouponsByOyStallCode(id) { ...@@ -83,9 +83,9 @@ export function getAllCouponsByOyStallCode(id) {
/** /**
* 现有开展活动 * 现有开展活动
*/ */
export function getCurrentActive() { export function getCurrentActive(stallCode) {
return request({ return request({
url: `activity/underway`, url: `activity/underway?oyStallCode=${stallCode}`,
method: 'get' method: 'get'
}) })
} }
......
import request from '@/utils/aTestCF';
export function getTemplateList() {
return request({
url: 'template/list?pageNo=1&pageSize=10',
method: 'post'
})
}
\ No newline at end of file
<template> <template>
<div id="loading" v-if="show"> <div id="loading">
<van-loading type="spinner" size="80px"></van-loading> <van-loading type="spinner" size="80px"></van-loading>
</div> </div>
</template> </template>
...@@ -7,10 +7,8 @@ ...@@ -7,10 +7,8 @@
<script> <script>
export default { export default {
name: "loading", name: "loading",
// props: ["show"],
data() { data() {
return { return {
show: false
}; };
} }
}; };
......
...@@ -32,6 +32,11 @@ const routes = [ ...@@ -32,6 +32,11 @@ const routes = [
name: 'activeList', name: 'activeList',
component: () => import('../views/active/activeList.vue') component: () => import('../views/active/activeList.vue')
}, },
{
path: '/test',
name: 'Test',
component: () => import('../views/active/test')
},
{ {
path: '/createBigWheelActive', path: '/createBigWheelActive',
name: 'createBigWheelActive', name: 'createBigWheelActive',
......
export default {
namespace: true,
state: {
LOADING: false
},
mutations: {
showLoading(state) {
console.log('show-loading');
state.LOADING = true
},
hideLoading(state) {
console.log('hide-loading');
state.LOADING = false
}
},
}
\ No newline at end of file
import axios from 'axios'
import md5 from "js-md5"
import qs from 'qs'
import store from '@/store'
let BASE_API = "http://175.31.197.83:8084"
const zlog = console.log.bind(console)
// ztest
// 创建 axios 实例
const service = axios.create({
baseURL: BASE_API,
timeout: 20000,
paramsSerializer: params => qs.stringify(params, { arrayFormat: 'repeat' })
})
// request 拦截器
service.interceptors.request.use(
request => {
// zlog('--->request: request:', request)
store.commit('showLoading')
return request
},
error => {
store.commit('hideLoading')
Promise.reject(error)
}
)
// response 拦截器
service.interceptors.response.use(
response => {
store.commit('hideLoading')
return response
},
error => {
store.commit('hideLoading')
return Promise.reject(error)
}
)
export default service
\ No newline at end of file
...@@ -73,11 +73,13 @@ export default { ...@@ -73,11 +73,13 @@ export default {
couponList: [], couponList: [],
wheel_params: { wheel_params: {
pageNo: 1, pageNo: 1,
pageSize: 3 pageSize: 3,
oyStallCode: sessionStorage.getItem("oyStallCode")
}, },
coupon_params: { coupon_params: {
pageNo: 1, pageNo: 1,
pageSize: 3 pageSize: 3,
oyStallCode: sessionStorage.getItem("oyStallCode")
} }
}; };
}, },
......
...@@ -59,9 +59,17 @@ ...@@ -59,9 +59,17 @@
<van-cell :required="true" title="活动Logo" style="font-size: 14px"> <van-cell :required="true" title="活动Logo" style="font-size: 14px">
<van-uploader :max-count="1" v-model="logo_imgs" :after-read="afterLogoRead"></van-uploader> <van-uploader :max-count="1" v-model="logo_imgs" :after-read="afterLogoRead"></van-uploader>
</van-cell> </van-cell>
<van-cell :required="true" title="单日最大发放数量"> <van-cell
:required="true"
title="选择优惠券"
:value="checked_coupon.name"
is-link
@click="handleChoseCoupon"
center
/>
<van-cell :required="true" title="总发放数量">
<van-stepper <van-stepper
v-model="maxNumber" v-model="totalLimit"
:show-plus="false" :show-plus="false"
:show-minus="false" :show-minus="false"
input-width="140px" input-width="140px"
...@@ -76,22 +84,22 @@ ...@@ -76,22 +84,22 @@
class="right noborder" class="right noborder"
readonly readonly
clickable clickable
:value="maxNumber" :value="totalLimit"
placeholder="请输入限制次数" placeholder="请输入限制次数"
@touchstart.native.stop="maxNumber_show = true" @touchstart.native.stop="totalLimit_show = true"
/> />
<van-number-keyboard <van-number-keyboard
v-model="maxNumber" v-model="totalLimit"
:show="maxNumber_show" :show="totalLimit_show"
:maxlength="6" :maxlength="6"
@blur="maxNumber_show = false" @blur="totalLimit_show = false"
/> />
</div> </div>
</template>--> </template>-->
</van-cell> </van-cell>
<van-cell :required="true" title="发放数量"> <van-cell :required="true" title="单日最大发放数量">
<van-stepper <van-stepper
v-model="totalLimit" v-model="maxNumber"
:show-plus="false" :show-plus="false"
:show-minus="false" :show-minus="false"
input-width="140px" input-width="140px"
...@@ -106,27 +114,19 @@ ...@@ -106,27 +114,19 @@
class="right noborder" class="right noborder"
readonly readonly
clickable clickable
:value="totalLimit" :value="maxNumber"
placeholder="请输入限制次数" placeholder="请输入限制次数"
@touchstart.native.stop="totalLimit_show = true" @touchstart.native.stop="maxNumber_show = true"
/> />
<van-number-keyboard <van-number-keyboard
v-model="totalLimit" v-model="maxNumber"
:show="totalLimit_show" :show="maxNumber_show"
:maxlength="6" :maxlength="6"
@blur="totalLimit_show = false" @blur="maxNumber_show = false"
/> />
</div> </div>
</template>--> </template>-->
</van-cell> </van-cell>
<van-cell
:required="true"
title="选择优惠券"
:value="checked_coupon.name"
is-link
@click="handleChoseCoupon"
center
/>
</van-cell-group> </van-cell-group>
<!-- 活动描述 --> <!-- 活动描述 -->
<van-cell :required="true" class="detail"> <van-cell :required="true" class="detail">
...@@ -275,7 +275,8 @@ export default { ...@@ -275,7 +275,8 @@ export default {
res.data.forEach(i => { res.data.forEach(i => {
let item = i; let item = i;
// item.label = i.name + " ID:" + i.id; // item.label = i.name + " ID:" + i.id;
item.name = i.name + " ID:" + i.id + ' 剩余:' + i.validNumber + '张'; item.name =
i.name + " ID:" + i.id + " 剩余:" + i.validNumber + "张";
temp.push(item); temp.push(item);
}); });
this.coupons = temp; this.coupons = temp;
...@@ -328,7 +329,9 @@ export default { ...@@ -328,7 +329,9 @@ export default {
return false; return false;
} }
if (Number(this.totalLimit) > this.checked_coupon.validNumber) { if (Number(this.totalLimit) > this.checked_coupon.validNumber) {
this.$toast(`优惠券总发放数量不可大于当前优惠券剩余数量${this.checked_coupon.validNumber}`); this.$toast(
`优惠券总发放数量不可大于当前优惠券剩余数量${this.checked_coupon.validNumber}`
);
return false; return false;
} }
if (Number(this.maxNumber) > Number(this.totalLimit)) { if (Number(this.maxNumber) > Number(this.totalLimit)) {
...@@ -338,6 +341,7 @@ export default { ...@@ -338,6 +341,7 @@ export default {
let params = { let params = {
activityInfo: { activityInfo: {
id: 0, id: 0,
oyStallCode: sessionStorage.getItem("oyStallCode"),
activityName: this.title, activityName: this.title,
activityType: "coupon", activityType: "coupon",
startTime: this.startTime1, startTime: this.startTime1,
......
...@@ -721,6 +721,7 @@ export default { ...@@ -721,6 +721,7 @@ export default {
let params = { let params = {
activityInfo: { activityInfo: {
id: 0, id: 0,
oyStallCode: sessionStorage.getItem('oyStallCode'),
activityName: this.basicInfo.title, activityName: this.basicInfo.title,
activityType: "wheel", activityType: "wheel",
startTime: this.basicInfo.startTime1, startTime: this.basicInfo.startTime1,
......
<template>
<div id="page">
<p>测试</p>
</div>
</template>
<script>
import * as API_Test from '@/api/test'
export default {
name: 'test',
components: {},
data() {
return {
}
},
created(){
API_Test.getTemplateList().then(res=> {
console.log('成功了');
})
}
}
</script>
<style lang="scss">
</style>
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
@blur="codeShow = false" @blur="codeShow = false"
/> />
</div> </div>
</template> </template>
</van-cell> </van-cell>
<van-cell title="商户类型" style="font-size:14px;"> <van-cell title="商户类型" style="font-size:14px;">
<template slot="default"> <template slot="default">
...@@ -55,6 +55,20 @@ ...@@ -55,6 +55,20 @@
/> />
</template> </template>
</van-cell> </van-cell>
<van-cell title="是否商户券">
<van-radio-group v-model="addForm.lmshid" class="right">
<van-radio name="1" style="float:left;"></van-radio>
<van-radio name="0" style="float:right;"></van-radio>
</van-radio-group>
</van-cell>
<!-- <van-cell title="品牌代码">
<van-field
v-model="addForm.brand"
placeholder="请输入品牌代码"
class="right"
style="font-size:14px;"
/>
</van-cell> -->
<van-cell title="优惠券类型" style="font-size:14px;"> <van-cell title="优惠券类型" style="font-size:14px;">
<template slot="default"> <template slot="default">
<div class="npbr"> <div class="npbr">
...@@ -243,6 +257,8 @@ export default { ...@@ -243,6 +257,8 @@ export default {
name: "", name: "",
begin_date: "", begin_date: "",
end_date: "", end_date: "",
lmshid: '',
brand: '',
type: "", type: "",
unit: "", unit: "",
instruction: "", instruction: "",
...@@ -268,7 +284,6 @@ export default { ...@@ -268,7 +284,6 @@ export default {
this.minStartDate = new Date((new Date() / 1000 + 3600) * 1000); this.minStartDate = new Date((new Date() / 1000 + 3600) * 1000);
this.minEndDate = new Date((new Date() / 1000 + 86400) * 1000); this.minEndDate = new Date((new Date() / 1000 + 86400) * 1000);
this.create_times = 1; this.create_times = 1;
console.log("create_times", this.create_times);
}, },
methods: { methods: {
timeFormat(time) { timeFormat(time) {
...@@ -335,6 +350,10 @@ export default { ...@@ -335,6 +350,10 @@ export default {
this.$toast("请输入优惠券名称"); this.$toast("请输入优惠券名称");
return false; return false;
} }
if (!this.addForm.lmshid) {
this.$toast("请选择是否为商户券");
return false;
}
if (!this.addForm.type) { if (!this.addForm.type) {
this.$toast("请选择优惠券类型"); this.$toast("请选择优惠券类型");
return false; return false;
...@@ -351,7 +370,7 @@ export default { ...@@ -351,7 +370,7 @@ export default {
this.$toast("请输入结束时间"); this.$toast("请输入结束时间");
return false; return false;
} }
if(new Date(this.beginDate) >= new Date(this.endDate)) { if (new Date(this.beginDate) >= new Date(this.endDate)) {
this.$toast("开始时间不能大于等于结束时间!"); this.$toast("开始时间不能大于等于结束时间!");
return false; return false;
} }
...@@ -382,7 +401,6 @@ export default { ...@@ -382,7 +401,6 @@ export default {
addCoupon(this.addForm) addCoupon(this.addForm)
.then(res => { .then(res => {
this.create_times = 1; this.create_times = 1;
console.log(res, "res");
if (res.errorCode == "fail") { if (res.errorCode == "fail") {
this.$toast("活动创建失败!"); this.$toast("活动创建失败!");
} else { } else {
...@@ -391,7 +409,6 @@ export default { ...@@ -391,7 +409,6 @@ export default {
}) })
.catch(error => { .catch(error => {
this.create_times = 1; this.create_times = 1;
console.log(error);
}); });
} }
} }
......
...@@ -176,8 +176,11 @@ export default { ...@@ -176,8 +176,11 @@ export default {
}, },
// 筛选状态 // 筛选状态
handleStatus(value, isCheck) { handleStatus(value, isCheck) {
const currentStatus = this.statusData.filter(item => item.value === value)[0] if (!isCheck) {
currentStatus.isCheck = !currentStatus.isCheck this.statusData.map(item => {
item.isCheck = item.value === value
})
}
}, },
// 配置 // 配置
toConfig(id) { toConfig(id) {
......
...@@ -241,7 +241,12 @@ export default { ...@@ -241,7 +241,12 @@ export default {
this.zReadyUserId() this.zReadyUserId()
this.zTestGetNowUrlInfo() this.zTestGetNowUrlInfo()
} }
this.GET_CurrentActive() },
mounted() {
if(sessionStorage.getItem('oyStallCode')) {
console.log('oyStallCode', sessionStorage.getItem('oyStallCode'));
this.GET_CurrentActive();
}
}, },
methods: { methods: {
// 跳转到 活动详情 // 跳转到 活动详情
...@@ -262,7 +267,8 @@ export default { ...@@ -262,7 +267,8 @@ export default {
}, },
// 获取当前 活动 // 获取当前 活动
GET_CurrentActive() { GET_CurrentActive() {
getCurrentActive().then(res => { let code = sessionStorage.getItem('oyStallCode');
getCurrentActive(code).then(res => {
this.currentActives = res.data || []; this.currentActives = res.data || [];
}) })
}, },
...@@ -317,8 +323,6 @@ export default { ...@@ -317,8 +323,6 @@ export default {
headers: headerData headers: headerData
}) })
.then(res => { .then(res => {
console.log(res);
if(res.data.data != null) { if(res.data.data != null) {
if(res.data != []) { if(res.data != []) {
sessionStorage.setItem("personalFan", res.data.data.length) sessionStorage.setItem("personalFan", res.data.data.length)
...@@ -328,13 +332,11 @@ export default { ...@@ -328,13 +332,11 @@ export default {
resolve('') resolve('')
} }
}else { }else {
console.log('zheli');
if(res.data.errorCode == "84061") { if(res.data.errorCode == "84061") {
sessionStorage.setItem("personalFan", 0) sessionStorage.setItem("personalFan", 0)
resolve(0) resolve(0)
}else { }else {
console.log('?');
sessionStorage.setItem("personalFan", '') sessionStorage.setItem("personalFan", '')
resolve('') resolve('')
} }
...@@ -400,8 +402,6 @@ export default { ...@@ -400,8 +402,6 @@ export default {
JsonStr.end_time = timeNow; JsonStr.end_time = timeNow;
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
axios({ axios({
// url:
// "http://175.31.197.83:8085/workWx/auth/contact/getUserBehaviorData",
url: "http://175.31.197.83:8085/workWx/auth/contact/getUserBehaviorData", url: "http://175.31.197.83:8085/workWx/auth/contact/getUserBehaviorData",
method: "post", method: "post",
headers: { headers: {
...@@ -458,7 +458,6 @@ export default { ...@@ -458,7 +458,6 @@ export default {
}) })
}, },
getAllInfo(list) { getAllInfo(list) {
console.log('getAllInfo');
Promise.all([this.getUserInfo(), this.getFans(), this.getAllFans(),this.getAddFans(1,this.zcache.userId),this.getAddFans(2,list), this.getStore()]).then(res => { Promise.all([this.getUserInfo(), this.getFans(), this.getAllFans(),this.getAddFans(1,this.zcache.userId),this.getAddFans(2,list), this.getStore()]).then(res => {
console.log('进来了'); console.log('进来了');
console.log(res,'promise'); console.log(res,'promise');
...@@ -539,8 +538,7 @@ export default { ...@@ -539,8 +538,7 @@ export default {
this.zcache.code = String(this.$route.query.code) this.zcache.code = String(this.$route.query.code)
this.url = this.zcache.nowUrl this.url = this.zcache.nowUrl
}, },
zTestPreAuthCode() { zTestPreAuthCode() {
console.log('获取code')
this.overlayShow = true this.overlayShow = true
// alert('获取code') // alert('获取code')
const basicInfo = { const basicInfo = {
...@@ -596,13 +594,12 @@ export default { ...@@ -596,13 +594,12 @@ export default {
}); });
}, },
// 获取店铺code // 获取店铺code
getUserFromId(id) { getUserFromId(id) {
console.log(1);
let userName = id; let userName = id;
getUserInfoByUserId({ userName }).then(res => { getUserInfoByUserId({ userName }).then(res => {
sessionStorage.setItem("oyStallCode", res.data[0].oyStallCode) sessionStorage.setItem("oyStallCode", res.data[0].oyStallCode)
this.oyStallCode = res.data[0].oyStallCode; this.oyStallCode = res.data[0].oyStallCode;
this.GET_CurrentActive()
// this.getAllInfo() // this.getAllInfo()
this.getAllNewFans() this.getAllNewFans()
}) })
......
...@@ -182,6 +182,7 @@ export default { ...@@ -182,6 +182,7 @@ export default {
parentId: [ parentId: [
{ required: true, message: "请选择上级部门", trigger: "change" } { required: true, message: "请选择上级部门", trigger: "change" }
], ],
oyStallName: [{ required: true, message: '请填写门店名称', trigger: "change" }],
oyStallCode: [{ required: true, validator: idNumber, trigger: "blur" }], oyStallCode: [{ required: true, validator: idNumber, trigger: "blur" }],
oyStallMemberId: [ oyStallMemberId: [
{ required: false, validator: memberNumber, trigger: "blur" } { required: false, validator: memberNumber, trigger: "blur" }
......
...@@ -145,6 +145,7 @@ export default { ...@@ -145,6 +145,7 @@ export default {
{ max: 50, message: "长度在50个字符以内", trigger: "blur" }, { max: 50, message: "长度在50个字符以内", trigger: "blur" },
], ],
parentId: [{ required: true, message: "请选择上级部门", trigger: "change" }], parentId: [{ required: true, message: "请选择上级部门", trigger: "change" }],
oyStallName: [{ required: true, message: '请填写门店名称', trigger: "change" }],
oyStallCode: [{ required: true, validator: idNumber, trigger: "blur" }], oyStallCode: [{ required: true, validator: idNumber, trigger: "blur" }],
clerkIds: [{ required: true, message: "主管不能为空", trigger: "blur" }] clerkIds: [{ required: true, message: "主管不能为空", trigger: "blur" }]
}, },
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>会员拉新</title> <title>注册会员</title>
<script src="../js/jquery-3.4.1.min.js"></script> <script src="../js/jquery-3.4.1.min.js"></script>
<style> <style>
html, html,
......
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