luolei 5 gadi atpakaļ
vecāks
revīzija
2909cae127

+ 1 - 1
src/common/CheckBox.vue

@@ -185,7 +185,7 @@ import OptionInp from '../common/OptionInp.vue';
     }
     .list{
       color: #colors[text];
-      margin:0 .1rem .05rem 0;
+      margin:0 .1rem .07rem 0;
       padding: .06rem .1rem .06rem 0;
       display: inline-block;
       white-space: nowrap;

+ 1 - 0
src/common/ComTextArea.vue

@@ -61,6 +61,7 @@ export default {
       this.$emit("updata",newData);
     },
     blur(){
+      document.activeElement.scrollIntoView({behavior: "smooth"})
       document.activeElement.scrollIntoViewIfNeeded(true);
       $(".foot").css({'display':'block'})
       setTimeout(()=>{

+ 3 - 0
src/common/Input.vue

@@ -59,6 +59,7 @@
       blur(){
         // $(".btscroll").css({'position':'fixed'})
         $(".foot").css({'display':'block'})
+        document.activeElement.scrollIntoView({behavior: "smooth"})
         document.activeElement.scrollIntoViewIfNeeded(true);
         setTimeout(()=>{
           document.activeElement.scrollIntoViewIfNeeded(true);
@@ -87,6 +88,8 @@
 <style lang="less" scoped>
 @import '../less/base.less';
   .inp-wrap{
+    .bgques;    
+    padding-bottom: 0;
     input{
       width: 100%;
       color: #colors[theme];

+ 1 - 0
src/common/Label.vue

@@ -145,6 +145,7 @@
       display: inline-block;
       min-width:1.9rem;
       height: .72rem;
+      border-radius: .36rem;
       span{
         display: inline-block;
         vertical-align: top;

+ 1 - 0
src/common/MultiLineInput.vue

@@ -95,6 +95,7 @@ export default {
       // 如果该项未选中,则不存值
       // $(".btscroll").css({'position':'fixed'})
       $(".foot").css({'display':'block'})
+      document.activeElement.scrollIntoView({behavior: "smooth"})
       document.activeElement.scrollIntoViewIfNeeded(true);
       setTimeout(()=>{
         document.activeElement.scrollIntoViewIfNeeded(true);

+ 1 - 0
src/common/OptionInp.vue

@@ -51,6 +51,7 @@ import $ from 'jquery';
       handleBlur(){
           // $(".btscroll").css({'position':'fixed'})
         $(".foot").css({'display':'block'})
+        document.activeElement.scrollIntoView({behavior: "smooth"})
         document.activeElement.scrollIntoViewIfNeeded(true);
         setTimeout(()=>{
           document.activeElement.scrollIntoViewIfNeeded(true);

+ 3 - 1
src/common/Picker.vue

@@ -7,6 +7,7 @@
             :columns="columns"
             :visible-item-count='3'
             @change="handlechange"
+            :swipe-duration="time"
           />
           <div class="confBtn">
             <p class="tip" v-show="showTip">请选择正确的时间</p>
@@ -43,7 +44,8 @@
           },
         ],
         showTip:false,
-        columIndx:[]
+        columIndx:[],
+        time:100
       }
     },
     props:['show','picIndex'],

+ 1 - 1
src/common/Radio.vue

@@ -122,7 +122,7 @@ import OptionInp from '../common/OptionInp.vue';
     }
     .list{
       color: #colors[text];
-      margin:0 .1rem .1rem 0;
+      margin:0 .1rem .07rem 0;
       padding: .06rem .1rem .06rem 0;
       display: inline-block;
       white-space: nowrap;

+ 5 - 2
src/common/RadioSelect.vue

@@ -4,7 +4,7 @@
     <div class="list" @click="handleClickShow(1)" :class="[{'setColor':!!hasStr}]">
       <p><span>有:</span><i :style="{'color':hasStr?'#6678FF':null}">{{hasStr?hasStr:'点击选择症状'}}</i></p>
     </div>
-    <p class="please">为确保诊断准确性,请充分选择您存在的不适症状</p>
+    <p class="please pleaseS">为确保诊断准确性,请充分选择您存在的不适症状</p>
     <div class="list" @click="handleClickShow(2)" :class="[{'setColor':!!noStr}]">
       <p><span>无:</span><i :style="{'color':noStr?'#6678FF':null}">{{noStr?noStr:'点击选择症状'}}</i></p>
     </div>
@@ -212,7 +212,7 @@ import Submit from "../common/Submit";
     }
     .list{
       color: #colors[text];
-      margin-bottom: .2rem;
+      margin-bottom: .1rem;
       padding: .2rem .1rem;
       background-color: #f5f5f5;
       border-radius: .5rem;
@@ -237,5 +237,8 @@ import Submit from "../common/Submit";
       font-size: 12px;
       color: #777777;
     }
+    .pleaseS {
+      padding-top: .2rem;
+    }
   }
 </style>

+ 1 - 1
src/components/Detail.vue

@@ -5,7 +5,7 @@
       <div class="quest" @click="slideToggle(index)">
         <span class="sign">{{item.required==1?'*':''}}</span>
         <p class="title clearfix">{{index + 1 +'.'+(item.description || item.name)}}{{item.controlType==1?'(单选)':item.controlType==2?'(多选)':''}}</p>
-        <p class="result" v-if="item.value&&item.slide!=1">{{item.value}}</p>
+        <p class="result" v-if="item.valueP&&item.slide!=1">{{item.valueP}}</p>
         <i :class="[{'slideT':item.slide}]"></i>
       </div>
       <img class="questionImg" :src="item.url.replace('{imageUrlPrefix}',imgUrl)" v-if="item.url&&!!item.slide">

+ 9 - 6
src/components/Login.vue

@@ -44,7 +44,7 @@
           placeholder="请输入姓名"
         />
       </div>
-      <div :class="['btn',value&&patName?'btnClick':'btnDis']" @click="handleDepart">进入预问诊</div>
+      <div :class="['btn',value&&patName&&allow?'btnClick':'btnDis']" @click="handleDepart">进入预问诊</div>
     </div>
     <div class="tip">注:建议您可先输入病情情况,方便医生提前了解情况</div>
     <Submit v-if="submit" :showType="showType" :fail="failMsg" @showSubmit="showSubmit"></Submit>
@@ -77,7 +77,8 @@ export default {
         title: "",
         text: ""
       },
-      code:''
+      code:'',
+      allow:true
     };
   },
   created(){
@@ -102,7 +103,7 @@ export default {
       this.show = !show;
     },
     blur() {
-      // document.activeElement.scrollIntoView({behavior: "smooth"})
+      document.activeElement.scrollIntoView({behavior: "smooth"})
       if(MobileDevice.getModels().join(' or ').indexOf('6') == -1){
         document.activeElement.scrollIntoViewIfNeeded(true);      
         setTimeout(() => {
@@ -138,8 +139,9 @@ export default {
       this.submit = flg;
     },
     handleDepart() {
-      const { type, value,patName } = this;
-      if (value&&patName) {
+      const { type, value,patName,allow } = this;
+      if (value&&patName&&allow) {
+        this.allow = false
         let timer = setTimeout(() => {
           if (type == 103) {
             if (!phoneTest.test(value)) {
@@ -217,10 +219,11 @@ export default {
             }
           })
           .catch(() => {
+            this.allow = true
             clearTimeout(timer)
             this.defaultWaring("网络异常请稍后重试");
           });
-        }, 300);
+        }, 200);
       }
     }
   },

+ 2 - 1
src/components/Others.vue

@@ -198,11 +198,12 @@
     // .btscroll;
     .quest{
       color: #colors[quest];
-      margin-bottom: .36rem;
+      // margin-bottom: .36rem;
       font-weight: 700;
     }
     .label{
       .label;
+      padding-bottom: 0;
     }
     .result{
       .result;

+ 12 - 11
src/components/Symptom.vue

@@ -35,8 +35,8 @@
           class="symp"
           v-for="(it,ind) in symp"
           :key="it.conceptId"
-          @touchstart.stop.prevent="touchstart(it)"
-          @touchend.stop.prevent="touchend(it)"
+          @touchstart.prevent="touchstart($event,it)"
+          @touchend.prevent="touchend(it)"
         >{{it.description || it.name}}</span>
         <p class="tip" v-show="chooseSymp.length==0">长按症状按钮可显示症状解释说明</p>
       </div>
@@ -139,7 +139,16 @@ export default {
     })
   },
   methods: {
-    touchstart(it){
+    touchend(item,flg) {//症状点开详情
+      clearTimeout(this.timer);
+      let endTime = +new Date();
+      if(endTime - this.startTime < 500){//点击事件
+        this.common(item,flg);
+      }
+      this.startTime = "";
+    },
+    touchstart(event,it){
+      console.log(event)
       this.startTime = +new Date();
       const that = this;
       this.timer = setTimeout(function(){
@@ -232,14 +241,6 @@ export default {
       this.isSearch=flg||false
       this.common(item,flg);
     },
-    touchend(item,flg) {//症状点开详情
-      clearTimeout(this.timer);
-      let endTime = +new Date();
-      if(endTime - this.startTime < 500){//点击事件
-        this.common(item,flg);
-      }
-      this.startTime = "";
-    },
     getSympText() {//推送使用医生端信息
       const text = this.$store.state.symptom.text;
       let msg = "";

BIN
src/images/addimg.png


BIN
src/images/closeimg.png


BIN
src/images/iptdis.png


BIN
src/images/iptselect.png


BIN
src/images/person.png


BIN
src/images/slideT.png


BIN
src/images/topContent.png


+ 1 - 1
src/less/base.less

@@ -45,7 +45,7 @@
   position: fixed;
   bottom: 0;
   left: 0;
-  background: #e5ecfc;
+  background: #fff;
   z-index: 66;
   padding: .22rem .3rem .18rem .3rem;
   box-sizing: border-box;

+ 6 - 6
src/utils/tools.js

@@ -328,12 +328,12 @@ function setScroll(scroll,flg,wrapper){
       click: true,
       tap: true,
       probeType:3,
-      // bounceTime:800,
-      // momentumLimitTime:300,//只有在屏幕上快速滑动的时间小于 momentumLimitTime,才能开启 momentum 动画。
-      // momentumLimitDistance:15,//只有在屏幕上快速滑动的距离大于 momentumLimitDistance,才能开启 momentum 动画。
-      // swipeTime:500,//设置 momentum 动画的动画时长
-      // deceleration:0.015,
-      // swipeBounceTime:500,
+      bounceTime:800,
+      momentumLimitTime:300,//只有在屏幕上快速滑动的时间小于 momentumLimitTime,才能开启 momentum 动画。
+      momentumLimitDistance:15,//只有在屏幕上快速滑动的距离大于 momentumLimitDistance,才能开启 momentum 动画。
+      swipeTime:500,//设置 momentum 动画的动画时长
+      deceleration:0.015,
+      swipeBounceTime:500,
       bounce: {
         top: false,
         bottom: false,