123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216 |
- <template>
- <div class="department">
- <div class="departmentView">
- <div class="content">
- <div class="list" v-for="(item,index) in departmentLis" @click="goStart(index,item.recordTime)" :key="item.hospitalDeptName">
- <div class="top">
- <p>挂号科室:{{item.hospitalDeptName}} <img src="../images/right.png" alt=""></p>
- </div>
- <div class="main">
- <p>预约医院:{{item.sonHospitalName?item.sonHospitalName:item.hospitalName}}</p>
- <p>预约时间:{{item.recordTime}}</p>
- <p>姓名:{{item.patientName}}</p>
- <p>病历号:{{item.recordId}}</p>
- <p>挂号信息:{{item.registerNum}}</p>
- <p v-if="item.dided">您已完成过一次预问诊,是否再次录入</p>
- </div>
- </div>
- </div>
- </div>
- <Submit v-if="submit" :showType="showType" :fail="failMsg" @showSubmit="showSubmit"></Submit>
- <Tiptoast
- :show="showTip"
- @close="close"
- :data="message"/>
- </div>
- </template>
- <script>
- import {setScroll,compare} from '@utils/tools.js';
- import BScroll from 'better-scroll';
- import Submit from "../common/Submit";
- import Tiptoast from "../common/Tiptoast";
- import api from "@utils/api.js";
- export default {
- name: "Department",
- data(){
- return {
- scroll:null,
- departmentLis:[],
- showTip: false,
- showType: "fail",
- failMsg: "",
- message:{
- title: "",
- text: ""
- },
- submit: false,
- show: false,
- son:false,//有无子医院
- hospitalNum:'',
- hospitalName:''
- }
- },
- created(){
- let query = this.$route.query;
- let type = query.patientInfoType,name = query.patientName,value = query.patientInfo,code=query.hospitalCode,sonHospitalCode=query.sonHospitalCode,sonHospitalName=query.sonHospitalName;
- if(value&&name&&type&&code){
- const param = {
- patientInfo: value,
- patientInfoType: type,
- hospitalCode: code,
- patientName:name,
- sonHospitalCode: sonHospitalCode||'',
- sonHospitalName: sonHospitalName||''
- };
- api.signIn(param).then(res => {
- let result = res.data;
- if (result.code == 0) {
- // result.data.splice(0,1);//测试只有一条数据
- localStorage.setItem('loginData',JSON.stringify(result.data))//保存登陆信息,扫码进入徐删除该参数
- if (result.data.length > 1) {
- this.departmentLis = this.sortPart();
- } else if (result.data.length == 1) {
- let msg = result.data[0];
- let params = {
- hospitalCode: msg.hospitalCode,
- hospitalDeptCode: msg.hospitalDeptCode,
- doctorCode: msg.doctorCode,
- patientCode: msg.patientCode,
- recordId: msg.recordId,
- sonHospitalCode:msg.sonHospitalCode||'',
- time:msg.recordTime&&(new Date((msg.recordTime).replace(/\-/g, "/"))).getTime()
- };
- localStorage.setItem('loginParam',JSON.stringify(params))//保存登陆信息,扫码进入删除该参数
- this.$router.push({
- path: "/home",
- query: params
- });
- } else {
- this.message.title = '温馨提示'
- this.message.text = '暂无今日挂号信息,可更换登录方式再次尝试。'
- this.showTip = true
- }
- } else {
- this.defaultWaring(res.data.msg);
- }
- }).catch(() => {
- this.defaultWaring("网络异常请稍后重试");
- });
- }else{
- this.departmentLis = this.sortPart();
- }
- },
- mounted(){
- this.$nextTick(()=>{
- let scroll = setScroll(BScroll,true,'.departmentView')
- this.scroll = scroll
- })
- },
- methods:{
- sortPart(){
- let tmpList = JSON.parse(localStorage.getItem('loginData'));
- let tmpTime = JSON.parse(localStorage.getItem('recordTime'));
- let sortArr = tmpList.sort(compare("recordTime"));
- if(tmpTime){
- for(let j = 0;j < tmpTime.length;j++){
- for(let i = 0;i < sortArr.length;i++){
- if(tmpTime[j] == (new Date((sortArr[i].recordTime).replace(/\-/g, "/"))).getTime()){
- sortArr[i].dided = 1
- }
- }
- }
- }
- return sortArr;
- },
- showSubmit(flg){
- this.submit = flg;
- },
- close() {
- this.showTip = false;
- },
- defaultWaring(msg) {
- this.$store.commit("handleToggleShow", false);
- this.showType = "fail";
- this.failMsg = msg;
- this.submit = true;
- let timer = setTimeout(() => {
- this.submit = false;
- clearTimeout(timer);
- }, 2000);
- },
- goStart(num,time){
- this.show = !this.show
- let msg = this.departmentLis[num]
- let params = {
- hospitalCode:msg.hospitalCode,
- hospitalDeptCode:msg.hospitalDeptCode,
- doctorCode:msg.doctorCode,
- patientCode:msg.patientCode,
- recordId:msg.recordId,
- time:(new Date(time.replace(/\-/g, "/"))).getTime()
- }
- localStorage.setItem('loginParam',JSON.stringify(params))//保存登陆信息,扫码进入徐删除该参数
- this.$router.push({
- path:'/home',
- query:params
- })
- }
- },
- components:{
- Submit,
- Tiptoast
- }
- }
- </script>
- <style lang="less" scoped>
- @import '../less/base.less';
- .department {
- font-size: .3rem;
- padding: .3rem 0 1rem 0;
- background-color: #fff;
- .departmentView {
- position: absolute;
- width: 100%;
- height: 100%;
- overflow: hidden;
- padding: 0 .3rem 1rem .3rem;
- box-sizing: border-box;
- .content {
- padding-bottom: 1rem;
- }
- .list {
- background:rgba(255,255,255,1);
- box-shadow:0px 3px 20px 0px rgba(192,187,224,0.23);
- border-radius:.1rem;
- overflow: hidden;
- margin-bottom: .3rem;
- }
- .top {
- height: 1rem;
- line-height: 1rem;
- background: url('../images/bg-title.png') 100% 100% no-repeat;
- padding: 0 .3rem;
- box-sizing: border-box;
- p {
- position: relative;
- color: #fff;
- img {
- position: absolute;
- right: 0;
- top: 50%;
- width: .4rem;
- height: .4rem;
- margin-top: -0.2rem;
- }
- }
- }
- .main {
- font-size: .28rem;
- padding: .3rem;
- p {
- line-height: .5rem;
- }
- }
- }
- }
- </style>
|