项目备注

main
鹿和sa0ChunLuyu 5 days ago
parent 21e493f269
commit a2eecac1e9

@ -175,6 +175,7 @@ public function GetCheckPdf()
'id' => $item->id, 'id' => $item->id,
'entrust_id' => $item->entrust_id, 'entrust_id' => $item->entrust_id,
'entrust' => $item->entrust, 'entrust' => $item->entrust,
'requestComment' => $item->requestComment,
'entrust_date' => $item->entrust_date, 'entrust_date' => $item->entrust_date,
'entrust_time' => $item->entrust_time, 'entrust_time' => $item->entrust_time,
'reservation_date' => $item->reservation_date, 'reservation_date' => $item->reservation_date,
@ -197,7 +198,12 @@ public function GetCheckPdf()
$patient['barcode_text'] = $patient['patient_id']; $patient['barcode_text'] = $patient['patient_id'];
foreach ($patient['rooms'] as &$room) { foreach ($patient['rooms'] as &$room) {
$room['items_str'] = implode('', array_column($room['items'], 'entrust')); $room['items_str'] = implode('', array_map(function($item) {
if (!empty($item['requestComment'])) {
return $item['entrust'] . '' . $item['requestComment'] . '';
}
return $item['entrust'];
}, $room['items']));
$firstItem = $room['items'][0]; $firstItem = $room['items'][0];
$room['reservation_date'] = $firstItem['reservation_date']; $room['reservation_date'] = $firstItem['reservation_date'];
@ -500,6 +506,7 @@ public function GenerateGroupedCheckPdf()
$groups[$typeKey]['patients'][$patientKey]['rooms'][$roomKey]['items'][] = [ $groups[$typeKey]['patients'][$patientKey]['rooms'][$roomKey]['items'][] = [
'id' => $item->id, 'id' => $item->id,
'entrust' => $item->entrust, 'entrust' => $item->entrust,
'requestComment' => $item->requestComment,
'entrust_date' => $item->entrust_date, 'entrust_date' => $item->entrust_date,
'entrust_time' => $item->entrust_time, 'entrust_time' => $item->entrust_time,
'reservation_date' => $item->reservation_date, 'reservation_date' => $item->reservation_date,
@ -525,7 +532,12 @@ public function GenerateGroupedCheckPdf()
foreach ($patient['rooms'] as &$room) { foreach ($patient['rooms'] as &$room) {
//项目名称拼接 //项目名称拼接
$room['items_str'] = implode('', array_column($room['items'], 'entrust')); $room['items_str'] = implode('', array_map(function($item) {
if (!empty($item['requestComment'])) {
return $item['entrust'] . '' . $item['requestComment'] . '';
}
return $item['entrust'];
}, $room['items']));
//预约时间 //预约时间
$firstItem = $room['items'][0]; $firstItem = $room['items'][0];

@ -42,7 +42,11 @@
<el-tag v-if="scope.row.list_status===3" class="ml-2" type="warning"></el-tag> <el-tag v-if="scope.row.list_status===3" class="ml-2" type="warning"></el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="entrust" label="项目" show-overflow-tooltip /> <el-table-column label="项目" show-overflow-tooltip>
<template #default="scope">
{{ scope.row.entrust }}{{ scope.row.requestComment ? '' + scope.row.requestComment + '' : '' }}
</template>
</el-table-column>
<el-table-column prop="is_pay" label="是否交费" width="60" align="center"> <el-table-column prop="is_pay" label="是否交费" width="60" align="center">
<template #default="scope"> <template #default="scope">
<span v-if="scope.row.is_pay==1"></span> <span v-if="scope.row.is_pay==1"></span>
@ -184,7 +188,7 @@
</div> </div>
</div> </div>
<template #footer> <template #footer>
<el-button type="primary" @click="conflictDialogVisible = false">确定</el-button> <el-button type="primary" @click="conflictDialogVisible = false">我知道了</el-button>
</template> </template>
</el-dialog> </el-dialog>
<el-dialog v-model="resultDialogVisible" title="预约结果" width="800"> <el-dialog v-model="resultDialogVisible" title="预约结果" width="800">
@ -264,6 +268,11 @@
let entrustTableRef = ref(null) let entrustTableRef = ref(null)
let patientInfo = ref(null) let patientInfo = ref(null)
let entrustTableDate = ref([]); let entrustTableDate = ref([]);
//
const formatEntrust = (row) => {
if (!row) return ''
return row.requestComment ? `${row.entrust}${row.requestComment}` : row.entrust
}
let planTableData = ref([]); let planTableData = ref([]);
let loading = ref(false); let loading = ref(false);
let planLoading = ref(false); let planLoading = ref(false);
@ -784,7 +793,7 @@
room: v.department_resources_name, room: v.department_resources_name,
date: v.date, date: v.date,
timeSlot: v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5), timeSlot: v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5),
entrust: entrustTableDate.value.find(r => r.id === v.id)?.entrust || '' entrust: formatEntrust(entrustTableDate.value.find(r => r.id === v.id))
}) })
}) })
} }
@ -1045,7 +1054,7 @@
room: v.department_resources_name, room: v.department_resources_name,
date: v.date, date: v.date,
timeSlot: v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5), timeSlot: v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5),
entrust: entrustTableDate.value.find(r => r.id === v.id)?.entrust || '' entrust: formatEntrust(entrustTableDate.value.find(r => r.id === v.id))
}) })
}) })
} }
@ -1076,11 +1085,11 @@
html += '<tr style="background:#d5dce6;"><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">序号</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">项目名称</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">排班资源</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">日期</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">时间段</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">结果</td></tr>' html += '<tr style="background:#d5dce6;"><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">序号</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">项目名称</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">排班资源</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">日期</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">时间段</td><td style="padding:4px 8px;border:1px solid #ddd;font-weight:700;">结果</td></tr>'
let idx = 1 let idx = 1
res.data.forEach(v => { res.data.forEach(v => {
const entrustName = entrustTableDate.value.find(r => r.id === v.id)?.entrust || '' const entrustName = formatEntrust(entrustTableDate.value.find(r => r.id === v.id))
html += '<tr><td style="padding:4px 8px;border:1px solid #ddd;">' + (idx++) + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + entrustName + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + v.department_resources_name + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + v.date + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5) + '</td><td style="padding:4px 8px;border:1px solid #ddd;color:green;">✅ 成功匹配</td></tr>' html += '<tr><td style="padding:4px 8px;border:1px solid #ddd;">' + (idx++) + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + entrustName + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + v.department_resources_name + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + v.date + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5) + '</td><td style="padding:4px 8px;border:1px solid #ddd;color:green;">✅ 成功匹配</td></tr>'
}) })
unmatched.forEach(v => { unmatched.forEach(v => {
const entrustName = entrustTableDate.value.find(r => r.id === v.id)?.entrust || '' const entrustName = formatEntrust(entrustTableDate.value.find(r => r.id === v.id))
html += '<tr><td style="padding:4px 8px;border:1px solid #ddd;">' + (idx++) + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + entrustName + '</td><td style="padding:4px 8px;border:1px solid #ddd;" colspan="3">—</td><td style="padding:4px 8px;border:1px solid #ddd;color:red;">❌ 未找到合适号源</td></tr>' html += '<tr><td style="padding:4px 8px;border:1px solid #ddd;">' + (idx++) + '</td><td style="padding:4px 8px;border:1px solid #ddd;">' + entrustName + '</td><td style="padding:4px 8px;border:1px solid #ddd;" colspan="3">—</td><td style="padding:4px 8px;border:1px solid #ddd;color:red;">❌ 未找到合适号源</td></tr>'
}) })
html += '</table>' html += '</table>'
@ -1189,7 +1198,7 @@
room: v.department_resources_name, room: v.department_resources_name,
date: v.date, date: v.date,
timeSlot: v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5), timeSlot: v.begin_time?.substring(0, 5) + '-' + v.end_time?.substring(0, 5),
entrust: entrustTableDate.value.find(r => r.id === v.id)?.entrust || '' entrust: formatEntrust(entrustTableDate.value.find(r => r.id === v.id))
}) })
}) })
} }

@ -131,7 +131,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="age" label="年龄" width="115" /> <el-table-column prop="age" label="年龄" width="115" />
<el-table-column prop="entrust" label="医嘱" width="200" /> <el-table-column label="医嘱" width="200" show-overflow-tooltip>
<template #default="scope">
{{ scope.row.entrust }}{{ scope.row.requestComment ? '' + scope.row.requestComment + '' : '' }}
</template>
</el-table-column>
<el-table-column prop="is_pay" label="是否交费" width="80"> <el-table-column prop="is_pay" label="是否交费" width="80">
<template #default="scope"> <template #default="scope">
<span v-if="scope.row.is_pay==1"></span> <span v-if="scope.row.is_pay==1"></span>
@ -269,7 +273,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="age" label="年龄" width="115" /> <el-table-column prop="age" label="年龄" width="115" />
<el-table-column prop="entrust" label="医嘱" width="200" /> <el-table-column label="医嘱" width="200" show-overflow-tooltip>
<template #default="scope">
{{ scope.row.entrust }}{{ scope.row.requestComment ? '' + scope.row.requestComment + '' : '' }}
</template>
</el-table-column>
<el-table-column prop="is_pay" label="是否交费" width="80"> <el-table-column prop="is_pay" label="是否交费" width="80">
<template #default="scope"> <template #default="scope">
<span v-if="scope.row.is_pay==1"></span> <span v-if="scope.row.is_pay==1"></span>
@ -345,6 +353,11 @@
let do_type = ref(0) //12 let do_type = ref(0) //12
let loading = ref(false) let loading = ref(false)
let entrust_ids=ref('') let entrust_ids=ref('')
//
const formatEntrust = (row) => {
if (!row) return ''
return row.requestComment ? `${row.entrust}${row.requestComment}` : row.entrust
}
let searchInfo = ref({ let searchInfo = ref({
dateType: 'reservation_date', dateType: 'reservation_date',
dateRange: [], dateRange: [],
@ -560,11 +573,11 @@
let next=true let next=true
tableSelected.value.forEach((v,i)=>{ tableSelected.value.forEach((v,i)=>{
if(type==1 && v.list_status!=0){ if(type==1 && v.list_status!=0){
ElMessage.error(v.entrust+" 不可进行预约操作") ElMessage.error(formatEntrust(v)+" 不可进行预约操作")
next=false next=false
} }
if(type==2 && v.list_status!=1){ if(type==2 && v.list_status!=1){
ElMessage.error(v.entrust+" 不可进行改约操作") ElMessage.error(formatEntrust(v)+" 不可进行改约操作")
next=false next=false
} }
entrustids.push(v.entrust_id) entrustids.push(v.entrust_id)
@ -749,7 +762,7 @@
} }
const row = tableSelected.value[0] const row = tableSelected.value[0]
if (row.list_status != 1) { if (row.list_status != 1) {
ElMessage.error(row.entrust + ' 不可打印,请重新选择') ElMessage.error(formatEntrust(row) + ' 不可打印,请重新选择')
return return
} }
const params = 'OrderNoList[]=' + row.entrust_id const params = 'OrderNoList[]=' + row.entrust_id

Loading…
Cancel
Save