改约前端二线拆开预约

main
yanzai 1 year ago
parent 9abbf0ccf5
commit 684d279269

@ -11,9 +11,9 @@ use Illuminate\Support\Facades\DB;
class TestController extends Controller class TestController extends Controller
{ {
public function DBtest(){ public function DBtest(){
echo DB::table('users')->count(); // echo DB::table('users')->count();
// $order= new OrderService(); $order= new OrderService();
// dd($order->DepartmentItemCount(147)); dd($order->DepartmentItemCount(173));
$aspnet=new AspNetZhuanController(); $aspnet=new AspNetZhuanController();

@ -36,16 +36,16 @@
type: String, type: String,
// required: true // required: true
}, },
NmrDTime: { YuYueInfo: {
type: String, type: Object,
// required: true // required: true
}, },
TjDTime: { TjDTime: {
type: String, type: String,
// required: true // required: true
}, },
TjType: { ItemSelected: {
type: String, type: Object,
// required: true // required: true
}, },
@ -59,17 +59,25 @@
uni.$lu.toast("该号源已经被占用"); uni.$lu.toast("该号源已经被占用");
return false; return false;
} }
if(props.TjType=="tj"){ if(props.ItemSelected.type=="tj"){
const a = new Date(props.NmrDTime.substring(0,10)); if(props.YuYueInfo.NmrInfo.length>0){
console.log(props.YuYueInfo.NmrInfo)
//
let minDateItem = props.YuYueInfo.NmrInfo[0];
for (let i = 1; i < props.YuYueInfo.NmrInfo.length; i++) {
if (new Date(props.YuYueInfo.NmrInfo[i].date) < new Date(minDateItem.date)) {
minDateItem = props.YuYueInfo.NmrInfo[i];
}
}
const NmrDTime=minDateItem.date+' '+minDateItem.time
const a = new Date(NmrDTime);
if (!isNaN(a.getTime())){ if (!isNaN(a.getTime())){
if(!validateDates(props.TjDTime,props.NmrDTime)){ if(!validateDates(props.TjDTime,NmrDTime)){
return false; return false;
} }
} }
//console.log(props.NmrDTime) }
//console.log(props.TjDTime)
} }
emit('selectTime', timeInfo); emit('selectTime', timeInfo);
} }
@ -77,6 +85,7 @@
emit('openMonth'); emit('openMonth');
} }
const validateDates=(dateA, dateB)=> { const validateDates=(dateA, dateB)=> {
console.log(dateA) console.log(dateA)
console.log(dateB) console.log(dateB)

@ -8,7 +8,7 @@
</view> </view>
</view> </view>
<view class="zhouli"> <view class="zhouli">
<WeeklyCalendar v-if="weekList" :dataInfo="weekList" :selectedTime="selectedTime" :NmrDTime="nmr_date+' '+nmr_time" :TjDTime="tj_date+' '+tj_time" :TjType="itemSelected" <WeeklyCalendar v-if="weekList" :dataInfo="weekList" :selectedTime="selectedTime" :YuYueInfo="YuYueInfo" :TjDTime="tj_date+' '+tj_time" :ItemSelected="itemSelected"
@selectDate="selectDateFunc" @selectTime="selectTimeFunc" @openMonth="openMonthFunc" /> @selectDate="selectDateFunc" @selectTime="selectTimeFunc" @openMonth="openMonthFunc" />
</view> </view>
<view class="dateitem" v-if="orderInfo"> <view class="dateitem" v-if="orderInfo">
@ -17,15 +17,17 @@
<view>{{orderInfo.name}}</view> <view>{{orderInfo.name}}</view>
<view <view
style="background-color: #f1f1f1;padding: 20rpx 10rpx; margin-top: 10rpx;border-radius: 14rpx;font-size: 28rpx;color: #666;"> style="background-color: #f1f1f1;padding: 20rpx 10rpx; margin-top: 10rpx;border-radius: 14rpx;font-size: 28rpx;color: #666;">
<view @click="itemClick('nmr')" <view v-if="YuYueInfo.NmrInfo.length>0">
v-if=" orderInfo.buy_info.nmr_list && orderInfo.buy_info.nmr_list.length>0" <view @click="itemClick('nmr',item_nmr,index_nmr)" v-for="(item_nmr,index_nmr) in YuYueInfo.NmrInfo" :key="index_nmr"
style="padding: 20rpx;" :class="itemSelected=='nmr'?'itemSelected':''"> style="padding: 20rpx;" :class="(itemSelected.type=='nmr' && itemSelected.index==index_nmr)?'itemSelected':''">
<view v-for="(item1,index1) in orderInfo.buy_info.nmr_list">
{{item1.name}} <span v-if="nmr_date && nmr_time">{{nmr_date}} {{nmr_time}}</span> {{item_nmr.name}} <span v-if="item_nmr.date && item_nmr.time">{{item_nmr.date}} {{item_nmr.time}}</span>
</view> </view>
</view> </view>
<view @click="itemClick('tj')" style="margin-top: 10rpx;padding: 20rpx;color: #666;"
:class="itemSelected=='tj'?'itemSelected':''">体检日期 <span v-if="tj_date && tj_time">{{tj_date}} <view @click="itemClick('tj','',0)" style="margin-top: 10rpx;padding: 20rpx;color: #666;"
:class="itemSelected.type=='tj'?'itemSelected':''">体检日期 <span v-if="tj_date && tj_time">{{tj_date}}
{{tj_time}}</span></view> {{tj_time}}</span></view>
</view> </view>
@ -108,6 +110,10 @@
}; };
let selectedTime = ref(null); let selectedTime = ref(null);
let orderInfo = ref(null) let orderInfo = ref(null)
let YuYueInfo=ref({
TjInfo:{},
NmrInfo:{}
})
const GetOrderInfo = async () => { const GetOrderInfo = async () => {
uni.showLoading(); uni.showLoading();
const response = await $api("GetOrderDetail", { const response = await $api("GetOrderDetail", {
@ -119,18 +125,19 @@
doctor_name.value = orderInfo.value.doctor doctor_name.value = orderInfo.value.doctor
// //
if (orderInfo.value.buy_info.nmr_list && orderInfo.value.buy_info.nmr_list.length > 0) { if (orderInfo.value.buy_info.nmr_list && orderInfo.value.buy_info.nmr_list.length > 0) {
itemSelected.value = 'nmr' itemSelected.value.type = 'nmr'
if(orderInfo.value.erxian_appointment_info.length>0){ if(orderInfo.value.erxian_appointment_info.length>0){
selectedTime.value = orderInfo.value.erxian_appointment_info[0].time // selectedTime.value = orderInfo.value.erxian_appointment_info[0].time //
selectedDate.value = orderInfo.value.erxian_appointment_info[0].date // selectedDate.value = orderInfo.value.erxian_appointment_info[0].date //
nmr_date.value = orderInfo.value.erxian_appointment_info[0].date // nmr_date.value = orderInfo.value.erxian_appointment_info[0].date
nmr_time.value = orderInfo.value.erxian_appointment_info[0].time // nmr_time.value = orderInfo.value.erxian_appointment_info[0].time
YuYueInfo.value.NmrInfo= orderInfo.value.erxian_appointment_info
} }
NMRGetDayPlanListFunc() NMRGetDayPlanListFunc()
} else { } else {
itemSelected.value = 'tj' itemSelected.value.type = 'tj'
selectedTime.value = orderInfo.value.appointment_time selectedTime.value = orderInfo.value.appointment_time
selectedDate.value = orderInfo.value.appointment_date selectedDate.value = orderInfo.value.appointment_date
@ -147,16 +154,18 @@
const selectDateFunc = (date) => { const selectDateFunc = (date) => {
selectedDate.value = date selectedDate.value = date
selectedTime.value = null selectedTime.value = null
if (itemSelected.value == 'nmr') { if (itemSelected.value.type == 'nmr') {
nmr_time.value = null // nmr_time.value = null
nmr_date.value = date //nmr_date.value = date
YuYueInfo.value.NmrInfo[itemSelected.value.index].date=date
YuYueInfo.value.NmrInfo[itemSelected.value.index].time=null
tj_time.value = null // tj_time.value = null //
tj_date.value = null tj_date.value = null
doctor_name.value = null // doctor_name.value = null //
NMRGetDayPlanListFunc() NMRGetDayPlanListFunc()
} }
if (itemSelected.value == 'tj') { if (itemSelected.value.type == 'tj') {
tj_time.value = null tj_time.value = null
tj_date.value = date tj_date.value = date
doctor_name.value = null // doctor_name.value = null //
@ -169,45 +178,53 @@
const selectTimeFunc = (timeinfo) => { const selectTimeFunc = (timeinfo) => {
selectedTime.value = timeinfo.time selectedTime.value = timeinfo.time
SelectedPlanId.value = timeinfo.id SelectedPlanId.value = timeinfo.id
if (itemSelected.value == 'nmr') { if (itemSelected.value.type == 'nmr') {
nmr_time.value = timeinfo.time YuYueInfo.value.NmrInfo[itemSelected.value.index].time = timeinfo.time
nmr_plan_id.value = timeinfo.id nmr_plan_id.value = timeinfo.id
} }
if (itemSelected.value == 'tj') { if (itemSelected.value.type == 'tj') {
tj_time.value = timeinfo.time tj_time.value = timeinfo.time
tj_plan_id.value = timeinfo.id tj_plan_id.value = timeinfo.id
} }
} }
let itemSelected = ref(null); let itemSelected = ref({
const itemClick = (type) => { type:null,
item:{},
index:0
});
const itemClick = (type,item,index) => {
//weekList.value=null //weekList.value=null
if (type == 'nmr') { if (type == 'nmr') {
selectedTime.value = nmr_time.value //selectedTime.value = nmr_time.value
selectedDate.value = nmr_date.value //selectedDate.value = nmr_date.value
selectedTime.value = YuYueInfo.value.NmrInfo[index].time
selectedDate.value = YuYueInfo.value.NmrInfo[index].date
NMRGetDayPlanListFunc() NMRGetDayPlanListFunc()
} }
if (type == 'tj') { if (type == 'tj') {
if (orderInfo.value.buy_info.nmr_list && orderInfo.value.buy_info.nmr_list.length > 0) { if (orderInfo.value.buy_info.nmr_list && orderInfo.value.buy_info.nmr_list.length > 0) {
if (nmr_time.value == null || nmr_date.value == null) { if (YuYueInfo.value.NmrInfo[itemSelected.value.index].date == null || YuYueInfo.value.NmrInfo[itemSelected.value.index].time == null) {
uni.$lu.toast("请先预约为影像科项目选择时间"); uni.$lu.toast("请先预约为影像科项目选择时间");
return false return false
} }
} }
if (tj_date.value == null) { if (tj_date.value == null) {
tj_date.value = nmr_date.value tj_date.value =YuYueInfo.value.NmrInfo[itemSelected.value.index].date
} }
selectedTime.value = tj_time.value selectedTime.value = tj_time.value
selectedDate.value = tj_date.value selectedDate.value = tj_date.value
GetDayPlanListFunc() GetDayPlanListFunc()
} }
itemSelected.value = type itemSelected.value.type = type
itemSelected.value.item=item
itemSelected.value.index=index
} }
let DoctorMonthCalendar = ref(null) let DoctorMonthCalendar = ref(null)
const selectDoctor = () => { const selectDoctor = () => {
if (orderInfo.value.buy_info.nmr_list && orderInfo.value.buy_info.nmr_list.length > 0) { if (orderInfo.value.buy_info.nmr_list && orderInfo.value.buy_info.nmr_list.length > 0) {
if (nmr_time.value == null || nmr_date.value == null) { if (YuYueInfo.value.NmrInfo[itemSelected.value.index].date == null || YuYueInfo.value.NmrInfo[itemSelected.value.index].time == null) {
uni.$lu.toast("请先预约为影像科项目选择时间"); uni.$lu.toast("请先预约为影像科项目选择时间");
return false return false
} }
@ -233,10 +250,10 @@
let currentDate = ref(null); // let currentDate = ref(null); //
const monthSwitch = (e) => { // const monthSwitch = (e) => { //
let ym=e.year+""+"-"+e.month+"" let ym=e.year+""+"-"+e.month+""
if (itemSelected.value == 'nmr') { if (itemSelected.value.type == 'nmr') {
NMRGetMonthPlanListFunc(ym) NMRGetMonthPlanListFunc(ym)
} }
if (itemSelected.value == 'tj') { if (itemSelected.value.type == 'tj') {
GetMonthPlanListFunc(ym) GetMonthPlanListFunc(ym)
} }
} }
@ -244,16 +261,16 @@
console.log(e.fulldate) console.log(e.fulldate)
selectedDate.value=e.fulldate selectedDate.value=e.fulldate
selectedTime.value = null selectedTime.value = null
if (itemSelected.value == 'nmr') { if (itemSelected.value.type == 'nmr') {
nmr_time.value = null YuYueInfo.value.NmrInfo[itemSelected.value.index].time = null
nmr_date.value = e.fulldate YuYueInfo.value.NmrInfo[itemSelected.value.index].date = e.fulldate
tj_time.value = null // tj_time.value = null //
tj_date.value = null tj_date.value = null
doctor_name.value = null // doctor_name.value = null //
NMRGetDayPlanListFunc() NMRGetDayPlanListFunc()
} }
if (itemSelected.value == 'tj') { if (itemSelected.value.type == 'tj') {
tj_time.value = null tj_time.value = null
tj_date.value = e.fulldate tj_date.value = e.fulldate
doctor_name.value = null // doctor_name.value = null //
@ -291,7 +308,7 @@
uni.showLoading(); uni.showLoading();
let data = { let data = {
hospital: orderInfo.value.hospital_id, hospital: orderInfo.value.hospital_id,
month: ym?ym:nmr_date.value.substring(0, 7), month: ym?ym:YuYueInfo.value.NmrInfo[itemSelected.value.index].date.substring(0, 7),
} }
const response = await $api("NMRGetMonthPlanCount", data); const response = await $api("NMRGetMonthPlanCount", data);
uni.hideLoading(); uni.hideLoading();
@ -310,10 +327,10 @@
}; };
// //
const openMonthFunc = async() => { const openMonthFunc = async() => {
if (itemSelected.value == 'nmr') { if (itemSelected.value.type == 'nmr') {
await NMRGetMonthPlanListFunc() await NMRGetMonthPlanListFunc()
} }
if (itemSelected.value == 'tj') { if (itemSelected.value.type == 'tj') {
await GetMonthPlanListFunc() await GetMonthPlanListFunc()
} }
MonthCalendar.value.open() MonthCalendar.value.open()
@ -329,9 +346,11 @@
let data = { let data = {
orderid: orderInfo.value.id, orderid: orderInfo.value.id,
planid: tj_plan_id.value, planid: tj_plan_id.value,
nmrPlanid:nmr_plan_id.value, nmr_info:YuYueInfo.value.NmrInfo,
doctor: doctor_name.value doctor: doctor_name.value
} }
console.log(data);
return false
const response = await $api("ChangeAppointment", data); const response = await $api("ChangeAppointment", data);
uni.hideLoading(); uni.hideLoading();
$response(response, () => { $response(response, () => {

Loading…
Cancel
Save