[NEW]DISC-列表页、封面页

This commit is contained in:
yuweiqi
2020-04-01 17:31:50 +08:00
parent ef634bf9d3
commit 42d17251ce
5 changed files with 209 additions and 48 deletions

View File

@@ -106,3 +106,12 @@ export function getShareKey(data) {
data
})
}
//DISC性格分析列表
export function discAnalysisList(data) {
return request({
url: getUrl('/customer/answer/queryList', 1),
method: 'post',
data
})
}

View File

@@ -62,7 +62,10 @@ let survey = [
//'/customer/question/getTableId', // id 查询 -- ok
'/customer/question/getAgentInfo' // 代理人详情
]
let whiteList = ['/customer/agent/getCustomersList', ...proposal, ...sale, ...agentEnter, ...claims, ...survey]
let manpower = [
'/customer/answer/queryList' //DISC性格分析
]
let whiteList = ['/customer/agent/getCustomersList', ...proposal, ...sale, ...agentEnter, ...claims, ...survey, ...manpower]
// 创建axios实例
const service = axios.create({

View File

@@ -0,0 +1,180 @@
<!-- DISC性格分析 - 统计列表 -->
<template>
<div class="discAnalysis-list">
<van-sticky>
<div class="top-table">
<van-row type="flex" align="center">
<van-col class="order" span="4">序号</van-col>
<van-col class="subTime" span="8">提交时间</van-col>
<van-col class="name" span="6">客户姓名</van-col>
<van-col class="button" span="6"></van-col>
</van-row>
</div>
</van-sticky>
<van-list
v-model="loading"
:immediate-check="false"
:finished="finished"
:finished-text="finishedText"
error-text="请求失败点击重新加载"
:error.sync="error"
@load="loadMore"
>
<div v-if="isSuccess">
<div v-if="answerList.length > 0">
<div class="main-table" v-for="(item, index) in answerList" :key="index">
<van-row type="flex" align="center">
<van-col class="order" span="4">{{ index + 1 }}</van-col>
<van-col class="subTime" span="8">{{ item.answerDate }}</van-col>
<van-col class="name" span="6">{{ item.customerName }}</van-col>
<van-col class="button" span="6">
<van-button type="danger" round size="small" class="mr5" @click="result(item)" v-no-more-click="1000">查看结果</van-button>
</van-col>
</van-row>
</div>
<van-row>
<van-button type="danger" class="bottom-btn mb20 mr20 ml20" style="width:90%" @click="share" v-no-more-click="1000">分享给客户</van-button>
</van-row>
</div>
<div v-else class="text-center">
<img class="mt40" src="@/assets/images/pic_page-non.png" />
<div class="fs17 mt40">暂无数据</div>
</div>
</div>
</van-list>
</div>
</template>
<script>
import { Sticky, Row, Col, List } from 'vant'
import { discAnalysisList } from '@/api/ebiz/manpower/manpower'
export default {
name: '',
filters: {},
data() {
return {
loading: false,
finished: false,
currentPage: 1, //当前页数
error: false,
finishedText: '',
pageSize: 5, //每页数据条数
isSuccess: false,
answerList: [] //答卷列表
}
},
watch: {},
created() {},
mounted() {
// document.body.style.backgroundColor = '#fff'
localStorage.setItem('DISC-answerList', '')
this.loadMore()
},
methods: {
//分页用
loadMore() {
let pageInfo = {
pageNum: this.currentPage,
pageSize: this.pageSize
}
this.getDiscAnalysisList(pageInfo)
},
//获取DISC统计列表数据
getDiscAnalysisList(pageInfo) {
let params = {
...pageInfo,
...{
agentCode: '',
tableCode: 'GFRS-DISC'
}
}
discAnalysisList(params).then(res => {
if (res.result == '0') {
this.isSuccess = true
this.currentPage++
this.loading = false
if (res.content == null) {
this.finished = true
this.loading = false
this.finishedText = ''
return
}
let answerList = res.content.answerList.list
this.answerList = this.answerList.concat(answerList)
if (answerList.length == 0) {
this.finishedText = ''
} else {
this.finishedText = '已经全部加载'
}
if (this.answerList.length == 0) {
this.isSuccess = false
}
this.loading = false
if (res.content.nextPage == 0) {
//当下一页为0时 表示全部数据加载完毕
this.finished = true
}
} else {
this.finished = true
this.loading = false
this.finishedText = res.resultMessage
}
})
},
//微信分享
share() {
let url = location.origin + '/#/manpower/DiscAnalysis/Share?token=' + localStorage.getItem('token') + '&shareTime=' + new Date().getTime()
// console.log(url)
// eslint-disable-next-line no-undef
EWebBridge.webCallAppInJs('bridge', {
flag: 'share',
extra: {
title: `“客观的认识自己,正确的规划自己”`,
content: `您有一份DISC性格测试表待完成`,
url: url,
img: this.$assetsUrl + 'images/logo.png'
}
})
},
result(detail) {
localStorage.setItem('DISC-answerList', detail)
let url = `/manpower/DiscAnalysis/Question`
this.$jump({
flag: 'h5',
extra: {
url: location.origin + `/#${url}`
},
routerInfo: { path: url }
})
}
},
components: {
[Sticky.name]: Sticky,
[Row.name]: Row,
[List.name]: List,
[Col.name]: Col
}
}
</script>
<style scoped="scoped" lang="scss">
.discAnalysis-list {
margin: 10px 0;
padding: 0 20px;
}
.van-col {
height: 51px;
font-size: 13px;
font-weight: 400;
color: rgba(0, 0, 0, 1);
line-height: 51px;
text-align: center;
}
.top-table .van-col {
font-size: 14px;
}
.main-table .van-col {
border-bottom: 1px solid #e7e7e7;
}
</style>

View File

@@ -1,44 +0,0 @@
<!-- DISC性格分析 - 统计列表 -->
<template>
<div>
<van-row>
<van-col span="3">span: 3</van-col>
<van-col span="8">span: 8</van-col>
<van-col span="8">span: 8</van-col>
<van-col span="5">span: 5</van-col>
</van-row>
<van-row>
<van-col span="3">1</van-col>
<van-col span="8">2020-02-01</van-col>
<van-col span="8">张三</van-col>
<van-col span="5">
<van-button type="danger" size="large" @click="save">保存</van-button>
</van-col>
</van-row>
</div>
</template>
<script>
import { Row Col } from 'vant'
// import { } from '@/api/ebiz/manpower/manpower'
export default {
name: '',
filters: {},
data() {
return {}
},
watch: {},
created() {},
mounted() {},
methods: {
init() {},
},
components: {
[Col.name]: Col,
[Row.name]: Row,
},
}
</script>
<style scoped="scoped" lang="scss"></style>

View File

@@ -1,6 +1,9 @@
<!-- DISC性格分析 - 分享后打开图片展示页 -->
<template>
<div></div>
<div style="position:relative">
<img style="width: 100%;" src="@/assets/images/DISCtop.png" />
<img style="width: 52%;position: absolute;bottom: 3.6%;left: 24%;" src="@/assets/images/DISCbtn.png" @click="toTest" />
</div>
</template>
<script>
@@ -17,11 +20,21 @@ export default {
created() {},
mounted() {},
methods: {
init() {},
//去做测试,跳转到测试答题页面
toTest() {
let url = `/manpower/DiscAnalysis/Question`
this.$jump({
flag: 'h5',
extra: {
url: location.origin + `/#${url}`
},
routerInfo: { path: url }
})
}
},
components: {
// [Field.name]: Field,
},
}
}
</script>