pull/1/head
于慕涵 2 years ago
parent 3fd146e473
commit 0b300a457b

@ -0,0 +1,118 @@
<template>
<el-form ref="sizeForm" :model="AdvanceForm" label-width="300px" class="adv" :rules="rules">
<el-form-item label="诊室" prop="department">
<el-select v-model="AdvanceForm.department" prop="department" filterable placeholder="请选择诊室" clearable>
<el-option v-for="item in department" :key="item" :label="item" :value="item"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否有过往病史">
<el-radio v-model="radio" label="是" prop="是"></el-radio>
<el-radio v-model="radio" label="否" prop="否"></el-radio>
</el-form-item>
<!--普通内科-->
<el-form-item v-show="AdvanceForm.department=='普通内科'" label="请选择你出现的症状">
<el-checkbox-group v-model="AdvanceForm.symptom" >
<el-checkbox label="头疼"></el-checkbox>
<el-checkbox label="嗓子疼"></el-checkbox>
<el-checkbox label="感冒"></el-checkbox>
<el-checkbox label="发烧"></el-checkbox>
<el-checkbox label="全身乏力"></el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item v-show="AdvanceForm.department=='普通内科'" label="是否测量体温">
<el-radio v-model="radiotemperature" label="是"></el-radio>
<el-radio v-model="radiotemperature" label="否"></el-radio>
</el-form-item>
<el-form-item v-show="radiotemperature=='是'" label="体温">
<el-input v-model="temperature" placeholder="请输入你的体温"></el-input>
</el-form-item>
<!--眼科-->
<el-form-item v-show="AdvanceForm.department=='眼科'" label="请选择你出现的症状">
<el-checkbox-group v-model="symptom" >
<el-checkbox label="眼睛酸痛"></el-checkbox>
<el-checkbox label="眼睛红肿"></el-checkbox>
<el-checkbox label="过敏"></el-checkbox>
<el-checkbox label="眼内有异物感"></el-checkbox>
<el-checkbox label="模糊看不清东西"></el-checkbox>
<el-checkbox label="视力下降"></el-checkbox>
<el-checkbox label="眼前有黑影飘动"></el-checkbox>
<el-checkbox label="眼睛干痒"></el-checkbox>
</el-checkbox-group>
</el-form-item>
<!--耳鼻喉科-->
<el-form-item v-show="AdvanceForm.department=='耳鼻喉科'" label="请选择你出现的症状">
<el-checkbox-group v-model="symptom" >
<el-checkbox label="耳鸣"></el-checkbox>
<el-checkbox label="过敏"></el-checkbox>
<el-checkbox label="流鼻涕"></el-checkbox>
<el-checkbox label="咽喉肿痛"></el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item label="详细描述你的症状">
<el-input type="textarea" v-model="AdvanceForm.description" clearable></el-input>
</el-form-item>
<el-form-item style="width: 100%">
<el-button type="primary" style="width: 100%;background: #505458;border: none" @click="dialogVisible = true">确定</el-button>
</el-form-item>
<el-dialog
title="诊断结果"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose"
append-to-body>
<span v-show="AdvanceForm.department=='普通内科'">,: 使37.3°C</span>
<span v-show="AdvanceForm.department=='眼科'">,: 1使</span>
<span v-show="AdvanceForm.symptom=='头疼'">,: </span>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="dialogVisible = false"> </el-button>
</span>
</el-dialog>
</el-form>
</template>
<script>
export default {
data () {
return {
AdvanceForm: {
department: '',
history: '',
symptom: [],
description: ''
},
department: ['眼科', '耳鼻喉科', '口腔科', '皮肤科',
'心脏内科', '呼吸内科', '消化内科', '内分泌科', '普通内科',
'胸外科', '泌尿外科', '普通外科'],
radio: '',
radiotemperature: '',
symptom: ['头疼', '嗓子疼', '感冒', '发烧', '全身乏力'],
temperature: '',
dialogVisible: false,
rules: {
department: [
{ required: true, message: '请选择诊室' }
]
}
}
},
methods: {
handleClose (done) {
this.$confirm('确认关闭?')
.then(_ => {
done()
})
.catch(_ => {})
}
}
}
</script>
<style scoped>
.adv {
position: fixed;
margin-left: 50%;
left: -500px;
top: 160px;
width: 700px;
}
</style>

@ -0,0 +1,46 @@
<template>
<el-menu
:default-active="'/index'"
router
mode="horizontal"
background-color="white"
text-color="#222"
active-text-color="red"
style="min-width: 1300px">
<el-menu-item v-for="(item,i) in navList" :key="i" :index="item.name">
{{ item.navItem }}
</el-menu-item>
<a href="#nowhere" style="color: #222;float: right;padding: 20px;">更多功能</a>
<i class="el-icon-menu" style="float:right;font-size: 45px;color: #222;padding-top: 8px"></i>
<span style="position: absolute;padding-top: 20px;right: 43%;font-size: 20px;font-weight: bold">欢迎进入校医院管理系统</span>
</el-menu>
</template>
<script>
export default {
name: 'NavMenu',
data () {
return {
navList: [
{name: '/index', navItem: '首页'},
{name: '/register', navItem: '预约挂号'},
{name: '/shop', navItem: '购药'},
{name: '/advance', navItem: '预问诊'},
{name: '/records', navItem: '个人记录'},
{name: '/treatment', navItem: '就诊记录'},
{name: '/setting', navItem: '设置'}
]
}
}
}
</script>
<style scoped>
a{
text-decoration: none;
}
span {
pointer-events: none;
}
</style>

@ -0,0 +1,210 @@
<template>
<el-form>
<h3 class="login_title">欢迎登录校医院智能管理系统</h3>
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
<el-tab-pane label="挂号信息" name="first">
<el-form-item label="请输入医生姓名或科室来查询:" label-width="500px">
<el-input type="text" v-model="doctorname" prop="doctor" size="medium" style="width: 300px;
margin-right: 10px" auto-complete="off" placeholder="请输入:"></el-input>
<el-button size="small" type="primary" icon="el-icon-search" @click="searchClick"></el-button>
</el-form-item>
<el-form-item>
<el-table
:data="records"
style="width: 100%">
<el-table-column
prop="name"
label="患者姓名"
width="180">
</el-table-column>
<el-table-column
prop="major"
label="学院"
width="180">
</el-table-column>
<el-table-column
prop="department"
label="科室"
width="180">
</el-table-column>
<el-table-column
prop="doctor"
label="主治医师"
width="180">
</el-table-column>
<el-table-column
prop="time"
label="预约时间"
width="180">
</el-table-column>
<el-table-column
prop="idnum"
label="预约号"
width="180">
</el-table-column>
<el-table-column
label="操作"
width="180">
<el-button type="text" @click="dialogVisible = true">处理</el-button>
<el-dialog
title="接诊"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose"
:data="DocForm"
append-to-body>
<el-form-item label="医生:">
<el-input type="text" v-model="DocForm.doctorname" prop="doctorname" clearable
auto-complete="off" placeholder="请输入医生姓名:"></el-input>
</el-form-item>
<el-form-item label="患者:">
<el-input type="text" v-model="DocForm.ghname" prop="ghname" clearable
auto-complete="off" placeholder="请输入患者姓名:"></el-input>
</el-form-item>
<el-form-item label="预约号:">
<el-input type="text" v-model="DocForm.yyh" prop="yyh" clearable
auto-complete="off" placeholder="请输入预约号:"></el-input>
</el-form-item>
<el-form-item label="症状:">
<el-input type="textarea" v-model="DocForm.zhengz" prop="zhengz" clearable></el-input>
</el-form-item>
<el-form-item label="诊断:">
<el-input type="textarea" v-model="DocForm.zhend" prop="zhend" clearable></el-input>
</el-form-item>
<el-form-item label="疗程:">
<el-input type="textarea" v-model="DocForm.liaoc" prop="liaoc" clearable></el-input>
</el-form-item>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="onSubmit"> </el-button>
</span>
</el-dialog>
</el-table-column>
</el-table>
</el-form-item>
</el-tab-pane>
<el-tab-pane label="接诊记录" name="second">
<el-table
:data="records"
style="width: 100%">
<el-table-column
prop="doctorname"
label="医生"
width="180">
</el-table-column>
<el-table-column
prop="ghname"
label="患者"
width="180">
</el-table-column>
<el-table-column
prop="yyh"
label="预约号"
width="180">
</el-table-column>
<el-table-column
prop="zhengz"
label="症状"
width="180">
</el-table-column>
<el-table-column
prop="zhend"
label="诊断"
width="180">
</el-table-column>
<el-table-column
prop="lc"
label="疗程"
width="180">
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="设置" name="third">角色管理</el-tab-pane>
</el-tabs>
</el-form>
</template>
<script>
export default {
name: 'DocrecordIndex',
data () {
return {
DocForm: {
doctorname: '',
ghname: '',
yyh: '',
zhengz: '',
zhend: '',
liaoc: ''
},
records: [],
activeName: 'first',
dialogVisible: false,
doczy: []
}
},
mounted: function () {
this.loadRecords()
/** this.loadDocyz() **/
},
methods: {
loadRecords () {
var _this = this
this.$axios.get('/docrecords').then(resp => {
if (resp && resp.status === 200) {
_this.records = resp.data
}
})
},
handleClick (tab, event) {
console.log(tab, event)
},
handleClose (done) {
this.$confirm('确认关闭?')
.then(_ => {
done()
})
.catch(_ => {})
},
/**
searchClick () {
var _this = this
this.$axios
.post('/docrecords', {
doctor: this.DocForm.doctor
}).then(resp => {
if (resp && resp.status === 200) {
_this.records = resp.data
}
})
},**/
onSubmit () {
this.$axios
.post('/docrecords', {
doctorname: this.DocForm.doctorname,
ghname: this.DocForm.ghname,
yyh: this.DocForm.yyh,
zhengz: this.DocForm.zhengz,
zhend: this.DocForm.zhend,
liaoc: this.DocForm.liaoc
}).then(resp => {
if (resp && resp.status === 200) {
this.$emit('onSubmit')
}
})
this.$message({
message: '成功',
type: 'success'
})
this.$router.replace({path: '/docrecords'})
}
/** loadDocyz () {
var _this = this
this.$axios.get('/docrecords').then(resp => {
if (resp && resp.status === 200) {
_this.doczy = resp.data
}
})
}**/
}
}
</script>

@ -0,0 +1,15 @@
<template>
<div>
Welcome to my System!
</div>
</template>
<script>
export default {
name: 'AppIndex'
}
</script>
<style scoped>
</style>

@ -0,0 +1,35 @@
<template>
<el-container>
<el-aside style="width: 200px;margin-top: 20px">
<switch></switch>
<SideMenu @indexSelect="listByRegister" ref="sideMenu"></SideMenu>
</el-aside>
<el-main>
<record class="record-area" ref="recordArea"></record>
</el-main>
</el-container>
</template>
<script>
import SideMenu from './SideMenu'
import Record from './record'
export default {
name: 'RecordIndex',
components: {Record, SideMenu},
methods: {
listByRegister () {
var _this = this
var url = '/records'
this.$axios.get(url).then(resp => {
if (resp && resp.status === 200) {
_this.$refs.recordArea.records = resp.data
}
})
}
}
}
</script>
<style scoped>
</style>

@ -0,0 +1,34 @@
<template>
<div style="margin-bottom: 30px;display: flex;justify-content: center;align-items: center">
<el-input
@keyup.enter.native="searchClick"
placeholder="通过姓名搜索..."
prefix-icon="el-icon-search"
size="small"
style="width: 400px;margin-right: 10px"
v-model="keywords">
</el-input>
<el-button size="small" type="primary" icon="el-icon-search" @click="searchClick"></el-button>
</div>
</template>
<script>
export default {
name: 'SearchBar',
data () {
return {
keywords: '',
records: []
}
},
methods: {
searchClick () {
this.$emit('onSearch')
}
}
}
</script>
<style scoped>
</style>

@ -0,0 +1,52 @@
<template>
<el-menu
class="categories"
default-active="0"
@select="handleSelect"
active-text-color="red">
<el-menu-item index="0">
<i class="el-icon-menu"></i>
<span slot="title">预约挂号记录</span>
</el-menu-item>
<el-menu-item index="1">
<i class="el-icon-menu"></i>
<span slot="title">就诊记录</span>
</el-menu-item>
<el-menu-item index="2">
<i class="el-icon-menu"></i>
<span slot="title">购药记录</span>
</el-menu-item>
<el-menu-item index="3">
<i class="el-icon-menu"></i>
<span slot="title">预问诊记录</span>
</el-menu-item>
</el-menu>
</template>
<script>
export default {
name: 'SideMenu',
data () {
return {
cid: ''
}
},
methods: {
handleSelect (key, keyPath) {
this.cid = key
//
this.$emit('indexSelect')
}
}
}
</script>
<style scoped>
.categories {
position: fixed;
margin-left: 50%;
left: -700px;
top: 130px;
width: 150px;
}
</style>

@ -0,0 +1,64 @@
<template>
<el-table
:data="records"
style="width: 100%">
<el-table-column
prop="name"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="major"
label="学院"
width="180">
</el-table-column>
<el-table-column
prop="department"
label="科室"
width="180">
</el-table-column>
<el-table-column
prop="doctor"
label="主治医师"
width="180">
</el-table-column>
<el-table-column
prop="time"
label="预约时间"
width="180">
</el-table-column>
<el-table-column
prop="idnum"
label="预约号"
width="180">
</el-table-column>
</el-table>
</template>
<script>
export default {
name: 'record',
data () {
return {
records: []
}
},
mounted: function () {
this.loadRecords()
},
methods: {
loadRecords () {
var _this = this
this.$axios.get('/records').then(resp => {
if (resp && resp.status === 200) {
_this.records = resp.data
}
})
}
}
}
</script>
<style scoped>
</style>
Loading…
Cancel
Save