Commit 848575a0 authored by 盖献康's avatar 盖献康

Merge remote-tracking branch 'origin/master'

parents 4df86c01 62a050ca
import request from '@/utils/request'
import { param } from '@/utils'
// 查询挂号列表
export function listRegister(query) {
......@@ -42,3 +43,13 @@ export function delRegister(id) {
method: 'delete'
})
}
// 根据userId查询某个医生当天挂号情况
export function timeRegister(params) {
return request({
url: '/business/register/getRegisterInfo',
method: 'get',
params: params
})
}
......@@ -24,3 +24,11 @@ export function checkPetOwner(query) {
params: query
})
}
// 查询当日医生挂号详细信息
export function getRegisterDetail(id) {
return request({
url: '/system/manage/' + id,
method: 'get'
})
}
......@@ -77,7 +77,7 @@ export default {
dialogVisible: false,
hideUpload: false,
baseUrl: process.env.VUE_APP_TEST_API,
uploadImgUrl: process.env.VUE_APP_BASE_API + '/common/upload', // 上传的图片服务器地址
uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/upload", // 上传的图片服务器地址
headers: {
Authorization: 'Bearer ' + getToken()
},
......@@ -101,9 +101,9 @@ export default {
this.fileList = list.map(item => {
if (typeof item === 'string') {
if (item.indexOf(this.baseUrl) === -1) {
item = { name: this.baseUrl + item, url: this.baseUrl + item }
item = { name: this.baseUrl + item, url: encodeURI(this.baseUrl + item) }
} else {
item = { name: item, url: item }
item = { name: item, url: encodeURI(item) }
}
}
return item
......
......@@ -307,6 +307,7 @@ export default {
articleTitle: null,
articleCreateTime: null,
articleStatus: null,
createBy: '',
// 排序方式声明
params: {
sort: null
......
......@@ -25,7 +25,7 @@
<el-form-item label="医院自有设备" prop="isPrivate">
<el-select v-model="form.isPrivate" :disabled="true">
<el-option
v-for="dict in dict.type.exam_type"
v-for="dict in isPrivateList"
:key="dict.value"
:label="dict.label"
:value="dict.value"
......@@ -138,7 +138,14 @@
<el-row>
<el-col :span="24">
<el-form-item label="支持检查类型" prop="checkType">
<el-input v-model="form.checkType" :disabled="true" />
<el-select v-model="form.checkType" placeholder="检查项目" multiple clearable :disabled="true">
<el-option
v-for="(item,index) in checkList"
:key="index"
:label="item.dictName"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
......@@ -271,7 +278,14 @@
</el-col>
<el-col :span="8">
<el-form-item label="缴费状态">
<el-input v-model="form.payType" :disabled="true" />
<el-select v-model="form.payType" :disabled="true">
<el-option
v-for="dict in dict.type.payment_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
......@@ -297,12 +311,12 @@
</template>
<script>
import { useManagementDetail } from '@/api/business/use'
import { selectCheckItem, useManagementDetail } from '@/api/business/use'
import { CodeToText } from 'element-china-area-data'
export default {
name: 'UseDetails',
dicts: ['exam_type', 'device_status', 'device_type', 'pet_sex', 'sterilization_status', 'vaccine_situation', 'pet_insure'],
dicts: ['payment_status', 'exam_type', 'device_status', 'device_type', 'pet_sex', 'sterilization_status', 'vaccine_situation', 'pet_insure'],
props: {
id: {
type: Number,
......@@ -311,6 +325,15 @@ export default {
},
data() {
return {
// 自有设备下拉框
isPrivateList: [
{ value: '0',
label: '否' },
{ value: '1',
label: '是' }
],
// 检查项目下拉框
checkList: [],
// 支持服务地区
serviceAreaS: [],
serviceArea: [],
......@@ -327,8 +350,15 @@ export default {
},
created() {
this.getUseDetail()
this.getCheckList()
},
methods: {
// 检查项目下拉框
getCheckList() {
selectCheckItem().then(res => {
this.checkList = res
})
},
cancel() {
this.$router.push({
name: 'UseManagement'
......@@ -363,6 +393,12 @@ export default {
}
this.regionalChanges(this.serviceArea)
}
if (res.data.checkType !== '' && res.data.checkType !== null) {
const arr = this.form.checkType.split(',')
const newArr = arr.map(num => Number(num))
this.form.checkType = newArr
}
this.createTime = (this.form.createTime.slice(0, this.form.createTime.length - 8)).replace(/-/g, '/')
})
}
}
......
......@@ -89,17 +89,17 @@
</el-row>
<el-table ref="table" v-loading="loading" :data="userList" border :row-key="getRowKeys" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" :reserve-selection="true" />
<el-table-column type="index" label="序号" width="50" />
<el-table-column label="设备ID" align="left" prop="deviceCode" :show-overflow-tooltip="true" />
<el-table-column label="检查项目" align="left" prop="checkItemsName" :show-overflow-tooltip="true" />
<el-table-column label="宠物昵称" align="left" prop="petNickname" :show-overflow-tooltip="true" />
<el-table-column label="宠物保险" align="left" prop="insure" :show-overflow-tooltip="true">
<el-table-column type="selection" min-width="50" align="center" :reserve-selection="true" />
<el-table-column type="index" label="序号" min-width="60" />
<el-table-column label="设备ID" align="left" prop="deviceCode" min-width="80" :show-overflow-tooltip="true" />
<el-table-column label="检查项目" align="left" prop="checkItemsName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column label="宠物昵称" align="left" prop="petNickname" min-width="80" :show-overflow-tooltip="true" />
<el-table-column label="宠物保险" align="left" prop="insure" min-width="80" :show-overflow-tooltip="true">
<template slot-scope="scope">
<dict-tag :options="insureList" :value="scope.row.insure" />
<dict-tag :options="dict.type.pet_insure" :value="scope.row.insure" />
</template>
</el-table-column>
<el-table-column label="宠主姓名" align="left" prop="ownerNikename" />
<el-table-column label="宠主姓名" align="left" prop="ownerNikename" :show-overflow-tooltip="true"/>
<el-table-column label="宠主手机号" align="left" prop="phoneNumber" />
<el-table-column label="检查日期" align="left" prop="checkStartTime">
<template slot-scope="scope">
......@@ -134,7 +134,7 @@
size="mini"
type="success"
icon="el-icon-document"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(123, 213, 102);"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(95, 181, 75);color: #5FB54B;background: rgba(91,182,71,0.08);"
plain
@click="detailsUse(scope.row)"
>详情</el-button>
......@@ -166,15 +166,15 @@ export default {
insureList: [
{
label: '全部',
value: '1'
value: null
},
{
label: '已购保险',
value: '2'
value: '1'
},
{
label: '未购保险',
value: '3'
value: '0'
}
],
// 可以使用的时间段时间范围
......
......@@ -3,7 +3,7 @@
<div class="doctor-card">
<!--标签-->
<div class="progress-tip">
<div class="tip-green" />
<div class="tip-green"/>
<div
class="tip-content"
>挂号信息
......@@ -11,9 +11,10 @@
</div>
<!--进度内容-->
<div class="card-style">
<!--获取的当日医生数量作为循环-->
<el-card
v-for="progress in 4"
:key="progress"
v-for="(item,index) in docList"
:key="index"
class="boxside-card"
>
<div class="boxside-content">
......@@ -22,21 +23,21 @@
<!--上--左半部分-->
<div class="top-left">
<el-image
:src="baseURL+item.doctorUrl"
class="img"
fit="cover"
src="http://114.67.241.140:8090/profile/upload/2023/05/10/dog1_20230510063813A013.png"
/>
</div>
<!--上--右半部分-->
<div class="top-right">
<div
class="name"
>徐燕君
>{{ item.doctorName }}
</div>
<div class="content">
<div
class="career"
>高级兽医师
>{{ item.doctorTitleValue }}
</div>
<div
class="divider-inner"
......@@ -44,24 +45,24 @@
</div>
<div
class="department"
> 宠物外科
> {{ item.departmentName }}
</div>
</div>
</div>
</div>
<!--分割线-->
<div class="divider" />
<div class="divider"/>
<!--卡片中间部分-->
<div class="mid-bottom-framework">
<div
v-for=" progressi in 2"
:key="progressi"
v-for="(item,index) in docList"
:key="index"
class="mid-bottom"
>
<el-image
:src="baseURL+item.pictureUrl"
class="mid-bottom-inner"
fit="cover"
src="http://114.67.241.140:8090/profile/upload/2023/05/10/dog1_20230510063813A013.png"
/>
</div>
</div>
......@@ -74,7 +75,7 @@
</div>
<div
class="register-content"
>14
>{{ item.recordAllNum }}
</div>
</div>
......@@ -85,7 +86,7 @@
</div>
<div
class="time-content"
>2
>{{ item.recordTimeNum }}
</div>
</div>
......@@ -96,7 +97,7 @@
</div>
<div
class="remain-content"
>0
>{{ item.residueNum }}
</div>
</div>
</div>
......@@ -106,25 +107,26 @@
<div
class="content-bottom"
>
<div class="detail" @click="doctorDetail(1)">
<div class="detail" @click="doctorDetail(item.id)">
<div class="detail-img">
<el-image :src="require('@/assets/register/xinzengguahao_xiangqing@2x.png')" />
<el-image :src="require('@/assets/register/xinzengguahao_xiangqing@2x.png')"/>
</div>
<el-button
type="text"
>详情
</el-button>
</div>
<div class="register" @click="registration(1,'usual')">
<!--给它传一个userId,一个类型和一个默认页数-->
<div class="register" @click="registration(item.userId,'0',item)">
<div class="register-img">
<el-image :src="require('@/assets/register/xinzengguahao_guahaohui@2x.png')" />
<el-image :src="require('@/assets/register/xinzengguahao_guahaohui@2x.png')"/>
</div>
<el-button type="text">挂号</el-button>
</div>
<div class="add" @click="registration(1, 'add')">
<!--给它传一个userId,一个类型和一个默认页数-->
<div class="add" @click="registration(item.userId, '1',item)">
<div class="add-img">
<el-image :src="require('@/assets/register/xinzengguahao_jiahao@2x.png')" />
<el-image :src="require('@/assets/register/xinzengguahao_jiahao@2x.png')"/>
</div>
<el-button type="text">加号</el-button>
</div>
......@@ -142,9 +144,16 @@ export default {
name: 'DoctorCard',
data() {
return {
doctorList: {
doctorLength: ''
},
docList: {},
// 图片基础地址
baseURL: process.env.VUE_APP_TEST_API
}
},
mounted() {
/** 获取当日值班医生列表*/
this.getDoctorList()
},
created() {
......@@ -156,15 +165,19 @@ export default {
getDoctorList() {
getDoctorInfo().then(response => {
console.log('获取当日值班医生列表:', response)
this.doctorList.doctorLength = response.data.length
console.log('当日值班医生个数:', this.doctorList.doctorLength)
this.docList = response.data
console.log('医生的遍历信息:', this.docList)
})
},
/** 显示医生详情弹窗*/
doctorDetail(id) {
this.$emit('doctorDetail', id)
this.$emit('doctorDetail', id.toString())
},
/** 显示挂号/加号弹窗*/
registration(id, type) {
this.$emit('registration', { id, type })
registration(userId, type, data) {
this.$emit('registration', { id: userId.toString(), type, data })
}
}
}
......
......@@ -4,55 +4,55 @@
<el-row>
<el-col :span="8">
<el-form-item prop="name" label="医生姓名:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.doctorName" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="医生ID:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.id" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="手机号:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.phone" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="所属科室:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.departmentName" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="医生职称:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.doctorTitleValue" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="当前诊位:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.consultingRoom" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item prop="name" label="擅长领域:">
<el-input v-model="doctorForm.name" type="textarea" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.areaExpertise" type="textarea" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item prop="name" label="医生简介:">
<el-input v-model="doctorForm.name" type="textarea" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.doctorProfile" type="textarea" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="证书:">
<el-image
style="width: 100px; height: 100px"
:src="doctorForm.url"
:src="baseURL+doctorForm.certificateUrl"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="name" label="门诊诊查费:">
<el-input v-model="doctorForm.name" :disabled="true" maxlength="20" />
<el-input v-model="doctorForm.examinationFee" :disabled="true" maxlength="20" />
</el-form-item>
</el-col>
</el-row>
......@@ -65,24 +65,45 @@
</template>
<script>
import { getRegisterDetail } from '@/api/business/registration'
export default {
name: 'DoctorDetail',
props: {
isShow: {
type: Boolean,
default: false
},
doctorId: {
type: String,
default: ''
}
},
data() {
return {
// 图片基础地址
baseURL: process.env.VUE_APP_TEST_API,
doctorForm: {
name: ''
}
}
},
watch: {
doctorId(val) {
console.log('KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK', val)
this.getRegisterMsg()
}
},
created() {
},
methods: {
// 获取相应id的医生详情
getRegisterMsg() {
getRegisterDetail(this.doctorId).then(response => {
console.log('这是单个医生的详情信息:', response)
this.doctorForm = response.data
})
},
choosePet() {
console.log('1223')
},
......
<template>
<el-dialog class="register-modle" :title="registrationType === 'usual' ? '挂号' : '加号'" :visible.sync="isShow" width="50%" :before-close="closeModle" append-to-body>
<el-dialog
:before-close="closeModle"
:title="registrationType === 'usual' ? '挂号' : '加号'"
:visible.sync="isShow"
append-to-body
class="register-modle"
width="50%"
>
<el-form ref="queryForm" :inline="true" :model="queryParams" label-width="100px" size="small">
<el-form-item prop="petNickname" label="主治兽医:">
<el-input
v-model="queryParams.petNickname"
disabled="true"
/>
<el-form-item label="主治兽医:" prop="petNickname">
<el-input />
</el-form-item>
<el-form-item prop="petSex" label="是否首诊:">
<el-form-item label="是否首诊:" prop="petSex">
<el-select
v-model="queryParams.sterilizationStatus"
clearable
style="width: 100%"
placeholder="请选择首诊情况"
style="width: 100%"
@change="handleQuery"
>
<el-option
......@@ -27,20 +31,24 @@
<!-- 列表区-->
<el-table
ref="table"
v-loading="loading"
:data="petsList"
:header-cell-class-name="cellClass"
:header-cell-style="{background:'#E8E9E8'}"
border
:header-cell-class-name="cellClass"
row-key="id"
@selection-change="handleSelectionChange"
>
<el-table-column align="center" label="日期" min-width="80" show-overflow-tooltip type="index" />
<el-table-column align="center" label="时段" min-width="80" prop="petOwners.nickname" show-overflow-tooltip />
<el-table-column align="center" label="总放号数" min-width="80" prop="petOwners.nickname" show-overflow-tooltip />
<el-table-column align="center" label="剩余号数" min-width="80" prop="petOwners.nickname" show-overflow-tooltip />
<el-table-column align="center" label="门诊诊查费" min-width="80" prop="petOwners.nickname" show-overflow-tooltip />
<el-table-column align="center" label="宠物昵称" min-width="80" prop="petNickname" show-overflow-tooltip />
<el-table-column align="center" label="日期" min-width="80" prop="workDate" show-overflow-tooltip />
<el-table-column align="center" label="时段" min-width="80" prop="hours" show-overflow-tooltip />
<el-table-column align="center" label="总放号数" min-width="80" prop="allCount" show-overflow-tooltip />
<el-table-column align="center" label="剩余号数" min-width="80" prop="residueCount" show-overflow-tooltip />
<el-table-column
align="center"
label="门诊诊查费"
min-width="80"
prop="fees"
show-overflow-tooltip
/>
<el-table-column align="center" class-name="small-padding fixed-width" label="操作" min-width="160">
<template slot-scope="scope">
<el-button
......@@ -49,7 +57,7 @@
size="mini"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(95,181,75);"
type="success"
@click="handleView(scope.row)"
@click="addReservation(scope.row)"
>立即预约
</el-button>
</template>
......@@ -61,18 +69,15 @@
:limit.sync="queryParams.pageSize"
:page.sync="queryParams.pageNum"
:total="total"
@pagination="getList"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submit">确 定</el-button>
<el-button @click="closeModle">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
import { deepClone } from '@/utils'
import { listPets } from '@/api/business/pets'
import { addRegister, timeRegister } from '@/api/business/register'
export default {
name: 'RegisterModle',
......@@ -83,15 +88,23 @@ export default {
},
registrationType: {
type: String,
defalut: 'usual'
default: 'usual'
},
doctorId: {
type: String,
defalut: ''
type: String
}, // 医生id用来获取详情等信息(挂号)
// 新增挂号宠物的所有信息
doctorForm: {
type: Object
},
singleDoctor: {
type: Object
}
},
data() {
return {
currentPage: 0,
// 选中数组
ids: [],
// 总条数
......@@ -99,8 +112,7 @@ export default {
// 宠物表格数据
petsList: [],
loading: true,
queryParams: {
},
queryParams: {},
fristVisitOptions: [
{
label: '是',
......@@ -113,8 +125,43 @@ export default {
]
}
},
watch: {
doctorId(val) {
console.log('KKKK555555555KKKKKKK', val)
this.getRegisterMsg()
}
},
methods: {
submit() {},
// 获取相应id的医生详情
getRegisterMsg() {
console.log('HHHHHHHHHHHHHHHUUUUUUUUUUUUUUUUUU', this.doctorId, this.currentPage, this.registrationType)
timeRegister({
userId: this.doctorId,
type: this.registrationType,
currentPage: this.currentPage
}).then(response => {
console.log('哈哈哈哈哈哈哈:', response)
this.petsList = response.rows.rows
})
},
// 新增预约接口
addReservation(data) {
console.log('gggggg', data, this.doctorForm, this.singleDoctor)
const temp = {
petOwnersName: data.petOwnersName
}
console.log('KKKKKKKKKKKKKKK', temp)
// 将整个界面对象传新增挂号接口
// addRegister(temp).then(response => {
// this.$message({
// type: 'success',
// message: '预约成功!'
// })
// this.$emit('registerModleClose', false)
// })
},
submit() {
},
/** 关闭弹窗*/
closeModle() {
this.$emit('registerModleClose', false)
......@@ -151,29 +198,8 @@ export default {
this.$refs.table.store.updateSelectionByRowKey()
this.$refs.table.store.updateAllSelected()
this.$refs.table.$emit('selection-change', data)
},
/** 查询宠物列表 */
getList() {
this.loading = true
this.queryParams.params = { ...this.queryParams.params }
if (this.daterangeCreateTime != null && this.daterangeCreateTime !== '') {
this.queryParams.params['beginCreateTime'] = this.daterangeCreateTime[0]
this.queryParams.params['endCreateTime'] = this.daterangeCreateTime[1]
}
if (this.daterangeUpdateTime != null && this.daterangeUpdateTime !== '') {
this.queryParams.params['beginUpdateTime'] = this.daterangeUpdateTime[0]
this.queryParams.params['endUpdateTime'] = this.daterangeUpdateTime[1]
}
const queryParams = deepClone(this.queryParams)
queryParams.petSex = this.queryParams.petSex && this.queryParams.petSex.join(',')
queryParams.petBreed = this.queryParams.petBreed && this.queryParams.petBreed.map(item => item.join('')).join(',')
listPets(queryParams).then(response => {
console.log('这里面是很多列表页宠物的信息:', this.petsList)
this.petsList = response.rows
this.total = response.total
this.loading = false
})
}
}
}
</script>
......
......@@ -216,10 +216,10 @@
<!-- 医生详情弹出框 -->
<doctor-detail :is-show="showDoctorModle" :doctor-id="doctorId" @doctorModleClose="closeDoctorModle" />
<!-- 挂号/加号弹出框-->
<register-modle :is-show="showRegistrationModle" :doctor-id="doctorId" :registration-type="registrationType" @registerModleClose="closeRegisterModle" />
<register-modle :is-show="showRegistrationModle" :doctor-id="doctorIdNd" :doctor-form="test" :registration-type="registrationType" :single-doctor="singleDoctor" @registerModleClose="closeRegisterModle" />
<!-- 选择宠物-->
<div slot="footer" class="dialog-footer">
<!-- <el-button class="queryBtn" icon="el-icon-check" @click="submitForm">提 交</el-button>-->
<el-button class="queryBtn" icon="el-icon-check" @click="submitForm">提 交</el-button>
<el-button class="resetBtn" icon="el-icon-back" @click="cancel">返 回</el-button>
</div>
</div>
......@@ -245,8 +245,12 @@ export default {
},
data() {
return {
test: {},
singleDoctor: {}, // 单个医生信息
showPetInfo: false, // 回显宠主详细信息
doctorId: '', // 医生id用来获取详情等信息
doctorId: '', // 医生id用来获取详情等信息(详情)
// 医生id用来获取详情等信息(挂号+加号)
doctorIdNd: '',
registrationType: 'usual', // 挂号/加号
isEdit: false, // 表单是否可编辑 默认不可编辑
statusList: [
......@@ -396,8 +400,11 @@ export default {
handleRegister(params) {
console.log('params', params)
this.showRegistrationModle = true
this.doctorId = params.id
this.doctorIdNd = params.id
this.registrationType = params.type
this.singleDoctor = params.data
this.test = { ...this.form }
console.log('this.form', this.form)
},
/** 关闭挂号回调*/
closeRegisterModle() {
......
......@@ -13,6 +13,7 @@ color: #333333;"
</div>
<!-- 整体卡片内页面的样式--边距-->
<div style="padding: 20px 20px 20px 20px;">
<el-form ref="form" :model="detailInfo" label-width="110px" size="small">
<!--宠物头像-->
<div style="display: flex">
<!-- 1-- 宠物基本信息的页面--标签头 -->
......@@ -27,7 +28,7 @@ color: #333333;"
<div>
<!--宠物图片-->
<div class="petPicture" style="padding-bottom: 40px;">
<ImagePreview :height="150" :src="baseURL+petInfo.petPicture" :width="150" />
<ImagePreview :height="150" :src="baseURL+detailInfo.petPicture" :width="150" />
</div>
</div>
</div>
......@@ -40,7 +41,6 @@ color: #333333;"
>宠物信息
</div>
</div>
<el-form ref="form" :model="petOwners" label-width="110px">
<!-- 1-- 宠物基本信息的页面--内部信息 -->
<div class="base-msg">
<div>
......@@ -50,21 +50,19 @@ color: #333333;"
<el-row>
<el-col :span="8">
<el-form-item label="宠物昵称">
<span class="content-style">{{ petInfo.petNickname }}</span>
<el-input v-model="detailInfo.petNickname" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<!--宠物ID-->
<el-form-item label="宠物ID">
<span class="content-style">{{ petInfo.petsId }}</span>
<el-input v-model="detailInfo.petsId" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<!--宠物品种-->
<el-form-item label="宠物品种">
<span class="content-style">{{
options[petInfo.petBreed.substring(0, 1)].children.find(({ value }) => value === petInfo.petBreed.substring(1)) && options[petInfo.petBreed.substring(0, 1)].children.find(({ value }) => value === petInfo.petBreed.substring(1)).label
}}</span>
<el-input v-model="detailInfo.petBreed" disabled />
</el-form-item>
</el-col>
</el-row>
......@@ -72,21 +70,35 @@ color: #333333;"
<el-col :span="8">
<!--宠物性别-->
<el-form-item label="宠物性别">
<!-- <dict-tag :options="dict.type.pet_sex" :value="petInfo.petSex"/>-->
<i v-if="petInfo.petSex === '0'" class="el-icon-male" />
<i v-else-if="petInfo.petSex === '1'" class="el-icon-female" />
<el-select
v-model="detailInfo.petSex"
disabled
clearable
style="width: 100%"
placeholder="请选择宠物性别"
>
<el-option
v-for="(item, index) in dict.type.pet_sex"
:key="index"
:label="item.label"
:value="item.value"
/>
</el-select>
<!-- <dict-tag :options="dict.type.pet_sex" :value="detailInfo.petSex"/>-->
<!-- <i v-if="detailInfo.petSex === '0'" class="el-icon-male" />-->
<!-- <i v-else-if="detailInfo.petSex === '1'" class="el-icon-female" />-->
</el-form-item>
</el-col>
<el-col :span="8">
<!--宠物年龄-->
<el-form-item label="宠物年龄">
<span class="content-style">{{ petInfo.petAge }}</span>
<el-input v-model="detailInfo.petAge" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<!--宠物体重-->
<el-form-item label="宠物体重">
<span class="content-style">{{ petInfo.petWeight }}kg</span>
<el-input v-model="detailInfo.petWeight" disabled />kg
</el-form-item>
</el-col>
</el-row>
......@@ -94,54 +106,72 @@ color: #333333;"
<el-col :span="8">
<!--宠物毛色-->
<el-form-item label="宠物毛色">
<span class="content-style">{{ petInfo.petColor }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--创建时间-->
<el-form-item label="创建时间">
<span class="content-style">{{ parseTime(petInfo.createTime, '{y}/{m}/{d}') }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--生存状态-->
<el-form-item label="生存状态">
<dict-tag :options="dict.type.exist_state" :value="petInfo.existState" class="content-style" />
<el-input v-model="detailInfo.petColor" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<!--绝育情况-->
<el-form-item label="绝育情况">
<dict-tag
:options="dict.type.sterilization_status"
:value="petInfo.sterilizationStatus"
class="content-style"
<el-select
v-model="detailInfo.sterilizationStatus"
disabled
clearable
style="width: 100%"
placeholder="请选择宠物绝育情况"
>
<el-option
v-for="(item, index) in dict.type.sterilization_status"
:key="index"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<!--疫苗情况-->
<el-form-item label="疫苗情况">
<dict-tag
:options="dict.type.vaccine_situation"
:value="petInfo.vaccineSituation"
class="content-style"
<el-select
v-model="detailInfo.vaccineSituation"
disabled
clearable
style="width: 100%"
placeholder="请选择宠物疫苗情况"
>
<el-option
v-for="(item, index) in dict.type.vaccine_situation"
:key="index"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<!--疫苗情况-->
<el-form-item label="是否绑定">
<div class="content-style">已购保险</div>
<!--保险情况-->
<el-form-item label="宠物保险">
<el-select
v-model="detailInfo.insure"
disabled
clearable
style="width: 100%"
placeholder="请选择宠物保险情况"
>
<el-option
v-for="(item, index) in dict.type.pet_insure"
:key="index"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</div>
</div>
</el-form>
<!--主人信息-->
<div style="display: flex">
......@@ -152,22 +182,21 @@ color: #333333;"
</div>
</div>
<!-- 3-- 主人信息的页面--内部信息 -->
<el-form ref="form" :model="petOwners" label-width="110px">
<div class="ownerMsg-inner">
<el-row>
<el-col :span="8">
<el-form-item label="宠主姓名">
<span class="content-style">{{ petOwners.nickname }}</span>
<el-input v-model="detailInfo.petOwnerBo.nickName" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="手机号">
<span class="content-style">{{ petOwners.phonenumber }}</span>
<el-input v-model="detailInfo.petOwnerBo.phoneNumber" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="用户ID">
<span class="content-style">{{ petOwners.ownersId }}</span>
<span class="content-style">{{ detailInfo.ownersId }}</span>
</el-form-item>
</el-col>
</el-row>
......@@ -175,7 +204,7 @@ color: #333333;"
<el-col :span="8">
<el-form-item label="创建时间">
<span class="content-style">{{
parseTime(petOwners.createTime, '{y}/{m}/{d}')
parseTime(detailInfo.createTime, '{y}/{m}/{d}')
}}</span>
</el-form-item>
</el-col>
......@@ -200,7 +229,7 @@ color: #333333;"
<el-form-item label="状态">
<span v-if="checkRole(['pt-admin'])" class="content-style">-</span><span
v-else
><dict-tag :options="statusList" :value="petOwners.hosipitalPownersForm.status" /></span>
><dict-tag :options="statusList" :value="detailInfo.hosipitalPownersForm.status" /></span>
</el-form-item>
</el-col>
<el-col :span="8">
......@@ -209,7 +238,6 @@ color: #333333;"
</el-col>
</el-row>
</div>
</el-form>
<!--进度信息-->
<schedule-info />
......@@ -223,7 +251,6 @@ color: #333333;"
>挂号信息
</div>
</div>
<el-form ref="form" :model="petOwners" label-width="110px">
<!-- 1-- 挂号信息的页面--内部信息 -->
<div class="base-msg">
<div>
......@@ -233,19 +260,19 @@ color: #333333;"
<el-row>
<el-col :span="8">
<el-form-item label="挂号方式">
<span class="content-style">{{ petInfo.petNickname }}</span>
<span class="content-style">{{ detailInfo.petNickname }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--挂号时间-->
<el-form-item label="挂号时间">
<span class="content-style">{{ petInfo.petsId }}</span>
<span class="content-style">{{ detailInfo.petsId }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--是否首诊-->
<el-form-item label="是否首诊">
<span class="content-style">{{ petInfo.petsId }}</span>
<span class="content-style">{{ detailInfo.petsId }}</span>
</el-form-item>
</el-col>
</el-row>
......@@ -253,19 +280,19 @@ color: #333333;"
<el-col :span="8">
<!--就诊日期-->
<el-form-item label="就诊日期">
<span class="content-style">{{ parseTime(petInfo.createTime, '{y}/{m}/{d}') }}</span>
<span class="content-style">{{ parseTime(detailInfo.createTime, '{y}/{m}/{d}') }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--就诊时段-->
<el-form-item label="就诊时段">
<span class="content-style">{{ petInfo.petAge }}</span>
<span class="content-style">{{ detailInfo.petAge }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--门诊诊查费-->
<el-form-item label="门诊诊查费">
<span class="content-style">{{ petInfo.petWeight }}</span>
<span class="content-style">{{ detailInfo.petWeight }}</span>
</el-form-item>
</el-col>
</el-row>
......@@ -273,20 +300,19 @@ color: #333333;"
<el-col :span="8">
<!--缴费状态-->
<el-form-item label="缴费状态">
<dict-tag :options="dict.type.exist_state" :value="petInfo.existState" class="content-style" />
<dict-tag :options="dict.type.exist_state" :value="detailInfo.existState" class="content-style" />
</el-form-item>
</el-col>
<el-col :span="8">
<!--缴费时间-->
<el-form-item label="缴费时间">
<span class="content-style">{{ parseTime(petInfo.createTime, '{y}/{m}/{d}') }}</span>
<span class="content-style">{{ parseTime(detailInfo.createTime, '{y}/{m}/{d}') }}</span>
</el-form-item>
</el-col>
</el-row>
</div>
</div>
</div>
</el-form>
<!--就诊信息-->
<div v-if="$route.params.type === 'enter'" class="visit-info">
<div style="display: flex">
......@@ -297,7 +323,6 @@ color: #333333;"
>就诊信息
</div>
</div>
<el-form ref="visitForm" :model="visitForm" label-width="110px">
<div class="base-msg">
<div>
<!--基础信息右边的信息-->
......@@ -306,19 +331,19 @@ color: #333333;"
<el-row>
<el-col :span="8">
<el-form-item label="病历号">
<span class="content-style">{{ visitForm.petNickname }}</span>
<span class="content-style">{{ detailInfo.petNickname }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--挂号时间-->
<el-form-item label="就诊时间">
<span class="content-style">{{ visitForm.petsId }}</span>
<span class="content-style">{{ detailInfo.petsId }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<!--是否首诊-->
<el-form-item label="就诊诊位">
<span class="content-style">{{ visitForm.petsId }}</span>
<span class="content-style">{{ detailInfo.petsId }}</span>
</el-form-item>
</el-col>
</el-row>
......@@ -326,7 +351,7 @@ color: #333333;"
<el-col :span="24">
<el-form-item label="主诉">
<el-input
v-model="visitForm.name"
v-model="detailInfo.name"
maxlength="400"
placeholder="请输入患者主诉"
type="textarea"
......@@ -335,12 +360,12 @@ color: #333333;"
</el-col>
<el-col :span="24">
<el-form-item label="医嘱">
<el-input v-model="visitForm.name" maxlength="200" placeholder="请输入医嘱" type="textarea" />
<el-input v-model="detailInfo.name" maxlength="200" placeholder="请输入医嘱" type="textarea" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="诊断结果">
<el-input v-model="visitForm.name" maxlength="30" placeholder="请输入诊断结果" />
<el-input v-model="detailInfo.name" maxlength="30" placeholder="请输入诊断结果" />
</el-form-item>
</el-col>
<el-col :span="24">
......@@ -359,29 +384,29 @@ color: #333333;"
</div>
</div>
</div>
</el-form>
<!-- 开具处方弹出框-->
<prescribing-modle :is-show="showPrescribing" />
</div>
<!--底部返回按钮-->
<el-button class="backBth" icon="el-icon-back" @click="goBack"> </el-button>
</el-form>
</div>
</div>
</div>
</template>
<script>
// 导入获取宠物信息的接口
import { getPets, listAllPets } from '@/api/business/pets'
import { getOwners } from '@/api/business/petowners'
import { checkRole } from '@/utils/permission'
import { parseTime, selectDictLabel } from '@/utils/ruoyi'
import { getRegister } from '@/api/business/register'
import scheduleInfo from '@/views/service-management/registration-queue/components/schedule-info'
import prescribingModle from '@/views/service-management/registration-queue/components/prescribing-modle'
export default {
name: 'RegistrationDetail',
// 数据字典
dicts: ['pet_sex', 'vaccine_situation', 'exist_state', 'sterilization_status', 'cat_breed', 'dog_breed', 'other_breed'],
dicts: ['pet_sex', 'vaccine_situation', 'exist_state', 'sterilization_status', 'pet_insure', 'cat_breed', 'dog_breed', 'other_breed'],
components: {
scheduleInfo,
prescribingModle
......@@ -390,8 +415,6 @@ export default {
return {
// 开具处方弹出框
showPrescribing: false,
// 就诊信息表格
visitForm: {},
// 各医院会员卡信息
hosipitalPownersForm: [{}],
// 状态下拉框
......@@ -444,14 +467,14 @@ export default {
}],
// 图片访问
baseURL: process.env.VUE_APP_TEST_API,
// 宠物信息
petInfo: {
petBreed: '11'
},
// 宠物主信息
petOwners: {
hosipitalPownersForm: {}
// 详情信息
detailInfo: {
petOwnerBo: {
}
},
// petOwnerBo: {
// phonenumber: '2222'
// },
// 总条数
total: 0,
// 宠物表格数据
......@@ -470,12 +493,8 @@ export default {
},
created() {
console.log('dddddddd', this.$route)
/** 获取宠物信息 */
/** 获取详情信息 */
this.getInfo(this.$route.params.id)
/** 获取宠物主信息 */
this.getPetOwners(this.$route.params.petOwnersId)
/** 获取宠物数量信息 */
this.getPetsInfo(this.$route.params.petOwnersId)
},
methods: {
parseTime,
......@@ -487,33 +506,6 @@ export default {
prescribing() {
this.showPrescribing = true
},
// 获取宠物数量信息
getPetsInfo(id) {
listAllPets({ petOwnersId: id }).then(response => {
console.log('这是一些个关于宠物数量的信息:', response)
this.petsList = response.data
})
},
// 获取宠物主人信息
getPetOwners(id) {
getOwners(id).then(response => {
console.log('这是一些个关于宠物主的信息:', response)
this.petOwners = {
nickname: response.data[0].nickname,
userId: response.data[0].userId,
ownersId: response.data[0].ownersId,
phonenumber: response.data[0].phonenumber,
createTime: response.data[0].createTime,
hosipitalPownersForm: response.data[0].hosipitalPownersForm
}
console.log('这是一些个关于宠物主赋值的信息:', this.petOwners)
this.hosipitalPownersForm = []
for (const petOwner of response.data) {
this.hosipitalPownersForm.push({ hospitalName: petOwner.hospitalName, ...petOwner.hosipitalPownersForm })
}
console.log('会员卡的信息在这:', this.hosipitalPownersForm)
})
},
/**
* 字典获取完成的回调
*/
......@@ -537,8 +529,9 @@ export default {
},
/** 获取宠物信息(传参传宠物表id)*/
getInfo(id) {
getPets(id).then(response => {
this.petInfo = response.data
getRegister(id).then(response => {
console.log('getRegister', response)
this.detailInfo = { ...response.data }
})
}
}
......
......@@ -81,7 +81,6 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
v-hasPermi="['business:register:add']"
class="fourWordsBtn"
icon="el-icon-circle-plus-outline"
size="mini"
......@@ -91,7 +90,6 @@
</el-col>
<!--选择全部-->
<el-button
v-hasPermi="['business:register:export']"
class="fourWordsBtn"
icon="el-icon-right"
size="mini"
......@@ -100,7 +98,6 @@
</el-button>
<!--反向选择-->
<el-button
v-hasPermi="['business:register:export']"
class="fourWordsBtn"
icon="el-icon-back"
size="mini"
......@@ -109,7 +106,6 @@
</el-button>
<!--批量导出-->
<el-button
v-hasPermi="['business:register:export']"
class="fourWordsBtn"
icon="el-icon-upload2"
size="mini"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment