This commit is contained in:
曹辉 2022-11-03 17:26:15 +08:00
parent a440dea287
commit c78fa30e3a
32 changed files with 1330 additions and 1037 deletions

View File

@ -1,4 +1,4 @@
var baseurl = "http://192.168.16.30:8080"; // var baseurl = "http://192.168.16.30:8080";
// var baseurl = "http://192.168.16.48:8081"; var baseurl = "http://192.168.16.49:8081";
// var baseurl = "http://192.168.16.76:8080"; // var baseurl = "http://192.168.16.76:8080";
export default baseurl export default baseurl

View File

@ -18,7 +18,8 @@
}, },
/* */ /* */
"modules" : { "modules" : {
"Geolocation" : {} "Geolocation" : {},
"Maps" : {}
}, },
/* */ /* */
"distribute" : { "distribute" : {
@ -37,6 +38,7 @@
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>", "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>", "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.INTERNET\"/>", "<uses-permission android:name=\"android.permission.INTERNET\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>", "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>", "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>", "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
@ -50,14 +52,30 @@
"ios" : {}, "ios" : {},
/* SDK */ /* SDK */
"sdkConfigs" : { "sdkConfigs" : {
"maps" : {}, "maps" : {
"amap" : {
"appkey_ios" : "",
"appkey_android" : "b38c6aa0cb9a6323f48b05ea6462aed5"
}
},
"geolocation" : { "geolocation" : {
"system" : { "system" : {
"__platform__" : [ "android" ] "__platform__" : [ "android" ]
},
"amap" : {
"__platform__" : [ "android" ],
"appkey_ios" : "",
"appkey_android" : "b38c6aa0cb9a6323f48b05ea6462aed5"
} }
}, },
"push" : {}, "push" : {},
"payment" : {} "payment" : {
"weixin" : {
"__platform__" : [ "android" ],
"appid" : "",
"UniversalLinks" : ""
}
}
}, },
"splashscreen" : { "splashscreen" : {
"androidStyle" : "default", "androidStyle" : "default",
@ -67,6 +85,38 @@
"xhdpi" : "static/xhdpi.png" "xhdpi" : "static/xhdpi.png"
}, },
"useOriginalMsgbox" : true "useOriginalMsgbox" : true
},
"icons" : {
"android" : {
"hdpi" : "unpackage/res/icons/72x72.png",
"xhdpi" : "unpackage/res/icons/96x96.png",
"xxhdpi" : "unpackage/res/icons/144x144.png",
"xxxhdpi" : "unpackage/res/icons/192x192.png"
},
"ios" : {
"appstore" : "unpackage/res/icons/1024x1024.png",
"ipad" : {
"app" : "unpackage/res/icons/76x76.png",
"app@2x" : "unpackage/res/icons/152x152.png",
"notification" : "unpackage/res/icons/20x20.png",
"notification@2x" : "unpackage/res/icons/40x40.png",
"proapp@2x" : "unpackage/res/icons/167x167.png",
"settings" : "unpackage/res/icons/29x29.png",
"settings@2x" : "unpackage/res/icons/58x58.png",
"spotlight" : "unpackage/res/icons/40x40.png",
"spotlight@2x" : "unpackage/res/icons/80x80.png"
},
"iphone" : {
"app@2x" : "unpackage/res/icons/120x120.png",
"app@3x" : "unpackage/res/icons/180x180.png",
"notification@2x" : "unpackage/res/icons/40x40.png",
"notification@3x" : "unpackage/res/icons/60x60.png",
"settings@2x" : "unpackage/res/icons/58x58.png",
"settings@3x" : "unpackage/res/icons/87x87.png",
"spotlight@2x" : "unpackage/res/icons/80x80.png",
"spotlight@3x" : "unpackage/res/icons/120x120.png"
}
}
} }
} }
}, },

View File

@ -4,154 +4,61 @@
}, },
"pages": [ //pageshttps://uniapp.dcloud.io/collocation/pages "pages": [ //pageshttps://uniapp.dcloud.io/collocation/pages
{ {
"path": "pages/order/order",
"style": {
"navigationBarTitleText": "我的订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
},{
"path": "pages/CommodityOrder/CommodityOrder",
"style": {
"navigationBarTitleText": "商品订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
},
{
"path" : "pages/orderDetails/orderDetails",
"style" :
{
"navigationBarTitleText": "订单详情",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
},{
"path": "pages/refundType/refundType",
"style": {
"navigationBarTitleText": "选择退款类型",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/After sales details/After sales details",
"style": {
"navigationBarTitleText": "售后详情",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/Nursingstationserviceorder/Nursingstationserviceorder",
"style": {
"navigationBarTitleText": "护理站服务订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
},
{
"path": "pages/tobePaid/tobePaid",
"style": {
"navigationBarTitleText": "待付款",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/Completed/Completed",
"style": {
"navigationBarTitleText": "已完成",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/received/received",
"style": {
"navigationBarTitleText": "待收货",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/Applforrefund/Applforrefund",
"style": {
"navigationBarTitleText": "申请退款",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/modify/modify",
"style": {
"navigationBarTitleText": "修改信息",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, {
"path": "pages/Personal Center/Personal Center",
"style": {
"navigationBarTitleText": "个人中心",
"enablePullDownRefresh": false
}
}, {
"path": "pages/personal information/personal information",
"style": {
"navigationBarTitleText": "个人信息",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#4C7BC9",
"navigationBarTextStyle": "white"
}
}, {
"path": "pages/confirmOrder/confirmOrder",
"style": {
"navigationBarTitleText": "确认订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#4C7BC9", //
"navigationBarTextStyle": "white"
}
}, {
"path": "pages/shopping/shopping", //
"style": {
"navigationBarTitleText": "医路优品",
"navigationBarBackgroundColor": "#ffffff",
"onReachBottomDistance": 20, // px
"enablePullDownRefresh": true //true
}
}, {
"path": "pages/user/user",
"style": {
"navigationBarTitleText": "个人信息",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#4C7BC9", //
"navigationBarTextStyle": "white"
}
},
{
"path": "pages/Personal/Personal",
"style": {
"navigationBarTitleText": "个人中心",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff"
}
}, {
"path": "pages/homepage/homepage", "path": "pages/homepage/homepage",
"style": { "style": {
"navigationBarTitleText": "泉医到家", "navigationBarTitleText": "泉医到家",
"enablePullDownRefresh": false, "enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" "navigationBarBackgroundColor": "#ffffff"
} }
}, {
"path": "pages/register/register",
"style": {
"navigationBarTitleText": "注册账号",
"navigationBarBackgroundColor": "#ffffff"
}
}, {
"path": "pages/login/login",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
// "enablePullDownRefresh": false
}
},
{
"path": "pages/cancelorder/cancelorder",
"style": {
"navigationBarTitleText": "取消订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
},
{
"path": "pages/ServiceDetails/ServiceDetails",
"style": {
"navigationBarTitleText": "服务详情",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
},
{
"path": "pages/Nursingstationserviceorder/Nursingstationserviceorder",
"style": {
"navigationBarTitleText": "护理站服务订单",
"navigationBarBackgroundColor": "#ffffff", //
"onReachBottomDistance": 20, // px
"enablePullDownRefresh": true //true
}
},
{
"path": "pages/modify/modify",
"style": {
"navigationBarTitleText": "修改信息",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff" //
}
}, { }, {
"path": "pages/information/information", "path": "pages/information/information",
"style": { "style": {
@ -159,7 +66,101 @@
"navigationBarBackgroundColor": "#ffffff", // "navigationBarBackgroundColor": "#ffffff", //
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, {
"path": "pages/startup/startup",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
}
}, {
"path": "pages/Personal/Personal",
"style": {
"navigationBarTitleText": "个人中心",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff"
}
}, {
"path": "pages/CommodityOrder/CommodityOrder",
"style": {
"navigationBarTitleText": "商品订单",
"navigationBarBackgroundColor": "#ffffff",
"onReachBottomDistance": 20, // px
"enablePullDownRefresh": true //true
}
}, {
"path": "pages/logistics/logistics",
"style": {
"navigationBarTitleText": "查看物流",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff"
}
}, {
"path": "pages/user/user",
"style": {
"navigationBarTitleText": "个人信息",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#4C7BC9", //
"navigationBarTextStyle": "white"
}
}, },
{
"path": "pages/Aftersalesdetails/Aftersalesdetails",
"style": {
"navigationBarTitleText": "售后详情",
"navigationBarBackgroundColor": "#ffffff",
"enablePullDownRefresh": false
}
},
{
"path": "pages/Applforrefund/Applforrefund",
"style": {
"navigationBarTitleText": "申请退款",
"navigationBarBackgroundColor": "#ffffff",
"enablePullDownRefresh": false
}
},
{
"path": "pages/refundType/refundType",
"style": {
"navigationBarTitleText": "选择退款类型",
"navigationBarBackgroundColor": "#ffffff",
"enablePullDownRefresh": false
}
},
{
"path": "pages/orderDetails/orderDetails",
"style": {
"navigationBarTitleText": "订单详情",
"navigationBarBackgroundColor": "#ffffff",
"enablePullDownRefresh": false
}
}, {
"path": "pages/order/order",
"style": {
"navigationBarTitleText": "我的订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ffffff"
}
},
{
"path": "pages/shopping/shopping", //
"style": {
"navigationBarTitleText": "医路优品",
"navigationBarBackgroundColor": "#ffffff",
"onReachBottomDistance": 20, // px
"enablePullDownRefresh": true //true
}
}, {
"path": "pages/confirmOrder/confirmOrder",
"style": {
"navigationBarTitleText": "确认订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#4C7BC9", //
"navigationBarTextStyle": "white"
}
},
{ {
"path": "pages/disease/disease", "path": "pages/disease/disease",
"style": { "style": {
@ -189,25 +190,6 @@
"navigationBarBackgroundColor": "#ffffff", // "navigationBarBackgroundColor": "#ffffff", //
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, {
"path": "pages/startup/startup",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
}
}, {
"path": "pages/login/login",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
// "enablePullDownRefresh": false
}
}, {
"path": "pages/register/register",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
}
}, },
{ {
"path": "pages/ProductList/ProductList", // "path": "pages/ProductList/ProductList", //
@ -229,8 +211,9 @@
"path": "pages/nursestation/nursestation", "path": "pages/nursestation/nursestation",
"style": { "style": {
"navigationBarTitleText": "护理站详情", "navigationBarTitleText": "护理站详情",
"enablePullDownRefresh": false, "navigationBarBackgroundColor": "#ffffff",
"navigationBarBackgroundColor": "#ffffff" "onReachBottomDistance": 100, // px
"enablePullDownRefresh": true //true
} }
}, { }, {
@ -273,16 +256,6 @@
"navigationBarBackgroundColor": "#ffffff" "navigationBarBackgroundColor": "#ffffff"
} }
} }
, {
"path": "pages/Service Details/Service Details",
"style": {
"navigationBarTitleText": "服务详情",
"enablePullDownRefresh": false
}
}
], ],
"globalStyle": { "globalStyle": {
"navigationBarTextStyle": "black", "navigationBarTextStyle": "black",
@ -301,7 +274,6 @@
"iconPath": "static/homepagew.png", "iconPath": "static/homepagew.png",
"selectedIconPath": "static/homepagews.png", "selectedIconPath": "static/homepagews.png",
"text": "首页" "text": "首页"
}, },
{ {
"pagePath": "pages/Personal/Personal", "pagePath": "pages/Personal/Personal",
@ -310,25 +282,5 @@
"text": "个人中心" "text": "个人中心"
} }
] ]
},
"tabBar": {
"color": "#7A7E83",
"selectedColor": "#435950",
"borderStyle": "black",
"backgroundColor": "#ffffff",
"list": [{
"pagePath": "pages/Personal Center/Personal Center",
"iconPath": "static/homepagew.png",
"selectedIconPath": "static/homepagews.png",
"text": "首页"
},
{
"pagePath": "",
"iconPath": "static/userw.png",
"selectedIconPath": "static/users.png",
"text": "我的"
}
]
} }
} }

View File

@ -1,9 +1,8 @@
.app { .app {
background-color: #F4F5F7;
width: 100%; width: 100%;
height: 100vh; height: 100vh;
padding: 3%; padding: 3%;
background-image: linear-gradient(to bottom, #F4F5F7, #ffffff);
.submits { .submits {
width: 501rpx; width: 501rpx;
height: 71rpx; height: 71rpx;

View File

@ -12,7 +12,7 @@
<span v-if="item.orderStatus=='CANCEL'">已取消</span> <span v-if="item.orderStatus=='CANCEL'">已取消</span>
<span v-if="item.orderStatus=='WAIT_RECEIVED_GOODS'">待收货</span> <span v-if="item.orderStatus=='WAIT_RECEIVED_GOODS'">待收货</span>
<span v-if="item.orderStatus=='RECEIVED_GOODS'">已完成</span> <span v-if="item.orderStatus=='RECEIVED_GOODS'">已完成</span>
<!-- <span v-if="item.orderStatus=='PAY'">待发货</span> --> <span v-if="item.orderStatus=='PAY'">待发货</span>
<span v-if="item.orderStatus=='REFUNDED'">退款成功</span> <span v-if="item.orderStatus=='REFUNDED'">退款成功</span>
<span v-if="item.orderStatus=='WAIT_RETURNED_GOODS'">待退货</span> <span v-if="item.orderStatus=='WAIT_RETURNED_GOODS'">待退货</span>
<span v-if="item.orderStatus=='RETURNED_GOODS'">退款成功</span> <span v-if="item.orderStatus=='RETURNED_GOODS'">退款成功</span>
@ -39,7 +39,7 @@
<view class="anniu"> <view class="anniu">
<view class="logistics" v-if="item.orderStatus=='WAIT_RECEIVED_GOODS'" @tap='gologistics(item)'>查看物流 <view class="logistics" v-if="item.orderStatus=='WAIT_RECEIVED_GOODS'" @tap='gologistics(item)'>查看物流
</view> </view>
<view class="logistics harvest" @tap='show=true' v-if="item.orderStatus=='WAIT_PAY'"> <view class="logistics harvest" @tap='Receipt(item)' v-if="item.orderStatus=='WAIT_PAY'">
去支付</view> 去支付</view>
<view class="logistics harvest" @tap='Receipt(item)' v-if="item.orderStatus=='WAIT_RECEIVED_GOODS'"> <view class="logistics harvest" @tap='Receipt(item)' v-if="item.orderStatus=='WAIT_RECEIVED_GOODS'">
确认收货</view> 确认收货</view>
@ -112,6 +112,7 @@
}, },
// //
Receipt(item) { Receipt(item) {
console.log(item)
this.img = item.attributePitureUrl this.img = item.attributePitureUrl
this.show = true this.show = true
}, },
@ -127,7 +128,6 @@
}); });
}, },
onLoad(options) { // onLoad(options) { //
console.log(options)
if (options.orderStatus) { if (options.orderStatus) {
this.orderStatus = options.orderStatus this.orderStatus = options.orderStatus
if(options.orderStatus=='WAIT_PAY'){ if(options.orderStatus=='WAIT_PAY'){

View File

@ -0,0 +1,88 @@
.app {
padding: 2%;
height: 100vh;
background-image: linear-gradient(to bottom, #F4F5F7, #ffffff);
.item {
width: 99%;
background: #FFFFFF;
box-shadow: 0px 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
border-radius: 20rpx;
padding: 0 0 20rpx 0;
margin: 20rpx auto;
.name {
width: 95%;
height: 90rpx;
font-size: 30rpx;
color: #969394;
line-height: 90rpx;
border-bottom: 1rpx solid #D8D4D4;
margin: 0 auto;
span {
color: #4C7BC9;
float: right;
}
image {
width: 15rpx;
height: 23rpx;
padding-left: 25rpx;
}
}
.detailslist {
display: flex;
image {
width: 182rpx;
height: 182rpx;
margin: 20rpx 0 0 20rpx;
}
.model {
width: 70%;
margin: 30rpx 0 0 20rpx;
span {
font-size: 34rpx;
color: #000000;
}
span:nth-child(1) {
display: inline-block;
width: 70%;
}
span:nth-child(2) {
color: #969394;
float: right;
margin-right: 30rpx;
}
.bottom {
margin-top: 40rpx;
span {
font-size: 32rpx;
color: #969394;
}
}
}
}
.submit {
width: 25%;
height: 68rpx;
line-height: 68rpx;
background: #4C7BC9;
border-radius: 26rpx;
text-align: center;
font-size: 32rpx;
color: #FFFFFF;
margin-left: 70%;
}
}
}

View File

@ -1,29 +1,37 @@
<template> <template>
<view class="app"> <view class="app">
<view class="content"> <view class="item" v-for="(item,index) in list" :key="index">
<view class="name"> <view class="name">
{{list.createTime}} {{item.createTime}}
<span>{{list.orderStatus=='WAIT_PAY'?'待付款':''}} <span>{{item.orderStatus=='WAIT_PAY'?'待付款':''}}
{{list.orderStatus=='WAIT_DISPATCH'?'待派单':''}} {{item.orderStatus=='PAY'?'已付款':''}}
{{list.orderStatus=='NOT_FINISH'?'未完成':''}} {{item.orderStatus=='WAIT_DISPATCH'?'待派单':''}}
{{list.orderStatus=='COMPLETE'?'服务完成':''}}</span> {{item.orderStatus=='NOT_FINISH'?'待完成':''}}
{{item.orderStatus=='COMPLETE'?'服务完成':''}}
{{item.orderStatus=='WAIT_REFUND'?'退款中':''}}
{{item.orderStatus=='REFUNDED'?'已退款':''}}
{{item.orderStatus=='CANCEL'?'已取消':''}}
</span>
</view> </view>
<view class="details"> <view class="detailslist" @tap="gofinished(item)">
<view class="detailslist"> <image :src="baseurl+item.itemPictureUrl" mode=""></image>
<image src="/static/fuwutu.png" mode=""></image> <view class="model">
<view class="model"> <view class="top">
<view class="top"> <span>{{item.nurseItemName}}</span>
<span>{{list.nurseItemName}}</span> <span>{{item.totalPrice}}</span>
<span>{{list.totalPrice}}</span> </view>
</view> <view class="bottom">
<view class="bottom"> <span>服务时长{{item.itemServeDurationUnit}}</span>
<span>服务时长{{list.itemServeDurationUnit}}</span>
</view>
</view> </view>
</view> </view>
<view class="submit" @tap="gofinished"> </view>
确认完成 <view class="submit" @tap='buy(item)' style="background-color:coral;" v-if="item.orderStatus=='WAIT_PAY'">
</view> 去支付
</view>
<view class="submit" style="background-color: crimson;" v-if="item.orderStatus=='WAIT_REFUND'">退款进度</view>
<view class="submit"
v-if="item.orderStatus=='PAY'||item.orderStatus=='WAIT_DISPATCH'||item.orderStatus=='NOT_FINISH'">
确认完成
</view> </view>
</view> </view>
</view> </view>
@ -37,120 +45,61 @@
export default { export default {
data() { data() {
return { return {
patientId: 46, baseurl: '',
patientId: null,
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
list: [], list: [],
} }
}, },
onLoad() { onLoad() {
this.getinfo() this.baseurl = baseurl
let that = this
uni.getStorage({
key: 'patientId',
success: function(res) {
that.patientId = res.data
that.getinfo()
}
});
}, },
methods: { methods: {
//
buy(item) {
},
getinfo() { getinfo() {
appServiceOrder(this.patientId, this.pageNum, this.pageSize).then(res => { appServiceOrder(this.patientId, this.pageSize, this.pageNum).then(res => {
// console.log(res) this.list = res.rows;
this.list = res.rows[0]; this.total = res.total
console.log(this.list)
}) })
}, },
gofinished() { gofinished(item) {
uni.navigateTo({ uni.navigateTo({
url: '/pages/ServiceDetails/ServiceDetails' url: `/pages/ServiceDetails/ServiceDetails?stationId=${item.stationId}&stationItemId=${item.stationItemId}&stationItemPriceId=${item.stationItemPriceId}&orderNo=${item.orderNo}&orderStatus=${item.orderStatus}`
}) })
}, },
} },
onReachBottom() { //
if (this.list.length >= this.total) {} else {
this.pageNum++
appServiceOrder(this.patientId, this.pageSize, this.pageNum).then(res => {
res.rows.forEach(e => {
this.list.push(e)
})
})
}
},
onPullDownRefresh() { //
this.pageNum = 1;
this.getinfo()
setTimeout(function() {
uni.stopPullDownRefresh();
}, 1000);
},
} }
</script> </script>
<style lang="scss"> <style lang="scss">
.app { @import './Nursingstationserviceorder.scss';
height: 100vh;
padding: 2%;
.content {
// margin-top: 3%;
width: 99%;
height: 386rpx;
background: #FFFFFF;
box-shadow: 0px 9px 31px 9px rgba(0, 0, 0, 0.03);
border-radius: 20px;
margin: 0 auto;
margin-top: 2%;
.name {
width: 95%;
height: 90rpx;
font-size: 30rpx;
color: #969394;
line-height: 90rpx;
border-bottom: 1rpx solid #D8D4D4;
margin: 0 auto;
span {
color: #4C7BC9;
float: right;
}
image {
width: 15rpx;
height: 23rpx;
padding-left: 25rpx;
}
}
.details {
height: 250rpx;
.detailslist {
display: flex;
image {
width: 182rpx;
height: 182rpx;
margin: 20rpx 0 0 20rpx;
}
.model {
width: 70%;
margin: 30rpx 0 0 20rpx;
span {
font-size: 38rpx;
color: #000000;
}
span:nth-child(2) {
color: #969394;
float: right;
margin-right: 30rpx;
}
.bottom {
margin-top: 20rpx;
span {
font-size: 35rpx;
color: #969394;
}
}
}
}
.submit {
width: 175rpx;
height: 68rpx;
line-height: 68rpx;
background: #4C7BC9;
border-radius: 26rpx;
text-align: center;
font-size: 32rpx;
color: #FFFFFF;
float: right;
margin-right: 30rpx;
}
}
}
}
</style> </style>

View File

@ -83,7 +83,8 @@
<style lang="scss"> <style lang="scss">
.app { .app {
padding: 0; padding: 0;
height: 100vh;
background-image: linear-gradient(to bottom, #F4F5F7, #ffffff);
.productlist { .productlist {
width: 100%; width: 100%;
margin: 0 auto; margin: 0 auto;

View File

@ -0,0 +1,216 @@
.app {
height: 100%;
padding: 2%;
font-size: 36rpx;
padding-top: 10rpx;
font-size: 34rpx;
.OrderStatus{
text-align: center;
width: 300rpx;
height: 70rpx;
margin: 0 auto;
line-height: 70rpx;
background-color:#4C7BC9 ;
border-radius: 50rpx;
// color: #4C7BC9;
color: #FFFFFF;
border: 1rpx solid #4C7BC9;
}
// 服务商家
.detail {
margin-top: 3%;
line-height: 31rpx;
font-size: 32rpx;
color: #666666;
line-height: 31rpx;
margin-left: 3%;
}
.name {
width: 95%;
height: 90rpx;
// margin-left: 3%;
line-height: 90rpx;
border-bottom: 1rpx solid #D8D4D4;
margin: 0 auto;
}
//按钮取消订单和评价
.evaluate {
width: 35%;
display: flex;
// float: right;
margin: 100rpx 0 50rpx 60%;
font-size: 32rpx;
.cancelorder {
margin-left: 5%;
width: 216rpx;
height: 68rpx;
background: #E1AE3C;
border-radius: 26rpx;
text-align: center;
color: #ffffff;
line-height: 68rpx;
}
}
//备注
.remarks {
width: 95%;
margin: 20rpx auto;
padding: 3%;
background: #FFFFFF;
border-radius: 20rpx;
position: relative;
view {
display: inline-block;
width: 20%;
}
input {
display: inline-block;
width: 80%;
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 20%;
color: #666666;
}
}
/* 耗材包 */
.Consumablespackage {
width: 95%;
// height: 188rpx;
margin: 20rpx auto;
padding: 3% 3% 50rpx;
background: #FFFFFF;
border-radius: 20rpx;
span {
font-size: 32rpx;
color: #D43953;
float: right;
}
}
/* 套餐 */
.Package {
width: 94%;
margin: 20rpx auto 0;
padding: 3% 3% 50rpx;
background: #FFFFFF;
border-radius: 20rpx;
span {
font-size: 32rpx;
color: #D43953;
float: right;
}
}
//服务项目和服务商家
.content {
width: 95%;
height: 100%;
background: #FFFFFF;
box-shadow: 0px 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
border-radius: 20rpx;
margin: 20rpx auto 0;
padding: 3% 3% 40rpx 3%;
line-height: 60rpx;
// 服务信息
.contacts {
margin-top: 1%;
font-size: 32rpx;
padding: 0 3% 0 3%;
color: #666666;
// line-height: 38rpx;
}
.drug {
font-size: 32rpx;
color: #666666;
padding: 0 3% 0 3%;
}
.details {
.callme {
width: 150rpx;
height: 48rpx;
background: #D43953;
border-radius: 24px;
font-size: 21rpx;
color: #ffffff;
line-height: 48rpx;
text-align: center;
position: relative;
margin-top: 20rpx;
.icon{
position: absolute;
left:10%;
top:50%;
transform: translateY(-50%);
}
.text{
position: absolute;
top:50%;
right:10%;
transform: translateY(-50%);
}
}
.detailslist {
position: relative;
image {
width: 182rpx;
height: 182rpx;
margin: 20rpx 0 0 20rpx;
}
.model {
position: absolute;
left:35%;
top:20%;
width: 65%;
.top,.bottom{
view {
width: 100%;
font-size: 32rpx;
color: #000000;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
.bottom {
view {
font-size: 25rpx;
color: #969394;
}
}
}
}
.submit {
width: 175rpx;
height: 68rpx;
line-height: 68rpx;
background: #4C7BC9;
border-radius: 26rpx;
text-align: center;
font-size: 32rpx;
color: #FFFFFF;
float: right;
margin-right: 30rpx;
}
}
}
}

View File

@ -1,46 +1,41 @@
<template> <template>
<view class="app"> <view class="app">
<view class="OrderStatus" v-if="orderStatus=='REFUNDED'||orderStatus=='CANCEL'">
订单已关闭
</view>
<view class="content"> <view class="content">
<view class="name"> <view class="name">
服务商家 服务商家
</view> </view>
<view class="details"> <view class="details">
<view class="detailslist"> <view class="detailslist">
<image src="/static/fuwutu.png" mode=""></image> <image :src="baseurl+nursestationlist.stationPictureUrl" mode=""></image>
<view class="model"> <view class="model">
<view class="top"> <view class="top">
<span>{{nursestationlist.nurseStationName}}</span> <view>{{nursestationlist.nurseStationName}}</view>
</view> </view>
<view class="bottom"> <view class="bottom">
<span>{{nursestationlist.address}}</span> <view>{{nursestationlist.address}}</view>
</view>
<view class="callme" @tap="gophone()">
<u-icon class='icon' name="phone-fill" color="#ffffff" size="30"></u-icon>
<view class="text">联系我们</view>
</view> </view>
</view> </view>
</view> </view>
<view class="call">
<view class="callme" @tap="gophone()">
<u-icon name="phone-fill" color="#ffffff" size="28"></u-icon>
联系我们
</view>
<view class="Navigation">
<image src="/static/daohang.png" mode="">导航</image>
</view>
</view>
</view> </view>
</view> </view>
<view class="content" style="height: 200rpx;"> <view class="content">
<view class="name"> <view class="name">
服务项目 服务项目
</view> </view>
<view class="drug">·{{orderlist.nurseItemName}} </view> <view class="drug">·{{orderlist.nurseItemName}} </view>
</view> </view>
<view class="content">服务信息
<view class="content" style="height: 390rpx;line-height: 60rpx;padding:3% ;">服务信息 <view class="contacts">·联系人{{userinfo.patientName}}</view>
<view class="contacts">·联系人{{list.patientName}}</view> <view class="contacts">·电话:{{userinfo.phone}}</view>
<view class="contacts">·电话:{{list.phone}}</view> <view class="contacts">·地址{{userinfo.serviceAddress}}</view>
<view class="contacts">·地址{{list.serviceAddress}}</view> <view class="contacts">·时间{{userinfo.serviceDate}}</view>
<view class="contacts">·时间{{list.serviceDate}}</view>
</view> </view>
<view class="Package">套餐信息 <view class="Package">套餐信息
<span>{{orderlist.nurseItemPrice}}</span> <span>{{orderlist.nurseItemPrice}}</span>
@ -50,17 +45,18 @@
</view> </view>
<view class="Consumablespackage" v-if='orderlist.itemConsumableList'>耗材包详情 <view class="Consumablespackage" v-if='orderlist.itemConsumableList'>耗材包详情
<span>{{orderlist.itemConsumableList[0].consumablePrice}}</span> <span>{{orderlist.itemConsumableList[0].consumablePrice}}</span>
<view class="detail" > <view class="detail">
·{{orderlist.itemConsumableList[0].consumableDetail}} ·{{orderlist.itemConsumableList[0].consumableDetail}}
</view> </view>
</view> </view>
<view class="remarks"> <view class="remarks">
<view>备注</view> <view>备注</view>
<input placeholder=""> <input placeholder="" v-model='userinfo.remark'>
</view> </view>
<view class="evaluate"> <view class="evaluate">
<view class="cancelorder" @tap="cancelorderment()">取消订单</view> <view class="cancelorder" @tap="cancelorderment()"
<view class="cancelorder " style="background: #4C7BC9;">评价</view> v-if="orderStatus=='PAY'||orderStatus=='WAIT_DISPATCH'||orderStatus=='NOT_FINISH'">取消订单</view>
<!-- <view class="cancelorder " style="background: #4C7BC9;">评价</view> -->
</view> </view>
</view> </view>
</template> </template>
@ -76,266 +72,81 @@
export default { export default {
data() { data() {
return { return {
// patientId: 46, baseurl: '',
list:[], userinfo: [], //
orderlist:[],// orderlist: [], //
nursestationlist:[],// nursestationlist: [], //
stationId:3, stationId: '',
stationItemId:3, stationItemId: '',
stationItemPriceId:4, stationItemPriceId: '',
nurseStationId:2, orderNo: '',
orderNo:'00001511774895025200', orderStatus: '',
appointmentOrderId:16,
} }
}, },
onLoad() { onLoad(options) {
this.stationId = options.stationId
this.stationItemId = options.stationItemId
this.stationItemPriceId = options.stationItemPriceId
this.orderStatus = options.orderStatus
this.orderNo = options.orderNo
this.baseurl = baseurl
this.getinfo() this.getinfo()
this.getPatientInfo()
this.getlist() this.getlist()
this.getPatientInfo()
}, },
methods: { methods: {
gophone() {
var that = this
uni.getSystemInfo({
success: function(res) {
console.log(res)
if (res.platform == 'ios') {
uni.makePhoneCall({
phoneNumber: that.nursestationlist.phone //
});
} else {
uni.showActionSheet({
itemList: ['呼叫', ],
success: function(res) {
if (res.tapIndex + 1 == 1) {
uni.makePhoneCall({
phoneNumber: that.nursestationlist.phone //
});
}
},
fail: function(res) {}
});
}
}
});
},
//
getinfo() { getinfo() {
getOrderPatientInfo(this.orderNo).then(res => { getOrderPatientInfo(this.orderNo).then(res => {
console.log(res) this.userinfo = res.data;
this.list = res.data;
// console.log(this.list)
}) })
}, },
// //
getlist() { getlist() {
introductionList(this.nurseStationId).then(res => { introductionList(this.stationId).then(res => {
this.nursestationlist = res[0]; this.nursestationlist = res[0];
console.log(this.nursestationlist)
}) })
}, },
// //
getPatientInfo(stationId, stationItemId, stationItemPriceId) { getPatientInfo() {
getAppStationItemInfo(this.stationId, this.stationItemId, this.stationItemPriceId).then(res => { getAppStationItemInfo(this.stationId, this.stationItemId, this.stationItemPriceId).then(res => {
this.orderlist = res.data this.orderlist = res.data
console.log(this.orderlist)
//
}) })
}, },
cancelorderment(){ cancelorderment() {
uni.navigateTo({ uni.navigateTo({
url: `/pages/cancelorder/cancelorder?nurseItemPrice=${this.orderlist.nurseItemPrice}` url: `/pages/cancelorder/cancelorder?nurseItemPrice=${this.orderlist.nurseItemPrice}&appointmentOrderId=${this.userinfo.appointmentOrderId}`
}) })
}, },
} }
} }
</script> </script>
<style lang="scss"> <style lang="scss">
.app { @import './ServiceDetails.scss';
height: 135vh;
padding: 2%;
font-size: 36rpx;
padding-top: 10rpx;
//
.detail {
margin-top: 3%;
line-height: 31rpx;
font-size: 33rpx;
color: #666666;
line-height: 31rpx;
margin-left: 10%;
}
.name {
width: 95%;
height: 90rpx;
// margin-left: 3%;
font-size: 35rpx;
line-height: 90rpx;
border-bottom: 1rpx solid #D8D4D4;
margin: 0 auto;
}
//
.evaluate {
display: flex;
float: right;
margin-top: 3%;
font-size: 32rpx;
.cancelorder {
margin-left: 1%;
width: 216rpx;
height: 68rpx;
background: #E1AE3C;
border-radius: 26rpx;
text-align: center;
color: #ffffff;
line-height: 68rpx;
}
}
//
.remarks {
width: 94%;
height: 382rpx;
margin: 10rpx auto;
padding: 3%;
font-size: 35rpx;
height: 96rpx;
background: #FFFFFF;
border-radius: 20rpx;
margin-top: 2%;
input {
margin-top: -6%;
margin-left: 15%;
}
}
/* 耗材包 */
.Consumablespackage {
width: 94%;
// height: 188rpx;
margin: 10rpx auto;
padding: 3%;
font-size: 35rpx;
height: 188rpx;
background: #FFFFFF;
border-radius: 20rpx;
margin-top: 2%;
span {
font-size: 32rpx;
color: #D43953;
float: right;
}
}
/* 套餐 */
.Package {
width: 94%;
margin: 10rpx auto;
padding: 3%;
font-size: 35rpx;
height: 243rpx;
background: #FFFFFF;
border-radius: 20rpx;
margin-top: 2%;
span {
font-size: 32rpx;
color: #D43953;
float: right;
}
}
//
.content {
width: 95%;
height: 336rpx;
background: #FFFFFF;
box-shadow: 0px 9px 31px 9px rgba(0, 0, 0, 0.03);
border-radius: 20px;
margin: 0 auto;
font-size: 35rpx;
margin-top: 2%;
//
.contacts {
margin-top: 1%;
font-size: 33rpx;
margin-left: 10%;
color: #666666;
// line-height: 38rpx;
}
.drug {
font-size: 33rpx;
color: #666666;
line-height: 38px;
margin-left: 12%;
}
.details {
height: 250rpx;
.call {
display: flex;
margin-top: -7%;
margin-left: 3%;
.Navigation {
width: 103rpx;
height: 48rpx;
background: #00C176;
border-radius: 24px;
font-size: 21rpx;
color: #ffffff;
line-height: 48rpx;
margin-left: 3%;
text-align: center;
image {
width: 24rpx;
height: 24rpx;
}
}
.callme {
width: 149rpx;
height: 48rpx;
background: #D43953;
border-radius: 24px;
font-size: 21rpx;
color: #ffffff;
line-height: 48rpx;
margin-left: 30%;
text-align: center;
}
}
.detailslist {
display: flex;
image {
width: 182rpx;
height: 182rpx;
margin: 20rpx 0 0 20rpx;
}
.model {
width: 70%;
margin: 30rpx 0 0 20rpx;
span {
font-size: 33rpx;
color: #000000;
}
.bottom {
span {
font-size: 25rpx;
color: #969394;
}
}
}
}
.submit {
width: 175rpx;
height: 68rpx;
line-height: 68rpx;
background: #4C7BC9;
border-radius: 26rpx;
text-align: center;
font-size: 32rpx;
color: #FFFFFF;
float: right;
margin-right: 30rpx;
}
}
}
}
</style> </style>

View File

@ -133,17 +133,17 @@
key: 'patientId', key: 'patientId',
success: function(res) { success: function(res) {
that.patientId = res.data that.patientId = res.data
console.log(that.patientId)
// //
getAppPatientList(that.patientId).then(response => { getAppPatientList(that.patientId).then(response => {
// response.data.forEach(e => { that.personInfo = response.data
// e.address = e.sysAreaVOList[0].provinceName + e.sysAreaVOList[ that.personInfo.address = response.data.provinceName + response.data
// 0].cityName + e.sysAreaVOList[0].regionName + e .cityName + response.data.regionName + response.data.streetName +
// .sysAreaVOList[0].streetName + e.receiveAddress response.data.address
// })
that.personInfo = response.data;
that.personInfo.address = response.data.provinceName + response.data.cityName +response.data.regionName + response.data.streetName + response.data.address;
that.orderlist.patientId = response.data.patientId that.orderlist.patientId = response.data.patientId
that.orderlist.serviceAddress = response.data.provinceName + response.data.cityName +response.data.regionName + response.data.streetName + response.data.address that.orderlist.serviceAddress = response.data.provinceName + response.data
.cityName + response.data.regionName + response.data.streetName +
response.data.address
}) })
} }
}); });

View File

@ -1,14 +1,13 @@
<template> <template>
<view class="app"> <view class="app">
<view class="content">退款金额 <view class="content">退款金额
<span>{{orderlist.nurseItemPrice}}</span> <span>{{nurseItemPrice}}</span>
</view> </view>
<view class="reason"> <view class="reason">
<view class="ability">退款原因</view> <view class="ability">退款原因</view>
<input type="text" placeholder="请输入退款原因" v-model="cancelAppointmentReason"> <u-input v-model="cancelAppointmentReason" type="textarea" placeholder="请输入退款原因" />
</view> </view>
<view class="ConfirmCancel" @tap="gocancel()">确认取消 <view class="ConfirmCancel" @tap="gocancel()">确认取消
</view> </view>
<u-toast ref="uToast" /> <u-toast ref="uToast" />
</view> </view>
@ -22,15 +21,15 @@
export default { export default {
data() { data() {
return { return {
orderlist: [], nurseItemPrice: null,
appointmentOrderId: 14, appointmentOrderId: null,
cancelAppointmentReason: '', cancelAppointmentReason: '',
} }
}, },
onLoad(options) { onLoad(options) {
console.log(options) console.log(options)
this.orderlist.nurseItemPrice = options.nurseItemPrice this.appointmentOrderId = options.appointmentOrderId
this.nurseItemPrice = options.nurseItemPrice
}, },
methods: { methods: {
gocancel() { gocancel() {
@ -44,13 +43,11 @@
this.$refs.uToast.show({ this.$refs.uToast.show({
title: '取消成功', title: '取消成功',
type: 'success', type: 'success',
toast: 1000 url: '/pages/Nursingstationserviceorder/Nursingstationserviceorder'
}) })
} }
}) })
} }
}, },
} }
</script> </script>
@ -70,7 +67,7 @@
color: #FFFFFF; color: #FFFFFF;
line-height: 68rpx; line-height: 68rpx;
text-align: center; text-align: center;
margin-top: 65%; margin: 20vh 20rpx 0 0;
float: right; float: right;
} }
@ -84,6 +81,10 @@
padding: 2%; padding: 2%;
font-size: 30rpx; font-size: 30rpx;
input {
padding-top: 10rpx;
}
.ability { .ability {
width: 100%; width: 100%;
height: 60rpx; height: 60rpx;
@ -93,7 +94,6 @@
.content { .content {
width: 95%; width: 95%;
height: 96rpx;
background: #FFFFFF; background: #FFFFFF;
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03); box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
border-radius: 20rpx; border-radius: 20rpx;

View File

@ -144,8 +144,7 @@
goodsList() { goodsList() {
goodPatientInfo(this.updata.patientId).then(res => { goodPatientInfo(this.updata.patientId).then(res => {
res.data.forEach(e => { res.data.forEach(e => {
e.address = e.sysAreaVOList[0].provinceName + e.sysAreaVOList[0].cityName + e e.address = e.provinceName + e.cityName + e.regionName + e.streetName + e.receiveAddress
.sysAreaVOList[0].regionName + e.sysAreaVOList[0].streetName + e.receiveAddress
}) })
this.updata.receiver = res.data[0].receiveName this.updata.receiver = res.data[0].receiveName
this.updata.receiveAddress = res.data[0].address this.updata.receiveAddress = res.data[0].address

View File

@ -62,7 +62,7 @@
view { view {
height: 120rpx; height: 120rpx;
font-size: 32rpx; font-size: 30rpx;
line-height: 120rpx; line-height: 120rpx;
} }
@ -71,12 +71,12 @@
line-height: 120rpx; line-height: 120rpx;
height: 120rpx; height: 120rpx;
width: 30%; width: 30%;
font-size: 32rpx; font-size: 30rpx;
} }
::v-deep .u-input__input { ::v-deep .u-input__input {
height: 120rpx; height: 120rpx;
font-size: 32rpx; font-size: 30rpx;
} }
::v-deep .uni-input-wrapper { ::v-deep .uni-input-wrapper {

View File

@ -25,7 +25,7 @@
</view> </view>
<view class="item" @tap='getAddress()'> <view class="item" @tap='getAddress()'>
<span>所在位置:</span> <span>所在位置:</span>
<view></view> <view>{{chooseLocation}}</view>
<!-- <u-input type="text" placeholder='' /> --> <!-- <u-input type="text" placeholder='' /> -->
</view> </view>
</view> </view>
@ -41,7 +41,8 @@
v-for="(item,index) in getNurseTypelist" :key="item.id" @tap="addnurseType(item)"> v-for="(item,index) in getNurseTypelist" :key="item.id" @tap="addnurseType(item)">
{{item.nurseTypeName}} {{item.nurseTypeName}}
</view> </view>
<view @tap="godisease(item)" :class="query.diseaseInfoList.length>0?'choices':'choice'" <view @tap="godisease(item)"
:class="query.nurseTypeIdList.find(e => e == item.id)?'choices':'choice'"
v-for="(item,index) in medicalcarelist" :key="item.id"> v-for="(item,index) in medicalcarelist" :key="item.id">
{{item.nurseTypeName}} {{item.nurseTypeName}}
</view> </view>
@ -68,6 +69,7 @@
getNurseTypelist: [], // getNurseTypelist: [], //
medicalcarelist: [], // medicalcarelist: [], //
address: '', // address: '', //
chooseLocation: '',
query: { // query: { //
patientName: "", patientName: "",
cardNo: "", cardNo: "",
@ -91,11 +93,11 @@
url: '', url: '',
duration: '1500' duration: '1500'
}) })
// setInterval(() => { SetTimeout(() => {
// uni.navigateBack({ uni.navigateBack({
// delta: 1, //2 delta: 1, //2
// }) })
// }, 1500); }, 1500);
} else if (res.code == 500) { } else if (res.code == 500) {
this.$refs.uToast.show({ this.$refs.uToast.show({
title: res.msg, title: res.msg,
@ -107,12 +109,11 @@
}, },
// //
getAddress() { getAddress() {
var that = this;
uni.chooseLocation({ uni.chooseLocation({
success: function(res) { success: function(res) {
console.log('位置名称:' + res.name); that.chooseLocation = '东经:' + res.longitude + ' 北纬:' + res.latitude;
console.log('详细地址:' + res.address); console.log(that.chooseLocation)
console.log('纬度:' + res.latitude);
console.log('经度:' + res.longitude);
} }
}); });
}, },
@ -185,7 +186,6 @@
} else { } else {
console.log(that.query.nurseTypeIdList) console.log(that.query.nurseTypeIdList)
that.medicalcarelist.forEach(e => { that.medicalcarelist.forEach(e => {
console.log(e)
that.query.nurseTypeIdList = that.query.nurseTypeIdList.filter(el => el != e.id) that.query.nurseTypeIdList = that.query.nurseTypeIdList.filter(el => el != e.id)
}) })
} }

View File

@ -3,12 +3,6 @@
color: #C3C1C1; color: #C3C1C1;
font-weight: 400; font-weight: 400;
height:100vh; height:100vh;
.forget{
position: absolute;
top: 67%;
left: 10%;
color: #46ABD7;
}
.switch { .switch {
text-align: center; text-align: center;
height: 100rpx; height: 100rpx;
@ -35,7 +29,7 @@
.loginphone { .loginphone {
background-color: #fff; background-color: #fff;
width: 80%; width: 80%;
height: 150rpx; height: 162rpx;
position: absolute; position: absolute;
left: 10%; left: 10%;
top: 23%; top: 23%;
@ -54,7 +48,7 @@
.phone { .phone {
padding-left: 40rpx; padding-left: 40rpx;
height: 150rpx; height: 100%;
box-shadow: 0px 9px 31px 9px rgba(0, 0, 0, 0.03); box-shadow: 0px 9px 31px 9px rgba(0, 0, 0, 0.03);
} }
} }
@ -62,8 +56,15 @@
.logincode { .logincode {
position: absolute; position: absolute;
left: 10%; left: 10%;
::v-deep .u-input{
border: 0; .obtaincode {
text-align: center;
font-size: 37rpx;
color: #4C7BC9;
line-height: 162rpx;
position: absolute;
left: 65%;
top: 0%;
} }
::v-deep .u-input__input { ::v-deep .u-input__input {
@ -85,5 +86,4 @@
top: 13%; top: 13%;
left: 13%; left: 13%;
} }
} }

View File

@ -6,26 +6,14 @@
<view class="loginphone"> <view class="loginphone">
<input class="phone" type="text" placeholder="手机号码" maxlength="11" v-model="phone" /> <input class="phone" type="text" placeholder="手机号码" maxlength="11" v-model="phone" />
</view> </view>
<view class="logincode loginphone" style="top: 40%;" v-if='switchs'> <view class="logincode loginphone" style="top: 40%;">
<u-input class='code phone' placeholder="密码" maxlength="10" v-model="password" type="password" <u-input class='code phone' placeholder="密码" maxlength="10" v-model="password" type="password"
:border="true" :password-icon="true" /> :border="true" :password-icon="true" />
</view> </view>
<view class="logincode loginphone" style="top: 40%;" v-else> <view class="loginbtn" @tap='pwdlogin'>
<input class="code phone" type="text" placeholder="验证码" maxlength="6" v-model="verification" />
<view class="obtaincode get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()">
{{getCodeText}}
</view>
</view>
<view class="loginbtn" @tap='pwdlogin' v-if='switchs'>
登录 登录
</view> </view>
<view class="loginbtn" @tap='verificationlogin' v-else> <view class="switch" @tap='goregister' style="left:55%">
登录
</view>
<view class="switch" @tap='switchs=!switchs'>
{{switchs?'切换手机验证码登录':'切换密码登录'}}
</view>
<view class="switch" @tap='goregister' style="left:55%" v-if="switchs">
没有账号,请先注册 没有账号,请先注册
</view> </view>
<u-toast ref="uToast" /> <u-toast ref="uToast" />
@ -33,72 +21,36 @@
</template> </template>
<script> <script>
import { import {
appLoginpwd, appLoginpwd
appLoginvfn
} from '../../api/login/index.js' } from '../../api/login/index.js'
export default { export default {
data() { data() {
return { return {
phone: '13645678906', phone: '13645678906',
password: '123456', password: '123456',
verification: '111111',
getCodeText: '获取验证码', //
getCodeBtnColor: "#4C7BC9", //color
getCodeisWaiting: false, //
switchs: false, //
}; };
}, },
// //
onLoad(options) { onLoad(options) {},
this.switchs = options.switchs
},
methods: { methods: {
//
verificationlogin() {
appLoginvfn(this.phone, this.verification).then(res => {
console.log(res)
if (res.code == 200) {
if (res.data.registerFlag == false) {
this.$refs.uToast.show({
title: res.data.message,
type: 'success',
url: '',
duration: '1500'
})
setInterval(() => {
//TODO
uni.switchTab({
url: '/pages/homepage/homepage',
})
}, 1500);
} else {
this.$refs.uToast.show({
title: res.data.message,
type: 'error'
})
}
} else {
console.log(res)
this.$refs.uToast.show({
title: res.msg,
type: 'error'
})
}
})
},
// //
pwdlogin() { pwdlogin() {
appLoginpwd(this.phone, this.password).then(res => { appLoginpwd(this.phone, this.password).then(res => {
if (res.code == 200) { if (res.code == 200) {
if (res.data.registerFlag == false) { if (res.data.registerFlag == false) {
uni.setStorage({
key: 'patientId',
data: res.data.patientId,
success: function() {
console.log('patientId保存成功');
}
});
this.$refs.uToast.show({ this.$refs.uToast.show({
title: res.data.message, title: res.data.message,
type: 'success', type: 'success',
url: '',
duration: '1500' duration: '1500'
}) })
setInterval(() => { setTimeout(() => {
//TODO
uni.switchTab({ uni.switchTab({
url: '/pages/homepage/homepage', url: '/pages/homepage/homepage',
}) })
@ -110,7 +62,6 @@
}) })
} }
} else { } else {
console.log(res)
this.$refs.uToast.show({ this.$refs.uToast.show({
title: res.msg, title: res.msg,
type: 'error' type: 'error'
@ -124,135 +75,14 @@
url: '/pages/register/register' url: '/pages/register/register'
}) })
}, },
//
getCode() {
uni.hideKeyboard() //
if (this.getCodeisWaiting) { //
return;
}
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phone))) { //
uni.showToast({
title: '请填写正确手机号码',
icon: "none"
});
return false;
}
this.getCodeText = "发送中..." //
this.getCodeisWaiting = true;
this.getCodeBtnColor = "rgba(138,139,133,1)" //
//
//setTimeout(()
setTimeout(() => {
uni.showToast({
title: '验证码已发送',
icon: "none"
}); //
// this.code = '1234'; // 1234
this.setTimer(); //
}, 1000)
},
// setTimer 使SetTimer
setTimer() {
let holdTime = 60; //
this.getCodeText = "重新获取(60)"
//setInterval
//setInterval clearInterval
this.Timer = setInterval(() => {
if (holdTime <= 0) {
this.getCodeisWaiting = false;
this.getCodeBtnColor = "#4C7BC9";
this.getCodeText = "获取验证码"
clearInterval(this.Timer); //
return; //
}
this.getCodeText = "重新获取(" + holdTime + ")"
holdTime--;
}, 1000)
},
doReg() {
// uni.hideKeyboard() //
// //
// if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //
// uni.showToast({
// title: '',
// icon: "none"
// });
// return false;
// }
// //使
// if (this.code != 1234) {
// uni.showToast({
// title: '',
// icon: "none"
// });
// return false;
// }
// uni.showLoading({
// title: '...'
// })
// //使
// setTimeout(() => {
// uni.getStorage({
// key: 'UserList',
// success: (res) => {
// //md5
// res.data.push({
// username: this.phoneNumber,
// passwd: md5(this.passwd)
// })
// uni.setStorage({
// key: 'UserList',
// data: res.data,
// success: function() {
// uni.hideLoading()
// uni.showToast({
// title: '',
// icon: "success"
// });
// setTimeout(function() {
// uni.navigateBack();
// }, 1000)
// }
// });
// },
// fail: (e) => {
// uni.hideLoading()
// console.log('error');
// //UserList
// uni.setStorage({
// key: 'UserList',
// data: [{
// username: this.phoneNumber,
// passwd: md5(this.passwd)
// }],
// success: function() {
// uni.hideLoading()
// uni.showToast({
// title: '',
// icon: "success"
// });
// setTimeout(function() {
// uni.navigateBack();
// }, 1000)
// },
// fail: function(e) {
// console.log('set error:' + JSON.stringify(e));
// }
// });
// }
// });
// }, 1000)
},
toLogin() {
// uni.hideKeyboard() //
// uni.redirectTo({
// url: 'login'
// }); //
// uni.navigateBack(); //
}
}, },
toLogin() {
// uni.hideKeyboard() //
// uni.redirectTo({
// url: 'login'
// }); //
// uni.navigateBack(); //
}
} }
</script> </script>

View File

@ -0,0 +1,86 @@
.app {
height: 100%;
.logisticsinfo {
width: 94%;
background: #FFFFFF;
box-shadow: 0px 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
border-radius: 20rpx;
margin: 20rpx auto;
font-size: 30rpx;
.item {
width: 92%;
margin: 0 auto;
border-bottom: 1rpx solid #D8D4D4;
position: relative;
// padding-bottom: 30rpx;
.text {
width: 100%;
color: #969394;
padding: 30rpx 0;
// line-height: 50rpx;
}
.title {
font-size: 38rpx;
color: #4C7BC9;
position: absolute;
top: 60rpx;
left: 280rpx;
}
.time {
width: 170rpx;
color: #4C7BC9;
text-align: left;
line-height: 60rpx;
padding: 40rpx 0 0 0;
}
}
}
.info {
width: 94%;
background: #FFFFFF;
box-shadow: 0px 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
border-radius: 20rpx;
margin: 0 auto;
position: relative;
font-size: 30rpx;
.address {
color: #969394;
padding: 32rpx 0;
}
.border {
width: 95%;
height: 1rpx;
background: #D8D4D4;
margin: 40rpx auto 0;
}
.express {
color: #969394;
position: absolute;
top: 123rpx;
left: 237rpx;
}
.title {
font-size: 38rpx;
color: #4C7BC9;
position: absolute;
top: 60rpx;
left: 237rpx;
}
image {
width: 182rpx;
height: 182rpx;
margin: 10rpx 0 0 30rpx;
}
}
}

View File

@ -1,23 +1,125 @@
<template> <template>
<view> <view class="app">
物流 <view class="info">
<image :src="baseurl+list.attributePitureUrl" mode=""></image>
<view class="title" v-if="expresslist">
{{expresslist.State==0?'暂无信息':''}}
{{expresslist.State==1?'已揽收':''}}
{{expresslist.State==2?'在途中':''}}
{{expresslist.State==3?'已签收':''}}
{{expresslist.State==4?'问题件':''}}
</view>
<view class="title" v-else>
未发货
</view>
<view class="express" v-if="expresslist">
{{expresslist.shipperName}}{{expresslist.LogisticCode}}
</view>
<view class="border" style=""></view>
<view class="address">
收货地址{{list.receiveAddress}}
</view>
</view>
<view class="logisticsinfo" v-if="expresslist">
<view class="item" v-for="(item,index) in expresslist.Traces">
<view class="time">
{{item.AcceptTime}}
</view>
<view class="title">
{{Actioncode(item.Action)}}
</view>
<view class="text">
{{item.AcceptStation}}
</view>
</view>
</view>
<view class="logisticsinfo" v-else style="height:100vh">
<view class="item" style="height: 260rpx;">
<view class="time">
{{gettime}}
</view>
<view class="title">
暂无物流信息
</view>
<view class="text">
<!-- {{item.AcceptStation}} -->
</view>
</view>
</view>
</view> </view>
</template> </template>
<script> <script>
import {
queryLogistics
} from '@/api/logistics/index.js'
import baseurl from '../../api/baseurl';
export default { export default {
data() { data() {
return { return {
list:{}, gettime: null,
baseurl: '', //url
list: {}, //
expresslist: null, //
}; };
}, },
onLoad(options){ methods: {
//
queryLogisticsInfo(goOrderNo, expressNo) {
queryLogistics(goOrderNo, expressNo).then(res => {
this.expresslist = res.data
console.log(this.expresslist)
})
},
//
Actioncode(code) {
var obj = {
0: '暂无轨迹信息',
1: '已揽收',
2: '在途中',
201: '到达派件城市',
202: '派件中',
211: '已放入快递柜或驿站',
3: '已签收',
301: '正常签收',
302: '派件异常后最终签收',
304: '代收签收',
311: '快递柜或驿站签收',
4: '问题件',
401: '发货无信息',
402: '超时未签收',
403: '超时未更新',
404: '拒收(退件)',
405: '派件异常',
406: '退货签收',
407: '退货未签收',
412: '快递柜或驿站超时未取',
10: '待揽件',
}
return obj[code]
},
getCurrentTime() {
//
var that = this;
let yy = new Date().getFullYear();
let mm = new Date().getMonth() + 1;
let dd = new Date().getDate();
let hh = new Date().getHours();
let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes() : new Date().getMinutes();
let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds() : new Date().getSeconds();
that.gettime = yy + '/' + mm + '/' + dd + ' ' + hh + ':' + mf + ':' + ss;
console.log(that.gettime)
}
},
onLoad(options) {
this.baseurl = baseurl
this.list = JSON.parse(options.item) this.list = JSON.parse(options.item)
console.log(this.list) this.queryLogisticsInfo(this.list.goOrderNo, this.list.expressNo);
this.getCurrentTime();
}, },
} }
</script> </script>
<style lang="scss"> <style lang="scss">
@import './logistics.scss';
</style> </style>

View File

@ -1,76 +1,97 @@
.app { .app {
background-color: #F4F5F7; background-color: #F4F5F7;
width: 100%; width: 100%;
height: 100vh; height: 100%;
color: #000000; color: #000000;
padding: 3%; .finish{
font-size: 36rpx; width: 25%;
height: 68rpx;
.centercontent { background: #4C7BC9;
width: 99%; border-radius: 26rpx;
height: 635rpx; text-align: center;
background: #FFFFFF; line-height: 68rpx;
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03); color: #fff;
border-radius: 20rpx; margin-top: 50rpx;
margin-left: 65%;
}
.userinfo {
width: 94%;
background-color: #fff;
margin: 0 auto; margin: 0 auto;
border-radius: 20rpx;
.finish { .disease{
width: 217rpx; width: 90%;
font-size: 32rpx; margin: 0 auto;
color: #FFFFFF; line-height: 80rpx;
height: 68rpx;
line-height: 68rpx;
text-align: center;
margin-top: 60%;
margin-left: 70%;
background: #4C7BC9;
border-radius: 26rpx;
}
.content {
line-height: 100rpx;
.name {
margin-left: 5%;
height: 100rpx;
border-bottom: 1rpx solid #D8D4D4;
input {
font-size: 36rpx;
margin-top: -11%;
margin-left: 15%;
}
}
.nursetype {
input {
margin-left: 25%;
}
}
}
.Commodity {
line-height: 110rpx;
margin-left: 5%;
border-bottom: 1rpx solid #D8D4D4; border-bottom: 1rpx solid #D8D4D4;
position: relative;
.picture { view{
vertical-align: middle; display: inline-block;
margin-left: 60%;
width: 103rpx;
height: 103rpx;
} }
.pictureA { .pictureA {
margin-left: 3%; margin-left: 3%;
width: 18rpx; width: 18rpx;
height: 27rpx; height: 27rpx;
position: absolute;
right:20rpx;
top:50%;
transform: translateY(-50%);
}
}
.item {
width: 90%;
margin: 0 auto;
height: 120rpx;
line-height: 120rpx;
border-bottom: 1rpx solid #D8D4D4;
display: flex;
position: relative;
.picture {
vertical-align: middle;
width: 180rpx;
height: 180rpx;
position: absolute;
top:10rpx;
right:80rpx;
}
.pictureA {
margin-left: 3%;
width: 18rpx;
height: 27rpx;
position: absolute;
right:20rpx;
top:50%;
transform: translateY(-50%);
}
view {
height: 120rpx;
font-size: 30rpx;
line-height: 120rpx;
} }
.head { span {
line-height: 140rpx;
margin-left: 5%;
display: inline-block; display: inline-block;
line-height: 120rpx;
height: 120rpx;
width: 25%;
font-size: 30rpx;
}
::v-deep .u-input__input {
height: 120rpx;
font-size: 30rpx;
}
::v-deep .uni-input-wrapper {
height: 120rpx;
line-height: 120rpx;
}
::v-deep .u-input {
width: 75%;
height: 120rpx;
line-height: 120rpx;
} }
} }
} }

View File

@ -1,91 +1,185 @@
<template> <template>
<view class="app"> <view class="app">
<view class="centercontent"> <view class="userinfo">
<view class="Commodity"> <view class="item" style="height: 200rpx; " @tap='uploadImag'>
头像 <span style='height:200rpx;line-height: 200rpx;'>头像:</span>
<image class="picture" src="../../static/head.png" mode=""></image> <image class="picture" :src="appPersonallist.headPictureUrl" mode=""></image>
<image class="pictureA" src="../../static/jiantou.png" mode=""></image> <image class="pictureA" src="../../static/jiantou.png" mode=""></image>
</view> </view>
<view class="content"> <view class="item">
<view class="name">昵称 <span>姓名:</span>
<input type="text" placeholder="请输入" /> <u-input v-model="appPersonallist.patientName" placeholder="请输入" type="text" maxlength='5' />
</view>
<view class="name">姓名:
<input type="text" placeholder="请输入" v-model="appPersonallist.patientName" />
</view>
<view class="name">电话
<input type="text" placeholder="请输入" v-model="appPersonallist.phone" />
</view>
<view class="name">地址
<input type="text" placeholder="请输入" v-model="appPersonallist.address" />
</view>
<view class="nursetype name" style="border: none;" @tap="godisease">
疾病类型:
<span class="" style="padding-left: 25rpx;text-overflow: ellipsis;"
v-for="(item,index) in patientDiseaseInfoList">
{{item.diseaseName}}
</span>
</view>
</view> </view>
<view class="finish" @tap="submit()">完成 <view class="item">
<span>电话:</span>
<u-input v-model="appPersonallist.phone" placeholder="请输入" maxlength='11' type="text" />
</view>
<view class="item">
<span>身份证号:</span>
<u-input v-model="appPersonallist.cardNo" placeholder="请输入" type="text" maxlength='18' />
</view>
<view class="item" @tap='areashow=true'>
<span>所属区域:</span>
<view>{{address}}</view>
</view>
<view class="item">
<span>详细地址:</span>
<u-input v-model="appPersonallist.address" type="text" placeholder='请输入' />
</view>
<view class="item" @tap='getAddress()'
v-if="appPersonallist.homeLongitude&&this.appPersonallist.homeLatitude">
<span>所在位置:</span>
<view>{{chooseLocation}}</view>
</view>
<view class="disease" style="border: none;" @tap="godisease">
<view style="display: block;line-height: 120rpx;">疾病类型:</view>
<image class="pictureA" src="../../static/jiantou.png" mode=""></image>
<view class="" style="padding-right: 10rpx" v-for="(item,index) in patientDiseaseInfoList">
{{item.diseaseName}}
</view>
</view> </view>
</view> </view>
<u-select v-model="areashow" mode="mutil-column-auto" label-name='areaName' value-name='areaCode'
:list="arealist" @confirm="areaconfirm"></u-select>
<view class="finish" @tap="informationinfo()">完成
</view>
<u-toast ref="uToast" />
</view> </view>
</template> </template>
<script> <script>
import { import {
updateInformation, getRegionAndStreetInfo
} from '@/api/modify/modify.js'; } from '@/api/information/index.js'
import {
information
} from '@/api/information/index.js'
import baseurl from '@/api/baseurl.js' import baseurl from '@/api/baseurl.js'
export default { export default {
data() { data() {
return { return {
patientId: '', baseurl: '',
address: '',
arealist: [],
areashow: false,
chooseLocation: '',
appPersonallist: { appPersonallist: {
patientId: '', patientName: "",
patientName: '', cardNo: "",
phone: '', phone: "",
address: '', address: "",
cardNo: ' ', areaCode: "",
areaCode: '', homeLongitude: "",
homeLatitude: "",
nurseTypeIdList: [],
diseaseInfoList: [],
headPictureUrl: '', headPictureUrl: '',
}, },
patientDiseaseInfoList: [], // patientDiseaseInfoList: [], //
} }
}, },
onLoad(options) { onLoad(options) {
this.areaInfo();
this.baseurl = baseurl
this.appPersonallist = JSON.parse(options.appPersonallist) this.appPersonallist = JSON.parse(options.appPersonallist)
this.appPersonallist.headPictureUrl = baseurl + this.appPersonallist.headPictureUrl
this.patientDiseaseInfoList = this.appPersonallist.patientDiseaseInfoList this.patientDiseaseInfoList = this.appPersonallist.patientDiseaseInfoList
this.patientDiseaseInfoList.forEach(e => { this.patientDiseaseInfoList.forEach(e => {
e.id = e.diseaseId e.id = e.diseaseId
}) })
console.log(this.patientDiseaseInfoList) this.chooseLocation = '东经:' + this.appPersonallist.homeLongitude + '度' + ' 北纬:' + this.appPersonallist
.homeLatitude + '度';
}, },
methods: { methods: {
//+
informationinfo() {
//
var that = this
uni.uploadFile({
url: baseurl + '/nurseApplet/uploadFile/uploadHeadPictureUrl',
filePath: that.appPersonallist.headPictureUrl,
name: 'file',
formData: {
'patientId': that.appPersonallist.patientId
},
timeout: 5000,
success(res) {
that.appPersonallist.headPictureUrl = JSON.parse(res.data).imgUrl
//
// that.appPersonallist.homeLongitude = '1'
// that.appPersonallist.homeLatitude = '1'
that.appPersonallist.diseaseInfoList = that.patientDiseaseInfoList
console.log(that.appPersonallist)
information(that.appPersonallist).then(res => {
if (res.code == 200) {
that.$refs.uToast.show({
title: '修改信息成功',
type: 'success',
url: '/pages/user/user',
duration: '1500'
})
} else if (res.code == 500) {
that.$refs.uToast.show({
title: res.msg,
type: 'error',
url: ''
})
}
})
}
})
},
//
uploadImag() {
var that = this;
uni.chooseImage({
count: 1,
sizeType: ['original'],
sourceType: ['album'],
success(res) {
that.appPersonallist.headPictureUrl = res.tempFilePaths[0]
console.log(that.appPersonallist.headPictureUrl)
}
})
},
//
getAddress() {
var that = this;
uni.chooseLocation({
success: function(res) {
that.chooseLocation = '东经:' + res.longitude + ' 北纬:' + res.latitude;
console.log(that.chooseLocation)
}
});
},
//
areaconfirm(e) {
this.appPersonallist.areaCode = e[e.length - 1].value
this.address = e[0].label + '-' + e[1].label
},
//
areaInfo() {
getRegionAndStreetInfo().then(res => {
//
res.data.forEach(e => {
if (e.children.length == 0) {
e.children.push({
areaCode: "",
areaName: "暂无街道",
children: null,
id: '',
})
}
})
this.arealist = res.data;
})
},
//
godisease() { godisease() {
uni.navigateTo({ uni.navigateTo({
url: `/pages/disease/disease?diseaseInfoList=${JSON.stringify(this.patientDiseaseInfoList)}`, url: `/pages/disease/disease?diseaseInfoList=${JSON.stringify(this.patientDiseaseInfoList)}`,
}) })
}, },
submit() {
this.appPersonallist.patientDiseaseInfoList = this.patientDiseaseInfoList
updateInformation(this.appPersonallist).then(res => {
if (res.code == 200) {
uni.showToast({
title: '修改成功',
duration: 1500
});
that.show = false;
setTimeout(e => {
that.goodsList()
}, 1500)
}
})
}
}, },
// //
onShow() { onShow() {
@ -93,14 +187,14 @@
uni.$on('disease', function(data) { uni.$on('disease', function(data) {
that.patientDiseaseInfoList = JSON.parse(data.disease) that.patientDiseaseInfoList = JSON.parse(data.disease)
that.patientDiseaseInfoList.forEach(e => { that.patientDiseaseInfoList.forEach(e => {
e.diseaseId = e.id e.disbaseId = e.id
}) })
console.log(that.patientDiseaseInfoList) // console.log(that.patientDiseaseInfoList)
}) })
} }
} }
</script> </script>
<style lang="scss"> <style lang="scss">
@import "./modify.scss" @import "./modify.scss"
</style> </style>

View File

@ -6,7 +6,7 @@
height: 100vh; height: 100vh;
padding: 4%; padding: 4%;
padding-bottom: 100rpx; padding-bottom: 100rpx;
background-image: linear-gradient(to bottom, #F4F5F7, #ffffff);
.address { .address {
width: 99%; width: 99%;
background: #FFFFFF; background: #FFFFFF;
@ -14,7 +14,6 @@
border-radius: 20rpx; border-radius: 20rpx;
margin: 0 auto 20rpx; margin: 0 auto 20rpx;
padding-bottom: 10rpx; padding-bottom: 10rpx;
.item { .item {
width: 90%; width: 90%;
height: 101rpx; height: 101rpx;

View File

@ -50,12 +50,11 @@
<view class="save" @tap='submit()'> <view class="save" @tap='submit()'>
保存 保存
</view> </view>
<u-toast ref="uToast" />
</view> </view>
</u-popup> </u-popup>
<u-select v-model="areashow" mode="mutil-column-auto" label-name='areaName' value-name='areaCode' <u-select v-model="areashow" mode="mutil-column-auto" label-name='areaName' value-name='areaCode'
:list="arealist" @confirm="areaconfirm"></u-select> :list="arealist" @confirm="areaconfirm"></u-select>
<u-toast ref="uToast" />
</view> </view>
</template> </template>
@ -107,16 +106,15 @@
methods: { methods: {
// //
goorder(item) { goorder(item) {
if(this.url=="appointmenttime"){ if (this.url == "appointmenttime") {
uni.navigateTo({ uni.navigateTo({
url: `/pages/appointmenttime/appointmenttime?updata=${JSON.stringify(this.updata)}&useritem=${JSON.stringify(item)}` url: `/pages/appointmenttime/appointmenttime?updata=${JSON.stringify(this.updata)}&useritem=${JSON.stringify(item)}`
}) })
}else{ } else {
uni.navigateTo({ uni.navigateTo({
url: `/pages/confirmOrder/confirmOrder?updata=${JSON.stringify(this.updata)}&useritem=${JSON.stringify(item)}` url: `/pages/confirmOrder/confirmOrder?updata=${JSON.stringify(this.updata)}&useritem=${JSON.stringify(item)}`
}) })
} }
}, },
// //
goodsList() { goodsList() {
@ -128,9 +126,7 @@
that.infolist.patientId = res.data that.infolist.patientId = res.data
goodPatientInfo(that.patientId).then(res => { goodPatientInfo(that.patientId).then(res => {
res.data.forEach(e => { res.data.forEach(e => {
e.address = e.sysAreaVOList[0].provinceName + e.sysAreaVOList[ e.address = e.provinceName + e.cityName + e.regionName + e
0].cityName + e
.sysAreaVOList[0].regionName + e.sysAreaVOList[0]
.streetName + e.receiveAddress .streetName + e.receiveAddress
}) })
that.goodPatient = res.data that.goodPatient = res.data
@ -192,7 +188,6 @@
this.isedit = true this.isedit = true
this.show = true this.show = true
}, },
// //
del(item) { del(item) {
let that = this let that = this

View File

@ -1,3 +1,8 @@
.app{
height: 100vh;
padding:0;
background-image: linear-gradient(to bottom, #F4F5F7, #ffffff);
}
.mask { .mask {
.information { .information {
width: 70%; width: 70%;
@ -44,16 +49,16 @@
} }
} }
.app { .content {
font-size: 36rpx; font-size: 36rpx;
padding:10rpx 0 300rpx 0; padding-bottom: 10rpx;
.tive { .tive {
width: 94%; width: 94%;
background-color: #ffffff; background-color: #ffffff;
margin: 0 auto; margin: 0 auto;
margin-top: 20rpx; margin-top: 20rpx;
border-radius: 11px; border-radius: 11px;
padding-bottom: 60rpx; // padding-bottom: 60rpx;
.item { .item {
width: 100%; width: 100%;
height: 100%; height: 100%;

View File

@ -1,6 +1,6 @@
<template> <template>
<view> <view class="app">
<view class="app"> <view class="content">
<view class="righttext"> <view class="righttext">
<image class="picture" :src="list.stationIntroducePcitureUrl"></image> <image class="picture" :src="list.stationIntroducePcitureUrl"></image>
<view class="title"> <view class="title">
@ -12,7 +12,7 @@
<u-icon class='icon' name="phone-fill" color="#ffffff" size="30"></u-icon> <u-icon class='icon' name="phone-fill" color="#ffffff" size="30"></u-icon>
<view class="text">联系我们</view> <view class="text">联系我们</view>
</view> </view>
<!-- <view class="Navigation"> <!-- <view class="Navigation">
<image src="/static/daohang.png" mode="">导航</image> <image src="/static/daohang.png" mode="">导航</image>
</view> --> </view> -->
</view> </view>
@ -40,18 +40,18 @@
{{item.name}} {{item.name}}
</view> </view>
</view> </view>
<view class="item" v-for="item in servelist" :key="" v-show='choicetab==false'> <view class="item" v-for="item in servelist" :key="" v-show='choicetab==0'>
<image :src="item.itemPictureUrl"></image> <image :src="item.itemPictureUrl"></image>
<view class="huanyao">{{item.nurseItemName}} <view class="huanyao">{{item.nurseItemName}}
</view> </view>
<!-- <view class="pingfen"> <!-- <view class="pingfen">
<u-rate :count="5" value="2"></u-rate> <u-rate :count="5" value="2"></u-rate>
</view> --> </view> -->
<view class="servicetime">服务时长:{{item.serveDurationUnit}}</view> <view class="servicetime">服务时长:{{item.serveDurationUnit?item.serveDurationUnit:'0'}}</view>
<view class="appointment" @tap='goappointments(item)'>预约</view> <view class="appointment" @tap='goappointments(item)'>预约</view>
<view class="price">{{item.price}}</view> <view class="price">{{item.price==null?'0':item.price}}</view>
</view> </view>
<view class="item" v-show='choicetab' v-for="(item,index) in productlist" :key="index"> <view class="item" v-show='choicetab==1' v-for="(item,index) in productlist" :key="index">
<image :src="item.goodsPictureUrl"></image> <image :src="item.goodsPictureUrl"></image>
<view class="product">{{item.goodsName}}</view> <view class="product">{{item.goodsName}}</view>
<view class="buy appointment" @tap="goCommodityDetails(item)">购买</view> <view class="buy appointment" @tap="goCommodityDetails(item)">购买</view>
@ -88,12 +88,14 @@
export default { export default {
data() { data() {
return { return {
patientId: '', patientId: '', //
usershow: false, // usershow: false, //
choicetab: false, // choicetab: false, //
list: [], list: [], //list
servelist: [], // servelist: [], //
productlist: [], // productlist: [], //
servetotal:0,//total
producttotal:0,//total
stationid: '', //id stationid: '', //id
nurseStationLabelList: [], // nurseStationLabelList: [], //
nearbyNursingStationItemList: [], nearbyNursingStationItemList: [],
@ -106,7 +108,6 @@
}, { }, {
name: "产品" name: "产品"
}, ] }, ]
} }
}, },
onLoad(options) { onLoad(options) {
@ -138,10 +139,10 @@
}, },
getInfo() { getInfo() {
introductionList(this.nurseStationId).then(res => { introductionList(this.nurseStationId).then(res => {
res[0].stationIntroducePcitureUrl = baseurl + res[0].stationIntroducePcitureUrl res.data.stationIntroducePcitureUrl = baseurl + res.data.stationIntroducePcitureUrl
this.list = res[0] this.list = res.data
if (res[0].nurseStationLabelList) { if (res.data.nurseStationLabelList) {
this.nurseStationLabelList = res[0].nurseStationLabelList this.nurseStationLabelList = res.data.nurseStationLabelList
} }
}) })
}, },
@ -151,6 +152,7 @@
e.itemPictureUrl = baseurl + e.itemPictureUrl e.itemPictureUrl = baseurl + e.itemPictureUrl
}) })
this.servelist = res.rows this.servelist = res.rows
this.servetotal=res.total
}) })
}, },
productinfo() { productinfo() {
@ -159,11 +161,13 @@
e.goodsPictureUrl = baseurl + e.goodsPictureUrl e.goodsPictureUrl = baseurl + e.goodsPictureUrl
}) })
this.productlist = res.rows this.productlist = res.rows
this.producttotal=res.total
}) })
}, },
testTabClick(index) { testTabClick(index) {
this.tabIndex = index this.tabIndex = index
this.choicetab = this.tabIndex this.choicetab = this.tabIndex
console.log(this.choicetab)
}, },
// //
goCommodityDetails(item) { goCommodityDetails(item) {
@ -177,41 +181,85 @@
url: '/pages/information/information' url: '/pages/information/information'
}) })
}, },
}, gophone() {
gophone() { var that = this
var that = this uni.getSystemInfo({
uni.getSystemInfo({ success: function(res) {
success: function(res) { // console.log(res)
// console.log(res) if (res.platform == 'ios') {
if (res.platform == 'ios') { uni.makePhoneCall({
uni.makePhoneCall({ phoneNumber: that.list.phone //
phoneNumber: that.list.phone // });
}); } else {
} else { uni.showActionSheet({
uni.showActionSheet({ itemList: ['呼叫', ],
itemList: ['呼叫', ], success: function(res) {
success: function(res) { if (res.tapIndex + 1 == 1) {
if (res.tapIndex + 1 == 1) { uni.makePhoneCall({
uni.makePhoneCall({ phoneNumber: that.list.phone //
phoneNumber: that.list.phone // });
}); }
console.log('选中了第' + (res.tapIndex + 1) + '个按钮');
},
fail: function(res) {
// console.log(res.errMsg);
} }
console.log('选中了第' + (res.tapIndex + 1) + '个按钮'); });
}, }
fail: function(res) {
// console.log(res.errMsg);
}
});
} }
});
},
},
onReachBottom() { //
if (this.choicetab == 0) {
console.log(1)
if (this.servelist.length >= this.servetotal) {} else {
this.pageNum++
itemList(this.nurseStationId, this.pageSize, this.pageNum).then(res => {
res.rows.forEach(e => {
e.itemPictureUrl = baseurl + e.itemPictureUrl
this.servelist.push(e)
})
})
} }
}); } else {
if (this.productlist.length >= this.producttotal) {} else {
this.pageNum++
productInformation(this.nurseStationId, this.pageNum, this.pageSize).then(res => {
res.rows.forEach(e => {
e.goodsPictureUrl = baseurl + e.goodsPictureUrl
this.productlist.push(e)
})
})
}
}
}, },
onPullDownRefresh() { //
this.pageNum = 1;
if (this.choicetab == 0) {
itemList(this.nurseStationId, this.pageSize, this.pageNum).then(res => {
res.rows.forEach(e => {
e.itemPictureUrl = baseurl + e.itemPictureUrl
})
this.servelist = res.rows
})
} else {
productInformation(this.nurseStationId, this.pageNum, this.pageSize).then(res => {
res.rows.forEach(e => {
e.goodsPictureUrl = baseurl + e.goodsPictureUrl
})
this.productlist = res.rows
})
}
setTimeout(function() {
uni.stopPullDownRefresh();
}, 1000);
},
} }
</script> </script>
<style lang="scss"> <style lang="scss">
@import './nursestation.scss' @import './nursestation.scss'
</style> </style>

View File

@ -23,8 +23,8 @@
</view> </view>
</view> </view>
</view> </view>
<view class="service"> <view class="service" @tap="gonursestation">
<view class="serviceorder" @tap="gonursestation">护理站服务订单</view> <view class="serviceorder" >护理站服务订单</view>
<view class="pictures"> <view class="pictures">
<image src="../../static/jiantou.png" mode=""></image> <image src="../../static/jiantou.png" mode=""></image>
</view> </view>

View File

@ -6,7 +6,8 @@
</view> </view>
<view class="map" style="height:35vh;"> <view class="map" style="height:35vh;">
<map style="width:100%; height:100%" scale="17" :latitude="latitude" :longitude="longitude" <map style="width:100%; height:100%" scale="17" :latitude="latitude" :longitude="longitude"
:markers="markers"></map> :markers="markers"
></map>
</view> </view>
<view class="conNew"> <view class="conNew">
<view class="addressContent" v-for="(item,index) in nursestationlist" :key="index"> <view class="addressContent" v-for="(item,index) in nursestationlist" :key="index">

View File

@ -14,18 +14,27 @@
}; };
}, },
created() { onLoad() {
this.info(); let that = this
}, uni.getStorage({
methods: { key: 'patientId',
info() { success: function(res) {
setTimeout(() => { setTimeout(() => {
uni.reLaunch({ uni.reLaunch({
url: '/pages/login/login' url: '/pages/homepage/homepage'
}); });
}, 2000); }, 2000);
}, },
fail() {
setTimeout(() => {
uni.reLaunch({
url: '/pages/login/login'
});
}, 2000);
}
});
}, },
methods: {},
} }
</script> </script>

View File

@ -46,10 +46,12 @@
top: 18%; top: 18%;
left: 3%; left: 3%;
color: #000000; color: #000000;
padding-left: 5%; padding:0 0 50rpx 5%;
overflow: hidden; overflow: hidden;
font-size: 35rpx; font-size: 35rpx;
.disease{
line-height: 60rpx;
}
.item { .item {
// height: 110rpx; // height: 110rpx;
line-height: 110rpx; line-height: 110rpx;

View File

@ -1,14 +1,17 @@
<template> <template>
<view class="app"> <view class="app">
<view class="user"> <view class="user">
<view class="img"> <view class="img" v-if="appPersonallist.headPictureUrl">
<image :src="baseurl+appPersonallist.headPictureUrl" mode=""></image>
</view>
<view class="img" v-else>
<image src="../../static/users.png" mode=""></image> <image src="../../static/users.png" mode=""></image>
</view> </view>
<view class="phone"> <view class="phone" v-if="appPersonallist.patientName!=null">
电话{{appPersonallist.phone}} {{appPersonallist.patientName}}
</view> </view>
<view class="nickname"> <view class="nickname">
点此设置昵称 <!-- {{appPersonallist.phone}} -->
</view> </view>
<view class="modify" @tap='updatainfo()'> <view class="modify" @tap='updatainfo()'>
修改信息 修改信息
@ -16,27 +19,56 @@
</view> </view>
</view> </view>
<view class="information"> <view class="information">
<view class="item"> <view class="item" v-if="appPersonallist.patientName!=null">
姓名{{appPersonallist.patientName}} 姓名{{appPersonallist.patientName}}
</view> </view>
<view class="item"> <view class="item" v-else>
姓名
</view>
<view class="item" v-if="appPersonallist.phone!=null">
电话{{appPersonallist.phone}} 电话{{appPersonallist.phone}}
</view> </view>
<view class="item" v-else>
电话
</view>
<view class="item" v-if="appPersonallist.cardNo!=null">
身份证{{appPersonallist.cardNo}}
</view>
<view class="item" v-else>
身份证
</view>
<view class="item" v-if="appPersonallist.streetName">
区域{{appPersonallist.regionName}}-{{appPersonallist.streetName}}
</view>
<view class="item" v-else>
区域
</view>
<view class="item" style="height:100%"> <view class="item" style="height:100%">
<view class="" style="display: inline-block;"> <view class="" style="display: inline-block;">
地址: 地址:
</view> </view>
<view class="address"> <view class="address" v-if="appPersonallist.address!=null">
{{appPersonallist.address}} {{appPersonallist.address}}
</view> </view>
</view> </view>
<view class="item" style="border:none;"> <view class="item" style="height:100%">
疾病类型:<span style="padding-left: 25rpx;text-overflow: ellipsis;" <view class="" style="display: inline-block;">
位置:
</view>
<view class="address" v-if="appPersonallist.homeLatitude&&appPersonallist.homeLongitude">
东经:{{appPersonallist.homeLongitude}}--北纬:{{ appPersonallist.homeLatitude}}
</view>
</view>
<view class="disease" style="border:none;">
<view class="" style="line-height: 110rpx;">
疾病类型:
</view>
<span style="padding-right: 15rpx;font-size: 32rpx;"
v-for="(item,index) in appPersonallist.patientDiseaseInfoList" v-for="(item,index) in appPersonallist.patientDiseaseInfoList"
:key="index">{{item.diseaseName}}</span> :key="index">{{item.diseaseName}}</span>
</view> </view>
</view> </view>
<view class="External" style="margin: 200rpx auto 0;"> <!-- <view class="External" style="margin: 200rpx auto 0;">
<view class="lefttext"> <view class="lefttext">
积分: 积分:
</view> </view>
@ -60,7 +92,7 @@
<view class="righttext"> <view class="righttext">
</view> </view>
<image src="../../static/jiantou.png" mode=""></image> <image src="../../static/jiantou.png" mode=""></image>
</view> </view> -->
</view> </view>
</template> </template>
@ -72,28 +104,32 @@
export default { export default {
data() { data() {
return { return {
patientId: 46, baseurl: '',
appPersonallist: [], // appPersonallist: [], //
} }
}, },
onLoad(options) { onLoad(options) {
this.baseurl = baseurl
// //
this.myInfo() this.myInfo()
}, },
methods: { methods: {
// //
myInfo() { myInfo() {
appPersonal(this.patientId).then(res => { var that = this
console.log(res) uni.getStorage({
this.appPersonallist = res.data key: 'patientId',
}) success: function(res) {
appPersonal(res.data).then(res => {
that.appPersonallist = res.data
})
}
});
}, },
updatainfo() { updatainfo() {
console.log() uni.navigateTo({
uni.navigateTo({ url: `/pages/modify/modify?appPersonallist=${JSON.stringify(this.appPersonallist)}`
url: `/pages/modify/modify?appPersonallist=${JSON.stringify(this.appPersonallist)}` })
})
} }
} }
} }

BIN
static/1024.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB