Browse Source

样式细节修改

Your Name 2 years ago
parent
commit
6973a71f4b

+ 6 - 1
src/App.vue

@@ -50,6 +50,7 @@
     border: 1px solid #fff;
     height: 100vh;
     background: #EFEFEF;
+    overflow-x: hidden;
 
     .content {
       width: 100%;
@@ -96,7 +97,7 @@
     line-height: 3.5rem;
     border-radius: 5px;
     margin: auto;
-    margin-top: 20rem;
+    /* margin-top: 20rem; */
     background: #0570F2;
     font-weight: bold;
     color: white;
@@ -144,6 +145,7 @@
   }
   .inputDisable input:disabled {
     background-color: #fff!important;
+    color: #2c3e50!important;
   }
   .rowfont{
       font-size:1rem;
@@ -152,4 +154,7 @@
       line-height: 2rem;
       height: 2rem;
     }
+    .picker-item{
+      font-size:14px!important;
+    }
 </style>

+ 4 - 0
src/api.js

@@ -92,4 +92,8 @@ export default {
   getPKLineData: params => {
     return axios.get(`${baseURL}/api/doctor/patient/case/pkline`, { params: params })
   },
+  // 采血时间曲线
+  getCxLineData: params => {
+    return axios.get(`${baseURL}/api/doctor/patient/case/cxline`, { params: params })
+  },
 }

+ 98 - 65
src/components/DiagCalc.vue

@@ -4,34 +4,56 @@
     <div class="content">
       <div class="title">FVIII药代动力学检测</div>
       <div class="diagForm">
-        <mt-field label="病例体重(kg)" placeholder="请输入病例体重(整数或1位小数)" type="number" v-model="form.bltz"></mt-field>
-        <mt-field label="注射剂量" placeholder="请输入注射计量(整数)" v-model="form.zsjl" type="number"></mt-field>
-        <mt-field class="inputDisable" disabled label="注射时间t0" placeholder="请选择注射时间" v-model="form.zssjt0"
-          @click.native="$refs.t0Picker.open()">
-          <img src="../assets/images/down.png" alt="" width="16px">
-        </mt-field>
-        <mt-field label="基础活性%" placeholder="请输入基础活性(2位小数)" v-model="form.jchx"></mt-field>
-        <mt-field label="注射后半小时内活性%" placeholder="请输入半小时内活性%" v-model="form.zs30hx"></mt-field>
-        <mt-field class="inputDisable" disabled label="采血时间t1" placeholder="请输入采血时间t1" v-model="form.cxsjt1"
-          @click.native="$refs.t1Picker.open()">
-          <img src="../assets/images/down.png" alt="" width="16px">
-        </mt-field>
-        <mt-field label="t1点活性%" placeholder="请输入t1点活性%(2位小数)" v-model="form.t1hx"></mt-field>
-        <mt-field class="inputDisable" disabled label="采血时间t2" placeholder="请输入采血时间t2" v-model="form.cxsjt2"
-          @click.native="$refs.t2Picker.open()">
-          <img src="../assets/images/down.png" alt="" width="16px">
-        </mt-field>
-        <mt-field label="t2点活性%" placeholder="请输入t2点活性%(2位小数)" v-model="form.t2hx"></mt-field>
-        <mt-field class="inputDisable" disabled label="采血时间t3" placeholder="请输入采血时间t3" v-model="form.cxsjt3"
-          @click.native="$refs.t3Picker.open()">
-          <img src="../assets/images/down.png" alt="" width="16px">
-        </mt-field>
-        <mt-field label="t3点活性%" placeholder="请输入t3点活性%(2位小数)" v-model="form.t3hx"></mt-field>
+        <mt-field label="病例体重(kg)" placeholder="整数或1位小数" type="number" v-model="form.bltz"></mt-field>
+        <mt-field label="注射剂量" placeholder="请输入整数" v-model="form.zsjl" type="number"></mt-field>
+        <div class="numSubTitle">
+          <mt-field class="inputDisable" disabled placeholder="请选择时间" v-model="form.zssjt0"
+            @click.native="$refs.t0Picker.open()">
+            <img src="../assets/images/down.png" alt="" width="16px">
+          </mt-field>
+          <span>注射时间t<sub>0</sub></span>
+        </div>
+        <mt-field label="基础活性%" placeholder="请输入2位小数" v-model="form.jchx"></mt-field>
+        <mt-field label="注射后半小时内活性%" placeholder="请输入2位小数" v-model="form.zs30hx"></mt-field>
+        <div class="numSubTitle">
+          <mt-field class="inputDisable" disabled placeholder="请选择时间" v-model="form.cxsjt1"
+            @click.native="$refs.t1Picker.open()">
+            <img src="../assets/images/down.png" alt="" width="16px">
+          </mt-field>
+          <span>采血时间t<sub>1</sub></span>
+        </div>
+        <div class="numSubTitle">
+          <mt-field placeholder="请输入2位小数" v-model="form.t1hx"></mt-field>
+          <span>t<sub>1</sub>点活性%</span>
+        </div>
+        <div class="numSubTitle">
+          <mt-field class="inputDisable" disabled placeholder="请选择时间" v-model="form.cxsjt2"
+            @click.native="$refs.t2Picker.open()">
+            <img src="../assets/images/down.png" alt="" width="16px">
+          </mt-field>
+          <span>采血时间t<sub>2</sub></span>
+        </div>
+        <div class="numSubTitle">
+          <mt-field placeholder="请输入2位小数" v-model="form.t2hx"></mt-field>
+          <span>t<sub>2</sub>点活性%</span>
+        </div>
+        <div class="numSubTitle">
+          <mt-field class="inputDisable" disabled placeholder="请选择时间" v-model="form.cxsjt3"
+            @click.native="$refs.t3Picker.open()">
+            <img src="../assets/images/down.png" alt="" width="16px">
+          </mt-field>
+          <span>采血时间t<sub>3</sub></span>
+        </div>
+        <div class="numSubTitle">
+          <mt-field placeholder="请输入2位小数" v-model="form.t3hx"></mt-field>
+          <span>t<sub>3</sub>点活性%</span>
+        </div>
       </div>
       <div class="diagForm">
         <div class="formTitle">血友病治疗方案</div>
-        <mt-field label="预防谷活性" type="number" placeholder="请输入预防谷活性(2位小数)" v-model="form.yfghx"></mt-field>
-        <mt-field class="inputDisable" disabled label="注射频次" placeholder="请选择注射频次" v-model="form.zspc" @click.native="mfreqFlag=true">
+        <mt-field label="预防谷活性" type="number" placeholder="请输入2位小数" v-model="form.yfghx"></mt-field>
+        <mt-field class="inputDisable" disabled label="注射频次" placeholder="请选择" v-model="form.zspc"
+          @click.native="mfreqFlag=true">
           <img src="../assets/images/down.png" alt="" width="16px">
         </mt-field>
       </div>
@@ -41,27 +63,19 @@
     </div>
     <!-- 注射时间t0 -->
     <mt-datetime-picker ref="t0Picker" type="datetime" year-format="{value} 年" month-format="{value} 月"
-      date-format="{value} 日" @confirm='changeTime0'
-      :endDate = 'endDate'
-      >
+      date-format="{value} 日" @confirm='changeTime0' :endDate='endDate'>
     </mt-datetime-picker>
     <!-- 采血时间t1 -->
     <mt-datetime-picker ref="t1Picker" type="datetime" year-format="{value} 年" month-format="{value} 月"
-      date-format="{value} 日" @confirm='changeTime1'
-      :endDate = 'endDate'
-      >
+      date-format="{value} 日" @confirm='changeTime1' :endDate='endDate'>
     </mt-datetime-picker>
     <!-- 采血时间t2 -->
     <mt-datetime-picker ref="t2Picker" type="datetime" year-format="{value} 年" month-format="{value} 月"
-      date-format="{value} 日" @confirm='changeTime2'
-      :endDate = 'endDate'
-      >
+      date-format="{value} 日" @confirm='changeTime2' :endDate='endDate'>
     </mt-datetime-picker>
     <!-- 采血时间t3 -->
     <mt-datetime-picker ref="t3Picker" type="datetime" year-format="{value} 年" month-format="{value} 月"
-      date-format="{value} 日" @confirm='changeTime3'
-      :endDate = 'endDate'
-      >
+      date-format="{value} 日" @confirm='changeTime3' :endDate='endDate'>
     </mt-datetime-picker>
     <!-- 注射频次 -->
     <mt-picker @change="onValuesChange1" v-if="mfreqFlag" :slots="slots1" ref="sexPicker1" class="sexPicker"
@@ -90,7 +104,7 @@
         msg: 'Welcome to Your Vue.js App',
         mfreqFlag: false,
         form: {
-          jchx:1,
+          jchx: 1,
           zssjt0: '',
           cxsjt1: '',
           cxsjt2: '',
@@ -102,7 +116,7 @@
           className: 'slot1',
           textAlign: 'center'
         }],
-        endDate:new Date(this.$datetime.formatDateTime(new Date())),
+        endDate: new Date(this.$datetime.formatDateTime(new Date())),
       }
     },
     methods: {
@@ -135,8 +149,8 @@
             message: '请输入病例体重'
           })
           return
-        }else{
-          if(!this.$recheck.checkIntFloat1(this.form.bltz)){
+        } else {
+          if (!this.$recheck.checkIntFloat1(this.form.bltz)) {
             MessageBox({
               title: '提示',
               message: '病例体重请输入整数或1位小数'
@@ -150,8 +164,8 @@
             message: '请输入注射剂量'
           })
           return
-        }else{
-          if(!this.$recheck.checkInt(this.form.zsjl)){
+        } else {
+          if (!this.$recheck.checkInt(this.form.zsjl)) {
             MessageBox({
               title: '提示',
               message: '注射剂量请输入整数'
@@ -166,21 +180,21 @@
           })
           return
         }
-        // if (!this.form.jchx) {
-        //   MessageBox({
-        //     title: '提示',
-        //     message: '请输入手机号?'
-        //   })
-        //   return
-        // }
+        if (!this.$recheck.checkIntFloat12(this.form.jchx)) {
+          MessageBox({
+            title: '提示',
+            message: '请输入整数或2位小数?'
+          })
+          return
+        }
         if (!this.form.zs30hx) {
           MessageBox({
             title: '提示',
             message: '请输入注射后半小时内活性?'
           })
           return
-        }else{
-          if(!this.$recheck.checkIntFloat12(this.form.zs30hx)){
+        } else {
+          if (!this.$recheck.checkIntFloat12(this.form.zs30hx)) {
             MessageBox({
               title: '提示',
               message: '注射后半小时内活性请输入整数或2位小数'
@@ -201,8 +215,8 @@
             message: '请输入t1点活性'
           })
           return
-        }else{
-          if(!this.$recheck.checkIntFloat12(this.form.t1hx)){
+        } else {
+          if (!this.$recheck.checkIntFloat12(this.form.t1hx)) {
             MessageBox({
               title: '提示',
               message: 't1点活性请输入整数或2位小数'
@@ -223,8 +237,8 @@
             message: '请输入t2点活性'
           })
           return
-        }else{
-          if(!this.$recheck.checkIntFloat12(this.form.t2hx)){
+        } else {
+          if (!this.$recheck.checkIntFloat12(this.form.t2hx)) {
             MessageBox({
               title: '提示',
               message: 't2点活性请输入整数或2位小数'
@@ -245,8 +259,8 @@
             message: '请输入t3点活性'
           })
           return
-        }else{
-          if(!this.$recheck.checkIntFloat12(this.form.t3hx)){
+        } else {
+          if (!this.$recheck.checkIntFloat12(this.form.t3hx)) {
             MessageBox({
               title: '提示',
               message: 't3点活性请输入整数或2位小数'
@@ -260,8 +274,8 @@
             message: '请输入预防谷活性'
           })
           return
-        }else{
-          if(!this.$recheck.checkIntFloat12(this.form.yfghx)){
+        } else {
+          if (!this.$recheck.checkIntFloat12(this.form.yfghx)) {
             MessageBox({
               title: '提示',
               message: '预防谷活性请输入整数或2位小数'
@@ -279,13 +293,13 @@
         MessageBox.confirm('请您再次确认录入信息是否有误?').then(action => {
           let params = this.form
           let patientCase = localStorage.getItem("patientCase")
-          if(patientCase){
+          if (patientCase) {
             patientCase = JSON.parse(patientCase)
-            Object.keys(patientCase).forEach(function(item){
+            Object.keys(patientCase).forEach(function (item) {
               console.log(item)
               params[item] = patientCase[item]
             })
-          }else{
+          } else {
             patientCase = params
             this.goPage("/regpatinfo")
           }
@@ -293,8 +307,13 @@
             if (!res.data.code) {
               let id = res.data.data.id
               localStorage.removeItem("patientCase")
-              this.$router.push({path:'diagcalcshow',query:{id:id}})
-            }else{
+              this.$router.push({
+                path: 'diagcalcshow',
+                query: {
+                  id: id
+                }
+              })
+            } else {
               Toast(res.data.message)
             }
           })
@@ -345,4 +364,18 @@
     }
   }
 
+  .numSubTitle {
+    position: relative;
+
+    span {
+      position: absolute;
+      left: 25px;
+      top: 5px;
+    }
+  }
+
+  /deep/ .numSubTitle .mint-field-core {
+    margin-left: 105px;
+  }
+
 </style>

+ 86 - 25
src/components/DiagCalcShow.vue

@@ -4,36 +4,92 @@
     <div class="content">
       <div class="diagShowForm">
         <div class="formTitle">FVIII药代动力学检测</div>
-        <mt-cell title="姓名" :value="caseInfo.name"></mt-cell>
-        <mt-cell title="ID" :value="caseInfo.code"></mt-cell>
-        <mt-cell title="年龄" :value="caseInfo.age"></mt-cell>
-        <mt-cell title="体重(kg)" :value="caseInfo.bltz"></mt-cell>
-        <mt-cell title="性别" :value="caseInfo.sex"></mt-cell>
-        <mt-cell title="注射产品" :value="caseInfo.mpro"></mt-cell>
-        <mt-cell title="注射剂量(IU/kg)" :value="caseInfo.zsjl"></mt-cell>
-        <mt-cell title="注射时间t0" :value="caseInfo.zssjt0"></mt-cell>
-        <mt-cell title="基础活性%" :value="caseInfo.jchx"></mt-cell>
-        <mt-cell title="注射后半小时内活性%" :value="caseInfo.zs30hx"></mt-cell>
-        <mt-cell title="采血时间t1" :value="caseInfo.cxsjt1"></mt-cell>
-        <mt-cell title="t1点活性%" :value="caseInfo.t1hx"></mt-cell>
-        <mt-cell title="采血时间t2" :value="caseInfo.cxsjt2"></mt-cell>
-        <mt-cell title="t2点活性%" :value="caseInfo.t2hx"></mt-cell>
-        <mt-cell title="采血时间t3" :value="caseInfo.cxsjt3"></mt-cell>
-        <mt-cell title="t3点活性%" :value="caseInfo.t3hx"></mt-cell>
-        <!-- <mt-cell title="采血时间t4" :value="caseInfo.cxsjt4"></mt-cell>
-        <mt-cell title="t4点活性%" :value="caseInfo.t4hx"></mt-cell> -->
-        <mt-cell title="预期峰值活性%" :value="caseInfo.yqfzhx"></mt-cell>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">姓名</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.name}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">年龄</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.age}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">体重(kg)</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.bltz}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">注射产品</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.mpro}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">注射剂量(IU/kg)</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.zsjl}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">注射时间t<sub>0</sub></div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.zssjt0}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">基础活性</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.jchx}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">注射后半小时内活性</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.zs30hx}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">采血时间t<sub>1</sub></div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.cxsjt1}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">t<sub>1</sub>点活性%</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.t1hx}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">采血时间t<sub>2</sub></div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.cxsjt2}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">t<sub>2</sub>点活性%</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.t2hx}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">采血时间t<sub>3</sub></div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.cxsjt3}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">t<sub>3</sub>点活性%</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.t3hx}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">预期峰值活性%</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.yqfzhx}}</div>
+        </div>
       </div>
       <div class="diagShowForm">
         <div class="formTitle">FVI药代动力学参数</div>
-        <mt-cell title="半衰期:" :value="caseInfo.bsq"></mt-cell>
-        <mt-cell title="利用率%:" :value="caseInfo.lyl"></mt-cell>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">半衰期</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.bsq}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">利用率%</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.lyl}}</div>
+        </div>
       </div>
       <div class="diagShowForm">
         <div class="formTitle">血友病治疗方案</div>
-        <mt-cell title="预防谷活性%:" :value="caseInfo.yfghx"></mt-cell>
-        <mt-cell title="注射频次:" :value="caseInfo.zspc"></mt-cell>
-        <mt-cell title="每次注射剂量(IU/kg):" :value="caseInfo.mczsjl"></mt-cell>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">预防谷活性%</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.yfghx}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">注射频次</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.zspc}}</div>
+        </div>
+        <div style="display:flex;">
+          <div class="rowfont" style="width:50%;">每次注射剂量(IU/kg)</div>
+          <div class="rowfont" style="width:50%;color:#888;">{{caseInfo.mczsjl}}</div>
+        </div>
       </div>
       <div class="footer">
         <div class="jbbtn" @click="goPage">下一页</div>
@@ -62,7 +118,12 @@
     methods: {
       goPage() {
         let id = this.$route.query.id
-        this.$router.push({'path':'/solutionpkline',query:{id:id}})
+        let role = this.$route.query.role
+        if(role==2){
+          this.$router.push({'path':'/patcxsjline',query:{id:id}})
+        }else{
+          this.$router.push({'path':'/solutionpkline',query:{id:id}})
+        }
       },
       getData(){
         let id = this.$route.query.id

+ 12 - 5
src/components/DocIndex.vue

@@ -6,7 +6,8 @@
         <p class="docname">{{doctorInfo.name}} 医生,您好!</p>
       </div>
     </div> -->
-    <div class="bgimg">
+    <div style="position:relative;">
+      <img src="../assets/images/infobg.png" alt="" width="100%" style="">
       <div class="docinfo">
         <img class="docavatar" src="../assets/images/doch1.jpg" width="60rem" height="60rem" />
         <p class="docname">{{doctorInfo.name}} 医生,您好!</p>
@@ -16,6 +17,7 @@
       <div class="footer">
         <div class="csbtn" @click="goPage('/regpatinfo')">病例信息录入</div>
         <div class="jbbtn" @click="goPage('patcaselist')">病例管理</div>
+        <button class="jbbtn" @click="logout">退出登录</button>
         <div class="usageInfo">使用说明</div>
       </div>
     </div>
@@ -34,6 +36,11 @@
       goPage(path) {
         this.$router.push(path)
       },
+      logout(){
+        window.localStorage.removeItem('token')
+        window.localStorage.removeItem('authinfo')
+        window.location.reload()
+      },
       getData() {
         this.$api.getAccountInfo().then(res => {
           if (!res.data.code) {
@@ -72,8 +79,10 @@
     }
 
     .docinfo {
-      margin-top: 5rem;
-
+      position: absolute;
+      top:30%;
+      left:0;
+      right: 0;
       .docavatar {
         border-radius: 60rem;
       }
@@ -83,13 +92,11 @@
         margin: 0.1rem;
       }
 
-      position: relative;
       z-index:3;
     }
 
     .footer {
       margin-bottom: 2rem;
-      margin-top: 26.8rem;
 
       .usageInfo {
         width: 6rem;

File diff suppressed because it is too large
+ 474 - 14
src/components/DocLogin.vue


+ 2 - 3
src/components/Index.vue

@@ -1,10 +1,9 @@
 <template>
   <div class="container">
-    <div class="bgimg"></div>
+    <img src="../assets/images/entrybg.jpg" alt="" width="100%" style="margin-top:4rem;">
     <div class="content">
-      <div class="csbtn" @click="goPage('/doclogin')">医生端</div>
+      <div class="csbtn" @click="goPage('/doclogin')" style="margin-top:0px;">医生端</div>
       <div class="jbbtn" @click="goPage('/patregister')">个人端</div>
-      <button class="jbbtn" @click="logout">退出登录</button>
     </div>
   </div>
 </template>

+ 6 - 5
src/components/PatCaseList.vue

@@ -18,10 +18,10 @@
               <mt-button type="primary" size="small" @click="showDetail(item.id)">详情</mt-button>
           </div>
       </div>
-      <!-- <div class="footer">
-        <div class="jbbtn">确定</div>
-        <div class="jbbtn" @click="goPage('/patinjectionlist')">查看注射记录</div>
-      </div> -->
+      <div class="footer" style="position:fixed;bottom:1rem;width:100%;">
+        <!-- <div class="jbbtn">返回</div> -->
+        <div class="jbbtn" @click="goPage('/docindex')">返回</div>
+      </div>
     </div>
   </div>
 </template>
@@ -116,11 +116,12 @@
   }
   .container{
     height: 100vh;
+    overflow-y: scroll;
   }
   .footer {
     display: flex;
     .jbbtn{
-      width: 42%;
+      width: 62%;
     }
   }
 

+ 18 - 7
src/components/PatClockIn.vue

@@ -7,9 +7,10 @@
         <mt-field class="inputDisable" disabled label="产品选择" v-model="form.mpro" @click.native="mproFlag=true;mfreqFlag=false" placeholder="请选择使用的产品">
           <img src="../assets/images/down.png" alt="" width="16px">
         </mt-field>
-        <mt-field class="inputDisable" disabled label="注射频次" v-model="form.mfreq" @click.native="mfreqFlag=true;mproFlag=false" placeholder="请选择使用的剂量">
+        <!-- <mt-field class="inputDisable" disabled label="注射频次" v-model="form.mfreq" @click.native="mfreqFlag=true;mproFlag=false" placeholder="请选择使用的剂量">
           <img src="../assets/images/down.png" alt="" width="16px">
-        </mt-field>
+        </mt-field> -->
+        <mt-field label="注射剂量" placeholder="整数" type="number" v-model="form.mdose"></mt-field>
       </div>
       <div class="footer">
         <div class="jbbtn" @click="submit">确定并提交</div>
@@ -29,14 +30,16 @@
 <script>
   import {
     Field,
-    Picker
+    Picker,
+    MessageBox
   } from 'mint-ui'
 
   export default {
     name: 'Index',
     components: {
       Field,
-      Picker
+      Picker,
+      MessageBox
     },
     data() {
       return {
@@ -79,16 +82,24 @@
         if (!this.form.mpro) {
           MessageBox({
             title: '提示',
-            message: '请选择产品?'
+            message: '请选择产品'
           })
           return
         }
-        if (!this.form.mfreq) {
+        if (!this.form.mdose) {
           MessageBox({
             title: '提示',
-            message: '请选择注射频次?'
+            message: '请输入注射剂量'
           })
           return
+        }else{
+          if (!this.$recheck.checkInt(this.form.mdose)) {
+            MessageBox({
+              title: '提示',
+              message: '注射剂量请输入整数'
+            })
+            return
+          }
         }
         let params = this.form
         this.$api.regPatientRecords(params).then(res => {

+ 3 - 2
src/components/PatClockInSuc.vue

@@ -8,7 +8,7 @@
           <img src="../assets/images/clockinbg.png" width="100%" alt="">
           <div class="clocksucmsg" >您已打卡成功</div>
         </div>
-        <div class="clockintime">打卡时间:2023-05-17 15:55:00</div>
+        <div class="clockintime">打卡时间:{{nowDatetime}}</div>
       </div>
       <div class="footer">
         <div class="jbbtn" @click="goPage('/patindex')">确定</div>
@@ -32,7 +32,8 @@
     },
     data() {
       return {
-        form: {}
+        form: {},
+        nowDatetime:this.$datetime.formatDateTimeFull(new Date())
       }
     },
     methods: {

+ 166 - 0
src/components/PatCxsjLine.vue

@@ -0,0 +1,166 @@
+<template>
+  <div class="container">
+    <div class="bgimg"></div>
+    <div class="content">
+      <div class="title">预防治疗方案的PK曲线</div>
+      <div class="PKLineForm">
+        <v-chart :option="pklineOption" style="height: 250px">
+        </v-chart>
+        <div class="tuli">
+            <p style="color:#6594D5;">实测曲线</p>
+        </div>
+      </div>
+      <div class="PKLineForm baseInfo">
+        <mt-cell :title="'姓名:'+caseInfo.name" :value="'ID:'+caseInfo.code"></mt-cell>
+        <mt-cell :title="'年龄:'+caseInfo.age" :value="'性别:'+caseInfo.sex"></mt-cell>
+        <mt-cell :title="'使用产品:'+caseInfo.mpro" :value="'注射剂量:'+caseInfo.zsjl"></mt-cell>
+        <mt-cell :title="'注射频次:'+caseInfo.mfreq"></mt-cell>
+        <div class="rowfont">方案时间时间:{{caseInfo.ctime}}</div>
+      </div>
+      <div class="footer">
+        <div class="jbbtn" @click="goPage(-1)">上一页</div>
+        <div class="jbbtn" @click="goPage('/patindex')">返回</div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+  import {
+    Field,
+    Cell
+  } from 'mint-ui'
+  // import ECharts from 'vue-echarts'
+  export default {
+    name: 'Index',
+    components: {
+      Field,
+      Cell
+    },
+    data() {
+      return {
+        msg: 'Welcome to Your Vue.js App',
+        caseInfo: {},
+        pklinedata:{},
+        pklineOption: {
+          title: {},
+          calculable: true,
+          xAxis: [{
+            type: 'category',
+            boundaryGap: false,
+            data: []
+          }],
+          yAxis: [{
+            type: 'value',
+            axisLabel: {
+              // formatter: '{value}.00'
+            }
+          }],
+          series: [{
+            name: '最低气温',
+            type: 'line',
+            data: []
+          }]
+        }
+      }
+    },
+    methods: {
+      goPage(path) {
+        if (path === -1) {
+          this.$router.go(-1)
+        }
+        this.$router.push(path)
+      },
+      getData() {
+        let id = this.$route.query.id
+        this.$api.getPatientCaseInfo({
+          id: id
+        }).then(res => {
+          if (!res.data.code) {
+            this.caseInfo = res.data.data
+          }
+        })
+        // pkline
+        this.$api.getCxLineData({
+          id: id
+        }).then(res => {
+          this.pklinedata = res.data.data
+          this.pklineOption.xAxis[0].data = res.data.data.cxline_x
+          this.pklineOption.series[0].data = res.data.data.cxline_y
+        })
+      }
+    },
+    created() {
+      this.getData()
+    }
+  }
+
+</script>
+
+<style scoped lang="scss">
+  .footer {
+    display: flex;
+  }
+
+  .PKLineForm {
+    width: 84%;
+    margin: auto;
+    margin-top: 1rem;
+    background: #fff;
+    padding: 1rem;
+    border-radius: 5px;
+    position: relative;
+    .tuli{
+      position: absolute;
+      right:40%;
+      top:40px;
+      p{
+        margin:5px;
+      }
+    }
+    .rowfont{
+      font-size:1rem;
+      text-align:left;
+      padding-left:10px;
+      line-height: 2rem;
+      height: 2rem;
+    }
+    .formTitle {
+      height: 1rem;
+      line-height: 1rem;
+      text-align: left;
+      color: #2882F4;
+      padding-bottom: 0.5rem;
+      border-bottom: 1px solid #2882F4;
+      font-weight: bold;
+    }
+
+    .mint-cell {
+      min-height: 1.8rem;
+    }
+
+    /deep/ .mint-cell .mint-cell-title {
+      width: 60%;
+      text-align: left;
+    }
+
+    /deep/ .mint-cell .mint-cell-value {
+      width: 40%;
+      text-align: right;
+    }
+
+    /deep/ .mint-cell .mint-cell-wrapper {
+      font-size: 14px;
+      background-image: none;
+    }
+  }
+
+  .container {
+    height: 100%;
+  }
+
+  .jbbtn {
+    width: 42%;
+  }
+
+</style>

+ 8 - 2
src/components/PatIndex.vue

@@ -31,6 +31,7 @@
             <div class="jbbtn" @click="goPage('/patclockin')">注射打卡</div>
             <div class="jbbtn" @click="goPage('/patinjectionlist')">注射记录</div>
             <div class="jbbtn" @click="goPage('/procaselist')">查看PK曲线</div>
+            <button class="jbbtn" @click="logout">退出登录</button>
           </div>
         </div>
       </div>
@@ -74,6 +75,11 @@
       goPage(path) {
         this.$router.push(path)
       },
+      logout(){
+        window.localStorage.removeItem('token')
+        window.localStorage.removeItem('authinfo')
+        window.location.reload()
+      },
       getData() {
         this.$api.getPatientLatestCase().then(res => {
           if (!res.data.code) {
@@ -155,14 +161,14 @@
 
     .lrcontainer {
       display: flex;
-      width: 80%;
+      width: 90%;
       margin: auto;
       margin-top: 10px;
 
       .lritem {
         justify-content: space-between;
         height: 15rem;
-        margin-left:1rem;
+        margin-left:1.6rem;
 
         .left {
           width: 40%;

+ 2 - 2
src/components/PatInjectionList.vue

@@ -95,13 +95,13 @@
     display: flex;
 
     .listItem {
-      width: 30%;
+      width: 33%;
       height: 2.8rem;
       line-height: 2.8rem;
       flex-direction: row;
       justify-content: space-between;
       border-bottom: 1px solid #ccc;
-      font-size:12px;
+      font-size:14px;
     }
   }
 

File diff suppressed because it is too large
+ 447 - 2
src/components/PatRegister.vue


+ 15 - 10
src/components/ProCaseList.vue

@@ -4,18 +4,20 @@
     <div class="content">
       <div class="title">方案列表</div>
       <div class="loginForm baseInfo">
-        <div v-for="(item,index) in list">
-          <mt-cell :title="'使用产品:'+item.mpro" :value="'注射剂量:'+item.zsjl"></mt-cell>
-          <div style="font-size:12px;text-align:left;padding-left:10px;">
+        <div v-for="(item,index) in list" style="padding-bottom:10px;border-bottom:1px solid #888;">
+          <div style="display:flex;">
+            <div class="rowfont" style="width:50%;">使用产品:{{item.mpro}}</div>
+            <div class="rowfont" style="width:50%;">注射剂量:{{item.zsjl}}</div>
+          </div>
+          <div style="font-size:16px;text-align:left;padding-left:10px;height: 2.4rem;line-height: 2.4rem;">
             方案时间:{{item.ctime}}
-            <mt-button type="primary" size="small" @click="goPage(item.id)">详情</mt-button>
+            <mt-button type="primary" size="small" @click="showDetail(item.id)">详情</mt-button>
           </div>
-          <hr>
         </div>
       </div>
       <div class="footer">
-        <div class="preBtn">确定</div>
-        <div class="returnBtn">查看注射记录</div>
+        <!-- <div class="preBtn">确定</div> -->
+        <div class="returnBtn" @click="goPage('/patindex')">返回</div>
       </div>
     </div>
   </div>
@@ -44,8 +46,11 @@
       }
     },
     methods: {
-      goPage(id) {
-        this.$router.push({'path':'/diagcalcshow',query:{id:id}})
+      goPage(path) {
+        this.$router.push(path)
+      },
+      showDetail(id){
+        this.$router.push({'path':'/diagcalcshow',query:{id:id,role:2}})
       },
       getData() {
         let id = this.$route.query.id
@@ -123,7 +128,7 @@
     position: relative;
 
     .mint-button--small {
-      height: 1.2rem;
+      height: 2rem;
       position: absolute;
       left: 78%;
     }

+ 11 - 2
src/components/RegPatinfo.vue

@@ -114,7 +114,7 @@
               title: '提示',
               message: '请输入正确的手机号'
             })
-            return 
+            return
           }
         }
         let params = this.form
@@ -127,7 +127,16 @@
       }
     },
     created() {
-      console.log(this.endDate, 222222222222)
+      // this.$api.getAccountInfo().then(res=>{
+      //     if(!res.data.code){
+      //       if(res.data.data.role=="1"){
+      //         this.goPage("/docindex")
+      //       }else{
+      //         this.goPage("/patindex")
+      //       }
+      //       localStorage.setItem("authinfo",JSON.stringify(res.data.data))
+      //     }
+      //   })
     },
   }
 

+ 1 - 1
src/components/SolutionPkLine.vue

@@ -30,7 +30,7 @@
       </div>
       <div class="footer">
         <div class="jbbtn" @click="goPage(-1)">上一页</div>
-        <div class="jbbtn" @click="goPage('/')">返回</div>
+        <div class="jbbtn" @click="goPage('/docindex')">返回</div>
       </div>
     </div>
   </div>

+ 6 - 0
src/router/index.js

@@ -16,6 +16,7 @@ import PatCaseList from '@/components/PatCaseList'
 import ProCaseList from '@/components/ProCaseList'
 import PatInjectionList from '@/components/PatInjectionList'
 import PatRegister from '@/components/PatRegister'
+import PatCxsjLine from '@/components/PatCxsjLine'
 
 Vue.use(Router)
 
@@ -100,6 +101,11 @@ export default new Router({
       path: '/patregister',
       name: '用户注册',
       component: PatRegister
+    },
+    {
+      path: '/patcxsjline',
+      name: '病人采血时间曲线',
+      component: PatCxsjLine
     }
   ]
 })

+ 9 - 0
src/utils/datetime.js

@@ -15,6 +15,15 @@ export default{
         var month = date.getMonth() + 1;
         var day = date.getDate();
         return year + '-' + this.formatTen(month) + '-' + this.formatTen(day)
+    },
+    formatDateTimeFull(date) {
+        var year = date.getFullYear();
+        var month = date.getMonth() + 1;
+        var day = date.getDate();
+        var hour = date.getHours();
+        var minute = date.getMinutes();
+        var seconds = date.getSeconds();
+        return year + '-' + this.formatTen(month) + '-' + this.formatTen(day) + ' '+ this.formatTen(hour) + ':'+ this.formatTen(minute)+ ':'+ this.formatTen(seconds);
     }
 }
 

+ 1 - 0
src/utils/recheck.js

@@ -15,6 +15,7 @@ export default{
     },
     checkPhone(val){
         var reg1 = /^1[3456789]d{9}$/
+        var reg1 = /^1\d{10}$/
         return reg1.test(val)
     }
 }