预约筛查+护理服务

This commit is contained in:
闫晓茹 2023-10-10 14:01:25 +08:00
parent 31887d0eee
commit d26dd99fb2
10 changed files with 1026 additions and 443 deletions

29
api/conversion.js Normal file
View File

@ -0,0 +1,29 @@
export function getSex(idCard) {
if (idCard.length === 15) {
return ['女', '男'][idCard.substr(14, 1) % 2]
} else if (idCard.length === 18) {
return ['女', '男'][idCard.substr(16, 1) % 2]
}
return ''
}
export function getBirthday(idCard) {
var birthday = "";
if (idCard != null && idCard != "") {
if (idCard.length == 15) {
birthday = "19" + idCard.substr(6, 6);
} else if (idCard.length == 18) {
birthday = idCard.substr(6, 8);
}
// birthday = birthday.replace(/(.{4})(.{2})/, "$1-$2-");
}
return birthday;
};
// 出生日期转年龄
export function getAgeFun(value) {
var birthdays = new Date(value.replace(/-/g, "/")); //value 是传入的值
var time = new Date(); //当前时间
var age = time.getFullYear() - birthdays.getFullYear() - (time.getMonth() < birthdays.getMonth() || (time.getMonth() == birthdays.getMonth() &&
time.getDate() < birthdays.getDate()) ? 1 : 0);
return age;
}

View File

@ -6,4 +6,11 @@ export function getPoserInfoListByType() {
method: 'GET' method: 'GET'
}) })
} }
// 获取当前预约详情
export function getScreening(patientId) {
return request({
url: `/nurseApplet/screening/record/getScreening/${patientId}`,
method: 'GET'
})
}

View File

@ -0,0 +1,15 @@
import request from "../../request.js"
// 获取预约列表
export function getOrderList(patientId,pageNum,pageSize) {
return request({
url: `/nurseApplet/screening/record/list?patientId=${patientId}&pageNum=${pageNum}&pageSize=${pageSize}` ,
// data: data,
method: 'get'
})
}
// export function inviteFriends(patientId) {
// return request({
// url: `/nurseApplet/patientInfo/inviteFriends?inviteId=${patientId}`,
// method: 'post'
// })
// }

View File

@ -0,0 +1,242 @@
// import request from '../jsIndex'
import request from "../../request.js"
// 济南
// 预约
export function screenOrder(data) {
return request({
url: '/nurseApplet/screening/record/save',
data: data,
method: 'post'
})
}
// 获取当前预约详情
export function getScreening(registerId) {
return request({
url: `/screening/getScreening/${registerId}`,
method: 'GET'
})
}
// 取消预约
export function cancelOrder(screeningId) {
return request({
url: `/screening/cancel/${screeningId}`,
method: 'GET'
})
}
// 保存血压
export function saveBP(data) {
return request({
url: '/health/saveBP',
data: data,
method: 'post'
})
}
// 保存血糖
export function saveBG(data) {
return request({
url: '/health/saveBG',
data: data,
method: 'post'
})
}
// 绑定设备
export function jnBindDevice(data) { //bindDevice
return request({
url: '/bind/bindDevice',
data: data,
method: 'post'
})
}
// 查询绑定设备
export function getbindDeviceList(registerId) {
return request({
url: `/bind/findList/${registerId}`,
method: 'get'
})
}
// 解绑设备
export function deleteDevice(data) {
return request({
url: `/bind/del/${data.registerId}/${data.sn}`,
method: 'get'
})
}
// 激活服务
export function activateServe(data) {
return request({
url: '/resident/activatePackage',
data: data,
method: 'post'
})
}
// 是否已激活服务
export function whetherActivate(registerId) {
return request({
url: `/resident/getByResident/${registerId}`,
method: 'get'
})
}
// 获取最新的处方记录
export function newPrescription(registerId) {
return request({
url: `/prescriptionRecord/getLastRecord/${registerId}`,
method: 'get'
})
}
// 查询处方记录
export function prescriptionRecord(registerId) {
return request({
url: `/prescriptionRecord/getByResident/${registerId}`,
method: 'get'
})
}
// 查询处方详情
export function prescriptionDetail(recordId) {
return request({
url: `/preRecordDetail/getByRecord/${recordId}`,
method: 'get'
})
}
// 获取筛查结果列表
export function screeningResultList(registerId) {
return request({
url: `/screening/record?registerId=${registerId}`,
method: 'get'
})
}
// 获取最新的筛查结果
export function lastScreeningResult(registerId) {
return request({
url: `/screening/last/${registerId}`,
method: 'get'
})
}
// 获取筛查结果详情
export function screeningResultDetail(screeningId) {
return request({
url: `/screening/detail/${screeningId}`,
method: 'get'
})
}
// 每日健康 添加饮食
export function addDiet(data) {
return request({
url: '/health/saveDiet',
data: data,
method: 'post'
})
}
// 每日健康 添加运动
export function addSport(data) {
return request({
url: '/health/saveSport',
data: data,
method: 'get'
})
}
// 每日健康 添加用药
export function addMedication(data) {
return request.post({
url: '/health/saveMedication',
data: data
})
}
// 获取每日健康记录
export function getEverydayHealthRecord(data) {
return request.get({
url: `/health/getInfo/${data.registerId}/${data.date}`
})
}
// 获取某天饮食记录
export function getDietOfDayHealthRecord(data) {
return request.get({
url: `/health/getDietOfDay/${data.registerId}/${data.date}`
})
}
// 获取某天运动记录
export function getSportOfDayHealthRecord(data) {
return request.get({
url: `/health/getSportOfDay/${data.registerId}/${data.date}`
})
}
// 获取某天用药记录
export function getMedicationOfDayHealthRecord(data) {
return request.get({
url: `/health/getMedicationOfDay/${data.registerId}/${data.date}`
})
}
// 获取筛查结果 图片
export function getScreeningResultPic(fileId) {
return request.get({
url: `/system/file/view/${fileId}`
})
}
// 修改用户信息
export function changeUserInfo(data) {
return request.post({
url: '/register/update',
data: data
})
}
// 获取机构列表
export function getDeptList() {
return request({
url: `/nurseApplet/hospital/getList`,
method: 'get'
})
}
// 获取筛查项目列表
export function getProlist(data) {
return request({
url: '/nurseApplet/screening/project/list',
data: data,
method: 'get'
})
}
// 获取预约列表
export function getOrderList(data) {
return request.get({
url: '/screening/list',
data: data
})
}
// 获取最后一次血糖记录
export function getLastBgRecord(registerId) {
return request.get({
url: `/health/getLastBG/${registerId}`,
})
}
// 获取最后一次血压 心率 记录
export function getLastBpAndHrRecord(registerId) {
return request.get({
url: `/health/getLastBP/${registerId}`,
})
}
// 获取复诊记录时间轴
export function getSubsequentVisitTime(identity) {
return request.get({
url: `/performance/timelineList/${identity}`,
})
}
// 获取复诊记录详情
export function getSubsequentVisitDetail(perRecordId) {
return request.get({
url: `/performance/getDetail/${perRecordId}`,
})
}
// 推送筛查项目跳转查询推荐详情
export function getScreeningDetail(assessRecordId) {
return request.get({
url: `/screening/getInfo/${assessRecordId}`,
})
}
// end

View File

@ -64,6 +64,15 @@
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },
{
"path": "orderlist/orderlist",
"style": {
"navigationBarTitleText": "预约详情",
"enablePullDownRefresh": false,
// "navigationStyle": "default",
"navigationBarBackgroundColor": "#4ac4ab"
}
},
{ {
"path": "screenorder/screenorder", "path": "screenorder/screenorder",
"style": { "style": {
@ -251,23 +260,24 @@
}, { }, {
"path": "ProductList/ProductList", // "path": "ProductList/ProductList", //
"style": { "style": {
"navigationBarTitleText": "医路优品",
"navigationStyle": "custom", // "navigationStyle": "custom", //
"onReachBottomDistance": 40, // px "navigationBarTitleText": "医路优品",
"onReachBottomDistance": 20, // px
"enablePullDownRefresh": true //true "enablePullDownRefresh": true //true
} }
}, { }, {
"path": "nursestation/nursestation", "path": "nursestation/nursestation",
"style": { "style": {
"navigationBarTitleText": "护理机构详情", "navigationBarTitleText": "护理服务详情"
"onReachBottomDistance": 100, // px // "onReachBottomDistance": 40, // px
"enablePullDownRefresh": true //true // "enablePullDownRefresh": true //true
} }
}, { }, {
"path": "site/site", "path": "site/site",
"style": { "style": {
"navigationBarTitleText": "护理机构", "navigationStyle": "custom", //
"onReachBottomDistance": 100, // px "navigationBarTitleText": "护理服务",
"onReachBottomDistance": 40, // px
"enablePullDownRefresh": true //true "enablePullDownRefresh": true //true
} }
}, { }, {
@ -357,12 +367,14 @@
"navigationBarTitleText": "筛查结果", "navigationBarTitleText": "筛查结果",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, { }, {
"path": "screeningRecord/screeningRecord", "path": "screeningRecord/screeningRecord",
"style": { "style": {
"navigationBarTitleText": "筛查记录", "navigationBarTitleText": "筛查记录",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, { }, {
"path": "SelectItem/SelectItem", "path": "SelectItem/SelectItem",
"style": { "style": {
@ -375,24 +387,6 @@
"navigationBarTitleText": "我的签约", "navigationBarTitleText": "我的签约",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, {
"path": "myfamilydoctorteam/myfamilydoctorteam",
"style": {
"navigationBarTitleText": "我的家庭医生团队",
"enablePullDownRefresh": false
}
}, {
"path": "performancedetails/performancedetails",
"style": {
"navigationBarTitleText": "履约详情",
"enablePullDownRefresh": false
}
}, {
"path": "contractsigningprotocol/contractsigningprotocol",
"style": {
"navigationBarTitleText": "签约协议",
"enablePullDownRefresh": false
}
} }
] ]
}, { }, {
@ -536,4 +530,4 @@
// } // }
] ]
} }
} }

View File

@ -46,7 +46,8 @@
mapActions mapActions
} from "vuex"; } from "vuex";
import { import {
getPoserInfoListByType getPoserInfoListByType,
getScreening
} from '@/api/pages/medicalservice/index.js' } from '@/api/pages/medicalservice/index.js'
import { import {
getHeathHousingList getHeathHousingList
@ -58,6 +59,7 @@
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
informationCategoryVOList: [], // informationCategoryVOList: [], //
patientId:'',
}; };
}, },
onShow() { onShow() {
@ -66,8 +68,56 @@
}, },
methods: { methods: {
goAppointmentscreening(){ goAppointmentscreening(){
//
// this.userInfo
// let userInfo = uni.getStorageSync('userInfo')
// if (!userInfo) {
// uni.showModal({
// title: "",
// content: "",
// confirmText: '',
// cancelText: '',
// success(res) {
// if (res.confirm) {
// uni.redirectTo({
// url: "/pages/login/login?mode="
// })
// } else {
// wx.exitMiniProgram()
// }
// },
// })
// } else {
// if (!uni.getStorageSync('userInfo').identity) {
// uni.navigateTo({
// url: '../../pagesB/modifyInfo/modifyInfo'
// })
// return
// }
this.patientId = uni.getStorageSync('patientId');
getScreening(this.patientId).then(res => {
if (res.data.code == 200) {
// let userInfo = JSON.stringify(this.userInfo)
if (!res.data) {
uni.navigateTo({
url: '/pagesB/screenorder/screenorder'
})
} else {
uni.navigateTo({
url: '/pagesB/orderlist/orderlist'
})
}
}
})
// }
// uni.navigateTo({
// url: '/pagesB/screenorder/screenorder'
// })
uni.navigateTo({ uni.navigateTo({
url: '/pagesB/screenorder/screenorder' url: '/pagesB/orderlist/orderlist'
}) })
}, },
//item //item

View File

@ -0,0 +1,150 @@
<template>
<view class="orderlist">
<view class="orderbtn" @click="goScreenOrder">
新增预约
</view>
<template v-for="(item, index) in pageList">
<view class="content" @click="goitemDetail(item)" :key="index">
<view class="c_top" >
<view class="c_right">
<text>预约项目{{ item.projectName }}</text>
<text>预约时间{{ item.applyStartTime ? item.applyStartTime.substring(0, 16) : '' + '-' + item.applyEndTime ? item.applyEndTime.substring(10, 16) : '' }}</text>
<text>预约机构{{ item.hospitalName }}</text>
<text>登记状态
<text v-if="item.screeningStatus < 3">未登记</text>
<!-- <text v-if="item.screeningStatus == 2">取消预约</text> -->
<text v-if="item.screeningStatus >= 3">已登记</text>
<!-- <text v-else>已完成</text> -->
</text>
<view style="color:#333;margin-bottom: 30rpx;">
预约状态
<uni-tag v-if="item.exceedStatus == '0'" text="生效中" size="mini" type="success" />
<uni-tag v-if="item.exceedStatus == '1'" size="mini" text="已过期" />
</view>
<text v-if="item.registrationDate">登记时间{{ item.registrationDate }}</text>
</view>
<image style="width: 100%;" :src="item.applyBarcode"></image>
</view>
</view>
</template>
</view>
</template>
<script>
import {
getOrderList
} from '@/api/pagesB/orderlist/orderlist.js'
export default {
data() {
return {
pageList: {},
patientId: "",
userInfo: {},
pageSize:10,
pageNum:1,
}
},
// onLoad(e) {
// if (e) {
// this.userInfo = JSON.parse(e.userInfo)
// this.registerId = this.userInfo.registerId
// }
// },
onShow() {
this.getOrderList()
},
// onUnload() {
// uni.navigateBack({
// delta: 1
// })
// },
methods: {
getOrderList() {
this.patientId = uni.getStorageSync('patientId');
console.log(this.pageNum,'55')
getOrderList(this.patientId,this.pageNum,this.pageSize).then(res => {
// console.log(res,'999')
if (res.code == 200) {
this.pageList = res.rows
console.log(this.pageList,'999')
}
})
},
goScreenOrder() {
// let userInfo = JSON.stringify(this.userInfo)
uni.navigateTo({
// url: `/pagesB/screenorder/screenorder?userInfo=${userInfo}`
url: '/pagesB/screenorder/screenorder'
})
// redirectTo
},
// goitemDetail(e) {
// uni.navigateTo({
// url: `../../pagesB/screensuccess/screensuccess?screenInfo=${encodeURIComponent(JSON.stringify(e))}`
// })
// }
}
}
</script>
<style lang="scss">
.orderlist {
padding: 20rpx 30rpx;
.orderbtn {
border: 2rpx solid #4AC4AB;
border-radius: 10rpx;
padding: 15rpx 0;
color: #4AC4AB;
text-align: center;
}
.content {
padding: 20rpx;
margin-top: 40rpx;
border-radius: 20rpx;
background: #fff;
.c_top {
// display: flex;
image {
// min-width: 220rpx;
// max-width: 220rpx;
// height: 220rpx;
height: 160rpx;
}
.c_right {
font-size: 28rpx;
margin-left: 25rpx;
display: flex;
flex-direction: column;
justify-content: center;
text {
// line-height: 75rpx;
color: #333;
margin-bottom: 30rpx;
}
}
}
}
button {
color: white;
background: red;
}
}
/deep/ .checklist-text {
font-size: 15px !important;
}
/deep/ .uni-tag--success.data-v-1516016e,
.uni-tag--mini.data-v-1516016e {
color: #fff !important;
border-radius: 10rpx !important;
}
</style>

View File

@ -1,431 +1,449 @@
<template> <template>
<view class="screenorder"> <view class="screenorder">
<view class="user_info"> <view class="user_info">
<view class="basic"> <view class="basic">
<view class="name">{{userInfo.residentName}}</view> <view class="name">{{userInfo.residentName}}</view>
<view style="margin-right: 30rpx; color: #333">年龄{{userInfo.age}}</view> <view style="margin-right: 30rpx; color: #333">年龄{{userInfo.age}}</view>
<view style="color: #333;">性别{{userInfo.gender}}</view> <view style="color: #333;">性别{{userInfo.gender}}</view>
</view> </view>
<view class="illness"> <!-- <view class="illness">
<view v-show="userInfo.disease.indexOf('0') != -1"> <view v-show="userInfo.disease.indexOf('0') != -1">
<span></span> <span></span>
</view> </view>
<view v-show="userInfo.disease.indexOf('1') != -1"> <view v-show="userInfo.disease.indexOf('1') != -1">
<span>高血压</span> <span>高血压</span>
</view> </view>
<view v-show="userInfo.disease.indexOf('2') != -1"> <view v-show="userInfo.disease.indexOf('2') != -1">
<span>高血糖</span> <span>高血糖</span>
</view> </view>
<view v-show="userInfo.disease.indexOf('3') != -1"> <view v-show="userInfo.disease.indexOf('3') != -1">
<span>高血脂</span> <span>高血脂</span>
</view> </view>
</view> </view> -->
</view> </view>
<view class="line"></view> <view class="line"></view>
<view class="title"> <view class="title">
<!-- <view></view> --> <!-- <view></view> -->
<text>基本信息</text> <text>基本信息</text>
</view> </view>
<u-form labelPosition="left" :model="formData" :rules="rules" ref="form1"> <u-form labelPosition="left" :model="formData" :rules="rules" ref="form1">
<u-form-item label="预约机构" labelWidth="80"> <u-form-item label="预约机构" labelWidth="80">
<view class="uniDataSelectClass"> <view class="uniDataSelectClass">
<uni-data-select v-model="formData.deptId" :localdata="DeptList" @change="changeDept" :clear="false"> <uni-data-select v-model="formData.hospitalId" :localdata="DeptList" @change="changeDept"
</uni-data-select> :clear="false">
</view> </uni-data-select>
</u-form-item> </view>
<u-form-item label="预约项目" labelWidth="80"> </u-form-item>
<view class="uniDataSelectClass"> <u-form-item label="预约项目" labelWidth="80">
<uni-data-select v-model="formData.projectId" :localdata="ProList" @change="changePro" :clear="false"> <view class="uniDataSelectClass">
</uni-data-select> <uni-data-select v-model="formData.projectId" :localdata="ProList" @change="changePro"
</view> :clear="false">
</u-form-item> </uni-data-select>
<u-form-item label="预约时间" labelWidth="80"> </view>
<uni-datetime-picker v-model="datetimerange" type="datetimerange" rangeSeparator="至" /> </u-form-item>
</u-form-item> <u-form-item label="预约时间" labelWidth="80">
</u-form> <uni-datetime-picker v-model="datetimerange" type="datetimerange" rangeSeparator="至" />
<!-- <view style="display: flex;justify-content: center;margin-top: 80rpx;"><uni-data-checkbox multiple v-model="test" :localdata="test1"></uni-data-checkbox></view> --> </u-form-item>
<view style="height: 180rpx;"></view> </u-form>
<view class="btn"> <!-- <view style="display: flex;justify-content: center;margin-top: 80rpx;"><uni-data-checkbox multiple v-model="test" :localdata="test1"></uni-data-checkbox></view> -->
<u-button type="primary" text="提交预约信息" @click="submit"></u-button> <view style="height: 180rpx;"></view>
</view> <view class="btn">
<u-action-sheet :show="showSex" :actions="actions" title="请选择性别" @close="showSex = false" @select="sexSelect"> <u-button type="success" text="提交预约信息" @click="submit">提交预约信息</u-button>
</u-action-sheet> </view>
</view> <u-action-sheet :show="showSex" :actions="actions" title="请选择性别" @close="showSex = false" @select="sexSelect">
</u-action-sheet>
</view>
</template> </template>
<script> <script>
// import { import {
// screenOrder, screenOrder,
// getDeptList, getDeptList,
// getProlist getProlist
// } from '@/service/api/jsApi.js' } from '@/api/pagesB/screenOrder/index.js'
// import { import {
// getSex, getSex,
// getBirthday, getBirthday,
// getAgeFun getAgeFun
// } from '@/utils/conversion.js' } from '@/api/conversion.js'
export default { export default {
data() { data() {
return { return {
showSex: false, showSex: false,
userInfo: {}, userInfo: {},
datetimerange: [Date.now(), this.todayEndTime()], datetimerange: [Date.now(), this.todayEndTime()],
test: ['1'], test: ['1'],
formData: { formData: {
residentName: '', residentName: '',
identity: '', identity: '370921199810180329',
certType: '1', certType: '1',
gender: '', gender: '',
birthday: '', birthday: '1998-10-18',
phone: '', phone: '18854188230',
address: '', address: '',
disease: '', disease: '',
height: '', height: '',
weight: '', weight: '',
applyStartTime: '', applyStartTime: '',
applyEndTime: '', applyEndTime: '',
deptId: '', hospitalId: '',
deptName: '', hospitalName: '',
projectId: '', projectId: '',
projectName: '' projectName: ''
}, },
actions: [{ actions: [{
name: '男', name: '男',
disabled: true disabled: true
}, },
{ {
name: '女', name: '女',
disabled: true disabled: true
}, },
], ],
disease: [{ disease: [{
text: '高血压', text: '高血压',
value: '1' value: '1'
}, },
{ {
text: '高血糖', text: '高血糖',
value: '2' value: '2'
}, },
{ {
text: '高血脂', text: '高血脂',
value: '3' value: '3'
}, },
{ {
text: '无', text: '无',
value: '0' value: '0'
} }
], ],
DeptList: [], DeptList: [],
ProList: [], ProList: [],
test1: [{ test1: [{
text: '同意《用户服务协议》及《隐私政策》', text: '同意《用户服务协议》及《隐私政策》',
value: '1' value: '1'
}], }],
rules: { rules: {
residentName: [{ residentName: [{
required: true, required: true,
message: '请填写姓名', message: '请填写姓名',
trigger: ['blur', 'change'] trigger: ['blur', 'change']
}], }],
identity: [{ identity: [{
required: true, required: true,
message: '请填写身份证号', message: '请填写身份证号',
trigger: ['blur'] trigger: ['blur']
}, { }, {
validator: (rule, value, callback) => { validator: (rule, value, callback) => {
return uni.$u.test.idCard(value); return uni.$u.test.idCard(value);
}, },
message: '请输入正确的身份证号', message: '请输入正确的身份证号',
trigger: ['blur'], trigger: ['blur'],
}], }],
phone: [{ phone: [{
required: true, required: true,
message: '请填写联系电话', message: '请填写联系电话',
trigger: ['blur'] trigger: ['blur']
}, { }, {
validator: (rule, value, callback) => { validator: (rule, value, callback) => {
return uni.$u.test.mobile(value); return uni.$u.test.mobile(value);
}, },
message: '手机号码不正确', message: '手机号码不正确',
trigger: ['blur'], trigger: ['blur'],
}], }],
address: [{ address: [{
required: true, required: true,
message: '请填写家庭住址', message: '请填写家庭住址',
trigger: ['blur', 'change'] trigger: ['blur', 'change']
}], }],
height: [{ height: [{
required: true, required: true,
message: '请填写身高', message: '请填写身高',
trigger: ['blur', 'change'] trigger: ['blur', 'change']
}, { }, {
validator: (rule, value, callback) => { validator: (rule, value, callback) => {
return uni.$u.test.number(value); return uni.$u.test.number(value);
}, },
message: '身高格式为数字(小数)', message: '身高格式为数字(小数)',
trigger: ['blur'], trigger: ['blur'],
}], }],
weight: [{ weight: [{
required: true, required: true,
message: '请填写体重', message: '请填写体重',
trigger: ['blur', 'change'] trigger: ['blur', 'change']
}, { }, {
validator: (rule, value, callback) => { validator: (rule, value, callback) => {
return uni.$u.test.number(value); return uni.$u.test.number(value);
}, },
message: '体重格式为数字(小数)', message: '体重格式为数字(小数)',
trigger: ['blur'], trigger: ['blur'],
}] }]
} }
} }
}, },
onLoad(e) { onLoad(e) {
if (e) { console.log(e, '55')
this.userInfo = JSON.parse(e.userInfo) // if (e) {
this.diseaseValue = this.userInfo.disease.split(',') // this.userInfo = JSON.parse(e.userInfo)
if (this.userInfo.gender == '1') { // this.diseaseValue = this.userInfo.disease.split(',')
this.userInfo.gender = '男' // if (this.userInfo.gender == '1') {
} else { // this.userInfo.gender = ''
this.userInfo.gender = '女' // } else {
} // this.userInfo.gender = ''
this.userInfo.age = getAgeFun(this.userInfo.birthday) // }
} // this.userInfo.age = getAgeFun(this.userInfo.birthday)
// this.init() // }
this.getDeptAndPro() // this.init()
}, this.getDeptAndPro()
methods: { },
getDeptAndPro() { methods: {
getDeptList(this.userInfo.registerId).then(res => { getDeptAndPro() {
if (res.data.code == 200) { getDeptList().then(res => {
this.DeptList = res.data.data.map(item => { console.log(res, '1')
return { // if (res.data.code == 200) {
text: item.deptName, this.DeptList = res.data.map(item => {
value: item.deptId console.log(item, '888')
} return {
}) text: item.hospitalName,
} value: item.id
}) }
getProlist({ })
projectType: 1, // }
status: 0 })
}).then(res => { getProlist({
if (res.data.code == 200) { projectType: 1,
this.ProList = res.data.data.map(item => { status: 0
return { }).then(res => {
text: item.projectName, // if (res.data.code == 200) {
value: item.projectId this.ProList = res.data.map(item => {
} console.log(item, '999')
}) return {
} text: item.projectName,
}) value: item.projectId
}, }
changeDept(e) { })
this.formData.deptName = this.DeptList.find(item => item.value == e).text // }
}, })
changePro(e) { },
this.formData.projectName = this.ProList.find(item => item.value == e).text changeDept(e) {
}, this.formData.hospitalName = this.DeptList.find(item => item.value == e).text
todayEndTime() { },
let todayYear = (new Date()).getFullYear(); changePro(e) {
let todayMonth = (new Date()).getMonth(); this.formData.projectName = this.ProList.find(item => item.value == e).text
let todayDay = (new Date()).getDate(); },
let todayTime = (new Date(todayYear, todayMonth, todayDay, '23', '59', '59')).getTime(); todayEndTime() {
return todayTime let todayYear = (new Date()).getFullYear();
}, let todayMonth = (new Date()).getMonth();
changeDisease() { let todayDay = (new Date()).getDate();
if (this.formData.disease.length != 0 && this.formData.disease.find(item => item != '0')) { let todayTime = (new Date(todayYear, todayMonth, todayDay, '23', '59', '59')).getTime();
this.disease[3].disable = true return todayTime
} },
if (this.formData.disease.length != 0 && this.formData.disease.find(item => item == '0')) { changeDisease() {
this.disease[0].disable = true if (this.formData.disease.length != 0 && this.formData.disease.find(item => item != '0')) {
this.disease[1].disable = true this.disease[3].disable = true
this.disease[2].disable = true }
this.formData.disease = ['0'] if (this.formData.disease.length != 0 && this.formData.disease.find(item => item == '0')) {
this.disease[3].disable = false this.disease[0].disable = true
} this.disease[1].disable = true
if (this.formData.disease.length == 0) { this.disease[2].disable = true
for (let item in this.disease) { this.formData.disease = ['0']
this.disease[item].disable = false this.disease[3].disable = false
} }
} if (this.formData.disease.length == 0) {
}, for (let item in this.disease) {
changeCheckbox(e) { this.disease[item].disable = false
if (e.detail.value.length != 0 && e.detail.value.find(item => item != '0')) { }
this.disease[3].disable = true }
} },
if (e.detail.value.length != 0 && e.detail.value.find(item => item == '0')) { changeCheckbox(e) {
this.disease[0].disable = true if (e.detail.value.length != 0 && e.detail.value.find(item => item != '0')) {
this.disease[1].disable = true this.disease[3].disable = true
this.disease[2].disable = true }
} if (e.detail.value.length != 0 && e.detail.value.find(item => item == '0')) {
if (e.detail.value.length == 0) { this.disease[0].disable = true
for (let item in this.disease) { this.disease[1].disable = true
this.disease[item].disable = false this.disease[2].disable = true
} }
} if (e.detail.value.length == 0) {
}, for (let item in this.disease) {
process() { this.disease[item].disable = false
let _this = this }
if (!this.formData.deptId) { }
uni.showModal({ },
title: '提示', process() {
content: '请选择预约机构', let _this = this
}) console.log(this.formData, '123')
return
} if (!this.formData.hospitalId) {
if (!this.formData.projectId) { uni.showModal({
uni.showModal({ title: '提示',
title: '提示', content: '请选择预约机构',
content: '请选择预约项目', })
}) return
return }
} if (!this.formData.projectId) {
if (!this.datetimerange[0] || !this.datetimerange[1]) { uni.showModal({
uni.showModal({ title: '提示',
title: '提示', content: '请选择预约项目',
content: '预约时间请填写完整!', })
}) return
return }
} if (!this.datetimerange[0] || !this.datetimerange[1]) {
this.formData.registerId = this.userInfo.registerId uni.showModal({
this.formData.identity = this.userInfo.identity title: '提示',
this.formData.disease = this.userInfo.disease content: '预约时间请填写完整!',
this.formData.applyStartTime = this.datetimerange[0] })
this.formData.applyEndTime = this.datetimerange[1] return
if (this.formData.gender == '男') { }
this.formData.gender = '1'
} else { this.formData.patientId = uni.getStorageSync('patientId');
this.formData.gender = '2' // this.formData.identity = this.userInfo.identity
} // this.formData.disease = this.userInfo.disease
screenOrder(this.formData).then(res => { this.formData.applyStartTime = this.datetimerange[0]
this.formData.disease = this.formData.disease.split(',') this.formData.applyEndTime = this.datetimerange[1]
if (this.formData.gender == '1') { if (this.formData.gender == '男') {
this.formData.gender = '男' this.formData.gender = '1'
} else { } else {
this.formData.gender = '女' this.formData.gender = '2'
} }
if (res.data.code == '200') { screenOrder(this.formData).then(res => {
uni.showToast({ // this.formData.disease = this.formData.disease.split(',')
title: '预约成功', if (this.formData.gender == '1') {
duration: 1000 this.formData.gender = '男'
}); } else {
setTimeout(() => { this.formData.gender = '女'
// uni.navigateTo({ }
// // url: `../screensuccess/screensuccess?registerId=${res.data.data}` console.log(res,'55')
// url: `../orderlist/orderlist?registerId=${_this.userInfo.registerId}` if (res.code == 200) {
// }) uni.showToast({
uni.navigateBack({ title: '预约成功',
delta:1 duration: 1000
}) });
}, 1000) setTimeout(() => {
} // uni.navigateTo({
}) // url: `../screensuccess/screensuccess?registerId=${res.data.data}`
}, // url: `/pageB/orderlist/orderlist?patientId=${this.formData.patientId}`
submit() { // url: '/pageB/orderlist/orderlist'/
this.$refs.form1.validate().then(res => { // })
this.process() uni.navigateBack({
}).catch(errors => { delta: 1
return })
}) }, 1000)
}, }
IdentityBlur(e) { })
this.formData.gender = getSex(e) },
this.formData.birthday = getBirthday(e) submit() {
} // console.log(8)
} // this.$refs.form1.validate().then(res => {
} // console.log(res,'555')
this.process()
// }).catch(errors => {
return
// })
},
IdentityBlur(e) {
this.formData.gender = getSex(e)
this.formData.birthday = getBirthday(e)
}
}
}
</script> </script>
<style lang="scss"> <style lang="scss">
// .uniDataSelectClass { // .uniDataSelectClass {
// .uni-select__selector { // .uni-select__selector {
// z-index: 99; // z-index: 99;
// } // }
// } // }
::v-deep.u-btn--success.data-v-3bf2dba7 {
.user_info { color: #ffffff;
border: 1px solid #4AC4AB; border-color: #4AC4AB;
border-radius: 10rpx; background-color: #4AC4AB !important;
padding: 40rpx 30rpx; }
background: #f6f6f6;
margin-top: 50rpx;
.basic { .user_info {
display: flex; border: 1px solid #4AC4AB;
align-items: center; border-radius: 10rpx;
padding: 40rpx 30rpx;
background: #f6f6f6;
margin-top: 50rpx;
.name { .basic {
font-size: 42rpx; display: flex;
margin-right: 30rpx; align-items: center;
font-weight: 900;
}
}
.illness { .name {
display: flex; font-size: 42rpx;
margin-top: 25rpx; margin-right: 30rpx;
font-weight: 900;
}
}
view { .illness {
width: 60px; display: flex;
font-size: 14px; margin-top: 25rpx;
background-color: #4AC4AB;
text-align: center;
color: #fff;
padding: 8rpx 6rpx;
border-radius: 20px;
margin-right: 10px;
}
}
}
.line { view {
height: 2rpx; width: 60px;
border-bottom: 1px dashed #999; font-size: 14px;
margin: 40rpx -40rpx; background-color: #4AC4AB;
} text-align: center;
color: #fff;
padding: 8rpx 6rpx;
border-radius: 20px;
margin-right: 10px;
}
}
}
.title { .line {
display: flex; height: 2rpx;
font-size: 34rpx; border-bottom: 1px dashed #999;
margin-bottom: 20rpx; margin: 40rpx -40rpx;
}
// color: #555; .title {
// background: #f6f6f6; display: flex;
// margin: 0 -40rpx 0 -40rpx; font-size: 34rpx;
// padding: 20rpx 0; margin-bottom: 20rpx;
view {
width: 10rpx;
background: #4AC4AB;
height: 40rpx;
margin: 0 15rpx 0 0;
}
}
.screenorder { // color: #555;
padding: 0 40rpx; // background: #f6f6f6;
} // margin: 0 -40rpx 0 -40rpx;
// padding: 20rpx 0;
view {
width: 10rpx;
background: #4AC4AB;
height: 40rpx;
margin: 0 15rpx 0 0;
}
}
/deep/.u-button--primary.data-v-2bf0e569 { .screenorder {
background-color: #4AC4AB !important; padding: 0 40rpx;
border-color: #4AC4AB !important; }
}
.btn { /deep/.u-button--primary.data-v-2bf0e569 {
// display: flex; background-color: #4AC4AB !important;
// flex-direction: column; border-color: #4AC4AB !important;
// align-items: center; }
position: fixed;
bottom: 50rpx;
width: 90%;
z-index: 2;
/deep/.u-button { .btn {
height: 90rpx !important; // display: flex;
} // flex-direction: column;
} // align-items: center;
position: fixed;
bottom: 50rpx;
width: 90%;
z-index: 2;
/deep/.u-button__text { /deep/.u-button {
font-size: 34rpx !important; height: 90rpx !important;
} }
}
/deep/.u-button__text {
font-size: 34rpx !important;
}
</style> </style>

View File

@ -3,6 +3,65 @@
padding: 20rpx 0 0; padding: 20rpx 0 0;
background-color: #fff; background-color: #fff;
} }
::v-deep .u-navbar-placeholder {
background-color: #F7F5F5;
z-index: 999;
}
.u-navbar {
display: block;
// height: 200rpx;
image {
margin: 0 4% 0 4%;
width: 20rpx;
height: 30rpx;
}
.title {
width: 31%;
font-size: 34rpx;
font-weight: 500;
color: #FFFFFF;
}
.inputitem {
position: relative;
// margin-left: 4%;
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
width: 60%;
height: 65rpx;
border-radius: 31rpx;
z-index: 999;
background: #65c0a9;
color: #FFFFFF;
.placeholder {
color: #FFFFFF;
}
.input {
margin: 0 auto;
position: absolute;
height: 65rpx;
// top: 8%;
left: 18%;
width: 80%;
font-size: 26rpx;
color: #FFFFFF;
}
.icon {
background: url(@/static/pagesB/sousuo.png) no-repeat;
width: 30rpx;
height: 28rpx;
background-size: cover;
position: absolute;
top: 28%;
left: 4%;
}
}
}
::v-deep .u-swiper-item{ ::v-deep .u-swiper-item{
} }
::v-deep .u-swiper-image { ::v-deep .u-swiper-image {
@ -69,7 +128,7 @@
border-radius: 20rpx; border-radius: 20rpx;
background-color: #F4F5F7; background-color: #F4F5F7;
z-index: 999; z-index: 999;
.input { .input {
margin: 0 auto; margin: 0 auto;
position: absolute; position: absolute;
@ -80,7 +139,7 @@
font-size: 26rpx; font-size: 26rpx;
color: #000000; color: #000000;
} }
.icon { .icon {
background: url(@/static/pagesB/sousuo.png) no-repeat; background: url(@/static/pagesB/sousuo.png) no-repeat;
width: 30rpx; width: 30rpx;

View File

@ -1,9 +1,20 @@
<template> <template>
<view class="app"> <view class="app">
<view class="inputs"> <!-- <view class="inputs">
<i class="icon"></i> <i class="icon"></i>
<input v-model="searchName" type="text" name="" id="" class="input" placeholder="请输入"> <input v-model="searchName" type="text" name="" id="" class="input" placeholder="请输入">
</view> </view> -->
<u-navbar :is-back="false" :background="background" class="u-navbar">
<image src="@/static/pagesB/fanhui.png" mode="" @tap="goprevious"></image>
<view class="title" @tap="goprevious">
护理服务
</view>
<view class="inputitem">
<i class="icon"></i>
<input v-model="searchName" type="text" name="" id="" class="input" placeholder="搜索商品"
placeholder-class="placeholder">
</view>
</u-navbar>
<view class="Classificationlist"> <view class="Classificationlist">
<view v-for="(item,index) in nurseItemClassifyInfoList" :key="index" @tap='tapitemclass(item)' <view v-for="(item,index) in nurseItemClassifyInfoList" :key="index" @tap='tapitemclass(item)'
:class="item.id == itemClassId?'itemclass':'item'"> :class="item.id == itemClassId?'itemclass':'item'">
@ -71,6 +82,9 @@
export default { export default {
data() { data() {
return { return {
background: {
backgroundColor: '#26A888',
},
nurseAgencyClassifyInfoList: [], // nurseAgencyClassifyInfoList: [], //
conNewcurrent: 0, conNewcurrent: 0,
nurseItemClassifyInfoList: [], // nurseItemClassifyInfoList: [], //
@ -92,6 +106,11 @@
} }
}, },
methods: { methods: {
goprevious() {
uni.navigateBack({
delta: 1
})
},
//swiper //swiper
goswiper(index) { goswiper(index) {
if (this.lbinfo[index].jumpLink == '/pages/medicalservice/medicalservice' || this.lbinfo[index].jumpLink == if (this.lbinfo[index].jumpLink == '/pages/medicalservice/medicalservice' || this.lbinfo[index].jumpLink ==