修复一些查询接口

main
26947 2024-06-11 13:25:35 +08:00
parent 8c26b4787e
commit dba4402115
6 changed files with 156 additions and 80 deletions

View File

@ -14,7 +14,10 @@
"autoclose" : true,
"delay" : 0
},
"modules" : {},
"modules" : {
"Barcode" : {},
"Camera" : {}
},
"distribute" : {
"android" : {
"permissions" : [
@ -45,7 +48,24 @@
"UniversalLinks" : ""
}
},
"ad" : {}
"ad" : {},
"geolocation" : {
"system" : {
"__platform__" : [ "ios", "android" ]
},
"amap" : {
"name" : "",
"__platform__" : [ "ios", "android" ],
"appkey_ios" : "",
"appkey_android" : ""
}
},
"push" : {
"unipush" : {
"version" : "2",
"offline" : false
}
}
}
}
},

View File

@ -299,6 +299,12 @@
"navigationBarTextStyle": "white"
}
}
,{
"path": "pages/activity/map",
"style": {
"navigationBarTitleText": "地图"
}
}
],
"tabBar": {
"color": "#000000",

37
pages/activity/map.vue Normal file
View File

@ -0,0 +1,37 @@
<template class="content">
<view>12</view>
</template>
<script setup>
import ActiInfoList from '../common/activityList/index.vue'
import { onShow, onLoad ,onPullDownRefresh} from '@dcloudio/uni-app'
import { getDicts } from "@/api/system/dict/data"
import { ref, reactive, getCurrentInstance, toRefs } from 'vue'
import { useStore } from 'vuex';
const timeFormat = uni.$u.timeFormat;
const { proxy } = getCurrentInstance();
const newData = ref(new Date().getTime());
const iconConfig = proxy.iconConfig;
const tu21 = iconConfig.tu21;
onLoad((options) => {
})
onShow(() => {
console.log('Page onShow')
})
</script>
<style lang="scss">
page{
background-color: #FBFBFB;
}
</style>

View File

@ -77,7 +77,7 @@
border="none">
<span v-if="showtext2"></span>
</up-input>
<up-icon slot="right" name="arrow-right"></up-icon>
<up-icon slot="right" name="arrow-right" @click="gotomap"></up-icon>
</view>
</up-form-item>
</up-cell-group>
@ -198,7 +198,9 @@ const inputtextInfo = (e) => {
console.log("测试输入1", e);
}
const gotomap = () => {
proxy.$tab.navigateTo('/pages/activity/map')
}
const submitForm = (type) => {
if (uFormRef.value) {

View File

@ -227,6 +227,7 @@ onPullDownRefresh((options) => {
console.log("下拉刷新,", queryParams.value);
getList();
})
//
const tabsClick = (index) => {
removePage()
if (index.state == 9) {

View File

@ -7,7 +7,7 @@
</template>
</up-navbar>
</view>
<view style="height: 100vh; overflow: auto;">
<view style=" overflow: auto;">
<view class="avtivityInfo">
<view>
<view class="cards">
@ -26,42 +26,60 @@
</view>
<view class="qrcode" v-if="actiInfoList.state == '2'">
<image :src="basetoimg(actiInfoList.acQrcode)" style="width: 200rpx; height: 200rpx;"
@click="showqr = true"></image>
@click="showqr = true">
</image>
<view class="text">签到二维码</view>
</view>
<view style="width: 100%; height: 400rpx;"></view>
</view>
<view v-if=" actiInfoList.auditStatus == 0">
<!-- 当前是审核中就展示 -->
<view v-if="actiInfoList.auditStatus == 1 | actiInfoList.auditStatus == 2" class="infox4">
<view class="line"></view>
<view class="text1 text" >发布审核时间<span>{{ actiInfoList.startTime }}</span></view>
<view class="text2 text">审核状态<span style="color: #43CE8F">审核中</span></view>
</view>
<!-- 当前是未通过 -->
<view v-else-if="actiInfoList.auditStatus == 3 | actiInfoList.auditStatus == 4 " class="infox4">
<view class="line"></view>
<view class="text1 text" >发布审核时间<span>{{ actiInfoList.startTime }}</span></view>
<view class="text1 text">审核状态<span style="color: #F87863">未通过</span></view>
<view class="text2 text">未通过原因<span style="color: #F87863">{{actiInfoList.auditAdvice}}</span></view>
</view>
<!-- 进行中或者报名中就展示 -->
<view v-else-if="actiInfoList.auditStatus == 0">
<view class="infox1" v-if="actiInfoList.state == '1'">
<view>
<view v-if="dataopen">
<up-avatar-group :urls="participation(participationInfo.elrollAvatars)" size="30"
gap="0.4"></up-avatar-group>
</view>
</view>
<view class="elroll">已报名{{ actiInfoList.elroll }}</view>
</view>
<view class="infox2" v-else>
<view class="flex justifyCenter alignCenter">
<view v-if="dataopen">
<up-avatar-group :urls="participation(participationInfo.elrollAvatars)" size="30"
gap="0.4"></up-avatar-group>
<view>
<view v-if="dataopen">
<up-avatar-group :urls="participation(participationInfo.elrollAvatars)" size="30"
gap="0.4"></up-avatar-group>
</view>
</view>
<view class="elroll">已报名{{ actiInfoList.elroll }}</view>
</view>
<view v-if="actiInfoList.state != '1'" class="flex justifyCenter alignCenter">
<view v-if="dataopen">
<up-avatar-group :urls="participation(participationInfo.qrcodeElrollAvatars)" size="30"
gap="0.4"></up-avatar-group>
</view>
<view class="elroll">已签到{{ actiInfoList.qrcodeElroll }}</view>
</view>
<view class="infox2" v-else>
<view class="flex justifyCenter alignCenter">
<view v-if="dataopen">
<up-avatar-group :urls="participation(participationInfo.elrollAvatars)" size="30"
gap="0.4"></up-avatar-group>
</view>
<view class="elroll">已报名{{ actiInfoList.elroll }}</view>
</view>
<view v-if="actiInfoList.state != '1'" class="flex justifyCenter alignCenter">
<view v-if="dataopen">
<up-avatar-group :urls="participation(participationInfo.qrcodeElrollAvatars)" size="30"
gap="0.4"></up-avatar-group>
</view>
<view class="elroll">已签到{{ actiInfoList.qrcodeElroll }}</view>
</view>
</view>
</view>
</view>
<view style="width: 100%; height: 400rpx;"></view>
<view class="infox3"></view>
@ -69,7 +87,8 @@
<up-overlay :show="showqr" @click="showqr = false">
<view class="warp">
<image class="rect" @tap.stop :src="basetoimg(actiInfoList.acQrcode)"
style="width: 600rpx; height: 600rpx"></image>
style="width: 600rpx; height: 600rpx">
</image>
</view>
</up-overlay>
</view>
@ -77,7 +96,7 @@
<script setup>
import { getTakePartsInfoByacId, gotoQrcode, gotoSing1, gotoSing2 } from "@/api/activityInfo/activityTakeInfo";
import { listInfo, getInfo, getInfoall,delInfo, addInfo, updateInfo } from "@/api/activityInfo/info";
import { listInfo, getInfo, getInfoall, delInfo, addInfo, updateInfo } from "@/api/activityInfo/info";
import { getDicts } from "@/api/system/dict/data";
import { onShow, onLoad } from '@dcloudio/uni-app';
import { ref, reactive, getCurrentInstance, toRefs, computed } from 'vue';
@ -112,9 +131,7 @@ const participation = (data) => {
const refObjects = limitedData.map(item => (QNDomain + item.avatar));
return refObjects;
}
function getAvatar() {
return QNDomain + actiInfoList.value.avatarInfo;
}
function basetoimg(e) {
return "data:image/png;base64," + e
@ -128,7 +145,7 @@ onLoad((options) => {
getInfoall(_id).then(e => {
participationInfo.value = e.data
dataopen.value = true;
console.log("参与人信息:",e);
console.log("参与人信息:", e);
})
getDicts('activity_state').then(e => {
activityState.value = e.data;
@ -162,32 +179,7 @@ const toimage = (url) => {
function cancel() {
open.value = !open.value;
}
const getDictLabelByValue = (state) => {
const dict = activityState.value.find((dict) => dict.dictValue === state);
return dict ? dict : '未知状态';
};
const goSing = (e) => {
if (e === 0) {
//
gotoSing2(activityAttendInfo.value.id).then(e => {
proxy.$modal.msgSuccess("取消报名成功!");
actiInfoList.value.elroll -= 1
})
}
if (e === 1) {
//
gotoSing1(activityAttendInfo.value.id).then(e => {
proxy.$modal.msgSuccess("报名成功!");
actiInfoList.value.elroll += 1
})
}
//
checkStatus(actiInfoList.value.id);
}
const goQrcode = () => {
uni.scanCode({
onlyFromCamera: true,
@ -203,16 +195,7 @@ const goQrcode = () => {
}
function confirm() {
open.value = !open.value;
activityAttendInfo.value.qrcodeInfo = JSON.stringify(qrcodeInfo.value)
gotoQrcode(activityAttendInfo.value).then(e => {
proxy.$modal.msgSuccess("签到成功!");
//
checkStatus(actiInfoList.value.id);
})
}
const toqrcode = (e) => {
qrcodeInfo.value = JSON.parse(e.result);
if (actiInfoList.value.id !== qrcodeInfo.value.id) {
@ -244,6 +227,7 @@ page {
width: 686rpx;
margin: 44rpx auto;
margin-bottom: 0;
.cards {
.title {
font-weight: 600 !important;
@ -353,7 +337,8 @@ page {
}
.infox3{
.infox3 {
width: 100%;
height: 68rpx;
background-color: #F6F6F6;
@ -386,10 +371,35 @@ page {
}
}
.warp {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.infox4{
width: 686rpx;
height: 400rpx;
margin: 60rpx auto;
.line{
width: 100%;
height: 4rpx;
background-color: #F4F5F6;
border-radius: 2rpx 2rpx 2rpx 2rpx;
margin-bottom: 60rpx;
}
.text{
font-size: 30rpx;
color: #000000 !important;
}
.text1 {
margin-bottom: 24rpx;
}
.text2 {
}
}
</style>