Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
26f57ccf5e | |||
2e387bc71f | |||
c36401baf6 | |||
2fa219cfe0 | |||
6dcbf07b54 | |||
8733d995ec | |||
5c7d95a2be | |||
40bf8f8433 |
2
App.vue
@@ -34,6 +34,8 @@
|
|||||||
// sHeight.value = res.screenHeight
|
// sHeight.value = res.screenHeight
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
// 获取测试结果背景图
|
||||||
|
store.getBgList()
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
@@ -16,12 +16,15 @@ const API = {
|
|||||||
getLbtList:data => net.GET("/banner/list",data),// 获取轮播图
|
getLbtList:data => net.GET("/banner/list",data),// 获取轮播图
|
||||||
hospital:data => net.PUT("/user/hospital",data),// 修改医院信息
|
hospital:data => net.PUT("/user/hospital",data),// 修改医院信息
|
||||||
getHospitalInfo:id => net.GET("/hospital/"+id),// 根据ID获取医院信息
|
getHospitalInfo:id => net.GET("/hospital/"+id),// 根据ID获取医院信息
|
||||||
getTodoist:data => net.GET("/user/todo",data),// 获取待办事项
|
getHospitalInfo2:data => net.GET("/hospital/notes",data),// 根据ID获取医院信息222
|
||||||
|
getTodoist:(data,userId) => net.GET("/user/todo",data,true,{"userId":userId}),// 获取待办事项
|
||||||
getVisionList:data => net.GET("/vision/list",data),// 获取测试记录
|
getVisionList:data => net.GET("/vision/list",data),// 获取测试记录
|
||||||
todoFinished:data => net.PUT("/user/todo",data),// 修改待办列表状态
|
todoFinished:data => net.PUT("/user/todo",data),// 修改待办列表状态
|
||||||
// 百科
|
// 百科
|
||||||
getArticleList:data => net.GET("/article/list",data),// 百科列表
|
getArticleList:data => net.GET("/article/list",data),// 百科列表
|
||||||
getArticleDetail:data => net.GET("/article/"+data.id),// 文章详情
|
getArticleDetail:(data,userId) => net.GET("/article/"+data.id,null,true,{"userId":userId}),// 文章详情
|
||||||
|
getArticleFavorite:(data,userId) => net.POST("/favorite",data,true,{"userId":userId}),// 收藏文章
|
||||||
|
delArticleFavorite:(data,userId) => net.DELETE("/favorite",data,true,{"userId":userId}),// 取消收藏文章
|
||||||
// 我的
|
// 我的
|
||||||
getStarList:data => net.GET("/favorite/list",data),// 收藏列表
|
getStarList:data => net.GET("/favorite/list",data),// 收藏列表
|
||||||
/*
|
/*
|
||||||
@@ -40,6 +43,7 @@ const API = {
|
|||||||
getCategoryList:data => net.GET('/api/goods_category/lists'), // 获取商品分类
|
getCategoryList:data => net.GET('/api/goods_category/lists'), // 获取商品分类
|
||||||
getCategory:data => net.GET('/api/goods/category',data), // 根据分类Id获取分类商品
|
getCategory:data => net.GET('/api/goods/category',data), // 根据分类Id获取分类商品
|
||||||
getCartList:data => net.GET('/api/cart/lists',data), // 获取购物车列表
|
getCartList:data => net.GET('/api/cart/lists',data), // 获取购物车列表
|
||||||
|
getBgList:data => net.GET('/poster/list',data), // 获取测试结果背景图列表
|
||||||
addCart:data => net.POST('/api/cart/add',data), // 加入购物车
|
addCart:data => net.POST('/api/cart/add',data), // 加入购物车
|
||||||
delCart:data => net.POST('/api/cart/delete',data), // 删除购物车
|
delCart:data => net.POST('/api/cart/delete',data), // 删除购物车
|
||||||
updateCart:data => net.POST('/api/cart/edit',data), // 更新购物车
|
updateCart:data => net.POST('/api/cart/edit',data), // 更新购物车
|
||||||
|
@@ -1,7 +1,8 @@
|
|||||||
import config from '../config'
|
import config from '../config'
|
||||||
|
|
||||||
// import store from '../store'
|
// import {useStore} from '@/store/index.js'
|
||||||
|
// console.log(useStore)
|
||||||
|
// const store = useStore()
|
||||||
const loginUrl = 'pages/user/login';
|
const loginUrl = 'pages/user/login';
|
||||||
// function JSON_to_URLEncoded(element,key,list){
|
// function JSON_to_URLEncoded(element,key,list){
|
||||||
// var list = list || [];
|
// var list = list || [];
|
||||||
@@ -75,6 +76,20 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// if(res.data.code === 7) { // 登录失败
|
||||||
|
// uni.showToast({
|
||||||
|
// title:res.msg,
|
||||||
|
// icon:"error",
|
||||||
|
// duration:2000,
|
||||||
|
// mask:true,
|
||||||
|
// success() {
|
||||||
|
// if(res.code === 7) // 登录失败
|
||||||
|
// {
|
||||||
|
// store.afterFailLogin(2000)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// }
|
||||||
return res.data;
|
return res.data;
|
||||||
} else {
|
} else {
|
||||||
const reg = /abort/;
|
const reg = /abort/;
|
||||||
|
@@ -3,9 +3,9 @@
|
|||||||
<!-- 这是ai客服!!!! -->
|
<!-- 这是ai客服!!!! -->
|
||||||
<unFab ref="fab" :pattern="pattern" horizontal="left" vertical="bottom"
|
<unFab ref="fab" :pattern="pattern" horizontal="left" vertical="bottom"
|
||||||
direction="horizontal" @fabClick="fabClick" />
|
direction="horizontal" @fabClick="fabClick" />
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import unFab from '@/uni_modules/uni-fab/components/uni-fab/uni-fab.vue'
|
import unFab from '@/uni_modules/uni-fab/components/uni-fab/uni-fab.vue'
|
||||||
import { onLoad } from "@dcloudio/uni-app"
|
import { onLoad } from "@dcloudio/uni-app"
|
||||||
@@ -23,11 +23,11 @@
|
|||||||
iconColor: '#fff',
|
iconColor: '#fff',
|
||||||
icon:'headphones'
|
icon:'headphones'
|
||||||
})
|
})
|
||||||
// const content = ref([{
|
// const content = ref([{
|
||||||
// iconPath: '/static/image.png',
|
// iconPath: '/static/image.png',
|
||||||
// selectedIconPath: '/static/image-active.png',
|
// selectedIconPath: '/static/image-active.png',
|
||||||
// text: '相册',
|
// text: '相册',
|
||||||
// active: false
|
// active: false
|
||||||
// }])
|
// }])
|
||||||
function fabClick() {
|
function fabClick() {
|
||||||
// uni.showToast({
|
// uni.showToast({
|
||||||
@@ -37,11 +37,11 @@
|
|||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url:"/pages/index/aikefu"
|
url:"/pages/index/aikefu"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.aikefuBox{
|
.aikefuBox{
|
||||||
margin-top: 200rpx;
|
margin-top: 200rpx;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
@@ -1,6 +1,7 @@
|
|||||||
// isdev 为 true 表示开发环境 false 表示发布环境
|
// isdev 为 true 表示开发环境 false 表示发布环境
|
||||||
const isdev = true;
|
const isdev = true;
|
||||||
const baseUrl = isdev ? 'http://47.116.50.126:8888' : 'http://eb467b6.r19.cpolar.top';// 办公室接口 & 测试环境
|
const baseUrl = isdev ? 'https://api.jimingyiliao.com' : 'http://eb467b6.r19.cpolar.top';// 办公室接口 & 测试环境
|
||||||
|
// const baseUrl = isdev ? 'http://707788f2.r1.cpolar.top' : 'http://eb467b6.r19.cpolar.top';// 办公室接口 & 测试环境
|
||||||
// const baseUrl = isdev ? 'http://192.168.1.133:8899' : 'https://api.gwkjxb.com';// 办公室接口 & 正式环境
|
// const baseUrl = isdev ? 'http://192.168.1.133:8899' : 'https://api.gwkjxb.com';// 办公室接口 & 正式环境
|
||||||
// const baseUrl = 'https://api.gwkjxb.com';// 正式环境(由于本地测试后台没有启动,暂时通用正式服)
|
// const baseUrl = 'https://api.gwkjxb.com';// 正式环境(由于本地测试后台没有启动,暂时通用正式服)
|
||||||
|
|
||||||
|
@@ -3,7 +3,9 @@
|
|||||||
{
|
{
|
||||||
"path": "pages/index/index",
|
"path": "pages/index/index",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "首页"
|
"navigationBar":"custom",
|
||||||
|
"navigationBarTitleText":"",
|
||||||
|
"navigationStyle":"custom"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@@ -11,8 +11,12 @@
|
|||||||
import uniIcons from '@/uni_modules/uni-icons/components/uni-icons/uni-icons.vue'
|
import uniIcons from '@/uni_modules/uni-icons/components/uni-icons/uni-icons.vue'
|
||||||
import ccNewsTabs from '@/uni_modules/cc-newsTabs/components/cc-newsTabs/cc-newsTabs.vue'
|
import ccNewsTabs from '@/uni_modules/cc-newsTabs/components/cc-newsTabs/cc-newsTabs.vue'
|
||||||
const store = useStore()
|
const store = useStore()
|
||||||
|
import emptyCard from "@/components/emptyCard.vue"
|
||||||
// 生命周期
|
// 生命周期
|
||||||
onLoad((e) => {
|
onLoad((e) => {
|
||||||
|
if(uni.getStorageSync('userInfo')) {
|
||||||
|
user_info.value = JSON.parse(uni.getStorageSync('userInfo'))
|
||||||
|
}
|
||||||
c_index.value = parseInt(e.state_index)
|
c_index.value = parseInt(e.state_index)
|
||||||
list_box.value[c_index.value].queryParams.isFinish = c_index.value?0:1
|
list_box.value[c_index.value].queryParams.isFinish = c_index.value?0:1
|
||||||
if(store.systemInfo) {
|
if(store.systemInfo) {
|
||||||
@@ -29,6 +33,7 @@
|
|||||||
getList()
|
getList()
|
||||||
})
|
})
|
||||||
// 变量
|
// 变量
|
||||||
|
const user_info = ref(null)
|
||||||
const inputDialog = ref()
|
const inputDialog = ref()
|
||||||
const state_index = ref(0)
|
const state_index = ref(0)
|
||||||
const swiper_h = ref(0)
|
const swiper_h = ref(0)
|
||||||
@@ -85,12 +90,13 @@
|
|||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
mask:true
|
mask:true
|
||||||
})
|
})
|
||||||
const res = await api.getTodoist(list_box.value[c_index.value].queryParams)
|
list_box.value[c_index.value].queryParams.userId = user_info.value?.userId || 0
|
||||||
|
const res = await api.getTodoist(list_box.value[c_index.value].queryParams,user_info.value?.userId || 0)
|
||||||
uni.hideLoading();
|
uni.hideLoading();
|
||||||
if(res.code === 0) {
|
if(res.code === 0) {
|
||||||
if(res.data && res.data.length > 0) {
|
if(res.data && res.data.length > 0) {
|
||||||
// list.value.push(...res.data)
|
// list_box.value[c_index.value].list.push(...res.data)
|
||||||
list_box.value[c_index.value].list.push(...res.data)
|
list_box.value[c_index.value].list = res.data
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
list_box.value[c_index.value].queryParams.page--
|
list_box.value[c_index.value].queryParams.page--
|
||||||
@@ -168,7 +174,7 @@
|
|||||||
<swiper :current="c_index" @change="scroll_func" :style="{'--size':swiper_h+'px'}" class="swiper" circular :indicator-dots="false" :autoplay="false" >
|
<swiper :current="c_index" @change="scroll_func" :style="{'--size':swiper_h+'px'}" class="swiper" circular :indicator-dots="false" :autoplay="false" >
|
||||||
<swiper-item v-for="(item1,i1) in list_box">
|
<swiper-item v-for="(item1,i1) in list_box">
|
||||||
<view class="todoBox">
|
<view class="todoBox">
|
||||||
<view v-for="(item,i) in item1.list" @tap="handle_func(item,i)" class="td-item swiper-item uni-bg-green">
|
<view v-for="(item,i) in item1.list" v-if="item1.list.length>0" @tap="handle_func(item,i)" class="td-item swiper-item uni-bg-green">
|
||||||
<view class="td-content text-ellipsis-2">
|
<view class="td-content text-ellipsis-2">
|
||||||
{{item.content}}
|
{{item.content}}
|
||||||
</view>
|
</view>
|
||||||
@@ -176,6 +182,7 @@
|
|||||||
{{util.timestampToDate(item.CreatedAt)}}
|
{{util.timestampToDate(item.CreatedAt)}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<emptyCard v-else></emptyCard>
|
||||||
</view>
|
</view>
|
||||||
</swiper-item>
|
</swiper-item>
|
||||||
</swiper>
|
</swiper>
|
||||||
|
@@ -11,18 +11,23 @@
|
|||||||
import {useStore} from '@/store/index.js'
|
import {useStore} from '@/store/index.js'
|
||||||
// import uniIcons from '@/uni_modules/uni-icons/components/uni-icons/uni-icons.vue'
|
// import uniIcons from '@/uni_modules/uni-icons/components/uni-icons/uni-icons.vue'
|
||||||
const store = useStore()
|
const store = useStore()
|
||||||
|
const h_index = ref(0)
|
||||||
onShow((e) => {
|
onShow((e) => {
|
||||||
getLbtList()
|
getLbtList()
|
||||||
if(store.userInfo && !store.operation_info) { //登录过 且 未填写手术信息
|
if(store.userInfo && !store.operation_info) { //登录过 且 未填写手术信息
|
||||||
// getHospitalList()
|
getHospitalList()
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
inputDialog.value.open()
|
inputDialog.value.open()
|
||||||
},0)
|
},0)
|
||||||
}
|
}
|
||||||
|
let s = `$http({code:'1s'});if`
|
||||||
|
// // let arr = /\$http\((\S*)\)\;if/.exec(s);
|
||||||
|
let arr = s.match(/\$http\((.*)\)\;if/)
|
||||||
|
console.log(arr[1])
|
||||||
})
|
})
|
||||||
|
|
||||||
// 变量
|
// 变量
|
||||||
const hospitals = ref(null)
|
const hospitals = ref([])
|
||||||
// const hospitals_show = ref(false)
|
// const hospitals_show = ref(false)
|
||||||
const inputDialog = ref()
|
const inputDialog = ref()
|
||||||
const inputClose = ref()
|
const inputClose = ref()
|
||||||
@@ -48,6 +53,7 @@
|
|||||||
const res = await api.getHospitalList(h_queryParams.value)
|
const res = await api.getHospitalList(h_queryParams.value)
|
||||||
if(res.code == 0) {
|
if(res.code == 0) {
|
||||||
hospitals.value = res.data.list
|
hospitals.value = res.data.list
|
||||||
|
console.log(hospitals.value )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
async function getLbtList() { // 获取轮播图
|
async function getLbtList() { // 获取轮播图
|
||||||
@@ -65,7 +71,7 @@
|
|||||||
isSurgery.value = e.detail.value
|
isSurgery.value = e.detail.value
|
||||||
}
|
}
|
||||||
const single = ref('')
|
const single = ref('')
|
||||||
function maskClick(e){
|
function maskClick(e){
|
||||||
}
|
}
|
||||||
const hValue = ref('') // 医院
|
const hValue = ref('') // 医院
|
||||||
const hValueId = ref('') // 医院id
|
const hValueId = ref('') // 医院id
|
||||||
@@ -93,7 +99,7 @@
|
|||||||
// blur_h.value = 0
|
// blur_h.value = 0
|
||||||
}
|
}
|
||||||
function toBlur(){
|
function toBlur(){
|
||||||
hospitals.value = null
|
// hospitals.value = null
|
||||||
}
|
}
|
||||||
async function toSave() {
|
async function toSave() {
|
||||||
if(isSurgery.value == -1) {
|
if(isSurgery.value == -1) {
|
||||||
@@ -102,15 +108,17 @@
|
|||||||
if(!surgery_time.value) {
|
if(!surgery_time.value) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if(!choosed_h.value || !choosed_h.value.ID) {
|
// if(!choosed_h.value || !choosed_h.value.ID) {
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
let user_info = JSON.parse(uni.getStorageSync('userInfo'))
|
let user_info = JSON.parse(uni.getStorageSync('userInfo'))
|
||||||
let h_query = {
|
let h_query = {
|
||||||
isSurgery:parseInt(isSurgery.value),
|
isSurgery:parseInt(isSurgery.value),
|
||||||
surgery_time:surgery_time.value,
|
surgery_time:surgery_time.value,
|
||||||
userId:user_info.userId,
|
userId:user_info.userId,
|
||||||
hospitalId:choosed_h.value?.ID
|
// hospitalId:choosed_h.value?.ID
|
||||||
|
hospitalId:hospitals.value[h_index.value]?.ID
|
||||||
|
|
||||||
}
|
}
|
||||||
// console.log(h_query);return
|
// console.log(h_query);return
|
||||||
const res = await api.hospital(h_query)
|
const res = await api.hospital(h_query)
|
||||||
@@ -165,62 +173,81 @@
|
|||||||
url:"/pages/index/note_list?index="+index
|
url:"/pages/index/note_list?index="+index
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function bindPickerChange(e) {
|
||||||
|
console.log(hospitals.value )
|
||||||
|
h_index.value = e.detail.value
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<view class="content page-box">
|
<view class="content page-box">
|
||||||
|
<!-- 背景图 -->
|
||||||
|
<view class="bg-imgs-card">
|
||||||
|
<image src="../../static/style/bg.png" mode="aspectFill"></image>
|
||||||
|
</view>
|
||||||
<!-- 轮播图 -->
|
<!-- 轮播图 -->
|
||||||
<mySwiper :indicatorDots="true" :isRadius="true" height="160" class="index-siwper margin-b-card" :lbt_list="lbt_list" style="width: 100%;" />
|
<mySwiper :indicatorDots="true" :isRadius="true" height="160" class="index-siwper margin-b-card" :lbt_list="lbt_list" style="width: 100%;" />
|
||||||
<view class="main-cards" @tap="toExam">
|
<!-- <view class="main-cards" @tap="toExam">
|
||||||
<view class="mc-row">
|
<view class="mc-row">
|
||||||
<view>视力测试</view>
|
<view>视力测试</view>
|
||||||
<uni-icons type="forward" color="#9bc027" size="20"></uni-icons>
|
<uni-icons type="forward" color="#9bc027" size="20"></uni-icons>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="attention-card">
|
<view class="attention-card">
|
||||||
<view class="part-title">
|
<!-- <view class="part-title">
|
||||||
测试记录
|
测试记录
|
||||||
</view>
|
</view> -->
|
||||||
<view class="ac-parts">
|
<!-- <view class="ac-parts">
|
||||||
<view @tap="toVisionList" class="ac-part" style="color: gray;" >
|
<view @tap="toVisionList" class="ac-part" style="color: gray;" >
|
||||||
视力测试记录
|
视力测试记录
|
||||||
<uni-icons type="forward" color="gray" size="20"></uni-icons>
|
<uni-icons type="forward" color="gray" size="20"></uni-icons>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="attention-card">
|
<!-- <view class="attention-card">
|
||||||
<view class="part-title">
|
<view class="part-title">
|
||||||
事务处理
|
事务处理
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="main-cards">
|
<view class="main-cards">
|
||||||
<view @tap="todoFunc(0)" class="mc-part" style="margin-left: 0;">
|
<view @tap="todoFunc(0)" class="mc-part" style="margin-left: 0;">
|
||||||
|
<image class="mc-bg-card" src="../../static/style/done.png" mode=""></image>
|
||||||
<view class="mc-part-text">已完成事项</view>
|
<view class="mc-part-text">已完成事项</view>
|
||||||
<image src="../../static/done.png" mode="widthFix"></image>
|
<!-- <image src="../../static/done.png" mode="widthFix"></image> -->
|
||||||
</view>
|
</view>
|
||||||
<view @tap="todoFunc(1)" class="mc-part mc-part2" style="margin-right: 0;">
|
<view @tap="todoFunc(1)" class="mc-part mc-part2" style="margin-right: 0;">
|
||||||
|
<image class="mc-bg-card" src="../../static/style/undone.png" mode=""></image>
|
||||||
<view class="mc-part-text">待完成事项</view>
|
<view class="mc-part-text">待完成事项</view>
|
||||||
<image style="transform: rotate(0deg);" src="../../static/undone.png" mode="widthFix"></image>
|
<!-- <image style="transform: rotate(0deg);" src="../../static/undone.png" mode="widthFix"></image> -->
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="attention-card">
|
<view class="attention-card">
|
||||||
<view class="part-title">
|
<!-- <view class="part-title">
|
||||||
注意事项
|
注意事项
|
||||||
</view>
|
</view> -->
|
||||||
<view class="ac-parts">
|
<view class="ac-parts">
|
||||||
<view @tap="toNote(0)" class="ac-part" style="background: linear-gradient(45deg, #ffa2a2,#ffd3d3, #ffffff00);">
|
<!-- <view @tap="toNote(0)" class="ac-part" style="background: linear-gradient(45deg, #ffa2a2,#ffd3d3, #ffffff00);">
|
||||||
术前注意事项
|
术前注意事项
|
||||||
<uni-icons type="forward" color="#ffa2a2" size="20"></uni-icons>
|
<uni-icons type="forward" color="#ffa2a2" size="20"></uni-icons>
|
||||||
|
</view> -->
|
||||||
|
<view @tap="toNote(0)" class="ac-part" >
|
||||||
|
<view class="note-text">术前注意事项</view>
|
||||||
|
<image class="note-bg" src="../../static/style/note1.png" mode=""></image>
|
||||||
</view>
|
</view>
|
||||||
<view @tap="toNote(1)" class="ac-part" style="background: linear-gradient(45deg, #f9b275,#fff3e9, #ffffff00);">
|
<view @tap="toNote(1)" class="ac-part" >
|
||||||
术中注意事项
|
<view class="note-text">术中注意事项</view>
|
||||||
<uni-icons type="forward" color="#f9b275" size="20"></uni-icons>
|
<image class="note-bg" src="../../static/style/note3.png" mode=""></image>
|
||||||
</view>
|
</view>
|
||||||
<view @tap="toNote(2)" class="ac-part" style="background: linear-gradient(45deg, #8fdc8a,#fdfdfd, #ffffff00);">
|
<view @tap="toNote(2)" class="ac-part" >
|
||||||
术后注意事项
|
<view class="note-text">术后注意事项</view>
|
||||||
<uni-icons type="forward" color="#8fdc8a" size="20"></uni-icons>
|
<image class="note-bg" src="../../static/style/note2.png" mode=""></image>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="test-card" @tap="toExam">
|
||||||
|
<view class="test-text">视力自测小助手</view>
|
||||||
|
<image class="test-img" src="../../static/style/test.png" mode=""></image>
|
||||||
|
</view>
|
||||||
<uni-popup ref="inputDialog" @tap="toBlur" :is-mask-click='false'>
|
<uni-popup ref="inputDialog" @tap="toBlur" :is-mask-click='false'>
|
||||||
<view class="pop-box">
|
<view class="pop-box">
|
||||||
<view class="pb-title">完善手术信息</view>
|
<view class="pb-title">完善手术信息</view>
|
||||||
@@ -250,7 +277,10 @@
|
|||||||
{{item.name}}
|
{{item.name}}
|
||||||
</view>
|
</view>
|
||||||
</view> -->
|
</view> -->
|
||||||
<uni-combox @input="onClickH" :candidates="hospitals" placeholder="请选择医院" @choosed="toChooseH" v-model="hValue"></uni-combox>
|
<!-- <uni-combox @input="onClickH" :candidates="hospitals" placeholder="请选择医院" @choosed="toChooseH" v-model="hValue"></uni-combox> -->
|
||||||
|
<picker @change="bindPickerChange" :value="h_index" :range="hospitals" range-key="name">
|
||||||
|
<view class="uni-input">{{hospitals[h_index]?.name}}</view>
|
||||||
|
</picker>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="pb-item pb-item-btn" @tap="toSave">提交</view>
|
<view class="pb-item pb-item-btn" @tap="toSave">提交</view>
|
||||||
@@ -266,6 +296,37 @@
|
|||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
.test-card{
|
||||||
|
padding: 30rpx 20rpx;
|
||||||
|
margin: 20rpx 0;
|
||||||
|
margin-top: 60rpx;
|
||||||
|
position: relative;
|
||||||
|
width: 50%;
|
||||||
|
.test-text{
|
||||||
|
position: relative;
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
.test-img{
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
left: 0px;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bg-imgs-card{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
left: 0px;
|
||||||
|
image{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
.pb-item-btn{
|
.pb-item-btn{
|
||||||
padding: 20rpx 0;
|
padding: 20rpx 0;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@@ -338,17 +399,31 @@
|
|||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
}
|
}
|
||||||
.attention-card{
|
.attention-card{
|
||||||
margin-top: 20rpx;
|
// margin-top: 20rpx;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
.ac-parts{
|
.ac-parts{
|
||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
.ac-part{
|
.ac-part{
|
||||||
display: flex;
|
// display: flex;
|
||||||
align-items: center;
|
// align-items: center;
|
||||||
justify-content: space-between;
|
// justify-content: space-between;
|
||||||
padding:30rpx 20rpx;
|
padding:30rpx 20rpx;
|
||||||
color: white;
|
// color: white;
|
||||||
margin: 20rpx 0;
|
margin: 20rpx 0;
|
||||||
|
position: relative;
|
||||||
|
.note-text{
|
||||||
|
position: relative;
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
.note-bg{
|
||||||
|
position: absolute;
|
||||||
|
/* z-index: 1; */
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
right: 0px;
|
||||||
|
top: 0px;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -357,13 +432,17 @@
|
|||||||
.mc-part-text{
|
.mc-part-text{
|
||||||
position: relative;
|
position: relative;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
font-size: 36rpx;
|
font-size: 28rpx;
|
||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
height: 100%;
|
||||||
}
|
}
|
||||||
width: 50%;
|
width: 50%;
|
||||||
/* text-align: center; */
|
/* text-align: center; */
|
||||||
background: linear-gradient(200deg, #82d8f2, #ddecf0);
|
background: linear-gradient(220deg, #9cd2bc, #fff);
|
||||||
color: white;
|
// color: white;
|
||||||
|
color: #484848;
|
||||||
padding: 40rpx 20rpx;
|
padding: 40rpx 20rpx;
|
||||||
margin: 0 20rpx;
|
margin: 0 20rpx;
|
||||||
border-radius: 20rpx;
|
border-radius: 20rpx;
|
||||||
@@ -372,16 +451,20 @@
|
|||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
image{
|
image{
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 66%;
|
left: 0;
|
||||||
right: 0;
|
top: 0px;
|
||||||
bottom: -20%;
|
width: 100%;
|
||||||
z-index: 1;
|
height: 100%;
|
||||||
// transform: rotate(315deg);
|
// position: absolute;
|
||||||
transform: rotate(45deg);
|
// width: 66%;
|
||||||
|
// right: 0;
|
||||||
|
// bottom: -20%;
|
||||||
|
// z-index: 1;
|
||||||
|
// transform: rotate(45deg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.mc-part2{
|
.mc-part2{
|
||||||
background: linear-gradient(200deg,#bbf4d5, #50c053);
|
background: linear-gradient(220deg, #9cd2bc, #fff);
|
||||||
// text-align: right;
|
// text-align: right;
|
||||||
}
|
}
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -407,14 +490,16 @@
|
|||||||
margin-top: 20rpx;
|
margin-top: 20rpx;
|
||||||
}
|
}
|
||||||
.page-box{
|
.page-box{
|
||||||
padding: 20rpx;
|
padding: 0 20rpx;
|
||||||
min-height: unset;
|
min-height: unset;
|
||||||
}
|
}
|
||||||
.content {
|
.content {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
// align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.logo {
|
.logo {
|
||||||
@@ -435,6 +520,7 @@
|
|||||||
font-size: 36rpx;
|
font-size: 36rpx;
|
||||||
color: #8f8f94;
|
color: #8f8f94;
|
||||||
}
|
}
|
||||||
</style>
|
image{will-change: transform}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -99,31 +99,42 @@
|
|||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
mask:true
|
mask:true
|
||||||
})
|
})
|
||||||
const res = await api.getTodoist(list_box.value[c_index.value].queryParams)
|
let operation_info = null
|
||||||
uni.hideLoading();
|
if(uni.getStorageSync('operation_info')) {
|
||||||
if(res.code === 0) {
|
operation_info = JSON.parse(uni.getStorageSync('operation_info'))
|
||||||
if(res.data && res.data.length > 0) {
|
}
|
||||||
// list.value.push(...res.data)
|
if(operation_info && operation_info.hospitalId) {
|
||||||
list_box.value[c_index.value].list.push(...res.data)
|
const res = await api.getHospitalInfo2({
|
||||||
|
hospitalId:operation_info.hospitalId,
|
||||||
|
timeNum:list_box.value[c_index.value].queryParams.statet
|
||||||
|
})
|
||||||
|
// return
|
||||||
|
// const res = await api.getTodoist(list_box.value[c_index.value].queryParams)
|
||||||
|
if(res.code === 0) {
|
||||||
|
if(res.data && res.data.length > 0) {
|
||||||
|
// list_box.value[c_index.value].list.push(...res.data)
|
||||||
|
list_box.value[c_index.value].list = res.data
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
list_box.value[c_index.value].queryParams.page--
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
list_box.value[c_index.value].queryParams.page--
|
uni.showToast({
|
||||||
|
title:res.msg,
|
||||||
|
icon:"error",
|
||||||
|
duration:2000,
|
||||||
|
mask:true,
|
||||||
|
success() {
|
||||||
|
if(res.code === 7) // 登录失败
|
||||||
|
{
|
||||||
|
store.afterFailLogin(2000)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
uni.hideLoading();
|
||||||
uni.showToast({
|
|
||||||
title:res.msg,
|
|
||||||
icon:"error",
|
|
||||||
duration:2000,
|
|
||||||
mask:true,
|
|
||||||
success() {
|
|
||||||
if(res.code === 7) // 登录失败
|
|
||||||
{
|
|
||||||
store.afterFailLogin(2000)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
function tabChange(currentIndex) {
|
function tabChange(currentIndex) {
|
||||||
c_index.value = currentIndex
|
c_index.value = currentIndex
|
||||||
@@ -182,7 +193,7 @@
|
|||||||
<swiper :current="c_index" @change="scroll_func" :style="{'--size':swiper_h+'px'}" class="swiper" circular :indicator-dots="false" :autoplay="false" >
|
<swiper :current="c_index" @change="scroll_func" :style="{'--size':swiper_h+'px'}" class="swiper" circular :indicator-dots="false" :autoplay="false" >
|
||||||
<swiper-item v-for="(item1,i1) in list_box">
|
<swiper-item v-for="(item1,i1) in list_box">
|
||||||
<view class="todoBox">
|
<view class="todoBox">
|
||||||
<view v-for="(item,i) in item1.list" @tap="handle_func(item,i)" class="td-item swiper-item uni-bg-green">
|
<view v-for="(item,i) in item1.list" v-if="item1.list.length>0" @tap="handle_func(item,i)" class="td-item swiper-item uni-bg-green">
|
||||||
<view class="td-content text-ellipsis-2">
|
<view class="td-content text-ellipsis-2">
|
||||||
{{item.content}}
|
{{item.content}}
|
||||||
</view>
|
</view>
|
||||||
@@ -190,6 +201,7 @@
|
|||||||
{{util.timestampToDate(item.CreatedAt)}}
|
{{util.timestampToDate(item.CreatedAt)}}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<emptyCard v-else></emptyCard>
|
||||||
</view>
|
</view>
|
||||||
</swiper-item>
|
</swiper-item>
|
||||||
</swiper>
|
</swiper>
|
||||||
|
@@ -11,15 +11,19 @@
|
|||||||
onLoad((e) => {
|
onLoad((e) => {
|
||||||
res_.value = JSON.parse(decodeURIComponent(e.res))
|
res_.value = JSON.parse(decodeURIComponent(e.res))
|
||||||
console.log(res_.value)
|
console.log(res_.value)
|
||||||
|
console.log(store.bgList)
|
||||||
|
if(store.bgList.length>0) {
|
||||||
|
bg_imgs.value = store.bgList
|
||||||
|
}
|
||||||
randomFunc()
|
randomFunc()
|
||||||
})
|
})
|
||||||
// 变量
|
// 变量
|
||||||
const res_ = ref(null)
|
const res_ = ref(null)
|
||||||
const userInfo = ref(null)
|
const userInfo = ref(null)
|
||||||
const bg_imgs = ref([
|
const bg_imgs = ref([
|
||||||
'/static/result1.jpg',
|
// {url:'/static/result1.jpg'},
|
||||||
'/static/result2.jpg',
|
// {url:'/static/result2.jpg'},
|
||||||
'/static/result3.jpg',
|
// {url:'/static/result3.jpg'},
|
||||||
])
|
])
|
||||||
const bg_index = ref(0)
|
const bg_index = ref(0)
|
||||||
const avatarUrl = ref(null)
|
const avatarUrl = ref(null)
|
||||||
@@ -27,9 +31,10 @@
|
|||||||
const show_ = ref(false)
|
const show_ = ref(false)
|
||||||
// 函数
|
// 函数
|
||||||
function randomFunc() {
|
function randomFunc() {
|
||||||
bg_index.value = parseInt((Math.random()*3))
|
bg_index.value = parseInt((Math.random()*store.bgList.length))
|
||||||
uni.getImageInfo({
|
uni.getImageInfo({
|
||||||
src:bg_imgs.value[bg_index.value],
|
// src:bg_imgs.value[bg_index.value],
|
||||||
|
src:bg_imgs.value[bg_index.value].url,
|
||||||
success:function(res) {
|
success:function(res) {
|
||||||
avatarUrl.value = uni.getStorageSync('avatarUrl')
|
avatarUrl.value = uni.getStorageSync('avatarUrl')
|
||||||
info.value.left = res_.value.leftEyeVision
|
info.value.left = res_.value.leftEyeVision
|
||||||
@@ -49,7 +54,7 @@
|
|||||||
</view> -->
|
</view> -->
|
||||||
<view class="actionBox">
|
<view class="actionBox">
|
||||||
<view class="img-box">
|
<view class="img-box">
|
||||||
<image style="width: 100%;" :src="bg_imgs[bg_index]" mode="widthFix"></image>
|
<image style="width: 100%;" :src="bg_imgs[bg_index].url" mode="widthFix"></image>
|
||||||
<view v-if="show_" class="avatar-box">
|
<view v-if="show_" class="avatar-box">
|
||||||
<image :src="avatarUrl" mode="widthFix"></image>
|
<image :src="avatarUrl" mode="widthFix"></image>
|
||||||
</view>
|
</view>
|
||||||
|
@@ -56,21 +56,28 @@
|
|||||||
duration:2000
|
duration:2000
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
function toResult(params) {
|
||||||
|
console.log(params)
|
||||||
|
uni.redirectTo({
|
||||||
|
url:"/pages/index/result?res="+encodeURIComponent(JSON.stringify(params))
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// encodeURIComponent(JSON.stringify(params))
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<view class="visinoListBox page-box">
|
<view class="visinoListBox page-box">
|
||||||
<view class="vl-item-box" v-if="list.length > 0">
|
<view class="vl-item-box" v-if="list.length > 0">
|
||||||
<view class="vl-item" v-for="(item,i) in list">
|
<view class="vl-item" v-for="(item,i) in list" @tap="toResult(item)">
|
||||||
<view class="vl-title">{{util.timestampToDate(item.CreatedAt)}}</view>
|
<view class="vl-title">{{util.timestampToDate(item.CreatedAt)}}</view>
|
||||||
<view class="vl-row-box">
|
<view class="vl-row-box">
|
||||||
<view class="vl-row">
|
<view class="vl-row">
|
||||||
<view class="vlr-left">右眼</view>
|
<view class="vlr-left">右眼</view>
|
||||||
<view class="vlr-left">{{item.rightEyeVision}}</view>
|
<view class="vlr-right">{{item.rightEyeVision}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="vl-row">
|
<view class="vl-row">
|
||||||
<view class="vlr-left">左眼</view>
|
<view class="vlr-left">左眼</view>
|
||||||
<view class="vlr-left">{{item.leftEyeVision}}</view>
|
<view class="vlr-right">{{item.leftEyeVision}}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -83,15 +90,23 @@
|
|||||||
.vl-item-box{
|
.vl-item-box{
|
||||||
padding: 20rpx;
|
padding: 20rpx;
|
||||||
.vl-item{
|
.vl-item{
|
||||||
|
margin-bottom: 20rpx;
|
||||||
|
padding: 20rpx;
|
||||||
|
/* border: 1px solid #eaeaea; */
|
||||||
|
border-radius: 20rpx;
|
||||||
|
box-shadow: 5px 5px 5px #f3f3f3;
|
||||||
.vl-title{
|
.vl-title{
|
||||||
border-left: 4rpx solid red;
|
border-left: 10rpx solid #26758d;
|
||||||
|
padding-left: 5px;
|
||||||
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
.vl-row-box{
|
.vl-row-box{
|
||||||
.vl-row{
|
.vl-row{
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
.vlr-left{
|
.vlr-left{
|
||||||
|
margin-right:20rpx
|
||||||
|
;color: gray;
|
||||||
}
|
}
|
||||||
.vlr-right{
|
.vlr-right{
|
||||||
margin-left: 20rpx;
|
margin-left: 20rpx;
|
||||||
|
@@ -149,7 +149,7 @@
|
|||||||
const params = {
|
const params = {
|
||||||
leftEyeVision:vision_info.value.left+'',
|
leftEyeVision:vision_info.value.left+'',
|
||||||
rightEyeVision:vision_info.value.right+'',
|
rightEyeVision:vision_info.value.right+'',
|
||||||
userId:userInfo.value.userId
|
userId:userInfo.value?.userId || 0
|
||||||
}
|
}
|
||||||
const res = await api.saveVision(params)
|
const res = await api.saveVision(params)
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
|
@@ -163,7 +163,7 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="row-box" v-else>
|
<view class="row-box" v-else>
|
||||||
<view class="rb-card" @tap="toDetail(1)" style="margin-bottom: 10px;">
|
<view class="rb-card" @tap="toDetail(1)" style="margin-bottom: 10px;display: none;">
|
||||||
<!-- <view class="rbc-title">手术历程</view> -->
|
<!-- <view class="rbc-title">手术历程</view> -->
|
||||||
<view class="rbc-content rbc-content-box">
|
<view class="rbc-content rbc-content-box">
|
||||||
<view class="rbc-content-row rbc-content-left">
|
<view class="rbc-content-row rbc-content-left">
|
||||||
|
@@ -71,9 +71,9 @@
|
|||||||
}
|
}
|
||||||
function toDetail(item) {
|
function toDetail(item) {
|
||||||
let info = encodeURIComponent(JSON.stringify(item))
|
let info = encodeURIComponent(JSON.stringify(item))
|
||||||
// console.log(info)
|
console.log(item)
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url:"/pages/wikipedia/detail?info="+info+"&id="+item.id
|
url:"/pages/wikipedia/detail?info="+info+"&id="+item.ID
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -82,11 +82,11 @@
|
|||||||
<view class="list-box">
|
<view class="list-box">
|
||||||
<view class="lb-card" v-if="list.length > 0" v-for="(item,i) in list" @tap="toDetail(item)">
|
<view class="lb-card" v-if="list.length > 0" v-for="(item,i) in list" @tap="toDetail(item)">
|
||||||
<view class="lb-left">
|
<view class="lb-left">
|
||||||
<image :src="item.cover_img" mode="aspectFill"></image>
|
<image :src="item.cover" mode="aspectFill"></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="lb-right">
|
<view class="lb-right">
|
||||||
<view class="lb-title">{{item.title}}</view>
|
<view class="lb-title">{{item.title}}</view>
|
||||||
<view class="lb-content text-ellipsis-1 small-text">{{item.content}}</view>
|
<view class="lb-content text-ellipsis-1 small-text">{{item.introduction}}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<emptyCard v-else></emptyCard>
|
<emptyCard v-else></emptyCard>
|
||||||
|
@@ -6,7 +6,9 @@
|
|||||||
import {useStore} from '@/store/index.js'
|
import {useStore} from '@/store/index.js'
|
||||||
const store = useStore()
|
const store = useStore()
|
||||||
import api from "@/api/index.js"
|
import api from "@/api/index.js"
|
||||||
|
const h_index = ref(0)
|
||||||
onLoad(() => {
|
onLoad(() => {
|
||||||
|
getHospitalList()
|
||||||
// console.log(useStore.userInfo)
|
// console.log(useStore.userInfo)
|
||||||
userinfo.value = JSON.parse(uni.getStorageSync('userInfo'))
|
userinfo.value = JSON.parse(uni.getStorageSync('userInfo'))
|
||||||
console.log(userinfo.value)
|
console.log(userinfo.value)
|
||||||
@@ -42,7 +44,8 @@
|
|||||||
hospitals.value = res.data.list
|
hospitals.value = res.data.list
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function onClickH() {
|
function onInputH() {
|
||||||
|
console.log(hValue.value)
|
||||||
h_queryParams.value.key = hValue.value
|
h_queryParams.value.key = hValue.value
|
||||||
getHospitalList()
|
getHospitalList()
|
||||||
|
|
||||||
@@ -162,6 +165,10 @@
|
|||||||
else{
|
else{
|
||||||
uni.clearStorage();
|
uni.clearStorage();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
function bindPickerChange(e) {
|
||||||
|
console.log(hospitals.value )
|
||||||
|
h_index.value = e.detail.value
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
@@ -215,8 +222,11 @@
|
|||||||
手术医院</view>
|
手术医院</view>
|
||||||
<view class="rbc-content-row rbc-content-right">
|
<view class="rbc-content-row rbc-content-right">
|
||||||
<!-- {{h_info?.name}} -->
|
<!-- {{h_info?.name}} -->
|
||||||
<uni-combox @input="onClickH" :candidates="hospitals" placeholder="请选择医院" @choosed="toChooseH" v-model="hValue"></uni-combox>
|
<!-- <uni-combox :border="false" @input="onInputH" :candidates="hospitals" placeholder="请选择医院" @choosed="toChooseH" v-model="userinfo.HospitalId"></uni-combox> -->
|
||||||
<uni-icons type="forward" color="gray" size="20"></uni-icons>
|
<!-- <uni-icons type="forward" color="gray" size="20"></uni-icons> -->
|
||||||
|
<picker @change="bindPickerChange" :value="h_index" :range="hospitals" range-key="name">
|
||||||
|
<view class="uni-input">{{hospitals[h_index]?.name}}</view>
|
||||||
|
</picker>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@@ -9,7 +9,11 @@
|
|||||||
import emptyCard from "@/components/emptyCard.vue"
|
import emptyCard from "@/components/emptyCard.vue"
|
||||||
import api from "@/api/index.js"
|
import api from "@/api/index.js"
|
||||||
import util from "@/utils"
|
import util from "@/utils"
|
||||||
|
const store = useStore()
|
||||||
onLoad((e) => {
|
onLoad((e) => {
|
||||||
|
if(uni.getStorageSync('userInfo')) {
|
||||||
|
userInfo.value = JSON.parse( uni.getStorageSync('userInfo'))
|
||||||
|
}
|
||||||
// console.log(e)
|
// console.log(e)
|
||||||
// a_info.value = JSON.parse(decodeURIComponent(e.info))
|
// a_info.value = JSON.parse(decodeURIComponent(e.info))
|
||||||
if(!e.id) {
|
if(!e.id) {
|
||||||
@@ -24,6 +28,7 @@
|
|||||||
getDetail(e.id)
|
getDetail(e.id)
|
||||||
})
|
})
|
||||||
// 变量
|
// 变量
|
||||||
|
const userInfo = ref(null)
|
||||||
// const content = ref(null)
|
// const content = ref(null)
|
||||||
const a_info = ref(null)
|
const a_info = ref(null)
|
||||||
// 函数
|
// 函数
|
||||||
@@ -41,7 +46,27 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
async function starFunc(type) { // 点击收藏
|
async function starFunc(type) { // 点击收藏
|
||||||
a_info.value.isStar = type
|
if(!userInfo.value) {
|
||||||
|
store.afterFailLogin(2000)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
console.log(a_info.value)
|
||||||
|
if(type) { // 添加收藏
|
||||||
|
const res = await api.getArticleFavorite({
|
||||||
|
wz_id:a_info.value.ID,
|
||||||
|
userId:userInfo.value.userId,
|
||||||
|
cover:a_info.value.cover_img,
|
||||||
|
title:a_info.value.title,
|
||||||
|
introductions:''
|
||||||
|
},userInfo.value.userId)
|
||||||
|
}
|
||||||
|
else{ // 取消收藏
|
||||||
|
const res = await api.delArticleFavorite({
|
||||||
|
id:a_info.value.ID,
|
||||||
|
},userInfo.value.userId)
|
||||||
|
}
|
||||||
|
a_info.value.is_favorite = type
|
||||||
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
@@ -57,7 +82,7 @@
|
|||||||
<view style="color: gray;">{{a_info?.reading_num}}</view>
|
<view style="color: gray;">{{a_info?.reading_num}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="ab-item">
|
<view class="ab-item">
|
||||||
<uni-icons color="#26758d" @tap="starFunc(0)" v-if="a_info?.isStar" type="star-filled" size="30"></uni-icons>
|
<uni-icons color="#26758d" @tap="starFunc(0)" v-if="a_info?.is_favorite" type="star-filled" size="30"></uni-icons>
|
||||||
<uni-icons color="gray" @tap="starFunc(1)" v-else type="star" size="30"></uni-icons>
|
<uni-icons color="gray" @tap="starFunc(1)" v-else type="star" size="30"></uni-icons>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@@ -56,7 +56,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
function toDetail(item) {
|
function toDetail(item) {
|
||||||
let info = encodeURIComponent(JSON.stringify(item))
|
// let info = encodeURIComponent(JSON.stringify(item))
|
||||||
// console.log(info)
|
// console.log(info)
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url:"./detail?id="+item.ID
|
url:"./detail?id="+item.ID
|
||||||
|
Before Width: | Height: | Size: 2.8 MiB |
Before Width: | Height: | Size: 2.8 MiB |
Before Width: | Height: | Size: 2.7 MiB |
BIN
static/style/0111熊猫眼小程序-13.png
Normal file
After Width: | Height: | Size: 7.8 KiB |
BIN
static/style/0111熊猫眼小程序-14.png
Normal file
After Width: | Height: | Size: 4.0 KiB |
BIN
static/style/0111熊猫眼小程序-15.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
BIN
static/style/0111熊猫眼小程序-16.png
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
static/style/0111熊猫眼小程序-17.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
static/style/0111熊猫眼小程序-18.png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
static/style/bg.png
Normal file
After Width: | Height: | Size: 1.1 MiB |
BIN
static/style/done.png
Normal file
After Width: | Height: | Size: 206 KiB |
BIN
static/style/note1.png
Normal file
After Width: | Height: | Size: 93 KiB |
BIN
static/style/note2.png
Normal file
After Width: | Height: | Size: 87 KiB |
BIN
static/style/note3.png
Normal file
After Width: | Height: | Size: 82 KiB |
BIN
static/style/test.png
Normal file
After Width: | Height: | Size: 121 KiB |
BIN
static/style/undone.png
Normal file
After Width: | Height: | Size: 184 KiB |
@@ -25,6 +25,7 @@ export const useStore = defineStore('main2', {
|
|||||||
remark_text:'',
|
remark_text:'',
|
||||||
address:'',
|
address:'',
|
||||||
operation_info:null, // 手术信息
|
operation_info:null, // 手术信息
|
||||||
|
bgList:[], // 测试结果背景图
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
actions:{
|
actions:{
|
||||||
@@ -158,6 +159,16 @@ export const useStore = defineStore('main2', {
|
|||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
async getBgList(){
|
||||||
|
const res = await api.getBgList({page:1,pageSize:100})
|
||||||
|
// console.log(res)
|
||||||
|
if(res.code == 0) {
|
||||||
|
if(res.data && res.data.list && res.data.list.length>0 ) {
|
||||||
|
this.bgList = res.data.list
|
||||||
|
// console.log(this.bgList)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
afterFailLogin(duration){
|
afterFailLogin(duration){
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
uni.removeStorageSync('userInfo');
|
uni.removeStorageSync('userInfo');
|
||||||
|