Browse Source

Merge branch '20200710_pc_vue_new_branch' of http://git.shengws.com/csx/Vue_New into 20200710_pc_vue_new_branch

XMLWAN 4 years ago
parent
commit
01b454b704

+ 30 - 11
package-lock.json View File

4740
         "ansi-regex": {
4740
         "ansi-regex": {
4741
           "version": "2.1.1",
4741
           "version": "2.1.1",
4742
           "bundled": true,
4742
           "bundled": true,
4743
-          "dev": true
4743
+          "dev": true,
4744
+          "optional": true
4744
         },
4745
         },
4745
         "aproba": {
4746
         "aproba": {
4746
           "version": "1.2.0",
4747
           "version": "1.2.0",
4763
         "balanced-match": {
4764
         "balanced-match": {
4764
           "version": "1.0.0",
4765
           "version": "1.0.0",
4765
           "bundled": true,
4766
           "bundled": true,
4766
-          "dev": true
4767
+          "dev": true,
4768
+          "optional": true
4767
         },
4769
         },
4768
         "brace-expansion": {
4770
         "brace-expansion": {
4769
           "version": "1.1.11",
4771
           "version": "1.1.11",
4770
           "resolved": false,
4772
           "resolved": false,
4771
           "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
4773
           "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
4772
           "dev": true,
4774
           "dev": true,
4775
+          "optional": true,
4773
           "requires": {
4776
           "requires": {
4774
             "balanced-match": "^1.0.0",
4777
             "balanced-match": "^1.0.0",
4775
             "concat-map": "0.0.1"
4778
             "concat-map": "0.0.1"
4785
         "code-point-at": {
4788
         "code-point-at": {
4786
           "version": "1.1.0",
4789
           "version": "1.1.0",
4787
           "bundled": true,
4790
           "bundled": true,
4788
-          "dev": true
4791
+          "dev": true,
4792
+          "optional": true
4789
         },
4793
         },
4790
         "concat-map": {
4794
         "concat-map": {
4791
           "version": "0.0.1",
4795
           "version": "0.0.1",
4792
           "resolved": false,
4796
           "resolved": false,
4793
           "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
4797
           "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
4794
-          "dev": true
4798
+          "dev": true,
4799
+          "optional": true
4795
         },
4800
         },
4796
         "console-control-strings": {
4801
         "console-control-strings": {
4797
           "version": "1.1.0",
4802
           "version": "1.1.0",
4798
           "resolved": false,
4803
           "resolved": false,
4799
           "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
4804
           "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
4800
-          "dev": true
4805
+          "dev": true,
4806
+          "optional": true
4801
         },
4807
         },
4802
         "core-util-is": {
4808
         "core-util-is": {
4803
           "version": "1.0.2",
4809
           "version": "1.0.2",
4927
         "inherits": {
4933
         "inherits": {
4928
           "version": "2.0.3",
4934
           "version": "2.0.3",
4929
           "bundled": true,
4935
           "bundled": true,
4930
-          "dev": true
4936
+          "dev": true,
4937
+          "optional": true
4931
         },
4938
         },
4932
         "ini": {
4939
         "ini": {
4933
           "version": "1.3.5",
4940
           "version": "1.3.5",
4941
           "resolved": false,
4948
           "resolved": false,
4942
           "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
4949
           "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
4943
           "dev": true,
4950
           "dev": true,
4951
+          "optional": true,
4944
           "requires": {
4952
           "requires": {
4945
             "number-is-nan": "^1.0.0"
4953
             "number-is-nan": "^1.0.0"
4946
           }
4954
           }
4957
           "resolved": false,
4965
           "resolved": false,
4958
           "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
4966
           "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
4959
           "dev": true,
4967
           "dev": true,
4968
+          "optional": true,
4960
           "requires": {
4969
           "requires": {
4961
             "brace-expansion": "^1.1.7"
4970
             "brace-expansion": "^1.1.7"
4962
           }
4971
           }
4964
         "minimist": {
4973
         "minimist": {
4965
           "version": "0.0.8",
4974
           "version": "0.0.8",
4966
           "bundled": true,
4975
           "bundled": true,
4967
-          "dev": true
4976
+          "dev": true,
4977
+          "optional": true
4968
         },
4978
         },
4969
         "minipass": {
4979
         "minipass": {
4970
           "version": "2.3.5",
4980
           "version": "2.3.5",
4971
           "resolved": false,
4981
           "resolved": false,
4972
           "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==",
4982
           "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==",
4973
           "dev": true,
4983
           "dev": true,
4984
+          "optional": true,
4974
           "requires": {
4985
           "requires": {
4975
             "safe-buffer": "^5.1.2",
4986
             "safe-buffer": "^5.1.2",
4976
             "yallist": "^3.0.0"
4987
             "yallist": "^3.0.0"
4991
           "resolved": false,
5002
           "resolved": false,
4992
           "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
5003
           "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
4993
           "dev": true,
5004
           "dev": true,
5005
+          "optional": true,
4994
           "requires": {
5006
           "requires": {
4995
             "minimist": "0.0.8"
5007
             "minimist": "0.0.8"
4996
           }
5008
           }
5078
         "number-is-nan": {
5090
         "number-is-nan": {
5079
           "version": "1.0.1",
5091
           "version": "1.0.1",
5080
           "bundled": true,
5092
           "bundled": true,
5081
-          "dev": true
5093
+          "dev": true,
5094
+          "optional": true
5082
         },
5095
         },
5083
         "object-assign": {
5096
         "object-assign": {
5084
           "version": "4.1.1",
5097
           "version": "4.1.1",
5092
           "resolved": false,
5105
           "resolved": false,
5093
           "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
5106
           "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
5094
           "dev": true,
5107
           "dev": true,
5108
+          "optional": true,
5095
           "requires": {
5109
           "requires": {
5096
             "wrappy": "1"
5110
             "wrappy": "1"
5097
           }
5111
           }
5186
         "safe-buffer": {
5200
         "safe-buffer": {
5187
           "version": "5.1.2",
5201
           "version": "5.1.2",
5188
           "bundled": true,
5202
           "bundled": true,
5189
-          "dev": true
5203
+          "dev": true,
5204
+          "optional": true
5190
         },
5205
         },
5191
         "safer-buffer": {
5206
         "safer-buffer": {
5192
           "version": "2.1.2",
5207
           "version": "2.1.2",
5228
           "resolved": false,
5243
           "resolved": false,
5229
           "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
5244
           "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
5230
           "dev": true,
5245
           "dev": true,
5246
+          "optional": true,
5231
           "requires": {
5247
           "requires": {
5232
             "code-point-at": "^1.0.0",
5248
             "code-point-at": "^1.0.0",
5233
             "is-fullwidth-code-point": "^1.0.0",
5249
             "is-fullwidth-code-point": "^1.0.0",
5249
           "resolved": false,
5265
           "resolved": false,
5250
           "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
5266
           "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
5251
           "dev": true,
5267
           "dev": true,
5268
+          "optional": true,
5252
           "requires": {
5269
           "requires": {
5253
             "ansi-regex": "^2.0.0"
5270
             "ansi-regex": "^2.0.0"
5254
           }
5271
           }
5296
         "wrappy": {
5313
         "wrappy": {
5297
           "version": "1.0.2",
5314
           "version": "1.0.2",
5298
           "bundled": true,
5315
           "bundled": true,
5299
-          "dev": true
5316
+          "dev": true,
5317
+          "optional": true
5300
         },
5318
         },
5301
         "yallist": {
5319
         "yallist": {
5302
           "version": "3.0.3",
5320
           "version": "3.0.3",
5303
           "resolved": false,
5321
           "resolved": false,
5304
           "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==",
5322
           "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==",
5305
-          "dev": true
5323
+          "dev": true,
5324
+          "optional": true
5306
         }
5325
         }
5307
       }
5326
       }
5308
     },
5327
     },

+ 3 - 0
src/xt_pages/qcd/basicInformationAnalysis.vue View File

742
 <style lang="scss">
742
 <style lang="scss">
743
 .infoBox {
743
 .infoBox {
744
   .infoOne {
744
   .infoOne {
745
+    .el-progress-bar__outer{
746
+      height:10px !important;
747
+    }
745
     .borderBox {
748
     .borderBox {
746
       .el-progress-bar__inner {
749
       .el-progress-bar__inner {
747
         background: linear-gradient(
750
         background: linear-gradient(

+ 262 - 0
src/xt_pages/qcd/components/LineChart1.vue View File

1
+<template>
2
+  <div :class="className" :style="{height:height,width:width}"></div>
3
+</template>
4
+
5
+<script>
6
+import echarts from "echarts";
7
+require("echarts/theme/macarons"); // echarts theme
8
+import { debounce } from "@/utils";
9
+
10
+export default {
11
+  props: {
12
+    className: {
13
+      type: String,
14
+      default: "chart"
15
+    },
16
+    width: {
17
+      type: String,
18
+      default: "100%"
19
+    },
20
+    height: {
21
+      type: String,
22
+      default: "230px"
23
+    },
24
+    autoResize: {
25
+      type: Boolean,
26
+      default: true
27
+    },
28
+    chartData: {
29
+      type: Object
30
+    },
31
+    title: {
32
+      type: String,
33
+      default: "chart"
34
+    },
35
+    options: {
36
+      type: Object,
37
+      default: function() {
38
+        return {};
39
+      }
40
+    }
41
+  },
42
+  data() {
43
+    return {
44
+      chart: null,
45
+      chartOptions: {
46
+        xAxis: [],
47
+        legend: [],
48
+        series: []
49
+      }
50
+    };
51
+  },
52
+  mounted() {
53
+    this.initChart();
54
+    if (this.autoResize) {
55
+      this.__resizeHanlder = debounce(() => {
56
+        if (this.chart) {
57
+          this.chart.resize();
58
+        }
59
+      }, 100);
60
+      window.addEventListener("resize", this.__resizeHanlder);
61
+    }
62
+
63
+    // 监听侧边栏的变化
64
+    const sidebarElm = document.getElementsByClassName("sidebar-container")[0];
65
+    sidebarElm.addEventListener("transitionend", this.__resizeHanlder);
66
+  },
67
+  beforeDestroy() {
68
+    if (!this.chart) {
69
+      return;
70
+    }
71
+    if (this.autoResize) {
72
+      window.removeEventListener("resize", this.__resizeHanlder);
73
+    }
74
+
75
+    const sidebarElm = document.getElementsByClassName("sidebar-container")[0];
76
+    sidebarElm.removeEventListener("transitionend", this.__resizeHanlder);
77
+
78
+    this.chart.dispose();
79
+    this.chart = null;
80
+  },
81
+  watch: {
82
+    // options: function(a) {
83
+    //   console.log(a)
84
+    //   this.chartOptions = this.options;
85
+    //   this.initChart();
86
+    //   this.__resizeHanlder = debounce(() => {
87
+    //     if (this.chart) {
88
+    //       this.chart.resize();
89
+    //     }
90
+    //   }, 100);
91
+    //   window.addEventListener("resize", this.__resizeHanlder);
92
+    // },
93
+    options:{
94
+      handler(newValue,oldValue){
95
+        this.getInitChart();
96
+      },
97
+      deep:true
98
+    },
99
+
100
+    chartData: {
101
+      deep: true,
102
+      handler(val) {
103
+        this.setOptions(val);
104
+      }
105
+    }
106
+  },
107
+  created() {
108
+    this.chartOptions = this.options;
109
+    // console.log("this.chartOptions", this.chartOptions, this.options);
110
+  },
111
+  methods: {
112
+    getInitChart() {
113
+      this.chartOptions = this.options;
114
+      this.initChart();
115
+      this.__resizeHanlder = debounce(() => {
116
+        if (this.chart) {
117
+          this.chart.resize();
118
+        }
119
+      }, 100);
120
+      window.addEventListener("resize", this.__resizeHanlder);
121
+    },
122
+    // setOptions({ expectedData, actualData } = {}) {
123
+    //   this.chart.setOption({
124
+    //     title: {
125
+    //         text: this.title,
126
+    //     },
127
+    //     xAxis: {
128
+    //       data: this.chartOptions.xAxis,
129
+    //       boundaryGap: false,
130
+    //       axisTick: {
131
+    //         show: false
132
+    //       }
133
+    //     },
134
+    //     grid: {
135
+    //       left: 50,
136
+    //       right: 50,
137
+    //       bottom: 20,
138
+    //       top: 30,
139
+    //       containLabel: true
140
+    //     },
141
+    //     tooltip: {
142
+    //       trigger: 'axis',
143
+    //       axisPointer: {
144
+    //         type: 'cross'
145
+    //       },
146
+    //       padding: [5, 10]
147
+    //     },
148
+    //     yAxis: {
149
+    //       axisTick: {
150
+    //         show: false
151
+    //       }
152
+    //     },
153
+    //     legend: {
154
+    //       data: this.chartOptions.legend,
155
+    //     },
156
+    //     series: this.chartOptions.series,
157
+    //   })
158
+    // },
159
+    setOptions({ expectedData, actualData } = {}) {
160
+      this.chart.setOption({
161
+        // title: {
162
+        //   text: this.title
163
+        // },
164
+        xAxis: {
165
+          data: this.chartOptions.xAxis.data,
166
+          // boundaryGap: false
167
+          axisTick: {
168
+            show: true
169
+          },
170
+          axisLine: {
171
+            lineStyle: {
172
+              color: "#E5E5E5" //x轴颜色
173
+            }
174
+          },
175
+          axisLabel: {
176
+            interval: 0,
177
+            formatter: function(value) {
178
+              var ret = ""; //拼接加\n返回的类目项
179
+              var maxLength = 10; //每项显示文字个数
180
+              var valLength = value.length; //X轴类目项的文字个数
181
+              var rowN = Math.ceil(valLength / maxLength); //类目项需要换行的行数
182
+              if (rowN > 1) {
183
+                //如果类目项的文字大于3,
184
+                for (var i = 0; i < rowN; i++) {
185
+                  var temp = ""; //每次截取的字符串
186
+                  var start = i * maxLength; //开始截取的位置
187
+                  var end = start + maxLength; //结束截取的位置
188
+                  //这里也可以加一个是否是最后一行的判断,但是不加也没有影响,那就不加吧
189
+                  temp = value.substring(start, end) + "\n";
190
+                  ret += temp; //凭借最终的字符串
191
+                }
192
+                return ret;
193
+              } else {
194
+                return value;
195
+              }
196
+            },
197
+            textStyle: {
198
+              color:"#2F3133"
199
+            }
200
+          }
201
+        },
202
+        grid: {
203
+          left: 0,
204
+          right: 50,
205
+          bottom: 10,
206
+          top: 30,
207
+          containLabel: true
208
+        },
209
+        tooltip: {
210
+          trigger: "axis",
211
+          axisPointer: {
212
+            type: "cross"
213
+          },
214
+          padding: [5, 10]
215
+        },
216
+        yAxis: {
217
+          axisTick: {
218
+            show: true
219
+          },
220
+          axisLine: {
221
+            lineStyle: {
222
+              color: "#E5E5E5" //y轴颜色
223
+            },
224
+          },
225
+          axisLabel: {
226
+            textStyle: {
227
+              color:"#2F3133"
228
+            }
229
+          },
230
+          max:2
231
+        },
232
+        // dataZoom: [
233
+        //   {
234
+        //     //Y轴固定,让内容滚动
235
+        //     type: "slider",
236
+        //     show: false,
237
+        //     xAxisIndex: [0],
238
+        //     start: 1,
239
+        //     end: 80, //设置X轴刻度之间的间隔(根据数据量来调整)
240
+        //     zoomLock: true //锁定区域禁止缩放(鼠标滚动会缩放,所以禁止)
241
+        //   },
242
+        //   {
243
+        //     type: "inside",
244
+        //     xAxisIndex: [0],
245
+        //     start: 1,
246
+        //     end: 80,
247
+        //     zoomLock: true //锁定区域禁止缩放
248
+        //   }
249
+        // ],
250
+        legend: this.chartOptions.legend,
251
+        series: this.chartOptions.series,
252
+        dataZoom: this.chartOptions.dataZoom,
253
+      });
254
+    },
255
+    initChart() {
256
+      this.chart = echarts.init(this.$el, "macarons");
257
+      this.chart.clear();
258
+      this.setOptions(this.chartData);
259
+    }
260
+  }
261
+};
262
+</script>

+ 13 - 6
src/xt_pages/qcd/indicatorControlAnalysis/bloodPressure.vue View File

17
                 :trigger-on-focus="false"
17
                 :trigger-on-focus="false"
18
                 placeholder="请输入病人名字"
18
                 placeholder="请输入病人名字"
19
                 @select="handleSelect"
19
                 @select="handleSelect"
20
+                style="width:160px;"
20
               >
21
               >
21
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <template slot-scope="{ item }">
23
                 <template slot-scope="{ item }">
67
           ></el-date-picker>
68
           ></el-date-picker>
68
         </div>
69
         </div>
69
         <el-container>
70
         <el-container>
70
-          <div style="width:150px">
71
+          <div style="width:160px">
71
             <div class="tableTitle">患者列表</div>
72
             <div class="tableTitle">患者列表</div>
72
-            <div class="tableTitle">当前患者: {{patient_name}}</div>
73
+            
73
 
74
 
74
             <el-table :data="patientsData" ref="table" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
75
             <el-table :data="patientsData" ref="table" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
75
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
76
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
76
                       highlight-current-row
77
                       highlight-current-row
77
                       @current-change="handleChange">
78
                       @current-change="handleChange">
78
-              <el-table-column prop="dialysis_no" label="透析号" width="80">
79
+              <el-table-column prop="dialysis_no" label="透析号" width="70" align="center"> 
79
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
80
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
80
               </el-table-column>
81
               </el-table-column>
81
-              <el-table-column prop="name" label="姓名" width="80">
82
+              <el-table-column prop="name" label="姓名" width="90" align="center">
82
                 <template slot-scope="scope">{{ scope.row.name }}</template>
83
                 <template slot-scope="scope">{{ scope.row.name }}</template>
83
               </el-table-column>
84
               </el-table-column>
84
             </el-table>
85
             </el-table>
85
           </div>
86
           </div>
86
           <div style="padding-left:10px;flex:1">
87
           <div style="padding-left:10px;flex:1">
87
-            <div class="tableTitle">指标趋势</div>
88
+            <div class="tableTitle">指标趋势<span style="font-weight:normal">&nbsp;&nbsp;(当前患者: {{patient_name}})</span></div>
88
             <div>
89
             <div>
89
               <line-chart :options="bar"></line-chart>
90
               <line-chart :options="bar"></line-chart>
90
 
91
 
142
                       @click.native.prevent="jumpDetail(scope.row.patient.id)"
143
                       @click.native.prevent="jumpDetail(scope.row.patient.id)"
143
                       type="text"
144
                       type="text"
144
                       size="small"
145
                       size="small"
146
+                      style="font-size:14px;"
145
                     >详情</el-button>
147
                     >详情</el-button>
146
                   </template>
148
                   </template>
147
                 </el-table-column>
149
                 </el-table-column>
294
                       { offset: 1, color: colorList[index][1] }
296
                       { offset: 1, color: colorList[index][1] }
295
                     ])
297
                     ])
296
                   },
298
                   },
299
+                  lineStyle:{ 
300
+                    color:'#409eff' //改变折线颜色
301
+                  },
297
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
302
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
298
                 },
303
                 },
299
 
304
 
599
 </style>
604
 </style>
600
 <style lang="scss">
605
 <style lang="scss">
601
   .page_process {
606
   .page_process {
602
-
607
+    .el-tabs{
608
+      margin-bottom:0px !important;
609
+    }
603
     .el-button--medium {
610
     .el-button--medium {
604
       padding: 10px 8px;
611
       padding: 10px 8px;
605
     }
612
     }

+ 23 - 23
src/xt_pages/qcd/indicatorControlAnalysis/bloodPressureDetails.vue View File

17
                 :trigger-on-focus="false"
17
                 :trigger-on-focus="false"
18
                 placeholder="请输入病人名字"
18
                 placeholder="请输入病人名字"
19
                 @select="handleSelect"
19
                 @select="handleSelect"
20
+                style="width:160px;"
20
               >
21
               >
21
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <template slot-scope="{ item }">
23
                 <template slot-scope="{ item }">
25
               </el-autocomplete>
26
               </el-autocomplete>
26
             </el-form-item>
27
             </el-form-item>
27
           </el-form>
28
           </el-form>
28
-        </div>
29
-        <el-container>
30
-          <div style="width:150px">
31
-            <div class="tableTitle">患者列表</div>
32
-            <div class="tableTitle">当前患者: {{patient_name}}</div>
33
-
34
-            <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
35
-                      :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
36
-                      highlight-current-row
37
-                      @current-change="handleChange">
38
-              <el-table-column prop="dialysis_no" label="透析号" width="80">
39
-                <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
40
-              </el-table-column>
41
-              <el-table-column prop="name" label="姓名" width="80">
42
-                <template slot-scope="scope">{{ scope.row.name }}</template>
43
-              </el-table-column>
44
-            </el-table>
45
-
46
-          </div>
47
-          <div class="containerRight" style="flex:1;overflow: hidden">
48
-            <div class="cell clearfix">
49
               <label class="title" style="text-align:left">
29
               <label class="title" style="text-align:left">
50
                 <span class="name">血压阶段</span> :
30
                 <span class="name">血压阶段</span> :
51
               </label>
31
               </label>
88
                 format="yyyy-MM-dd"
68
                 format="yyyy-MM-dd"
89
                 value-format="yyyy-MM-dd"
69
                 value-format="yyyy-MM-dd"
90
               ></el-date-picker>
70
               ></el-date-picker>
91
-            </div>
92
-            <div class="tableTitle">指标趋势</div>
71
+        </div>
72
+        <el-container>
73
+          <div style="width:160px">
74
+            <div class="tableTitle">患者列表</div>
75
+            
76
+
77
+            <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
78
+                      :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
79
+                      highlight-current-row
80
+                      @current-change="handleChange">
81
+              <el-table-column prop="dialysis_no" label="透析号" width="70">
82
+                <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
83
+              </el-table-column>
84
+              <el-table-column prop="name" label="姓名" width="90">
85
+                <template slot-scope="scope">{{ scope.row.name }}</template>
86
+              </el-table-column>
87
+            </el-table>
88
+
89
+          </div>
90
+          <div class="containerRight" style="flex:1;overflow: hidden">
91
+            
92
+            <div class="tableTitle">指标趋势<span style="font-weight:normal">&nbsp;&nbsp;(当前患者: {{patient_name}})</span></div>
93
             <div>
93
             <div>
94
               <line-chart :options="chart"></line-chart>
94
               <line-chart :options="chart"></line-chart>
95
             </div>
95
             </div>

+ 12 - 6
src/xt_pages/qcd/indicatorControlAnalysis/components/office.vue View File

72
     </div>
72
     </div>
73
     <div class="tableTitle">统计表</div>
73
     <div class="tableTitle">统计表</div>
74
     <div>
74
     <div>
75
-      <el-table :data="tableData" style="width: 100%" border>
75
+      <el-table :data="tableData" style="width: 100%" border :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}">
76
         <el-table-column label="姓名" align="center">
76
         <el-table-column label="姓名" align="center">
77
           <template slot-scope="scope">
77
           <template slot-scope="scope">
78
             {{scope.row.patient.name}}
78
             {{scope.row.patient.name}}
101
               @click.native.prevent="jumpDetail(scope.row)"
101
               @click.native.prevent="jumpDetail(scope.row)"
102
               type="text"
102
               type="text"
103
               size="small"
103
               size="small"
104
+              style="font-size:14px;"
104
             >详情
105
             >详情
105
             </el-button>
106
             </el-button>
106
           </template>
107
           </template>
225
                 normal: {
226
                 normal: {
226
                   color: function(params) {
227
                   color: function(params) {
227
                     //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
228
                     //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
228
-                    var colorList = ['#A9E0F3', '#9FBDFC']
229
+                    var colorList = [
230
+                    ["#A9E0F3", "#9FBDFC"],
229
 
231
 
230
-                    // var index = params.dataIndex;
231
-                    // if (params.dataIndex >= colorList.length) {
232
-                    //   index = params.dataIndex % colorList.length;
233
-                    // }
232
+                    ["#FFD7C0", "#FF9994"],
233
+                    ["#D7C3FD", "#B3A8F7"],
234
+                  ];
235
+
236
+                    var index = params.dataIndex;
237
+                    if (params.dataIndex >= colorList.length) {
238
+                      index = params.dataIndex % colorList.length;
239
+                    }
234
 
240
 
235
                     return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
241
                     return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
236
                       { offset: 0, color: colorList[0] },
242
                       { offset: 0, color: colorList[0] },

+ 15 - 10
src/xt_pages/qcd/indicatorControlAnalysis/components/personal.vue View File

11
             :trigger-on-focus="false"
11
             :trigger-on-focus="false"
12
             placeholder="请输入病人名字"
12
             placeholder="请输入病人名字"
13
             @select="handleSelect"
13
             @select="handleSelect"
14
+            style="width:160px;"
14
           >
15
           >
15
             <i class="el-icon-search el-input__icon" slot="suffix"></i>
16
             <i class="el-icon-search el-input__icon" slot="suffix"></i>
16
             <template slot-scope="{ item }">
17
             <template slot-scope="{ item }">
20
 
21
 
21
         </el-form-item>
22
         </el-form-item>
22
       </el-form>
23
       </el-form>
23
-      <el-select v-model="query.project_id" placeholder="请选择" style="width:120px;margin-right:20px"
24
+      <el-select v-model="query.project_id" placeholder="请选择" style="width:120px;margin-right:10px"
24
                  @change="changeProject">
25
                  @change="changeProject">
25
         <el-option
26
         <el-option
26
           v-for="item in project_columns"
27
           v-for="item in project_columns"
33
       <el-select
34
       <el-select
34
         v-model="query.item_id"
35
         v-model="query.item_id"
35
         placeholder="请选择"
36
         placeholder="请选择"
36
-        style="width:120px;margin-right:20px"
37
+        style="width:120px;margin-right:10px"
37
         @change="changeItem"
38
         @change="changeItem"
38
       >
39
       >
39
         <el-option
40
         <el-option
86
       ></el-date-picker>
87
       ></el-date-picker>
87
     </div>
88
     </div>
88
     <el-container>
89
     <el-container>
89
-      <div style="width:150px">
90
+      <div style="width:160px">
90
 
91
 
91
-        <div class="tableTitle">患者列表  <div class="tableTitle">当前患者:{{patient_name}}</div></div>
92
+        <div class="tableTitle">患者列表</div>
92
         <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
93
         <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
93
                   :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
94
                   :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
94
                   highlight-current-row
95
                   highlight-current-row
95
                   @current-change="handleChange">
96
                   @current-change="handleChange">
96
-          <el-table-column prop="dialysis_no" label="透析号" width="80">
97
+          <el-table-column prop="dialysis_no" label="透析号" width="70">
97
             <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
98
             <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
98
           </el-table-column>
99
           </el-table-column>
99
-          <el-table-column prop="name" label="姓名" width="80">
100
+          <el-table-column prop="name" label="姓名" width="90">
100
             <template slot-scope="scope">{{ scope.row.name }}</template>
101
             <template slot-scope="scope">{{ scope.row.name }}</template>
101
           </el-table-column>
102
           </el-table-column>
102
         </el-table>
103
         </el-table>
103
       </div>
104
       </div>
104
       <div style="padding-left:10px;flex:1">
105
       <div style="padding-left:10px;flex:1">
105
-        <div class="tableTitle">统计图</div>
106
+        <div class="tableTitle" style="magrin-bottom:0;">统计图<span style="font-weight:normal">&nbsp;&nbsp;(当前患者:{{patient_name}})</span></div>
106
         <div>
107
         <div>
107
           <line-chart :options="options"></line-chart>
108
           <line-chart :options="options"></line-chart>
108
         </div>
109
         </div>
327
                   color: function(params) {
328
                   color: function(params) {
328
                     //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
329
                     //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
329
                     var colorList = [
330
                     var colorList = [
330
-                      ['#A9E0F3', '#9FBDFC'],
331
+                      ["#A9E0F3", "#9FBDFC"],
331
 
332
 
332
-                      ['#FFD7C0', '#FF9994']
333
-                    ]
333
+                      ["#FFD7C0", "#FF9994"],
334
+                      ["#D7C3FD", "#B3A8F7"],
335
+                    ];
334
 
336
 
335
                     var index = params.dataIndex
337
                     var index = params.dataIndex
336
                     if (params.dataIndex >= colorList.length) {
338
                     if (params.dataIndex >= colorList.length) {
343
                       { offset: 1, color: colorList[index][1] }
345
                       { offset: 1, color: colorList[index][1] }
344
                     ])
346
                     ])
345
                   },
347
                   },
348
+                  lineStyle:{ 
349
+                    color:'#409eff' //改变折线颜色
350
+                  }, 
346
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
351
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
347
                 },
352
                 },
348
 
353
 

+ 11 - 7
src/xt_pages/qcd/indicatorControlAnalysis/monitor.vue View File

17
                 :trigger-on-focus="false"
17
                 :trigger-on-focus="false"
18
                 placeholder="请输入病人名字"
18
                 placeholder="请输入病人名字"
19
                 @select="handleSelect"
19
                 @select="handleSelect"
20
+                style="width:160px"
20
               >
21
               >
21
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <template slot-scope="{ item }">
23
                 <template slot-scope="{ item }">
67
           ></el-date-picker>
68
           ></el-date-picker>
68
         </div>
69
         </div>
69
         <el-container>
70
         <el-container>
70
-          <div style="width:150px">
71
+          <div style="width:160px">
71
             <div class="tableTitle">患者列表</div>
72
             <div class="tableTitle">患者列表</div>
72
-            <div class="tableTitle">当前患者: {{patient_name}}</div>
73
+            
73
 
74
 
74
             <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
75
             <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
75
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
76
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
76
                       highlight-current-row
77
                       highlight-current-row
77
                       @current-change="handleChange">
78
                       @current-change="handleChange">
78
-              <el-table-column prop="dialysis_no" label="透析号" width="80">
79
+              <el-table-column prop="dialysis_no" label="透析号" width="70" align="center">
79
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
80
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
80
               </el-table-column>
81
               </el-table-column>
81
-              <el-table-column prop="name" label="姓名" width="80">
82
+              <el-table-column prop="name" label="姓名" width="90" align="center">
82
                 <template slot-scope="scope">{{ scope.row.name }}</template>
83
                 <template slot-scope="scope">{{ scope.row.name }}</template>
83
               </el-table-column>
84
               </el-table-column>
84
             </el-table>
85
             </el-table>
85
           </div>
86
           </div>
86
           <div style="padding-left:10px;flex:1;width:0;">
87
           <div style="padding-left:10px;flex:1;width:0;">
87
-            <div class="tableTitle">指标趋势</div>
88
+            <div class="tableTitle">指标趋势<span style="font-weight:normal">&nbsp;&nbsp;(当前患者: {{patient_name}})</span></div>
88
             <div>
89
             <div>
89
               <line-chart :options="chart"></line-chart>
90
               <line-chart :options="chart"></line-chart>
90
             </div>
91
             </div>
320
                       { offset: 1, color: colorList[index][1] }
321
                       { offset: 1, color: colorList[index][1] }
321
                     ])
322
                     ])
322
                   },
323
                   },
324
+                  lineStyle:{ 
325
+                    color:'#409eff' //改变折线颜色
326
+                  },
323
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
327
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
324
                 },
328
                 },
325
 
329
 
327
                 emphasis: {
331
                 emphasis: {
328
                   shadowBlur: 10,
332
                   shadowBlur: 10,
329
                   shadowOffsetX: 0,
333
                   shadowOffsetX: 0,
330
-                  shadowColor: 'rgba(0, 0, 0, 0.5)'
334
+                  shadowColor: 'rgba(0, 0, 0, 0.2)'
331
                 }
335
                 }
332
               }
336
               }
333
             }
337
             }
395
                 emphasis: {
399
                 emphasis: {
396
                   shadowBlur: 10,
400
                   shadowBlur: 10,
397
                   shadowOffsetX: 0,
401
                   shadowOffsetX: 0,
398
-                  shadowColor: 'rgba(0, 0, 0, 0.5)'
402
+                  shadowColor: 'rgba(0, 0, 0, 0.2)'
399
                 }
403
                 }
400
               }
404
               }
401
             }
405
             }

+ 96 - 103
src/xt_pages/qcd/indicatorControlAnalysis/patientInspectionDetail.vue View File

4
       <bread-crumb :crumbs="crumbs"></bread-crumb>
4
       <bread-crumb :crumbs="crumbs"></bread-crumb>
5
       <el-button type="primary" @click="$router.back(-1)">返回</el-button>
5
       <el-button type="primary" @click="$router.back(-1)">返回</el-button>
6
     </div>
6
     </div>
7
-    <div class="app-container">
7
+    <div class="app-container pageInspection">
8
 
8
 
9
       <div class="cell clearfix">
9
       <div class="cell clearfix">
10
         <label class="title">
10
         <label class="title">
11
           <span class="name">病人搜索</span> :
11
           <span class="name">病人搜索</span> :
12
         </label>
12
         </label>
13
-        <div >
14
-
15
-          <el-form :inline="true">
16
-            <el-form-item label>
17
-              <el-autocomplete
18
-                class="checkSearch"
19
-                style="margin-top: 20px;"
20
-                popper-class="my-autocomplete"
21
-                v-model="search_value"
22
-                :fetch-suggestions="querySearchAsync"
23
-                :trigger-on-focus="false"
24
-                placeholder="请输入病人名字"
25
-                @select="handleSelect"
26
-              >
27
-                <i class="el-icon-search el-input__icon" slot="suffix"></i>
28
-                <template slot-scope="{ item }">
29
-                  <div class="name">{{ item.name }}</div>
30
-                </template>
31
-              </el-autocomplete>
32
-            </el-form-item>
33
-          </el-form>
34
-        </div>
13
+        <el-form :inline="true">
14
+          <el-form-item label>
15
+            <el-autocomplete
16
+              class="checkSearch"
17
+              popper-class="my-autocomplete"
18
+              v-model="search_value"
19
+              :fetch-suggestions="querySearchAsync"
20
+              :trigger-on-focus="false"
21
+              placeholder="请输入病人名字"
22
+              @select="handleSelect"
23
+            >
24
+              <i class="el-icon-search el-input__icon" slot="suffix"></i>
25
+              <template slot-scope="{ item }">
26
+                <div class="name">{{ item.name }}</div>
27
+              </template>
28
+            </el-autocomplete>
29
+          </el-form-item>
30
+        </el-form>
35
 
31
 
36
       </div>
32
       </div>
37
 
33
 
82
         ></el-date-picker>
78
         ></el-date-picker>
83
       </div>
79
       </div>
84
       <el-container>
80
       <el-container>
85
-        <div style="width:150px">
81
+        <div style="width:160px">
86
           <div class="tableTitle">患者列表</div>
82
           <div class="tableTitle">患者列表</div>
87
-          <div class="tableTitle">当前患者: {{patient_name}}</div>
83
+          
88
 
84
 
89
           <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500"
85
           <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500"
90
                     :row-style="{ color: '#303133' }"
86
                     :row-style="{ color: '#303133' }"
91
                     :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
87
                     :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
92
                     highlight-current-row
88
                     highlight-current-row
93
                     @current-change="handleChange">
89
                     @current-change="handleChange">
94
-            <el-table-column prop="dialysis_no" label="透析号" width="80">
90
+            <el-table-column prop="dialysis_no" label="透析号" width="70" align="center">
95
               <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
91
               <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
96
             </el-table-column>
92
             </el-table-column>
97
-            <el-table-column prop="name" label="姓名" width="80">
93
+            <el-table-column prop="name" label="姓名" width="90" align="center">
98
               <template slot-scope="scope">{{ scope.row.name }}</template>
94
               <template slot-scope="scope">{{ scope.row.name }}</template>
99
             </el-table-column>
95
             </el-table-column>
100
           </el-table>
96
           </el-table>
101
 
97
 
102
         </div>
98
         </div>
103
         <div style="padding-left:10px;flex:1">
99
         <div style="padding-left:10px;flex:1">
104
-          <div class="tableTitle">统计图</div>
100
+          <div class="tableTitle">统计图<span style="font-weight:normal">&nbsp;&nbsp;(当前患者: {{patient_name}})</span></div>
105
           <div>
101
           <div>
106
             <!--<line-chart :options="options2"></line-chart>-->
102
             <!--<line-chart :options="options2"></line-chart>-->
107
             <line-chart v-if="this.$route.query.range_type == 1" :options="options"></line-chart>
103
             <line-chart v-if="this.$route.query.range_type == 1" :options="options"></line-chart>
108
-            <line-chart v-if="this.$route.query.range_type == 2" :options="options2"></line-chart>
104
+            <line-chart1 v-if="this.$route.query.range_type == 2" :options="options2"></line-chart1>
109
 
105
 
110
 
106
 
111
 
107
 
122
   const moment = require('moment')
118
   const moment = require('moment')
123
   import echarts from 'echarts'
119
   import echarts from 'echarts'
124
   import LineChart from '../../qcd/components/LineChart'
120
   import LineChart from '../../qcd/components/LineChart'
121
+  import LineChart1 from '../../qcd/components/LineChart1'
125
   import { uParseTime } from '@/utils/tools'
122
   import { uParseTime } from '@/utils/tools'
126
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
123
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
127
   import { getCurrentOrgPatients } from '@/api/common/common'
124
   import { getCurrentOrgPatients } from '@/api/common/common'
140
     name: 'dialysisTotal',
137
     name: 'dialysisTotal',
141
     components: {
138
     components: {
142
       LineChart,
139
       LineChart,
140
+      LineChart1,
143
       BreadCrumb
141
       BreadCrumb
144
     },
142
     },
145
     data() {
143
     data() {
204
               name: '',
202
               name: '',
205
               type: 'line',
203
               type: 'line',
206
               data: [],
204
               data: [],
205
+              symbol: 'circle',//折线点设置为实心点
206
+              symbolSize: 15,   //折线点的大小
207
               barWidth: 30,
207
               barWidth: 30,
208
               label: {
208
               label: {
209
                 normal: {
209
                 normal: {
210
                   show: true,
210
                   show: true,
211
-                  position: 'top',
212
-                  formatter: '{c}'
211
+                  position: "top",
212
+                  formatter: (params) => {
213
+                      let str = ''
214
+                      str = this.otherData[params.dataIndex]
215
+                      return str
216
+
217
+                  }
213
                 }
218
                 }
214
               },
219
               },
215
               //配置样式
220
               //配置样式
218
 
223
 
219
                 //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
224
                 //每个柱子的颜色即为colorList数组里的每一项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组
220
                 normal: {
225
                 normal: {
221
-                  color: function(params) {
226
+                  color: (params) => {
222
                     //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
227
                     //我这边就两个柱子,大体就两个柱子颜色渐变,所以数组只有两个值,多个颜色就多个值
223
-                    var colorList = [
224
-                      ['#A9E0F3', '#9FBDFC'],
225
-
226
-                      ['#FFD7C0', '#FF9994']
227
-                    ]
228
-
229
-                    var index = params.dataIndex
230
-                    if (params.dataIndex >= colorList.length) {
231
-                      index = params.dataIndex % colorList.length
232
-                    }
233
-
234
-                    return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
235
-                      { offset: 0, color: colorList[index][0] },
236
-                      // { offset: 0.5, color: colorList[index][1] },
237
-                      { offset: 1, color: colorList[index][1] }
238
-                    ])
228
+                    var colorList = [
229
+                      ['#409EFF','#409EFF'],
230
+                      ['#f56c6c','#f56c6c']
231
+                      ];
232
+                    if(params.seriesName == this.otherData[params.dataIndex]){
233
+                      var index = 0 
234
+                    }else {
235
+                      var index = 1
236
+                    }
237
+                   
238
+
239
+                    // var index = params.dataIndex;
240
+                    // if (params.dataIndex >= colorList.length) {
241
+                    //   index = params.dataIndex % colorList.length;
242
+                    // }
243
+
244
+                    return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
245
+                      {offset: 0, color: colorList[index][0]},
246
+                      // { offset: 0.5, color: colorList[index][1] },
247
+                      {offset: 1, color: colorList[index][1]}
248
+                    ]);
249
+                  },
250
+                  lineStyle: {
251
+                    width:2,
252
+                    color: "#cccccc"//折线的颜色
239
                   },
253
                   },
240
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
254
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
241
                 },
255
                 },
244
                 emphasis: {
258
                 emphasis: {
245
                   shadowBlur: 10,
259
                   shadowBlur: 10,
246
                   shadowOffsetX: 0,
260
                   shadowOffsetX: 0,
247
-                  shadowColor: 'rgba(0, 0, 0, 0.5)'
261
+                  shadowColor: 'rgba(0, 0, 0, 0.2)'
248
                 }
262
                 }
249
               }
263
               }
250
             }
264
             }
453
           { value: 4, label: '近一年', state: 4 },
467
           { value: 4, label: '近一年', state: 4 },
454
           { value: 5, label: '自定义', state: 5 }
468
           { value: 5, label: '自定义', state: 5 }
455
         ],
469
         ],
456
-        search_value: ''
470
+        search_value: '',
471
+        otherData:[]
457
       }
472
       }
458
     },
473
     },
459
     methods: {
474
     methods: {
603
                   this.options2.xAxis.data.push(resp.data.data[i].date)
618
                   this.options2.xAxis.data.push(resp.data.data[i].date)
604
                   tempData.push(resp.data.data[i].value)
619
                   tempData.push(resp.data.data[i].value)
605
                   otherData.push(resp.data.data[i].value)
620
                   otherData.push(resp.data.data[i].value)
621
+                  this.options2.series[0].name = resp.data.references.range_value
606
                 }
622
                 }
607
               }
623
               }
608
-
624
+              this.otherData = otherData
625
+              if(this.$route.query.range_type == 1){
626
+                this.getArrLength(this.options.xAxis.data,1)
627
+              }else{
628
+                this.getArrLength(this.options2.xAxis.data,this.$route.query.range_type)
629
+              }
609
               console.log(this.options.xAxis.data)
630
               console.log(this.options.xAxis.data)
610
 
631
 
611
               console.log(this.options.series[0].data)
632
               console.log(this.options.series[0].data)
645
       }, getTimestamp(time) {
666
       }, getTimestamp(time) {
646
         // 把时间日期转成时间戳
667
         // 把时间日期转成时间戳
647
         return new Date(time).getTime() / 1000
668
         return new Date(time).getTime() / 1000
669
+      },
670
+      getArrLength(result,type){
671
+        if(type == 1){
672
+          if(result.length > 10){
673
+            var dataZoom_end = (10/result.length)*100;
674
+            this.options.dataZoom[0].end = dataZoom_end
675
+          }else{
676
+            var dataZoom_end = 100;
677
+            this.options.dataZoom[0].end = dataZoom_end
678
+          }
679
+        }else{
680
+          if(result.length > 10){
681
+            var dataZoom_end = (10/result.length)*100;
682
+            this.options2.dataZoom[0].end = dataZoom_end
683
+          }else{
684
+            var dataZoom_end = 100;
685
+            this.options2.dataZoom[0].end = dataZoom_end
686
+          }
687
+        }
688
+
648
       }
689
       }
649
 
690
 
650
     },
691
     },
777
 </style>
818
 </style>
778
 
819
 
779
 <style lang="scss">
820
 <style lang="scss">
780
-  .infoBox {
781
-
782
-  .infoOne {
783
-
784
-  .borderBox {
785
-
786
-  .el-progress-bar__inner {
787
-    background: linear-gradient(
788
-      90deg,
789
-      rgba(169, 224, 243, 1),
790
-      rgba(159, 189, 252, 1)
791
-    );
792
-  }
793
-
794
-  .el-progress-bar {
795
-    margin-right: -59px;
796
-    padding-right: 60px;
797
-  }
798
-
799
-  }
800
-  .borderBox1 {
801
-
802
-  .el-progress-bar__inner {
803
-    background: linear-gradient(
804
-      90deg,
805
-      rgba(255, 215, 192, 1),
806
-      rgba(255, 153, 148, 1)
807
-    );
808
-  }
809
-
810
-  .el-progress-bar {
811
-    margin-right: -59px;
812
-    padding-right: 60px;
821
+.pageInspection{
822
+  .el-form-item{
823
+    margin-bottom:0px !important;
813
   }
824
   }
825
+}
814
 
826
 
815
-  }
816
-  .borderBox2 {
817
-
818
-  .el-progress-bar__inner {
819
-    background: linear-gradient(
820
-      90deg,
821
-      rgba(215, 195, 253, 1),
822
-      rgba(179, 168, 247, 1)
823
-    );
824
-  }
825
-
826
-  .el-progress-bar {
827
-    margin-right: -59px;
828
-    padding-right: 60px;
829
-  }
830
-
831
-  }
832
-  }
833
-  }
834
 </style>
827
 </style>
835
 
828
 
836
 
829
 

+ 12 - 6
src/xt_pages/qcd/indicatorControlAnalysis/process.vue View File

17
                 :trigger-on-focus="false"
17
                 :trigger-on-focus="false"
18
                 placeholder="请输入病人名字"
18
                 placeholder="请输入病人名字"
19
                 @select="handleSelect"
19
                 @select="handleSelect"
20
+                style="width:160px;"
20
               >
21
               >
21
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <template slot-scope="{ item }">
23
                 <template slot-scope="{ item }">
68
           ></el-date-picker>
69
           ></el-date-picker>
69
         </div>
70
         </div>
70
         <el-container>
71
         <el-container>
71
-          <div style="width:150px">
72
+          <div style="width:160px">
72
 
73
 
73
             <div class="tableTitle">患者列表</div>
74
             <div class="tableTitle">患者列表</div>
74
-            <div class="tableTitle">当前患者: {{patient_name}}</div>
75
+            
75
 
76
 
76
             <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500"
77
             <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500"
77
                       :row-style="{ color: '#303133' }"
78
                       :row-style="{ color: '#303133' }"
78
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
79
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
79
                       highlight-current-row
80
                       highlight-current-row
80
                       @current-change="handleChange">
81
                       @current-change="handleChange">
81
-              <el-table-column prop="dialysis_no" label="透析号" width="80">
82
+              <el-table-column prop="dialysis_no" label="透析号" width="70" align="center">
82
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
83
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
83
               </el-table-column>
84
               </el-table-column>
84
-              <el-table-column prop="name" label="姓名" width="80">
85
+              <el-table-column prop="name" label="姓名" width="90" align="center">
85
                 <template slot-scope="scope">{{ scope.row.name }}</template>
86
                 <template slot-scope="scope">{{ scope.row.name }}</template>
86
               </el-table-column>
87
               </el-table-column>
87
             </el-table>
88
             </el-table>
88
           </div>
89
           </div>
89
           <div style="padding-left:10px;flex:1;width:0;">
90
           <div style="padding-left:10px;flex:1;width:0;">
90
-            <div class="tableTitle">指标趋势</div>
91
+            <div class="tableTitle">指标趋势<span style="font-weight:normal">&nbsp;&nbsp;(当前患者: {{patient_name}})</span></div>
91
             <div>
92
             <div>
92
               <line-chart :options="chart"
93
               <line-chart :options="chart"
93
                           v-if="query.statistics_type != 9 && query.statistics_type != 10"></line-chart>
94
                           v-if="query.statistics_type != 9 && query.statistics_type != 10"></line-chart>
412
                       { offset: 1, color: colorList[index][1] }
413
                       { offset: 1, color: colorList[index][1] }
413
                     ])
414
                     ])
414
                   },
415
                   },
416
+                  lineStyle:{ 
417
+                    color:'#409eff' //改变折线颜色
418
+                  },
415
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
419
                   barBorderRadius: [5, 5, 0, 0] //柱状角成椭圆形
416
                 },
420
                 },
417
 
421
 
770
 </style>
774
 </style>
771
 <style lang="scss">
775
 <style lang="scss">
772
   .page_process {
776
   .page_process {
773
-
777
+    .el-tabs{
778
+      margin-bottom:0 !important;
779
+    }
774
     .el-button--medium {
780
     .el-button--medium {
775
       padding: 10px 8px;
781
       padding: 10px 8px;
776
     }
782
     }

+ 9 - 7
src/xt_pages/qcd/indicatorControlAnalysis/weight.vue View File

17
                 :trigger-on-focus="false"
17
                 :trigger-on-focus="false"
18
                 placeholder="请输入病人名字"
18
                 placeholder="请输入病人名字"
19
                 @select="handleSelect"
19
                 @select="handleSelect"
20
+                style="width:160px;"
20
               >
21
               >
21
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <template slot-scope="{ item }">
23
                 <template slot-scope="{ item }">
67
           ></el-date-picker>
68
           ></el-date-picker>
68
         </div>
69
         </div>
69
         <el-container>
70
         <el-container>
70
-          <div style="width:150px">
71
+          <div style="width:160px">
71
 
72
 
72
             <div class="tableTitle">患者列表</div>
73
             <div class="tableTitle">患者列表</div>
73
-            <div class="tableTitle">当前患者: {{patient_name}}</div>
74
+            
74
 
75
 
75
             <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
76
             <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
76
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
77
                       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
77
                       highlight-current-row
78
                       highlight-current-row
78
                       @current-change="handleChange">
79
                       @current-change="handleChange">
79
-              <el-table-column prop="dialysis_no" label="透析号" width="80">
80
+              <el-table-column prop="dialysis_no" label="透析号" width="70">
80
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
81
                 <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
81
               </el-table-column>
82
               </el-table-column>
82
-              <el-table-column prop="name" label="姓名" width="80">
83
+              <el-table-column prop="name" label="姓名" width="90">
83
                 <template slot-scope="scope">{{ scope.row.name }}</template>
84
                 <template slot-scope="scope">{{ scope.row.name }}</template>
84
               </el-table-column>
85
               </el-table-column>
85
             </el-table>
86
             </el-table>
86
           </div>
87
           </div>
87
           <div style="padding-left:10px;flex:1">
88
           <div style="padding-left:10px;flex:1">
88
-            <div class="tableTitle">指标趋势</div>
89
+            <div class="tableTitle">指标趋势<span style="font-weight:normal">&nbsp;&nbsp;(当前患者: {{patient_name}})</span></div>
89
             <div>
90
             <div>
90
               <line-chart :options="bar"></line-chart>
91
               <line-chart :options="bar"></line-chart>
91
 
92
 
154
                       @click.native.prevent="jumpDetail(scope.row.patient_id)"
155
                       @click.native.prevent="jumpDetail(scope.row.patient_id)"
155
                       type="text"
156
                       type="text"
156
                       size="small"
157
                       size="small"
158
+                      style="font-size:14px;"
157
                     >详情</el-button>
159
                     >详情</el-button>
158
                   </template>
160
                   </template>
159
                 </el-table-column>
161
                 </el-table-column>
312
                 emphasis: {
314
                 emphasis: {
313
                   shadowBlur: 10,
315
                   shadowBlur: 10,
314
                   shadowOffsetX: 0,
316
                   shadowOffsetX: 0,
315
-                  shadowColor: 'rgba(0, 0, 0, 0.5)'
317
+                  shadowColor: 'rgba(0, 0, 0, 0.2)'
316
                 }
318
                 }
317
               }
319
               }
318
             }
320
             }
391
 
393
 
392
                   shadowBlur: 10,
394
                   shadowBlur: 10,
393
                   shadowOffsetX: 0,
395
                   shadowOffsetX: 0,
394
-                  shadowColor: 'rgba(0, 0, 0, 0.5)'
396
+                  shadowColor: 'rgba(0, 0, 0, 0.2)'
395
                 }
397
                 }
396
               }
398
               }
397
             }
399
             }

+ 22 - 22
src/xt_pages/qcd/indicatorControlAnalysis/weightDetails.vue View File

17
                 :trigger-on-focus="false"
17
                 :trigger-on-focus="false"
18
                 placeholder="请输入病人名字"
18
                 placeholder="请输入病人名字"
19
                 @select="handleSelect"
19
                 @select="handleSelect"
20
+                style="width:160px"
20
               >
21
               >
21
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <i class="el-icon-search el-input__icon" slot="suffix"></i>
22
                 <template slot-scope="{ item }">
23
                 <template slot-scope="{ item }">
26
 
27
 
27
             </el-form-item>
28
             </el-form-item>
28
           </el-form>
29
           </el-form>
29
-        </div>
30
-        <el-container>
31
-          <div style="width:150px">
32
-            <div class="tableTitle">患者列表</div>
33
-            <div class="tableTitle">当前患者: {{patient_name}}</div>
34
-            <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
35
-                      :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
36
-                      highlight-current-row
37
-                      @current-change="handleChange">
38
-              <el-table-column prop="dialysis_no" label="透析号" width="80">
39
-                <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
40
-              </el-table-column>
41
-              <el-table-column prop="name" label="姓名" width="80">
42
-                <template slot-scope="scope">{{ scope.row.name }}</template>
43
-              </el-table-column>
44
-            </el-table>
45
-
46
-
47
-          </div>
48
-          <div class="containerRight" style="flex:1;overflow: hidden">
49
-            <div class="cell clearfix">
50
               <label class="title" style="text-align:left">
30
               <label class="title" style="text-align:left">
51
                 <span class="name">体重类型</span> :
31
                 <span class="name">体重类型</span> :
52
               </label>
32
               </label>
89
                 format="yyyy-MM-dd"
69
                 format="yyyy-MM-dd"
90
                 value-format="yyyy-MM-dd"
70
                 value-format="yyyy-MM-dd"
91
               ></el-date-picker>
71
               ></el-date-picker>
92
-            </div>
72
+        </div>
73
+        <el-container>
74
+          <div style="width:160px">
75
+            <div class="tableTitle">患者列表</div>
76
+            
77
+            <el-table ref="table" :data="patientsData" border style="width: 100%;" height="500" :row-style="{ color: '#303133' }"
78
+                      :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
79
+                      highlight-current-row
80
+                      @current-change="handleChange">
81
+              <el-table-column prop="dialysis_no" label="透析号" width="70">
82
+                <template slot-scope="scope">{{scope.row.dialysis_no}}</template>
83
+              </el-table-column>
84
+              <el-table-column prop="name" label="姓名" width="90">
85
+                <template slot-scope="scope">{{ scope.row.name }}</template>
86
+              </el-table-column>
87
+            </el-table>
88
+
89
+
90
+          </div>
91
+          <div class="containerRight" style="flex:1;overflow: hidden">
92
+            
93
             <div class="tableTitle">指标趋势</div>
93
             <div class="tableTitle">指标趋势</div>
94
             <div>
94
             <div>
95
               <line-chart :options="chart"></line-chart>
95
               <line-chart :options="chart"></line-chart>

+ 3 - 3
src/xt_pages/qcd/workAnalysis/doctor.vue View File

10
           <el-tab-pane label="护士" name="second"></el-tab-pane>
10
           <el-tab-pane label="护士" name="second"></el-tab-pane>
11
         </el-tabs>
11
         </el-tabs>
12
         <div class="cell clearfix">
12
         <div class="cell clearfix">
13
-          <el-select v-model="query.admin_user_id" placeholder="请选择" style="width:120px;margin-right:20px"               @change="changeDoctor"
13
+          <el-select v-model="query.admin_user_id" placeholder="请选择" style="width:120px;margin-right:10px"               @change="changeDoctor"
14
           >
14
           >
15
             <el-option
15
             <el-option
16
               v-for="item in doctor_options"
16
               v-for="item in doctor_options"
23
             v-model="query.statistics_type"
23
             v-model="query.statistics_type"
24
             placeholder="请选择"
24
             placeholder="请选择"
25
             @change="changeProject"
25
             @change="changeProject"
26
-            style="width:120px;margin-right:20px"
26
+            style="width:120px;margin-right:10px"
27
           >
27
           >
28
             <el-option
28
             <el-option
29
               v-for="item in project_options"
29
               v-for="item in project_options"
250
               emphasis: {
250
               emphasis: {
251
                 shadowBlur: 10,
251
                 shadowBlur: 10,
252
                 shadowOffsetX: 0,
252
                 shadowOffsetX: 0,
253
-                shadowColor: "rgba(0, 0, 0, 0.5)"
253
+                shadowColor: "rgba(0, 0, 0, 0.2)"
254
               }
254
               }
255
             }
255
             }
256
           }
256
           }

+ 3 - 3
src/xt_pages/qcd/workAnalysis/nurse.vue View File

10
           <el-tab-pane label="护士" name="second"></el-tab-pane>
10
           <el-tab-pane label="护士" name="second"></el-tab-pane>
11
         </el-tabs>
11
         </el-tabs>
12
         <div class="cell clearfix">
12
         <div class="cell clearfix">
13
-          <el-select v-model="query.admin_user_id" placeholder="请选择" style="width:120px;margin-right:20px"               @change="changeNurse"
13
+          <el-select v-model="query.admin_user_id" placeholder="请选择" style="width:120px;margin-right:10px"               @change="changeNurse"
14
           >
14
           >
15
             <el-option
15
             <el-option
16
               v-for="item in nurse_options"
16
               v-for="item in nurse_options"
23
             v-model="query.statistics_type"
23
             v-model="query.statistics_type"
24
             placeholder="请选择"
24
             placeholder="请选择"
25
             @change="changeProject"
25
             @change="changeProject"
26
-            style="width:120px;margin-right:20px"
26
+            style="width:120px;margin-right:10px"
27
           >
27
           >
28
             <el-option
28
             <el-option
29
               v-for="item in project_options"
29
               v-for="item in project_options"
282
                 emphasis: {
282
                 emphasis: {
283
                   shadowBlur: 10,
283
                   shadowBlur: 10,
284
                   shadowOffsetX: 0,
284
                   shadowOffsetX: 0,
285
-                  shadowColor: "rgba(0, 0, 0, 0.5)"
285
+                  shadowColor: "rgba(0, 0, 0, 0.2)"
286
                 }
286
                 }
287
               }
287
               }
288
             }
288
             }