Explorar o código

Merge branch 'dev' into byll

Luolei %!s(int64=6) %!d(string=hai) anos
pai
achega
51ee3ec2c0

+ 2 - 1
build/webpack.dev.conf.js

@@ -32,7 +32,8 @@ const devWebpackConfig = merge(baseWebpackConfig, {
     openPage:'?hospitalCode=A001&hospitalDeptCode=D01&doctorCode=YS001&patientCode=1600&recordId=44',//携带参数
     contentBase: false, // since we use CopyWebpackPlugin.
     compress: true,
-    host: HOST || config.dev.host,
+    // host: HOST || config.dev.host,
+    host: '192.168.3.6',
     port: PORT || config.dev.port,
     open: config.dev.autoOpenBrowser,
     overlay: config.dev.errorOverlay

+ 4 - 0
src/common/Input.vue

@@ -41,8 +41,12 @@
       width: 100%;
       color: #4F50FF;
       font-size: .3rem;
+      border: 0 none;
       border-bottom: 1px solid #7C828E;
       margin-bottom: .3rem;
+      border-radius: 0;
+      outline-color: invert;
+      padding-left: 0.1rem;
     }
     .change{
       border-color:  #4F50FF;

+ 9 - 1
src/common/Label.vue

@@ -78,11 +78,17 @@ import Toast from '../common/Toast.vue';
 <style lang="less" scoped>
   .label-wrap{
     font-size: .3rem;
+    .symp{
+      position: relative;
+    }
     img{
       width:.56rem;
       height: .70rem;
       vertical-align: top;
       z-index: 22;
+      position: absolute;
+      top:0;
+      right: 0;
     }
     i{
       display: inline-block;
@@ -96,8 +102,10 @@ import Toast from '../common/Toast.vue';
     }
     .check{
       color: #fff;
-      background: linear-gradient(-270deg, #4F4FFF, #4F8BFF);
+      // background: linear-gradient(-270deg, #4F4FFF, #4F8BFF);
+      background: linear-gradient(-270deg, #3638EE, #4E72FF);
       box-shadow: 0 .08rem .16rem 0 rgba(79,129,255,0.40);
+      padding-right: 0.57rem;
     }
   }
 </style>

+ 2 - 2
src/common/UploadImg.vue

@@ -49,8 +49,8 @@ export default {
   },
   props: ['item', 'moduleType', 'imgList'],//moduleType-哪个模块下上传的图
   mounted() {
-    // 将store存的值赋给imgs
-    this.imgs = this.imgList;
+    this.imgs = this.imgList; //回读
+    this.$previewRefresh();//预览刷新
   },
   methods: {
     handleUpload() {

+ 6 - 1
src/components/DetailBox.vue

@@ -40,7 +40,7 @@
     mounted(){
       const box = this.$refs.detailBox;
       const height = document.documentElement.clientHeight;
-      box.style.height = height - 100 + 'px'; 
+      box.style.height = height - 50 + 'px'; 
     },
     methods:{
       close(){
@@ -83,6 +83,7 @@
     background: #fff;
     border-radius: .08rem .08rem 0 0;
     font-size: .3rem;
+    animation: wave .4s ease-in;
     .head{
       height: .88rem;
       line-height: .88rem;
@@ -120,4 +121,8 @@
       background: linear-gradient(-270deg, #4F4FFF,#4F8BFF); */
     }
   }
+  @keyframes wave {
+    0%   {height:0 ;}
+    100% {height: 95%;}
+  } 
 </style>

+ 23 - 6
src/components/PathInfo.vue

@@ -27,6 +27,7 @@
           <span>{{pathInfo.systemTime}}</span>
         </p>
       </div>
+      <p class="already" v-if="type !== 1">{{text[type]}}</p>
     </div>
     <div class="out-box">
       <div class="emery">
@@ -38,7 +39,7 @@
           <p>该系统通过智能引导式问诊,帮助医生规范、全面的采集患者的症状、体征、病史等信息,从而实现诊疗流程的优化和配置。</p>
           <button @click="getStart">开始</button>
         </div>
-        <p v-if="type==3">您已完成过一次预问诊,是否再次录入预问诊信息</p>
+        <!-- <p v-if="type==3">您已完成过一次预问诊,是否再次录入</p> -->
       </div>
       <div class="child" v-if="child.length>0&&child[0].value==1">
         <div class="baner">
@@ -62,7 +63,12 @@
       return {
         pathInfo:{},
         child:[],
-        type:null //1-未做过;3-只做过问诊;4-只做过体质辨识;6-都做过
+        type:null, //1-未做过;3-只做过问诊;4-只做过体质辨识;6-都做过
+        text:{
+          "3":'您已完成过一次预问诊,是否再次录入',
+          "4":'您已完成过一次儿童体质辨识,是否再次录入',
+          "6":'您已完成过一次预问诊和儿童体质辨识,是否再次录入',
+        }
       }
     },
     created(){
@@ -151,6 +157,7 @@
     }
     .con{
       margin-left: .6rem;
+      position: relative;
       .name{
         color: #7C828E;
         margin-top: .27rem;
@@ -170,6 +177,12 @@
       .doct{
         margin-left: .26rem;
       }
+      .already{
+        position: absolute;
+        left: 0;
+        bottom:-.6rem;
+        color: #7C828E;
+      }
     }
     .out-box{
       white-space: nowrap;
@@ -179,15 +192,18 @@
     .emery,.child{
       display: inline-block;
       vertical-align: top;
-      width:5.3rem;
+      // width:5.3rem;
+      width:5.1rem;
       margin-top: .91rem;
       margin-left: .6rem;
       box-sizing: border-box;
       .baner{
         box-sizing: border-box;
         width:100%;
-        height: 2.52rem;
-        padding: .66rem 0 0 .6rem;
+        // height: 2.52rem;
+        height: 2.3rem;
+        // padding: .66rem 0 0 .6rem;
+        padding: .5rem 0 0 .6rem;
         p{
           color:#fff;
         }
@@ -197,7 +213,8 @@
         }
       }
       .inner{
-        height: 4.98rem;
+        // height: 4.98rem;
+        height: 4.5rem;
         box-shadow:-.05rem .05rem .10rem -.04rem #989da3,.05rem .05rem .10rem -.04rem #989da3;
         border-radius: 0 0 .20rem .20rem;
         padding: .45rem .6rem .6rem;

+ 27 - 25
src/components/Symptom.vue

@@ -286,29 +286,30 @@ export default {
     display: inline-block;
     width:1.9rem;
     height: .74rem;
-    background: linear-gradient(-270deg, #4F4FFF, #4F8BFF);
-    box-shadow: 0 .08rem .16rem 0 rgba(79,129,255,0.40);
-    border-radius: .08rem;
-    white-space: nowrap;
-    margin: 0 .3rem .3rem 0;
-    span{
-      display: inline-block;
-      vertical-align: top;
-    }
-    span:first-child{
-      width:1.34rem;
-      height: .74rem;
-      line-height: .74rem;
-      text-align: center;
-      color: #fff;
-    }
-    img{
-      width:.56rem;
-      height: .74rem;
-    }
-    .over{
-      .over;
-    }
+      // background: linear-gradient(-270deg, #4F4FFF, #4F8BFF);
+      background: linear-gradient(-270deg, #3638EE, #4E72FF);
+      box-shadow: 0 .08rem .16rem 0 rgba(79,129,255,0.40);
+      border-radius: .08rem;
+      white-space: nowrap;
+      margin: 0 .3rem .3rem 0;
+      span{
+        display: inline-block;
+        vertical-align: top;
+      }
+      span:first-child{
+        width:1.34rem;
+        height: .74rem;
+        line-height: .74rem;
+        text-align: center;
+        color: #fff;
+      }
+      img{
+        width:.56rem;
+        height: .74rem;
+      }
+      .over{
+        .over;
+      }
   }
 }
 .label{
@@ -331,8 +332,9 @@ export default {
   .footer;
 }
 .nofoot{
-  opacity: 0.3;
-  background: linear-gradient(-270deg,#4F4FFF, #4F8BFF);
+  // opacity: 0.3;
+  // background: linear-gradient(-270deg,#4F4FFF, #4F8BFF);
+  background:#CACCFF;
 }
 .detail{
   .mask;

+ 19 - 16
src/components/TabPage.vue

@@ -1,18 +1,11 @@
 <template>
   <div class="tab-wrap">
-    <div
-      class="tab"
-      v-if="modlues&&modlues.length>0 && moduleShow"
-    >
-      <p
-        v-for="(it,index) in modlues"
-        :key="it.id"
-      >
-        <!-- <span :class="{current:index==0}" v-if="type[it.type]==1"> -->
-        <span
-          :class="{current:index==parseInt(flag)-1}"
-          v-if="type[it.type]==1"
-        >
+    <div class="tab"
+      v-if="modlues&&modlues.length>0 && moduleShow">
+      <p v-for="(it,index) in modlues"
+        :key="it.id">
+        <span :class="{current:index==parseInt(flag)-1,comp:finish[it.type]}"
+          v-if="type[it.type]==1">
           <i>{{it.type}}</i>
           {{it.name}}
         </span>
@@ -76,7 +69,13 @@ export default {
         "4": sysConfig.length > 0 && sysConfig.filter(item => item.code == "replenish_show")[0].value,
       },
       flag: allMoudles.length > 0 && allMoudles[0].type,
-      moduleShow:true
+      moduleShow:true,
+      finish:{ //标识已填
+        "1":true,
+        "2":false,
+        "3":false,
+        "4":false
+      }
     }
   },
   created() {
@@ -92,8 +91,9 @@ export default {
       }
       let flag = parseInt(this.flag);
       if (this.modlues[flag]) {
-        this.flag = this.modlues[flag].type;
-        // this.flag = 4;
+        const type = this.modlues[flag].type;
+        this.flag = type;
+        this.finish[type] = true;
       }
     },
     beBack(preview) {
@@ -150,6 +150,9 @@ export default {
       background: #e5ecfc;
       border-radius: 25px;
     }
+    .comp{
+      color: #0043e8;
+    }
 }
   .content {
     font-size: 0.3rem;