Browse Source

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

28169 2 years ago
parent
commit
a9b7a6b955
35 changed files with 22333 additions and 17508 deletions
  1. 3 3
      config/sit.env.js
  2. 15208 15208
      package-lock.json
  3. 144 144
      package.json
  4. 14 0
      src/App.vue
  5. 9 0
      src/api/his/his.js
  6. 1 0
      src/api/schedule_template/sch_template.js
  7. 3 1
      src/main.js
  8. 12 1
      src/router/modules/workforce.js
  9. 4 4
      src/views/layout/components/Navbar.vue
  10. 1 1
      src/xt_pages/components/bread-crumb.vue
  11. 1 0
      src/xt_pages/dialysis/PatientBox.vue
  12. 15 3
      src/xt_pages/dialysis/details/index.vue
  13. 2 2
      src/xt_pages/dialysis/doctorAdvicePrint.vue
  14. 2 2
      src/xt_pages/dialysis/doctorAdvicePrintOne.vue
  15. 1 1
      src/xt_pages/dialysis/newDoctorAdvice.vue
  16. 1 0
      src/xt_pages/dialysis/schedualPatient.vue
  17. 2 2
      src/xt_pages/dialysis/signPrint.vue
  18. 2 2
      src/xt_pages/management/home.vue
  19. 790 610
      src/xt_pages/outpatientCharges/statementPrint.vue
  20. 408 0
      src/xt_pages/outpatientCharges/statementTemplate/printTen.vue
  21. 566 566
      src/xt_pages/outpatientTool/components/detail.vue
  22. 6 4
      src/xt_pages/sign/lineUp.vue
  23. 42 20
      src/xt_pages/user/components/PatientForm.vue
  24. 47 22
      src/xt_pages/workforce/appointment.vue
  25. 71 61
      src/xt_pages/workforce/components/ScheduleItem.vue
  26. 181 195
      src/xt_pages/workforce/components/editTableData.vue
  27. 3330 0
      src/xt_pages/workforce/components/historyWeekTable.vue
  28. 6 13
      src/xt_pages/workforce/components/setup_template_dialog.vue
  29. 299 436
      src/xt_pages/workforce/components/tableData.vue
  30. 6 6
      src/xt_pages/workforce/components/tableWeeks.vue
  31. 148 0
      src/xt_pages/workforce/components/template_schedule_dialog.vue
  32. 1 1
      src/xt_pages/workforce/components/template_schedule_selector_dialog.vue
  33. 876 89
      src/xt_pages/workforce/components/template_table.vue
  34. 111 98
      src/xt_pages/workforce/scheduleTablePrintTwo.vue
  35. 20 13
      src/xt_pages/workforce/template.vue

+ 3 - 3
config/sit.env.js View File

@@ -2,10 +2,10 @@ module.exports = {
2 2
   NODE_ENV: '"production"',
3 3
   ENV_CONFIG: '"sit"',
4 4
   // BASE_API: '"http://new_mobile.xt.api.sgjyun.com"',
5
-  BASE_API: '"https://api.xt.test.sgjyun.com"',
5
+  BASE_API:'"https://api.xt.test.sgjyun.com"',
6 6
   SSO_HOST: '"https://testsso.sgjyun.com"',
7 7
   SRCM_HOST: '"http://test1.sgjyun.com"',
8
-  XT_HOST: '"http://xt.test.sgjyun.com"',
8
+  XT_HOST: '"https://xt.test.sgjyun.com"',
9 9
   MIRCO_MALL_HOST: '"https://mall.test.sgjyun.com"',
10 10
   CDM_HOST: '"http://cdm.test.sgjyun.com"'
11
-};
11
+};

File diff suppressed because it is too large
+ 15208 - 15208
package-lock.json


+ 144 - 144
package.json View File

@@ -1,144 +1,144 @@
1
-{
2
-  "name": "vue-element-admin",
3
-  "version": "3.7.3",
4
-  "description": "A magical vue admin. Typical templates for enterprise applications. Newest development stack of vue. Lots of awesome features",
5
-  "author": "Pan <panfree23@gmail.com>",
6
-  "license": "MIT",
7
-  "scripts": {
8
-    "dev": "cross-env BABEL_ENV=development webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
9
-    "build:prod": "cross-env NODE_ENV=production env_config=prod node build/build.js",
10
-    "build:sit": "cross-env NODE_ENV=production env_config=sit node build/build.js && npm run fixfont && npm run fiximg",
11
-    "build-cdn": "node build/build-cdn.js",
12
-    "lint": "eslint --ext .js,.vue src",
13
-    "test": "npm run lint",
14
-    "precommit": "lint-staged",
15
-    "build": "cross-env NODE_ENV=production env_config=sit node build/build.js && npm run fixfont && npm run fiximg",
16
-    "fixfont": "xcopy %cd%\\dist\\static\\fonts %cd%\\dist\\static\\css\\static\\fonts /s /y /d /e /i",
17
-    "fiximg": "xcopy %cd%\\dist\\static\\img %cd%\\dist\\static\\css\\static\\img /s /y /d /e /i"
18
-  },
19
-  "lint-staged": {
20
-    "src/**/*.{js,vue}": [
21
-      "eslint --fix",
22
-      "git add"
23
-    ]
24
-  },
25
-  "keywords": [
26
-    "vue",
27
-    "element-ui",
28
-    "admin",
29
-    "management-system",
30
-    "admin-template"
31
-  ],
32
-  "repository": {
33
-    "type": "git",
34
-    "url": "git+https://github.com/PanJiaChen/vue-element-admin.git"
35
-  },
36
-  "bugs": {
37
-    "url": "https://github.com/PanJiaChen/vue-element-admin/issues"
38
-  },
39
-  "dependencies": {
40
-    "@types/moment": "^2.13.0",
41
-    "ajv": "^6.5.3",
42
-    "axios": "0.17.1",
43
-    "clipboard": "^1.7.1",
44
-    "codemirror": "5.32.0",
45
-    "connect": "3.6.6",
46
-    "default-passive-events": "^2.0.0",
47
-    "driver.js": "0.5.2",
48
-    "dropzone": "5.2.0",
49
-    "echarts": "3.8.5",
50
-    "element-ui": "^2.13.2",
51
-    "file-saver": "^1.3.8",
52
-    "font-awesome": "4.7.0",
53
-    "js-cookie": "2.2.0",
54
-    "jsbarcode": "^3.11.5",
55
-    "jsonlint": "1.6.3",
56
-    "jszip": "3.1.5",
57
-    "mockjs": "1.0.1-beta3",
58
-    "moment": "^2.24.0",
59
-    "node-sass": "4.14.1",
60
-    "normalize.css": "7.0.0",
61
-    "nprogress": "0.2.0",
62
-    "print-js": "^1.0.50",
63
-    "qrcodejs2": "0.0.2",
64
-    "screenfull": "4.2.0",
65
-    "serve-static": "1.13.2",
66
-    "showdown": "1.8.5",
67
-    "simplemde": "1.11.2",
68
-    "sortablejs": "1.7.0",
69
-    "v-fit-columns": "^0.2.0",
70
-    "vue": "2.5.16",
71
-    "vue-clipboard": "0.0.1",
72
-    "vue-clipboard2": "^0.3.1",
73
-    "vue-count-to": "1.0.13",
74
-    "vue-i18n": "7.3.2",
75
-    "vue-multiselect": "2.0.8",
76
-    "vue-router": "3.0.1",
77
-    "vue-splitpane": "1.0.2",
78
-    "vuedraggable": "^2.16.0",
79
-    "vuex": "3.0.1",
80
-    "xlsx": "^0.11.19"
81
-  },
82
-  "devDependencies": {
83
-    "autoprefixer": "7.2.3",
84
-    "babel-core": "6.26.0",
85
-    "babel-eslint": "8.0.3",
86
-    "babel-helper-vue-jsx-merge-props": "2.0.3",
87
-    "babel-loader": "7.1.2",
88
-    "babel-plugin-dynamic-import-node": "^1.2.0",
89
-    "babel-plugin-syntax-jsx": "6.18.0",
90
-    "babel-plugin-transform-runtime": "6.23.0",
91
-    "babel-plugin-transform-vue-jsx": "3.5.0",
92
-    "babel-preset-env": "1.6.1",
93
-    "babel-preset-stage-2": "6.24.1",
94
-    "chalk": "2.3.0",
95
-    "copy-webpack-plugin": "4.3.0",
96
-    "cross-env": "^7.0.3",
97
-    "crypto-js": "^4.1.1",
98
-    "css-loader": "0.28.7",
99
-    "eslint": "4.13.1",
100
-    "eslint-friendly-formatter": "3.0.0",
101
-    "eslint-loader": "1.9.0",
102
-    "eslint-plugin-html": "4.0.1",
103
-    "extract-text-webpack-plugin": "3.0.2",
104
-    "file-loader": "1.1.5",
105
-    "friendly-errors-webpack-plugin": "1.6.1",
106
-    "html-webpack-plugin": "2.30.1",
107
-    "lint-staged": "7.2.0",
108
-    "node-notifier": "5.1.2",
109
-    "node-sass": "^4.14.1",
110
-    "optimize-css-assets-webpack-plugin": "3.2.0",
111
-    "ora": "1.3.0",
112
-    "portfinder": "1.0.13",
113
-    "postcss-import": "11.0.0",
114
-    "postcss-loader": "2.0.9",
115
-    "postcss-url": "7.3.0",
116
-    "qiniu-webpack-plugin": "^0.4.2",
117
-    "rimraf": "2.6.2",
118
-    "sass-loader": "^6.0.7",
119
-    "sass-resources-loader": "^1.3.4",
120
-    "script-loader": "^0.7.2",
121
-    "semver": "5.4.1",
122
-    "shelljs": "0.7.8",
123
-    "svg-sprite-loader": "3.5.2",
124
-    "uglifyjs-webpack-plugin": "1.1.3",
125
-    "url-loader": "0.6.2",
126
-    "vue-loader": "13.7.2",
127
-    "vue-style-loader": "3.0.3",
128
-    "vue-template-compiler": "2.5.16",
129
-    "webpack": "3.10.0",
130
-    "webpack-bundle-analyzer": "2.9.1",
131
-    "webpack-dev-server": "^2.9.7",
132
-    "webpack-merge": "4.1.1",
133
-    "write-json": "^3.0.1"
134
-  },
135
-  "engines": {
136
-    "node": ">= 4.0.0",
137
-    "npm": ">= 3.0.0"
138
-  },
139
-  "browserslist": [
140
-    "> 1%",
141
-    "last 2 versions",
142
-    "not ie <= 8"
143
-  ]
144
-}
1
+{
2
+  "name": "vue-element-admin",
3
+  "version": "3.7.3",
4
+  "description": "A magical vue admin. Typical templates for enterprise applications. Newest development stack of vue. Lots of awesome features",
5
+  "author": "Pan <panfree23@gmail.com>",
6
+  "license": "MIT",
7
+  "scripts": {
8
+    "dev": "cross-env BABEL_ENV=development webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
9
+    "build:prod": "cross-env NODE_ENV=production env_config=prod node build/build.js",
10
+    "build:sit": "cross-env NODE_ENV=production env_config=sit node build/build.js && npm run fixfont && npm run fiximg",
11
+    "build-cdn": "node build/build-cdn.js",
12
+    "lint": "eslint --ext .js,.vue src",
13
+    "test": "npm run lint",
14
+    "precommit": "lint-staged",
15
+    "build": "cross-env NODE_ENV=production env_config=sit node build/build.js && npm run fixfont && npm run fiximg",
16
+    "fixfont": "xcopy %cd%\\dist\\static\\fonts %cd%\\dist\\static\\css\\static\\fonts /s /y /d /e /i",
17
+    "fiximg": "xcopy %cd%\\dist\\static\\img %cd%\\dist\\static\\css\\static\\img /s /y /d /e /i"
18
+  },
19
+  "lint-staged": {
20
+    "src/**/*.{js,vue}": [
21
+      "eslint --fix",
22
+      "git add"
23
+    ]
24
+  },
25
+  "keywords": [
26
+    "vue",
27
+    "element-ui",
28
+    "admin",
29
+    "management-system",
30
+    "admin-template"
31
+  ],
32
+  "repository": {
33
+    "type": "git",
34
+    "url": "git+https://github.com/PanJiaChen/vue-element-admin.git"
35
+  },
36
+  "bugs": {
37
+    "url": "https://github.com/PanJiaChen/vue-element-admin/issues"
38
+  },
39
+  "dependencies": {
40
+    "@types/moment": "^2.13.0",
41
+    "ajv": "^6.5.3",
42
+    "axios": "0.17.1",
43
+    "clipboard": "^1.7.1",
44
+    "codemirror": "5.32.0",
45
+    "connect": "3.6.6",
46
+    "default-passive-events": "^2.0.0",
47
+    "driver.js": "0.5.2",
48
+    "dropzone": "5.2.0",
49
+    "echarts": "3.8.5",
50
+    "element-ui": "^2.13.2",
51
+    "file-saver": "^1.3.8",
52
+    "font-awesome": "4.7.0",
53
+    "js-cookie": "2.2.0",
54
+    "jsbarcode": "^3.11.5",
55
+    "jsonlint": "1.6.3",
56
+    "jszip": "3.1.5",
57
+    "mockjs": "1.0.1-beta3",
58
+    "moment": "^2.24.0",
59
+    "node-sass": "4.14.1",
60
+    "normalize.css": "7.0.0",
61
+    "nprogress": "0.2.0",
62
+    "print-js": "^1.0.50",
63
+    "qrcodejs2": "0.0.2",
64
+    "screenfull": "4.2.0",
65
+    "serve-static": "1.13.2",
66
+    "showdown": "1.8.5",
67
+    "simplemde": "1.11.2",
68
+    "sortablejs": "1.7.0",
69
+    "v-fit-columns": "^0.2.0",
70
+    "vue": "2.5.16",
71
+    "vue-clipboard": "0.0.1",
72
+    "vue-clipboard2": "^0.3.1",
73
+    "vue-count-to": "1.0.13",
74
+    "vue-i18n": "7.3.2",
75
+    "vue-multiselect": "2.0.8",
76
+    "vue-router": "3.0.1",
77
+    "vue-splitpane": "1.0.2",
78
+    "vuedraggable": "^2.16.0",
79
+    "vuex": "3.0.1",
80
+    "xlsx": "^0.11.19"
81
+  },
82
+  "devDependencies": {
83
+    "autoprefixer": "7.2.3",
84
+    "babel-core": "6.26.0",
85
+    "babel-eslint": "8.0.3",
86
+    "babel-helper-vue-jsx-merge-props": "2.0.3",
87
+    "babel-loader": "7.1.2",
88
+    "babel-plugin-dynamic-import-node": "^1.2.0",
89
+    "babel-plugin-syntax-jsx": "6.18.0",
90
+    "babel-plugin-transform-runtime": "6.23.0",
91
+    "babel-plugin-transform-vue-jsx": "3.5.0",
92
+    "babel-preset-env": "1.6.1",
93
+    "babel-preset-stage-2": "6.24.1",
94
+    "chalk": "2.3.0",
95
+    "copy-webpack-plugin": "4.3.0",
96
+    "cross-env": "^7.0.3",
97
+    "crypto-js": "^4.1.1",
98
+    "css-loader": "0.28.7",
99
+    "eslint": "4.13.1",
100
+    "eslint-friendly-formatter": "3.0.0",
101
+    "eslint-loader": "1.9.0",
102
+    "eslint-plugin-html": "4.0.1",
103
+    "extract-text-webpack-plugin": "3.0.2",
104
+    "file-loader": "1.1.5",
105
+    "friendly-errors-webpack-plugin": "1.6.1",
106
+    "html-webpack-plugin": "2.30.1",
107
+    "lint-staged": "7.2.0",
108
+    "node-notifier": "5.1.2",
109
+    "node-sass": "^4.14.1",
110
+    "optimize-css-assets-webpack-plugin": "3.2.0",
111
+    "ora": "1.3.0",
112
+    "portfinder": "1.0.13",
113
+    "postcss-import": "11.0.0",
114
+    "postcss-loader": "2.0.9",
115
+    "postcss-url": "7.3.0",
116
+    "qiniu-webpack-plugin": "^0.4.2",
117
+    "rimraf": "2.6.2",
118
+    "sass-loader": "^6.0.7",
119
+    "sass-resources-loader": "^1.3.4",
120
+    "script-loader": "^0.7.2",
121
+    "semver": "5.4.1",
122
+    "shelljs": "0.7.8",
123
+    "svg-sprite-loader": "3.5.2",
124
+    "uglifyjs-webpack-plugin": "1.1.3",
125
+    "url-loader": "0.6.2",
126
+    "vue-loader": "13.7.2",
127
+    "vue-style-loader": "3.0.3",
128
+    "vue-template-compiler": "2.5.16",
129
+    "webpack": "3.10.0",
130
+    "webpack-bundle-analyzer": "2.9.1",
131
+    "webpack-dev-server": "^2.9.7",
132
+    "webpack-merge": "4.1.1",
133
+    "write-json": "^3.0.1"
134
+  },
135
+  "engines": {
136
+    "node": ">= 4.0.0",
137
+    "npm": ">= 3.0.0"
138
+  },
139
+  "browserslist": [
140
+    "> 1%",
141
+    "last 2 versions",
142
+    "not ie <= 8"
143
+  ]
144
+}

+ 14 - 0
src/App.vue View File

@@ -59,4 +59,18 @@ export default {
59 59
 body .el-table th.gutter {
60 60
   display: table-cell !important;
61 61
 }
62
+*{  
63
+   -webkit-touch-callout:none;  /*系统默认菜单被禁用*/   
64
+   -webkit-user-select:none; /*webkit浏览器*/   
65
+   -khtml-user-select:none; /*早期浏览器*/   
66
+   -moz-user-select:none;/*火狐*/   
67
+   -ms-user-select:none; /*IE10*/   
68
+   user-select:none;   
69
+} 
70
+input{  
71
+ -webkit-user-select:auto; /*webkit浏览器*/     
72
+}
73
+textarea{
74
+ -webkit-user-select:auto; /*webkit浏览器*/
75
+}
62 76
 </style>

+ 9 - 0
src/api/his/his.js View File

@@ -725,3 +725,12 @@ export function exportOrderInfo() {
725 725
   });
726 726
 }
727 727
 
728
+
729
+export function getPrivateExpensesTwo(params) {
730
+  return request({
731
+    url: "/api/test/get",
732
+    method: "get",
733
+    params:params,
734
+  });
735
+}
736
+

+ 1 - 0
src/api/schedule_template/sch_template.js View File

@@ -23,6 +23,7 @@ export function setTemplateMode(mode,week_time) {
23 23
     week_time:week_time,
24 24
 
25 25
   }
26
+  console.log(params)
26 27
   return request({
27 28
     url: '/api/schtemp/p/setmode',
28 29
     method: 'post',

+ 3 - 1
src/main.js View File

@@ -45,7 +45,9 @@ Vue.prototype.$XLSX = XLSX; //设置全局
45 45
 import Computed from "../src/xt_pages/components/Computed/index"  //自动计算金额控件
46 46
 Vue.component("Computed",Computed)
47 47
 
48
-
48
+// 表格宽度自适应
49
+import fitcolumn from 'v-fit-columns' 
50
+Vue.use(fitcolumn)
49 51
 
50 52
 Vue.use(Element, {
51 53
   size: 'medium', // set element-ui default size

+ 12 - 1
src/router/modules/workforce.js View File

@@ -166,6 +166,17 @@ export default {
166 166
       title: 'scheduleTablePrintTwo',
167 167
       noCache: true
168 168
     }
169
-  }
169
+  },
170
+  // {
171
+  //   path: '/historyWeekTable',
172
+  //   component: () => import('@/xt_pages/workforce/historyWeekTable'),
173
+  //   name: 'historyWeekTable',
174
+  //   hidden: true,
175
+  //   is_menu: false,
176
+  //   meta: {
177
+  //     title: 'historyWeekTable',
178
+  //     noCache: true
179
+  //   }
180
+  // }
170 181
   ]
171 182
 }

+ 4 - 4
src/views/layout/components/Navbar.vue View File

@@ -624,12 +624,12 @@ export default {
624 624
   }
625 625
 }
626 626
 .el-dropdown-menu {
627
-  z-index: 9999 !important;
627
+  z-index: 9999 ;
628 628
 }
629 629
 
630
-.v-modal {
631
-  z-index: 9999 !important;
632
-}
630
+// .v-modal {
631
+//   z-index: 9999 !important;
632
+// }
633 633
 
634 634
 </style>
635 635
 

+ 1 - 1
src/xt_pages/components/bread-crumb.vue View File

@@ -3,7 +3,7 @@
3 3
     <el-breadcrumb-item>首页</el-breadcrumb-item>
4 4
     <template v-for="(crumb, index) in crumbsList" >
5 5
       <el-breadcrumb-item v-if="crumb.path" :to="{ path: crumb.path }" :key="index">{{crumb.name}}</el-breadcrumb-item>
6
-      <el-breadcrumb-item v-else :key="index">{{crumb.name}}</el-breadcrumb-item>
6
+      <el-breadcrumb-item v-else >{{crumb.name}}</el-breadcrumb-item>
7 7
     </template>
8 8
     <!-- <el-breadcrumb-item><a href="/">活动管理</a></el-breadcrumb-item>
9 9
     <el-breadcrumb-item>活动列表</el-breadcrumb-item>

+ 1 - 0
src/xt_pages/dialysis/PatientBox.vue View File

@@ -1,4 +1,5 @@
1 1
 <template>
2
+  <!-- 透析管理患者资料 -->
2 3
   <div>
3 4
     <!-- <router-link to="/dialysis/details"> -->
4 5
     <div

+ 15 - 3
src/xt_pages/dialysis/details/index.vue View File

@@ -1,4 +1,5 @@
1 1
 <template>
2
+  <!-- 点击透析记录患者资料跳转的页面 -->
2 3
   <div class="main-contain">
3 4
     <div class="position">
4 5
       <bread-crumb :crumbs="crumbs"></bread-crumb>
@@ -50,6 +51,7 @@
50 51
           @click="refresh"
51 52
           >刷新</el-button>
52 53
       <el-tabs v-model="activeName" @tab-click="handleClick">
54
+        <!-- 候诊区 -->
53 55
         <el-tab-pane label="候诊区" name="first">
54 56
           <div class="cell clearfix" style="margin-bottom:10px;">
55 57
             <el-date-picker v-model="selected_date" prefix-icon="el-icon-date" @change="handleScheduleDateChange" :editable="false" :clearable="false" style="width: 45%;margin-right:10px;" type="date" placeholder="选择日期时间" align="right" ></el-date-picker>
@@ -108,7 +110,7 @@
108 110
                 <template slot-scope="scope">
109 111
                   {{ scope.row.patient.name }}
110 112
                   <span v-if="scope.row.assessment_before_dislysis && patientStateVal == 1">
111
-                    ({{ getTime(scope.row.assessment_before_dislysis.created_time) }})
113
+                    ({{ getTime(scope.row.assessment_before_dislysis.created_time) }})
112 114
                   </span>
113 115
                 </template>
114 116
               </el-table-column>
@@ -130,6 +132,7 @@
130 132
             </el-table>
131 133
           </div>
132 134
         </el-tab-pane>
135
+        <!-- 透析区 -->
133 136
         <el-tab-pane label="透析区" name="second">
134 137
           <div class="cell clearfix" style="margin-bottom:10px;">
135 138
             <el-date-picker v-model="selected_date" prefix-icon="el-icon-date" @change="handleScheduleDateChange" :editable="false" :clearable="false" style="width: 45%;margin-right:10px;" type="date" placeholder="选择日期时间" align="right" ></el-date-picker>
@@ -2423,8 +2426,8 @@ export default {
2423 2426
         display: flex;
2424 2427
         box-sizing: border-box;
2425 2428
         justify-content: space-around;
2426
-        .name {
2427
-        }
2429
+        // .name {
2430
+        // }
2428 2431
         .InputBox {
2429 2432
           padding: 0;
2430 2433
           border: none;
@@ -2459,7 +2462,10 @@ export default {
2459 2462
     font-size: 12px;
2460 2463
     display: inline-block;
2461 2464
     width: 60px;
2465
+    // height: 23px;
2466
+    // line-height: 23px;
2462 2467
     color: #fff;
2468
+   
2463 2469
   }
2464 2470
   .tip2{
2465 2471
     background: #ee8556;
@@ -2468,6 +2474,8 @@ export default {
2468 2474
     font-size: 12px;
2469 2475
     display: inline-block;
2470 2476
     width: 60px;
2477
+    // height: 23px;
2478
+    // line-height: 23px;
2471 2479
     color: #fff;
2472 2480
   }
2473 2481
   .tip3{
@@ -2515,6 +2523,10 @@ export default {
2515 2523
   }
2516 2524
   .el-table td, .el-table th{
2517 2525
     text-align: center;
2526
+    
2527
+  }
2528
+  .el-table td{
2529
+    height: 44px !important;
2518 2530
   }
2519 2531
   .el-table .cell{
2520 2532
     padding: 0;

+ 2 - 2
src/xt_pages/dialysis/doctorAdvicePrint.vue View File

@@ -29,7 +29,7 @@
29 29
                     <th width="50px">开嘱时间</th>
30 30
                     </tr>
31 31
                     <template v-for="(schedules, zone_name, index) in scheduleMap">
32
-                    <tr :key="index">
32
+                    <tr ><!--:key="index"-->
33 33
                         <td>{{ zone_name }}</td>
34 34
                         <!-- <td></td> -->
35 35
                         <td></td>
@@ -140,7 +140,7 @@
140 140
                     <th width="50px">开嘱时间</th>
141 141
                     </tr>
142 142
                     <template v-for="(schedules, zone_name, index) in scheduleMap">
143
-                    <tr :key="index">
143
+                    <tr ><!--:key="index"-->
144 144
                         <td>{{ zone_name }}</td>
145 145
                         <!-- <td></td> -->
146 146
                         <td></td>

+ 2 - 2
src/xt_pages/dialysis/doctorAdvicePrintOne.vue View File

@@ -21,7 +21,7 @@
21 21
                      <th width="50px">执行护士</th>
22 22
                     </tr>
23 23
                     <template v-for="(schedules, zone_name, index) in scheduleMap">
24
-                    <tr :key="index">
24
+                    <tr ><!--:key="index"-->
25 25
                         <td>{{ zone_name }}</td>
26 26
                         <td></td>
27 27
                         <td></td>
@@ -101,7 +101,7 @@
101 101
                     <th width="20px">执行护士</th>
102 102
                     </tr>
103 103
                     <template v-for="(schedules, zone_name, index) in scheduleMap">
104
-                    <tr :key="index">
104
+                    <tr ><!--:key="index"-->
105 105
                         <td>{{ zone_name }}</td>
106 106
                         <td></td>
107 107
                         <td></td>

+ 1 - 1
src/xt_pages/dialysis/newDoctorAdvice.vue View File

@@ -293,7 +293,7 @@
293 293
             <span v-else>
294 294
 
295 295
             </span>
296
-            </span>
296
+           
297 297
           </template>
298 298
         </el-table-column>
299 299
         <el-table-column prop="date" label="开嘱医生" align="center" min-width="26px">

+ 1 - 0
src/xt_pages/dialysis/schedualPatient.vue View File

@@ -1,4 +1,5 @@
1 1
 <template>
2
+  <!-- 透析记录首页 -->
2 3
 <div class="main-contain">
3 4
   <div class="position">
4 5
     <bread-crumb :crumbs='crumbs'></bread-crumb>

+ 2 - 2
src/xt_pages/dialysis/signPrint.vue View File

@@ -55,7 +55,7 @@
55 55
             </div>
56 56
         </div>
57 57
 
58
-          <div class="app-container" style="background-color: white;" v-show="showOne">
58
+          <!-- <div class="app-container" style="background-color: white;" v-show="showOne">
59 59
             <div id="dialysisTable">
60 60
                 <div v-for="(item, index) in list" :key="index">
61 61
                     <div class="signPrint" v-for="it in item.doctor_advice" style="page-break-after: always;">
@@ -76,7 +76,7 @@
76 76
                   
77 77
                 </div>
78 78
             </div>
79
-        </div>
79
+        </div> -->
80 80
     </div>
81 81
 </template>
82 82
 

+ 2 - 2
src/xt_pages/management/home.vue View File

@@ -2499,8 +2499,8 @@
2499 2499
 
2500 2500
              </el-main>
2501 2501
           </el-container>
2502
-        </el-container>
2503
-      </el-container>
2502
+        <!-- </el-container>
2503
+      </el-container> -->
2504 2504
 
2505 2505
          <!-- 新增计划 -->
2506 2506
         <plan-form ref="planForm" :equimentid="equimentid" v-on:getAllPlan="getAllPlan" v-on:getAllPlanDetail="getAllPlanDetail" @func="getPlanData"></plan-form>

File diff suppressed because it is too large
+ 790 - 610
src/xt_pages/outpatientCharges/statementPrint.vue


+ 408 - 0
src/xt_pages/outpatientCharges/statementTemplate/printTen.vue View File

@@ -0,0 +1,408 @@
1
+<template>
2
+    <div  id="statement-print" class="statement-print"
3
+         style="position: relative;">
4
+      <div class="print-content">
5
+        <div class="print-title">
6
+          <h1 style="text-align: center;">江西省医疗保障定点机构医疗费用结算单</h1>
7
+        </div>
8
+
9
+        <div class="print-tab" style="margin: 0px auto; text-align: center;">
10
+          <div class="hospital" style="margin:0px 112px ;width: 70%;">
11
+            <!-- style="display: inline-block;margin: 10px 80px 10px 0px ;" -->
12
+            <span class="yiliao" style="display: inline-block;margin: 10px 80px 10px 0px ;">
13
+                          <span>医疗机构名称:</span>
14
+                          <span>{{info.fixmedins_name}}</span>
15
+                      </span>
16
+            <span class="yiliao" style="display: inline-block;margin: 10px 80px 10px 0px ;">
17
+                          <span>医疗机构编码:</span>
18
+                          <span>{{info.fixmedins_code}}</span>
19
+                      </span>
20
+            <span class="yiliao" style="display: inline-block;margin: 10px 80px 10px 0px ;">
21
+                          <span>医院等级:</span>
22
+                          <span  v-if="info.hosp_lv == '1'">三级特等</span>
23
+                          <span  v-else-if="info.hosp_lv == '2'">三级甲等</span>
24
+                          <span v-else-if="info.hosp_lv == '3'">三级乙等</span>
25
+                          <span v-else-if="info.hosp_lv == '4'">三级丙等</span>
26
+                          <span v-else-if="info.hosp_lv == '5'">二级甲等</span>
27
+                          <span v-else-if="info.hosp_lv == '6'">二级乙等</span>
28
+                          <span v-else-if="info.hosp_lv == '7'">二级丙等</span>
29
+                          <span  v-else-if="info.hosp_lv == '8'">一级甲等</span>
30
+                          <span v-else-if="info.hosp_lv == '9'">一级乙等</span>
31
+                          <span v-else-if="info.hosp_lv == '10'">一级丙等</span>
32
+                          <span  v-else-if="info.hosp_lv == '11'">无等级</span>
33
+                          <span  v-else></span>
34
+            </span>
35
+          </div>
36
+          <table class="jiesuan" style="border-collapse: collapse;margin: auto;">
37
+            <tr>
38
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">姓名</td>
39
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.psn_name}}</td>
40
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">性别</td>
41
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.gend == '1'">男</td>
42
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.gend == '2'">女</td>
43
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else></td>
44
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">人员类别</td>
45
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.psn_type == '11'">在职</td>
46
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1101'">职工在职</td>
47
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1102'">公务员在职</td>
48
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1103'">灵活就业人员在职</td>
49
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1160'">地方其他扩展人员</td>
50
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '12'">退休人员</td>
51
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1201'">职工退休</td>
52
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1202'">公务员退休</td>
53
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1203'">灵活就业人员退休</td>
54
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1260'">地方其他扩展人员</td>
55
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '13'">离休</td>
56
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1300'">离休人员</td>
57
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1360'">地方其他扩展人员</td>
58
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '14'">居民(未成年)</td>
59
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1401'">新生儿</td>
60
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1402'">学龄前儿童</td>
61
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1403'">中小学生</td>
62
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1404'">大学生</td>
63
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1405'">未成年(未入学)</td>
64
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '15'">居民(成年)</td>
65
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1501'">普通居民(成年)</td>
66
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '1560'">地方其他扩展身份</td>
67
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else-if="info.psn_type == '16'">居民(老年)</td>
68
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-else></td>
69
+            </tr>
70
+            <tr>
71
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">身份证号码</td>
72
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.certno}}</td>
73
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">参保险种</td>
74
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '310'">职工基本医疗保险</td>
75
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '320'">公务员医疗补助</td>
76
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '330'">大额医疗费用补助</td>
77
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '340'">离休人员医疗保障</td>
78
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '390'">城乡居民基本医疗保险</td>
79
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '392'">城乡居民大病医疗保险</td>
80
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.insutype == '510'">生育保险</td>
81
+
82
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">医疗类别</td>
83
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '11'">普通门诊</td>
84
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '12'">门诊挂号</td>
85
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '13'">急诊</td>
86
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '14'">门诊特殊病</td>
87
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '15'">门诊统筹</td>
88
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '16'">门诊慢性病</td>
89
+              <td style="border: 1px solid gray;width: 150px;height: 30px;" v-if="info.med_type == '21'">普通住院</td>
90
+
91
+            </tr>
92
+            <tr>
93
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">结算ID</td>
94
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.setl_id}}</td>
95
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">住院号</td>
96
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.number}}</td>
97
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">住院天数</td>
98
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{getDay(info.begndate,info.enddate)}}</td>
99
+            </tr>
100
+            <tr>
101
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">科室</td>
102
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{'血透'}}</td>
103
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">床号</td>
104
+              <td style="border: 1px solid gray;width: 150px;height: 30px;"></td>
105
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">参保区划</td>
106
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.insu_optins}}</td>
107
+            </tr>
108
+            <tr>
109
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">入院日期</td>
110
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.begndate ? info.begndate.split(' ')[0] : ''}}</td>
111
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">出院日期</td>
112
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.enddate ? info.enddate.split(' ')[0] : ''}}</td>
113
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">结算日期</td>
114
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.setl_time ? info.setl_time.split(' ')[0] : ''}}</td>
115
+            </tr>
116
+            <tr>
117
+              <td colspan="6" style="border: 1px solid gray;width: 150px;height: 30px;"> 费用分类情况</td>
118
+            </tr>
119
+            <tr>
120
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">项目名称</td>
121
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">总金额</td>
122
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">符合行政范围</td>
123
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">先行自付</td>
124
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">超限价</td>
125
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">自费</td>
126
+            </tr>
127
+            <tr v-if="info.bed_cost_total > 0">
128
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">床位费</td>
129
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.bed_cost_total}}</td>
130
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.bedInscpTotal}}</td>
131
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.bed_cost_part_self_total}}</td>
132
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.bed_cost_self_total}}</td>
133
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.bedSelfTotal}}</td>
134
+
135
+            </tr>
136
+
137
+            <tr v-if="info.operation_cost_total > 0">
138
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">手术费</td>
139
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.operation_cost_total}}</td>
140
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.operationInscpTotal}}</td>
141
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.operation_cost_part_self_total}}</td>
142
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.operation_cost_self_total}}</td>
143
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.operationSelfTotal}}</td>
144
+
145
+            </tr>
146
+
147
+            <tr v-if="info.check_cost_total > 0">
148
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">检查费</td>
149
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.check_cost_total}}</td>
150
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.checkInscpTotal}}</td>
151
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.check_cost_part_self_total}}</td>
152
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.check_cost_self_total}}</td>
153
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.checkSelfTotal}}</td>
154
+
155
+            </tr>
156
+
157
+            <tr v-if="info.treat_cost_total > 0">
158
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">治疗费</td>
159
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.treat_cost_total}}</td>
160
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.treatInscpTotal}}</td>
161
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.treat_cost_part_self_total}}</td>
162
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.treat_cost_self_total}}</td>
163
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.treatSelfTotal}}</td>
164
+
165
+            </tr>
166
+
167
+            <tr v-if="info.treat_cost_total > 0">
168
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">化验费</td>
169
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.laboratory_cost_total}}</td>
170
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.laboratoryInscpTotal}}</td>
171
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.laboratory_cost_part_self_total}}</td>
172
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.laboratory_cost_self_total}}</td>
173
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.laboratorySelfTotal}}</td>
174
+
175
+            </tr>
176
+
177
+
178
+            <tr v-if="info.western_medicine_cost_total > 0">
179
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">西药费</td>
180
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.western_medicine_cost_total}}</td>
181
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.westernMedicineInscpTotal}}</td>
182
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.western_medicine_cost_part_self_total}}</td>
183
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.western_medicine_cost_self_total}}</td>
184
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.westernMedicineSelfTotal}}</td>
185
+
186
+            </tr>
187
+
188
+            <tr v-if="info.material_cost_total > 0">
189
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">材料费</td>
190
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.material_cost_total}}</td>
191
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.materialInscpTotal}}</td>
192
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.material_cost_part_self_total}}</td>
193
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.material_cost_self_total}}</td>
194
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.materialSelfTotal}}</td>
195
+
196
+            </tr>
197
+            <tr v-if="info.other_cost_total > 0">
198
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">其他费</td>
199
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.other_cost_total}}</td>
200
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.otherInscpTotal}}</td>
201
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.other_cost_part_self_total}}</td>
202
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.other_cost_self_total}}</td>
203
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.otherSelfTotal}}</td>
204
+            </tr>
205
+
206
+            <tr v-if="info.chinese_traditional_medicine_cost_total > 0">
207
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">中成药</td>
208
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.chinese_traditional_medicine_cost_total}}</td>
209
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.chineseTraditionalInscpTotal}}</td>
210
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.chinese_traditional_medicine_cost_part_self_total}}</td>
211
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.chinese_traditional_medicine_cost_self_total}}</td>
212
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.chineseTraditionalSelfTotal}}</td>
213
+            </tr>
214
+
215
+            <tr>
216
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">金额合计</td>
217
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{(parseFloat(info.bed_cost_total) +
218
+                parseFloat(info.operation_cost_total) + parseFloat(info.other_cost_total) +
219
+                parseFloat(info.material_cost_total) + parseFloat(info.western_medicine_cost_total) +
220
+                parseFloat(info.chinese_traditional_medicine_cost_total) + parseFloat(info.check_cost_total) +
221
+                parseFloat(info.laboratory_cost_total) + parseFloat(info.treat_cost_total)).toFixed(2) }}
222
+              </td>
223
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{(parseFloat(info.bedInscpTotal) +
224
+                parseFloat(info.operationInscpTotal) + parseFloat(info.checkInscpTotal) +
225
+                parseFloat(info.treatInscpTotal) + parseFloat(info.laboratoryInscpTotal) +
226
+                parseFloat(info.westernMedicineInscpTotal) + parseFloat(info.materialInscpTotal) +
227
+                parseFloat(info.otherInscpTotal) + parseFloat(info.chineseTraditionalInscpTotal)).toFixed(2) }}
228
+              </td>
229
+
230
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{(parseFloat(info.bed_cost_part_self_total) +
231
+                parseFloat(info.operation_cost_part_self_total) + parseFloat(info.other_cost_part_self_total) +
232
+                parseFloat(info.material_cost_part_self_total) + parseFloat(info.western_medicine_cost_part_self_total) +
233
+                parseFloat(info.chinese_traditional_medicine_cost_part_self_total) +
234
+                parseFloat(info.check_cost_part_self_total) + parseFloat(info.laboratory_cost_part_self_total) +
235
+                parseFloat(info.treat_cost_part_self_total)).toFixed(2)}}
236
+              </td>
237
+
238
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{(parseFloat(info.bed_cost_self_total )+
239
+                parseFloat(info.operation_cost_self_total) + parseFloat(info.other_cost_self_total) +
240
+                parseFloat(info.material_cost_self_total) + parseFloat(info.western_medicine_cost_self_total) +
241
+                parseFloat(info.chinese_traditional_medicine_cost_self_total) + parseFloat(info.check_cost_self_total) +
242
+                parseFloat(info.laboratory_cost_self_total) + parseFloat(info.treat_cost_self_total)).toFixed(2)}}
243
+              </td>
244
+
245
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{(parseFloat(info.bedSelfTotal) +
246
+                parseFloat(info.operationSelfTotal) + parseFloat(info.checkSelfTotal) +
247
+                parseFloat(info.treatSelfTotal) + parseFloat(info.laboratorySelfTotal) +
248
+                parseFloat(info.westernMedicineSelfTotal) + parseFloat(info.materialSelfTotal) +
249
+                parseFloat(info.otherSelfTotal) + parseFloat(info.chineseTraditionalSelfTotal)).toFixed(2) }}
250
+              </td>
251
+
252
+            </tr>
253
+
254
+            <tr>
255
+              <td colspan="6" style="border: 1px solid gray;width: 150px;height: 30px;"> 费用结算情况</td>
256
+            </tr>
257
+            <tr>
258
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">费用总额</td>
259
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.medfee_sumamt}}</td>
260
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">统筹基金支付</td>
261
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.hifp_pay}}</td>
262
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">大病保险支付</td>
263
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.hifmi_pay}}</td>
264
+            </tr>
265
+            <tr>
266
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">医疗救助支付</td>
267
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.maf_pay}}</td>
268
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">公务员补充支付</td>
269
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.cvlserv_pay}}</td>
270
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">离休保健专项</td>
271
+              <td style="border: 1px solid gray;width: 150px;height: 30px;"></td>
272
+            </tr>
273
+            <tr>
274
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">个人账户支付</td>
275
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.acct_pay}}</td>
276
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">个人现金支付</td>
277
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.psn_cash_pay}}</td>
278
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">其他基金支付</td>
279
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">{{info.oth_pay}}</td>
280
+            </tr>
281
+            <tr>
282
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">起付线</td>
283
+              <td colspan="2" style="border: 1px solid gray;width: 150px;height: 30px;">{{info.act_pay_dedc}}</td>
284
+              <td style="border: 1px solid gray;width: 150px;height: 30px;">医院垫付金额</td>
285
+              <td colspan="2" style="border: 1px solid gray;width: 150px;height: 30px;">{{info.hosp_part_amt}}</td>
286
+            </tr>
287
+          </table>
288
+          <div style="width: 51%; margin: 5px 90px; text-align: left;">
289
+           <span style="display: inline-block;"> 备注:其它包含军转、财政、慈善、其他商报等支付来源</span>
290
+          </div>
291
+        </div>
292
+      </div>
293
+
294
+    </div>
295
+</template>
296
+<script>
297
+import { getChargePrint } from '@/api/project/project'
298
+import { uParseTime } from '@/utils/tools'
299
+
300
+export default {
301
+  data() {
302
+    return {
303
+      list: {},
304
+      prescription: [],
305
+      patient: {},
306
+      orgname: '',
307
+
308
+      result: {},
309
+      org_code: '',
310
+      patient_name: '',
311
+      doctor_code: '',
312
+      doctor_name: '',
313
+
314
+      name_arr: [],
315
+      spec_arr: [],
316
+      count_arr: [],
317
+      price_arr: [],
318
+      total_arr: []
319
+
320
+    }
321
+  },
322
+  props: {
323
+    paramsObj: Object,
324
+    info: {
325
+      type: Object,
326
+      default: function() {
327
+        return {}
328
+      }
329
+    },
330
+    balanceAccounts: Object
331
+  },
332
+  methods: {
333
+    getDay(dateString1,dateString2){
334
+      var  startDate = Date.parse(dateString1);
335
+      var  endDate = Date.parse(dateString2);
336
+      if (startDate>endDate){
337
+        return 0;
338
+      }
339
+      if (startDate==endDate){
340
+        return 1;
341
+      }
342
+      var days=(endDate - startDate)/(1*24*60*60*1000);
343
+      return  days;
344
+    },
345
+    getTime(value, temp) {
346
+      if (value != undefined) {
347
+        return uParseTime(value, temp)
348
+      }
349
+      return ''
350
+    }
351
+  },
352
+  mounted() {
353
+
354
+
355
+  },
356
+  watch: {
357
+    paramsObj: {//深度监听,可监听到对象、数组的变化
358
+      handler(val, oldVal) {
359
+
360
+
361
+      },
362
+      deep: true
363
+    }
364
+  }
365
+}
366
+</script>
367
+
368
+
369
+<style lang="scss" scoped>
370
+.prescription-print {
371
+  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
372
+  -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
373
+  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
374
+  margin-bottom: 20px;
375
+  padding: 20px 10px;
376
+}
377
+// *{
378
+//   padding:0;
379
+//   margin: 0;
380
+//   border: 0;
381
+// }
382
+// .print-content{
383
+//   display: flex;
384
+//   justify-content: center;
385
+//   flex-direction:column
386
+// }
387
+// h1{
388
+//   text-align: center;
389
+// }
390
+// .yiliao{
391
+//   display: inline-block;
392
+//   margin: 10px 80px 10px 0px ;
393
+// }
394
+// .print-tab{
395
+//   margin: 0px auto;
396
+// }
397
+// .jiesuan{
398
+//   border-collapse: collapse;
399
+//   text-align: center;
400
+// }
401
+// .jiesuan tr td{
402
+//   border: 1px solid gray;
403
+//   width: 150px;
404
+//   height: 30px;
405
+// }
406
+
407
+
408
+</style>

File diff suppressed because it is too large
+ 566 - 566
src/xt_pages/outpatientTool/components/detail.vue


+ 6 - 4
src/xt_pages/sign/lineUp.vue View File

@@ -10,6 +10,7 @@
10 10
                 >全屏投影</el-button
11 11
             >
12 12
         </div>
13
+        <!-- 全屏状态 -->
13 14
         <div id="fullscreenbroad" v-show="dialogTableVisible">
14 15
             <el-row class="fullRow">
15 16
                 <el-button
@@ -122,9 +123,9 @@
122 123
                             </div>
123 124
                         </div>
124 125
                     </div>
125
-                </div>
126
+                </div> 
126 127
                 
127
-            </div>
128
+             </div>
128 129
         
129 130
             <!-- <div class="page_lineUp">
130 131
                 <div class="lineUpTitle">
@@ -520,10 +521,10 @@ export default {
520 521
         }, 1000 * 60 * 30);
521 522
     },
522 523
     beforeDestroy(){
523
-        clearInterval(this.timer);  // 清除定时器
524
+        clearInterval(this.timer);// 清除定时器
524 525
         this.timer = null
525 526
         clearInterval(this.timerID);
526
-        this.timerID = null;  // 清除定时器
527
+        this.timerID = null;// 清除定时器
527 528
         // clearInterval(this.newTimes);  // 清除定时器
528 529
         // this.newTimes = null
529 530
         let unObj = {
@@ -655,6 +656,7 @@ export default {
655 656
             }
656 657
             return (zero + num).slice(-digit);
657 658
         },
659
+        // 进入全屏
658 660
         fullscreenboard: function() {
659 661
             sessionStorage.setItem('lineUpKey',1);
660 662
             this.dialogTableVisible = true;

+ 42 - 20
src/xt_pages/user/components/PatientForm.vue View File

@@ -1,5 +1,7 @@
1 1
 <template>
2
+  <!-- 电子病历/新增患者 -->
2 3
   <div class="main-contain">
4
+    <!-- 传染病(已隐藏) -->
3 5
     <el-dialog
4 6
       title="新增传染病检查"
5 7
       :visible.sync="dialogFormVisible"
@@ -12,7 +14,7 @@
12 14
           <el-col :span="1">&nbsp;</el-col>
13 15
 
14 16
           <template v-for="(item, index) in form.formItem">
15
-            <el-col :span="7" :key="index">
17
+            <el-col :span="7" ><!--:key="index"-->
16 18
               <el-form-item
17 19
                 :label="item.item_name"
18 20
                 v-if="item.range_type == 1"
@@ -27,11 +29,11 @@
27 29
                 >
28 30
                   <template slot="append">{{ item.unit }}</template>
29 31
                 </el-input>
30
-              </el-form-item>
32
+              </el-form-item><!--:key="item.item_id"-->
31 33
               <el-form-item
32 34
                 :label="item.item_name"
33 35
                 v-else
34
-                :key="item.item_id"
36
+                
35 37
                 :prop="'formItem.' + index + '.value'"
36 38
               >
37 39
                 <el-select
@@ -48,7 +50,7 @@
48 50
                 </el-select>
49 51
               </el-form-item>
50 52
             </el-col>
51
-            <el-col :span="1" :key="'form-col' + index">&nbsp;</el-col>
53
+            <el-col :span="1" >&nbsp;</el-col><!--:key="'form-col' + index"-->
52 54
           </template>
53 55
         </el-row>
54 56
       </el-form>
@@ -133,7 +135,7 @@
133 135
                   <el-input
134 136
                     v-model="form.idCardNo"
135 137
                     @blur="checkIdCardNo"
136
-                  ></el-input>
138
+                  ></el-input><!---->
137 139
                 </el-form-item>
138 140
               </el-col>
139 141
 
@@ -170,14 +172,6 @@
170 172
                 </el-col>
171 173
               </template>
172 174
               <template v-else>
173
-                <!-- <el-col :span="8" >
174
-                  <el-form-item label="患者类型 : " class="is-required" prop="patientType">
175
-                    <el-select v-model="form.patientType"  placeholder="请选择患者类型"  >
176
-                      <el-option v-for="item in styleOptions" :key="item.id" :label="item.name" :value="item.id"/>
177
-                    </el-select>
178
-                  </el-form-item>
179
-                </el-col>-->
180
-
181 175
                 <el-col :span="8">
182 176
                   <el-form-item
183 177
                     label="透析号 : "
@@ -1202,9 +1196,32 @@ export default {
1202 1196
     }
1203 1197
   },
1204 1198
   data() {
1199
+    var checkName = (rule, value, callback) => {
1200
+      const regName=/^([\u4E00-\u9FA5]{1,20}|[a-zA-Z\.\s])$/;
1201
+      if (regName.test(value)){
1202
+        return callback();
1203
+      }
1204
+      callback(new Error("请输入正确的名字"));
1205
+    };
1206
+    var checkage = (rule, value, callback) =>{
1207
+      const regage=/^(?:[1-9][0-9]?|1[01][0-9]|120)$/
1208
+        if(regage.test(value)){
1209
+          callback()
1210
+        }else{
1211
+          callback(new Error('年龄输入不合法'))
1212
+        }
1213
+    }
1214
+    var checkidCard = (rule, value, callback) =>{
1215
+      const regid=/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[0-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}([0-9Xx])$/
1216
+        if(regid.test(value)){
1217
+          callback()
1218
+        }else{
1219
+          callback(new Error('身份证输入有误'))
1220
+        }
1221
+    }
1205 1222
     var checkContagions = (rule, value, callback) => {
1206
-      if (this.form.is_infectious == 0) {
1207
-        return callback(new Error("至少选择一项传染病"));
1223
+      if (this.form.is_infectious == '1') {
1224
+        return callback();
1208 1225
       }
1209 1226
       if (this.form.is_infectious == "2" && value.length == 0) {
1210 1227
         return callback(new Error("至少选择一项传染病"));
@@ -1319,6 +1336,7 @@ export default {
1319 1336
         ],
1320 1337
         dialysisNo: [
1321 1338
           { required: true, message: "请填写透析号", trigger: "blur" }
1339
+          // {type:'number', message:"透析号填写有误", trigger: 'blur'}
1322 1340
         ],
1323 1341
         phone: [{ validator: checkPhone, trigger: "blur" }],
1324 1342
         source: [
@@ -1327,13 +1345,17 @@ export default {
1327 1345
         lapseto: [
1328 1346
           { required: true, message: "请选择治疗状态", trigger: "blur" }
1329 1347
         ],
1330
-        name: [{ required: true, message: "请填写姓名", trigger: "blur" }],
1348
+        name: [{ required: true, message: "请填写姓名", trigger: "blur" },
1349
+        { validator: checkName,min:2,max:5, message: '请输入正确的名字', trigger: 'blur'}
1350
+        ],
1331 1351
         gender: [{ required: true, message: "请选择性别", trigger: "blur" }],
1332 1352
         idCardNo: [
1333
-          { required: true, message: "请填写身份证号", trigger: "blur" }
1353
+          { required: true, message: "请填写身份证号", trigger: "blur" },
1354
+          {validator:checkidCard,trigger:'blur'}
1334 1355
         ],
1335 1356
         birth: [{ required: true, message: "请填写生日", trigger: "blur" }],
1336
-        age: [{ required: true, message: "请填写年龄", trigger: "blur" }],
1357
+        age: [{ required: true, message: "年龄不能为空", trigger: "blur" },
1358
+        {validator: checkage,trigger:'blur'}],
1337 1359
         firstDialysisDate: [
1338 1360
           { required: true, message: "请选择日期", trigger: "blur" }
1339 1361
         ],
@@ -1646,9 +1668,9 @@ export default {
1646 1668
       });
1647 1669
     },
1648 1670
     checkIdCardNo() {
1649
-      console.log(this.form.idCardNo);
1671
+      // console.log(this.form.idCardNo);
1650 1672
       if (!isCardNo(this.form.idCardNo)) {
1651
-        this.$message.error("身份证号码信息有误!");
1673
+        // this.$message.error("身份证号码信息有误!");
1652 1674
         this.form.birth = "";
1653 1675
         return false;
1654 1676
       }

+ 47 - 22
src/xt_pages/workforce/appointment.vue View File

@@ -102,7 +102,10 @@
102 102
         >
103 103
         </el-date-picker>
104 104
       </div>
105
-      <el-tabs v-model="activeName" :tab-position="tabPosition" ref="elTabs">
105
+      <el-tabs v-model="activeName" :tab-position="tabPosition" ref="elTabs" @tab-click="handleClick">
106
+        <el-tab-pane name="historyWeek">
107
+          <span slot="label"><i class="el-icon-date"></i> 历史周期 ({{ theWeek.historyWeek }}) </span>
108
+        </el-tab-pane>
106 109
         <el-tab-pane name="lastWeek">
107 110
           <span slot="label"><i class="el-icon-date"></i> 上周 ({{ theWeek.lastWeek }})</span>
108 111
         </el-tab-pane>
@@ -116,18 +119,18 @@
116 119
           <span slot="label"><i class="el-icon-date"></i> 下下周 ({{ theWeek.nextTwoWeek }})</span>
117 120
         </el-tab-pane>
118 121
       </el-tabs>
119
-
120
-      <table-data ref="tableData"  :week-time="activeName" :partitions-prop="partitions"
121
-                  :schedule-zone-row-prop="scheduleZoneRow"
122
-                  :schedule-zone-prop="scheduleZone" title="" @event1="changePartition"
123
-                  @event2="changeSchedule" v-if="!is_edit" @event3="changeWeekDay">
124
-      </table-data>
125
-
126
-      <edit-table-data ref="edittableData"  :week-time="activeName" :partitions-prop="partitions"
122
+      <div v-if="!is_edit">
123
+        <table-data ref="tableData"  :week-time="activeName" :partitions-prop="partitions"
124
+                    :schedule-zone-row-prop="scheduleZoneRow"
125
+                    :schedule-zone-prop="scheduleZone" title="" @event1="changePartition"
126
+                    @event2="changeSchedule"  @event3="changeWeekDay" v-show="showtableOne">
127
+        </table-data>
128
+      </div>
129
+       <edit-table-data ref="edittableData"  :week-time="activeName" :partitions-prop="partitions"
127 130
                         :schedule-zone-row-prop="scheduleZoneRow" :schedule-zone-prop="scheduleZone"
128 131
                          title="" @event1="changePartition"
129 132
                          @event2="changeSchedule" v-if="is_edit" @event3="changeWeekDay">
130
-                      
133
+
131 134
         <div class="position">
132 135
           <!-- <bread-crumb :crumbs="crumbs"></bread-crumb> -->
133 136
           <div>
@@ -158,7 +161,7 @@
158 161
               type="primary"
159 162
               v-if="is_edit"
160 163
               size="small"
161
-          >下载日志 
164
+          >下载日志
162 165
           </el-button>
163 166
           <el-button type="primary" size="small" icon="el-icon-setting" @click="setScheduleTemplateAction">排班模板
164 167
           </el-button>
@@ -170,6 +173,10 @@
170 173
       </div>
171 174
         </edit-table-data>
172 175
 
176
+        <HistoryWeekTable v-show="showtable" ref="tableDataZero"  :week-time="activeName" partitions-prop="partitions"
177
+                  :schedule-zone-row-prop="scheduleZoneRow"
178
+                  :schedule-zone-prop="scheduleZone" title="" >
179
+          </HistoryWeekTable>
173 180
       <el-dialog title="复制排班" width="600px" :visible.sync="newVisible">
174 181
         <el-form :model="form" ref="form" label-width="90px" :rules="rules">
175 182
           <el-form-item label="周次:">
@@ -220,7 +227,7 @@ import ScheduleUploadExcel from './components/scheduleUploadExcel/index'
220 227
 import {generateLog} from '@/api/config'
221 228
 import {uParseTime} from '@/utils/tools'
222 229
 import EditTableData from "./components/editTableData";
223
-
230
+import HistoryWeekTable from './components/historyWeekTable'
224 231
 export default {
225 232
   name: 'appointment',
226 233
   data() {
@@ -259,6 +266,8 @@ export default {
259 266
       scheduleZone: [],
260 267
       days: [],
261 268
       logs: [],
269
+      showtable:false,
270
+      showtableOne:true,
262 271
       is_edit: false,
263 272
       schedulingTableVisible:false,//全屏
264 273
       scheduleZoneRow: [],
@@ -268,12 +277,15 @@ export default {
268 277
       isExistRepeatVisible: false,
269 278
       exportVisible: false,
270 279
       exportLogVisible: false,
280
+      // 周期
271 281
       theWeek: {
282
+        historyWeek:0,
272 283
         lastWeek: 0,
273 284
         thisWeek: 0,
274 285
         nextWeek: 0,
275 286
         nextTwoWeek: 0
276 287
       },
288
+
277 289
       tableList: [],
278 290
       weekTime: "",
279 291
       schedule_type: 0,
@@ -313,9 +325,24 @@ export default {
313 325
     tableData,
314 326
     BreadCrumb,
315 327
     UploadExcel,
316
-
328
+    HistoryWeekTable
317 329
   },
318 330
   methods: {
331
+    handleClick(e,tab){
332
+      if(e.name == 'historyWeek'){
333
+        this.showtable=true
334
+        this.showtableOne=false
335
+        this.$nextTick(() => {
336
+
337
+          this.$refs.tableDataZero.start()
338
+        })
339
+        // console.log('12343545',this.$refs.tableDataZero);
340
+      }else{
341
+        this.showtable=false
342
+        this.showtableOne=true
343
+      }
344
+
345
+    },
319 346
     dragstart(event, item) {
320 347
       // console.log('start的索引',item.moveIndex)
321 348
       // 开始移动的时候将移动的索引值+图片的url存储下来
@@ -404,17 +431,17 @@ export default {
404 431
           return false
405 432
         }
406 433
         var partitions = response.data.data.partitions
407
-        // console.log("分区",partitions)
434
+        console.log("分区",response.data.data)
408 435
         this.theWeek.thisWeek = response.data.data.theWeek
409 436
         this.theWeek.lastWeek = response.data.data.theLastWeek
410 437
         this.theWeek.nextWeek = response.data.data.theNextWeek
411 438
         this.theWeek.nextTwoWeek = response.data.data.theNextSecWeek
439
+        this.theWeek.historyWeek = response.data.data.theWeek - 2
412 440
         // 在控制变量改变的时候进行 强制渲染更新
413 441
         let childrenRefs = this.$refs.elTabs.$children
414 442
         this.$nextTick(() => {
415 443
           childrenRefs.forEach(child => child.$forceUpdate())
416 444
         })
417
-
418 445
         var that = this
419 446
 
420 447
         if (partitions.length > 0) {
@@ -679,7 +706,7 @@ export default {
679 706
 
680 707
         }
681 708
         // console.log("111111111")
682
-        // console.log(that.scheduleZone)
709
+         console.log(that.scheduleZone)
683 710
       })
684 711
     },
685 712
     changeSch(val){
@@ -870,8 +897,7 @@ export default {
870 897
       } else if (this.activeName == 'nextTwoWeek') {
871 898
         date = date + 14 * 24 * 60 * 60 * 1000
872 899
       }
873
-
874
-      if (this.templateObj.template_id == 0 || this.templateObj.template_id == 1) {
900
+      if (this.templateObj.template_id == 1) {
875 901
         this.$router.push({path: '/workforce/schedule/print', query: {date: date}})
876 902
       }
877 903
       if (this.templateObj.template_id == 2) {
@@ -880,7 +906,6 @@ export default {
880 906
       if (this.templateObj.template_id == 3) {
881 907
         this.$router.push({path: '/scheduleTablePrintOne?partition_id=' + this.partition_id + "&weekTime=" + this.activeName+"&week_date="+this.week_date})
882 908
       }
883
-
884 909
       if(this.templateObj.template_id == 4){
885 910
         this.$router.push({path: '/scheduleTablePrintTwo?partition_id=' + this.partition_id + "&weekTime=" + this.activeName+"&week_date="+this.week_date})
886 911
       }
@@ -2335,7 +2360,7 @@ export default {
2335 2360
 
2336 2361
       return next_monday
2337 2362
     },
2338
-
2363
+    //
2339 2364
     getThreeWeekList() {
2340 2365
       var params = {
2341 2366
         start_time: this.start_time,
@@ -2862,7 +2887,6 @@ export default {
2862 2887
     },
2863 2888
 
2864 2889
     changeWeek(val) {
2865
-
2866 2890
       this.start_time = ""
2867 2891
       this.end_time = ""
2868 2892
       this.newDay = []
@@ -3041,9 +3065,10 @@ export default {
3041 3065
     },
3042 3066
     getlist() {
3043 3067
       getScheduleTemplate().then(response => {
3068
+
3044 3069
         if (response.data.state == 1) {
3045 3070
           var template = response.data.data.template
3046
-
3071
+          console.log('12243254',response.data.data);
3047 3072
           this.templateObj = template
3048 3073
         }
3049 3074
       })

+ 71 - 61
src/xt_pages/workforce/components/ScheduleItem.vue View File

@@ -1,61 +1,71 @@
1
-<template>
2
-  <!-- 排班表填充内容 -->
3
-    <div >
4
-
5
-            <div>
6
-                <span :class='modeColor(scheduleDetail.mode_name)'>{{scheduleDetail.patient}}</span><br/>
7
-                <span v-if="scheduleDetail.mode_name.length>0" :class='modeColor(scheduleDetail.mode_name)'>({{scheduleDetail.mode_name}})</span>
8
-                <br/><span v-if="schedulFlag">{{scheduleDetail.dialysis_machine_name}}</span>
9
-            </div>
10
-    </div>
11
-</template>
12
-
13
-<script>
14
-export default {
15
-  name: "scheduleItem",
16
-  props:{
17
-      scheduleDetail:{
18
-          type:Object,
19
-          default: function (){
20
-              return {
21
-                mode_id:0,
22
-                mode_name:'',
23
-                patient_id:0,
24
-                patient:"",
25
-                dialysis_machine_name:"",
26
-              }
27
-          },
28
-      },
29
-      schedulFlag:{
30
-        type:Boolean,
31
-        default:false
32
-      }
33
-  },
34
-  data() {
35
-    return {
36
-      schedul:false
37
-    }
38
-  },
39
-
40
-  methods:{
41
-        modeColor(name){
42
-            if(name == 'HD'){
43
-
44
-            }else if(name == 'HDF'){
45
-                return 'modeRed'
46
-            }else if(name == 'HD+HP'){
47
-                return 'modePurple'
48
-            }
49
-        }
50
-  }
51
-};
52
-</script>
53
-
54
-<style lang="scss" scoped>
55
-.modeRed{
56
-  color:#ee0ad0;
57
-}
58
-.modePurple{
59
-  color: #53b86e;
60
-}
61
-</style>
1
+<template>
2
+  <!-- 排班表填充内容 -->
3
+    <div >
4
+
5
+            <div>
6
+                <span :class='modeColor(scheduleDetail.mode_name)'>{{scheduleDetail.patient}}</span>
7
+                <template v-if="schedulMode">
8
+                  <br/>
9
+                  <span v-if="scheduleDetail.mode_name.length>0"  :class='modeColor(scheduleDetail.mode_name)' >{{'('+scheduleDetail.mode_name+')'}}</span>
10
+                </template>
11
+                <template v-if="schedulFlag">
12
+                  <br/><span >{{scheduleDetail.dialysis_machine_name}}</span>
13
+                </template>
14
+                
15
+            </div>
16
+    </div>
17
+</template>
18
+
19
+<script>
20
+export default {
21
+  name: "scheduleItem",
22
+  props:{
23
+      scheduleDetail:{
24
+          type:Object,
25
+          default: function (){
26
+              return {
27
+                mode_id:0,
28
+                mode_name:'',
29
+                patient_id:0,
30
+                patient:"",
31
+                dialysis_machine_name:"",
32
+              }
33
+          },
34
+      },
35
+      schedulFlag:{
36
+        type:Boolean,
37
+        default:false
38
+      },
39
+      schedulMode:{
40
+        type:Boolean,
41
+        default:true
42
+      }
43
+  },
44
+  data() {
45
+    return {
46
+      
47
+    }
48
+  },
49
+
50
+  methods:{
51
+        modeColor(name){
52
+            if(name == 'HD'){
53
+
54
+            }else if(name == 'HDF'){
55
+                return 'modeRed'
56
+            }else if(name == 'HD+HP'){
57
+                return 'modePurple'
58
+            }
59
+        }
60
+  }
61
+};
62
+</script>
63
+
64
+<style lang="scss" scoped>
65
+.modeRed{
66
+  color:#ee0ad0;
67
+}
68
+.modePurple{
69
+  color: #53b86e;
70
+}
71
+</style>

File diff suppressed because it is too large
+ 181 - 195
src/xt_pages/workforce/components/editTableData.vue


File diff suppressed because it is too large
+ 3330 - 0
src/xt_pages/workforce/components/historyWeekTable.vue


+ 6 - 13
src/xt_pages/workforce/components/setup_template_dialog.vue View File

@@ -72,9 +72,9 @@ export default {
72 72
       },
73 73
       visible: false,
74 74
       week_time:"",
75
+      week_time_two:"",
75 76
       form: {
76 77
         mode: 0,
77
-        week_time:"",
78 78
       }
79 79
     }
80 80
   },
@@ -107,11 +107,8 @@ export default {
107 107
     },
108 108
 
109 109
     changeWeek(val) {
110
-      this.form.week_time = this.getYearWeek(val) -1
111
-
112
-
113
-
114
-
110
+      // this.week_time = this.getYearWeek(val) -1
111
+      this.template_mode.original_week =  this.getYearWeek(val) -1
115 112
     },
116 113
     _close: function (done) {
117 114
       this.clear()
@@ -121,8 +118,7 @@ export default {
121 118
 
122 119
     },
123 120
     show() {
124
-      this.clear()
125
-      this.form.week_time = this.template_mode.origin_mode
121
+      this.week_time =""
126 122
       this.visible = true
127 123
     },
128 124
     hide() {
@@ -130,8 +126,7 @@ export default {
130 126
       this.visible = false
131 127
     },
132 128
     saveAction: function () {
133
-      console.log(this.form.week_time)
134
-      if(this.form.mode > 0 && this.form.week_time.length == 0){
129
+      if(this.form.mode > 0 && this.week_time.length == 0){
135 130
         this.$message.error("请选择模版自动生成起始周")
136 131
         return
137 132
       }
@@ -168,12 +163,10 @@ export default {
168 163
       }
169 164
     },
170 165
     submit: function () {
171
-      setTemplateMode(this.form.mode,this.form.week_time).then(rs => {
166
+      setTemplateMode(this.form.mode,this.template_mode.original_week).then(rs => {
172 167
         var resp = rs.data
173 168
         if (resp.state == 1) {
174 169
           this.template_mode.mode = this.form.mode
175
-          this.template_mode.original_week = this.form.week_time
176
-
177 170
           this.hide()
178 171
           this.$emit('chenge_mode', this.form.mode)
179 172
         } else {

File diff suppressed because it is too large
+ 299 - 436
src/xt_pages/workforce/components/tableData.vue


+ 6 - 6
src/xt_pages/workforce/components/tableWeeks.vue View File

@@ -119,26 +119,26 @@
119 119
             <el-table-column label="透析模式" min-width="100" align="center">
120 120
                 <template slot-scope="scope">
121 121
                     <!--{{getModeDesc(scope.row.list)}}-->
122
-                    <div v-html>{{getModeDesc(scope.row.list)}}</div>
122
+                    <div >{{getModeDesc(scope.row.list)}}</div>
123 123
 
124 124
                 </template>
125 125
             </el-table-column>
126 126
             <el-table-column label="透析液" min-width="100" align="center">
127 127
                 <template slot-scope="scope">
128
-                    <div v-html>{{getDialysisLiquidDesc(scope.row.list)}}</div>
128
+                    <div >{{getDialysisLiquidDesc(scope.row.list)}}</div>
129 129
                 </template>
130 130
             </el-table-column>
131 131
 
132 132
             <el-table-column label="透析管路" min-width="100" align="center">
133 133
                 <template slot-scope="scope">
134
-                    <div v-html>{{getDialysisPipeDesc(scope.row.list)}}</div>
134
+                    <div >{{getDialysisPipeDesc(scope.row.list)}}</div>
135 135
 
136 136
                 </template>
137 137
             </el-table-column>
138 138
 
139 139
             <el-table-column label="穿刺针" min-width="100" align="center">
140 140
                 <template slot-scope="scope">
141
-                    <div v-html>{{getPunctureNeedleDesc(scope.row.list)}}</div>
141
+                    <div >{{getPunctureNeedleDesc(scope.row.list)}}</div>
142 142
 
143 143
                 </template>
144 144
             </el-table-column>
@@ -146,7 +146,7 @@
146 146
 
147 147
             <el-table-column label="抗凝剂" min-width="100" align="center">
148 148
                 <template slot-scope="scope">
149
-                    <div v-html>{{getAnticoagulantDesc(scope.row.list)}}</div>
149
+                    <div >{{getAnticoagulantDesc(scope.row.list)}}</div>
150 150
 
151 151
                 </template>
152 152
             </el-table-column>
@@ -154,7 +154,7 @@
154 154
 
155 155
             <el-table-column label="促红素" min-width="100" align="center">
156 156
                 <template slot-scope="scope">
157
-                    <div v-html>{{getEPODesc(scope.row.list)}}</div>
157
+                    <div >{{getEPODesc(scope.row.list)}}</div>
158 158
 
159 159
                 </template>
160 160
             </el-table-column>

+ 148 - 0
src/xt_pages/workforce/components/template_schedule_dialog.vue View File

@@ -0,0 +1,148 @@
1
+<template>
2
+  <el-dialog
3
+    width="40%"
4
+    :close-on-click-modal="isClose"
5
+    :close-on-press-escape="isClose"
6
+    :show-close="isClose"
7
+    :visible.sync="visible"
8
+    :before-close="_close"
9
+  >
10
+    <el-form :model="form" label-width="80px" :rules="rules" ref="formValue"     >
11
+            <el-form-item label="患者" required prop="patient_id">
12
+              <el-select
13
+                v-model="form.patient_id"
14
+                placeholder="选择患者"
15
+                filterable
16
+                clearable
17
+              >
18
+                <el-option
19
+                  v-for="item in patients"
20
+                  :key="item.id"
21
+                  :value="item.id"
22
+                  :label="item.name"
23
+                >
24
+                </el-option>
25
+              </el-select>
26
+            </el-form-item>
27
+          <el-form-item label="透析模式" required prop="treat_mode">
28
+        <el-select
29
+          v-model="form.treat_mode"
30
+          placeholder="选择透析模式"
31
+          clearable
32
+        >
33
+          <el-option
34
+            v-for="mode in treatment_modes"
35
+            :key="mode.id"
36
+            :value="mode.id"
37
+            :label="mode.name"
38
+          >
39
+          </el-option>
40
+        </el-select>
41
+      </el-form-item>
42
+    </el-form>
43
+    <div slot="footer" class="dialog-footer">
44
+      <el-button @click="clearAction('formValue')">取消</el-button>
45
+      <el-button type="primary" @click="saveAction()">保 存</el-button>
46
+    </div>
47
+  </el-dialog>
48
+</template>
49
+
50
+<script>
51
+export default {
52
+  name: "TemplateScheduleDialog",
53
+  data() {
54
+    return {
55
+      patients:[],
56
+      visible: false,
57
+      isClose:false,
58
+      form: {
59
+        patient_id: "",
60
+        treat_mode: "",
61
+        weekday: 1,
62
+        time_type: 1,
63
+        device_number_id: 0
64
+      },
65
+      treatment_modes: {},
66
+      rules: {
67
+        patient_id: [{ required: true, message: "请选择患者" }],
68
+        treat_mode: [{ required: true, message: "请选择透析模式" }]
69
+      }
70
+    };
71
+  },
72
+
73
+  created() {
74
+    this.treatment_modes = this.$store.getters.treatment_mode;
75
+  },
76
+  methods: {
77
+    _close: function(done) {
78
+      this.clear();
79
+      done();
80
+    },
81
+    clear: function() {
82
+      this.form.patient_id = "";
83
+      this.form.treat_mode = "";
84
+      this.form.weekday = 1;
85
+      this.form.time_type = 1;
86
+      this.form.device_number_id = 0;
87
+    },
88
+    show(weekday, time_type, device_number_id,patients) {
89
+      this.clear();
90
+      this.patients = patients
91
+      this.form.weekday = weekday;
92
+      this.form.time_type = time_type;
93
+      this.form.device_number_id = device_number_id;
94
+      this.visible = true;
95
+    },
96
+    showWith(patient_id, treat_mode, weekday, time_type, device_number_id,patients) {
97
+      this.clear();
98
+      this.patients = patients
99
+      this.form.patient_id = patient_id;
100
+      this.form.treat_mode = treat_mode;
101
+      this.form.weekday = weekday;
102
+      this.form.time_type = time_type;
103
+      this.form.device_number_id = device_number_id;
104
+      this.visible = true;
105
+    },
106
+    hide() {
107
+      this.clear();
108
+      this.visible = false;
109
+    },clearAction(){
110
+      this.form.patient_id = "";
111
+      this.form.treat_mode = "";
112
+      this.$refs.formValue.resetFields()
113
+      this.visible = false;
114
+    },
115
+    saveAction: function() {
116
+
117
+      if (this.form.patient_id <= 0) {
118
+        this.$message.error("请选择患者", 1500);
119
+        return;
120
+      }
121
+      if (this.form.treat_mode <= 0) {
122
+        this.$message.error("请选择透析模式", 1500);
123
+        return;
124
+      }
125
+      this.$emit(
126
+        "did_selected",
127
+        this.form.patient_id,
128
+        this.form.treat_mode,
129
+        this.form.weekday,
130
+        this.form.time_type,
131
+        this.form.device_number_id
132
+      );
133
+      this.$refs.formValue.resetFields()
134
+
135
+    },
136
+    cancelScheduleAction: function() {
137
+      this.$emit(
138
+        "did_cancel",
139
+        this.form.weekday,
140
+        this.form.time_type,
141
+        this.form.device_number_id
142
+      );
143
+    }
144
+  }
145
+};
146
+</script>
147
+
148
+<style scoped></style>

+ 1 - 1
src/xt_pages/workforce/components/template_schedule_selector_dialog.vue View File

@@ -39,7 +39,7 @@
39 39
       </el-form-item>
40 40
     </el-form>
41 41
     <div slot="footer" class="dialog-footer">
42
-<!--      <el-button @click="cancelScheduleAction">取消排班</el-button>-->
42
+     <el-button @click="visible=false">取消</el-button>
43 43
       <el-button type="primary" @click="saveAction">保 存</el-button>
44 44
     </div>
45 45
   </el-dialog>

File diff suppressed because it is too large
+ 876 - 89
src/xt_pages/workforce/components/template_table.vue


+ 111 - 98
src/xt_pages/workforce/scheduleTablePrintTwo.vue View File

@@ -1,8 +1,8 @@
1 1
 <template>
2
-    <div>
3
-
4
-        <el-button style="float:right;" type="primary" @click="printAction">打印</el-button>
5
-        <table id="scheduleTable" class="scheduleTable" border="1" cellspacing="0">
2
+    <div class="scheduleTablePrint">
3
+      <div class="butt"><el-button style="float:right;" type="primary" @click="printAction">打印</el-button></div>
4
+        <div class="tab">
5
+        <table id="scheduleTable" class="scheduleTable" border="1" cellspacing="0" style='width: 100%;table-layout:fixed;'>
6 6
             <tr>
7 7
                 <td rowspan="2">分区</td>
8 8
                 <td rowspan="2">机号</td>
@@ -13,7 +13,7 @@
13 13
                 <td colspan="3" v-if="five_day == 5">周五({{ weekTitle[4] }})</td>
14 14
                 <td colspan="3" v-if="six_day == 6">周六({{ weekTitle[5] }})</td>
15 15
                 <td colspan="3" v-if="seven_day == 7">周日({{ weekTitle[6] }})</td>
16
-                <td>总数</td>
16
+                 <!-- <td>总数</td>  -->
17 17
             </tr>
18 18
             <tr>
19 19
                 <td v-if="first_day == 1">上午</td>
@@ -41,164 +41,161 @@
41 41
             <tr v-for="(item,index) in scheduleZone" :key="index">
42 42
                 <td style="min-width:50px;">{{ item.area }}</td>
43 43
                 <td style="min-width:50px;">{{ item.cut }}</td>
44
-                <td style="min-width:50px;" v-if="first_day == 1">
44
+                <td style="width:50px;" v-if="first_day == 1">
45 45
                     <span v-if="item.Mon_M.patient_id">
46
-                        <div>{{ item.Mon_M.patient }} </div>
47
-                        <div v-if="item.Mon_M.mode_name != 'HD'">
48
-                            {{ item.Mon_M.mode_name }}
49
-                       </div>
50
-                        <div v-if="item.zone_id>0">{{item.Mon_M.dialysis_machine_name}}</div>
46
+                        <span>{{ item.Mon_M.patient }} </span><br/>
47
+                        <span >{{ item.Mon_M.mode_name }}</span><br/>
48
+                        <span v-show="showflag">{{item.Mon_M.dialysis_machine_name}}</span>
51 49
                     </span>
52 50
                 </td>
53
-                <td style="min-width:50px;" v-if="first_day == 1">
51
+                <td style="width:50px;" v-if="first_day == 1">
54 52
                     <span v-if="item.Mon_A.patient_id">
55
-                        <div>{{ item.Mon_A.patient }} </div>
56
-                        <div v-if="item.Mon_A.mode_name != 'HD'">{{ item.Mon_A.mode_name }}</div>
57
-                       <div v-if="item.zone_id>0">{{item.Mon_A.dialysis_machine_name}}</div>
53
+                        <span>{{ item.Mon_A.patient }} </span><br/>
54
+                        <span >{{ item.Mon_A.mode_name }}</span><br/>
55
+                       <span v-show="showflag">{{item.Mon_A.dialysis_machine_name}}</span>
58 56
                     </span>
59 57
                 </td>
60
-                <td style="min-width:50px;" v-if="first_day == 1">
58
+                <td style="width:50px;" v-if="first_day == 1">
61 59
                     <span v-if="item.Mon_N.patient_id">
62
-                        <div>{{ item.Mon_N.patient }}</div>
63
-                        <div v-if="item.Mon_N.mode_name != 'HD'">{{ item.Mon_N.mode_name }}</div>
64
-                        <div v-if="item.zone_id>0">{{item.Mon_N.dialysis_machine_name}}</div>
60
+                        <span>{{ item.Mon_N.patient }} </span><br/>
61
+                        <span >{{ item.Mon_N.mode_name }}</span><br/>
62
+                        <span v-show="showflag">{{item.Mon_N.dialysis_machine_name}}</span>
65 63
                     </span>
66 64
                 </td>
67
-                <td style="min-width:50px;"  v-if="second_day == 2">
65
+                <td style="width:50px;"  v-if="second_day == 2">
68 66
                     <span v-if="item.Tue_M.patient_id">
69
-                        <div>{{ item.Tue_M.patient }}</div>
70
-                        <div v-if="item.Tue_M.mode_name != 'HD'">{{ item.Tue_M.mode_name }}</div>
71
-                         <div v-if="item.zone_id>0">{{item.Tue_M.dialysis_machine_name}}</div>
67
+                        <span>{{ item.Tue_M.patient }} </span><br/>
68
+                        <span >{{ item.Tue_M.mode_name }}</span><br/>
69
+                        <span v-show="showflag">{{item.Tue_M.dialysis_machine_name}}</span>
72 70
                     </span>
73 71
                 </td>
74
-                <td style="min-width:50px;"  v-if="second_day == 2">
72
+                <td style="width:50px;"  v-if="second_day == 2">
75 73
                     <span v-if="item.Tue_A.patient_id">
76
-                        <div>{{ item.Tue_A.patient }}</div>
77
-                        <div v-if="item.Tue_A.mode_name != 'HD'">{{ item.Tue_A.mode_name }}</div>
78
-                        <div v-if="item.zone_id>0">{{item.Tue_A.dialysis_machine_name}}</div>
74
+                      <span>{{ item.Tue_A.patient }} </span><br/>
75
+                        <span >{{ item.Tue_A.mode_name }}</span><br/>
76
+                        <span v-show="showflag">{{item.Tue_A.dialysis_machine_name}}</span>
79 77
 
80 78
                     </span>
81 79
                 </td>
82
-                <td style="min-width:50px;"  v-if="second_day == 2">
80
+                <td style="width:50px;"  v-if="second_day == 2">
83 81
                     <span v-if="item.Tue_N.patient_id">
84
-                        <div>{{ item.Tue_N.patient }}</div>
85
-                        <div v-if="item.Tue_N.mode_name != 'HD'">{{ item.Tue_N.mode_name }}</div>
86
-                        <div v-if="item.zone_id>0">{{item.Tue_N.dialysis_machine_name}}</div>
82
+                      <span>{{ item.Tue_N.patient }} </span><br/>
83
+                        <span >{{ item.Tue_N.mode_name }}</span><br/>
84
+                        <span v-show="showflag">{{item.Tue_N.dialysis_machine_name}}</span>
87 85
                     </span>
88 86
                 </td>
89
-                <td style="min-width:50px;" v-if="three_day == 3">
87
+                <td style="width:50px;" v-if="three_day == 3">
90 88
                     <span v-if="item.Wed_M.patient_id">
91
-                        <div>{{ item.Wed_M.patient }}</div>
92
-                        <div v-if="item.Wed_M.mode_name != 'HD'">{{ item.Wed_M.mode_name }}</div>
93
-                        <div v-if="item.zone_id>0">{{item.Wed_M.dialysis_machine_name}}</div>
89
+                      <span>{{ item.Wed_M.patient }} </span><br/>
90
+                        <span >{{ item.Wed_M.mode_name }}</span><br/>
91
+                        <span v-show="showflag">{{item.Wed_M.dialysis_machine_name}}</span>
94 92
                     </span>
95 93
                 </td>
96
-                <td style="min-width:50px;" v-if="three_day == 3">
94
+                <td style="width:50px;" v-if="three_day == 3">
97 95
                     <span v-if="item.Wed_A.patient_id">
98
-                        <div>{{ item.Wed_A.patient }}</div>
99
-                        <div v-if="item.Wed_A.mode_name != 'HD'">{{ item.Wed_A.mode_name }}</div>
100
-                       <div v-if="item.zone_id>0">{{item.Wed_A.dialysis_machine_name}}</div>
96
+                      <span>{{ item.Wed_A.patient }} </span><br/>
97
+                        <span >{{ item.Wed_A.mode_name }}</span><br/>
98
+                        <span v-show="showflag">{{item.Wed_A.dialysis_machine_name}}</span>
101 99
                     </span>
102 100
                 </td>
103
-                <td style="min-width:50px;" v-if="three_day == 3">
101
+                <td style="width:50px;" v-if="three_day == 3">
104 102
                     <span v-if="item.Wed_N.patient_id">
105
-                        <div>{{ item.Wed_N.patient }}</div>
106
-                        <div v-if="item.Wed_N.mode_name != 'HD'">{{ item.Wed_N.mode_name }}</div>
107
-                        <div v-if="item.zone_id>0">{{item.Wed_N.dialysis_machine_name}}</div>
103
+                      <span>{{ item.Wed_N.patient }} </span><br/>
104
+                        <span >{{ item.Wed_N.mode_name }}</span><br/>
105
+                        <span v-show="showflag">{{item.Wed_N.dialysis_machine_name}}</span>
108 106
                     </span>
109 107
                 </td>
110
-                <td style="min-width:50px;" v-if="four_day == 4">
108
+                <td style="width:50px;" v-if="four_day == 4">
111 109
                     <span v-if="item.Thurs_M.patient_id">
112
-                        <div>{{ item.Thurs_M.patient }}</div>
113
-                        <div v-if="item.Thurs_M.mode_name != 'HD'">{{ item.Thurs_M.mode_name }}</div>
114
-                        <div v-if="item.zone_id>0">{{item.Thurs_M.dialysis_machine_name}}</div>
110
+                      <span>{{ item.Thurs_M.patient }} </span><br/>
111
+                        <span >{{ item.Thurs_M.mode_name }}</span><br/>
112
+                        <span v-show="showflag">{{item.Thurs_M.dialysis_machine_name}}</span>
115 113
                     </span>
116 114
                 </td>
117
-                <td style="min-width:50px;" v-if="four_day == 4">
115
+                <td style="width:50px;" v-if="four_day == 4">
118 116
                     <span v-if="item.Thurs_A.patient_id">
119
-                        <div>{{ item.Thurs_A.patient }}</div>
120
-                        <div v-if="item.Thurs_A.mode_name != 'HD'">{{ item.Thurs_A.mode_name }}</div>
121
-                       <div v-if="item.zone_id>0">{{item.Thurs_A.dialysis_machine_name}}</div>
117
+                      <span>{{ item.Thurs_A.patient }} </span><br/>
118
+                        <span >{{ item.Thurs_A.mode_name }}</span><br/>
119
+                        <span v-show="showflag">{{item.Thurs_A.dialysis_machine_name}}</span>
122 120
                     </span>
123 121
                 </td>
124
-                <td style="min-width:50px;" v-if="four_day == 4">
122
+                <td style="width:50px;" v-if="four_day == 4">
125 123
                     <span v-if="item.Thurs_N.patient_id">
126
-                        <div>{{ item.Thurs_N.patient }}</div>
127
-                        <div v-if="item.Thurs_N.mode_name != 'HD'">{{ item.Thurs_N.mode_name }}</div>
128
-                        <div v-if="item.zone_id>0">{{item.Thurs_N.dialysis_machine_name}}</div>
124
+                      <span>{{ item.Thurs_N.patient }} </span><br/>
125
+                        <span >{{ item.Thurs_N.mode_name }}</span><br/>
126
+                        <span v-show="showflag">{{item.Thurs_N.dialysis_machine_name}}</span>
129 127
                     </span>
130 128
                 </td>
131
-                <td style="min-width:50px;" v-if="five_day == 5">
129
+                <td style="width:50px;" v-if="five_day == 5">
132 130
                     <span v-if="item.Fri_M.patient_id">
133
-                        <div>{{ item.Fri_M.patient }}</div>
134
-                        <div v-if="item.Fri_M.mode_name != 'HD'">{{ item.Fri_M.mode_name }}</div>
135
-                        <div v-if="item.zone_id>0">{{item.Fri_M.dialysis_machine_name}}</div>
131
+                      <span>{{ item.Fri_M.patient }} </span><br/>
132
+                        <span >{{ item.Fri_M.mode_name }}</span><br/>
133
+                        <span v-show="showflag">{{item.Fri_M.dialysis_machine_name}}</span>
136 134
                     </span>
137 135
                 </td>
138
-                <td style="min-width:50px;" v-if="five_day == 5">
136
+                <td style="width:50px;" v-if="five_day == 5">
139 137
                     <span v-if="item.Fri_A.patient_id">
140
-                        <div>{{ item.Fri_A.patient }}</div>
141
-                        <div v-if="item.Fri_A.mode_name != 'HD'">{{ item.Fri_A.mode_name }}</div>
142
-                        <div v-if="item.zone_id>0">{{item.Fri_A.dialysis_machine_name}}</div>
138
+                      <span>{{ item.Fri_A.patient }} </span><br/>
139
+                        <span >{{ item.Fri_A.mode_name }}</span><br/>
140
+                        <span v-show="showflag">{{item.Fri_A.dialysis_machine_name}}</span>
143 141
                     </span>
144 142
                 </td>
145
-                <td style="min-width:50px;" v-if="five_day == 5">
143
+                <td style="width:50px;" v-if="five_day == 5">
146 144
                     <span v-if="item.Fri_N.patient_id">
147
-                        <div>{{ item.Fri_N.patient }}</div>
148
-                        <div v-if="item.Fri_N.mode_name != 'HD'">{{ item.Fri_N.mode_name }}</div>
149
-                       <div v-if="item.zone_id>0">{{item.Fri_N.dialysis_machine_name}}</div>
145
+                      <span>{{ item.Fri_N.patient }} </span><br/>
146
+                        <span >{{ item.Fri_N.mode_name }}</span><br/>
147
+                        <span v-show="showflag">{{item.Fri_N.dialysis_machine_name}}</span>
150 148
                     </span>
151 149
                 </td>
152
-                <td style="min-width:50px;" v-if="six_day == 6">
150
+                <td style="width:50px;" v-if="six_day == 6">
153 151
                     <span v-if="item.Sat_M.patient_id">
154
-                        <div>{{ item.Sat_M.patient }}</div>
155
-                        <div v-if="item.Sat_M.mode_name != 'HD'">{{ item.Sat_M.mode_name }}</div>
156
-                       <div v-if="item.zone_id>0">{{item.Sat_M.dialysis_machine_name}}</div>
152
+                      <span>{{ item.Sat_M.patient }} </span><br/>
153
+                        <span >{{ item.Sat_M.mode_name }}</span><br/>
154
+                        <span v-show="showflag">{{item.Sat_M.dialysis_machine_name}}</span>
157 155
                     </span>
158 156
                 </td>
159
-                <td style="min-width:50px;" v-if="six_day == 6">
157
+                <td style="width:50px;" v-if="six_day == 6">
160 158
                     <span v-if="item.Sat_A.patient_id">
161
-                        <div>{{ item.Sat_A.patient }}</div>
162
-                        <div v-if="item.Sat_A.mode_name != 'HD'">{{ item.Sat_A.mode_name }}</div>
163
-                        <div v-if="item.zone_id>0">{{item.Sat_A.dialysis_machine_name}}</div>
159
+                      <span>{{ item.Sat_A.patient }} </span><br/>
160
+                        <span >{{ item.Sat_A.mode_name }}</span><br/>
161
+                        <span v-show="showflag">{{item.Sat_A.dialysis_machine_name}}</span>
164 162
                     </span>
165 163
                 </td>
166
-                <td style="min-width:50px;" v-if="six_day == 6">
164
+                <td style="width:50px;" v-if="six_day == 6">
167 165
                     <span v-if="item.Sat_N.patient_id">
168
-                        <div>{{ item.Sat_N.patient }}</div>
169
-                        <div v-if="item.Sat_N.mode_name != 'HD'">{{ item.Sat_N.mode_name }}</div>
170
-                        <div v-if="item.zone_id>0">{{item.Sat_N.dialysis_machine_name}}</div>
166
+                      <span>{{ item.Sat_N.patient }} </span><br/>
167
+                        <span >{{ item.Sat_N.mode_name }}</span><br/>
168
+                        <span v-show="showflag">{{item.Sat_N.dialysis_machine_name}}</span>
171 169
                     </span>
172 170
                 </td>
173
-                <td style="min-width:50px;" v-if="seven_day == 7">
171
+                <td style="width:50px;" v-if="seven_day == 7">
174 172
                     <span v-if="item.Sun_M.patient_id">
175
-                        <div>{{ item.Sun_M.patient }}</div>
176
-                        <div v-if="item.Sun_M.mode_name != 'HD'">{{ item.Sun_M.mode_name }} </div>
177
-                        <div v-if="item.zone_id>0">{{item.Sun_M.dialysis_machine_name}}</div>
173
+                      <span>{{ item.Sun_M.patient }} </span><br/>
174
+                        <span >{{ item.Sun_M.mode_name }}</span><br/>
175
+                        <span v-show="showflag">{{item.Sun_M.dialysis_machine_name}}</span>
178 176
                     </span>
179 177
                 </td>
180
-                <td style="min-width:50px;" v-if="seven_day == 7">
178
+                <td style="width:50px;" v-if="seven_day == 7">
181 179
                     <span v-if="item.Sun_A.patient_id">
182
-                        <div>{{ item.Sun_A.patient }}</div>
183
-                        <div v-if="item.Sun_A.mode_name != 'HD'">{{ item.Sun_A.mode_name }} </div>
184
-                        <div v-if="item.zone_id>0">{{item.Sun_A.dialysis_machine_name}}</div>
180
+                      <span>{{ item.Sun_A.patient }} </span><br/>
181
+                        <span >{{ item.Sun_A.mode_name }}</span><br/>
182
+                        <span v-show="showflag">{{item.Sun_A.dialysis_machine_name}}</span>
185 183
 
186 184
                     </span>
187 185
                 </td>
188
-                <td style="min-width:50px;" v-if="seven_day == 7">
186
+                <td style="width:50px;" v-if="seven_day == 7">
189 187
                     <span v-if="item.Sun_N.patient_id">
190
-                        <div>{{ item.Sun_N.patient }}</div>
191
-                        <div v-if="item.Sun_N.mode_name != 'HD'">{{ item.Sun_N.mode_name }} </div>
192
-                        <div v-if="item.zone_id>0">{{item.Sun_N.dialysis_machine_name}}</div>
188
+                      <span>{{ item.Sun_N.patient }} </span><br/>
189
+                        <span >{{ item.Sun_N.mode_name }}</span><br/>
190
+                        <span v-show="showflag">{{item.Sun_N.dialysis_machine_name}}</span>
193 191
                     </span>
194 192
                 </td>
195
-                <td>{{item.total}}</td>
193
+                <!-- <td>{{item.total}}</td> -->
196 194
             </tr>
197 195
         </table>
196
+      </div>
198 197
     </div>
199
-</template>
200
-
201
-
198
+</template> 
202 199
 
203 200
 <script>
204 201
 import {getSchedulesTwo,getWeekPanelsOne,getPatientSheduleCount,getAllZones,getSolutionSchedule} from "@/api/schedule";
@@ -212,6 +209,7 @@ export default {
212 209
     },
213 210
     data(){
214 211
         return{
212
+            showflag:sessionStorage.getItem('value1'),
215 213
             schedule_type:'',
216 214
             partition_id:'',
217 215
             theType:2,
@@ -1218,8 +1216,23 @@ export default {
1218 1216
 
1219 1217
 
1220 1218
 <style lang="scss">
1221
-td{
1222
-    text-align: center;
1223
-    padding: 5px;
1219
+.scheduleTablePrint{
1220
+  width: 100%;
1221
+  height: 100vh;
1222
+  .butt{
1223
+    height: 50px;
1224
+    line-height: 50px;
1225
+  }
1226
+  .tab{
1227
+    table{
1228
+      td{
1229
+        text-align: center;
1230
+        padding: 5px;
1231
+        word-wrap:break-word;
1232
+      }
1233
+    }
1234
+  }
1235
+  
1224 1236
 }
1237
+
1225 1238
 </style>

+ 20 - 13
src/xt_pages/workforce/template.vue View File

@@ -118,34 +118,41 @@
118 118
 <!--          <template-table :editable="false" :device_numbers="device_numbers" :template="this_week_schedules" :is_editing="false"-->
119 119
 <!--                          :patients="patients" :data="data"></template-table>-->
120 120
 <!--        </el-tab-pane>-->
121
-        <el-tab-pane name="first" :disabled="template_mode.mode == 0" :label=" first_template.week?'一周模版'+ first_template.week+'周':'一周模版'">
121
+        <el-tab-pane name="first" :disabled="template_mode.mode == 0" >
122 122
 <!--          <span slot="label">-->
123 123
 <!--          </span>-->
124
+          <span slot="label"> {{first_template.week?'一周模版':'一周模版'}}
125
+<!--             <span v-if="schedule.mode == 2 && schedule.execute_times%2==0">(下一周)</span>-->
126
+<!--             <span v-if="schedule.mode == 2 && schedule.execute_times%2!=0">(本周)</span>-->
127
+
128
+             <span v-if="schedule.mode ==1">(本周)</span>
129
+             <span v-if="schedule.mode == 2 && schedule.execute_times%2==0">(下一周)</span>
130
+             <span v-if="schedule.mode == 2 && schedule.execute_times%2!=0">(本周)</span>
131
+          </span>
124 132
 
125 133
         </el-tab-pane>
126 134
 
127
-        <el-tab-pane :label="  second_template.week?'二周模版' + second_template.week+'周':'二周模版'" name="second" :disabled="template_mode.mode != 2 && template_mode.mode != 3 && template_mode.mode  != 4">
135
+        <el-tab-pane  name="second" :disabled="template_mode.mode != 2 && template_mode.mode != 3 && template_mode.mode  != 4">
128 136
 <!--          <template-table   ref="table_two"  :is_editing="is_editing" :editable="true" :device_numbers="device_numbers" :template="first_template"-->
129 137
 <!--                           :modes="modes"  :patients="patients" @cancel_sch="refresh" :data="data"  :template_mode="template_mode"  @cur_info="cur_info" @saveData="saveData" @event1="changeZone" @saveSuccessTwo="refresh"></template-table>-->
130
-
138
+          <span slot="label"> {{second_template.week?'二周模版':'二周模版'}}
139
+<!--             <span v-if="schedule.mode == 2 && schedule.execute_times%2==0">(下一周)</span>-->
140
+<!--             <span v-if="schedule.mode == 2 && schedule.execute_times%2!=0">(本周)</span>-->
141
+<!--            -->
142
+              <span v-if="schedule.mode == 2 && schedule.execute_times%2==0">(本周)</span>
143
+             <span v-if="schedule.mode == 2 && schedule.execute_times%2!=0">(下一周)</span>
144
+          </span>
131 145
         </el-tab-pane>
132 146
 
133 147
 
134 148
 
135
-        <el-tab-pane :label="  third_template.week? '三周模版' + third_template.week+'周':'三周模版'" name="third" :disabled="template_mode.mode != 3 && template_mode.mode  != 4">
136
-<!--          <span slot="label">三周模版{{ third_template.week?third_template.week+'周':" "}}-->
137
-<!--             <span v-if="schedule.execute_times%2==0">(下一周)</span>-->
138
-<!--             <span v-if="schedule.execute_times%2!=0">(本周)</span>-->
139
-<!--                  <span v-if="schedule.execute_times%4==0">(本周)</span>-->
140
-<!--             <span v-if="schedule.execute_times%4==1">(下一周)</span>-->
141
-<!--            <span v-if="schedule.execute_times%4==2">(下二周)</span>-->
142
-<!--             <span v-if="schedule.execute_times%4==3">(下三周)</span>-->
143
-<!--           </span>-->
149
+        <el-tab-pane :label="  third_template.week? '三周模版':'三周模版'" name="third" :disabled="template_mode.mode != 3 && template_mode.mode  != 4">
150
+
144 151
 <!--          <template-table  ref="table_three"  :is_editing="is_editing" :editable="true" :device_numbers="device_numbers" :template="first_template"-->
145 152
 <!--                           :modes="modes"  :patients="patients" @cancel_sch="refresh" :data="data"  :template_mode="template_mode"  @cur_info="cur_info" @saveData="saveData" @event1="changeZone" @saveSuccessTwo="refresh"></template-table>-->
146 153
         </el-tab-pane>
147 154
 
148
-      <el-tab-pane :label="four_template.week?'四周模版'+four_template.week+'周':'四周模版'" name="four" :disabled="template_mode.mode  != 4 ">
155
+      <el-tab-pane :label="four_template.week?'四周模版':'四周模版'" name="four" :disabled="template_mode.mode  != 4 ">
149 156
 <!--          <span slot="label"> 四周模版 {{ four_template.week?four_template.week+'周':""}}-->
150 157
 <!--             <span v-if="schedule.execute_times%2==0">(下一周)</span>-->
151 158
 <!--             <span v-if="schedule.execute_times%2!=0">(本周)</span>-->