lion 3 years ago
parent 2968bbc44d
commit 861f12bf1e

@ -14,24 +14,43 @@
"backgroundColor": "#fff"
}
},
// bd
{
"path": "pages/bd/mine"
},
// bd
{
"path": "pages/bd/record"
},
// bd访
{
"path": "pages/visit/detail"
"path": "pages/bd/bddetail"
},
// 访
{
"path": "pages/visit/addrecord"
},
//
{
"path": "pages/visit/study"
},
//
{
"path": "pages/visit/testStudy"
}
},
//
{
"path": "pages/visit/successform"
},
// 访 访
{
"path": "pages/visit/visithistory"
},
// 访
{
"path": "pages/visit/detail"
}
],
"globalStyle": {
"navigationBarTextStyle": "#FFFFFF",

@ -0,0 +1,174 @@
<template>
<view class="containers">
<view class="db">
<view class="dblist">
<view>
<view class="dbitem">
<text class="dbtype">{{info.type_text}}</text>
<view class="dbstatus bm">
<view>{{info.audit_status_text}}</view>
<view>
<text style="margin-right:10px">访问时间{{info.date}}</text>
<text>{{info.visit_time.start_time}}{{info.visit_time.end_time}}</text>
</view>
<view v-if="info.type=='2'">{{info.work_start_time}}{{info.work_end_time}}</view>
</view>
<view class="dbinfo justify-left">
<view>
<view>被访人<text>{{info.accept_admin.name}}</text></view>
<view>部门<text>{{info.accept_admin.department.name}}</text></view>
<view>访问区域<text>{{info.visit_area.name}}</text></view>
</view>
<view>
<view>拜访人<text>{{info.name}}</text></view>
<view>电话{{info.mobile}}</view>
<view v-if="info.type=='1'"><text>{{info.reason}}</text></view>
<view v-else-if="info.type=='3'">车牌<text>{{info.plate}}</text></view>
</view>
</view>
<view class="dblong">
<view>长期访客申请<text>{{info.long_time==0?'否':'是'}}</text></view>
<view v-if="info.long_time==1">访{{info.start_date}} {{info.end_date}}</view>
</view>
</view>
</view>
<template v-if="info.type!='3'">
<view class="dbtext">随访人员</view>
<view class="dbitem sfyritem">
<template v-if="info.follw_people">
<view class="dbinfo justify-left" v-for="people in info.follw_people">
<view>
<view>
随访人<text>{{people.name}}</text>
</view>
<view>证件类型<text>{{people.credent_name}}</text></view>
<view>证件号<text>{{people.idcard}}</text></view>
</view>
<view>
电话<text>{{people.mobile}}</text>
</view>
</view>
</template>
<template v-else>
<view class="dbinfo justify-left">
</view>
</template>
</view>
</template>
<template v-if="info.type!='3'">
<view class="dbtext">到访车辆</view>
<view class="dbitem sfyritem">
<view class="dbinfo">
<view class="onechild">
车牌<text>{{info.cars}}</text>
</view>
</view>
</view>
</template>
<template v-if="info.type=='3'">
<view class="dbtext">收货人</view>
<view class="dbitem sfyritem">
<view class="dbinfo justify-left">
<view>
部门<text>{{info.accept_goods_admin.department.name}}</text>
</view>
<view>
人员<text>{{info.accept_goods_admin.name}}</text>
</view>
</view>
</view>
</template>
<view class="dbtext">被访人员</view>
<view class="dbitem sfyritem">
<view class="dbinfo justify-left">
<view>
部门<text>{{info.accept_admin.department.name}}</text>
</view>
<view>
人员<text>{{info.accept_admin.name}}</text>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import '@/static/css/bd.css'
export default{
data(){
return{
id:"",
info:{}
}
},
onReady() {
},
onLoad(options) {
this.id = options.id
this.loadDetail()
},
methods:{
loadDetail(){
let that = this
this.util.request({
api: '/api/admin/visit/show',
method: "get",
requestType:'bd',
data: {
id:that.id
},
utilSuccess: function(res) {
that.info = res
},
utilFail: function(res) {
uni.showToast({
title: res.errmsg,
duration: 2000,
icon: 'none'
})
}
})
},
isnull(p){
if(p == '' || p == undefined || p == null || p == 'undefined' || p == 'null'){
return ""
}else{
return p
}
}
}
}
</script>
<style scoped>
.containers{
background-color: #eceefe;
min-height: 100vh;
padding-top:20rpx;
}
.dbtext{
padding-top:10rpx;
margin-bottom:30rpx;
color:#303639;
font-size:40rpx;
padding-left:30rpx
}
.sfyritem{
padding-bottom:10rpx
}
.dbinfo>view text {
color: #8f9596;
}
</style>

@ -48,24 +48,28 @@
</view>
<view class="dbinfo justify-left">
<view>
<view>被访人<text>{{item.accept_admin_id}}</text></view>
<view>部门<text>生产</text></view>
<view>访问区域<text>{{item.visit_area_id}}</text></view>
<view>被访人<text>{{item.accept_admin.name}}</text></view>
<view>部门<text>{{item.accept_admin.department.name}}</text></view>
<view>访问区域<text>{{item.visit_area.name}}</text></view>
</view>
<view>
<view>拜访人<text>{{item.name}}</text></view>
<view>拜访人<text>{{item.name}}</text></view>
<view>电话{{item.mobile}}</view>
<view v-if="item.type=='1'"><text>{{item.reason}}</text></view>
<view v-if="item.type=='1'"><text>{{item.reason}}</text></view>
<view v-else-if="item.type=='3'">车牌<text>{{item.plate}}</text></view>
</view>
</view>
<view class="dblong">
<view class="dblong">
<view>长期访客申请<text>{{item.long_time==0?'否':'是'}}</text></view>
<text v-if="item.long_time==1">访{{item.start_date}} {{item.end_date}}</text>
</view>
</view>
</view>
</view>
<view v-if="isEmpty">
<u-empty mode="data">
</u-empty>
</view>
</view>
</view>
</view>
@ -106,10 +110,11 @@
select: {
page: 1,
page_size: 5,
total: 0,
audit_status:0,
keyword:""
}
total: 0,
audit_status: 0,
keyword: ""
},
isEmpty: false
}
},
onLoad() {
@ -145,7 +150,7 @@
},
toDetail(id) {
uni.navigateTo({
url: '/pages/visit/detail?id=' + id
url: '/pages/bd/bddetail?id=' + id
})
},
getBdInfo() {
@ -153,6 +158,7 @@
this.util.request({
api: '/api/admin/auth/me',
method: "POST",
requestType: 'bd',
utilSuccess: function(res) {
console.log(res)
that.userName = res.name
@ -178,13 +184,17 @@
this.util.request({
api: '/api/admin/visit/index',
method: "get",
requestType: 'bd',
data: {
page: this.select.page,
page_size: this.select.page_size,
audit_status:this.select.audit_status,
keyword:this.select.keyword
page_size: this.select.page_size,
audit_status: this.select.audit_status,
keyword: this.select.keyword
},
utilSuccess: function(res) {
if (res.total == 0) {
that.isEmpty = true
}
if (that.select.page == 1) {
that.list = res.data
} else {
@ -202,10 +212,10 @@
}
})
},
searchList(val) {
this.select.keyword = val
this.select.page = 1
this.loadList()
searchList(val) {
this.select.keyword = val
this.select.page = 1
this.loadList()
},
// scrolltolower(){},
@ -272,4 +282,8 @@
text-align: center;
margin-top: 15rpx
}
/deep/ .u-empty {
min-height: 30vh;
}
</style>

@ -1,7 +1,7 @@
<template>
<view class="containers">
<view class="dbbtns justify-between">
<text v-for="item in btnList" :class="{'active':btnActive===item.value}" @click="btnActive=item.value">
<text v-for="item in btnList" :class="{'active':btnActive===item.value}" @click="btnActiveList(item.value)">
{{item.label}}
</text>
<!-- <text >已完成</text>
@ -22,9 +22,9 @@
</view>
<view class="dbinfo justify-left">
<view>
<view>被访人<text>{{item.accept_admin_id}}</text></view>
<view>部门<text>生产</text></view>
<view>访问区域<text>{{item.visit_area_id}}</text></view>
<view>被访人<text>{{item.accept_admin.name}}</text></view>
<view>部门<text>{{item.accept_admin.department.name}}</text></view>
<view>访问区域<text>{{item.visit_area.name}}</text></view>
</view>
<view>
<view>拜访人<text>{{item.name}}</text></view>
@ -40,6 +40,10 @@
</view>
</view>
</view>
<view v-if="isEmpty">
<u-empty mode="data">
</u-empty>
</view>
</view>
</view>
@ -54,18 +58,18 @@
export default {
data() {
return {
btnActive: "all",
btnActive: "",
btnList: [{
label: "全部",
value: 'all'
value: ''
},
{
label: "已完成",
value: 'complete'
value: 4
},
{
label: "待完成",
value: 'going'
value: 0
}
],
list: [],
@ -74,7 +78,8 @@
page_size: 5,
total: 0,
audit_status: 0
}
},
isEmpty:false,
}
},
onLoad() {
@ -102,22 +107,34 @@
}
},
methods: {
toDetail() {
toDetail(id) {
uni.navigateTo({
url: '/pages/visit/detail'
url: '/pages/bd/bddetail?id=' + id
})
},
btnActiveList(val) {
this.btnActive = val
this.select.audit_status = val
this.select.page = 1
this.list = []
this.isEmpty = false
this.loadList()
},
loadList() {
let that = this
this.util.request({
api: '/api/admin/visit/index',
method: "get",
requestType: "bd",
data: {
page: this.select.page,
page_size: this.select.page_size,
audit_status: this.select.audit_status
},
utilSuccess: function(res) {
utilSuccess: function(res) {
if(res.total==0){
that.isEmpty=true
}
if (that.select.page == 1) {
that.list = res.data
} else {
@ -144,5 +161,8 @@
background-color: #eceefe;
min-height: 100vh;
/* padding-top:20rpx; */
}
/deep/ .u-empty{
min-height: 60vh;
}
</style>

@ -1,6 +1,9 @@
<template>
<view class="containers" :style="{'height':winHeight+'px'}">
<view class="title">BD访客</view>
<view class="title justify-between">
<text>BD访客</text>
<text @click="toUrl(0)"></text>
</view>
<view class="bdfk">
<view>
<u--image :showLoading="true" :src="ptfk" width="315rpx" height="600rpx" @click="toUrl(1)"></u--image>
@ -48,8 +51,10 @@
url = "/pages/visit/addrecord?type=2"
break;
case 3:
url = "/pages/visit/addrecord?type=3"
// url = "/pages/visit/study?type=3"
url = "/pages/visit/addrecord?type=3"
break;
case 0:
url = "/pages/visit/visithistory"
break;
case 4:
if(!this.util.isNull(this.isBd)){
@ -60,7 +65,6 @@
break;
}
console.log(url)
uni.navigateTo({
url:url
})

@ -291,7 +291,7 @@
for (var m of res.detail) {
arr.push({
text: m.value,
value: m.id
value: m.value
})
}
that.reasonList = arr

@ -15,9 +15,9 @@
</view>
<view class="dbinfo justify-left">
<view>
<view>被访人<text>{{info.accept_admin_id}}</text></view>
<view>部门<text>生产</text></view>
<view>访问区域<text>{{info.visit_area_id}}</text></view>
<view>被访人<text>{{info.accept_admin.name}}</text></view>
<view>部门<text>{{info.accept_admin.department.name}}</text></view>
<view>访问区域<text>{{info.visit_area.name}}</text></view>
</view>
<view>
<view>拜访人<text>{{info.name}}</text></view>
@ -33,57 +33,63 @@
</view>
</view>
<view class="dbtext">随访人员</view>
<view class="dbitem sfyritem">
<template v-if="info.follw_people">
<view class="dbinfo justify-left" v-for="people in info.follw_people">
<view>
<template v-if="info.type!='3'">
<view class="dbtext">随访人员</view>
<view class="dbitem sfyritem">
<template v-if="info.follw_people">
<view class="dbinfo justify-left" v-for="people in info.follw_people">
<view>
随访人<text>{{people.name}}</text>
<view>
随访人<text>{{people.name}}</text>
</view>
<view>证件类型<text>{{people.credent_name}}</text></view>
<view>证件号<text>{{people.idcard}}</text></view>
</view>
<view>
电话<text>{{people.mobile}}</text>
</view>
<view>证件类型<text>{{people.credent_name}}</text></view>
<view>证件号<text>{{people.idcard}}</text></view>
</view>
<view>
联系电话<text>{{people.mobile}}</text>
</template>
<template v-else>
<view class="dbinfo justify-left">
</view>
</view>
</template>
<template>
<view class="dbinfo justify-left">
</view>
</template>
</view>
<view class="dbtext">到访车辆</view>
<view class="dbitem sfyritem">
<view class="dbinfo">
<view class="onechild">
车牌<text>{{info.cars}}</text>
</view>
</template>
</view>
</view>
<view class="dbtext">收货人</view>
<view class="dbitem sfyritem">
<view class="dbinfo justify-left">
<view>
部门<text>{{info.accpet_department_id}}</text>
</template>
<template v-if="info.type!='3'">
<view class="dbtext">到访车辆</view>
<view class="dbitem sfyritem">
<view class="dbinfo">
<view class="onechild">
车牌<text>{{info.cars}}</text>
</view>
</view>
<view>
人员<text>{{info.accept_goods_admin_id}}</text>
</view>
</template>
<template v-if="info.type=='3'">
<view class="dbtext">收货人</view>
<view class="dbitem sfyritem">
<view class="dbinfo justify-left">
<view>
部门<text>{{info.accept_goods_admin.department.name}}</text>
</view>
<view>
人员<text>{{info.accept_goods_admin.name}}</text>
</view>
</view>
</view>
</view>
</template>
<view class="dbtext">被访人员</view>
<view class="dbitem sfyritem">
<view class="dbinfo justify-left">
<view>
部门<text>{{info.accept_admin_sign}}</text>
部门<text>{{info.accept_admin.department.name}}</text>
</view>
<view>
人员<text>{{info.accept_admin_id}}</text>
人员<text>{{info.accept_admin.name}}</text>
</view>
</view>
</view>
@ -114,7 +120,7 @@
loadDetail(){
let that = this
this.util.request({
api: '/api/admin/visit/show',
api: '/api/mobile/user/my-visit-detail',
method: "get",
data: {
id:that.id

@ -70,7 +70,8 @@
},
utilSuccess: function(res) {
that.studyInfo = res
that.studyMin = res.minute * 60
that.studyMin = res.minute * 60
// that.studyMin = .1 * 60
},
utilFail: function(res) {}
})
@ -105,12 +106,14 @@
padding-bottom: 60rpx;
position: relative;
}
.containers>button{
position: absolute;
bottom:60rpx;
margin:20rpx;
width:90%;
.containers>button {
position: absolute;
bottom: 60rpx;
margin: 20rpx;
width: 90%;
}
.steps {
margin-bottom: 40rpx
}

@ -0,0 +1,69 @@
<template>
<view class="containers">
<view>
<img :src="succ" alt="">
<view>提交成功等待审核</view>
<view>审核通过后系统将在第一时间通知你</view>
<view>
<button @click="toHistory">访</button>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
succ: require('../../static/img/success.png')
}
},
onLoad() {
},
methods: {
toHistory() {
uni.navigateTo({
url: '/pages/visit/visithistory'
})
}
}
}
</script>
<style scoped>
.containers {
background-color: #fff;
min-height: 80vh;
padding: 20rpx;
position: relative;
}
.containers>view {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 70%;
text-align: center;
}
.containers>view img {
width: 200rpx;
height: 200rpx;
}
.containers>view view {
margin-bottom: 40rpx
}
.containers>view view:first-child {
font-size: 40rpx;
color: #000
}
.containers>view button {
background-color: #044ed7;
color: #fff
}
</style>

@ -116,7 +116,6 @@
},
//
submitAnswer() {
console.log(this.correctNum)
let correctLength = 0
for (var key in this.correctNum) {
if (this.correctNum[key] == 1) {
@ -139,9 +138,13 @@
data: that.formData,
utilSuccess: function(res) {
uni.showToast({
title: res.errmsg,
title: res.msg,
duration: 2000,
icon: 'none'
})
uni.removeStorageSync('formData')
uni.navigateTo({
url:'/pages/visit/successform'
})
},
utilFail: function(res) {

@ -0,0 +1,162 @@
<template>
<view class="containers">
<!-- <view class="dbbtns justify-between">
<text v-for="item in btnList" :class="{'active':btnActive===item.value}" @click="btnActiveList(item.value)">
{{item.label}}
</text>
</view> -->
<view class="db">
<view class="dblist">
<view>
<view v-for="(item, index) in list" :key="index">
<view class="dbitem" @click="toDetail(item.id)">
<text class="dbtype">{{item.type_text}}</text>
<view class="dbstatus bm">
<view>{{item.audit_status_text}}</view>
<view>
<text style="margin-right:10px">访问时间{{item.date}}</text>
<text>{{item.visit_time.start_time}}{{item.visit_time.end_time}}</text>
</view>
</view>
<view class="dbinfo justify-left">
<view>
<view>被访人<text>{{item.accept_admin.name}}</text></view>
<view>部门<text>{{item.accept_admin.department.name}}</text></view>
<view>访问区域<text>{{item.visit_area.name}}</text></view>
</view>
<view>
<view>拜访人<text>{{item.name}}</text></view>
<view>电话{{item.mobile}}</view>
<view v-if="item.type=='1'"><text>{{item.reason}}</text></view>
<view v-else-if="item.type=='3'">车牌<text>{{item.plate}}</text></view>
</view>
</view>
<view class="dblong">
<view>长期访客申请<text>{{item.long_time==0?'否':'是'}}</text></view>
<text v-if="item.long_time==1">访{{item.start_date}} {{item.end_date}}</text>
</view>
</view>
</view>
</view>
<view v-if="isEmpty">
<u-empty mode="data">
</u-empty>
</view>
</view>
</view>
</view>
</template>
<script>
import '@/static/css/bd.css'
export default {
data() {
return {
btnActive: "",
btnList: [{
label: "全部",
value: ''
},
{
label: "已完成",
value: 4
},
{
label: "待完成",
value: 0
}
],
list: [],
select: {
page: 1,
page_size: 5,
total: 0,
type: ""
},
isEmpty:false,
}
},
onLoad() {
this.loadList()
},
onPullDownRefresh() {
this.select.page = 1
this.loadList()
uni.stopPullDownRefresh();
},
//
onReachBottom() {
//>=
if (this.list.length >= this.select.total) {
//
uni.showToast({
title: '没有更多了',
duration: 1000,
icon: 'none'
})
} else {
//+1
this.select.page++
this.loadList()
}
},
methods: {
toDetail(id) {
uni.navigateTo({
url: '/pages/visit/detail?id=' + id
})
},
btnActiveList(val) {
this.btnActive = val
this.select.audit_status = val
this.loadList()
},
loadList() {
let that = this
this.util.request({
api: '/api/mobile/user/my-visit',
method: "get",
data: {
page: this.select.page,
page_size: this.select.page_size,
type: this.select.type
},
utilSuccess: function(res) {
if(res.total==0){
that.isEmpty=true
}
if (that.select.page == 1) {
that.list = res.data
} else {
that.list.push(...res.data)
}
that.select.total = res.total
},
utilFail: function(res) {
uni.showToast({
title: res.errmsg,
duration: 2000,
icon: 'none'
})
}
})
},
}
}
</script>
<style scoped>
.containers {
background-color: #eceefe;
min-height: 100vh;
/* padding-top:20rpx; */
}
/deep/ .u-empty{
min-height: 60vh;
}
</style>

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

@ -58,7 +58,14 @@ const getOpenidInfo = (cb, refresh) => {
uni.request({
url: url,
method: 'GET',
success: result => {
success: result => {
// if(result.errmsg){
// uni.showToast({
// title:result.errmsg,
// duration:2000
// })
// return
// }
let user_info = result.data
uni.setStorageSync(user_info_key, user_info)
cb(user_info)
@ -166,10 +173,14 @@ const request = options => {
}; // 如果已登录,请求中拼openId
var access_token = uni.getStorageSync(user_info_key).token;
var access_token_bd = uni.getStorageSync(userInfo_BD_token).token;
var access_bd_token = uni.getStorageSync(userInfo_BD_token).token;
var request_token = access_token_bd?access_token_bd:access_token
console.log(request_token)
var request_token = access_token
if(options.requestType=='bd'){
request_token = access_bd_token
}
// var request_token = access_bd_token?access_bd_token:access_token
// console.log(request_token)
if (isLogin()) {
options.data = {
...options.data,

Loading…
Cancel
Save