Selaa lähdekoodia

Squashed commit of the following:

commit 874925a6248bb9d98a8191dd2a09e428fc9e06ad
Merge: b2e139b 5669ede
Author: liucf <liucf@zjlantone.com>
Date:   Fri Aug 30 15:33:11 2019 +0800

    Merge branch 'new' of http://192.168.2.236:10080/zhouna/preliminary into new

commit b2e139b256d0f7eb548819d8c81ea2351aa584c7
Author: liucf <liucf@zjlantone.com>
Date:   Fri Aug 30 15:33:04 2019 +0800

    增加科室

commit 5669edef566c0dfcca2f19f97df9f051765e9c0c
Author: luolei <16657115156@163.com>
Date:   Fri Aug 30 15:21:25 2019 +0800

    其他情况处理滚动

commit 97b3d6fd81092793e6bdc64e21ae30d8e7ed3881
Author: luolei <16657115156@163.com>
Date:   Fri Aug 30 14:41:45 2019 +0800

    弹窗滑动问题

commit e67797d2855aeaea79b52aed87cdcfd5615a0569
Merge: 37ed07a 436ebfe
Author: luolei <16657115156@163.com>
Date:   Fri Aug 30 13:27:51 2019 +0800

    Merge branch 'new' of http://192.168.2.236:10080/zhouna/preliminary into new

commit 37ed07a90b7ea9ffd2105514c97e6d377d8db0e5
Author: luolei <16657115156@163.com>
Date:   Fri Aug 30 13:27:42 2019 +0800

    页面fixed定位改为absolute,输入框聚焦隐藏底部栏

commit 436ebfe6d9c92c87c2dd0d71d02adc8f3140a44e
Author: liucf <liucf@zjlantone.com>
Date:   Fri Aug 30 11:58:13 2019 +0800

    增加门诊号
liucf 6 vuotta sitten
vanhempi
commit
8302d816e6

+ 11 - 0
src/common/ComTextArea.vue

@@ -4,11 +4,14 @@
             :style="{width:width,height:height}" 
             v-model="txt" 
             placeholder="请输入"
+            @focus="focus"
             @blur="blur"></textarea>
   </div>
 </template>
 
 <script type="text/javascript">
+import { isIos } from '@utils/tools';
+import $ from 'jquery'
 export default {
   name:'ComTextArea',
   props: {
@@ -33,15 +36,23 @@ export default {
   },
   methods:{
     changeVal(){
+          // $(".btscroll").css({'position':'fixed'})
       this.$emit('changeAreaVal',this.txt)
       const newData = Object.assign({},this.item,{value:this.txt,valueP:this.txt});
       this.$emit("updata",newData);
     },
     blur(){
       document.activeElement.scrollIntoViewIfNeeded(true);
+      $(".foot").css({'display':'block'})
       setTimeout(()=>{
         document.activeElement.scrollIntoViewIfNeeded(true);
       },300)
+    },
+    focus(){
+      if(isIos()){
+          // $(".btscroll").css({'position':'absolute'})
+        $(".foot").css({'display':'none'})
+      }
     }
   },
   watch:{

+ 8 - 0
src/common/Input.vue

@@ -10,6 +10,8 @@
   </div>
 </template>
 <script type="text/javascript">
+  import { isIos } from '@utils/tools';
+  import $ from 'jquery';
   export default {
     name:'Input',
     data(){
@@ -32,6 +34,8 @@
         this.$emit("updata",newData);
       },
       blur(){
+        // $(".btscroll").css({'position':'fixed'})
+        $(".foot").css({'display':'block'})
         document.activeElement.scrollIntoViewIfNeeded(true);
         setTimeout(()=>{
           document.activeElement.scrollIntoViewIfNeeded(true);
@@ -42,6 +46,10 @@
       },
       focus(e){
         this.$emit('focusPosition',e)
+        if(isIos()){
+          // $(".btscroll").css({'position':'absolute'})
+          $(".foot").css({'display':'none'})
+        }
       }
     },
     watch:{

+ 4 - 0
src/common/Label.vue

@@ -13,6 +13,7 @@
 <script>
   import Toast from '../common/Toast.vue';
   import {moduleCP} from '@utils/tools';
+  import $ from 'jquery';
   export default {
     name:'Label',
     data(){
@@ -84,6 +85,8 @@
           return
         }
         this.showToast = true;
+        $(".btscroll").css({'position':'fixed'})
+        $(".foot").css({'position':'fixed'})
         // 底部body不可滑动
         // const prehandler = function(e){e.preventDefault();}
         // document.body.addEventListener("touchmove",prehandler,false)
@@ -128,6 +131,7 @@
       },
       cancelDel(){
         this.showToast = false;
+        $(".btscroll").css({'position':'absolute'})
         this.tempItem = {};
         this.delIndx = null;
       }

+ 12 - 1
src/common/MultiLineInput.vue

@@ -13,6 +13,7 @@
               :placeholder="item.placeholder"
               @input="changeVal($event,idx,content.type)" 
               @blur="blur"
+              @focus="focus"
               :maxlength="content.type=='number'?10:''"
               @click="handleClick">
             <input v-show="content.iptLis.length==1" class="contentVal" 
@@ -21,6 +22,7 @@
               v-model="item.value"
               @input="changeVal($event,idx,content.type)" 
               @blur="blur"
+              @focus="focus"
               :maxlength="content.type=='number'?10:''"
               @click="handleClick">
             <span v-if="idx == 0&&content.iptLis.length>1">/</span>
@@ -31,7 +33,8 @@
   </div>
 </template>
 <script>
-import { getModelExpStr } from '@utils/tools';
+import { getModelExpStr,isIos } from '@utils/tools';
+import $ from 'jquery';
 
 export default {
   props:{
@@ -86,11 +89,19 @@ export default {
     },
     blur(){
       // 如果该项未选中,则不存值
+      // $(".btscroll").css({'position':'fixed'})
+      $(".foot").css({'display':'block'})
       document.activeElement.scrollIntoViewIfNeeded(true);
       setTimeout(()=>{
         document.activeElement.scrollIntoViewIfNeeded(true);
       },300)
     },
+    focus(){
+      if(isIos()){
+          // $(".btscroll").css({'position':'absolute'})
+        $(".foot").css({'display':'none'})
+      }
+    },
     handleClick(e){
       // 点击输入框时不选中该项
       // document.activeElement.scrollIntoViewIfNeeded(true);

+ 11 - 1
src/common/OptionInp.vue

@@ -12,13 +12,15 @@
               v-model="txt"
               @click="handleCli"
               @blur="handleBlur"
+              @focus="focus"
               @input="changeVal">
     <!-- </div> -->
     <span class="suffix" v-if="msg.suffix">{{msg.suffix}}</span>
   </div>
 </template>
 <script type="text/javascript">
-import { getExpStr} from '@utils/tools';
+import { getExpStr,isIos} from '@utils/tools';
+import $ from 'jquery';
   export default {
     name:'OptionInp',
     data(){
@@ -45,6 +47,8 @@ import { getExpStr} from '@utils/tools';
         this.$emit('handleInp',this.txt);
       },
       handleBlur(){
+          // $(".btscroll").css({'position':'fixed'})
+        $(".foot").css({'display':'block'})
         document.activeElement.scrollIntoViewIfNeeded(true);
         setTimeout(()=>{
           document.activeElement.scrollIntoViewIfNeeded(true);
@@ -56,6 +60,12 @@ import { getExpStr} from '@utils/tools';
         // this.$emit("updata",newData);
         // this.$emit('handleInp',this.txt);
       },
+      focus(){
+        if(isIos()){
+          // $(".btscroll").css({'position':'absolute'})
+          $(".foot").css({'display':'none'})
+        }
+      },
       preClick(e){
         e.stopPropagation();
       },

+ 2 - 1
src/common/Toast.vue

@@ -15,7 +15,6 @@
     </portal>
 </template>
 <script type="text/javascript">
-
 import $ from 'jquery';
   export default {
     name:'Toast',
@@ -27,9 +26,11 @@ import $ from 'jquery';
     props:['message','show','labShow'],
     methods:{
       comfirn(){
+        $(".btscroll").css({'position':'absolute'})
         this.$emit("comfirn")
       },
       cancel(){
+        $(".btscroll").css({'position':'absolute'})
         this.$emit("cancel")
       },
     },

+ 2 - 2
src/components/AddContent.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="symp-wrap addper">
+  <div class="symp-wrap addper btscroll">
     <div class="content">
         <div class="choose">
         <ul class="addPart">
@@ -152,7 +152,7 @@ export default {
   .content {
     // padding-right: .3rem;
   }
-  .btscroll;  
+  // .btscroll;  
   h3 {
     color: #000;
     margin-bottom: 0.36rem;

+ 6 - 1
src/components/DetailBox.vue

@@ -23,7 +23,7 @@
       </div>
     </div>
     <!-- <div :class="['foot',{'noCheck':!checkF}]" @click="complete">完成</div> -->
-    <div :class="['foot',{'noCheck':!checkF || !reqFinish}]" @click="complete">完成</div>
+    <div style="position:absolute" :class="['foot',{'noCheck':!checkF || !reqFinish}]" @click="complete">完成</div>
     <Toast :message="clearTxt" 
           :show="showToast"
           @comfirn="comfirnDel" 
@@ -81,6 +81,7 @@
         // 没点过完成,点关闭时校验是否有必填项--有直接移除
         const type = this.data.moduleType;
         const select = this.privateData.select;
+        $(".foot").css({'display':'block'})
         if(type == moduleCP['symp'] && !select){//只处理主诉症状
           const list = this.privateData.questionMapping;
           if(list){
@@ -115,12 +116,16 @@
         // 校验是否有已填项,有--弹窗;无--return
         if(this.checkF){
           this.showToast = true;
+          $(".btscroll").css({'position':'fixed'})
+          $(".foot").css({'position':'fixed'})
         }  
       },
       cancelDel(){
+        $(".btscroll").css({'position':'absolute'})
         this.showToast = false;
       },
       comfirnDel(){
+        $(".btscroll").css({'position':'absolute'})
         this.$refs.detail.clearData();
         this.showToast = false;
         this.checkF = false;

+ 2 - 2
src/components/DiagTreat.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="treat-wrap treatper">
+  <div class="treat-wrap treatper btscroll">
     <div class="content">
       <div v-for="(it,i) in dtoList" 
           v-if="dtoList"
@@ -193,7 +193,7 @@
 @import '../less/base.less';
   .treat-wrap{
     font-size: .3rem;
-    .btscroll;    
+    // .btscroll;    
     .quest{
       color: #000;
       margin-bottom: .36rem;

+ 2 - 2
src/components/Others.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="other-wrap otherper">
+  <div class="other-wrap otherper btscroll">
     <div class="content">
       <div v-for="(it,i) in dtoList" 
           v-if="dtoList"
@@ -185,7 +185,7 @@
 @import '../less/base.less';
   .other-wrap{
     font-size: .3rem;
-    .btscroll;
+    // .btscroll;
     .quest{
       color: #000;
       margin-bottom: .36rem;

+ 7 - 1
src/components/PathInfo.vue

@@ -9,7 +9,13 @@
           <span>{{pathInfo.patientAge}}岁</span>
         </p>
         <p>
-          <span>预约医生:</span>
+          <span>挂号科室:</span>
+          <span>{{pathInfo.hospitalDeptName}}</span>
+        </p>
+        <p>
+          <span>门诊号:</span>
+          <span>{{pathInfo.recordId}}</span>
+          <span style="margin-left:.20rem">预约医生:</span>
           <span>{{pathInfo.doctorName}}</span>
         </p>
         <p>

+ 7 - 2
src/components/Symptom.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="symp-wrap symper">
+  <div class="symp-wrap symper btscroll">
     <div class="content">
       <div
         class="choose"
@@ -81,6 +81,7 @@ import Tiptoast from '../common/Tiptoast.vue';
 import Search from './Search.vue';
 import {moduleCP,setScroll,trimDots} from '@utils/tools'
 import BScroll from 'better-scroll';
+import $ from 'jquery';
 export default {
   name: 'Symptom',
   props:['modluesLen','nameStr'],
@@ -264,8 +265,11 @@ export default {
         this.delText = "是否删除该信息?<br/>删除后将重新填写预问诊流程 <br/>(已填内容将清除)"
       }
       this.showToast = true;
+      $(".btscroll").css({'position':'fixed'})
+      $(".foot").css({'position':'fixed'})
     },
     comfirnDel() {
+      $(".btscroll").css({'position':'absolute'})
       this.chooseSymp.splice(this.delIndex, 1);
       this.checkText.splice(this.delIndex, 1);
       this.$store.commit('delText', { type: moduleCP['symp'], pId: this.questId })
@@ -285,6 +289,7 @@ export default {
       this.cancelDel();
     },
     cancelDel() {
+      $(".btscroll").css({'position':'absolute'})
       this.showToast = false;
       this.delIndex = null;
       this.questId = null;
@@ -327,7 +332,7 @@ export default {
 
 .symp-wrap {
   font-size: 0.3rem;
-  .btscroll;
+  // .btscroll;
   .quest {
     color: #000;
     margin-bottom: 0.36rem;

+ 2 - 2
src/less/base.less

@@ -20,7 +20,7 @@
   position: fixed;
   bottom: 0;
   left: 0;
-  z-index: 1000;
+  z-index: 998;
 }
 .dbfooter{
   width:100%;
@@ -96,7 +96,7 @@
 }
 
 .btscroll {
-  position: fixed;
+  position: absolute;
   height: 100%;
   width: 100%;
   left: 0;