Browse Source

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

陈少旭 1 year ago
parent
commit
1871a50afa
60 changed files with 4333 additions and 791 deletions
  1. 264 15
      package-lock.json
  2. 5 1
      package.json
  3. 53 0
      src/api/dialysis.js
  4. 29 2
      src/api/patient.js
  5. 97 0
      src/api/role/admin.js
  6. BIN
      src/assets/evaluate/blue_V.png
  7. BIN
      src/assets/evaluate/jietu.png
  8. BIN
      src/assets/evaluate/red_A.png
  9. BIN
      src/assets/evaluate/tool-a.png
  10. BIN
      src/assets/evaluate/tool-v.png
  11. BIN
      src/assets/evaluate/xgtl-tool-tips.jpg
  12. BIN
      src/assets/evaluate/xgtl_default.png
  13. BIN
      src/assets/evaluate/xgtl_tool_rotate.png
  14. 1 0
      src/lang/en.js
  15. 1 0
      src/lang/zh.js
  16. 2 0
      src/router/index.js
  17. 19 0
      src/router/modules/logIndex.js
  18. 161 148
      src/router/modules/patient.js
  19. 9 0
      src/router/modules/workforce.js
  20. 1 1
      src/views/layout/Layout.vue
  21. 2 2
      src/views/layout/components/Sidebar/index.vue
  22. 4 4
      src/xt_pages/dialysis/batch_print/batch_print_order_six.vue
  23. 2 4
      src/xt_pages/dialysis/batch_print/batch_print_order_sixtyseven.vue
  24. 1 12
      src/xt_pages/dialysis/batch_print/batch_print_order_twelve.vue
  25. 14 18
      src/xt_pages/dialysis/batch_print/batch_print_order_twentySeven.vue
  26. 7 1
      src/xt_pages/dialysis/details/DialysisPrescription.vue
  27. 1 1
      src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue
  28. 13 2
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  29. 6 2
      src/xt_pages/dialysis/details/dialysisOff.vue
  30. 36 7
      src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue
  31. 77 1
      src/xt_pages/dialysis/template/DialysisPrintOrderSixtyfour.vue
  32. 10 2
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentySeven.vue
  33. 2 2
      src/xt_pages/dialysis/template/DialysisPrintOrdersixtySeven.vue
  34. 685 0
      src/xt_pages/log/index.vue
  35. 2 0
      src/xt_pages/medicalScheduling/schedulingStatistics.vue
  36. 44 46
      src/xt_pages/outpatientCharges/invoiceTemplate/printEleven.vue
  37. 3 3
      src/xt_pages/outpatientCharges/statementTemplate/printeEleven.vue
  38. 188 1
      src/xt_pages/qcd/treatmentControlAnalysis/components/TimePersonal.vue
  39. 373 6
      src/xt_pages/role/admin.vue
  40. 29 9
      src/xt_pages/sign/Schedulingdisplay.vue
  41. 2 1
      src/xt_pages/stock/drugs/drugStockOutOrder.vue
  42. 1 0
      src/xt_pages/stock/drugs/inventoryPrint.vue
  43. 1 0
      src/xt_pages/stock/inventoryPrint.vue
  44. 38 2
      src/xt_pages/stock/query/goodNewQuery.vue
  45. 2 0
      src/xt_pages/stock/query/goodNewQueryPrint.vue
  46. 36 0
      src/xt_pages/stock/query/purchaseNewStockQuery.vue
  47. 2 0
      src/xt_pages/stock/query/purchaseNewStockQueryPrint.vue
  48. 1351 0
      src/xt_pages/user/Sitemap.vue
  49. 8 10
      src/xt_pages/user/components/PatientDetail.vue
  50. 10 12
      src/xt_pages/user/components/PatientForm.vue
  51. 109 100
      src/xt_pages/user/components/PatientSidebar.vue
  52. 15 0
      src/xt_pages/user/dialysisRecord.vue
  53. 165 165
      src/xt_pages/user/evaluationtool/Muscleforce.vue
  54. 128 32
      src/xt_pages/user/patients.vue
  55. 162 160
      src/xt_pages/user/vascularAccess.vue
  56. 1 1
      src/xt_pages/workforce/components/tableWeeks.vue
  57. 20 1
      src/xt_pages/workforce/next_remind_print.vue
  58. 1 0
      src/xt_pages/workforce/printOne.vue
  59. 23 13
      src/xt_pages/workforce/remind_print.vue
  60. 117 4
      src/xt_pages/workforce/remind_print_setting_one.vue

+ 264 - 15
package-lock.json View File

@@ -36,6 +36,21 @@
36 36
         "@babel/types": "7.0.0-beta.31"
37 37
       }
38 38
     },
39
+    "@babel/runtime": {
40
+      "version": "7.22.11",
41
+      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.11.tgz",
42
+      "integrity": "sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA==",
43
+      "requires": {
44
+        "regenerator-runtime": "^0.14.0"
45
+      },
46
+      "dependencies": {
47
+        "regenerator-runtime": {
48
+          "version": "0.14.0",
49
+          "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz",
50
+          "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA=="
51
+        }
52
+      }
53
+    },
39 54
     "@babel/template": {
40 55
       "version": "7.0.0-beta.31",
41 56
       "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.31.tgz",
@@ -122,6 +137,12 @@
122 137
         "moment": "*"
123 138
       }
124 139
     },
140
+    "@types/raf": {
141
+      "version": "3.4.0",
142
+      "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.0.tgz",
143
+      "integrity": "sha512-taW5/WYqo36N7V39oYyHP9Ipfd5pNFvGTIQsNGj86xV88YQ7GnI30/yMfKDF7Zgin0m3e+ikX88FvImnK4RjGw==",
144
+      "optional": true
145
+    },
125 146
     "JSV": {
126 147
       "version": "4.0.2",
127 148
       "resolved": "https://registry.npmjs.org/JSV/-/JSV-4.0.2.tgz",
@@ -483,8 +504,7 @@
483 504
     "atob": {
484 505
       "version": "2.1.2",
485 506
       "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
486
-      "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
487
-      "dev": true
507
+      "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg=="
488 508
     },
489 509
     "autoprefixer": {
490 510
       "version": "7.2.3",
@@ -1474,6 +1494,11 @@
1474 1494
         }
1475 1495
       }
1476 1496
     },
1497
+    "base64-arraybuffer": {
1498
+      "version": "1.0.2",
1499
+      "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
1500
+      "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ=="
1501
+    },
1477 1502
     "base64-js": {
1478 1503
       "version": "1.3.0",
1479 1504
       "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz",
@@ -1723,6 +1748,11 @@
1723 1748
         "electron-to-chromium": "^1.3.30"
1724 1749
       }
1725 1750
     },
1751
+    "btoa": {
1752
+      "version": "1.2.1",
1753
+      "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz",
1754
+      "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g=="
1755
+    },
1726 1756
     "buffer": {
1727 1757
       "version": "4.9.1",
1728 1758
       "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
@@ -1915,6 +1945,36 @@
1915 1945
       "integrity": "sha512-7nK5qs17icQaX6V3/RYrJkOsZyRNnroA4+ZwxaKJzIKy+crIy0Mz5CBlLySd2SNV+4nbUZeqeNfiaEieUBu3aA==",
1916 1946
       "dev": true
1917 1947
     },
1948
+    "canvg": {
1949
+      "version": "3.0.10",
1950
+      "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.10.tgz",
1951
+      "integrity": "sha512-qwR2FRNO9NlzTeKIPIKpnTY6fqwuYSequ8Ru8c0YkYU7U0oW+hLUvWadLvAu1Rl72OMNiFhoLu4f8eUjQ7l/+Q==",
1952
+      "optional": true,
1953
+      "requires": {
1954
+        "@babel/runtime": "^7.12.5",
1955
+        "@types/raf": "^3.4.0",
1956
+        "core-js": "^3.8.3",
1957
+        "raf": "^3.4.1",
1958
+        "regenerator-runtime": "^0.13.7",
1959
+        "rgbcolor": "^1.0.1",
1960
+        "stackblur-canvas": "^2.0.0",
1961
+        "svg-pathdata": "^6.0.3"
1962
+      },
1963
+      "dependencies": {
1964
+        "core-js": {
1965
+          "version": "3.32.1",
1966
+          "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.1.tgz",
1967
+          "integrity": "sha512-lqufgNn9NLnESg5mQeYsxQP5w7wrViSj0jr/kv6ECQiByzQkrn1MKvV0L3acttpDqfQrHLwr2KCMgX5b8X+lyQ==",
1968
+          "optional": true
1969
+        },
1970
+        "regenerator-runtime": {
1971
+          "version": "0.13.11",
1972
+          "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
1973
+          "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==",
1974
+          "optional": true
1975
+        }
1976
+      }
1977
+    },
1918 1978
     "caseless": {
1919 1979
       "version": "0.12.0",
1920 1980
       "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
@@ -2794,6 +2854,14 @@
2794 2854
       "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=",
2795 2855
       "dev": true
2796 2856
     },
2857
+    "css-line-break": {
2858
+      "version": "2.1.0",
2859
+      "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz",
2860
+      "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==",
2861
+      "requires": {
2862
+        "utrie": "^1.0.2"
2863
+      }
2864
+    },
2797 2865
     "css-loader": {
2798 2866
       "version": "0.28.7",
2799 2867
       "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.28.7.tgz",
@@ -3195,8 +3263,7 @@
3195 3263
     "deep-equal": {
3196 3264
       "version": "1.0.1",
3197 3265
       "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz",
3198
-      "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=",
3199
-      "dev": true
3266
+      "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU="
3200 3267
     },
3201 3268
     "deep-is": {
3202 3269
       "version": "0.1.3",
@@ -3451,6 +3518,12 @@
3451 3518
         "domelementtype": "1"
3452 3519
       }
3453 3520
     },
3521
+    "dompurify": {
3522
+      "version": "2.4.7",
3523
+      "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.7.tgz",
3524
+      "integrity": "sha512-kxxKlPEDa6Nc5WJi+qRgPbOAbgTpSULL+vI3NUXsZMlkJxTqYI9wg5ZTay2sFrdZRWHPWNi+EdAhcJf81WtoMQ==",
3525
+      "optional": true
3526
+    },
3454 3527
     "domready": {
3455 3528
       "version": "1.0.8",
3456 3529
       "resolved": "https://registry.npmjs.org/domready/-/domready-1.0.8.tgz",
@@ -4362,6 +4435,11 @@
4362 4435
       "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
4363 4436
       "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk="
4364 4437
     },
4438
+    "fast-diff": {
4439
+      "version": "1.1.2",
4440
+      "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz",
4441
+      "integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig=="
4442
+    },
4365 4443
     "fast-json-stable-stringify": {
4366 4444
       "version": "2.0.0",
4367 4445
       "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
@@ -4388,6 +4466,11 @@
4388 4466
         "websocket-driver": ">=0.5.1"
4389 4467
       }
4390 4468
     },
4469
+    "fflate": {
4470
+      "version": "0.4.8",
4471
+      "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.4.8.tgz",
4472
+      "integrity": "sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA=="
4473
+    },
4391 4474
     "figures": {
4392 4475
       "version": "2.0.0",
4393 4476
       "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
@@ -4759,7 +4842,8 @@
4759 4842
         "ansi-regex": {
4760 4843
           "version": "2.1.1",
4761 4844
           "bundled": true,
4762
-          "dev": true
4845
+          "dev": true,
4846
+          "optional": true
4763 4847
         },
4764 4848
         "aproba": {
4765 4849
           "version": "1.2.0",
@@ -4782,13 +4866,15 @@
4782 4866
         "balanced-match": {
4783 4867
           "version": "1.0.0",
4784 4868
           "bundled": true,
4785
-          "dev": true
4869
+          "dev": true,
4870
+          "optional": true
4786 4871
         },
4787 4872
         "brace-expansion": {
4788 4873
           "version": "1.1.11",
4789 4874
           "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
4790 4875
           "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
4791 4876
           "dev": true,
4877
+          "optional": true,
4792 4878
           "requires": {
4793 4879
             "balanced-match": "^1.0.0",
4794 4880
             "concat-map": "0.0.1"
@@ -4804,19 +4890,22 @@
4804 4890
         "code-point-at": {
4805 4891
           "version": "1.1.0",
4806 4892
           "bundled": true,
4807
-          "dev": true
4893
+          "dev": true,
4894
+          "optional": true
4808 4895
         },
4809 4896
         "concat-map": {
4810 4897
           "version": "0.0.1",
4811 4898
           "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
4812 4899
           "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
4813
-          "dev": true
4900
+          "dev": true,
4901
+          "optional": true
4814 4902
         },
4815 4903
         "console-control-strings": {
4816 4904
           "version": "1.1.0",
4817 4905
           "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
4818 4906
           "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
4819
-          "dev": true
4907
+          "dev": true,
4908
+          "optional": true
4820 4909
         },
4821 4910
         "core-util-is": {
4822 4911
           "version": "1.0.2",
@@ -4946,7 +5035,8 @@
4946 5035
         "inherits": {
4947 5036
           "version": "2.0.3",
4948 5037
           "bundled": true,
4949
-          "dev": true
5038
+          "dev": true,
5039
+          "optional": true
4950 5040
         },
4951 5041
         "ini": {
4952 5042
           "version": "1.3.5",
@@ -4960,6 +5050,7 @@
4960 5050
           "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
4961 5051
           "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
4962 5052
           "dev": true,
5053
+          "optional": true,
4963 5054
           "requires": {
4964 5055
             "number-is-nan": "^1.0.0"
4965 5056
           }
@@ -4976,6 +5067,7 @@
4976 5067
           "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
4977 5068
           "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
4978 5069
           "dev": true,
5070
+          "optional": true,
4979 5071
           "requires": {
4980 5072
             "brace-expansion": "^1.1.7"
4981 5073
           }
@@ -4983,13 +5075,15 @@
4983 5075
         "minimist": {
4984 5076
           "version": "0.0.8",
4985 5077
           "bundled": true,
4986
-          "dev": true
5078
+          "dev": true,
5079
+          "optional": true
4987 5080
         },
4988 5081
         "minipass": {
4989 5082
           "version": "2.3.5",
4990 5083
           "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz",
4991 5084
           "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==",
4992 5085
           "dev": true,
5086
+          "optional": true,
4993 5087
           "requires": {
4994 5088
             "safe-buffer": "^5.1.2",
4995 5089
             "yallist": "^3.0.0"
@@ -5010,6 +5104,7 @@
5010 5104
           "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
5011 5105
           "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
5012 5106
           "dev": true,
5107
+          "optional": true,
5013 5108
           "requires": {
5014 5109
             "minimist": "0.0.8"
5015 5110
           }
@@ -5097,7 +5192,8 @@
5097 5192
         "number-is-nan": {
5098 5193
           "version": "1.0.1",
5099 5194
           "bundled": true,
5100
-          "dev": true
5195
+          "dev": true,
5196
+          "optional": true
5101 5197
         },
5102 5198
         "object-assign": {
5103 5199
           "version": "4.1.1",
@@ -5111,6 +5207,7 @@
5111 5207
           "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
5112 5208
           "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
5113 5209
           "dev": true,
5210
+          "optional": true,
5114 5211
           "requires": {
5115 5212
             "wrappy": "1"
5116 5213
           }
@@ -5205,7 +5302,8 @@
5205 5302
         "safe-buffer": {
5206 5303
           "version": "5.1.2",
5207 5304
           "bundled": true,
5208
-          "dev": true
5305
+          "dev": true,
5306
+          "optional": true
5209 5307
         },
5210 5308
         "safer-buffer": {
5211 5309
           "version": "2.1.2",
@@ -5247,6 +5345,7 @@
5247 5345
           "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
5248 5346
           "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
5249 5347
           "dev": true,
5348
+          "optional": true,
5250 5349
           "requires": {
5251 5350
             "code-point-at": "^1.0.0",
5252 5351
             "is-fullwidth-code-point": "^1.0.0",
@@ -5268,6 +5367,7 @@
5268 5367
           "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
5269 5368
           "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
5270 5369
           "dev": true,
5370
+          "optional": true,
5271 5371
           "requires": {
5272 5372
             "ansi-regex": "^2.0.0"
5273 5373
           }
@@ -5315,13 +5415,15 @@
5315 5415
         "wrappy": {
5316 5416
           "version": "1.0.2",
5317 5417
           "bundled": true,
5318
-          "dev": true
5418
+          "dev": true,
5419
+          "optional": true
5319 5420
         },
5320 5421
         "yallist": {
5321 5422
           "version": "3.0.3",
5322 5423
           "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz",
5323 5424
           "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==",
5324
-          "dev": true
5425
+          "dev": true,
5426
+          "optional": true
5325 5427
         }
5326 5428
       }
5327 5429
     },
@@ -5834,6 +5936,32 @@
5834 5936
         }
5835 5937
       }
5836 5938
     },
5939
+    "html2canvas": {
5940
+      "version": "1.4.1",
5941
+      "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz",
5942
+      "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==",
5943
+      "requires": {
5944
+        "css-line-break": "^2.1.0",
5945
+        "text-segmentation": "^1.0.3"
5946
+      }
5947
+    },
5948
+    "html2pdf.js": {
5949
+      "version": "0.10.1",
5950
+      "resolved": "https://registry.npmjs.org/html2pdf.js/-/html2pdf.js-0.10.1.tgz",
5951
+      "integrity": "sha512-3onwwhOWsZfNjIZwV6YIJ6FVhXk+X9YxHSqzeS6hup+1dGi2DHI+zZYUJ+iFnvtaYcjlhyrILL1fvRCUOa8Fcg==",
5952
+      "requires": {
5953
+        "es6-promise": "^4.2.5",
5954
+        "html2canvas": "^1.0.0",
5955
+        "jspdf": "^2.3.1"
5956
+      },
5957
+      "dependencies": {
5958
+        "es6-promise": {
5959
+          "version": "4.2.8",
5960
+          "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz",
5961
+          "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w=="
5962
+        }
5963
+      }
5964
+    },
5837 5965
     "htmlparser2": {
5838 5966
       "version": "3.10.1",
5839 5967
       "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
@@ -6734,6 +6862,29 @@
6734 6862
         "nomnom": "^1.5.x"
6735 6863
       }
6736 6864
     },
6865
+    "jspdf": {
6866
+      "version": "2.5.1",
6867
+      "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-2.5.1.tgz",
6868
+      "integrity": "sha512-hXObxz7ZqoyhxET78+XR34Xu2qFGrJJ2I2bE5w4SM8eFaFEkW2xcGRVUss360fYelwRSid/jT078kbNvmoW0QA==",
6869
+      "requires": {
6870
+        "@babel/runtime": "^7.14.0",
6871
+        "atob": "^2.1.2",
6872
+        "btoa": "^1.2.1",
6873
+        "canvg": "^3.0.6",
6874
+        "core-js": "^3.6.0",
6875
+        "dompurify": "^2.2.0",
6876
+        "fflate": "^0.4.8",
6877
+        "html2canvas": "^1.0.0-rc.5"
6878
+      },
6879
+      "dependencies": {
6880
+        "core-js": {
6881
+          "version": "3.32.1",
6882
+          "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.1.tgz",
6883
+          "integrity": "sha512-lqufgNn9NLnESg5mQeYsxQP5w7wrViSj0jr/kv6ECQiByzQkrn1MKvV0L3acttpDqfQrHLwr2KCMgX5b8X+lyQ==",
6884
+          "optional": true
6885
+        }
6886
+      }
6887
+    },
6737 6888
     "jsprim": {
6738 6889
       "version": "1.4.2",
6739 6890
       "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
@@ -8352,6 +8503,11 @@
8352 8503
         "no-case": "^2.2.0"
8353 8504
       }
8354 8505
     },
8506
+    "parchment": {
8507
+      "version": "1.1.4",
8508
+      "resolved": "https://registry.npmjs.org/parchment/-/parchment-1.1.4.tgz",
8509
+      "integrity": "sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg=="
8510
+    },
8355 8511
     "parse-asn1": {
8356 8512
       "version": "5.1.4",
8357 8513
       "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz",
@@ -11410,6 +11566,56 @@
11410 11566
       "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==",
11411 11567
       "dev": true
11412 11568
     },
11569
+    "quill": {
11570
+      "version": "1.3.7",
11571
+      "resolved": "https://registry.npmjs.org/quill/-/quill-1.3.7.tgz",
11572
+      "integrity": "sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==",
11573
+      "requires": {
11574
+        "clone": "^2.1.1",
11575
+        "deep-equal": "^1.0.1",
11576
+        "eventemitter3": "^2.0.3",
11577
+        "extend": "^3.0.2",
11578
+        "parchment": "^1.1.4",
11579
+        "quill-delta": "^3.6.2"
11580
+      },
11581
+      "dependencies": {
11582
+        "clone": {
11583
+          "version": "2.1.2",
11584
+          "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
11585
+          "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w=="
11586
+        },
11587
+        "eventemitter3": {
11588
+          "version": "2.0.3",
11589
+          "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-2.0.3.tgz",
11590
+          "integrity": "sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg=="
11591
+        }
11592
+      }
11593
+    },
11594
+    "quill-delta": {
11595
+      "version": "3.6.3",
11596
+      "resolved": "https://registry.npmjs.org/quill-delta/-/quill-delta-3.6.3.tgz",
11597
+      "integrity": "sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==",
11598
+      "requires": {
11599
+        "deep-equal": "^1.0.1",
11600
+        "extend": "^3.0.2",
11601
+        "fast-diff": "1.1.2"
11602
+      }
11603
+    },
11604
+    "quill-image-extend-module": {
11605
+      "version": "1.1.2",
11606
+      "resolved": "https://registry.npmjs.org/quill-image-extend-module/-/quill-image-extend-module-1.1.2.tgz",
11607
+      "integrity": "sha512-yHJWZWlTjNZzV34zuT4H55ttDwMxmVJ7JUgKnt/Wd3ejUNcaPOV57/sKG8VEMU5mL7bKZPIKmBdb3weM0M5UeA==",
11608
+      "dev": true
11609
+    },
11610
+    "raf": {
11611
+      "version": "3.4.1",
11612
+      "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz",
11613
+      "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==",
11614
+      "optional": true,
11615
+      "requires": {
11616
+        "performance-now": "^2.1.0"
11617
+      }
11618
+    },
11413 11619
     "randomatic": {
11414 11620
       "version": "3.1.1",
11415 11621
       "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz",
@@ -11904,6 +12110,12 @@
11904 12110
       "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
11905 12111
       "dev": true
11906 12112
     },
12113
+    "rgbcolor": {
12114
+      "version": "1.0.1",
12115
+      "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz",
12116
+      "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==",
12117
+      "optional": true
12118
+    },
11907 12119
     "right-align": {
11908 12120
       "version": "0.1.3",
11909 12121
       "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
@@ -12954,6 +13166,12 @@
12954 13166
         "safe-buffer": "^5.1.1"
12955 13167
       }
12956 13168
     },
13169
+    "stackblur-canvas": {
13170
+      "version": "2.6.0",
13171
+      "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.6.0.tgz",
13172
+      "integrity": "sha512-8S1aIA+UoF6erJYnglGPug6MaHYGo1Ot7h5fuXx4fUPvcvQfcdw2o/ppCse63+eZf8PPidSu4v1JnmEVtEDnpg==",
13173
+      "optional": true
13174
+    },
12957 13175
     "stackframe": {
12958 13176
       "version": "1.0.4",
12959 13177
       "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.0.4.tgz",
@@ -13398,6 +13616,12 @@
13398 13616
         }
13399 13617
       }
13400 13618
     },
13619
+    "svg-pathdata": {
13620
+      "version": "6.0.3",
13621
+      "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz",
13622
+      "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==",
13623
+      "optional": true
13624
+    },
13401 13625
     "svg-sprite-loader": {
13402 13626
       "version": "3.5.2",
13403 13627
       "resolved": "https://registry.npmjs.org/svg-sprite-loader/-/svg-sprite-loader-3.5.2.tgz",
@@ -13496,6 +13720,14 @@
13496 13720
         "inherits": "2"
13497 13721
       }
13498 13722
     },
13723
+    "text-segmentation": {
13724
+      "version": "1.0.3",
13725
+      "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz",
13726
+      "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==",
13727
+      "requires": {
13728
+        "utrie": "^1.0.2"
13729
+      }
13730
+    },
13499 13731
     "text-table": {
13500 13732
       "version": "0.2.0",
13501 13733
       "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -14070,6 +14302,14 @@
14070 14302
       "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
14071 14303
       "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
14072 14304
     },
14305
+    "utrie": {
14306
+      "version": "1.0.2",
14307
+      "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz",
14308
+      "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==",
14309
+      "requires": {
14310
+        "base64-arraybuffer": "^1.0.2"
14311
+      }
14312
+    },
14073 14313
     "uuid": {
14074 14314
       "version": "3.4.0",
14075 14315
       "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
@@ -14196,6 +14436,15 @@
14196 14436
       "resolved": "https://registry.npmjs.org/vue-multiselect/-/vue-multiselect-2.0.8.tgz",
14197 14437
       "integrity": "sha512-OKdWOwCLXiDGHVaYqWZXx4s2YNqOmfIqFMTd0Y3SzCcFIp19d7UeLB4UVZvIHammzMX4qrQ3yAzNHJmE0ApgHA=="
14198 14438
     },
14439
+    "vue-quill-editor": {
14440
+      "version": "3.0.6",
14441
+      "resolved": "https://registry.npmjs.org/vue-quill-editor/-/vue-quill-editor-3.0.6.tgz",
14442
+      "integrity": "sha512-g20oSZNWg8Hbu41Kinjd55e235qVWPLfg4NvsLW6d+DhgBTFbEuMpcWlUdrD6qT3+Noim6DRu18VLM9lVShXOQ==",
14443
+      "requires": {
14444
+        "object-assign": "^4.1.1",
14445
+        "quill": "^1.3.4"
14446
+      }
14447
+    },
14199 14448
     "vue-router": {
14200 14449
       "version": "3.0.1",
14201 14450
       "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.0.1.tgz",

+ 5 - 1
package.json View File

@@ -5,7 +5,6 @@
5 5
   "author": "Pan <panfree23@gmail.com>",
6 6
   "license": "MIT",
7 7
   "scripts": {
8
-
9 8
     "dev": "cross-env BABEL_ENV=development webpack-dev-server  --inline --progress --config build/webpack.dev.conf.js ",
10 9
     "build:prod": "cross-env NODE_ENV=production env_config=prod node build/build.js",
11 10
     "build:sit": "cross-env NODE_ENV=production env_config=sit node build/build.js && npm run fixfont && npm run fiximg",
@@ -51,9 +50,12 @@
51 50
     "element-ui": "^2.13.2",
52 51
     "file-saver": "^1.3.8",
53 52
     "font-awesome": "4.7.0",
53
+    "html2canvas": "^1.4.1",
54
+    "html2pdf.js": "^0.10.1",
54 55
     "js-cookie": "2.2.0",
55 56
     "jsbarcode": "^3.11.5",
56 57
     "jsonlint": "1.6.3",
58
+    "jspdf": "^2.5.1",
57 59
     "jszip": "3.1.5",
58 60
     "mockjs": "1.0.1-beta3",
59 61
     "moment": "^2.24.0",
@@ -74,6 +76,7 @@
74 76
     "vue-count-to": "1.0.13",
75 77
     "vue-i18n": "7.3.2",
76 78
     "vue-multiselect": "2.0.8",
79
+    "vue-quill-editor": "^3.0.6",
77 80
     "vue-router": "3.0.1",
78 81
     "vue-splitpane": "1.0.2",
79 82
     "vuedraggable": "^2.16.0",
@@ -115,6 +118,7 @@
115 118
     "postcss-loader": "2.0.9",
116 119
     "postcss-url": "7.3.0",
117 120
     "qiniu-webpack-plugin": "^0.4.2",
121
+    "quill-image-extend-module": "^1.1.2",
118 122
     "rimraf": "2.6.2",
119 123
     "sass-loader": "^6.0.7",
120 124
     "sass-resources-loader": "^1.3.4",

+ 53 - 0
src/api/dialysis.js View File

@@ -457,3 +457,56 @@ export function saveInformation(params){
457 457
     params:params
458 458
   })
459 459
 }
460
+
461
+
462
+export function getPatientList(keyword,params){
463
+   console.log("paramswoowwo",params)
464
+  return request({
465
+    url:"/api/patient/getpatientlist?keyword="+keyword,
466
+    method:"get",
467
+    params:params
468
+  })
469
+}
470
+
471
+export function getPrescriptionLogList(params){
472
+  
473
+  return request({
474
+    url:"/api/patient/getprescriptionloglist",
475
+    method:"get",
476
+    params:params
477
+  })
478
+}
479
+
480
+export function getBeforLogList(params){
481
+ 
482
+  return request({
483
+    url:"/api/patient/getbeforloglist",
484
+    method:"get",
485
+    params:params
486
+  })
487
+}
488
+
489
+export function getDocLogLogList(params){
490
+  return request({
491
+    url:"/api/patient/getdocloglist",
492
+    method:"get",
493
+    params:params
494
+  })
495
+}
496
+
497
+export function getMonitorLogList(params){
498
+  return request({
499
+    url:"/api/patient/getmonitorloglist",
500
+    method:"get",
501
+    params:params
502
+  })
503
+}
504
+
505
+export function getAferLogList(params){
506
+
507
+  return request({
508
+    url:"/api/patient/getafterloglist",
509
+    method:"get",
510
+    params:params,
511
+  })
512
+}

+ 29 - 2
src/api/patient.js View File

@@ -246,9 +246,9 @@ export function deleteRescueRecords(patient_id, ids_str) {
246 246
   })
247 247
 }
248 248
 
249
-export function EditLapseto(patient_id, data) {
249
+export function EditLapseto(patient_id, data,start_time,end_time,address) {
250 250
   return request({
251
-    url: '/api/patients/lapseto/edit?id=' + patient_id,
251
+    url: '/api/patients/lapseto/edit?id=' + patient_id+"&start_time="+start_time+"&end_time="+end_time+"&patient_address="+address,
252 252
     method: 'post',
253 253
     data: data
254 254
   })
@@ -767,4 +767,31 @@ export function getPatientAllagic(id,params){
767 767
     method:"get",
768 768
     params:params
769 769
   })
770
+}
771
+
772
+export function saveSitemap(data){
773
+  
774
+  return request({
775
+    url:"/api/patient/savesitemap",
776
+    method:"Post",
777
+    data:data,
778
+  })
779
+}
780
+
781
+export function getPatientSitemap(patient_id,params){
782
+  
783
+  return request({
784
+    url:"/api/patient/getpatientsitemap?patient_id="+patient_id,
785
+    method:"Get",
786
+    params:params
787
+  })
788
+}
789
+
790
+export function updateSiteMap(data){
791
+   
792
+  return request({
793
+    url:"/api/patient/updatesitemap",
794
+    method:"Post",
795
+    data:data,
796
+  })
770 797
 }

+ 97 - 0
src/api/role/admin.js View File

@@ -185,4 +185,101 @@ export function toTestThrityMent(params){
185 185
     method:"Get",
186 186
     params:params,
187 187
   })
188
+}
189
+
190
+
191
+export function saveEnterprise(data){
192
+  
193
+  return request({
194
+    url:"/api/sign/saveenerprise",
195
+    method:"post",
196
+    data:data,
197
+  })
198
+}
199
+
200
+export function getEnterPriseById(params){
201
+  return request({
202
+    url:"/api/sign/getenerprisebyid",
203
+    method:"Get",
204
+    params:params
205
+  })
206
+}
207
+
208
+export function getMobileCode(params){
209
+   return request({
210
+    url:"/api/sign/getmobilecode",
211
+    method:"Get",
212
+    params:params,
213
+   })
214
+}
215
+
216
+export function savePersionEnterPrise(data){
217
+  return request({
218
+    url:"/api/sign/getpersionenterprise",
219
+    method:"post",
220
+    data:data,
221
+  })
222
+}
223
+
224
+export function getPerseEnterPriseById(admin_user_id,params){
225
+  
226
+  return request({
227
+    url:"/api/sign/getpersenterprisebyid?admin_user_id="+admin_user_id,
228
+    method:"Get",
229
+    params:params
230
+  })
231
+}
232
+
233
+export function CreatePersionSeal(admin_user_id,params){
234
+
235
+  return request({
236
+    url:"/api/device/sign/creterpersionseal?admin_user_id="+admin_user_id,
237
+    method:"get",
238
+    params:params,
239
+  })
240
+}
241
+
242
+export function CreateNewEnterPrise(admin_user_id,params){
243
+ 
244
+   return request({
245
+     url:"/api/device/sign/createnewenterprise?admin_user_id="+admin_user_id,
246
+     method:"Get",
247
+     params:params,
248
+   })
249
+}
250
+
251
+export function toTestThrity(params){
252
+
253
+   return request({
254
+    url:"/api/device/contractid",
255
+    method:"Get",
256
+    params:params
257
+   })
258
+}
259
+
260
+export function toEndEnterPrise(params){
261
+  
262
+  return request({
263
+    url:"/api/device/endenterprise",
264
+    method:"get",
265
+    params:params
266
+  })
267
+}
268
+
269
+export function getEnterPriseDetail(params){
270
+
271
+  return request({
272
+    url:"/api/device/getenterprisedetail",
273
+    method:"get",
274
+    params:params
275
+  })
276
+}
277
+
278
+export function UploadPrintOrder(data){
279
+  
280
+  return request({
281
+    url:"/api/device/uploadprintorder",
282
+    method:"Post",
283
+    data:data,
284
+  })
188 285
 }

BIN
src/assets/evaluate/blue_V.png View File


BIN
src/assets/evaluate/jietu.png View File


BIN
src/assets/evaluate/red_A.png View File


BIN
src/assets/evaluate/tool-a.png View File


BIN
src/assets/evaluate/tool-v.png View File


BIN
src/assets/evaluate/xgtl-tool-tips.jpg View File


BIN
src/assets/evaluate/xgtl_default.png View File


BIN
src/assets/evaluate/xgtl_tool_rotate.png View File


+ 1 - 0
src/lang/en.js View File

@@ -83,6 +83,7 @@ export default {
83 83
     dialysisRecord: 'dialysisRecord',
84 84
     dialysisInfo:'dialysisInfo',
85 85
     dialysis_index:'dialysis_index',
86
+    log_index:'log_index',
86 87
     scheduling: 'scheduling',
87 88
     device: 'Device',
88 89
     deviceManage: 'Device Manage',

+ 1 - 0
src/lang/zh.js View File

@@ -297,6 +297,7 @@ export default {
297 297
     zeroSummary: '零用明细汇总',
298 298
     hospitalhistory: '住院历史',
299 299
     dialysis_index:'信息归档',
300
+    log_index:"日志查询",
300 301
     objectRegistration:"医疗器械登记",
301 302
     Dialysisanalysis: '专业质控'
302 303
   },

+ 2 - 0
src/router/index.js View File

@@ -10,6 +10,7 @@ import patient from './modules/patient'
10 10
 import qcd from './modules/qcd'
11 11
 import Dialysisanalysis from './modules/Dialysisanalysis'
12 12
 import DialysisIndex from './modules/dialysisIndex'
13
+import DialysisLogIndex from './modules/logIndex'
13 14
 import stock from './modules/stock'
14 15
 import weight_sign from './modules/weight_sign'
15 16
 import workforce from './modules/workforce'
@@ -206,6 +207,7 @@ var _asy_router_map = [
206 207
   supply,
207 208
   Dialysisanalysis,// 新菜单6.1
208 209
   DialysisIndex,
210
+  DialysisLogIndex,
209 211
 ]
210 212
 
211 213
 var is_asy_router = process.env.NODE_ENV === 'production' // true; 设置为 true 强制进行路由验证

+ 19 - 0
src/router/modules/logIndex.js View File

@@ -0,0 +1,19 @@
1
+import Layout from '@/views/layout/Layout'
2
+
3
+export default {
4
+ 
5
+  path: '/log_index',
6
+  component: Layout,
7
+  name:'log_index',
8
+  redirct: '/dialysis/dialysisLogIndex',
9
+  children: [{
10
+    path: '/dialysis/dialysisLogIndex',
11
+    component: () => import('@/xt_pages/log/index'),
12
+    name: '日志查询',
13
+    meta: {
14
+      title: '日志查询',
15
+      noCache: true
16
+    }
17
+  },]
18
+ 
19
+}

+ 161 - 148
src/router/modules/patient.js View File

@@ -74,6 +74,7 @@ export default {
74 74
       noCache: true
75 75
     }
76 76
   },
77
+  
77 78
 
78 79
   {
79 80
     path: '/patients/patient/:mid/vascularAccessDetail/:pid',
@@ -324,157 +325,169 @@ export default {
324 325
       noCache: true
325 326
     }
326 327
   },
327
-  // {//评估工具/跌倒评估
328
-  //   path: '/patients/patient/:id/Fallassessment',
329
-  //   component: () => import('@/xt_pages/user/evaluationtool/Fallassessment'),
330
-  //   hidden: true,
331
-  //   is_menu: false,
332
-  //   name: 'Fallassessment',
333
-  //   meta: {
334
-  //     title: 'firstDiseasePrint',
335
-  //     noCache: true
336
-  //   }
337
-  // },
338
-  // {//小儿跌倒风险评估
339
-  //   path: '/patients/patient/:id/pediatricFallAssessment',
340
-  //   component: () => import('@/xt_pages/user/evaluationtool/pediatricFallAssessment'),
341
-  //   hidden: true,
342
-  //   is_menu: false,
343
-  //   name: 'pediatricFallAssessment',
344
-  //   meta: {
345
-  //     title: 'pediatricFallAssessment',
346
-  //     noCache: true
347
-  //   }
348
-  // },
349
-  // {//压疮风险评估
350
-  //   path: '/patients/patient/:id/pressuresore',
351
-  //   component: () => import('@/xt_pages/user/evaluationtool/pressuresore'),
352
-  //   hidden: true,
353
-  //   is_menu: false,
354
-  //   name: 'pressuresore',
355
-  //   meta: {
356
-  //     title: 'pressuresore',
357
-  //     noCache: true
358
-  //   }
359
-  // },
360
-  // {//oh压疮评估
361
-  //   path: '/patients/patient/:id/OHpressuresore',
362
-  //   component: () => import('@/xt_pages/user/evaluationtool/OHpressuresore'),
363
-  //   hidden: true,
364
-  //   is_menu: false,
365
-  //   name: 'OHpressuresore',
366
-  //   meta: {
367
-  //     title: 'OHpressuresore',
368
-  //     noCache: true
369
-  //   }
370
-  // },
371
-  // {//日常生活能力评估
372
-  //   path: '/patients/patient/:id/dailyLife',
373
-  //   component: () => import('@/xt_pages/user/evaluationtool/dailyLife'),
374
-  //   hidden: true,
375
-  //   is_menu: false,
376
-  //   name: 'dailyLife',
377
-  //   meta: {
378
-  //     title: 'dailyLife',
379
-  //     noCache: true
380
-  //   }
381
-  // },
382
-  // {//导管脱落风险评估
383
-  //   path: '/patients/patient/:id/Cathetershedding',
384
-  //   component: () => import('@/xt_pages/user/evaluationtool/Cathetershedding'),
385
-  //   hidden: true,
386
-  //   is_menu: false,
387
-  //   name: 'Cathetershedding',
388
-  //   meta: {
389
-  //     title: 'Cathetershedding',
390
-  //     noCache: true
391
-  //   }
392
-  // },
393
-  // {//RASS及疼痛评估
394
-  //   path: '/patients/patient/:id/RassAssessment',
395
-  //   component: () => import('@/xt_pages/user/evaluationtool/RassAssessment'),
396
-  //   hidden: true,
397
-  //   is_menu: false,
398
-  //   name: 'RassAssessment',
399
-  //   meta: {
400
-  //     title: 'RassAssessment',
401
-  //     noCache: true
402
-  //   }
403
-  // },
404
-  // {//营养状况评估
405
-  //   path: '/patients/patient/:id/nourishmentAssessment',
406
-  //   component: () => import('@/xt_pages/user/evaluationtool/nourishmentAssessment'),
407
-  //   hidden: true,
408
-  //   is_menu: false,
409
-  //   name: 'nourishmentAssessment',
410
-  //   meta: {
411
-  //     title: 'nourishmentAssessment',
412
-  //     noCache: true
413
-  //   }
414
-  // },
415
-  // {//约束告知单
416
-  //   path: '/patients/patient/:id/Constraintnotification',
417
-  //   component: () => import('@/xt_pages/user/evaluationtool/Constraintnotification'),
418
-  //   hidden: true,
419
-  //   is_menu: false,
420
-  //   name: 'Constraintnotification',
421
-  //   meta: {
422
-  //     title: 'Constraintnotification',
423
-  //     noCache: true
424
-  //   }
425
-  // },
426
-  // {//心理评估
427
-  //   path: '/patients/patient/:id/mindAssessment',
428
-  //   component: () => import('@/xt_pages/user/evaluationtool/mindAssessment'),
429
-  //   hidden: true,
430
-  //   is_menu: false,
431
-  //   name: 'mindAssessment',
432
-  //   meta: {
433
-  //     title: 'mindAssessment',
434
-  //     noCache: true
435
-  //   }
436
-  // },
437
-  // {//瘙痒评估
438
-  //   path: '/patients/patient/:id/pruritusAssessment',
439
-  //   component: () => import('@/xt_pages/user/evaluationtool/pruritusAssessment'),
440
-  //   hidden: true,
441
-  //   is_menu: false,
442
-  //   name: 'pruritusAssessment',
443
-  //   meta: {
444
-  //     title: 'pruritusAssessment',
445
-  //     noCache: true
446
-  //   }
447
-  // },
448
-  // {//血液透析患者评估
449
-  //   path: '/patients/patient/:id/hemodialysis',
450
-  //   component: () => import('@/xt_pages/user/evaluationtool/hemodialysis'),
451
-  //   hidden: true,
452
-  //   is_menu: false,
453
-  //   name: 'hemodialysis',
454
-  //   meta: {
455
-  //     title: 'hemodialysis',
456
-  //     noCache: true
457
-  //   }
458
-  // },
459
-  // {//Glasgow昏迷评分量表
460
-  //   path: '/patients/patient/:id/Glasgow',
461
-  //   component: () => import('@/xt_pages/user/evaluationtool/Glasgow'),
462
-  //   hidden: true,
463
-  //   is_menu: false,
464
-  //   name: 'Glasgow',
465
-  //   meta: {
466
-  //     title: 'Glasgow',
467
-  //     noCache: true
468
-  //   }
469
-  // },
470
-  // {//肌力评估表
471
-  //   path: '/patients/patient/:id/Muscleforce',
472
-  //   component: () => import('@/xt_pages/user/evaluationtool/Muscleforce'),
328
+  
329
+  {//评估工具/跌倒评估
330
+    path: '/patients/patient/:id/Fallassessment',
331
+    component: () => import('@/xt_pages/user/evaluationtool/Fallassessment'),
332
+    hidden: true,
333
+    is_menu: false,
334
+    name: 'Fallassessment',
335
+    meta: {
336
+      title: 'firstDiseasePrint',
337
+      noCache: true
338
+    }
339
+  },
340
+  {//小儿跌倒风险评估
341
+    path: '/patients/patient/:id/pediatricFallAssessment',
342
+    component: () => import('@/xt_pages/user/evaluationtool/pediatricFallAssessment'),
343
+    hidden: true,
344
+    is_menu: false,
345
+    name: 'pediatricFallAssessment',
346
+    meta: {
347
+      title: 'pediatricFallAssessment',
348
+      noCache: true
349
+    }
350
+  },
351
+  {//压疮风险评估
352
+    path: '/patients/patient/:id/pressuresore',
353
+    component: () => import('@/xt_pages/user/evaluationtool/pressuresore'),
354
+    hidden: true,
355
+    is_menu: false,
356
+    name: 'pressuresore',
357
+    meta: {
358
+      title: 'pressuresore',
359
+      noCache: true
360
+    }
361
+  },
362
+  {//oh压疮评估
363
+    path: '/patients/patient/:id/OHpressuresore',
364
+    component: () => import('@/xt_pages/user/evaluationtool/OHpressuresore'),
365
+    hidden: true,
366
+    is_menu: false,
367
+    name: 'OHpressuresore',
368
+    meta: {
369
+      title: 'OHpressuresore',
370
+      noCache: true
371
+    }
372
+  },
373
+  {//日常生活能力评估
374
+    path: '/patients/patient/:id/dailyLife',
375
+    component: () => import('@/xt_pages/user/evaluationtool/dailyLife'),
376
+    hidden: true,
377
+    is_menu: false,
378
+    name: 'dailyLife',
379
+    meta: {
380
+      title: 'dailyLife',
381
+      noCache: true
382
+    }
383
+  },
384
+  {//导管脱落风险评估
385
+    path: '/patients/patient/:id/Cathetershedding',
386
+    component: () => import('@/xt_pages/user/evaluationtool/Cathetershedding'),
387
+    hidden: true,
388
+    is_menu: false,
389
+    name: 'Cathetershedding',
390
+    meta: {
391
+      title: 'Cathetershedding',
392
+      noCache: true
393
+    }
394
+  },
395
+  {//RASS及疼痛评估
396
+    path: '/patients/patient/:id/RassAssessment',
397
+    component: () => import('@/xt_pages/user/evaluationtool/RassAssessment'),
398
+    hidden: true,
399
+    is_menu: false,
400
+    name: 'RassAssessment',
401
+    meta: {
402
+      title: 'RassAssessment',
403
+      noCache: true
404
+    }
405
+  },
406
+  {//营养状况评估
407
+    path: '/patients/patient/:id/nourishmentAssessment',
408
+    component: () => import('@/xt_pages/user/evaluationtool/nourishmentAssessment'),
409
+    hidden: true,
410
+    is_menu: false,
411
+    name: 'nourishmentAssessment',
412
+    meta: {
413
+      title: 'nourishmentAssessment',
414
+      noCache: true
415
+    }
416
+  },
417
+  {//约束告知单
418
+    path: '/patients/patient/:id/Constraintnotification',
419
+    component: () => import('@/xt_pages/user/evaluationtool/Constraintnotification'),
420
+    hidden: true,
421
+    is_menu: false,
422
+    name: 'Constraintnotification',
423
+    meta: {
424
+      title: 'Constraintnotification',
425
+      noCache: true
426
+    }
427
+  },
428
+  {//心理评估
429
+    path: '/patients/patient/:id/mindAssessment',
430
+    component: () => import('@/xt_pages/user/evaluationtool/mindAssessment'),
431
+    hidden: true,
432
+    is_menu: false,
433
+    name: 'mindAssessment',
434
+    meta: {
435
+      title: 'mindAssessment',
436
+      noCache: true
437
+    }
438
+  },
439
+  {//瘙痒评估
440
+    path: '/patients/patient/:id/pruritusAssessment',
441
+    component: () => import('@/xt_pages/user/evaluationtool/pruritusAssessment'),
442
+    hidden: true,
443
+    is_menu: false,
444
+    name: 'pruritusAssessment',
445
+    meta: {
446
+      title: 'pruritusAssessment',
447
+      noCache: true
448
+    }
449
+  },
450
+  {//血液透析患者评估
451
+    path: '/patients/patient/:id/hemodialysis',
452
+    component: () => import('@/xt_pages/user/evaluationtool/hemodialysis'),
453
+    hidden: true,
454
+    is_menu: false,
455
+    name: 'hemodialysis',
456
+    meta: {
457
+      title: 'hemodialysis',
458
+      noCache: true
459
+    }
460
+  },
461
+  {//Glasgow昏迷评分量表
462
+    path: '/patients/patient/:id/Glasgow',
463
+    component: () => import('@/xt_pages/user/evaluationtool/Glasgow'),
464
+    hidden: true,
465
+    is_menu: false,
466
+    name: 'Glasgow',
467
+    meta: {
468
+      title: 'Glasgow',
469
+      noCache: true
470
+    }
471
+  },
472
+  {//肌力评估表
473
+    path: '/patients/patient/:id/Muscleforce',
474
+    component: () => import('@/xt_pages/user/evaluationtool/Muscleforce'),
475
+    hidden: true,
476
+    is_menu: false,
477
+    name: 'Muscleforce',
478
+    meta: {
479
+      title: 'Muscleforce',
480
+      noCache: true
481
+    }
482
+  },
483
+  // {//血管通路图
484
+  //   path: '/patients/patient/:id/angiogram',
485
+  //   component: () => import('@/xt_pages/user/angiogram'),
473 486
   //   hidden: true,
474 487
   //   is_menu: false,
475
-  //   name: 'Muscleforce',
488
+  //   name: 'angiogram',
476 489
   //   meta: {
477
-  //     title: 'Muscleforce',
490
+  //     title: 'angiogram',
478 491
   //     noCache: true
479 492
   //   }
480 493
   // },

+ 9 - 0
src/router/modules/workforce.js View File

@@ -56,6 +56,15 @@ export default {
56 56
       noCache: true
57 57
     }
58 58
   },
59
+  // {//患者调班
60
+  //   path: '/workforce/Patientshift',
61
+  //   component: () => import('@/xt_pages/workforce/Patientshift'),
62
+  //   name: '患者调班',
63
+  //   meta: {
64
+  //     title: '患者调班',
65
+  //     noCache: true
66
+  //   }
67
+  // },
59 68
   {
60 69
     path: '/workforce/schedule/printone',
61 70
     component: () => import('@/xt_pages/workforce/printOne'),

+ 1 - 1
src/views/layout/Layout.vue View File

@@ -134,7 +134,7 @@ export default {
134 134
   created(){
135 135
     let menzhen = ['hospitalStation',"hospitalRecord","hospitalCharges","DepositManagement","hisTool",'outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord'];
136 136
     let bingli = ['User','createPatient'];
137
-    let touxi = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control','dialysis_index'];
137
+    let touxi = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control','dialysis_index','log_index'];
138 138
     let kucun = ['stockManage','stockDrugs','selfPreparedMedicine','inventoryTransfer','wareHouseManage','otherManagement'];
139 139
     let caigou = ['supplyManage','supplyList'];
140 140
     let peizhi = ['system','roleManage','DepartManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config','basicConfig'];

+ 2 - 2
src/views/layout/components/Sidebar/index.vue View File

@@ -48,7 +48,7 @@ export default {
48 48
   },
49 49
   created(){
50 50
     if(this.navTitle == '透析管理'){
51
-      let nameArr = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control','dialysis_index','Dialysisanalysis'];
51
+      let nameArr = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control','dialysis_index','Dialysisanalysis','log_index'];
52 52
       // console.log('permission_routers',this.permission_routers)
53 53
       let routerArr = [];
54 54
       this.permission_routers.map(item => {
@@ -120,7 +120,7 @@ export default {
120 120
             this.$emit('func',a)
121 121
           }
122 122
         }else if(newVal == '透析管理'){
123
-          let nameArr = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control','dialysis_index','Dialysisanalysis'];
123
+          let nameArr = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control','dialysis_index','Dialysisanalysis','log_index'];
124 124
           // console.log('permission_routers',this.permission_routers)
125 125
           let routerArr = [];
126 126
           this.permission_routers.map(item => {

+ 4 - 4
src/xt_pages/dialysis/batch_print/batch_print_order_six.vue View File

@@ -915,7 +915,7 @@
915 915
                       style="padding: 2px 0; line-height: 23px; display: flex"
916 916
                     >
917 917
                       <div class="inline_block" style="flex: 1"
918
-                        v-if="org_id!=10440 && org_id!=0  && org_id!=10469 && org_id!=10490 && org_id!=10478 && org_id!=10495 && org_id!=10510">
918
+                        v-if="org_id!=10440 && org_id!=0  && org_id!=10469 && org_id!=10490 && org_id!=10478 && org_id!=10495 && org_id!=10510 && org_id!=10460">
919 919
                         上次透后体重:
920 920
                         <div
921 921
                           class="under_line"
@@ -941,7 +941,7 @@
941 941
                       </div>
942 942
 
943 943
                       <div class="inline_block" style="flex: 1"
944
-                        v-if="(org_id==10440 ||  org_id ==0 || org_id==10469 || org_id==10490 || org_id==10478  || org_id==10495)&& org_id!=10510">
944
+                        v-if="(org_id==10440 ||  org_id ==0 || org_id==10469 || org_id==10490 || org_id==10478  || org_id==10495 || org_id == 10460)&& org_id!=10510">
945 945
                         上次透后体重:
946 946
                         <div
947 947
                           class="under_line"
@@ -1349,7 +1349,7 @@
1349 1349
                           <td width="60">时间</td>
1350 1350
                           <td width="60">血压<br />(mmHg)</td>
1351 1351
                           <td width="50">脉搏<br />(次/分)</td>
1352
-                          <td width="50">呼吸<br />(次/分)</td>
1352
+                          <td width="50" v-if="org_id!=10489">呼吸<br />(次/分)</td>
1353 1353
                           <td width="50">血流量<br />(ml/min)</td>
1354 1354
                           <td width="50" v-if="org_id == 10478">动脉压<br />(mmHg)</td>
1355 1355
                           <td width="50">静脉压<br />(mmHg)</td>
@@ -1467,7 +1467,7 @@
1467 1467
                                 : ""
1468 1468
                             }}
1469 1469
                           </td>
1470
-                          <td>
1470
+                          <td v-if="org_id!=10489">
1471 1471
                             {{
1472 1472
                               monitor_record.breathing_rate
1473 1473
                                 ? monitor_record.breathing_rate

+ 2 - 4
src/xt_pages/dialysis/batch_print/batch_print_order_sixtyseven.vue View File

@@ -88,12 +88,10 @@
88 88
                   <span style="width: 14%;">震颤:</span>
89 89
                   <span style="width: 14%;">外观:</span>
90 90
                   <span style="width: 14%;">置换方式:
91
-                    {{
92
-                          getDisplaceLiquiPart(record.prescription.displace_liqui_part)
93
-                        }}
91
+                    {{getDisplaceLiquiPart(record.prescription.displace_liqui_part)}}
94 92
                   </span>
95 93
                   <span style="width: 14%;">置换总量:
96
-                    {{ record.prescription.displace_liqui_value ? record.prescription.displace_liqui_value : "/" }}
94
+                    {{ record.prescription.displace_liqui_value ? record.prescription.displace_liqui_value : "/" }}L
97 95
                   </span>
98 96
                 </td>
99 97
               </tr>

+ 1 - 12
src/xt_pages/dialysis/batch_print/batch_print_order_twelve.vue View File

@@ -208,18 +208,7 @@
208 208
                   <tr style="text-align:left">
209 209
                     <td colspan="11" style="padding-left:5px">
210 210
                       治疗抗凝:<label-box
211
-                        :isChecked="
212
-
213
-                            isCheckBoxChecked(
214
-                              record.prescription,
215
-                              'anticoagulant',
216
-                              6
217
-                            ) || isCheckBoxChecked(
218
-                              record.prescription,
219
-                              'anticoagulant',
220
-                              7
221
-                            )
222
-                        "
211
+                        :isChecked="isCheckBoxChecked(record.prescription,'anticoagulant',6) || isCheckBoxChecked(record.prescription,'anticoagulant',7) || isCheckBoxChecked(record.prescription,'anticoagulant',3)"
223 212
                         showValue="低分子肝素:"
224 213
                       ></label-box>
225 214
                       <span style="width:50px;display: inline-block;">{{

+ 14 - 18
src/xt_pages/dialysis/batch_print/batch_print_order_twentySeven.vue View File

@@ -97,14 +97,7 @@
97 97
                       </td>
98 98
                       <td width="120">
99 99
                         <div class="under-line">&nbsp;
100
-                          <span style="width:30px;text-align:left;">
101
-                          {{ record.assessment_after_dislysis.actual_treatment_hour ? 
102
-                          record.assessment_after_dislysis.actual_treatment_hour : '' }}
103
-                        </span>h
104
-                        <span style="width:30px;text-align:left;" v-if="record.assessment_after_dislysis.actual_treatment_minute>0">
105
-                          {{ record.assessment_after_dislysis.actual_treatment_minute ? 
106
-                          record.assessment_after_dislysis.actual_treatment_minute : '0' }}
107
-                        </span>min
100
+                          {{ getTime(record.schedule_date, "{y}-{m}-{d}") }}
108 101
                       </div>
109 102
                       </td>
110 103
                       <td width="10"></td>
@@ -113,9 +106,9 @@
113 106
                       <td width="120">
114 107
                         <div class="under-line">&nbsp;
115 108
                           {{
116
-                            record.patient.total_dialysis +
109
+                            record.Count +
117 110
                             record.patient.user_sys_before_count
118
-                              ? record.patient.total_dialysis +
111
+                              ? record.Count +
119 112
                                 record.patient.user_sys_before_count
120 113
                               : "/"
121 114
                           }}
@@ -1558,12 +1551,11 @@
1558 1551
                               <td width="70">抗凝方式:</td>
1559 1552
                               <td width="120">
1560 1553
                                 <label-box
1561
-                                  :isChecked="
1562
-                                    record.prescription.anticoagulant == 6
1554
+                                  :isChecked="(record.prescription.anticoagulant == 6 || record.prescription.anticoagulant == 7 || record.prescription.anticoagulant == 3)
1563 1555
                                       ? true
1564 1556
                                       : false
1565 1557
                                   "
1566
-                                  showValue="低分子肝素"
1558
+                                  showValue="低分子肝素"
1567 1559
                                 ></label-box>
1568 1560
                               </td>
1569 1561
 
@@ -1572,7 +1564,7 @@
1572 1564
                                   &nbsp;
1573 1565
                                   <span
1574 1566
                                     v-if="
1575
-                                      record.prescription.anticoagulant == 6
1567
+                                      record.prescription.anticoagulant == 6 || record.prescription.anticoagulant == 7 || record.prescription.anticoagulant == 3
1576 1568
                                     "
1577 1569
                                     >{{
1578 1570
                                       record.prescription
@@ -1880,7 +1872,11 @@
1880 1872
                                 </div>
1881 1873
                               </td>
1882 1874
                               <td width="10">ml</td>
1883
-                              <td></td>
1875
+                              <td style="padding-left:5px;width:20%;">
1876
+                                 置换液总量:
1877
+                               <span style="width:50px;display: inline-block;">&nbsp;{{ record.prescription.displace_liqui_value ? record.prescription.displace_liqui_value : '' }}</span>L
1878
+                             </td>
1879
+                              
1884 1880
                             </tr>
1885 1881
                           </tbody>
1886 1882
                         </table>
@@ -2911,17 +2907,17 @@
2911 2907
                           v-if="
2912 2908
                             setAdminUserES(
2913 2909
                               advice[0],
2914
-                              'execution_staff'
2910
+                              'advice_doctor'
2915 2911
                             ) == ''
2916 2912
                           "
2917 2913
                           >{{
2918
-                            getAdminUser(advice[0], "execution_staff")
2914
+                            getAdminUser(advice[0], "advice_doctor")
2919 2915
                           }}</span
2920 2916
                         >
2921 2917
                         <img
2922 2918
                           class="es-img"
2923 2919
                           :src="
2924
-                            setAdminUserES(advice[0], 'execution_staff')
2920
+                            setAdminUserES(advice[0], 'advice_doctor')
2925 2921
                           "
2926 2922
                           alt=""
2927 2923
                           srcset=""

+ 7 - 1
src/xt_pages/dialysis/details/DialysisPrescription.vue View File

@@ -20,12 +20,18 @@
20 20
 
21 21
         </li>
22 22
 
23
-         <li v-if="isShow('置换速度')">
23
+         <li v-if="isShow('置换速度')&& this.$store.getters.xt_user.template_info.org_id!=10375">
24 24
           <label>置换速度 : </label>
25 25
           <span class="content">{{displace_speed }}</span>
26 26
             <span class="unit">ml/min</span>
27 27
         </li>
28 28
 
29
+        <li v-if="isShow('置换速度') && this.$store.getters.xt_user.template_info.org_id == 10375">
30
+          <label>置换速度 : </label>
31
+          <span class="content">{{displace_speed }}</span>
32
+            <span class="unit">ml/L</span>
33
+        </li>
34
+
29 35
 
30 36
         <li v-if="isShow('透析液配方')">
31 37
           <label>透析液配方 : </label>

+ 1 - 1
src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue View File

@@ -291,7 +291,7 @@
291 291
           </template>
292 292
         </el-table-column>
293 293
         <el-table-column
294
-          v-if="template_id != 6 && org_id!=10223 && org_id!=10445 && org_id!=0"
294
+          v-if="(template_id != 6 && org_id!=10223 && org_id!=10445)  || org_id == 10460"
295 295
           prop="checker"
296 296
           min-width="30px"
297 297
           align="center"

+ 13 - 2
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue View File

@@ -604,7 +604,7 @@
604 604
                     </el-col>
605 605
 
606 606
 
607
-                    <el-col :span="8" v-if="isShows('置换速度')" v-show="totalShow">
607
+                    <el-col :span="8" v-if="isShows('置换速度') && this.$store.getters.xt_user.template_info.org_id != 10375" v-show="totalShow">
608 608
                         <el-form-item label="置换速度(ml/min)" prop="displace_speed" :rules="isCheckmust('置换速度')">
609 609
                             <el-input
610 610
                                     v-model="dialysisPrescription.displace_speed"
@@ -612,6 +612,14 @@
612 612
                         </el-form-item>
613 613
                     </el-col>
614 614
 
615
+                    <el-col :span="8" v-if="isShows('置换速度') && this.$store.getters.xt_user.template_info.org_id == 10375" v-show="totalShow">
616
+                        <el-form-item label="置换速度(L/h)" prop="displace_speed" :rules="isCheckmust('置换速度')">
617
+                            <el-input
618
+                                    v-model="dialysisPrescription.displace_speed"
619
+                            ></el-input>
620
+                        </el-form-item>
621
+                    </el-col>
622
+
615 623
                     <el-col
616 624
                             :span="8"
617 625
                             v-if="isShows('钙名称')"
@@ -3333,6 +3341,9 @@ mu
3333 3341
         this.hide()
3334 3342
       },
3335 3343
       handleSolution: function(formName) {
3344
+        if(this.dialysisPrescription.anticoagulant == "" || this.dialysisPrescription.anticoagulant == 0){
3345
+          this.dialysisPrescription.anticoagulant = 3
3346
+        }
3336 3347
         this.$refs[formName].validate((valid)=>{
3337 3348
           if(valid){
3338 3349
             if(!this.isLoading){
@@ -3387,7 +3398,7 @@ mu
3387 3398
                   ParamsQuery['patient'] = this.patient.id
3388 3399
                   ParamsQuery['record_date'] = this.record_date
3389 3400
                   ParamsQuery['mode'] = '1'
3390
-
3401
+               
3391 3402
                   postSoulution(ParamsQuery).then(response => {
3392 3403
                     if (response.data.state == 0) {
3393 3404
                       this.$message.error(response.data.msg)

+ 6 - 2
src/xt_pages/dialysis/details/dialysisOff.vue View File

@@ -20,7 +20,7 @@
20 20
           <span class="content">{{end_time}}</span>
21 21
         </li>
22 22
       </ul>
23
-      <ul>
23
+      <ul v-if="org_id!=0&&org_id!=10460">
24 24
         <li>
25 25
           <label>宣教知识 : </label>
26 26
           <span class="content">{{this.record.mission}}</span>
@@ -38,7 +38,8 @@ export default {
38 38
   name: 'DialysisComputer',
39 39
   data() {
40 40
       return {
41
-        title: '透析下机 '
41
+        title: '透析下机 ',
42
+        org_id:0,
42 43
       }
43 44
   },
44 45
   props: {
@@ -76,6 +77,9 @@ export default {
76 77
   },
77 78
   methods: {
78 79
 
80
+  },
81
+  created(){
82
+    this.org_id = this.$store.getters.xt_user.org.id
79 83
   }
80 84
 }
81 85
 </script>

+ 36 - 7
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue View File

@@ -1,7 +1,8 @@
1 1
 <template>
2 2
   <div>
3 3
     <el-button type="primary" @click="checkData">一键核对</el-button>
4
-    <div id="dialysis-print-box-1">
4
+    
5
+    <div id="dialysis-print-box-1"  ref="pdfContent">
5 6
       <div
6 7
         id="dialysis-print-box-1-1"
7 8
         class="dialysis-print-order print-template-two print_page_main_content"
@@ -827,7 +828,7 @@
827 828
                             ? prescription.dialyzer_perfusion_apparatus
828 829
                             : ""
829 830
                         }}
830
-                        <span v-if="prescription.dialysis_dialyszers&&prescription.dialysis_dialyszers!=''">/</span>
831
+                        <span v-if="prescription.dialyzer_perfusion_apparatus&&prescription.dialyzer_perfusion_apparatus!=''">/</span>
831 832
                         {{
832 833
                           prescription.dialysis_dialyszers
833 834
                             ? prescription.dialysis_dialyszers
@@ -950,10 +951,10 @@
950 951
                         class="under_line"
951 952
                         style="width: 100px; text-align: center"
952 953
                       >
953
-                        <span v-if="org_id == 10290 || org_id == 10318 || org_id== 10217 || org_id== 10188 || org_id== 9956 || org_id == 10440 || org_id == 0 || org_id == 10469 || org_id == 10478 || org_id == 10490 || org_id ==10495">{{
954
+                        <span v-if="org_id == 10290 || org_id == 10318 || org_id== 10217 || org_id== 10188 || org_id== 9956 || org_id == 10440 || org_id == 0 || org_id == 10469 || org_id == 10478 || org_id == 10490 || org_id ==10495 || org_id == 10460">{{
954 955
                           lastafterdialysis.weight_after
955 956
                         }}</span>
956
-                        <span v-if="org_id != 10290 && org_id != 10318  && org_id!= 10217 && org_id!=10188 && org_id!=9956 && org_id != 10440 && org_id!=0 && org_id!=10469 && org_id!=10478 && org_id!=10490 && org_id!=10495">{{
957
+                        <span v-if="org_id != 10290 && org_id != 10318  && org_id!= 10217 && org_id!=10188 && org_id!=9956 && org_id != 10440 && org_id!=0 && org_id!=10469 && org_id!=10478 && org_id!=10490 && org_id!=10495 && org_id!=10460">{{
957 958
                           predialysis.weight_after_last_transparency
958 959
                             ? predialysis.weight_after_last_transparency
959 960
                             : "未称重"
@@ -1430,7 +1431,7 @@
1430 1431
                         <td width="50">时间</td>
1431 1432
                         <td width="65">血压<br />(mmHg)</td>
1432 1433
                         <td width="50">脉搏<br />(次/分)</td>
1433
-                        <td width="50">呼吸<br />(次/分)</td>
1434
+                        <td width="50" v-if="org_id!=10489">呼吸<br />(次/分)</td>
1434 1435
                         <td width="50">血流量<br />(ml/min)</td>
1435 1436
                         <td width="50" v-if="org_id==10478 || org_id == 0">
1436 1437
                           动脉压<br />({{
@@ -1487,7 +1488,7 @@
1487 1488
                         <td>{{monitor.systolic_blood_pressure? monitor.systolic_blood_pressure + "/": ""}}
1488 1489
                           {{monitor.diastolic_blood_pressure? monitor.diastolic_blood_pressure: ""}}</td>
1489 1490
                         <td>{{ monitor.pulse_frequency? monitor.pulse_frequency: ""}}</td>
1490
-                        <td>{{monitor.breathing_rate ? monitor.breathing_rate : ""}}</td>
1491
+                        <td v-if="org_id!=10489">{{monitor.breathing_rate ? monitor.breathing_rate : ""}}</td>
1491 1492
                         <td>{{monitor.blood_flow_volume? monitor.blood_flow_volume: ""}}</td>
1492 1493
                         <td v-if="org_id ==10478">
1493 1494
                           {{
@@ -3057,6 +3058,7 @@
3057 3058
                     <div class="inline_block" style="flex: 1">
3058 3059
                       治疗医生:
3059 3060
                       <div
3061
+                        v-if="org_id ==10191"
3060 3062
                         class="under_line"
3061 3063
                         style="width: 80px; text-align: center"
3062 3064
                       >
@@ -3074,6 +3076,25 @@
3074 3076
                           v-else
3075 3077
                         />
3076 3078
                       </div>
3079
+                      <div
3080
+                        v-if="org_id!=10191"
3081
+                        class="under_line"
3082
+                        style="width: 80px; text-align: center"
3083
+                      >
3084
+                      <span
3085
+                            style="height: 30px; display: inline-block"
3086
+                            v-if="setAdminUserES(doctor_advices[0].advice_doctor) == ''"
3087
+                          >
3088
+                            {{ getAdminUser(doctor_advices[0].advice_doctor) }}
3089
+                          </span>
3090
+                          <img
3091
+                            style="height: 40px"
3092
+                            :src="setAdminUserES(doctor_advices[0].advice_doctor)"
3093
+                            alt=""
3094
+                            srcset=""
3095
+                            v-else
3096
+                          />
3097
+                      </div>
3077 3098
                     </div>
3078 3099
                   </div>
3079 3100
                 </td>
@@ -3092,12 +3113,17 @@ import CheckBox from "../batch_print/option_check_box";
3092 3113
 import { getDialysisRecord } from "@/api/dialysis";
3093 3114
 import { getDataConfig } from "@/utils/data";
3094 3115
 import { jsGetAge, uParseTime } from "@/utils/tools";
3116
+
3095 3117
 import LabelBox from "../printItem/LabelBox";
3096 3118
 import BreadCrumb from "@/xt_pages/components/bread-crumb";
3097 3119
 // import DialysisPrintOrderOne from './template/dialysisPrintOrderOne'
3098 3120
 // import DialysisPrintOrderTwo from './template/dialysisPrintOrderTwo'
3099 3121
 import print from "print-js";
3100
-
3122
+import html2pdf from 'html2pdf.js'
3123
+import { UploadPrintOrder } from "@/api/role/admin"
3124
+import { HTML5_FMT } from "moment";
3125
+import html2canvas from 'html2canvas'
3126
+import { jsPDF } from 'jspdf';
3101 3127
 export default {
3102 3128
   name: "dialysisPrintOrderSix",
3103 3129
   props: ["childResponse"],
@@ -4057,6 +4083,7 @@ export default {
4057 4083
         return "0.0";
4058 4084
       }
4059 4085
     },
4086
+
4060 4087
   },
4061 4088
   watch: {
4062 4089
     "patientInfo.gender": function () {
@@ -4083,6 +4110,8 @@ export default {
4083 4110
         this.patientInfo_source_1 = false;
4084 4111
       }
4085 4112
     },
4113
+
4114
+
4086 4115
   },
4087 4116
   created() {
4088 4117
     this.way_arr = getDataConfig("hemodialysis", "way");

+ 77 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderSixtyfour.vue View File

@@ -1,6 +1,7 @@
1 1
 <template>
2 2
   <div >
3 3
     <!-- <el-button type="primary" @click="checkData">一键核对</el-button> -->
4
+    <el-button type="primary" @click="toUpload">一键上传</el-button>
4 5
     <div id="dialysis-print-box-64">
5 6
       <div
6 7
         id="dialysis-print-box-64-1"
@@ -721,6 +722,12 @@
721 722
 import { getDialysisRecord } from "@/api/dialysis";
722 723
 import { jsGetAge, uParseTime } from "@/utils/tools";
723 724
 import { getDataConfig } from "@/utils/data";
725
+import print from "print-js";
726
+import html2pdf from 'html2pdf.js'
727
+import { UploadPrintOrder } from "@/api/role/admin"
728
+import { HTML5_FMT } from "moment";
729
+import html2canvas from 'html2canvas'
730
+import { jsPDF } from 'jspdf';
724 731
 export default {
725 732
   data() {
726 733
     return {
@@ -1221,7 +1228,76 @@ export default {
1221 1228
         }
1222 1229
       }
1223 1230
       return name
1224
-    }
1231
+    },
1232
+
1233
+    toUpload() {
1234
+        let dom = document.getElementById("dialysis-print-box-64");
1235
+        //调用方法下载
1236
+        html2canvas(dom, {
1237
+          useCORS: true, //允许跨域
1238
+          allowTaint: false,
1239
+          logging: false,
1240
+          letterRendering: true,
1241
+          ddpi: window.devicePixelRatio * 4, //将分辨率提高到特定的DPI 提高四倍
1242
+          scale: 4, //按比例增加分辨率
1243
+          background: '#fff',//pdf背景色为白色,默认是黑色的
1244
+       
1245
+        }).then((canvas) => {
1246
+          //返回图片dataURL,参数:图片格式和清晰度(0-1)
1247
+          var pageData = canvas.toDataURL('image/jpeg', 1.0);
1248
+
1249
+          //方向默认竖直,尺寸ponits,格式a4[595.28,841.89]
1250
+          var pdf = new jsPDF('', 'pt', 'a4');
1251
+
1252
+          //addImage后两个参数控制添加图片的尺寸,此处将页面高度按照a4纸宽高比列进行压缩
1253
+          pdf.addImage(pageData, 'JPEG', 0, 0, 595.28, 592.28 / canvas.width * canvas.height);
1254
+
1255
+          var newBase64Data =  pdf.output("dataurlstring").split("base64,")[1]
1256
+          console.log("base63",newBase64Data)
1257
+          this.viewPdf(newBase64Data)
1258
+
1259
+          var data = {
1260
+            name:newBase64Data,
1261
+          }
1262
+          UploadPrintOrder(data).then(response=>{
1263
+            if(response.data.state == 1){
1264
+              var sign =  response.data.data.sign
1265
+              console.log("SIGNWWOOWWO")
1266
+              this.$message.success("保存成功!")
1267
+            }
1268
+          })
1269
+          
1270
+          // this.viewPdf(newBase64Data)
1271
+          //保存到pdf,名字是stone
1272
+          // pdf.save('stone.pdf');
1273
+         
1274
+        });
1275
+      },
1276
+   
1277
+    viewPdf(content) {
1278
+      console.log("content",content);
1279
+      const blob = this.base64ToBlob(content);
1280
+      if (window.navigator && window.navigator.msSaveOrOpenBlob) {
1281
+        window.navigator.msSaveOrOpenBlob(blob);
1282
+      } else {
1283
+        const fileURL = URL.createObjectURL(blob);
1284
+        console.log("fileUlrwowowoow",fileURL)
1285
+        window.open(fileURL);//打开ppf文件
1286
+      }
1287
+    },
1288
+    base64ToBlob(code) {
1289
+      code = code.replace(/[\n\r]/g, '');// 检查base64字符串是否符合base64编码
1290
+      // atob() 方法用于解码使用 base-64 编码的字符串。
1291
+      const raw = window.atob(code);
1292
+      const rawLength = raw.length;
1293
+      const uInt8Array = new Uint8Array(rawLength);
1294
+      for (let i = 0; i < rawLength; ++i) {
1295
+      // 将解码后的逐个字符转换成Unicode序号,放入Unit8Array数组
1296
+        uInt8Array[i] = raw.charCodeAt(i);
1297
+      }
1298
+      // 通过Blob将Uint8Array数组转换成pdf类型的文件对象
1299
+      return new Blob([uInt8Array], { type: 'application/pdf' });
1300
+    },
1225 1301
   },
1226 1302
   created() {
1227 1303
     var bloodAccessParOpera = getDataConfig(

+ 10 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderTwentySeven.vue View File

@@ -63,7 +63,15 @@
63 63
               <td width="10"></td>
64 64
               <td width="80">透析次数:</td>
65 65
               <td width="120">
66
-                <div class="under-line">&nbsp;{{ patientInfo.total_dialysis + patientInfo.user_sys_before_count }}</div>
66
+                <div class="under-line">&nbsp;
67
+                  {{
68
+                          patientInfo.total_dialysis +
69
+                          patientInfo.user_sys_before_count
70
+                            ? patientInfo.total_dialysis +
71
+                              patientInfo.user_sys_before_count
72
+                            : "/"
73
+                        }}
74
+                </div>
67 75
               </td>
68 76
               <td></td>
69 77
             </tr>
@@ -593,7 +601,7 @@
593 601
                           &nbsp;{{ afterdialysis.actual_treatment_minute ? afterdialysis.actual_treatment_minute : 0 }}
594 602
                         </div>
595 603
                       </td>
596
-                      <td width="35">min</td>
604
+                      <td width="35" v-if="afterdialysis.actual_treatment_minute>0">min</td>
597 605
                       <td></td>
598 606
                     </tr>
599 607
                   </tbody>

+ 2 - 2
src/xt_pages/dialysis/template/DialysisPrintOrdersixtySeven.vue View File

@@ -103,7 +103,7 @@
103 103
                     }}
104 104
                   </span>
105 105
                   <span style="width: 14%;">置换总量:
106
-                    {{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "/" }}
106
+                    {{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "/" }}L
107 107
                   </span>
108 108
                 </td>
109 109
               </tr>
@@ -325,7 +325,7 @@
325 325
                 </tr>
326 326
             </table>
327 327
           </div>
328
-          <div style="margin-bottom: 10px;">
328
+          <div style="margin-bottom: 10px;" v-if="org_id!=0&& org_id!=10375">
329 329
             <table class="table" border="1"
330 330
               style="border-collapse: collapse;text-align: center;width: 100%;"
331 331
             >

+ 685 - 0
src/xt_pages/log/index.vue View File

@@ -0,0 +1,685 @@
1
+<template>
2
+  <div class="main-contain">
3
+   <div class="position">
4
+    <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+  </div>
6
+  <div class="app-container">
7
+      <el-tabs v-model="activeName" @tab-click="handleClick">
8
+          <el-tab-pane label="透析处方" name="first">
9
+            <div style="width: 465px;white-space: nowrap;">
10
+              <span>日期查询:</span>
11
+           
12
+              <el-date-picker
13
+                v-model="record_date"
14
+                prefix-icon="el-icon-date"
15
+                @change="changeTime"
16
+                style="width:150px;"
17
+                type="date"
18
+                placeholder="选择日期时间"
19
+                align="right"
20
+                value-format="yyyy-MM-dd"
21
+              ></el-date-picker>
22
+
23
+             
24
+              <el-autocomplete
25
+                style="margin:16px 5px"
26
+                popper-class="my-autocomplete"
27
+                v-model.trim="patient_name"
28
+                :fetch-suggestions="querySearchAsync"
29
+                :trigger-on-focus="false"
30
+                placeholder="请输入患者姓名"
31
+                @select="handleSelect"
32
+              >
33
+                <i
34
+                  class="el-icon-search el-input__icon"
35
+                  slot="suffix"
36
+                >
37
+                </i>
38
+                <template slot-scope="{ item }">
39
+                  <div class="name">{{ item.name }}</div>
40
+                </template>
41
+             </el-autocomplete>
42
+
43
+            </div>
44
+           
45
+            <el-table
46
+                :data="prescriptionlogList"
47
+                border
48
+                style="width: 100%">
49
+                <el-table-column  prop="date" label="序号" min-width="50"  align="center">
50
+                   <template slot-scope="scope" >
51
+                       {{scope.$index + 1 }}
52
+                   </template>
53
+                </el-table-column>
54
+
55
+                <el-table-column  prop="date" label="患者姓名" min-width="50"  align="center">
56
+                   <template slot-scope="scope" >
57
+                       {{ getPatientName(scope.row.patient_id) }}
58
+                   </template>
59
+                </el-table-column>
60
+
61
+                <el-table-column  prop="date" label="操作人" min-width="50"  align="center">
62
+                   <template slot-scope="scope" >
63
+                       {{getUserName(scope.row.admin_user_id)}}
64
+                   </template>
65
+                </el-table-column>
66
+
67
+
68
+                <el-table-column  prop="date" label="操作时间" min-width="50"  align="center">
69
+                   <template slot-scope="scope" >
70
+                       {{getTime(scope.row.ctime) }}
71
+                   </template>
72
+                </el-table-column>
73
+                
74
+               
75
+                
76
+              </el-table>
77
+              <el-pagination
78
+                @size-change="handleSizeChange"
79
+                @current-change="handleCurrentChange"
80
+                :page-size="10"
81
+                background
82
+                style="margin-top:20px;float: right"
83
+                :total="total"
84
+            ></el-pagination>
85
+          </el-tab-pane>
86
+
87
+          <el-tab-pane label="透前评估" name="second">
88
+            
89
+            <div style="width: 465px;white-space: nowrap;">
90
+              <span>日期查询:</span>
91
+           
92
+              <el-date-picker
93
+                v-model="record_date"
94
+                prefix-icon="el-icon-date"
95
+                @change="changeTime"
96
+                style="width:150px;"
97
+                type="date"
98
+                placeholder="选择日期时间"
99
+                align="right"
100
+                value-format="yyyy-MM-dd"
101
+              ></el-date-picker>
102
+
103
+             
104
+              <el-autocomplete
105
+                style="margin:16px 5px"
106
+                popper-class="my-autocomplete"
107
+                v-model.trim="patient_name"
108
+                :fetch-suggestions="querySearchAsync"
109
+                :trigger-on-focus="false"
110
+                placeholder="请输入患者姓名"
111
+                @select="handleSelect"
112
+              >
113
+                <i
114
+                  class="el-icon-search el-input__icon"
115
+                  slot="suffix"
116
+                >
117
+                </i>
118
+                <template slot-scope="{ item }">
119
+                  <div class="name">{{ item.name }}</div>
120
+                </template>
121
+             </el-autocomplete>
122
+
123
+            </div>
124
+           
125
+            <el-table
126
+                :data="beforLogList"
127
+                border
128
+                style="width: 100%">
129
+                <el-table-column  prop="date" label="序号" min-width="50"  align="center">
130
+                   <template slot-scope="scope" >
131
+                       {{scope.$index + 1 }}
132
+                   </template>
133
+                </el-table-column>
134
+
135
+                <el-table-column  prop="date" label="患者姓名" min-width="50"  align="center">
136
+                   <template slot-scope="scope" >
137
+                       {{ getPatientName(scope.row.patient_id) }}
138
+                   </template>
139
+                </el-table-column>
140
+
141
+                <el-table-column  prop="date" label="操作人" min-width="50"  align="center">
142
+                   <template slot-scope="scope" >
143
+                       {{getUserName(scope.row.admin_user_id)}}
144
+                   </template>
145
+                </el-table-column>
146
+
147
+
148
+                <el-table-column  prop="date" label="操作时间" min-width="50"  align="center">
149
+                   <template slot-scope="scope" >
150
+                       {{getTime(scope.row.ctime) }}
151
+                   </template>
152
+                </el-table-column>
153
+                
154
+               
155
+                
156
+              </el-table>
157
+              <el-pagination
158
+                @size-change="handleSizeChangeOne"
159
+                @current-change="handleCurrentChangeOne"
160
+                :page-size="10"
161
+                background
162
+                style="margin-top:20px;float: right"
163
+                :total="total"
164
+            ></el-pagination>
165
+
166
+          </el-tab-pane>
167
+
168
+          <el-tab-pane label="临时医嘱" name="third">
169
+            <div style="width: 465px;white-space: nowrap;">
170
+              <span>日期查询:</span>
171
+           
172
+              <el-date-picker
173
+                v-model="record_date"
174
+                prefix-icon="el-icon-date"
175
+                @change="changeTime"
176
+                style="width:150px;"
177
+                type="date"
178
+                placeholder="选择日期时间"
179
+                align="right"
180
+                value-format="yyyy-MM-dd"
181
+              ></el-date-picker>
182
+
183
+             
184
+              <el-autocomplete
185
+                style="margin:16px 5px"
186
+                popper-class="my-autocomplete"
187
+                v-model.trim="patient_name"
188
+                :fetch-suggestions="querySearchAsync"
189
+                :trigger-on-focus="false"
190
+                placeholder="请输入患者姓名"
191
+                @select="handleSelect"
192
+              >
193
+                <i
194
+                  class="el-icon-search el-input__icon"
195
+                  slot="suffix"
196
+                >
197
+                </i>
198
+                <template slot-scope="{ item }">
199
+                  <div class="name">{{ item.name }}</div>
200
+                </template>
201
+             </el-autocomplete>
202
+
203
+            </div>
204
+           
205
+            <el-table
206
+                :data="adviceLogList"
207
+                border
208
+                style="width: 100%">
209
+                <el-table-column  prop="date" label="序号" min-width="50"  align="center">
210
+                   <template slot-scope="scope" >
211
+                       {{scope.$index + 1 }}
212
+                   </template>
213
+                </el-table-column>
214
+
215
+                <el-table-column  prop="date" label="患者姓名" min-width="50"  align="center">
216
+                   <template slot-scope="scope" >
217
+                       {{ getPatientName(scope.row.patient_id) }}
218
+                   </template>
219
+                </el-table-column>
220
+
221
+                <el-table-column prop="date" label="操作步骤" min-width="50"  align="center">
222
+                  <template slot-scope="scope" >
223
+                      <span v-if="scope.row.module == 1">新增或修改</span>
224
+                      <span v-if="scope.row.module == 2">执行</span>
225
+                      <span v-if="scope.row.module == 3">核对</span>
226
+                      <span v-if="scope.row.module == 4">删除</span>
227
+                   </template>
228
+                </el-table-column>
229
+
230
+                <el-table-column  prop="date" label="操作人" min-width="50"  align="center">
231
+                   <template slot-scope="scope" >
232
+                       {{getUserName(scope.row.admin_user_id)}}
233
+                   </template>
234
+                </el-table-column>
235
+
236
+
237
+                <el-table-column  prop="date" label="操作时间" min-width="50"  align="center">
238
+                   <template slot-scope="scope" >
239
+                       {{getTime(scope.row.ctime) }}
240
+                   </template>
241
+                </el-table-column>
242
+
243
+              </el-table>
244
+              <el-pagination
245
+                @size-change="handleSizeChangeTwo"
246
+                @current-change="handleCurrentChangeTwo"
247
+                :page-size="10"
248
+                background
249
+                style="margin-top:20px;float: right"
250
+                :total="total"
251
+            ></el-pagination>
252
+          </el-tab-pane>
253
+
254
+          <el-tab-pane label="透析监测" name="four">
255
+             
256
+            <div style="width: 465px;white-space: nowrap;">
257
+              <span>日期查询:</span>
258
+           
259
+              <el-date-picker
260
+                v-model="record_date"
261
+                prefix-icon="el-icon-date"
262
+                @change="changeTime"
263
+                style="width:150px;"
264
+                type="date"
265
+                placeholder="选择日期时间"
266
+                align="right"
267
+                value-format="yyyy-MM-dd"
268
+              ></el-date-picker>
269
+
270
+             
271
+              <el-autocomplete
272
+                style="margin:16px 5px"
273
+                popper-class="my-autocomplete"
274
+                v-model.trim="patient_name"
275
+                :fetch-suggestions="querySearchAsync"
276
+                :trigger-on-focus="false"
277
+                placeholder="请输入患者姓名"
278
+                @select="handleSelect"
279
+              >
280
+                <i
281
+                  class="el-icon-search el-input__icon"
282
+                  slot="suffix"
283
+                >
284
+                </i>
285
+                <template slot-scope="{ item }">
286
+                  <div class="name">{{ item.name }}</div>
287
+                </template>
288
+             </el-autocomplete>
289
+
290
+            </div>
291
+           
292
+            <el-table
293
+                :data="monitorLogList"
294
+                border
295
+                style="width: 100%">
296
+                <el-table-column  prop="date" label="序号" min-width="50"  align="center">
297
+                   <template slot-scope="scope" >
298
+                       {{scope.$index + 1 }}
299
+                   </template>
300
+                </el-table-column>
301
+
302
+                <el-table-column  prop="date" label="患者姓名" min-width="50"  align="center">
303
+                   <template slot-scope="scope" >
304
+                       {{ getPatientName(scope.row.patient_id) }}
305
+                   </template>
306
+                </el-table-column>
307
+
308
+                <el-table-column prop="date" label="操作步骤" min-width="50"  align="center">
309
+                  <template slot-scope="scope" >
310
+                      <span v-if="scope.row.module == 1">新增</span>
311
+                      <span v-if="scope.row.module == 3">修改</span>
312
+                      <span v-if="scope.row.module == 4">删除</span>
313
+                     
314
+                   </template>
315
+                </el-table-column>
316
+
317
+                <el-table-column  prop="date" label="操作人" min-width="50"  align="center">
318
+                   <template slot-scope="scope" >
319
+                       {{getUserName(scope.row.admin_user_id)}}
320
+                   </template>
321
+                </el-table-column>
322
+
323
+
324
+                <el-table-column  prop="date" label="操作时间" min-width="50"  align="center">
325
+                   <template slot-scope="scope" >
326
+                       {{getTime(scope.row.ctime) }}
327
+                   </template>
328
+                </el-table-column>
329
+
330
+              </el-table>
331
+              <el-pagination
332
+                @size-change="handleSizeChangeThree"
333
+                @current-change="handleCurrentChangeThree"
334
+                :page-size="10"
335
+                background
336
+                style="margin-top:20px;float: right"
337
+                :total="total"
338
+            ></el-pagination>
339
+          </el-tab-pane>
340
+
341
+          <el-tab-pane label="透后评估" name="five">
342
+            <div style="width: 465px;white-space: nowrap;">
343
+              <span>日期查询:</span>
344
+           
345
+              <el-date-picker
346
+                v-model="record_date"
347
+                prefix-icon="el-icon-date"
348
+                @change="changeTime"
349
+                style="width:150px;"
350
+                type="date"
351
+                placeholder="选择日期时间"
352
+                align="right"
353
+                value-format="yyyy-MM-dd"
354
+              ></el-date-picker>
355
+
356
+             
357
+              <el-autocomplete
358
+                style="margin:16px 5px"
359
+                popper-class="my-autocomplete"
360
+                v-model.trim="patient_name"
361
+                :fetch-suggestions="querySearchAsync"
362
+                :trigger-on-focus="false"
363
+                placeholder="请输入患者姓名"
364
+                @select="handleSelect"
365
+              >
366
+                <i
367
+                  class="el-icon-search el-input__icon"
368
+                  slot="suffix"
369
+                >
370
+                </i>
371
+                <template slot-scope="{ item }">
372
+                  <div class="name">{{ item.name }}</div>
373
+                </template>
374
+             </el-autocomplete>
375
+
376
+            </div>
377
+           
378
+            <el-table
379
+                :data="afterLogList"
380
+                border
381
+                style="width: 100%">
382
+                <el-table-column  prop="date" label="序号" min-width="50"  align="center">
383
+                   <template slot-scope="scope" >
384
+                       {{scope.$index + 1 }}
385
+                   </template>
386
+                </el-table-column>
387
+
388
+                <el-table-column  prop="date" label="患者姓名" min-width="50"  align="center">
389
+                   <template slot-scope="scope" >
390
+                       {{ getPatientName(scope.row.patient_id) }}
391
+                   </template>
392
+                </el-table-column>
393
+
394
+                <el-table-column  prop="date" label="操作人" min-width="50"  align="center">
395
+                   <template slot-scope="scope" >
396
+                       {{getUserName(scope.row.admin_user_id)}}
397
+                   </template>
398
+                </el-table-column>
399
+
400
+
401
+                <el-table-column  prop="date" label="操作时间" min-width="50"  align="center">
402
+                   <template slot-scope="scope" >
403
+                       {{getTime(scope.row.ctime) }}
404
+                   </template>
405
+                </el-table-column>
406
+                
407
+               
408
+                
409
+              </el-table>
410
+              <el-pagination
411
+                @size-change="handleSizeChangeFour"
412
+                @current-change="handleCurrentChangeFour"
413
+                :page-size="10"
414
+                background
415
+                style="margin-top:20px;float: right"
416
+                :total="total"
417
+            ></el-pagination>
418
+          </el-tab-pane>
419
+        
420
+      </el-tabs>
421
+   </div>
422
+
423
+   
424
+  </div>
425
+</template>
426
+<script>
427
+  import {getPatientList,getPrescriptionLogList,getBeforLogList,getDocLogLogList,getMonitorLogList,getAferLogList} from  "@/api/dialysis"
428
+  import { uParseTime } from '@/utils/tools'
429
+  const moment = require('moment')
430
+  export default {
431
+    data(){
432
+      return {
433
+        activeName: 'first',
434
+        prescriptionList:[],
435
+        record_date:moment(new Date()).add('year',0).format("YYYY-MM-DD"),
436
+        patientList:[],
437
+        patient_id:0,
438
+        patient_name:"",
439
+        total:0,
440
+        page:1,
441
+        limit:10,
442
+        crumbs: [
443
+         { path: false, name: "日志查询" },      
444
+        ],
445
+        prescriptionlogList:[],
446
+        patients:[],
447
+        roleList:[],
448
+        beforLogList:[],
449
+        docLogList:[],
450
+        adviceLogList:[],
451
+        monitorLogList:[],
452
+        afterLogList:[],
453
+      }
454
+    },
455
+    methods:{
456
+      handleClick(val){
457
+        console.log("val2o2o2o2",this.activeName)
458
+        if(this.activeName == "first"){
459
+          this.getPrescriptionLogList()
460
+        }
461
+        if(this.activeName == "second"){
462
+          this.getBeforLogList()
463
+        }
464
+        if(this.activeName == "third"){
465
+          this.getDocLogLogList()
466
+        }
467
+        if(this.activeName == "four"){
468
+          this.getMonitorLogList()
469
+        }
470
+        if(this.activeName == "five"){
471
+          this.getAferLogList()
472
+        }
473
+      },
474
+      querySearchAsync(keyword, cb) {
475
+        let key = '';
476
+        if (keyword != undefined) {
477
+          key = keyword
478
+        }
479
+        let searchArray = []
480
+        getPatientList(key).then(response => {
481
+          if (response.data.state == 1) {
482
+            searchArray = response.data.data.patientList
483
+            console.log('searcharrya', searchArray)
484
+            cb(searchArray)
485
+          }
486
+        })
487
+        return searchArray
488
+      },
489
+      handleSelect(val) {
490
+       this.patient_id = val.id
491
+       this.patient_name = val.name
492
+       this.getPrescriptionLogList()
493
+       this.getBeforLogList()
494
+       this.getDocLogLogList()
495
+       this.getMonitorLogList()
496
+       this.getAferLogList()
497
+      },
498
+      handleCurrentChange(val){
499
+        this.page = val
500
+        this.getPrescriptionLogList()
501
+      },
502
+      handleSizeChange(val){
503
+        this.limit=val
504
+        this.getPrescriptionLogList()
505
+      },
506
+      handleCurrentChangeOne(val){
507
+         this.page = val
508
+         this.getBeforLogList()
509
+      },
510
+      handleSizeChangeOne(val){
511
+        this.limit =val
512
+        this.getBeforLogList()
513
+      },
514
+      handleCurrentChangeTwo(val){
515
+         this.page = val
516
+         this.getDocLogLogList()
517
+      },
518
+      handleSizeChangeTwo(val){
519
+        this.limit =val
520
+        this.getDocLogLogList()
521
+      },
522
+      handleSizeChangeThree(val){
523
+        this.limit =val
524
+        this.getMonitorLogList()
525
+      },
526
+      handleCurrentChangeThree(val){
527
+        this.page = val
528
+        this.getMonitorLogList()
529
+      },
530
+      handleSizeChangeFour(val){
531
+        this.limit =val
532
+        this.getAferLogList()
533
+      },
534
+      handleCurrentChangeFour(val){
535
+        this.page = val
536
+        this.getAferLogList()
537
+      },
538
+      changeTime(val){
539
+        console.log("va222o3o22o3",val)
540
+        this.record_date = val
541
+        console.log("wowowoow",this.activeName)
542
+        if(this.activeName == "first"){
543
+          this.getPrescriptionLogList()
544
+        }
545
+        if(this.activeName == "second"){
546
+          this.getBeforLogList()
547
+        }
548
+        if(this.activeName == "third"){
549
+          this.getDocLogLogList()
550
+        }
551
+        if(this.activeName == "four"){
552
+          this.getMonitorLogList()
553
+        }
554
+        if(this.activeName == "five"){
555
+          this.getAferLogList()
556
+        }
557
+
558
+      },
559
+
560
+      getPrescriptionLogList(){
561
+           var params = {
562
+             record_date:this.record_date,
563
+             patient_id: this.patient_id,
564
+             limit:this.limit,
565
+             page:this.page,
566
+           }
567
+           console.log("paramswoowow",params)
568
+        getPrescriptionLogList(params).then(response=>{
569
+           if(response.data.state== 1){
570
+              this.prescriptionlogList =  response.data.data.prescriptionlogList
571
+              this.total= response.data.data.total
572
+
573
+              this.patients = response.data.data.patients
574
+
575
+              this.roleList = response.data.data.role
576
+           }
577
+        })
578
+      },
579
+      getPatientName(patient_id){
580
+         var name = ""
581
+        for(let i=0;i<this.patients.length;i++){
582
+          if(patient_id == this.patients[i].id){
583
+             name = this.patients[i].name
584
+          }
585
+        }
586
+        return name
587
+      },
588
+      getUserName(admin_user_id){
589
+        var user_name = ""
590
+        for(let i=0;i<this.roleList.length;i++){
591
+          if(admin_user_id == this.roleList[i].admin_user_id){
592
+             user_name = this.roleList[i].user_name
593
+          }   
594
+        }
595
+        return user_name
596
+      },
597
+
598
+      getTime(val) {
599
+         if(val < 0){
600
+           return ""
601
+         }
602
+         if(val == ""){
603
+          return ""
604
+         }else {
605
+          return uParseTime(val, '{y}-{m}-{d} {h}:{i}:{s}')
606
+         }
607
+      },
608
+     
609
+      getBeforLogList(){
610
+        var params = {
611
+             record_date:this.record_date,
612
+             patient_id: this.patient_id,
613
+             limit:this.limit,
614
+             page:this.page,
615
+           }
616
+         
617
+       getBeforLogList(params).then(response=>{
618
+         if(response.data.state == 1){
619
+          this.beforLogList =  response.data.data.beforLogList
620
+          this.total= response.data.data.total
621
+          this.patients = response.data.data.patients
622
+          this.roleList = response.data.data.role
623
+         }
624
+       }) 
625
+      },
626
+      getDocLogLogList(){
627
+        var params = {
628
+             record_date:this.record_date,
629
+             patient_id: this.patient_id,
630
+             limit:this.limit,
631
+             page:this.page,
632
+           }
633
+        getDocLogLogList(params).then(response=>{
634
+           if(response.data.state == 1){
635
+             this.adviceLogList =  response.data.data.adviceLogList
636
+             this.total= response.data.data.total
637
+            this.patients = response.data.data.patients
638
+            this.roleList = response.data.data.role
639
+           }
640
+        })
641
+      },
642
+      getMonitorLogList(){
643
+        var params = {
644
+             record_date:this.record_date,
645
+             patient_id: this.patient_id,
646
+             limit:this.limit,
647
+             page:this.page,
648
+           }
649
+        getMonitorLogList(params).then(response=>{
650
+          if(response.data.state== 1){
651
+            this.monitorLogList =  response.data.data.monitorLogList
652
+             this.total= response.data.data.total
653
+            this.patients = response.data.data.patients
654
+            this.roleList = response.data.data.role
655
+          }
656
+        })
657
+      },
658
+
659
+      getAferLogList(){
660
+         var params = {
661
+             record_date:this.record_date,
662
+             patient_id: this.patient_id,
663
+             limit:this.limit,
664
+             page:this.page,
665
+           }
666
+        getAferLogList(params).then(response=>{
667
+           if(response.data.state == 1){
668
+            this.afterLogList =  response.data.data.afterLogList
669
+             this.total= response.data.data.total
670
+            this.patients = response.data.data.patients
671
+            this.roleList = response.data.data.role
672
+           }
673
+        })
674
+      }
675
+      
676
+    },
677
+    created(){
678
+
679
+      this.record_date = moment(new Date()).add('year',0).format("YYYY-MM-DD")
680
+      this.getPrescriptionLogList()
681
+      
682
+      
683
+    },
684
+  }
685
+</script>

+ 2 - 0
src/xt_pages/medicalScheduling/schedulingStatistics.vue View File

@@ -745,10 +745,12 @@ export default {
745 745
         changeTime(val){
746 746
             this.start_time = val.getTime()/1000
747 747
             this.getlist()
748
+            this.getchartlist()
748 749
         },
749 750
         changeTimeTwo(val){
750 751
             this.end_time = val.getTime()/1000
751 752
             this.getlist()
753
+            this.getchartlist()
752 754
         },
753 755
         compare(property){
754 756
             return function(a,b){

+ 44 - 46
src/xt_pages/outpatientCharges/invoiceTemplate/printEleven.vue View File

@@ -2,9 +2,9 @@
2 2
   <div id='invoice-print' style="position: relative;">
3 3
     <div>
4 4
       <div style="display: inline-block; position: absolute;top: 30px;left: 30px;">{{list.order.mdtrt_id}}</div>
5
-      <div style="display: inline-block; position: absolute;top: 30px;left: 230px;">{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</div>
6
-      <div style="display: inline-block; position: absolute;top: 30px;left: 280px;">{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</div>
7
-      <div style="display: inline-block; position: absolute;top: 30px;left: 330px;">{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</div>
5
+      <div style="display: inline-block; position: absolute;top: 30px;left: 260px;">{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</div>
6
+      <div style="display: inline-block; position: absolute;top: 30px;left: 330px;">{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(5,7)) : getTime(list.date, '{y}-{m}-{d}').slice(5,7) }}</div>
7
+      <div style="display: inline-block; position: absolute;top: 30px;left: 400px;">{{ paramsObj.setl_time ? parseInt(paramsObj.setl_time.split(' ')[0].slice(8,11)) : getTime(list.date, '{y}-{m}-{d}').slice(8,11) }}</div>
8 8
     </div>
9 9
     <div>
10 10
       <div style="position: absolute;top: 50px;left: 60px;">{{ paramsObj.name }}</div>
@@ -14,44 +14,44 @@
14 14
           <div  style="position: absolute;top:50px;left:250px;"></div>
15 15
       </div>
16 16
       <div style="display:flex;justify-content: space-between;">
17
-          <div  style="position: absolute;top:50px;left:480px;" v-if="list.gender == 1">√</div>
18
-          <div  style="position: absolute;top:50px;left:540px;" v-else-if="list.gender == 2">√</div>
17
+          <div  style="position: absolute;top:50px;left:570px;" v-if="list.gender == 1">√</div>
18
+          <div  style="position: absolute;top:50px;left:630px;" v-else-if="list.gender == 2">√</div>
19 19
       </div>
20 20
     </div>
21 21
     <div style="display:flex;justify-content: space-between;">
22
-      <div  style="position: absolute;top:68px;left:120px;">医保</div>
23
-      <div  style="position: absolute;top:68px;left:300px;">{{ list.number.length <= 13 ? list.psn_cash_money.toFixed(2) : (list.psn_cash_money).toFixed(2) }}</div>
24
-      <div  style="position: absolute;top:68px;left:480px;">现金</div>
22
+      <div  style="position: absolute;top:88px;left:120px;">医保</div>
23
+      <div  style="position: absolute;top:88px;left:340px;">{{ list.number.length <= 13 ? list.psn_cash_money.toFixed(2) : (list.psn_cash_money).toFixed(2) }}</div>
24
+      <div  style="position: absolute;top:88px;left:570px;">现金</div>
25 25
     </div>
26 26
     <div style="display:flex;justify-content: space-between;">
27
-      <div  style="position: absolute;top:124px;left:0px;">西药费</div>
28
-      <div  style="position: absolute;top:124px;left:60px;">{{ list.westernMedicineCostTotal ? list.westernMedicineCostTotal.toFixed(2) : '' }}</div>
29
-      <div  style="position: absolute;top:124px;left:120px;">化验费</div>
30
-      <div  style="position: absolute;top:124px;left:180px;">{{ list.laboratoryCostTotal ? list.laboratoryCostTotal.toFixed(2) : '' }}</div>
31
-      <div  style="position: absolute;top:124px;left:240px;">治疗费</div>
32
-      <div  style="position: absolute;top:124px;left:320px;">{{ list.treatCostTotal ? list.treatCostTotal.toFixed(2) : '' }}</div>
33
-      <div  style="position: absolute;top:124px;left:410px;">处置费</div>
34
-      <div  style="position: absolute;top:124px;left:480px;">0</div>
27
+      <div  style="position: absolute;top:150px;left:0px;">西药费</div>
28
+      <div  style="position: absolute;top:150px;left:60px;">{{ list.westernMedicineCostTotal ? list.westernMedicineCostTotal.toFixed(2) : '' }}</div>
29
+      <div  style="position: absolute;top:150px;left:120px;">化验费</div>
30
+      <div  style="position: absolute;top:150px;left:180px;">{{ list.laboratoryCostTotal ? list.laboratoryCostTotal.toFixed(2) : '' }}</div>
31
+      <div  style="position: absolute;top:150px;left:270px;">治疗费</div>
32
+      <div  style="position: absolute;top:150px;left:340px;">{{ list.treatCostTotal ? list.treatCostTotal.toFixed(2) : '' }}</div>
33
+      <div  style="position: absolute;top:150px;left:490px;">处置费</div>
34
+      <div  style="position: absolute;top:150px;left:570px;">0</div>
35 35
     </div>
36 36
     <div style="display:flex;justify-content: space-between;">
37
-      <div  style="position: absolute;top:150px;left:0px;">中成药</div>
38
-      <div  style="position: absolute;top:150px;left:60px;">{{ list.chineseTraditionalMedicineCostTotal ? list.chineseTraditionalMedicineCostTotal.toFixed(2) : '' }}</div>
39
-      <div  style="position: absolute;top:150px;left:120px;">诊疗费</div>
40
-      <div  style="position: absolute;top:150px;left:180px;">{{ list.zhenChaCostTotal ? list.zhenChaCostTotal.toFixed(2) : '' }}</div>
41
-      <div  style="position: absolute;top:150px;left:240px;">材料费</div>
42
-      <div  style="position: absolute;top:150px;left:320px;">{{ list.materialCostTotal ? list.materialCostTotal.toFixed(2) : '' }}</div> 
43
-      <div  style="position: absolute;top:150px;left:410px;">护理费</div>
44
-      <div  style="position: absolute;top:150px;left:480px;">0</div>
37
+      <div  style="position: absolute;top:188px;left:0px;">中成药</div>
38
+      <div  style="position: absolute;top:188px;left:60px;">{{ list.chineseTraditionalMedicineCostTotal ? list.chineseTraditionalMedicineCostTotal.toFixed(2) : '' }}</div>
39
+      <div  style="position: absolute;top:188px;left:120px;">诊疗费</div>
40
+      <div  style="position: absolute;top:188px;left:180px;">{{ list.zhenChaCostTotal ? list.zhenChaCostTotal.toFixed(2) : '' }}</div>
41
+      <div  style="position: absolute;top:188px;left:270px;">材料费</div>
42
+      <div  style="position: absolute;top:188px;left:340px;">{{ list.materialCostTotal ? list.materialCostTotal.toFixed(2) : '' }}</div> 
43
+      <div  style="position: absolute;top:188px;left:490px;">护理费</div>
44
+      <div  style="position: absolute;top:188px;left:570px;">0</div>
45 45
     </div>
46 46
     <div style="display:flex;justify-content: space-between;">
47
-      <div  style="position: absolute;top:176px;left:0px;">注射费</div>
48
-      <div  style="position: absolute;top:176px;left:60px;">0</div> 
49
-      <div  style="position: absolute;top:176px;left:120px;">检查费</div>
50
-      <div  style="position: absolute;top:176px;left:180px;">{{ list.checkCostTotal ? list.checkCostTotal.toFixed(2) : '' }}</div>
51
-      <div  style="position: absolute;top:176px;left:240px;">输氧费</div>
52
-      <div  style="position: absolute;top:176px;left:320px;">0</div>
53
-      <div  style="position: absolute;top:176px;left:410px;">其他</div>
54
-      <div  style="position: absolute;top:176px;left:480px;">{{ list.otherCostTotal ? list.otherCostTotal.toFixed(2) : '' }}</div>
47
+      <div  style="position: absolute;top:225px;left:0px;">注射费</div>
48
+      <div  style="position: absolute;top:225px;left:60px;">0</div> 
49
+      <div  style="position: absolute;top:225px;left:120px;">检查费</div>
50
+      <div  style="position: absolute;top:225px;left:180px;">{{ list.checkCostTotal ? list.checkCostTotal.toFixed(2) : '' }}</div>
51
+      <div  style="position: absolute;top:225px;left:270px;">输氧费</div>
52
+      <div  style="position: absolute;top:225px;left:340px;">0</div>
53
+      <div  style="position: absolute;top:225px;left:490px;">其他</div>
54
+      <div  style="position: absolute;top:225px;left:570px;">{{ list.otherCostTotal ? list.otherCostTotal.toFixed(2) : '' }}</div>
55 55
     </div>
56 56
     <div style="display:flex;justify-content: space-between;">
57 57
       <div  style="position: absolute;top:202px;left:60px;"></div>
@@ -61,64 +61,62 @@
61 61
     </div>
62 62
     <div>
63 63
       <span>
64
-        <span  style="position: absolute;top:230px;left:120px">
64
+        <span  style="position: absolute;top:280px;left:100px">
65 65
           <span v-if="zhongwen.indexOf('万') > -1 && zhongwen.indexOf('拾') > -1 && zhongwen.indexOf('拾') == 1">
66 66
                     {{ zhongwen.substring(0,1) }}
67 67
                 </span>
68 68
                 <span v-else>零</span>
69 69
         </span>
70
-        <span  style="position: absolute;top:230px;left:160px">
70
+        <span  style="position: absolute;top:280px;left:140px">
71 71
             <span v-if="zhongwen.indexOf('万') > -1">
72 72
                     {{ zhongwen.substring(zhongwen.indexOf('万') - 1,zhongwen.indexOf('万')) }}
73 73
                 </span>
74 74
                 <span v-else>零</span>
75 75
         </span>
76
-        <span  style="position: absolute;top:230px;left:210px">
76
+        <span  style="position: absolute;top:280px;left:190px">
77 77
             <span v-if="zhongwen.indexOf('仟') > -1">
78 78
                     {{ zhongwen.substring(zhongwen.indexOf('仟') - 1,zhongwen.indexOf('仟')) }}
79 79
                 </span>
80 80
                 <span v-else>零</span>
81 81
         </span>
82
-        <span  style="position: absolute;top:230px;left:260px">
82
+        <span  style="position: absolute;top:280px;left:260px">
83 83
             <span v-if="zhongwen.indexOf('佰') > -1">
84 84
                     {{ zhongwen.substring(zhongwen.indexOf('佰') - 1,zhongwen.indexOf('佰')) }}
85 85
                 </span>
86 86
                 <span v-else>零</span>
87 87
         </span>
88
-        <span style="position: absolute;top:230px;left:310px">
88
+        <span style="position: absolute;top:280px;left:310px">
89 89
             <span v-if="zhongwen.indexOf('拾') > -1">
90 90
                     {{zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾')) == '佰' ||  !zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾'))? '壹' : zhongwen.substring(zhongwen.indexOf('拾') - 1,zhongwen.indexOf('拾')) }}
91 91
                 </span>
92 92
                 <span v-else>零</span>
93 93
         </span>
94
-        <span  style="position: absolute;top:230px;left:360px">
94
+        <span  style="position: absolute;top:280px;left:380px">
95 95
            <span v-if="zhongwen.indexOf('元') > -1 && zhongwen.substring(this.zhongwen.indexOf('元') - 1).substring(0,1)!= '拾'">
96 96
                     {{ zhongwen.substring(zhongwen.indexOf('元') - 1,zhongwen.indexOf('元')) }}
97 97
                 </span>
98 98
                 <span v-else>零</span>
99 99
         </span>
100
-        <span  style="position: absolute;top:230px;left:420px">
100
+        <span  style="position: absolute;top:280px;left:450px">
101 101
              <span v-if="zhongwen.indexOf('角') > -1">
102 102
                     {{ zhongwen.substring(zhongwen.indexOf('角') - 1,zhongwen.indexOf('角')) }}
103 103
                 </span>
104 104
                 <span v-else>零</span>
105 105
         </span>
106
-
107
-        <span  style="position: absolute;top:230px;left:480px">
106
+        <span  style="position: absolute;top:280px;left:510px">
108 107
              <span v-if="zhongwen.indexOf('分') > -1">
109 108
                     {{ zhongwen.substring(zhongwen.indexOf('分') - 1,zhongwen.indexOf('分')) }}
110 109
                 </span>
111 110
                 <span v-else>零</span>
112 111
         </span>
113 112
       </span>
114
-      <span style="position: absolute;top:230px;left:530px">{{ totalPrice.toFixed(2) }}</span>
113
+      <span style="position: absolute;top:280px;left:600px">{{ totalPrice.toFixed(2) }}</span>
115 114
     </div>
116 115
 
117
-
118 116
     <div style="display:flex;justify-content: space-between;">
119
-      <div style="position: absolute;top:283px;left:100px;">阳春{{ org_name}}</div>
120
-      <div style="position: absolute;top:283px;left:240px;"></div>
121
-      <div style="position: absolute;top:283px;left:410px;">{{list.admin_user_name}}</div>
117
+      <div style="position: absolute;top:370px;left:100px;">{{ org_name}}</div>
118
+      <div style="position: absolute;top:370px;left:240px;"></div>
119
+      <div style="position: absolute;top:370px;left:460px;">{{list.admin_user_name}}</div>
122 120
     </div>
123 121
   </div>
124 122
 </template>

+ 3 - 3
src/xt_pages/outpatientCharges/statementTemplate/printeEleven.vue View File

@@ -8,9 +8,9 @@
8 8
           <td colspan="4">发票号:</td>
9 9
         </tr>
10 10
         <tr style="border-bottom: 1px solid black;">
11
-          <td colspan="4">单据编码:{{info.number}}</td>
12
-          <td colspan="2">就诊时间:{{info.setl_time}}</td>
13
-          <td colspan="2">金额单位:{{info.medfee_sumamt}}元</td>
11
+          <td colspan="2">单据编码:{{info.number}}</td>
12
+          <td colspan="4">就诊时间:{{info.setl_time}}</td>
13
+          <td colspan="3">金额单位:{{info.medfee_sumamt}}元</td>
14 14
         </tr>
15 15
         <tr>
16 16
           <td colspan="4">姓名:{{info.patient.name}}</td>

+ 188 - 1
src/xt_pages/qcd/treatmentControlAnalysis/components/TimePersonal.vue View File

@@ -67,7 +67,11 @@
67 67
       </div>
68 68
       <div style="padding-left:10px;flex:1">
69 69
         <div class="tableTitle">统计表</div>
70
-        <div><el-button type="primary" @click="exportList">导出</el-button></div>
70
+        <div>
71
+          <el-button type="primary" @click="exportList">按透析记录导出</el-button>
72
+          <el-button type="primary" @click="exportListOne">按排班导出</el-button>
73
+        </div>
74
+       
71 75
         <el-table :data="DialysisData" style="width: 100%" border :row-style="{ color: '#303133' }"
72 76
         :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
73 77
         >
@@ -142,6 +146,7 @@ export default {
142 146
       },
143 147
       patient_id:0,
144 148
       modeIdCount:[],
149
+      scheduleCount:[],
145 150
     };
146 151
   },
147 152
   methods: {
@@ -202,6 +207,10 @@ export default {
202 207
 
203 208
           var modeIdCount = response.data.data.modeIdCount
204 209
           console.log("modeidcount=====",modeIdCount)
210
+
211
+        
212
+         
213
+
205 214
           for(let i=0;i<modeIdCount.length;i++){
206 215
             if(modeIdCount[i].mode_id == 1){
207 216
                modeIdCount[i].mode_id = "HD"
@@ -302,6 +311,109 @@ export default {
302 311
             }
303 312
           }
304 313
           this.modeIdCount = modeIdCount
314
+
315
+          var scheduleCount =  response.data.data.scheduleCount
316
+          console.log("scheduleCount",scheduleCount)
317
+          for(let i=0;i<scheduleCount.length;i++){
318
+            if(scheduleCount[i].mode_id == 1){
319
+              scheduleCount[i].mode_id = "HD"
320
+            }
321
+            if(scheduleCount[i].mode_id == 2){
322
+              scheduleCount[i].mode_id = "HDF"
323
+            }
324
+            if(scheduleCount[i].mode_id == 3){
325
+              scheduleCount[i].mode_id = "HD+HP"
326
+            }
327
+            if(scheduleCount[i].mode_id == 4){
328
+              scheduleCount[i].mode_id = "HP"
329
+            }
330
+            if(scheduleCount[i].mode_id == 5){
331
+              scheduleCount[i].mode_id = "HF"
332
+            }
333
+            if(scheduleCount[i].mode_id == 6){
334
+              scheduleCount[i].mode_id = "SCUF"
335
+            }
336
+            if(scheduleCount[i].mode_id == 7){
337
+              scheduleCount[i].mode_id = "IUF"
338
+            }
339
+            if(scheduleCount[i].mode_id == 8){
340
+              scheduleCount[i].mode_id = "HFHD"
341
+            }
342
+            if(scheduleCount[i].mode_id == 9){
343
+              scheduleCount[i].mode_id = "HFHD+HP"
344
+            }
345
+            if(scheduleCount[i].mode_id == 10){
346
+              scheduleCount[i].mode_id = "PHF"
347
+            }
348
+            if(scheduleCount[i].mode_id == 11){
349
+              scheduleCount[i].mode_id = "HFR"
350
+            }
351
+            if(scheduleCount[i].mode_id == 12){
352
+              scheduleCount[i].mode_id = "HDF+HP"
353
+            }
354
+            if(scheduleCount[i].mode_id == 13){
355
+              scheduleCount[i].mode_id = "CRRT"
356
+            }
357
+             if(scheduleCount[i].mode_id == 14){
358
+              scheduleCount[i].mode_id = "腹水回输"
359
+            }
360
+             if(scheduleCount[i].mode_id == 15){
361
+              scheduleCount[i].mode_id = "HD前置换"
362
+            }
363
+             if(scheduleCount[i].mode_id == 16){
364
+              scheduleCount[i].mode_id = "HD后置换"
365
+            }
366
+             if(scheduleCount[i].mode_id == 17){
367
+              scheduleCount[i].mode_id = "HDF前置换"
368
+            }
369
+             if(scheduleCount[i].mode_id == 18){
370
+              scheduleCount[i].mode_id = "HDF后置换"
371
+            }
372
+              if(scheduleCount[i].mode_id == 19){
373
+                scheduleCount[i].mode_id = "IUF+HD"
374
+            }
375
+            if(scheduleCount[i].mode_id == 20){
376
+              scheduleCount[i].mode_id = "UF"
377
+            }
378
+            if(scheduleCount[i].mode_id == 21){
379
+              scheduleCount[i].mode_id = "HD+"
380
+            }
381
+            if(scheduleCount[i].mode_id == 22){
382
+              scheduleCount[i].mode_id = "血浆胆红素吸附+HDF"
383
+            }
384
+            if(scheduleCount[i].mode_id == 23){
385
+              scheduleCount[i].mode_id = "血浆胆红素吸附"
386
+            }
387
+            if(scheduleCount[i].mode_id == 24){
388
+              scheduleCount[i].mode_id = "I-HDF"
389
+            }
390
+            if(scheduleCount[i].mode_id == 25){
391
+              scheduleCount[i].mode_id = "HD高通"
392
+            }
393
+
394
+            if(scheduleCount[i].mode_id == 26){
395
+              scheduleCount[i].mode_id = "CVVH"
396
+            }
397
+            if(scheduleCount[i].mode_id == 27){
398
+              scheduleCount[i].mode_id = "CVVHD"
399
+            }
400
+             if(scheduleCount[i].mode_id == 28){
401
+              scheduleCount[i].mode_id = "CVVHDF"
402
+            }
403
+            if(scheduleCount[i].mode_id == 29){
404
+              scheduleCount[i].mode_id = "PE"
405
+            }
406
+            if(scheduleCount[i].mode_id == 30){
407
+              scheduleCount[i].mode_id = "血浆胆红素吸附+HP"
408
+            }
409
+           if(scheduleCount[i].mode_id == 31){
410
+            scheduleCount[i].mode_id = "HPD"
411
+            }
412
+            if(scheduleCount[i].mode_id == 32){
413
+              scheduleCount[i].mode_id = "HDP"
414
+            }
415
+          }
416
+          this.scheduleCount = scheduleCount
305 417
           let dataInfo = {}
306 418
           list.forEach((item, index) => {
307 419
             let { patient_id } = item
@@ -353,6 +465,15 @@ export default {
353 465
        }
354 466
        return count
355 467
     },
468
+    getScheduleDialysisCount(id){
469
+       var count = 0
470
+       for(let i=0;i<this.scheduleCount.length;i++){
471
+           if(id == this.scheduleCount[i].patient_id){
472
+              count += this.scheduleCount[i].Count
473
+           }
474
+       }
475
+       return count
476
+    },
356 477
     onSearch(){
357 478
       if(this.listQuery.search == "" || this.listQuery.search == null){
358 479
          this.getDialysisList()
@@ -576,6 +697,55 @@ export default {
576 697
           this.downloadLoading = false
577 698
         })
578 699
       },
700
+
701
+      exportListOne(){
702
+       for(let i=0;i<this.DialysisData.length;i++){
703
+         this.DialysisData[i].index = i+1
704
+         this.DialysisData[i].HD = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HD")
705
+         this.DialysisData[i].HDF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF")
706
+         this.DialysisData[i].HDHP = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HD+HP")
707
+         this.DialysisData[i].HP = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HP")
708
+         this.DialysisData[i].HF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HF")
709
+         this.DialysisData[i].SCUF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"SCUF")
710
+         this.DialysisData[i].IUF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"IUF")
711
+         this.DialysisData[i].HFHD = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HFHD")
712
+         this.DialysisData[i].HFHDHP = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HFHD+HP")
713
+         this.DialysisData[i].HDFHP = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDF+HP")
714
+         this.DialysisData[i].CRRT = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"CRRT")
715
+         this.DialysisData[i].OTR = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"腹水回输")
716
+
717
+         this.DialysisData[i].IUFHD = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"IUF+HD")
718
+         this.DialysisData[i].UF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"UF")
719
+         this.DialysisData[i].HDPlus = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HD+")
720
+         this.DialysisData[i].IHDF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"I-HDF")
721
+         this.DialysisData[i].HDGT = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HD高通")
722
+         this.DialysisData[i].CVVH = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"CVVH")
723
+         this.DialysisData[i].CVVHD = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"CVVHD")
724
+         this.DialysisData[i].CVVHDF = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"CVVHDF")
725
+         this.DialysisData[i].PE = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"PE")
726
+         this.DialysisData[i].XUEHP = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"血浆胆红素吸附+HP")
727
+         this.DialysisData[i].HPD = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HPD")
728
+         this.DialysisData[i].HDP = this.getScheduleHdModeIdCount(this.DialysisData[i].patient_id,"HDP")
729
+
730
+         this.DialysisData[i].age = this.getAge(this.DialysisData[i].id_card_no)
731
+         this.DialysisData[i].total_count = this.getScheduleDialysisCount(this.DialysisData[i].patient_id)
732
+       }
733
+       console.log("hhh2323323232",this.DialysisData)
734
+       import('@/vendor/Export2Excel').then(excel => {
735
+        const tHeader = ['序号','姓名', '年龄', '透析号','HD','HDF','HD+HP','HP','HF','SCUF','IUF','HFHD','HFHD+HP','HFR','HDF+HP','CRRT','腹水回输','IUF+HD','UF','HD+','I-HDF','HD高通','CVVH','CVVHD','CVVHDF','PE','血浆胆红素吸附+HP','HPD','HDP','总数']
736
+        const filterVal = ['index','name', 'age', 'dialysis_no','HD','HDF','HDHP','HP','HF','SCUF','IUF','HFHD','HFHDHP','HFR','HDFHP','CRRT','OTR','IUF+HD','UF','HD+','I-HDF','HDGT','CVVH','CVVHD','CVVHDF','PE','XUEHP','HPD','HDP','total_count']
737
+
738
+        const data = this.formatJson(filterVal, this.DialysisData)
739
+
740
+        excel.export_json_to_excel({
741
+           header: tHeader,
742
+           data,
743
+           filename: '透析详情'
744
+         })
745
+          this.downloadLoading = false
746
+        })
747
+      },
748
+
579 749
       formatJson(filterVal, jsonData) {
580 750
         return jsonData.map(v =>
581 751
           filterVal.map(j => {
@@ -601,6 +771,23 @@ export default {
601 771
           }
602 772
         }
603 773
 
774
+        return count
775
+     },
776
+
777
+     getScheduleHdModeIdCount(id,mode_name){
778
+        var count = 0
779
+        var arr = []
780
+        for(let i = 0;i<this.scheduleCount.length;i++){
781
+           if(id == this.scheduleCount[i].patient_id && this.scheduleCount[i].mode_id == mode_name){
782
+             arr.push(this.scheduleCount[i])
783
+           }
784
+        }
785
+        if(arr.length > 0){
786
+          for(let i=0;i<arr.length;i++){
787
+            count += arr[i].Count
788
+          }
789
+        }
790
+
604 791
         return count
605 792
      }
606 793
 

+ 373 - 6
src/xt_pages/role/admin.vue View File

@@ -4,6 +4,14 @@
4 4
       <bread-crumb :crumbs="crumbs"></bread-crumb>
5 5
      
6 6
        <div>
7
+
8
+        <!-- <el-button
9
+          type="primary"
10
+          size="small"
11
+          icon="el-icon-circle-plus-outline"
12
+          style="float:left"
13
+          @click="toGet">CA企业认证</el-button> -->
14
+
7 15
         <el-button
8 16
           type="primary"
9 17
           size="small"
@@ -16,6 +24,9 @@
16 24
         @click="BatchDelete"
17 25
         >医药师登记</el-button>
18 26
 
27
+
28
+       
29
+
19 30
          <!-- <el-button
20 31
           type="primary"
21 32
           size="small"
@@ -85,9 +96,9 @@
85 96
           icon="el-icon-circle-plus-outline"
86 97
           style="float:left"
87 98
           @click="toTestNight">后台签署</el-button>
88
-          
99
+           -->
89 100
 
90
-          <el-button
101
+          <!-- <el-button
91 102
           type="primary"
92 103
           size="small"
93 104
           icon="el-icon-circle-plus-outline"
@@ -101,6 +112,72 @@
101 112
           icon="el-icon-circle-plus-outline"
102 113
           style="float:left"
103 114
           @click="toTestThrityMent">生成PDF</el-button>  -->
115
+
116
+
117
+        <!-- <el-button
118
+          type="primary"
119
+          size="small"
120
+          icon="el-icon-circle-plus-outline"
121
+          style="float:left"
122
+          @click="toTestTwo">创建个人印章</el-button> -->
123
+
124
+
125
+          <!-- <el-button
126
+          type="primary"
127
+          size="small"
128
+          icon="el-icon-circle-plus-outline"
129
+          style="float:left"
130
+          @click="toTestThree">创建合同</el-button>
131
+
132
+
133
+          <el-button
134
+          type="primary"
135
+          size="small"
136
+          icon="el-icon-circle-plus-outline"
137
+          style="float:left"
138
+          @click="toTestSeven">添加合同签署人</el-button>
139
+
140
+
141
+          <el-button 
142
+          type="primary"
143
+          size="small"
144
+          icon="el-icon-circle-plus-outline"
145
+          style="float:left"
146
+          @click="toTestTen"
147
+          >
148
+           获取短信验证码
149
+          </el-button>
150
+
151
+          <el-button
152
+          type="primary"
153
+          size="small"
154
+          icon="el-icon-circle-plus-outline"
155
+          style="float:left"
156
+          @click="toTestNight">后台签署</el-button>
157
+
158
+          <el-button
159
+          type="primary"
160
+          size="small"
161
+          icon="el-icon-circle-plus-outline"
162
+          style="float:left"
163
+          @click="toTestThrity">合同详情查询</el-button>
164
+
165
+
166
+         <el-button
167
+          type="primary"
168
+          size="small"
169
+          icon="el-icon-circle-plus-outline"
170
+          style="float:left"
171
+          @click="toWatch">合同在线预览</el-button>
172
+
173
+          <el-button
174
+          type="primary"
175
+          size="small"
176
+          icon="el-icon-circle-plus-outline"
177
+          style="float:left"
178
+          @click="toEnd">结束签署</el-button> -->
179
+           
180
+         
104 181
           
105 182
      </div>
106 183
     
@@ -178,7 +255,25 @@
178 255
         </el-table-column>
179 256
         <el-table-column label="操作" width="240" align="center">
180 257
           <template slot-scope="scope">
181
-            <!-- <router-link :to="{ path:'/role/admin/edit', query:{ id:scope.row.user_id }}"> -->
258
+           
259
+             
260
+            <!-- <span>
261
+              <el-button type="primary" size="small" @click="toRenZhen(scope.row.user_id,scope.row.user_name)">
262
+                    <span>CA个人认证</span>
263
+              </el-button>
264
+            </span>
265
+
266
+            <span>
267
+              <el-button type="primary" size="small" @click="toYinZhang(scope.row.user_id,scope.row.user_name)">
268
+                    <span>创建个人印章</span>
269
+              </el-button>
270
+            </span>
271
+
272
+            <span>
273
+              <el-button type="primary" size="small" @click="toShouQuan(scope.row.user_id,scope.row.user_name)">
274
+                    <span>授权用户企业印章</span>
275
+              </el-button>
276
+            </span> -->
182 277
             <el-tooltip
183 278
               class="item"
184 279
               effect="dark"
@@ -252,11 +347,130 @@
252 347
       </el-row>
253 348
       <admin-info-form ref="admininfoform"></admin-info-form>
254 349
     </div>
350
+
351
+    <el-dialog
352
+      title="CA企业认证"
353
+      :visible.sync="dialogVisible"
354
+      width="50%">
355
+      <span>
356
+        
357
+        <el-form>
358
+          <el-row>
359
+            <el-col>
360
+               <el-form-item label="企业类型:">
361
+                <el-select
362
+                  v-model="form.org_type"
363
+                  filterable
364
+                  clearable
365
+                  allow-create
366
+                  placeholder="选择"
367
+                >
368
+                  <el-option
369
+                    v-for="item in businessList"
370
+                    :key="item.id"
371
+                    :label="item.name "
372
+                    :value="item.id"
373
+                  ></el-option>
374
+                </el-select>
375
+               </el-form-item>
376
+            </el-col>
377
+
378
+            <el-col>
379
+               <el-form-item label="企业名称:">
380
+                 <el-input style="width:200px" v-model="form.enterprise_name" placeholder="请按营业执照上面的公司填写名称"></el-input>
381
+               </el-form-item>
382
+            </el-col>
383
+
384
+            <el-col>
385
+               <el-form-item label="统一社会信用代码:">
386
+                 <el-input style="width:200px" v-model="form.code" placeholder="请输入统一社会信息代码"></el-input>
387
+               </el-form-item>
388
+            </el-col>
389
+
390
+            <el-col>
391
+               <el-form-item label="组织机构代码:">
392
+                 <el-input style="width:200px" v-model="form.org_code" placeholder="请输入统一社会信息代码"></el-input>
393
+               </el-form-item>
394
+            </el-col>
395
+
396
+           
397
+            <el-col>
398
+               <el-form-item label="法定代表人:">
399
+                 <el-input style="width:200px" v-model="form.legal_person_name" placeholder="请输入统一社会信息代码"></el-input>
400
+               </el-form-item>
401
+            </el-col>
402
+
403
+            <el-col>
404
+               <el-form-item label="法定代表人身份证:">
405
+                 <el-input style="width:200px" v-model="form.legal_id_card_num" placeholder="请输入统一社会信息代码"></el-input>
406
+               </el-form-item>
407
+            </el-col>
408
+
409
+            <el-col>
410
+               <el-form-item label="法人手机号码:">
411
+                 <el-input style="width:200px" v-model="form.legal_phone" placeholder="请输入法人手机号码"></el-input>
412
+               </el-form-item>
413
+            </el-col>
414
+          </el-row>
415
+        </el-form>
416
+
417
+      </span>
418
+      <span slot="footer" class="dialog-footer">
419
+        <el-button @click="dialogVisible = false">取 消</el-button>
420
+        <el-button type="primary" @click="saveEnterprise">立即认证</el-button>
421
+      </span>
422
+    </el-dialog>
423
+
424
+
425
+    <el-dialog
426
+      title="CA个人认证"
427
+      :visible.sync="persionDialogVisible"
428
+      width="50%">
429
+      <span>
430
+        
431
+        <el-form>
432
+          <el-row>
433
+          
434
+            <el-col>
435
+               <el-form-item label="姓名:">
436
+                 <el-input style="width:200px" v-model="personForm.display_name" placeholder="请输入姓名"></el-input>
437
+               </el-form-item>
438
+            </el-col>
439
+
440
+            <el-col>
441
+               <el-form-item label="身份证号:">
442
+                 <el-input style="width:200px" v-model="personForm.id_card_num" placeholder="请输入身份证号"></el-input>
443
+               </el-form-item>
444
+            </el-col>
445
+
446
+            <el-col>
447
+               <el-form-item label="手机号:">
448
+                 <el-input style="width:200px" v-model="personForm.phone" placeholder="请输入手机号"></el-input>
449
+               </el-form-item>
450
+            </el-col>
451
+
452
+           
453
+            <el-col>
454
+               <el-form-item label="验证码:">
455
+                 <el-input style="width:100px" v-model="form.code" placeholder="请输入验证码"></el-input>
456
+                 <el-button type="primary" size="small" @click="getCode">获取验证码</el-button>
457
+               </el-form-item>
458
+            </el-col>
459
+
460
+          </el-row>
461
+        </el-form>
462
+
463
+      </span>
464
+      <span slot="footer" class="dialog-footer">
465
+        <el-button @click="persionDialogVisible = false">取 消</el-button>
466
+        <el-button type="primary" @click="savePersonEnterprise">立即认证</el-button>
467
+      </span>
468
+    </el-dialog>
255 469
   </div>
256 470
 </template>
257 471
 
258 472
 <script>
259
-import { adminMainView, getAdmins, setAdminStatus,toSign,toTestOne,toTestTwo,toTestThree,toTestFour,toTestFive,toTestSeven,toTestEight,toTestNight,toTestTen,toTestElement,toTestThrityMent } from "@/api/role/admin";
473
+import { adminMainView, getAdmins, setAdminStatus,toSign,toTestOne,toTestTwo,toTestThree,toTestFour,toTestFive,toTestSeven,toTestEight,toTestNight,toTestTen,toTestElement,toTestThrityMent,saveEnterprise,getEnterPriseById,getMobileCode,savePersionEnterPrise,getPerseEnterPriseById,CreatePersionSeal,CreateNewEnterPrise,toTestThrity,toEndEnterPrise,getEnterPriseDetail} from "@/api/role/admin";
260 474
 import { getRoles } from "@/api/role/role";
261 475
 
262 476
 import { parseTime } from "@/utils";
@@ -280,7 +494,32 @@ export default {
280 494
       org: null,
281 495
       isSubSuperAdmin: false,
282 496
       local_user_id: 0,
283
-      selectDrug:[]
497
+      selectDrug:[],
498
+      dialogVisible:false,
499
+      persionDialogVisible:false,
500
+      businessList:[
501
+        {id:1,name:"企业"},
502
+        {id:2,name:"个体工商户"},
503
+        {id:3,name:"政府机构"}
504
+      ],
505
+      form:{
506
+        id:0,
507
+        org_type:"",
508
+        enterprise_name:"",
509
+        code:"",
510
+        org_code:"",
511
+        legal_person_name:"",
512
+        legal_id_card_num:"",
513
+        legal_phone:"",
514
+      },
515
+      personForm:{
516
+        id:0,
517
+        display_name:"",
518
+        phone:"",
519
+        id_card_num:"",
520
+        admin_user_id:"",
521
+        code:"",
522
+      }
284 523
     };
285 524
   },
286 525
   components: {
@@ -288,6 +527,7 @@ export default {
288 527
     AdminInfoForm
289 528
   },
290 529
   created: function() {
530
+     
291 531
     this.local_user_id = this.$store.getters.xt_user.user.id;
292 532
     let page = 1;
293 533
     this.getRoles(page);
@@ -641,11 +881,138 @@ export default {
641 881
       })
642 882
     },
643 883
     toTestThrityMent(){
644
-      toTestThriytyMent().then(response=>{
884
+      toTestThrityMent().then(response=>{
645 885
         var sign =  response.data.data.sign
646 886
         console.log("sign",sign)
647 887
         this.$message.success("保存")
648 888
       })
889
+    },
890
+
891
+    saveEnterprise(){
892
+      
893
+        var params = {
894
+          id:this.form.id,
895
+          org_type:parseInt(this.form.org_type),
896
+          enterprise_name:this.form.enterprise_name,
897
+          code:this.form.code,
898
+          org_code:this.form.org_code,
899
+          legal_person_name:this.form.legal_person_name,
900
+          legal_id_card_num:this.form.legal_id_card_num,
901
+          legal_phone:this.form.legal_phone,
902
+        }
903
+       console.log("paramswowo",params)
904
+      saveEnterprise(params).then(response=>{
905
+        if(response.data.state==1){
906
+          var enterPrise =  response.data.data.enterPrise
907
+          this.dialogVisible = false
908
+          this.$message.success("保存成功!")
909
+        }
910
+      })
911
+    },
912
+    toGet(){
913
+      getEnterPriseById().then(response=>{
914
+        if(response.data.state == 1){
915
+          this.dialogVisible = true
916
+          var enterPrise =  response.data.data.enterPrise
917
+          this.form.id = enterPrise.id
918
+          this.form.org_type = enterPrise.org_type?enterPrise.org_type:""
919
+          this.form.enterprise_name = enterPrise.enterprise_name
920
+          this.form.code = enterPrise.code
921
+          this.form.org_code = enterPrise.org_code
922
+          this.form.legal_person_name = enterPrise.legal_person_name
923
+          this.form.legal_id_card_num  = enterPrise.legal_id_card_num
924
+          this.form.legal_phone = enterPrise.legal_phone
925
+        }
926
+      })
927
+    },
928
+    toRenZhen(admin_user_id,user_name){
929
+       
930
+      getPerseEnterPriseById(admin_user_id).then(response=>{
931
+        if(response.data.state== 1){
932
+          var lastPerson =  response.data.data.lastPerson
933
+          this.personForm.id = lastPerson.id
934
+          this.personForm.display_name = user_name
935
+          this.personForm.phone = lastPerson.phone
936
+          this.personForm.id_card_num = lastPerson.id_card_num
937
+          this.personForm.admin_user_id =lastPerson.admin_user_id
938
+          this.persionDialogVisible = true
939
+        }
940
+      })
941
+
942
+   
943
+    },
944
+    getCode(){
945
+        var params = {
946
+          phone:this.personForm.phone,
947
+        }
948
+       console.log("paramsowowo",params)
949
+      getMobileCode(params).then(response=>{
950
+        if(response.data.state == 1){
951
+          var sign = response.data.data.sign
952
+          console.log("sign",sign)
953
+          this.$message.success("发送成功!")
954
+        }
955
+      }) 
956
+    },
957
+    savePersonEnterprise(){
958
+        var params = {
959
+          id:this.personForm.id,
960
+          display_name:this.personForm.display_name,
961
+          phone:this.personForm.phone,
962
+          id_card_num:this.personForm.id_card_num,
963
+          admin_user_id:this.personForm.admin_user_id,
964
+          code:this.personForm.code,
965
+        }
966
+       console.log("param2o2o2o2",params)
967
+      savePersionEnterPrise(params).then(response=>{
968
+        if(response.data.state == 1){
969
+          var personEnterPrse = response.data.data.personEnterPrse
970
+          this.$message.success("认证成功")
971
+          this.persionDialogVisible = false
972
+        }
973
+      })
974
+    },
975
+    toYinZhang(admin_user_id){
976
+      CreatePersionSeal(admin_user_id).then(response=>{
977
+        if(response.data.state == 1){
978
+          var personSeal =  response.data.data.personSeal
979
+          this.$message.success("创建成功")
980
+        }
981
+      })
982
+    },
983
+    toShouQuan(admin_user_id){
984
+      CreateNewEnterPrise(admin_user_id).then(response=>{
985
+         if(response.data.state == 1){
986
+           var newEnterPrise =  response.data.data.newEnterPrise
987
+           this.$message.success("保存成功!")
988
+         }
989
+      })
990
+    },
991
+    toTestThrity(){
992
+      toTestThrity().then(response=>{
993
+         if(response.data.state == 1){
994
+            var sign =  response.data.data.sign
995
+            console.log("signwoowow",sign)
996
+         }
997
+      })
998
+    },
999
+    toEnd(){
1000
+      toEndEnterPrise().then(response=>{
1001
+        if(response.data.state == 1){
1002
+          var sign = response.data.data.sign
1003
+
1004
+          this.$message.success("保存成功")
1005
+        }
1006
+      })
1007
+    },
1008
+    toWatch(){
1009
+      getEnterPriseDetail().then(response=>{
1010
+        if(response.data.state == 1){
1011
+          var sign = response.data.data.sign
1012
+
1013
+          this.$message.success("保存成功")
1014
+        }
1015
+      })
649 1016
     }
650 1017
   },
651 1018
   watch: {

+ 29 - 9
src/xt_pages/sign/Schedulingdisplay.vue View File

@@ -46,8 +46,8 @@
46 46
                     <div class="lineUpMainLeft">
47 47
                         <div class="lineUpMainLeftTitle">
48 48
                           <p style="width:12%">分区</p>
49
-                          <p style="width:5%">{{ getdays(day) }}</p>
50
-                          <p style="width:79%">病人姓名 </p>
49
+                          <p style="width:6%">{{ getdays(day) }}</p>
50
+                          <p style="width:78%">病人姓名 </p>
51 51
                         </div>
52 52
                     </div>
53 53
                     <div class="lineUpList">
@@ -55,7 +55,7 @@
55 55
                         <p style="display: inline-block;width:12%;text-align: center;">{{ item[1].name }}</p>
56 56
                         <p style="display: inline-block;width:87%">
57 57
                           <span v-for="(it,index) in item[1].data" :key="index" >
58
-                            {{ it.name }}&nbsp;&nbsp;
58
+                            {{nameSplit(it.name)}}&nbsp;&nbsp;
59 59
                           </span>
60 60
                         </p>
61 61
                       </div>
@@ -81,7 +81,8 @@
81 81
                             <p style="display: inline-block;width:12%;text-align: center;">{{ item[1].name }}</p>
82 82
                             <p style="display: inline-block;width:87%">
83 83
                               <span v-for="(it,index) in item[1].data" :key="index" >
84
-                                {{ it.name }}&nbsp;&nbsp;
84
+                                <!-- {{ it.name }}&nbsp;&nbsp; -->
85
+                                {{nameSplit(it.name)}}
85 86
                               </span>
86 87
                             </p>
87 88
                           </div>
@@ -131,7 +132,7 @@ export default {
131 132
       currentPage: 1,
132 133
       total:0,
133 134
       page:0,
134
-      pagesize:6,
135
+      pagesize:4,
135 136
       day:'',
136 137
       teem_sel: [
137 138
         { name: "上午", id: 1 },
@@ -144,7 +145,9 @@ export default {
144 145
           {"name":"周名浩","patient_id":"12394","partition_id":"1291","bed_id":"3593","zon_name":"A1区","number":"4"},
145 146
           {"name":"许素琼","patient_id":"10893","partition_id":"1291","bed_id":"3594","zon_name":"A1区","number":"5"},
146 147
           {"name":"陈少荣","patient_id":"17925","partition_id":"1291","bed_id":"3595","zon_name":"A1区","number":"6"},
147
-          {"name":"石佩贤","patient_id":"21244","partition_id":"1291","bed_id":"5455","zon_name":"A1区","number":"31(滤)"}]},
148
+          {"name":"石佩贤","patient_id":"21244","partition_id":"1291","bed_id":"5455","zon_name":"A1区","number":"31(滤)"},
149
+          {"bed_id": "4500",'name': "B区刘春秀","number": "B1","partition_id": "1797","patient_id": "17581","zon_name": "B区"},
150
+          {"bed_id": "4406",'name': "右7H34杨贵益","number": "1号床","partition_id": "1797","patient_id": "17581","zon_name": "B区"}]},
148 151
           "1333":{"name":"A2区","data":[{"name":"王梓绵","patient_id":"20283","partition_id":"1333","bed_id":"3596","zon_name":"A2区","number":"7"},
149 152
           {"name":"陈惠艮","patient_id":"17935","partition_id":"1333","bed_id":"3597","zon_name":"A2区","number":"8"},
150 153
           {"name":"曾御贞","patient_id":"11218","partition_id":"1333","bed_id":"3598","zon_name":"A2区","number":"9"},
@@ -361,12 +364,28 @@ export default {
361 364
           return this.teem_sel[i].name
362 365
         }
363 366
       }
364
-    }
367
+    },
368
+    nameSplit(val) {
369
+      var reg = /[\u4e00-\u9fa5]/g
370
+      let name = val
371
+      name = name.substr(-4)
372
+      var names = name.match(reg)
373
+      name = names.join('')
374
+      if (name.includes('区')) {
375
+        name = name.replace('区', '')
376
+      }
377
+      if (name.includes('号')) {
378
+        name = name.replace('号', '')
379
+      }
380
+      return name
381
+    },
365 382
 
366 383
   },
367 384
   created(){ 
368
-    this.org_id = this.$store.getters.xt_user.org_id
369
-    // this.schArr = Object.entries(this.data);
385
+    
386
+    // console.log('jiequsdfasdfas',this.nameSplit('左B区陈漫'));
387
+    this.org_id = this.$store.getters.xt_user.org_id 
388
+    this.schArr = Object.entries(this.data);
370 389
     // console.log('5555555555',Math.ceil(this.schArr.length / this.pagesize));
371 390
     // console.log('00000',arr);
372 391
     // this.getindexschedulelist()
@@ -381,6 +400,7 @@ export default {
381 400
 <style lang="scss" scoped>
382 401
 .main-contain{
383 402
     height: 100%;
403
+    
384 404
 }
385 405
 .page_lineUp{
386 406
     height: 100%;

+ 2 - 1
src/xt_pages/stock/drugs/drugStockOutOrder.vue View File

@@ -354,7 +354,7 @@
354 354
             <template slot-scope="scope">
355 355
                <tr style="background: none" v-for="(item,index) in scope.row.child" :key="index">
356 356
                   <td style="border-right: none; border-inline-end: none;text-align: center">
357
-                    <span v-if="is_sys == 1 || is_sys == 5 || is_sys == 12">{{getTotalPrice(item.warehousing_detail_id,scope.row.max_unit,scope.row.min_unit,scope.row.min_number)}}</span>
357
+                    <span v-if="is_sys == 1 || is_sys == 5 || is_sys == 12">{{getTotalPrice(item.warehousing_detail_id,scope.row.max_unit,scope.row.min_unit,scope.row.min_number)}} </span>
358 358
                     <span v-if="is_sys == 0">
359 359
                       <span v-if="scope.row.child.length == 1">{{item.retail_price}}</span> 
360 360
                       <span v-if="scope.row.child.length > 1">{{item.count * item.price}}</span> 
@@ -1959,6 +1959,7 @@ export default {
1959 1959
       if(max_unit == min_unit){
1960 1960
          all_price = max_str * price + min_str * price
1961 1961
       }
1962
+      console.log("all_pricewowo",all_price)
1962 1963
       if(all_price > 0){
1963 1964
         return all_price.toFixed(2)
1964 1965
       }else{

+ 1 - 0
src/xt_pages/stock/drugs/inventoryPrint.vue View File

@@ -46,6 +46,7 @@
46 46
 <script>
47 47
 import BreadCrumb from '@/xt_pages/components/bread-crumb'
48 48
 const moment = require('moment');
49
+import print from "print-js";
49 50
 import { uParseTime } from '@/utils/tools'
50 51
 import { getInventoryModeList } from "@/api/drug/drug"
51 52
 export default {

+ 1 - 0
src/xt_pages/stock/inventoryPrint.vue View File

@@ -45,6 +45,7 @@
45 45
 
46 46
 <script>
47 47
 import BreadCrumb from '@/xt_pages/components/bread-crumb'
48
+import print from "print-js";
48 49
 const moment = require('moment');
49 50
 import { uParseTime } from '@/utils/tools'
50 51
 import { getInventoryExportList } from "@/api/stock"

+ 38 - 2
src/xt_pages/stock/query/goodNewQuery.vue View File

@@ -797,7 +797,8 @@ export default {
797 797
    exportList(){
798 798
       import('@/vendor/Export2Excel').then(excel => {
799 799
       
800
-         if(this.tableList!=null && this.tableList.length > 0){
800
+        if(this.org_id!=0 && this.org_id!=9956){
801
+          if(this.tableList!=null && this.tableList.length > 0){
801 802
           for(let i=0;i<this.tableList.length;i++){
802 803
             this.tableList[i].index = i+1
803 804
             this.tableList[i].type_name =  this.getGoodTypeName(this.tableList[i].good_type_id)
@@ -826,7 +827,42 @@ export default {
826 827
            filename: '库存查询'
827 828
          })
828 829
           this.downloadLoading = false
829
-        })
830
+        }
831
+
832
+        if(this.org_id == 0 || this.org_id == 9956){
833
+         
834
+          if(this.tableList!=null && this.tableList.length > 0){
835
+          for(let i=0;i<this.tableList.length;i++){
836
+            this.tableList[i].index = i+1
837
+            this.tableList[i].type_name =  this.getGoodTypeName(this.tableList[i].good_type_id)
838
+            this.tableList[i].spec = this.tableList[i].specification_name +"/"+ this.tableList[i].packing_unit
839
+            this.tableList[i].manufacturer_name = this.getManufacturName(this.tableList[i].manufacturer)
840
+            this.tableList[i].dealer_name = this.getDearName(this.tableList[i].dealer)
841
+            this.tableList[i].stock_in_count = this.GetExportStockInCount(this.tableList[i].xt_good_stock,this.tableList[i].id)
842
+            this.tableList[i].stock_out_count =this.getExportStockOutCount(this.tableList[i].xt_good_stock,this.tableList[i].id) 
843
+            this.tableList[i].stock_cancel_count = this.getExportCancelStockInfo(this.tableList[i].xt_good_stock,this.tableList[i].id)
844
+            this.tableList[i].act_out_count  = this.getExportActStockOutCount(this.tableList[i].xt_good_stock,this.tableList[i].id) 
845
+            this.tableList[i].over_count = this.getExportOverCount(this.tableList[i].xt_good_stock,this.tableList[i].id) 
846
+            this.tableList[i].sum_count =  this.getOverCount(this.tableList[i].xt_warehouse_info) 
847
+
848
+          }
849
+         }
850
+         
851
+
852
+         const tHeader = ['序号','耗材编码','耗材类型', '耗材名称', '规格&单位','生产厂商','经销商','批准文号','国家编码','入库数量','出库数量','退库数量','实际出库','剩余库存','总库存']
853
+         const filterVal = ['index','good_number','type_name', 'good_name', 'spec','manufacturer_name','dealer_name','number','social_security_directory_code','stock_in_count','act_out_count','stock_cancel_count','stock_out_count','over_count','sum_count']
854
+        
855
+         const data = this.formatJson(filterVal, this.tableList)
856
+         
857
+         excel.export_json_to_excel({
858
+           header: tHeader,
859
+           data,
860
+           filename: '库存查询'
861
+         })
862
+          this.downloadLoading = false
863
+        }
864
+   
865
+       })
830 866
       },
831 867
       formatJson(filterVal, jsonData) {
832 868
         return jsonData.map(v => filterVal.map(j => v[j]));

+ 2 - 0
src/xt_pages/stock/query/goodNewQueryPrint.vue View File

@@ -33,6 +33,7 @@
33 33
               <thead>
34 34
                 <tr>
35 35
                   <td width="5%">序号</td>
36
+                  <td width="5%" v-if="org_id ==0 || org_id ==9956">耗材编码</td>
36 37
                   <td width="6%">耗材类型</td>
37 38
                   <td width="10%">耗材名称</td>
38 39
                   <td width="10%">规格&单位</td>
@@ -53,6 +54,7 @@
53 54
                 <tr v-for="(item, index) in tableList" :key="index">
54 55
                   <!-- 序号 -->
55 56
                   <td>{{ index + 1 }}</td>
57
+                  <td width="5%" v-if="org_id ==0 || org_id ==9956">{{item.good_number }}</td>
56 58
                   <!-- 耗材类型 -->
57 59
                   <td>{{ getGoodTypeName(item.good_type_id) }}</td>
58 60
                   <!-- 耗材名称 -->

+ 36 - 0
src/xt_pages/stock/query/purchaseNewStockQuery.vue View File

@@ -1001,6 +1001,9 @@ export default {
1001 1001
     this.$router.push({path:"/purchase/new/stock/query/print?start_time="+this.start_time+"&end_time="+this.end_time+"&page="+this.page+"&limit="+this.limit+"&keyword="+this.keyword+"&good_type="+this.good_type})
1002 1002
    },
1003 1003
    exportList: function() {
1004
+
1005
+       if(this.org_id!=0&& this.org_id!=9956){
1006
+         
1004 1007
         for(let i=0;i<this.tableList.length;i++){
1005 1008
           this.tableList[i].index = i+1
1006 1009
           this.tableList[i].query_date = this.start_time+"~"+this.end_time
@@ -1028,6 +1031,39 @@ export default {
1028 1031
               filename
1029 1032
             })
1030 1033
         })
1034
+       }
1035
+
1036
+       if(this.org_id == 0 || this.org_id == 9956){
1037
+        
1038
+        for(let i=0;i<this.tableList.length;i++){
1039
+          this.tableList[i].index = i+1
1040
+          this.tableList[i].query_date = this.start_time+"~"+this.end_time
1041
+          this.tableList[i].good_type = this.getGoodTypeName(this.tableList[i].good_type_id)
1042
+          this.tableList[i].manufacturer_name = this.getManufacturName(this.tableList[i].manufacturer)
1043
+          this.tableList[i].dealer_name = this.getDearName(this.tableList[i].dealer)
1044
+          this.tableList[i].specification_name_one = this.tableList[i].specification_name + "/"+this.tableList[i].packing_unit
1045
+        }
1046
+        import('@/vendor/Export2Excel').then(excel => {
1047
+           const multiHeader = [['序号','耗材编码', '查询日期',' 耗材类型','耗材名称','规格&单位','生产产商','经销商', '期初结余' , '', '', '本期增加', '', '', '本期减少' , '', '', '期末结余' , '', '']]
1048
+           const header = ['','', '','','','','','', '数量', '进货金额', '销售金额', '数量', '进货金额', '销售金额', '数量', '进货金额', '销售金额', '数量', '进货金额', '销售金额']
1049
+           const merges = ['A1:A2', 'B1:B2','C1:C2','D1:D2','E1:E2','F1:F2','G1:G2','H1:H2','I1:K1', 'L1:N1', 'O1:Q1', 'R1:T1']
1050
+           const filterVal = ['index','good_number', 'query_date', 'good_type','good_name','specification_name_one','manufacturer_name','dealer_name','stockIn','stock_in_price','stockMoney','stockAdd','addStockMoney','saleStockMoney','outStock','stockOutprice','saleOutMoney','overStock','overPrice','overMoney']
1051
+    
1052
+           const data = this.formatJson(filterVal, this.tableList)
1053
+           
1054
+           const filename = '进销存查询'
1055
+     
1056
+          
1057
+            excel.export_json_to_excel({
1058
+              multiHeader,
1059
+              header,
1060
+              merges,
1061
+              data,
1062
+              filename
1063
+            })
1064
+        })
1065
+       }
1066
+   
1031 1067
       },
1032 1068
       formatJson(filterVal, jsonData) {
1033 1069
         return jsonData.map(v => filterVal.map(j => v[j]));

+ 2 - 0
src/xt_pages/stock/query/purchaseNewStockQueryPrint.vue View File

@@ -25,6 +25,7 @@
25 25
                             <thead>
26 26
                                 <tr>
27 27
                                   <td rowspan="2" width="80">序号</td>
28
+                                  <td rowspan="2" width="80" v-if="org_id==9956">耗材编码</td>
28 29
                                   <td rowspan="2" width="80">耗材名称</td>
29 30
                                   <td rowspan="2" width="80">耗材类型</td>
30 31
                                   <td rowspan="2" width="80">规格&单位</td>
@@ -54,6 +55,7 @@
54 55
                             <tbody>
55 56
                                 <tr v-for="(item,index) in this.tableList" :key="index">
56 57
                                  <td>{{index + 1}}</td>
58
+                                 <td v-if="org_id==9956">{{item.good_number}}</td>
57 59
                                  <td>{{item.good_name}}</td>
58 60
                                  <td>{{getGoodTypeName(item.good_type_id)}}</td>
59 61
                                  <td>{{item.specification_name}}</td>

File diff suppressed because it is too large
+ 1351 - 0
src/xt_pages/user/Sitemap.vue


+ 8 - 10
src/xt_pages/user/components/PatientDetail.vue View File

@@ -366,7 +366,7 @@
366 366
               </el-col>
367 367
 
368 368
 
369
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
369
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
370 370
                 <el-form-item
371 371
                   label="流转地: "
372 372
                 >
@@ -380,9 +380,9 @@
380 380
                  </el-select>
381 381
                 </el-form-item>
382 382
               </el-col>
383
-           
383
+            -->
384 384
 
385
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
385
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
386 386
                 <el-form-item
387 387
                   label="流转开始时间 : "
388 388
                 >
@@ -400,9 +400,9 @@
400 400
                   @change="startTimeChange"
401 401
                  ></el-date-picker>
402 402
                 </el-form-item>
403
-              </el-col>
403
+              </el-col> -->
404 404
 
405
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
405
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
406 406
                 <el-form-item
407 407
                   label="流转结束时间 : "
408 408
                 >
@@ -420,9 +420,9 @@
420 420
                   @change="startTimeChange"
421 421
                  ></el-date-picker>
422 422
                 </el-form-item>
423
-              </el-col> 
423
+              </el-col>  -->
424 424
 
425
-                <el-col :span="8" style="margin-bottom: 20px;">
425
+                <!-- <el-col :span="8" style="margin-bottom: 20px;">
426 426
                 <el-form-item
427 427
                   label="备注 : "
428 428
                   prop="sch_remark">
@@ -435,7 +435,7 @@
435 435
                     placeholder
436 436
                   ></el-input>
437 437
                 </el-form-item>
438
-              </el-col>
438
+              </el-col> -->
439 439
 
440 440
             <el-col :span="8" style="height: 59px">
441 441
               <el-form-item
@@ -1374,8 +1374,6 @@ export default {
1374 1374
       patientSourceList:[
1375 1375
         {value:1,label:"门诊"},
1376 1376
         {value:2,label:"住院"},
1377
-        {value:3,label:"请假"},
1378
-        {value:4,label:"流转"}
1379 1377
       ],
1380 1378
       generic_info_fold: true,
1381 1379
       treat_info_fold: true,

+ 10 - 12
src/xt_pages/user/components/PatientForm.vue View File

@@ -394,7 +394,7 @@
394 394
                 </el-form-item>
395 395
               </el-col>
396 396
       
397
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
397
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
398 398
                 <el-form-item
399 399
                   label="患者去向 : "
400 400
                 >
@@ -408,11 +408,11 @@
408 408
                     >
409 409
                   </el-radio-group>
410 410
                 </el-form-item>
411
-              </el-col>
411
+              </el-col> -->
412 412
            
413 413
 
414 414
             
415
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
415
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
416 416
                 <el-form-item
417 417
                   label="流转地: "
418 418
                 >
@@ -425,11 +425,11 @@
425 425
                     </el-option>
426 426
                  </el-select>
427 427
                 </el-form-item>
428
-              </el-col>
428
+              </el-col> -->
429 429
            
430 430
  
431 431
              
432
-                <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
432
+                <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
433 433
                 <el-form-item
434 434
                   label="流转开始时间 : "
435 435
                 >
@@ -447,9 +447,9 @@
447 447
                   @change="startTimeChange"
448 448
                  ></el-date-picker>
449 449
                 </el-form-item>
450
-              </el-col>
450
+              </el-col> -->
451 451
 
452
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
452
+              <!-- <el-col :span="8" :style="isEdit ? 'width:360px' : ''">
453 453
                 <el-form-item
454 454
                   label="流转结束时间 : "
455 455
                 >
@@ -467,11 +467,11 @@
467 467
                   @change="startTimeChange"
468 468
                  ></el-date-picker>
469 469
                 </el-form-item>
470
-              </el-col> 
470
+              </el-col>  -->
471 471
            
472 472
              
473 473
 
474
-              <el-col :span="8" style="margin-bottom: 20px;" :style="isEdit ? 'width:360px' : ''">
474
+              <!-- <el-col :span="8" style="margin-bottom: 20px;" :style="isEdit ? 'width:360px' : ''">
475 475
                 <el-form-item
476 476
                   label="备注 : "
477 477
                   prop="sch_remark">
@@ -483,7 +483,7 @@
483 483
                     placeholder
484 484
                   ></el-input>
485 485
                 </el-form-item>
486
-              </el-col>
486
+              </el-col> -->
487 487
 
488 488
 
489 489
               <el-col :span="24" :style="isEdit ? 'width:360px' : ''" v-show="showLapseto">
@@ -1411,8 +1411,6 @@ export default {
1411 1411
       patientSourceList:[
1412 1412
         {value:1,label:"门诊"},
1413 1413
         {value:2,label:"住院"},
1414
-        {value:3,label:"请假"},
1415
-        {value:4,label:"流转"}
1416 1414
       ],
1417 1415
       lapsetoOptions: [
1418 1416
         { value: 1, label: "留治" },

+ 109 - 100
src/xt_pages/user/components/PatientSidebar.vue View File

@@ -99,6 +99,10 @@ export default {
99 99
               label:'血管通路'
100 100
             },
101 101
             // {
102
+            //   name:'1-12',
103
+            //   label:'血管通路图'
104
+            // },
105
+            // {
102 106
             //   name: '1-2',
103 107
             //   label: '病程管理'
104 108
             // },
@@ -203,68 +207,69 @@ export default {
203 207
             },
204 208
           ]
205 209
         },
206
-        // {
207
-        //   name: '5',
208
-        //   label: '评估工具',
209
-        //   children: [
210
-        //     {
211
-        //       name: '5-1',
212
-        //       label: '跌倒评估'
213
-        //     },
214
-        //     {
215
-        //       name: '5-2',
216
-        //       label: '小儿跌倒风险评估'
217
-        //     },
218
-        //     {
219
-        //       name: '5-3',
220
-        //       label: '压疮风险评估'
221
-        //     },
222
-        //     {
223
-        //       name: '5-4',
224
-        //       label: 'OH压疮评估'
225
-        //     },
226
-        //     {
227
-        //       name: '5-5',
228
-        //       label: '日常生活能力评估'
229
-        //     },
230
-        //     {
231
-        //       name: '5-6',
232
-        //       label: '导管脱落风险评估'
233
-        //     },
234
-        //     {
235
-        //       name: '5-7',
236
-        //       label: 'RASS及疼痛评估'
237
-        //     },
238
-        //     {
239
-        //       name: '5-8',
240
-        //       label: '营养状况评估'
241
-        //     },
242
-        //     {
243
-        //       name: '5-9',
244
-        //       label: '约束告知单'
245
-        //     },
246
-        //     {
247
-        //       name: '5-10',
248
-        //       label: '心理评估'
249
-        //     },
250
-        //     {
251
-        //       name: '5-11',
252
-        //       label: '瘙痒评估'
253
-        //     },
254
-        //     {
255
-        //       name: '5-12',
256
-        //       label: '血液透析患者评估'
257
-        //     },
258
-        //     {
259
-        //       name: '5-13',
260
-        //       label: 'Glasgow昏迷评分量表'
261
-        //     },
262
-        //     {
263
-        //       name: '5-14',
264
-        //       label: '肌力评估表'
265
-        //     },
266
-        //   ]
267
-        // },
210
+        {
211
+          name: '5',
212
+          label: '评估工具',
213
+          children: [
214
+            {
215
+              name: '5-1',
216
+              label: '跌倒评估'
217
+            },
218
+            {
219
+              name: '5-2',
220
+              label: '小儿跌倒风险评估'
221
+            },
222
+            {
223
+              name: '5-3',
224
+              label: '压疮风险评估'
225
+            },
226
+            {
227
+              name: '5-4',
228
+              label: 'OH压疮评估'
229
+            },
230
+            {
231
+              name: '5-5',
232
+              label: '日常生活能力评估'
233
+            },
234
+            {
235
+              name: '5-6',
236
+              label: '导管脱落风险评估'
237
+            },
238
+            {
239
+              name: '5-7',
240
+              label: 'RASS及疼痛评估'
241
+            },
242
+            {
243
+              name: '5-8',
244
+              label: '营养状况评估'
245
+            },
246
+            {
247
+              name: '5-9',
248
+              label: '约束告知单'
249
+            },
250
+            {
251
+              name: '5-10',
252
+              label: '心理评估'
253
+            },
254
+            {
255
+              name: '5-11',
256
+              label: '瘙痒评估'
257
+            },
258
+            {
259
+              name: '5-12',
260
+              label: '血液透析患者评估'
261
+            },
262
+            {
263
+              name: '5-13',
264
+              label: 'Glasgow昏迷评分量表'
265
+            },
266
+            {
267
+              name: '5-14',
268
+              label: '肌力评估表'
269
+            },
270
+          ]
271
+        },
272
+        
268 273
       ],
269 274
       name:""
270 275
     }
@@ -326,45 +331,49 @@ export default {
326 331
         this.$router.push({path:'/patients/inspection_check?id='+this.id})
327 332
       } else if(name == '4-3'){
328 333
         this.$router.push({path:'/patients/ktv?id='+this.id})
329
-      }
330
-      // else if (name == '5-1') {
331
-      //   this.$router.push({
332
-      //     path: '/patients/patient/'+ this.id +'/Fallassessment'
333
-      //   })
334
-      // } else if (name == '5-2') {
335
-      //   this.$router.push({
336
-      //     path: '/patients/patient/' + this.id + '/pediatricFallAssessment'
337
-      //   })
338
-      // } else if (name == '5-3') {
339
-      //   this.$router.push({
340
-      //     path: '/patients/patient/' + this.id + '/pressuresore'
341
-      //   })
342
-      // } else if (name == '5-4') {
343
-      //   this.$router.push({
344
-      //     path: '/patients/patient/' + this.id + '/OHpressuresore'
345
-      //   })
346
-      // } else if (name == '5-5'){
347
-      //   this.$router.push({path:'/patients/patient/'+this.id+'/dailyLife'})
348
-      // } else if (name == '5-6'){
349
-      //   this.$router.push({path:'/patients/patient/'+this.id+'/Cathetershedding'})
350
-      // } else if (name == '5-7'){
351
-      //   this.$router.push({path:'/patients/patient/'+this.id+'/RassAssessment'})
352
-      // } else if(name == '5-8'){
353
-      //   this.$router.push({path:'/patients/patient/'+this.id+'/nourishmentAssessment'})
354
-      // } else if(name == '5-9'){
355
-      //   this.$router.push({path:'/patients/patient/'+this.id+'/Constraintnotification'})
356
-      // } else if(name == '5-10'){
357
-      //   this.$router.push({ path: '/patients/patient/' + this.id+'/mindAssessment'})
358
-      // } else if(name == '5-11'){
359
-      //   this.$router.push({path:'/patients/patient/' + this.id+'/pruritusAssessment'})
334
+      } 
335
+      // else if(name == '1-12'){
336
+      //   this.$router.push({path:'/patients/patient/'+this.id+'/angiogram'})
337
+      // } 
338
+      else if (name == '5-1') {
339
+        this.$router.push({
340
+          path: '/patients/patient/'+ this.id +'/Fallassessment'
341
+        })
342
+      } else if (name == '5-2') {
343
+        this.$router.push({
344
+          path: '/patients/patient/' + this.id + '/pediatricFallAssessment'
345
+        })
346
+      } else if (name == '5-3') {
347
+        this.$router.push({
348
+          path: '/patients/patient/' + this.id + '/pressuresore'
349
+        })
350
+      } else if (name == '5-4') {
351
+        this.$router.push({
352
+          path: '/patients/patient/' + this.id + '/OHpressuresore'
353
+        })
354
+      } else if (name == '5-5'){
355
+        this.$router.push({path:'/patients/patient/'+this.id+'/dailyLife'})
356
+      } else if (name == '5-6'){
357
+        this.$router.push({path:'/patients/patient/'+this.id+'/Cathetershedding'})
358
+      } else if (name == '5-7'){
359
+        this.$router.push({path:'/patients/patient/'+this.id+'/RassAssessment'})
360
+      } else if(name == '5-8'){
361
+        this.$router.push({path:'/patients/patient/'+this.id+'/nourishmentAssessment'})
362
+      } else if(name == '5-9'){
363
+        this.$router.push({path:'/patients/patient/'+this.id+'/Constraintnotification'})
364
+      } else if(name == '5-10'){
365
+        this.$router.push({ path: '/patients/patient/' + this.id+'/mindAssessment'})
366
+      } else if(name == '5-11'){
367
+        this.$router.push({path:'/patients/patient/' + this.id+'/pruritusAssessment'})
360 368
 
361
-      // } else if(name == '5-12'){
362
-      //   this.$router.push({path:'/patients/patient/' + this.id+'/hemodialysis'})
363
-      // } else if(name == '5-13'){
364
-      //   this.$router.push({path:'/patients/patient/' + this.id+'/Glasgow'})
365
-      // } else if(name == '5-14'){
366
-      //   this.$router.push({path:'/patients/patient/' + this.id+'/Muscleforce'})
367
-      // }
369
+      } else if(name == '5-12'){
370
+        this.$router.push({path:'/patients/patient/' + this.id+'/hemodialysis'})
371
+      } else if(name == '5-13'){
372
+        this.$router.push({path:'/patients/patient/' + this.id+'/Glasgow'})
373
+      } else if(name == '5-14'){
374
+        this.$router.push({path:'/patients/patient/' + this.id+'/Muscleforce'})
375
+      }
376
+     
368 377
     },
369 378
     changePatient(value) {
370 379
       console.log(value)

+ 15 - 0
src/xt_pages/user/dialysisRecord.vue View File

@@ -153,6 +153,15 @@
153 153
               <span>{{getTime(scope.row.assessment_after_dislysis)}}</span>
154 154
             </template>
155 155
           </el-table-column>
156
+
157
+          <el-table-column  width="96" align="center" label="透析器/灌流器">
158
+             <template slot-scope="scope">
159
+                 {{ scope.row.prescription.dialyzer_perfusion_apparatus }}
160
+                 {{ scope.row.prescription.dialysis_dialyszers }}
161
+              <span v-if="scope.row.prescription.dialysis_irrigation!=''">/{{ scope.row.prescription.dialysis_irrigation }}</span>    
162
+             </template>
163
+          </el-table-column>
164
+
156 165
           <el-table-column
157 166
             prop="predialysis_evaluation.dry_weight"
158 167
             width="96"
@@ -337,6 +346,7 @@
337 346
               <th>分区机号</th>
338 347
               <th>透析模式</th>
339 348
               <th>透析时长(h)</th>
349
+              <th>透析器/灌流器</th>
340 350
               <th>干体重(kg)</th>
341 351
               <th>透前称重(kg)</th>
342 352
               <th>透后称重(kg)</th>
@@ -356,6 +366,11 @@
356 366
                 <td>{{ item.partition_name }}-{{ item.device.number }}</td>
357 367
                 <td>{{ modeName(item.prescription.mode_id) }}</td>
358 368
                 <td>{{getTime(item.assessment_after_dislysis)}}</td>
369
+                <td>
370
+                   <span v-if="item.prescription.dialyzer_perfusion_apparatus"></span>
371
+                   <span v-if="item.prescription.dialysis_dialyszers!=''">{{ item.prescription.dialysis_dialyszers }} </span>
372
+                   <span v-if="item.prescription.dialysis_irrigation!=''">/{{ item.prescription.dialysis_irrigation }} </span> 
373
+                </td>
359 374
                 <td>{{ item.predialysis_evaluation.dry_weight }}</td>
360 375
                 <td>{{ item.predialysis_evaluation.weight_before }}</td>
361 376
                 <td>{{ item.assessment_after_dislysis.weight_after }}</td>

+ 165 - 165
src/xt_pages/user/evaluationtool/Muscleforce.vue View File

@@ -1,173 +1,173 @@
1 1
 <template>
2
-    <div class="patient-container">
3
-        <patient-sidebar :id="patientID" defaultActive="5-14"></patient-sidebar>
4
-        <div>
5
-            <div class="patient-app-container advice-container app-container">
6
-                <div class="content_top">
7
-                    <!-- 左 -->
8
-                    <div style="width: 58%;">
9
-                        <div style="margin-bottom: 20px;"><el-button type="primary">新增</el-button></div>
10
-                        <div style="font-size: 20px;margin-bottom: 20px;">肌力评估表</div>
11
-                        <div style="width: 100%;">
12
-                            <table class="table" border="1" style="width: 100%;">
13
-                                <thead>
14
-                                    <tr>
15
-                                        <th style="width: 150px;">级别</th>
16
-                                        <th>分值</th>
17
-                                    </tr>
18
-                                </thead>
19
-                                <!-- <tbody>
20
-                                    <tr class="bg_color">
21
-                                        <td class="start">0级</td>
22
-                                        <td>
23
-                                            <div class="jiange">
24
-                                                <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball"/>&nbsp; 肌肉完全不收缩</label>
25
-                                            </div>
26
-                                        </td>
27
-                                    </tr>
28
-                                    
29
-                                    <tr>
30
-                                        <td class="start">1级</td>
31
-                                        <td>
32
-                                            <div class="jiange">
33
-                                                <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />&nbsp; 可见肌肉收缩但无肢体运动</label>
34
-                                            </div>
35
-                                        </td>
36
-                                    </tr>
37
-                                   
38
-                                    <tr class="bg_color">
39
-                                        <td class="start">2级</td>
40
-                                        <td>
41
-                                            <div class="jiange">
42
-                                                <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball"/>
43
-                                                    &nbsp;肢体能在床上移动,但不能抬离床面,即不能对抗地心引力
44
-                                                </label>
45
-                                            </div>
46
-                                        </td>
47
-                                    </tr>
48
-                                   
49
-                                    <tr >
50
-                                        <td class="start">3级</td>
51
-                                        <td>
52
-                                            <div class="jiange">
53
-                                                <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />
54
-                                                    &nbsp;肢体能抬离床面,克服地心引力做随意运动,但不能对抗外加阻力
55
-                                                </label>
56
-                                            </div>
57
-                                        </td>
58
-                                    </tr>
59
-                                    
60
-                                    <tr class="bg_color">
61
-                                        <td class="start">4级</td>
62
-                                        <td>
63
-                                            <div class="jiange">
64
-                                                <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />
65
-                                                    &nbsp;能在一般的外加阻力下作运动,但力量较正常弱
66
-                                                </label>
67
-                                            </div>
68
-                                        </td>
69
-                                    </tr>
70
-                                   
71
-                                    <tr>
72
-                                        <td class="start">5级</td>
73
-                                        <td>
74
-                                            <div class="jiange">
75
-                                                <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />
76
-                                                    &nbsp;正常肌力
77
-                                                </label>
78
-                                            </div>
79
-                                        </td>
80
-                                    </tr>
81
-                                </tbody> -->
82
-                              <tbody>
83
-                                <tr v-for="(item,index) in shuju" :key="index" :style="{'background':(index==0 || index % 2==0) ?'rgb(243, 240, 240)':'white'}">
84
-                                  <td class="start">{{ item.title }}</td>
85
-                                  <td>
86
-                                    <div class="jiange">
87
-                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" :value="item.value" @change="handleCheckedCitiesChange"/>&nbsp;{{ item.value }}</label>
88
-                                    </div>
89
-                                  </td>
90
-                                </tr>
91
-                              </tbody>
92
-                            </table>
93
-                        </div>
94
-                        
95
-                        <div style="vertical-align: top;  margin: 10px 0px; position: relative;">
96
-                            <span style="position: relative; top: -55px;">护理措施:</span>
97
-                            <div style="margin-top: 20px;display: inline-block; width: 90%;">
98
-                                <el-input maxlength="200" type = "textarea" :rows="3" v-model="input" placeholder="输入护理措施,200字以内" ></el-input>
99
-                            </div>
100
-                        </div>
101
-                        
102
-                        <div>
103
-                            <div class="bottoms">
104
-                                <span>级别:</span>
105
-                                <el-input v-model="Mus_Totalpoints" style="width: 100px;"></el-input>级
106
-                            </div>
2
+  <div class="patient-container">
3
+    <patient-sidebar :id="patientID" defaultActive="5-14"></patient-sidebar> 
4
+    <div>
5
+      <div class="patient-app-container advice-container app-container">
6
+        <div class="content_top">
7
+          <!-- 左 -->
8
+          <div style="width: 58%;">
9
+              <div style="margin-bottom: 20px;"><el-button type="primary">新增</el-button></div>
10
+              <div style="font-size: 20px;margin-bottom: 20px;">肌力评估表</div>
11
+              <div style="width: 100%;">
12
+                  <table class="table" border="1" style="width: 100%;">
13
+                      <thead>
14
+                          <tr>
15
+                              <th style="width: 150px;">级别</th>
16
+                              <th>分值</th>
17
+                          </tr>
18
+                      </thead>
19
+                      <!-- <tbody>
20
+                          <tr class="bg_color">
21
+                              <td class="start">0级</td>
22
+                              <td>
23
+                                  <div class="jiange">
24
+                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball"/>&nbsp; 肌肉完全不收缩</label>
25
+                                  </div>
26
+                              </td>
27
+                          </tr>
28
+                          
29
+                          <tr>
30
+                              <td class="start">1级</td>
31
+                              <td>
32
+                                  <div class="jiange">
33
+                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />&nbsp; 可见肌肉收缩但无肢体运动</label>
34
+                                  </div>
35
+                              </td>
36
+                          </tr>
37
+                          
38
+                          <tr class="bg_color">
39
+                              <td class="start">2级</td>
40
+                              <td>
41
+                                  <div class="jiange">
42
+                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball"/>
43
+                                          &nbsp;肢体能在床上移动,但不能抬离床面,即不能对抗地心引力
44
+                                      </label>
45
+                                  </div>
46
+                              </td>
47
+                          </tr>
48
+                          
49
+                          <tr >
50
+                              <td class="start">3级</td>
51
+                              <td>
52
+                                  <div class="jiange">
53
+                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />
54
+                                          &nbsp;肢体能抬离床面,克服地心引力做随意运动,但不能对抗外加阻力
55
+                                      </label>
56
+                                  </div>
57
+                              </td>
58
+                          </tr>
59
+                          
60
+                          <tr class="bg_color">
61
+                              <td class="start">4级</td>
62
+                              <td>
63
+                                  <div class="jiange">
64
+                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />
65
+                                          &nbsp;能在一般的外加阻力下作运动,但力量较正常弱
66
+                                      </label>
67
+                                  </div>
68
+                              </td>
69
+                          </tr>
70
+                          
71
+                          <tr>
72
+                              <td class="start">5级</td>
73
+                              <td>
74
+                                  <div class="jiange">
75
+                                      <label style="font-size: 15px;"><input type="checkbox" name="ball" value="volleyball" />
76
+                                          &nbsp;正常肌力
77
+                                      </label>
78
+                                  </div>
79
+                              </td>
80
+                          </tr>
81
+                      </tbody> -->
82
+                    <tbody>
83
+                      <tr v-for="(item,index) in shuju" :key="index" :style="{'background':(index==0 || index % 2==0) ?'rgb(243, 240, 240)':'white'}">
84
+                        <td class="start">{{ item.title }}</td>
85
+                        <td>
86
+                          <div class="jiange">
87
+                            <label style="font-size: 15px;"><input type="checkbox" name="ball" :value="item.value" @change="handleCheckedCitiesChange"/>&nbsp;{{ item.value }}</label>
88
+                          </div>
89
+                        </td>
90
+                      </tr>
91
+                    </tbody>
92
+                  </table>
93
+              </div>
94
+              
95
+              <div style="vertical-align: top;  margin: 10px 0px; position: relative;">
96
+                  <span style="position: relative; top: -55px;">护理措施:</span>
97
+                  <div style="margin-top: 20px;display: inline-block; width: 90%;">
98
+                      <el-input maxlength="200" type = "textarea" :rows="3" v-model="input" placeholder="输入护理措施,200字以内" ></el-input>
99
+                  </div>
100
+              </div>
101
+              
102
+              <div>
103
+                  <div class="bottoms">
104
+                      <span>级别:</span>
105
+                      <el-input v-model="Mus_Totalpoints" style="width: 100px;"></el-input>级
106
+                  </div>
107 107
 
108
-                            <div class="bottoms">
109
-                                <span>评估日期:</span>
110
-                                <el-date-picker
111
-                                    v-model="value1"
112
-                                    type="date"
113
-                                    placeholder="选择日期"
114
-                                    :clearable="false"
115
-                                    style="width: 150px;">
116
-                                </el-date-picker>
117
-                            </div>
108
+                  <div class="bottoms">
109
+                      <span>评估日期:</span>
110
+                      <el-date-picker
111
+                          v-model="value1"
112
+                          type="date"
113
+                          placeholder="选择日期"
114
+                          :clearable="false"
115
+                          style="width: 150px;">
116
+                      </el-date-picker>
117
+                  </div>
118 118
 
119
-                            <div class="bottoms">
120
-                                <span>评估人:</span>
121
-                                <el-select v-model="value" placeholder="请选择" >
122
-                                    <el-option
123
-                                    v-for="item in options"
124
-                                    :key="item.value"
125
-                                    :label="item.label"
126
-                                    :value="item.value"
127
-                                    style="width:150px;">
128
-                                    </el-option>
129
-                                </el-select>
130
-                            </div>
131
-                            
132
-                        </div> 
133
-                    </div>
134
-                    <!-- 虚线 -->
135
-                    <div style="height: 100vh; width: 1px; border-left:1px dashed #DCDFE6 ;"></div>
136
-                    <!-- 右 -->
137
-                    <div style="width: 38%;">
138
-                        <div style="font-size: 20px; margin-bottom: 20px;">评估历史记录</div>
139
-                        <div style="width: 100%;">
140
-                            <el-table
141
-                            :data="tableData"
142
-                            stripe
143
-                            border
144
-                            :header-cell-style="{
145
-                                background: '#0077ff9f',color:'white'}"
146
-                            style="width: 100%">
147
-                                <el-table-column
148
-                                prop="date"
149
-                                label="评估日期"
150
-                                width="180">
151
-                                </el-table-column>
152
-                                <el-table-column
153
-                                prop="name"
154
-                                label="总分"
155
-                                >
156
-                                </el-table-column>
157
-                                <el-table-column
158
-                                prop="name"
159
-                                label="评估人"
160
-                                >
161
-                                </el-table-column>
162
-                            </el-table>
163
-                        </div>
164
-                    </div>
165
-                </div>
166
-                
167
-            </div>
119
+                  <div class="bottoms">
120
+                      <span>评估人:</span>
121
+                      <el-select v-model="value" placeholder="请选择" >
122
+                          <el-option
123
+                          v-for="item in options"
124
+                          :key="item.value"
125
+                          :label="item.label"
126
+                          :value="item.value"
127
+                          style="width:150px;">
128
+                          </el-option>
129
+                      </el-select>
130
+                  </div>
131
+                  
132
+              </div> 
133
+          </div>
134
+          <!-- 虚线 -->
135
+          <div style="height: 100vh; width: 1px; border-left:1px dashed #DCDFE6 ;"></div>
136
+          <!-- 右 -->
137
+          <div style="width: 38%;">
138
+              <div style="font-size: 20px; margin-bottom: 20px;">评估历史记录</div>
139
+              <div style="width: 100%;">
140
+                  <el-table
141
+                  :data="tableData"
142
+                  stripe
143
+                  border
144
+                  :header-cell-style="{
145
+                      background: '#0077ff9f',color:'white'}"
146
+                  style="width: 100%">
147
+                      <el-table-column
148
+                      prop="date"
149
+                      label="评估日期"
150
+                      width="180">
151
+                      </el-table-column>
152
+                      <el-table-column
153
+                      prop="name"
154
+                      label="总分"
155
+                      >
156
+                      </el-table-column>
157
+                      <el-table-column
158
+                      prop="name"
159
+                      label="评估人"
160
+                      >
161
+                      </el-table-column>
162
+                  </el-table>
163
+              </div>
164
+          </div>
168 165
         </div>
169
-       
166
+          
167
+      </div>
170 168
     </div>
169
+      
170
+  </div>
171 171
 </template>
172 172
 <script>
173 173
 import PatientSidebar from '../components/PatientSidebar.vue'

+ 128 - 32
src/xt_pages/user/patients.vue View File

@@ -253,7 +253,7 @@
253 253
           </ul>
254 254
         </div>
255 255
       </div>
256
-      <div class="cell clearfix">
256
+      <!-- <div class="cell clearfix">
257 257
         <label class="title"><span class="name">患者去向</span> : </label>
258 258
         <div class="time ">
259 259
           <ul class="">
@@ -267,7 +267,7 @@
267 267
             </li>
268 268
           </ul>
269 269
         </div>
270
-      </div>
270
+      </div> -->
271 271
       <div class="cell clearfix">
272 272
         <label class="title"><span class="name">其它查询</span> : </label>
273 273
         <el-select
@@ -525,7 +525,7 @@
525 525
             </el-radio-group>
526 526
           </el-form-item>
527 527
 
528
-          <el-form-item label="转归(死亡)时间 :" prop="lapseto_time" required>
528
+          <el-form-item label="转归(死亡)时间 :" prop="lapseto_time" required v-if="lapsetoForm.lapseto_type == 2 || lapsetoForm.lapseto_type == 3"> 
529 529
             <el-date-picker
530 530
               v-model="lapsetoForm.lapseto_time"
531 531
               type="datetime"
@@ -539,6 +539,47 @@
539 539
           <el-form-item label="转出(死亡)原因:" v-if="lapsetoForm.lapseto_type == 2 || lapsetoForm.lapseto_type == 3">
540 540
               <el-input v-model="lapsetoForm.out_reason"></el-input>
541 541
           </el-form-item>
542
+
543
+          <el-form-item label="开始时间:" v-if="lapsetoForm.lapseto_type != 2 && lapsetoForm.lapsetoType !=3">
544
+            <el-date-picker
545
+                  size="small"
546
+                  v-model="form.patient_start_time"
547
+                  prefix-icon="el-icon-date"
548
+                  :editable="false"
549
+                  style="width: 150px;"
550
+                  type="date"
551
+                  placeholder="选择日期时间"
552
+                  align="right"
553
+                  format="yyyy-MM-dd"
554
+                  value-format="yyyy-MM-dd"
555
+                ></el-date-picker>
556
+         </el-form-item>
557
+
558
+         <el-form-item label="结束时间:" v-if="lapsetoForm.lapseto_type != 2 && lapsetoForm.lapsetoType !=3">
559
+            <el-date-picker
560
+                  size="small"
561
+                  v-model="form.patient_end_time"
562
+                  prefix-icon="el-icon-date"
563
+                  :editable="false"
564
+                  style="width: 150px;"
565
+                  type="date"
566
+                  placeholder="选择日期时间"
567
+                  align="right"
568
+                  format="yyyy-MM-dd"
569
+                  value-format="yyyy-MM-dd"
570
+                ></el-date-picker>
571
+         </el-form-item>
572
+
573
+        <el-form-item label="转院地区:" v-if="lapsetoForm.lapseto_type == 4">
574
+          <el-select v-model="form.patient_address" placeholder="请选择">
575
+              <el-option
576
+                v-for="item in liuAddresslist"
577
+                :key="item.id"
578
+                :label="item.name"
579
+                :value="item.name">
580
+              </el-option>
581
+           </el-select>
582
+        </el-form-item>
542 583
         </el-form>
543 584
         <div slot="footer" class="dialog-footer">
544 585
           <el-button @click="LapsetoDialogVisible = false">取 消</el-button>
@@ -638,34 +679,32 @@
638 679
             :data="patientAllgicList"
639 680
             border
640 681
             style="width: 100%">
641
-            <el-table-column  prop="date" label="流转地"  width="180"  align="center">
682
+            <el-table-column  prop="date" label="序号"  width="100"  align="center">
642 683
               <template  slot-scope="scope">
643
-                 {{ scope.row.patient_address }}
644
-
684
+                {{ scope.$index + 1 }}
645 685
               </template>
646 686
             </el-table-column>
647
-            <el-table-column  prop="name" label="流转开始时间"  width="180"   align="center">
687
+            <el-table-column  prop="date" label="转归方式"  width="100"  align="center">
688
+              <template  slot-scope="scope">
689
+                 {{getPatientSource(scope.row.patient_source) }}
690
+              </template>
691
+            </el-table-column>
692
+            
693
+            <el-table-column  prop="name" label="开始时间"  width="180"   align="center">
648 694
               <template  slot-scope="scope"  >
649 695
                  {{ getTime(scope.row.start_time) }}
650
-
651 696
               </template>
652 697
             </el-table-column>
653 698
 
654
-            <el-table-column  prop="name" label="开始流转结束时间"  width="180"   align="center">
699
+            <el-table-column  prop="name" label="结束时间"  width="180"   align="center">
655 700
               <template  slot-scope="scope"  >
656 701
                 {{ getTime(scope.row.end_time) }}
657
-
658
-              </template>
659
-            </el-table-column>
660
-            <el-table-column  prop="address"  label="流转地址"   align="center">
661
-              <template  slot-scope="scope" >
662
-                {{ scope.row.patient_address }}
663 702
               </template>
664 703
             </el-table-column>
665
-
666
-            <el-table-column  prop="address"  label="备注"   align="center">
704
+            
705
+            <el-table-column  prop="date" label="转院地区"  width="180"  align="center">
667 706
               <template  slot-scope="scope">
668
-                {{ scope.row.remake }}
707
+                 {{ scope.row.patient_address }}
669 708
               </template>
670 709
             </el-table-column>
671 710
           </el-table>
@@ -689,7 +728,7 @@
689 728
   import { log } from 'util'
690 729
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
691 730
   import UploadExcel from '@/xt_pages/components/UploadExcel'
692
-
731
+  import { getDataConfig } from "@/utils/data";
693 732
   export default {
694 733
     name: 'Patient',
695 734
     components: {
@@ -738,7 +777,14 @@
738 777
         lapsetoOptions: [
739 778
           { value: 1, label: '留治' },
740 779
           { value: 2, label: '转出' },
741
-          { value: 3,  label: "死亡" },
780
+          { value: 3, label: "死亡" },
781
+          { value: 4, label: "转院" },
782
+          { value: 5, label:"肾移植"},
783
+          { value: 6, label:"转腹透"},
784
+          { value:7,  label:"出院"},
785
+          { value:8,  label:"好转"},
786
+          { value:9,  label:"放弃治疗"},
787
+          { value:10, label:"其他状态"},
742 788
         ],
743 789
         systemType: 0,
744 790
         systemArr: [
@@ -761,16 +807,20 @@
761 807
           {value:0,label:"全部",source:0,lapeseto:0},
762 808
           {value:1,label:"门诊",source:1,lapeseto:1},
763 809
           {value:2,label:"住院",source:2,lapeseto:2},
764
-          {value:3,label:"请假",source:3,lapeseto:3},
765
-          {value:4,label:"流转",source:4,lapeseto:4}
810
+         
766 811
        ],
767 812
         lapsetoArr: [
768 813
           { value: 0, label: '全部', source: 0, lapseto: 0 },
769 814
           { value: 1, label: '转出', source: 0, lapseto: 2 },
770 815
           { value: 2, label: '留治', source: 0, lapseto: 1 },
771 816
           { value: 3, label: '死亡', source:0,  lapseto: 3 },
772
-          // { value: 3, label: "门诊", source: 1, lapseto: 1 },
773
-          // { value: 4, label: "住院", source: 2, lapseto: 1 }
817
+          { value: 4, label: "转院", source: 0, lapseto: 4 },
818
+          { value: 5, label: "肾移植", source: 0, lapseto: 5 },
819
+          { value: 6, label: "转腹透", source: 0, lapseto: 6 },
820
+          { value: 7, label: "出院", source: 0, lapseto: 7 },
821
+          { value: 8, label: "好转", source: 0, lapseto: 8 },
822
+          { value: 9, label: "放弃治疗", source: 0, lapseto: 9 },
823
+          { value: 10, label: "其他状态", source: 0, lapseto: 10 },
774 824
         ],
775 825
         scheduling: [
776 826
           {
@@ -839,10 +889,17 @@
839 889
         totalOne: 0,
840 890
         page: 1,
841 891
         limit: 5,
842
-        patientAllgicList:[]
892
+        patientAllgicList:[],
893
+        liuAddresslist:[],
894
+        form:{
895
+          patient_address:"",
896
+          patient_start_time:"",
897
+          patient_end_time:"",
898
+        }
843 899
       }
844 900
     },
845 901
     created() {
902
+      this.liuAddresslist = getDataConfig('hemodialysis', 'liu_address')
846 903
       if(sessionStorage.getItem('patientPageSize')){
847 904
         this.listQuery.limit = parseInt(sessionStorage.getItem('patientPageSize'))
848 905
       }
@@ -1272,10 +1329,14 @@
1272 1329
         return row.total_dialysis + row.user_sys_before_count
1273 1330
       },
1274 1331
       EditLapseto() {
1275
-        if (this.lapsetoForm.lapseto_time == '') {
1276
-          this.$message.error('请选择时间')
1277
-          return
1332
+
1333
+        if(this.lapsetoForm.lapeseto ==2 || this.lapsetoForm.lapeseto == 3 ){
1334
+          if (this.lapsetoForm.lapseto_time == '') {
1335
+            this.$message.error('请选择时间')
1336
+            return
1337
+          }
1278 1338
         }
1339
+      
1279 1340
         //  if(this.lapeseto == "留治"){
1280 1341
         //    this.lapsetoForm.lapseto_type = 1
1281 1342
         //  }
@@ -1286,7 +1347,7 @@
1286 1347
         //   this.lapsetoForm.lapseto_type = 3
1287 1348
         //  }
1288 1349
         console.log("22222",this.lapsetoForm)
1289
-        EditLapseto(this.lapsetoForm.patient_id, this.lapsetoForm).then(
1350
+        EditLapseto(this.lapsetoForm.patient_id, this.lapsetoForm,this.form.patient_start_time,this.form.patient_end_time,this.form.patient_address).then(
1290 1351
           response => {
1291 1352
             if (response.data.state === 1) {
1292 1353
               this.$notify({
@@ -1325,14 +1386,49 @@
1325 1386
       },
1326 1387
       LapsetoInfo(row) {
1327 1388
         console.log("row",row)
1328
-        if (typeof row.lapseto === 'undefined' ||(row.lapseto !== 1 && row.lapseto !== 2 && row.lapseto !==3)) {
1329
-          return '未设置'
1330
-        } else if (row.lapseto === 1) {
1389
+        if (row.lapseto === 1) {
1331 1390
           return '留治'
1332 1391
         } else if(row.lapseto === 2) {
1333 1392
           return '转出'
1334 1393
         }else if(row.lapseto === 3){
1335 1394
           return '死亡'
1395
+        }else if(row.lapseto == 4){
1396
+          return "转院"
1397
+        }else if(row.lapseto == 5){
1398
+          return "肾移植"
1399
+        }else if(row.lapseto == 6){
1400
+           return "转腹透"
1401
+        }else if(row.lapseto == 7){
1402
+           return "出院"
1403
+        }else if(row.lapseto == 8){
1404
+           return "好转"
1405
+        }else if (row.lapseto == 9){
1406
+           return "放弃治疗"
1407
+        }else if (row.lapseto == 10){
1408
+           return "其他状态"
1409
+        }
1410
+      },
1411
+      getPatientSource(val){
1412
+        if(val === 1) {
1413
+          return '留治'
1414
+        }else if(val === 2) {
1415
+          return '转出'
1416
+        }else if(val === 3){
1417
+          return '死亡'
1418
+        }else if(val == 4){
1419
+          return "转院"
1420
+        }else if(val == 5){
1421
+          return "肾移植"
1422
+        }else if(val == 6){
1423
+           return "转腹透"
1424
+        }else if(val == 7){
1425
+           return "出院"
1426
+        }else if(val== 8){
1427
+           return "好转"
1428
+        }else if (val == 9){
1429
+           return "放弃治疗"
1430
+        }else if (val == 10){
1431
+           return "其他状态"
1336 1432
         }
1337 1433
       },
1338 1434
       openWechatBindDialog() {

+ 162 - 160
src/xt_pages/user/vascularAccess.vue View File

@@ -115,8 +115,8 @@
115 115
               </el-tooltip>
116 116
            </template>
117 117
       </el-table-column>
118
-  </el-table>
119
-    <el-pagination
118
+      </el-table>
119
+      <el-pagination
120 120
         @size-change="handleSizeChange"
121 121
         @current-change="handleCurrentChange"
122 122
         :page-sizes="[10,20,50,100]"
@@ -127,166 +127,166 @@
127 127
         layout="total, sizes, prev, pager, next, jumper"
128 128
         :total="total"></el-pagination>
129 129
 
130
-     <el-dialog
131
-         title="新增通路"
132
-         :visible.sync="dialogVisible"
133
-         width="65%"
134
-         center>
135
-      <el-form label-width="150px" :model="form" ref="form" :rules="rules" >
136
-         <el-row :gutter="24">
137
-            <el-col :span="24">
138
-                <el-form-item label="通路项目:"  prop="access_project"  > 
139
-                    <el-radio-group style="padding: 10px;" v-model="form.access_project" @change="changeRadio">
140
-                        <el-radio  label="1">内瘘</el-radio>
141
-                        <el-radio  label="2">导管</el-radio>
142
-                   </el-radio-group>
143
-                </el-form-item>
144
-            </el-col>
145
-         </el-row>
146
-         <el-row :gutter="24">
147
-            <el-col :span="8">
148
-               <el-form-item label="建立日期:" :required="true" prop="start_time">
149
-                 <el-date-picker
150
-                    type="datetime"
151
-                    format="yyyy-MM-dd"
152
-                    value-format="yyyy-MM-dd"
153
-                    placeholder="选择时间"
154
-                    v-model="form.start_time"
155
-                    style="width:200px">
156
-                 </el-date-picker>
157
-               </el-form-item>
158
-            </el-col>
159
-             <el-col :span="8">
160
-               <el-form-item label="血管通路类型:" :required="true" prop="blood_access_part_opera_id">
161
-                 <el-select v-model="form.blood_access_part_opera_id" placeholder="请选择"  style="width:200px">
162
-                    <el-option
163
-                        v-for="item in blood_access_part_opera"
164
-                        :key="item.id"
165
-                        :label="item.name"
166
-                        :value="item.id"
167
-                        >
168
-                    </el-option>
169
-                  </el-select>
170
-               </el-form-item>
171
-            </el-col>
172
-             <el-col :span="8">
173
-               <el-form-item label="血管通路部位:">
174
-                  <el-input v-model="form.blood_access_part_id" readonly @focus="showInnerDialog('17')" style="width:200px"></el-input>
175
-               </el-form-item>
176
-            </el-col>
177
-         </el-row>
130
+      <el-dialog
131
+          title="新增通路"
132
+          :visible.sync="dialogVisible"
133
+          width="65%"
134
+          center>
135
+        <el-form label-width="150px" :model="form" ref="form" :rules="rules" >
178 136
           <el-row :gutter="24">
179
-            <el-col :span="8">
180
-               <el-form-item label="血管通路部位(其他):"  prop="inflow_pass">
181
-                 <!-- <el-select v-model="form.inflow_pass" placeholder="请选择" style="width:150px">
182
-                    <el-option
183
-                        v-for="item in optionsPass"
184
-                        :key="item.id"
185
-                        :label="item.name"
186
-                        :value="item.id">
187
-                    </el-option>
188
-                  </el-select> -->
189
-                  <el-input v-model="form.other_vascular" style="width:200px"></el-input>
190
-               </el-form-item>
191
-            </el-col>
192
-             <el-col :span="8">
193
-               <el-form-item label="首次启用日期:" prop="first_start_time">
194
-                  <el-date-picker
195
-                    type="datetime"
196
-                    format="yyyy-MM-dd"
197
-                    value-format="yyyy-MM-dd"
198
-                    placeholder="选择时间"
199
-                    v-model="form.first_start_time"
200
-                    style="width:200px">
201
-                 </el-date-picker>
202
-               </el-form-item>
203
-            </el-col>
204
-             <el-col :span="8">
205
-               <el-form-item label="使用状态:" :required="true" prop="user_status">
206
-                 <el-select v-model="form.user_status" placeholder="请选择" style="width:200px" @change="changeStatus">
207
-                    <el-option
208
-                        v-for="item in options"
209
-                        :key="item.id"
210
-                        :label="item.name"
211
-                        :value="item.id">
212
-                    </el-option>
213
-                  </el-select>
214
-               </el-form-item>
215
-            </el-col>
216
-         </el-row>
217
-         <el-row :gutter="24" v-show="showOne">
218
-            <el-col :span="8">
219
-               <el-form-item label="导管感染转归:">
220
-                  <el-select v-model="form.ci_type" placeholder="请选择" style="width:200px" @change="changeStatus">
221
-                     <el-option
222
-                           v-for="item in optionsTwo"
223
-                           :key="item.id"
224
-                           :label="item.name"
225
-                           :value="item.id">
226
-                     </el-option>
227
-                  </el-select>
228
-               </el-form-item>
229
-             </el-col>
230
-             <el-col :span="8">
231
-               <el-form-item label="血培养检查结果:">
232
-                  <el-select v-model="form.blood_cultupe" placeholder="请选择" style="width:200px" @change="changeStatus">
233
-                     <el-option
234
-                           v-for="item in optionsThree"
235
-                           :key="item.id"
236
-                           :label="item.name"
237
-                           :value="item.id">
238
-                     </el-option>
239
-                  </el-select>
240
-               </el-form-item>
241
-            </el-col>
242
-            <el-col :span="8">
243
-               <el-form-item label="患者导管转归类型:">
244
-                  <el-select v-model="form.sequelae_type" placeholder="请选择" style="width:200px" @change="changeStatus">
245
-                     <el-option
246
-                           v-for="item in optionsOne"
247
-                           :key="item.id"
248
-                           :label="item.name"
249
-                           :value="item.id">
250
-                     </el-option>
251
-                  </el-select>
252
-               </el-form-item>
253
-             </el-col>
254
-         </el-row>
255
-         <el-row v-show="show">
256
-            <el-col :span="8">
257
-               <el-form-item label="停用日期:">
137
+              <el-col :span="24">
138
+                  <el-form-item label="通路项目:"  prop="access_project"  > 
139
+                      <el-radio-group style="padding: 10px;" v-model="form.access_project" @change="changeRadio">
140
+                          <el-radio  label="1">内瘘</el-radio>
141
+                          <el-radio  label="2">导管</el-radio>
142
+                    </el-radio-group>
143
+                  </el-form-item>
144
+              </el-col>
145
+          </el-row>
146
+          <el-row :gutter="24">
147
+              <el-col :span="8">
148
+                <el-form-item label="建立日期:" :required="true" prop="start_time">
258 149
                   <el-date-picker
259
-                    type="datetime"
260
-                    format="yyyy-MM-dd"
261
-                    value-format="yyyy-MM-dd"
262
-                    placeholder="选择时间"
263
-                    v-model="form.stop_time"
264
-                    style="width:200px">
265
-                 </el-date-picker>
266
-               </el-form-item>
267
-            </el-col>
268
-         </el-row>
269
-         <el-row v-show="show">
270
-           <el-col>
271
-            <el-form-item label="停用原因:">
272
-               <el-input v-model="form.stop_reason"></el-input>
273
-            </el-form-item>
274
-           </el-col>  
275
-         </el-row>
276
-           <el-row>
277
-            <el-col>
278
-                <el-form-item label="备注:">
279
-                 <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
150
+                      type="datetime"
151
+                      format="yyyy-MM-dd"
152
+                      value-format="yyyy-MM-dd"
153
+                      placeholder="选择时间"
154
+                      v-model="form.start_time"
155
+                      style="width:200px">
156
+                  </el-date-picker>
280 157
                 </el-form-item>
158
+              </el-col>
159
+              <el-col :span="8">
160
+                <el-form-item label="血管通路类型:" :required="true" prop="blood_access_part_opera_id">
161
+                  <el-select v-model="form.blood_access_part_opera_id" placeholder="请选择"  style="width:200px">
162
+                      <el-option
163
+                          v-for="item in blood_access_part_opera"
164
+                          :key="item.id"
165
+                          :label="item.name"
166
+                          :value="item.id"
167
+                          >
168
+                      </el-option>
169
+                    </el-select>
170
+                </el-form-item>
171
+              </el-col>
172
+              <el-col :span="8">
173
+                <el-form-item label="血管通路部位:">
174
+                    <el-input v-model="form.blood_access_part_id" readonly @focus="showInnerDialog('17')" style="width:200px"></el-input>
175
+                </el-form-item>
176
+              </el-col>
177
+          </el-row>
178
+            <el-row :gutter="24">
179
+              <el-col :span="8">
180
+                <el-form-item label="血管通路部位(其他):"  prop="inflow_pass">
181
+                  <!-- <el-select v-model="form.inflow_pass" placeholder="请选择" style="width:150px">
182
+                      <el-option
183
+                          v-for="item in optionsPass"
184
+                          :key="item.id"
185
+                          :label="item.name"
186
+                          :value="item.id">
187
+                      </el-option>
188
+                    </el-select> -->
189
+                    <el-input v-model="form.other_vascular" style="width:200px"></el-input>
190
+                </el-form-item>
191
+              </el-col>
192
+              <el-col :span="8">
193
+                <el-form-item label="首次启用日期:" prop="first_start_time">
194
+                    <el-date-picker
195
+                      type="datetime"
196
+                      format="yyyy-MM-dd"
197
+                      value-format="yyyy-MM-dd"
198
+                      placeholder="选择时间"
199
+                      v-model="form.first_start_time"
200
+                      style="width:200px">
201
+                  </el-date-picker>
202
+                </el-form-item>
203
+              </el-col>
204
+              <el-col :span="8">
205
+                <el-form-item label="使用状态:" :required="true" prop="user_status">
206
+                  <el-select v-model="form.user_status" placeholder="请选择" style="width:200px" @change="changeStatus">
207
+                      <el-option
208
+                          v-for="item in options"
209
+                          :key="item.id"
210
+                          :label="item.name"
211
+                          :value="item.id">
212
+                      </el-option>
213
+                    </el-select>
214
+                </el-form-item>
215
+              </el-col>
216
+          </el-row>
217
+          <el-row :gutter="24" v-show="showOne">
218
+              <el-col :span="8">
219
+                <el-form-item label="导管感染转归:">
220
+                    <el-select v-model="form.ci_type" placeholder="请选择" style="width:200px" @change="changeStatus">
221
+                      <el-option
222
+                            v-for="item in optionsTwo"
223
+                            :key="item.id"
224
+                            :label="item.name"
225
+                            :value="item.id">
226
+                      </el-option>
227
+                    </el-select>
228
+                </el-form-item>
229
+              </el-col>
230
+              <el-col :span="8">
231
+                <el-form-item label="血培养检查结果:">
232
+                    <el-select v-model="form.blood_cultupe" placeholder="请选择" style="width:200px" @change="changeStatus">
233
+                      <el-option
234
+                            v-for="item in optionsThree"
235
+                            :key="item.id"
236
+                            :label="item.name"
237
+                            :value="item.id">
238
+                      </el-option>
239
+                    </el-select>
240
+                </el-form-item>
241
+              </el-col>
242
+              <el-col :span="8">
243
+                <el-form-item label="患者导管转归类型:">
244
+                    <el-select v-model="form.sequelae_type" placeholder="请选择" style="width:200px" @change="changeStatus">
245
+                      <el-option
246
+                            v-for="item in optionsOne"
247
+                            :key="item.id"
248
+                            :label="item.name"
249
+                            :value="item.id">
250
+                      </el-option>
251
+                    </el-select>
252
+                </el-form-item>
253
+              </el-col>
254
+          </el-row>
255
+          <el-row v-show="show">
256
+              <el-col :span="8">
257
+                <el-form-item label="停用日期:">
258
+                    <el-date-picker
259
+                      type="datetime"
260
+                      format="yyyy-MM-dd"
261
+                      value-format="yyyy-MM-dd"
262
+                      placeholder="选择时间"
263
+                      v-model="form.stop_time"
264
+                      style="width:200px">
265
+                  </el-date-picker>
266
+                </el-form-item>
267
+              </el-col>
268
+          </el-row>
269
+          <el-row v-show="show">
270
+            <el-col>
271
+              <el-form-item label="停用原因:">
272
+                <el-input v-model="form.stop_reason"></el-input>
273
+              </el-form-item>
281 274
             </el-col>  
282
-         </el-row>
283
-      </el-form>
275
+          </el-row>
276
+            <el-row>
277
+              <el-col>
278
+                  <el-form-item label="备注:">
279
+                  <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
280
+                  </el-form-item>
281
+              </el-col>  
282
+          </el-row>
283
+        </el-form>
284 284
 
285
-     <span slot="footer" class="dialog-footer">
286
-        <el-button @click="dialogVisible = false">取 消</el-button>
287
-        <el-button type="primary" @click="saveVasularAccess('form')">保存</el-button>
288
-     </span>
289
-     </el-dialog>
285
+      <span slot="footer" class="dialog-footer">
286
+          <el-button @click="dialogVisible = false">取 消</el-button>
287
+          <el-button type="primary" @click="saveVasularAccess('form')">保存</el-button>
288
+      </span>
289
+      </el-dialog>
290 290
 
291 291
 
292 292
 
@@ -459,7 +459,7 @@
459 459
         <el-button type="primary" @click="updatedVasularAccess('form')">保存</el-button>
460 460
      </span>
461 461
      </el-dialog>
462
-
462
+     <sitemap> </sitemap>
463 463
     </div>
464 464
 
465 465
      <multi-select-box
@@ -467,6 +467,7 @@
467 467
         v-on:dialog-comfirm="innerDialogComfirm"
468 468
         v-on:dialog-cancle="innerDialogCancle"
469 469
       ></multi-select-box>
470
+      
470 471
   </div>
471 472
 </template>
472 473
 <script>
@@ -478,12 +479,13 @@
478 479
   import { jsGetAge, uParseTime } from '@/utils/tools'
479 480
   import { getDataConfig } from '@/utils/data'
480 481
   import multiSelectBox from '../dialysis/details/dialog/MultiSelectBox'
481
-    
482
+  import sitemap from './Sitemap'
482 483
   export default {
483 484
     name: 'doctorAdvice',
484 485
     components: {
485 486
       PatientSidebar,
486
-      multiSelectBox
487
+      multiSelectBox,
488
+      sitemap
487 489
     },
488 490
     data() {
489 491
       return {

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

@@ -907,7 +907,7 @@
907 907
             path: '/schedule/remind/print/setting/one?week_type=' + this.week_type + '&week_time=' + this.week_time + '&zone=' + str + '&prestatus=' + this.pre_status+"&type="+1
908 908
           })
909 909
         }
910
-        if(this.org_id != 9671 && this.org_id != 9675 && this.org_id != 10340 && this.org_id != 0){
910
+        if(this.org_id != 9671 && this.org_id != 9675 && this.org_id != 10340 && this.org_id != 0 && this.org_id!=10375){
911 911
           var zone = this.zone
912 912
           console.log("zone23232",zone)
913 913
           var newArr = []

+ 20 - 1
src/xt_pages/workforce/next_remind_print.vue View File

@@ -35,6 +35,7 @@
35 35
                   <td width="100" v-if="printObj.dialyzers == 1 && printObj.perfusion_apparatus == 1">透析器/灌流器</td>
36 36
                   <td width="120" v-if="printObj.anticoagulant==1">抗凝剂(商品名称)</td>
37 37
                   <td width="100" v-if="printObj.anticoagulant_zongliang == 1">总量</td>
38
+                  <td width="100" >血管通路</td>
38 39
                   <td width="300" v-if="printObj.doctor_advice == 1">长期医嘱</td>
39 40
                 </tr>
40 41
               </thead>
@@ -94,6 +95,9 @@
94 95
                   <span v-if="main_collection.dialysissolution.anticoagulant == 10">{{main_collection.dialysissolution.anticoagulant_zongliang?main_collection.dialysissolution.anticoagulant_zongliang+'iu':''}}</span>
95 96
                   <span v-if="main_collection.dialysissolution.anticoagulant == 11">{{main_collection.dialysissolution.anticoagulant_zongliang?main_collection.dialysissolution.anticoagulant_zongliang+'iu':''}}</span>
96 97
                 </td>
98
+                <td :width="td_1_width">
99
+                  <span>{{getBloodName(main_collection.dialysissolution.blood_access)  }}</span>
100
+                </td>
97 101
                 <td :width="td_4_width" style="text-align:left"  v-if="printObj.doctor_advice == 1">
98 102
                   <span style="white-space: pre" v-if="main_collection.doctoradvice.length>0">{{getAdvice(main_collection.doctor_advice)}}</span>
99 103
                   <span style="white-space: pre" v-if="main_collection.hisdoctoradviceinfo.length>0">{{getAdviceOne(main_collection.hisdoctoradviceinfo)}}</span>
@@ -110,6 +114,7 @@
110 114
 
111 115
 <script>
112 116
   import { getNextScheduleWeekDay,getPrintList } from '@/api/schedule'
117
+  import { getDataConfig } from '@/utils/data'
113 118
   import { parseTime } from '@/utils'
114 119
   import { uParseTime } from '@/utils/tools'
115 120
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
@@ -141,13 +146,18 @@
141 146
         pre_status:0,
142 147
         printObj:{},
143 148
         loading: false,
149
+        blood_access_option:[],
144 150
       }
145 151
     },
146 152
     components: {
147 153
       BreadCrumb
148 154
     },
149 155
     created() {
150
-   
156
+      
157
+      this.blood_access_option = getDataConfig(
158
+          'hemodialysis',
159
+          'vascular_access_desc'
160
+       )
151 161
       this.getPrintList()
152 162
       this.org_id = this.$store.getters.xt_user.org.id
153 163
       this.currentDate = this.getCurrentDate()
@@ -168,6 +178,15 @@
168 178
     
169 179
     },
170 180
     methods: {
181
+      getBloodName(id){
182
+         var name= ""
183
+         for(let i=0;i<this.blood_access_option.length;i++){
184
+           if(id == this.blood_access_option[i].id){
185
+              name = this.blood_access_option[i].name
186
+           }
187
+         }
188
+         return name
189
+      },
171 190
       getTimestamp(time) { //把时间日期转成时间戳
172 191
         return (new Date(time)).getTime()
173 192
       },

+ 1 - 0
src/xt_pages/workforce/printOne.vue View File

@@ -489,6 +489,7 @@ export default {
489 489
       getSchedualPrintList(params).then((response) => {
490 490
         if (response.data.state == 1) {
491 491
           this.loading = false
492
+          console.log('111111',response.data.data);
492 493
           var list = response.data.data.list
493 494
           this.list = list
494 495
           var listOne = response.data.data.listOne

+ 23 - 13
src/xt_pages/workforce/remind_print.vue View File

@@ -32,8 +32,9 @@
32 32
                   <td width="70" v-if="printObj.number == 1">机号</td>
33 33
                   <td width="120" v-if="printObj.mode == 1">透析模式</td>
34 34
                   <td width="100" v-if="printObj.dialyzers == 1 && printObj.perfusion_apparatus == 1">透析器/灌流器</td>
35
-                  <td width="120" v-if="printObj.anticoagulant==1">抗凝剂(商品名称)</td>
35
+                  <td width="100" v-if="printObj.anticoagulant==1">抗凝剂(商品名称)</td>
36 36
                   <td width="100" v-if="printObj.anticoagulant_zongliang == 1">总量</td>
37
+                  <td width="200">血管通路</td>
37 38
                   <td width="300" v-if="printObj.doctor_advice == 1">长期医嘱</td>
38 39
                 </tr>
39 40
               </thead>
@@ -63,18 +64,7 @@
63 64
                 </td>
64 65
 
65 66
                 <td :width="td_1_width" v-if="printObj.dialyzers == 1 && printObj.perfusion_apparatus ==1">
66
-                  <!-- <span v-if="org_id!=9987">
67
-                     <span > 
68
-                       <span v-if="org_id!=10131 && org_id!=10215 && org_id!=10233 && main_collection.prescription.dialyzer_perfusion_apparatus!=''">{{main_collection.prescription.dialyzer_perfusion_apparatus}}</span> 
69
-                     
70
-                       <span v-if="org_id==10131 || org_id==9671 || org_id == 10215 || org_id == 10233">{{main_collection.dialysissolution.dialyzer_perfusion_apparatus}}</span>
71
-                      </span>
72
-                     <span v-if="main_collection.prescription.dialyzer_perfusion_apparatus ==''&& main_collection.dialysissolution.length>0">{{main_collection.dialysissolution.dialyzer_perfusion_apparatus}}</span> 
73
-                  </span>
74
-                    {{main_collection.prescription.dialysis_dialyszers}}
75
-                  <span v-if="main_collection.prescription.dialysis_dialyszers!=''&& main_collection.prescription.dialysis_irrigation!='' ">/</span>
76
-                  <span v-if="main_collection.prescription.dialysis_irrigation!=''">{{main_collection.prescription.dialysis_irrigation}}</span> -->
77
-                  
67
+                 
78 68
                   <span v-if="main_collection.prescription.dialysis_dialyszers == ''">{{main_collection.dialysissolution.dialysis_dialyszers}}</span>
79 69
                   <span v-if="main_collection.prescription.dialysis_dialyszers != ''">{{main_collection.prescription.dialysis_dialyszers}}</span>
80 70
 
@@ -104,6 +94,9 @@
104 94
                   <span v-if="main_collection.dialysissolution.anticoagulant == 10">{{main_collection.dialysissolution.anticoagulant_zongliang?main_collection.dialysissolution.anticoagulant_zongliang+'iu':''}}</span>
105 95
                   <span v-if="main_collection.dialysissolution.anticoagulant == 11">{{main_collection.dialysissolution.anticoagulant_zongliang?main_collection.dialysissolution.anticoagulant_zongliang+'iu':''}}</span>
106 96
                 </td>
97
+                <td :width="td_1_width">
98
+                   <span>{{getBloodName(main_collection.prescription.blood_access)  }}</span>
99
+                </td>
107 100
                 <td :width="td_4_width" style="text-align:left"  v-if="printObj.doctor_advice == 1">
108 101
                   <span style="white-space: pre" v-if="main_collection.doctoradvice.length>0">{{getAdvice(main_collection.doctoradvice)}}</span>
109 102
                    <span style="white-space: pre" v-if="main_collection.hisdoctoradviceinfo.length>0">{{ getAdviceOne(main_collection.hisdoctoradviceinfo)}}</span>
@@ -120,6 +113,7 @@
120 113
 
121 114
 <script>
122 115
   import { getScheduleList,getPrintList } from '@/api/schedule'
116
+  import { getDataConfig } from '@/utils/data'
123 117
   import { parseTime } from '@/utils'
124 118
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
125 119
   import print from 'print-js'
@@ -146,6 +140,7 @@
146 140
         printObj:{},
147 141
         week_time:0,
148 142
         zone:0,
143
+        blood_access_option:[]
149 144
       }
150 145
     },
151 146
     components: {
@@ -154,6 +149,12 @@
154 149
     created() {
155 150
       this.getPrintList()
156 151
       this.org_id = this.$store.getters.xt_user.org.id
152
+
153
+      this.blood_access_option = getDataConfig(
154
+          'hemodialysis',
155
+          'vascular_access_desc'
156
+       )
157
+      
157 158
      //console.log("org_id23322323",this.org_id)
158 159
     //  this.currentDate = this.getCurrentDate()
159 160
       this.modeOptions = this.$store.getters.treatment_mode
@@ -414,6 +415,15 @@
414 415
         console.log('name', name)
415 416
         return name
416 417
       },
418
+      getBloodName(id){
419
+         var name= ""
420
+         for(let i=0;i<this.blood_access_option.length;i++){
421
+           if(id == this.blood_access_option[i].id){
422
+              name = this.blood_access_option[i].name
423
+           }
424
+         }
425
+         return name
426
+      }
417 427
     },
418 428
   }
419 429
 </script>

+ 117 - 4
src/xt_pages/workforce/remind_print_setting_one.vue View File

@@ -42,10 +42,13 @@
42 42
                     <span>{{getModeId(main_collection.mode_id)}}</span>
43 43
                   
44 44
                 </div>
45
-                <div class="printCell">
45
+                <div class="printCell" v-if="org_id!=10375">
46 46
                   <span>抗凝剂:{{ main_collection.dialysissolution.anticoagulant ? anticoagulants_confit[main_collection.dialysissolution.anticoagulant].name : ''}}</span>
47 47
                 </div>
48
-                <div class="printCell">
48
+                <div class="printCell" v-if="org_id==10375">
49
+                  <span>抗凝剂:{{ main_collection.prescription.anticoagulant ? anticoagulants_confit[main_collection.prescription.anticoagulant].name : ''}}</span>
50
+                </div>
51
+                <div class="printCell" v-if="org_id!=10375">
49 52
                  首剂:<span v-if="main_collection.dialysissolution.anticoagulant == 1">{{main_collection.dialysissolution.anticoagulant_shouji}} mg</span>
50 53
                   <span v-if="main_collection.dialysissolution.anticoagulant == 2">
51 54
                     {{main_collection.dialysissolution.anticoagulant_shouji}}mg
@@ -79,7 +82,41 @@
79 82
                    </span>
80 83
                  
81 84
                 </div>
82
-                <div class="printCell">
85
+                <div class="printCell" v-if="org_id ==10375">
86
+                 首剂:<span v-if="main_collection.prescription.anticoagulant == 1">{{main_collection.prescription.anticoagulant_shouji}} mg</span>
87
+                  <span v-if="main_collection.prescription.anticoagulant == 2">
88
+                    {{main_collection.prescription.anticoagulant_shouji}}mg
89
+                  </span>
90
+                  <span v-if="main_collection.prescription.anticoagulant == 3">
91
+                    {{main_collection.prescription.anticoagulant_shouji}}iu
92
+                  </span>
93
+                  <span v-if="main_collection.prescription.anticoagulant == 4">
94
+                   {{main_collection.prescription.anticoagulant_shouji}}mg
95
+                  </span>
96
+                  <span v-if="main_collection.prescription.anticoagulant == 5">
97
+                   {{main_collection.prescription.anticoagulant_shouji}} mg
98
+                   </span>
99
+                  <span v-if="main_collection.prescription.anticoagulant == 6">
100
+                   {{main_collection.prescription.anticoagulant_shouji}}iu
101
+                  </span>
102
+                  <span v-if="main_collection.prescription.anticoagulant == 7">
103
+                    {{main_collection.prescription.anticoagulant_shouji}}iu
104
+                   </span>
105
+                  <span v-if="main_collection.prescription.anticoagulant == 8">
106
+                    {{main_collection.prescription.anticoagulant_shouji}}iu
107
+                  </span>
108
+                  <span v-if="main_collection.prescription.anticoagulant == 9">
109
+                    {{main_collection.prescription.anticoagulant_shouji}}iu
110
+                  </span>
111
+                  <span v-if="main_collection.prescription.anticoagulant == 10">
112
+                     {{main_collection.prescription.anticoagulant_shouji}}iu
113
+                    </span>
114
+                  <span v-if="main_collection.prescription.anticoagulant == 11">
115
+                    {{main_collection.prescription.anticoagulant_shouji}}iu
116
+                   </span>
117
+                 
118
+                </div>
119
+                <div class="printCell" v-if="org_id!=10375">
83 120
                   维持:{{main_collection.dialysissolution.anticoagulant_weichi}}
84 121
                    <span v-if="main_collection.dialysissolution.anticoagulant == 1">
85 122
                     mg/h
@@ -116,8 +153,46 @@
116 153
                    </span>
117 154
               
118 155
                 </div>
156
+
157
+                <div class="printCell" v-if="org_id!=10375">
158
+                  维持:{{main_collection.prescription.anticoagulant_weichi}}
159
+                   <span v-if="main_collection.prescription.anticoagulant == 1">
160
+                    mg/h
161
+                  </span>
162
+                  <span v-if="main_collection.prescription.anticoagulant == 2">
163
+                    mg/h
164
+                  </span>
165
+                  <span v-if="main_collection.prescription.anticoagulant == 3">
166
+                   iu/h
167
+                  </span>
168
+                  <span v-if="main_collection.prescription.anticoagulant == 4">
169
+                    mg/h
170
+                  </span>
171
+                  <span v-if="main_collection.prescription.anticoagulant == 5">
172
+                    mg/h
173
+                   </span>
174
+                  <span v-if="main_collection.prescription.anticoagulant == 6">
175
+                   iu/h
176
+                  </span>
177
+                  <span v-if="main_collection.prescription.anticoagulant == 7">
178
+                   iu/h
179
+                   </span>
180
+                  <span v-if="main_collection.prescription.anticoagulant == 8">
181
+                    iu/h
182
+                  </span>
183
+                  <span v-if="main_collection.prescription.anticoagulant == 9">
184
+                    iu/h
185
+                  </span>
186
+                  <span v-if="main_collection.prescription.anticoagulant == 10">
187
+                    iu/h
188
+                    </span>
189
+                  <span v-if="main_collection.prescription.anticoagulant == 11">
190
+                    iu/h
191
+                   </span>
192
+              
193
+                </div>
119 194
                
120
-                <div class="printCell">
195
+                <div class="printCell" v-if="org_id!=10375">
121 196
                   总量:{{main_collection.dialysissolution.anticoagulant_zongliang}}
122 197
                   <span v-if="main_collection.dialysissolution.anticoagulant == 1">
123 198
                     mg
@@ -153,6 +228,44 @@
153 228
                    iu
154 229
                    </span>
155 230
           
231
+                </div>
232
+
233
+                <div class="printCell" v-if="org_id==10375">
234
+                  总量:{{main_collection.prescription.anticoagulant_zongliang}}
235
+                  <span v-if="main_collection.prescription.anticoagulant == 1">
236
+                    mg
237
+                  </span>
238
+                  <span v-if="main_collection.prescription.anticoagulant == 2">
239
+                    mg
240
+                  </span>
241
+                  <span v-if="main_collection.prescription.anticoagulant == 3">
242
+                    iu
243
+                  </span>
244
+                  <span v-if="main_collection.prescription.anticoagulant == 4">
245
+                   mg
246
+                  </span>
247
+                  <span v-if="main_collection.prescription.anticoagulant == 5">
248
+                    mg
249
+                   </span>
250
+                  <span v-if="main_collection.prescription.anticoagulant == 6">
251
+                   iu
252
+                  </span>
253
+                  <span v-if="main_collection.prescription.anticoagulant == 7">
254
+                    iu
255
+                   </span>
256
+                  <span v-if="main_collection.prescription.anticoagulant == 8">
257
+                     iu
258
+                  </span>
259
+                  <span v-if="main_collection.prescription.anticoagulant == 9">
260
+                   iu
261
+                  </span>
262
+                  <span v-if="main_collection.prescription.anticoagulant == 10">
263
+                    iu
264
+                    </span>
265
+                  <span v-if="main_collection.prescription.anticoagulant == 11">
266
+                   iu
267
+                   </span>
268
+          
156 269
                 </div>
157 270
                 <div class="printCell" v-if="org_id==9671 || org_id==9675 || org_id==10340">
158 271
                     <span>上次脱水量:{{ main_collection.prescription.target_ultrafiltration }}ml</span>