Commit 6c9eb2bb by zhangmeng

fix:卡券领取记录关注时间改为核销时间

parent 1be98d4e
...@@ -271,16 +271,19 @@ ...@@ -271,16 +271,19 @@
display: inline-block; display: inline-block;
width: 200px; width: 200px;
height: 200px; height: 200px;
margin: 10px auto;
} }
&--desc { &--desc {
color: #000; color: #000;
font-size: 12px; font-size: 12px;
width: 200px; width: 200px;
line-height:20px; line-height: 20px;
overflow:hidden; text-align: left;
text-overflow:ellipsis; overflow: hidden;
display:-webkit-box; text-overflow: ellipsis;
-webkit-line-clamp:4; display: -webkit-box;
-webkit-box-orient:vertical -webkit-line-clamp: 4;
-webkit-box-orient: vertical;
margin: 10px auto;
} }
} }
...@@ -2230,6 +2230,7 @@ export default { ...@@ -2230,6 +2230,7 @@ export default {
font-size: 14px; font-size: 14px;
padding-right: 10px; padding-right: 10px;
vertical-align: middle; vertical-align: middle;
color:#303133;
} }
.el-select+.el-select{ .el-select+.el-select{
......
import Vue from 'vue' import Vue from 'vue';
import App from './App' import App from './App';
import router from './router' import router from './router';
import store from './store' import store from './store';
import {axios} from './service/api/index' import {axios} from './service/api/index';
import directives from './directives' import directives from './directives';
import ElementUI from 'element-ui' import ElementUI from 'element-ui';
import vueGicHeader from '@gic-test/vue-gic-header' import vueGicHeader from '@gic-test/vue-gic-header';
import vueGicFooter from '@gic-test/vue-gic-footer' import vueGicFooter from '@gic-test/vue-gic-footer';
import vueGicAsideMenu from '@/components/aside-menu' import vueGicAsideMenu from '@/components/aside-menu';
import vueGicCard from '@gic-test/vue-gic-card' import vueGicCard from '@gic-test/vue-gic-card';
import vueGicStore from '@gic-test/vue-gic-store' import vueGicStore from '@gic-test/vue-gic-store';
import vueGicStoreLinkage from '@gic-test/vue-gic-store-linkage/src/lib' import vueGicStoreLinkage from '@gic-test/vue-gic-store-linkage/src/lib';
import vueGicStoreGroup from '@gic-test/vue-gic-store-group' import vueGicStoreGroup from '@gic-test/vue-gic-store-group';
import vueGicPeople from '@gic-test/vue-gic-people/src/lib' import vueGicPeople from '@gic-test/vue-gic-people/src/lib';
import vueGicConfirmPeople from '@gic-test/vue-gic-confirm-people/src/lib' import vueGicConfirmPeople from '@gic-test/vue-gic-confirm-people/src/lib';
import vueGicImgPreview from '@gic-test/vue-gic-img-preview' import vueGicImgPreview from '@gic-test/vue-gic-img-preview';
import { gicStoreCard } from '@gic-test/vue-gic-store-new/src/lib' import { gicStoreCard } from '@gic-test/vue-gic-store-new/src/lib';
import packele from 'packele' import packele from 'packele';
Vue.config.productionTip = false Vue.config.productionTip = false;
Vue.use(packele) Vue.use(packele);
Vue.use(ElementUI) Vue.use(ElementUI);
Vue.use(vueGicHeader) Vue.use(vueGicHeader);
Vue.use(vueGicFooter) Vue.use(vueGicFooter);
Vue.use(vueGicAsideMenu) Vue.use(vueGicAsideMenu);
Vue.use(vueGicCard) Vue.use(vueGicCard);
Vue.use(vueGicStore) Vue.use(vueGicStore);
Vue.use(vueGicStoreLinkage) Vue.use(vueGicStoreLinkage);
Vue.use(vueGicStoreGroup) Vue.use(vueGicStoreGroup);
Vue.use(vueGicPeople) Vue.use(vueGicPeople);
Vue.use(vueGicConfirmPeople) Vue.use(vueGicConfirmPeople);
Vue.use(vueGicImgPreview) Vue.use(vueGicImgPreview);
Vue.use(gicStoreCard) Vue.use(gicStoreCard);
Vue.prototype.axios = axios; Vue.prototype.axios = axios;
Vue.prototype.axios.withCredentials = true Vue.prototype.axios.withCredentials = true;
Object.keys(directives).map(item => Vue.directive(item, directives[item])); Object.keys(directives).map(item => Vue.directive(item, directives[item]));
window.$bus = new Vue(); window.$bus = new Vue();
let flag = false let flag = false;
Vue.prototype.$tips = function ({message = '提示',type = 'success'}) { Vue.prototype.$tips = function ({message = '提示',type = 'success'}) {
if (flag) { return } if (flag) { return }
else {this.$message({message,type})} else {this.$message({message,type})}
flag = true; flag = true;
setTimeout(_ => {flag = false},1000) setTimeout(_ => {flag = false},1000);
} }
/* eslint-disable no-new */ /* eslint-disable no-new */
new Vue({ new Vue({
...@@ -49,4 +49,4 @@ new Vue({ ...@@ -49,4 +49,4 @@ new Vue({
store, store,
components: { App }, components: { App },
template: '<App/>' template: '<App/>'
}) });
import Vue from 'vue' import Vue from 'vue';
import axios from 'axios' import axios from 'axios';
import config from '@/config' import config from '@/config';
import { log } from '@/utils' import { log } from '@/utils';
import qs from 'qs' import qs from 'qs';
import Router from 'vue-router' import Router from 'vue-router';
const router = new Router(); const router = new Router();
// 加载最小时间 // 加载最小时间
const MINI_TIME = 300 const MINI_TIME = 300;
// 超时时间 // 超时时间
let TIME_OUT_MAX = 20000 let TIME_OUT_MAX = 20000;
// 环境value // 环境value
let _isDev = process.env.NODE_ENV === 'development' let _isDev = process.env.NODE_ENV === 'development';
// 请求接口host // 请求接口host
let _apiHost = config.api let _apiHost = config.api;
// 请求组(判断当前请求数) // 请求组(判断当前请求数)
let _requests = [] let _requests = [];
//创建一个请求实例 //创建一个请求实例
const instance = axios.create({ const instance = axios.create({
baseURL: _apiHost, baseURL: _apiHost,
timeout: TIME_OUT_MAX, timeout: TIME_OUT_MAX,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, headers: {'Content-Type': 'application/x-www-form-urlencoded'},
}) });
/** /**
* 添加请求,显示loading * 添加请求,显示loading
* @param {请求配置} config * @param {请求配置} config
...@@ -112,25 +112,23 @@ const requests = (url, data = {},contentTypeIsJSON = false, isSilence = false, m ...@@ -112,25 +112,23 @@ const requests = (url, data = {},contentTypeIsJSON = false, isSilence = false, m
pushRequest(_random) pushRequest(_random)
}, MINI_TIME) }, MINI_TIME)
} }
instance(_opts) instance(_opts).then(res => {
.then(res => { clearTimeout(_timer)
clearTimeout(_timer) popRequest(_random)
popRequest(_random) if (res.data.errorCode !== 0) {
if (res.data.errorCode !== 0) { reject(res);
reject(res); handlerErr(res.data.errorCode,res.data.message);
handlerErr(res.data.errorCode,res.data.message); } else {
} else { resolve(res.data)
resolve(res.data) }
} }).catch(res => {
}) clearTimeout(_timer)
.catch(res => { popRequest(_random)
clearTimeout(_timer) if (res) {
popRequest(_random) handlerErr(res.response.status,'接口异常')
if (res) { }
handlerErr(res.response.status,'接口异常') reject(res)
} })
reject(res)
})
}) })
} }
......
...@@ -8,18 +8,18 @@ ...@@ -8,18 +8,18 @@
<el-tab-pane label="H5链接" name="0"> <el-tab-pane label="H5链接" name="0">
<el-form-item label="链接类型"> <el-form-item label="链接类型">
<el-radio-group v-model="h5Type"> <el-radio-group v-model="h5Type">
<el-radio :label="0">内部链接</el-radio> <el-radio :label="1">内部链接</el-radio>
<el-radio :label="1">网址</el-radio> <el-radio :label="0">网址</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<span class="pl20 pb10">已选择链接:{{url || '--'}}</span> <p class="pl20 pb20">已选择链接:{{jumpUrlInfo.url || '--'}}</p>
<innerUrl class="ml30" v-if="h5Type === 0" @sendRightUrl="getRightUrl" @sendLeftUrl="getLeftUrl" @sendShopData="getShopData"></innerUrl> <innerUrl class="ml30" v-if="h5Type === 1" @sendRightUrl="getRightUrl" @sendLeftUrl="getLeftUrl" @sendShopData="getShopData"></innerUrl>
<div class="ml30 clearfix" v-if="h5Type === 1" > <div class="ml30 clearfix" v-if="h5Type === 0" >
<el-input v-model="url" class="w300" @blur="checkUrl"></el-input> <el-input v-model="url" class="w300" @blur="checkUrl" placeholder="请输入网址 http或https开头"></el-input>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="小程序链接" name="1"> <el-tab-pane label="小程序链接" name="1">
<span class="pl20 pb10">已选择链接:{{url || '--'}}</span> <p class="pt10 pl20 pb20">已选择链接:{{jumpUrlInfo.url || '--'}}</p>
<linktoolspage ref="childlinktoolspage" :isWx="true" :activeName="true" :showType="2" @linkSelect="linkSelect"/> <linktoolspage ref="childlinktoolspage" :isWx="true" :activeName="true" :showType="2" @linkSelect="linkSelect"/>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
...@@ -32,9 +32,7 @@ ...@@ -32,9 +32,7 @@
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import Vue from 'vue'; import Vue from 'vue';
import innerUrl from '@/components/innerUrl/innerUrl'; import innerUrl from '@/components/innerUrl/innerUrl';
import linktoolspage from '@/components/linktools/linktoolspage.vue'; import linktoolspage from '@/components/linktools/linktoolspage.vue';
...@@ -71,7 +69,8 @@ export default { ...@@ -71,7 +69,8 @@ export default {
linkText:'', linkText:'',
activeName:'0', activeName:'0',
url:'', url:'',
h5Type:0 h5Type:1,
jumpUrlInfo:{name:'',url:''}
} }
}, },
methods:{ methods:{
...@@ -79,16 +78,19 @@ export default { ...@@ -79,16 +78,19 @@ export default {
this.$emit('update:show',false); this.$emit('update:show',false);
}, },
submit() { submit() {
this.close(); // this.close();
this.transfromUrl();
}, },
getRightUrl(data){ getRightUrl(data){
console.log(data); console.log(data);
this.jumpUrlInfo = data;
}, },
getLeftUrl(data){ getLeftUrl(data){
console.log(data); console.log(data);
}, },
getShopData(data){ // 获取选择的门店id getShopData(data){ // 获取选择的门店id
console.log(data) console.log(data)
this.jumpUrlInfo = data;
}, },
// linktoolspage // linktoolspage
linkSelect(val) { // 选择小程序链接的返回值 linkSelect(val) { // 选择小程序链接的返回值
...@@ -99,7 +101,22 @@ export default { ...@@ -99,7 +101,22 @@ export default {
this.url = 'http://www.domain.com'; this.url = 'http://www.domain.com';
return; return;
} }
},
//转换 url
transfromUrl(url) {
let params = {
jumpUrlInfo:{
name:'',
url:''
},
urlType: this.activeName == '0' ? (this.h5Type) : 2,
requestProject:'marketing'
}
this.axios.post('/api-marketing/change-to-WXUrl',qs.stringify(params)).then(res => {
console.log(res);
})
} }
} }
} }
</script> </script>
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<el-option v-for="(item,index) in cardStatusOptions" :key="index" :label="item.label" :value="item.value"></el-option> <el-option v-for="(item,index) in cardStatusOptions" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
<span class="vertical-middle">领取时间:</span><el-date-picker v-model="dateTime" :clearable="false" @change="search" class="w250" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> <span class="vertical-middle">领取时间:</span><el-date-picker v-model="dateTime" :clearable="false" @change="search" class="w250" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
<span class="vertical-middle">关注时间:</span><el-date-picker v-model="dateTime2" @change="search" class="w250" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> <span class="vertical-middle">核销时间:</span><el-date-picker v-model="dateTime2" @change="search" class="w250" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</div> </div>
<!-- 列表 --> <!-- 列表 -->
<el-table tooltipEffect="light" :data="recordList" style="width: 100%" v-loading="recordLoading" @sort-change="sortList"> <el-table tooltipEffect="light" :data="recordList" style="width: 100%" v-loading="recordLoading" @sort-change="sortList">
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
{{formateDateTimeByType(scope.row.receiveTime,'yyyy-MM-dd-HH-mm')}} {{formateDateTimeByType(scope.row.receiveTime,'yyyy-MM-dd-HH-mm')}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="135" align="left" prop="writeOffTime" label="关注时间" fixed="left" sortable="custom"> <el-table-column width="135" align="left" prop="writeOffTime" label="核销时间" fixed="left" sortable="custom">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.useTime?formateDateTimeByType(scope.row.useTime,'yyyy-MM-dd-HH-mm'):'--'}} {{scope.row.useTime?formateDateTimeByType(scope.row.useTime,'yyyy-MM-dd-HH-mm'):'--'}}
</template> </template>
......
...@@ -88,7 +88,7 @@ ...@@ -88,7 +88,7 @@
<el-radio :label="2">会员筛选</el-radio> <el-radio :label="2">会员筛选</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="选择会员" v-if="form.joinQua === 2" class="w500"> <el-form-item label="选择会员" v-if="form.joinQua === 2">
<vue-gic-people :projectName="projectName" :useId="useId" :hasSearchData="hasSearchData" :sceneValue="sceneValue" ref="peopleFilter" @findFilter="findFilter" @getBackData="getBackData" @editHide= "editHide" @editShow="editShow" @hideBtn="hideBtn"/> <vue-gic-people :projectName="projectName" :useId="useId" :hasSearchData="hasSearchData" :sceneValue="sceneValue" ref="peopleFilter" @findFilter="findFilter" @getBackData="getBackData" @editHide= "editHide" @editShow="editShow" @hideBtn="hideBtn"/>
</el-form-item> </el-form-item>
<div class="width60 fl"> <div class="width60 fl">
...@@ -104,8 +104,7 @@ ...@@ -104,8 +104,7 @@
<div class="game-tips__preview__inner"> <div class="game-tips__preview__inner">
<p class="game-tips__preview--title">你还未满足参与游戏条件!</p> <p class="game-tips__preview--title">你还未满足参与游戏条件!</p>
<img class="game-tips__preview--img" :src="form.tipsImg.imgUrl || defaultImg" alt=""> <img class="game-tips__preview--img" :src="form.tipsImg.imgUrl || defaultImg" alt="">
<p class="game-tips__preview--desc">预览文字预览文字预览文字预览文字预览文字预览文字预览文字预览文字预览文字预览文字提示文字预览文字 <p class="game-tips__preview--desc">{{form.tipsText}}</p>
预览文字预览文字预览文字</p>
</div> </div>
</div> </div>
</div> </div>
......
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