浏览代码

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

XMLWAN 2 年前
父节点
当前提交
07d03e4629

文件差异内容过多而无法显示
+ 1084 - 0
src/xt_pages/device/objectTableDisinfectTwo.vue


+ 13 - 97
src/xt_pages/outpatientCharges/batchStatementPrint.vue 查看文件

@@ -3,7 +3,7 @@
3 3
   <div>
4 4
     <template>
5 5
       <el-button
6
-        style="position: fixed; right: 25px; z-index: 999"
6
+        style="position: fixed; right:26px; z-index: 999"
7 7
         :loading="loading"
8 8
         size="small"
9 9
         icon="el-icon-printer"
@@ -14,8 +14,6 @@
14 14
       >
15 15
     </template>
16 16
 
17
-
18
-
19 17
     <div class="dialysisPage" style="padding-top: 40px">
20 18
 
21 19
 <!--      <batch-print-three-->
@@ -24,7 +22,7 @@
24 22
 <!--      ></batch-print-three>-->
25 23
       <batch-print
26 24
         :info="info"
27
-        v-if="org_id == 10138 || org_id == 0 || org_id == 10278"
25
+        v-if="org_id == 10138 || org_id == 0 || org_id == 10278 || org_id == 10342 || org_id == 10341 "
28 26
       >
29 27
 
30 28
       </batch-print>
@@ -105,11 +103,14 @@ export default {
105 103
       if (
106 104
         this.$store.getters.xt_user.org_id == 10138 ||
107 105
         this.$store.getters.xt_user.org_id == 4 ||
108
-        this.$store.getters.xt_user.org_id == 10278
106
+        this.$store.getters.xt_user.org_id == 10278 ||
107
+        this.$store.getters.xt_user.org_id == 0  ||
108
+        this.$store.getters.xt_user.org_id == 10342 ||
109
+        this.$store.getters.xt_user.org_id == 10341
109 110
       ) {
110 111
         setTimeout(() => {
111 112
           const style =
112
-            "@media print {#statement-print{font-size:14px;border:1px solid white}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 47%;}}}";
113
+            "@media print {#prescription-print{font-size:14px;border:1px solid white}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 47%;}}}";
113 114
           const style2 =
114 115
             "@media print {#prescription-print{font-size:14px;border:1px solid white}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 50%;}}}";
115 116
           const style3 =
@@ -132,96 +133,17 @@ export default {
132 133
             "@media print {#prescription-print{font-size:14px;border:1px solid white}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 87%;}}}";
133 134
           const style12 =
134 135
             "@media print {#prescription-print{font-size:14px;border:1px solid white}.printTitle{font-size: 22px;text-align: center;font-weight: bold;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 89%;}}}";
135
-          if (this.num >= 13) {
136
+
136 137
             printJS({
137 138
               printable: "prescription-print",
138 139
               type: "html",
139 140
               style: style,
140 141
               scanStyles: false,
141 142
             });
142
-          } else if (this.num == 12) {
143
-            printJS({
144
-              printable: "prescription-print",
145
-              type: "html",
146
-              style: style2,
147
-              scanStyles: false,
148
-            });
149
-          } else if (this.num == 11) {
150
-            printJS({
151
-              printable: "prescription-print",
152
-              type: "html",
153
-              style: style3,
154
-              scanStyles: false,
155
-            });
156
-          } else if (this.num == 10) {
157
-            printJS({
158
-              printable: "prescription-print",
159
-              type: "html",
160
-              style: style4,
161
-              scanStyles: false,
162
-            });
163
-          } else if (this.num == 9) {
164
-            printJS({
165
-              printable: "prescription-print",
166
-              type: "html",
167
-              style: style5,
168
-              scanStyles: false,
169
-            });
170
-          } else if (this.num == 8) {
171
-            printJS({
172
-              printable: "prescription-print",
173
-              type: "html",
174
-              style: style6,
175
-              scanStyles: false,
176
-            });
177
-          } else if (this.num == 7) {
178
-            printJS({
179
-              printable: "prescription-print",
180
-              type: "html",
181
-              style: style7,
182
-              scanStyles: false,
183
-            });
184
-          } else if (this.num == 6) {
185
-            printJS({
186
-              printable: "prescription-print",
187
-              type: "html",
188
-              style: style8,
189
-              scanStyles: false,
190
-            });
191
-          } else if (this.num == 5) {
192
-            printJS({
193
-              printable: "prescription-print",
194
-              type: "html",
195
-              style: style9,
196
-              scanStyles: false,
197
-            });
198
-          } else if (this.num == 4) {
199
-            printJS({
200
-              printable: "prescription-print",
201
-              type: "html",
202
-              style: style10,
203
-              scanStyles: false,
204
-            });
205
-          } else if (this.num == 3) {
206
-            printJS({
207
-              printable: "prescription-print",
208
-              type: "html",
209
-              style: style11,
210
-              scanStyles: false,
211
-            });
212
-          } else if (this.num <= 2) {
213
-            printJS({
214
-              printable: "prescription-print",
215
-              type: "html",
216
-              style: style12,
217
-              scanStyles: false,
218
-            });
219
-          }
143
+
144
+
220 145
         }, 500);
221
-      } else if (
222
-        this.$store.getters.xt_user.org_id == 9504 ||
223
-        this.$store.getters.xt_user.org_id == 10028
224
-      ) {
146
+      } else if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10028) {
225 147
         const style =
226 148
           "@media print {.printTitle{font-size: 20px;text-align: center;font-weight: bold;}.infoMain{display: flex;flex-wrap: wrap;padding:0 10px;margin-top:10px;font-size:12px;}.infoMain .infoP{width: 33%;}.chargeBox{border: 1px solid #000;font-size:12px;}.chargeUl{display:flex;justify-content: space-between;text-align: center;}.chargeUl p{line-height: 1px;}.chargeP{line-height: 1px;padding-bottom:16px;}.moneyBox{display: flex;justify-content: space-between;padding: 0 10px;background: #eeeeee;-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;-ms-print-color-adjust:exact;print-color-adjust:exact;height: 40px;align-items: center;border:1px solid #000; border-top:none;font-size:12px;}.actionBar{display: flex;justify-content: space-between; line-height: 24px;padding:0 10px;font-size:12px;}.actionBar div{width:150px;}}";
227 149
         printJS({
@@ -232,10 +154,7 @@ export default {
232 154
         });
233 155
       } else {
234 156
         // 医保环境打印格式
235
-        if (
236
-          this.$store.getters.xt_user.org_id == 9919 ||
237
-          this.$store.getters.xt_user.org_id == 10106
238
-        ) {
157
+        if (this.$store.getters.xt_user.org_id == 9919 || this.$store.getters.xt_user.org_id == 10106) {
239 158
           const style =
240 159
             "@media print {.statementTitle{font-size: 28px;text-align: center;font-weight: bold;margin-bottom: 10px;}.statementTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 40px;font-size: 16px;border-color: #000;}}";
241 160
           printJS({
@@ -244,10 +163,7 @@ export default {
244 163
             style: style,
245 164
             scanStyles: false,
246 165
           });
247
-        } else if (
248
-          this.$store.getters.xt_user.org_id == 0 ||
249
-          this.$store.getters.xt_user.org_id == 10191
250
-        ) {
166
+        } else if (this.$store.getters.xt_user.org_id == 10191) {
251 167
           const style =
252 168
             "@media print {#statement-print{font-size:14px;border:1px solid white}.statementTitle{font-size: 22px;text-align: center;font-weight: bold;}table{border-collapse: collapse;text-align: center;}table td {padding: 10px 5px;font-size:16px;}@media print {html {zoom: 57%;}}}";
253 169
           printJS({

+ 4 - 4
src/xt_pages/outpatientCharges/listPrint.vue 查看文件

@@ -14,11 +14,11 @@
14 14
     </template>
15 15
 
16 16
     <div class='dialysisPage' style="padding-top:40px;">
17
-      <printOne v-if="org_id != 0 && org_id != 10106&&org_id != 10215&&org_id != 10265 && org_id!=9675" :list="list" :patient="patient" :order="order" :admin="admin"></printOne>
17
+      <printOne v-if=" org_id != 10106&&org_id != 10215&&org_id != 10265 && org_id!=9675" :list="list" :patient="patient" :order="order" :admin="admin"></printOne>
18 18
       <printTwo v-if="org_id == 10106 && this.paramsObj.balance_accounts_type != 2" :info="info" :order_infos="order_infos" :p_admin="p_admin" :charge_admin="charge_admin"></printTwo>
19 19
       <print-three v-if="org_id == 10106 && this.paramsObj.balance_accounts_type == 2" :info="info" :order_infos="order_infos" :p_admin="p_admin" :charge_admin="charge_admin"></print-three>
20 20
 <!--      <list-print-two v-if="org_id == 10215 || org_id==9675" :list="list" :patient="patient" :order="order" :admin="admin"></list-print-two>-->
21
-     <list-print-three v-if="org_id == 0 || org_id == 10215 || org_id==9675" :list="list" :patient="patient" :order="order" :admin="admin"></list-print-three>
21
+     <list-print-three v-if="org_id == 10215 || org_id==9675" :list="list" :patient="patient" :order="order" :admin="admin"></list-print-three>
22 22
       <print-two10265  v-if="org_id == 10265  " :list="list" :patient="patient" :order="order" :admin="admin" :hospital_record="hospital_record"></print-two10265>
23 23
     </div>
24 24
   </div>
@@ -576,7 +576,7 @@
576 576
 
577 577
       printThisPage() {
578 578
         if(this.org_id != 10106){
579
-          if(this.org_id == 10215 || this.org_id == 0|| this.org_id == 9675){
579
+          if(this.org_id == 10215 || this.org_id == 9675){
580 580
             const style =
581 581
               '@media print {.allListTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.allListInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .listTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}  .listTable tr td {padding: 0 5px;}.tableBottom{font-size: 16px;display: flex;margin-top: 10px;}.tableBottomOne{margin-right: 40px;} .allListTable{border: none;width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;} .allListTable tr{page-break-inside:avoid;} .allListTable tr td {padding: 0 5px;border: 1px solid #000;}.tableBottom{font-size: 16px;display: flex;margin-top: 20px;}.tableBottomOne{margin-right: 40px;}}'
582 582
             printJS({
@@ -589,7 +589,7 @@
589 589
 
590 590
           }else {
591 591
             const style =
592
-              '@media print {.listTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.listInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .listTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}.listTable tr td {padding: 0 5px;}.tableBottom{font-size: 16px;display: flex;margin-top: 10px;}.tableBottomOne{margin-right: 40px;}}'
592
+              '@media print {.listTitle{font-size: 24px;text-align: center;font-weight: bold;margin-bottom: 10px;}.listInfo{display: flex;font-size: 16px;justify-content: space-between;margin: 10px 0;} .listTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 20px;font-size: 14px;border-color: #000;text-align:left;}.listTable tr td {padding: 0 5px;}.tableBottom{font-size: 12px;display: flex;margin-top: 10px;}.tableBottomOne{margin-right: 20px;}}'
593 593
             printJS({
594 594
               printable: 'list-print',
595 595
               type: 'html',

+ 18 - 10
src/xt_pages/outpatientCharges/listTemplate/printOne.vue 查看文件

@@ -5,8 +5,10 @@
5 5
         <div class="listInfo">
6 6
 
7 7
             <div>患者姓名:{{patient.name}}</div>
8
-            <div>透析号:{{patient.dialysis_no}}</div>
9
-            <div>性别:{{patient.gender == 1 ? '男': '女'}}</div>
8
+            <div v-if="$store.getters.xt_user.org.id != 10191">透析号:{{patient.dialysis_no}}</div>
9
+          <div v-if="$store.getters.xt_user.org.id == 10191">身份证号:{{patient.id_card_no}}</div>
10
+
11
+          <div>性别:{{patient.gender == 1 ? '男': '女'}}</div>
10 12
             <div>年龄:{{patient.age}}  岁</div>
11 13
             <div v-if="order.settle_type == 1">收费日期:{{getTimes(order.settle_accounts_date)}}</div>
12 14
             <div v-if="order.settle_type == 2">收费日期:{{getTimes(order.settle_start_time)}} 至 {{getTimes(order.settle_end_time)}}</div>
@@ -39,6 +41,12 @@
39 41
             <div class="tableBottomOne">制表人:{{admin.user_name}}</div>
40 42
             <div class="tableBottomOne">制表日期:{{ getNowTime()}}</div>
41 43
             <div class="tableBottomOne">总费用:{{order.medfee_sumamt}}元</div>
44
+          <div class="tableBottomOne">基金总额:{{order.fund_pay_sumamt}}元</div>
45
+          <div class="tableBottomOne">统筹支付:{{order.hifp_pay}}元</div>
46
+          <div class="tableBottomOne">医疗救助:{{order.maf_pay}}元</div>
47
+          <div class="tableBottomOne">医保报销:{{order.fund_pay_sumamt}}元</div>
48
+          <div class="tableBottomOne">个人支付:{{order.psn_cash_pay}}元</div>
49
+
42 50
         </div>
43 51
         </div>
44 52
     </div>
@@ -94,21 +102,21 @@
94 102
         let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
95 103
           :
96 104
           new Date().getSeconds()
97
-        dateTime = yy + '-' + mm + '-' + dd + ' ' + hh + ':' + mf + ':' + ss
105
+        dateTime = yy + '-' + mm + '-' + dd
98 106
         return dateTime
99 107
       },
100 108
       getTimes(time) {
101 109
         return uParseTime(time, '{y}-{m}-{d}')
102 110
       },
103 111
       getPage(){
104
-        if(this.list.length <= 13){
112
+        if(this.list.length <= 15){
105 113
             this.page = 1
106 114
             this.pageArr.push(this.list.length)
107
-        }else if(this.list.length > 13){
108
-            this.page = parseInt(this.list.length / 13)
109
-            let num = this.list.length % 13
115
+        }else if(this.list.length > 15){
116
+            this.page = parseInt(this.list.length / 15)
117
+            let num = this.list.length % 15
110 118
             for (var i=0;i<this.page;i++){
111
-                this.pageArr.push(13)
119
+                this.pageArr.push(15)
112 120
             }
113 121
             if(num != 0){
114 122
                 this.pageArr.push(num)
@@ -164,11 +172,11 @@
164 172
     padding: 0 5px;
165 173
 }
166 174
 .tableBottom{
167
-    font-size: 16px;
175
+    font-size: 12px;
168 176
     display: flex;
169 177
     margin-top: 20px;
170 178
 }
171 179
 .tableBottomOne{
172
-    margin-right: 40px;
180
+    margin-right: 20px;
173 181
 }
174 182
 </style>

+ 151 - 152
src/xt_pages/outpatientCharges/statementTemplate/batchPrint.vue 查看文件

@@ -1,154 +1,159 @@
1 1
 <template>
2 2
   <div>
3
-    <div  id='prescription-print' class="prescription-print"
4
-         style="position: relative;">
5
-      <img style="width:100%;height:80px" v-if="$store.getters.xt_user.org_id == 10138 || $store.getters.xt_user.org_id == 0 " src="https://kuyi.shengws.com/bailin/bltotle.jpg" alt="">
6
-      <img style="width:100%;height:80px" v-if="$store.getters.xt_user.org_id==10278" src="https://kuyi.shengws.com/beierlog.png" alt="">
7
-      <div class="printTitle" style="position: absolute;left: 40%;top: 50px;">门诊收费清单</div>
8
-      <div style="display:flex;">
9
-        <div>单据号:<span
10
-          style="display:inline-block;width:200px;">{{info[0].order.number ? info[0].order.number : ''}}</span>
11
-        </div>
12
-        <div>透析号:<span style="display:inline-block;width:200px;">{{info[0].patient.dialysis_no ? info[0].patient.dialysis_no : ''}}</span>
13
-        </div>
14
-        <div style="margin-left:2px;">电脑号:<span
15
-          style="display:inline-block;">{{info[0].his.psn_no ? info[0].his.psn_no : ''}}</span></div>
16
-      </div>
17
-      <div style="display:flex;justify-content: space-between;">
18
-        <div style="display:flex;">
19
-          <div>姓名:<span style="display:inline-block;width:50px;">{{info[0].patient.name ? info[0].patient.name.indexOf('(') > -1 ? info[0].patient.name.substring(0,info[0].patient.name.indexOf('(')) : info[0].patient.name : ''}}</span>
20
-          </div>
21
-          <div>性别:<span
22
-            style="display:inline-block;width:30px;">{{info[0].patient.gender == '1' ? '男' : '女'}}</span>
23
-          </div>
24
-          <div>年龄:<span
25
-            style="display:inline-block;width:50px;">{{getAge(info[0].patient)}}岁</span>
26
-          </div>
27
-          <div>费别:<span style="display:inline-block;min-width:80px;">医保</span>
3
+    <div id='prescription-print'>
4
+        <div  class="prescription-print"
5
+            style="position: relative;  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset; page-break-after:always"
6
+            v-for="(infos,index) in info" :key="index">
7
+          <img style="width:100%;height:80px"
8
+            v-if="$store.getters.xt_user.org_id == 10138 || $store.getters.xt_user.org_id == 0 || $store.getters.xt_user.org_id == 10342 || $store.getters.xt_user.org_id == 10341"
9
+             src="https://kuyi.shengws.com/bailin/bltotle.jpg" alt="">
10
+          <img style="width:100%;height:80px" v-if="$store.getters.xt_user.org_id==10278" src="https://kuyi.shengws.com/beierlog.png" alt="">
11
+          <div class="printTitle" style="position: absolute;left: 40%;top: 50px;">门诊收费清单</div>
12
+          <div style="display:flex;">
13
+            <div>单据号:<span
14
+              style="display:inline-block;width:200px;">{{infos.order.number ? infos.order.number : ''}}</span>
15
+            </div>
16
+            <div>透析号:<span style="display:inline-block;width:200px;">{{infos.patient.dialysis_no ? infos.patient.dialysis_no : ''}}</span>
17
+            </div>
18
+            <div style="margin-left:2px;">电脑号:<span
19
+              style="display:inline-block;">{{infos.his.psn_no ? infos.his.psn_no : ''}}</span></div>
28 20
           </div>
29
-          <div>收费日期:<span style="display:inline-block;width:100px;">{{info[0].order.setl_time ? info[0].order.setl_time.split(' ')[0] : ''}}</span>
30
-          </div>
31
-        </div>
32
-        <div style="float:right">金额单位:元</div>
33
-      </div>
34
-      <div style="min-height: 300px;">
35
-        <table border='1' style="width:100%;" cellspacing="0">
36
-          <tr>
37
-            <td width="70">类别</td>
38
-            <td>项目</td>
39
-            <td min-width="180" style="min-width:60px;">规格</td>
40
-            <td width="40">单位</td>
41
-            <td width="40">数量</td>
42
-            <td width="60">单价</td>
43
-            <td width="70">总额</td>
44
-            <td width="130">小计</td>
45
-          </tr>
46
-          <div v-for="(item,i) in info[0].new_detail_list" :key="i" style="width:100%;display: table-row-group;">
47
-            <tr v-for="(subItem,index) in item.details" :key="index">
48
-              <td>
49
-                <span v-if="item.type == 1">药品费</span>
50
-                <span v-if="item.type == 2">诊疗费</span>
51
-                <span v-if="item.type == 3">耗材费</span>
52
-                <span v-if="item.type == 4">诊疗费</span>
53
-
54
-              </td>
55
-              <td>
56
-                <span v-if="item.type == 1">{{ subItem.advice.advice_name }}</span>
57
-                <span v-if="item.type == 2">{{ subItem.project.project.project_name }}</span>
58
-                <span v-if="item.type == 3">{{ subItem.project.good_info.good_name }}</span>
59
-                <span v-if="item.type == 4">{{ subItem.project.project.team_name }}</span>
60
-
61
-              </td>
62
-              <td>
63
-                                <span v-if="item.type == 1"><span
64
-                                  v-if="subItem.advice.drug.min_unit != subItem.advice.drug.dose_unit">{{subItem.advice.drug.dose}}{{subItem.advice.drug.dose_unit}}&nbsp;* &nbsp;</span>{{subItem.advice.drug.min_number}}{{subItem.advice.drug.min_unit}}/{{subItem.advice.drug.max_unit}}</span>
65
-                <span v-if="item.type == 2"></span>
66
-                <span v-if="item.type == 3">{{ subItem.project.good_info.specification_name }}</span>
67
-                <span v-if="item.type == 4"></span>
68
-
69
-              </td>
70
-              <td>
71
-                <span v-if="item.type == 1">{{ subItem.advice.drug.prescribing_number_unit }}</span>
72
-                <span v-if="item.type == 2">{{ subItem.project.unit }}</span>
73
-                <span v-if="item.type == 3">{{ subItem.project.unit }}</span>
74
-                <span v-if="item.type == 4"></span>
75
-
76
-              </td>
77
-              <td>
78
-                <span v-if="item.type == 1">{{ subItem.advice.prescribing_number }}</span>
79
-                <span v-if="item.type == 2">{{ subItem.project.count }}</span>
80
-                <span v-if="item.type == 3">{{ subItem.project.count }}</span>
81
-                <span v-if="item.type == 4"></span>
82
-
83
-              </td>
84
-              <td>
85
-                <span v-if="item.type == 1">{{ subItem.pric.toFixed(2) }}</span>
86
-                <span v-if="item.type == 2">{{ subItem.pric.toFixed(2) }}</span>
87
-                <span v-if="item.type == 3">{{ subItem.pric.toFixed(2) }}</span>
88
-                <span v-if="item.type == 4">{{subItem.Total}}</span>
89
-
90
-
91
-              </td>
92
-              <td>
93
-                <span v-if="item.type == 1">{{ (subItem.advice.prescribing_number * subItem.pric).toFixed(2) }}</span>
94
-                <span v-if="item.type == 2">{{ (subItem.project.count * subItem.pric).toFixed(2) }}</span>
95
-                <span v-if="item.type == 3">{{ (subItem.project.count * subItem.pric).toFixed(2) }}</span>
96
-                <span v-if="item.type == 4">{{subItem.Total}}</span>
97
-
98
-                <!--<span v-if="item.type == 4"></span>-->
99
-
100
-              </td>
101
-              <td :rowspan="item.details.length" v-if="index == 0"
102
-                  style="vertical-align: middle;text-align: center;">{{ item.total.toFixed(2) }}
103
-              </td>
104
-            </tr>
21
+          <div style="display:flex;justify-content: space-between;">
22
+            <div style="display:flex;" >
23
+              <div>姓名:<span style="display:inline-block;width:50px;">
24
+                {{infos.patient.name ? infos.patient.name.indexOf('(') > -1 ? infos.patient.name.substring(0,infos.patient.name.indexOf('(')) : infos.patient.name : ''}}
25
+              </span>
26
+              </div>
27
+              <div>性别:<span
28
+                style="display:inline-block;width:30px;">{{infos.patient.gender == '1' ? '男' : '女'}}</span>
29
+              </div>
30
+              <div>年龄:<span
31
+                style="display:inline-block;width:50px;">{{getAge(infos.patient)}}岁</span>
32
+              </div>
33
+              <div>费别:<span style="display:inline-block;min-width:80px;">医保</span>
34
+              </div>
35
+              <div>收费日期:<span style="display:inline-block;">{{infos.order.setl_time ? infos.order.setl_time.split(' ') : ''}}</span>
36
+              </div>
37
+            </div>
38
+            <div style="float:right">金额单位:元</div>
105 39
           </div>
106
-          <tr>
107
-            <td colspan="7">
108
-              <div style="display:flex;flez-wrap:wrap;">
109
-                <div style="width:33%;" v-for="(item,index) in info[0].new_detail_list" :key="index">
110
-                  <span v-if="item.type == 1">药品费: {{ item.total.toFixed(2) }}</span>
111
-                  <span v-if="item.type == 2">诊疗费: {{ item.total.toFixed(2) }}</span>
112
-                  <span v-if="item.type == 3">耗材费: {{ item.total.toFixed(2) }}</span>
113
-                  <span v-if="item.type == 4">诊疗费: {{ item.total.toFixed(2) }}</span>
114
-
115
-                  <!--<span v-if="item.type == 4">检验费: {{ item.total.toFixed(4) }}</span>-->
116
-
117
-                </div>
40
+          <div style="min-height: 300px;">
41
+            <table border='1' style="width:100%;" cellspacing="0">
42
+              <tr>
43
+                <td width="70">类别</td>
44
+                <td>项目</td>
45
+                <td min-width="180" style="min-width:60px;">规格</td>
46
+                <td width="40">单位</td>
47
+                <td width="40">数量</td>
48
+                <td width="60">单价</td>
49
+                <td width="70">总额</td>
50
+                <td width="130">小计</td>
51
+              </tr>
52
+              <div v-for="(item,i) in infos.new_detail_list" :key="i" style="width:100%;display: table-row-group;">
53
+                <tr v-for="(subItem,index) in item.details" :key="index">
54
+                  <td>
55
+                    <span v-if="item.type == 1">药品费</span>
56
+                    <span v-if="item.type == 2">诊疗费</span>
57
+                    <span v-if="item.type == 3">耗材费</span>
58
+                    <span v-if="item.type == 4">诊疗费</span>
59
+
60
+                  </td>
61
+                  <td>
62
+                    <span v-if="item.type == 1">{{ subItem.advice.advice_name }}</span>
63
+                    <span v-if="item.type == 2">{{ subItem.project.project.project_name }}</span>
64
+                    <span v-if="item.type == 3">{{ subItem.project.good_info.good_name }}</span>
65
+                    <span v-if="item.type == 4">{{ subItem.project.project.team_name }}</span>
66
+
67
+                  </td>
68
+                  <td>
69
+                    <span v-if="item.type == 1">
70
+                      <span v-if="subItem.advice.drug.min_unit != subItem.advice.drug.dose_unit">
71
+                        {{subItem.advice.drug.dose}}{{subItem.advice.drug.dose_unit}}&nbsp;* &nbsp;</span>{{subItem.advice.drug.min_number}}{{subItem.advice.drug.min_unit}}/{{subItem.advice.drug.max_unit}}
72
+                      </span>
73
+                    <span v-if="item.type == 2"></span>
74
+                    <span v-if="item.type == 3">{{ subItem.project.good_info.specification_name }}</span>
75
+                    <span v-if="item.type == 4"></span>
76
+
77
+                  </td>
78
+                  <td>
79
+                    <span v-if="item.type == 1">{{ subItem.advice.drug.prescribing_number_unit }}</span>
80
+                    <span v-if="item.type == 2">{{ subItem.project.unit }}</span>
81
+                    <span v-if="item.type == 3">{{ subItem.project.unit }}</span>
82
+                    <span v-if="item.type == 4"></span>
83
+
84
+                  </td>
85
+                  <td>
86
+                    <span v-if="item.type == 1">{{ subItem.advice.prescribing_number }}</span>
87
+                    <span v-if="item.type == 2">{{ subItem.project.count }}</span>
88
+                    <span v-if="item.type == 3">{{ subItem.project.count }}</span>
89
+                    <span v-if="item.type == 4"></span>
90
+
91
+                  </td>
92
+                  <td>
93
+                    <span v-if="item.type == 1">{{ subItem.pric.toFixed(2) }}</span>
94
+                    <span v-if="item.type == 2">{{ subItem.pric.toFixed(2) }}</span>
95
+                    <span v-if="item.type == 3">{{ subItem.pric.toFixed(2) }}</span>
96
+                    <span v-if="item.type == 4">{{subItem.Total}}</span>
97
+
98
+
99
+                  </td>
100
+                  <td>
101
+                    <span v-if="item.type == 1">{{ (subItem.advice.prescribing_number * subItem.pric).toFixed(2) }}</span>
102
+                    <span v-if="item.type == 2">{{ (subItem.project.count * subItem.pric).toFixed(2) }}</span>
103
+                    <span v-if="item.type == 3">{{ (subItem.project.count * subItem.pric).toFixed(2) }}</span>
104
+                    <span v-if="item.type == 4">{{subItem.Total}}</span>
105
+
106
+                  </td>
107
+                  <td :rowspan="item.details.length" v-if="index == 0"
108
+                      style="vertical-align: middle;text-align: center;">{{ item.total.toFixed(2) }}
109
+                  </td>
110
+                </tr>
118 111
               </div>
119
-            </td>
120
-            <td>合计: {{info[0].order.medfee_sumamt}}元</td>
121
-          </tr>
122
-          <tr>
123
-            <td colspan="7">
124
-              <div style="display:flex;flez-wrap:wrap;margin-bottom:10px;font-size:16px;">
125
-                <div style="width:33%;">医疗费总额:{{info[0].order.medfee_sumamt}}元</div>
126
-                <div style="width:33%;">基金支付金额:{{info[0].order.hifp_pay}}元</div>
127
-                <div style="width:33%;">个人账户支付金额:{{info[0].order.acct_pay}}元</div>
128
-
112
+              <tr>
113
+                <td colspan="7">
114
+                  <div style="display:flex;flez-wrap:wrap;">
115
+                    <div style="width:33%;" v-for="(item,index) in infos.new_detail_list" :key="index">
116
+                      <span v-if="item.type == 1">药品费: {{ item.total.toFixed(2) }}</span>
117
+                      <span v-if="item.type == 2">诊疗费: {{ item.total.toFixed(2) }}</span>
118
+                      <span v-if="item.type == 3">耗材费: {{ item.total.toFixed(2) }}</span>
119
+                      <span v-if="item.type == 4">诊疗费: {{ item.total.toFixed(2) }}</span>
120
+
121
+                    </div>
122
+                  </div>
123
+                </td>
124
+                <td>合计: {{infos.order.medfee_sumamt}}元</td>
125
+              </tr>
126
+              <tr>
127
+                <td colspan="7">
128
+                  <div style="display:flex;flez-wrap:wrap;margin-bottom:10px;font-size:16px;">
129
+                    <div style="width:33%;">医疗费总额:{{infos.order.medfee_sumamt}}元</div>
130
+                    <div style="width:33%;">基金支付金额:{{infos.order.hifp_pay}}元</div>
131
+                    <div style="width:33%;">个人账户支付金额:{{infos.order.acct_pay}}元</div>
132
+
133
+                  </div>
134
+                  <div style="display:flex;flez-wrap:wrap;font-size:16px;">
135
+                    <div style="width:33%;">医疗救助基金金额:{{infos.order.maf_pay}}元</div>
136
+
137
+                    <div style="width:33%;">个人支付金额:{{ infos.order.psn_pay }}元</div>
138
+                    <div style="width:33%;">个人账户金额:{{infos.order.balc}}元</div>
139
+                  </div>
140
+                </td>
141
+                <td style="font-size:16px;">合计:{{infos.order.medfee_sumamt}}元</td>
142
+              </tr>
143
+
144
+            </table>
145
+            <div style="float:right;margin:5px 0;display:flex;">
146
+              <div>操作人:<span style="width:100px;display:inline-block;">{{infos.printor_admin.user_name}}</span></div>
147
+              <div>操作日期:<span style="width:100px;display:inline-block;">{{infos.order.setl_time ? infos.order.setl_time.split(' ')[0] : ''}}</span>
129 148
               </div>
130
-              <div style="display:flex;flez-wrap:wrap;font-size:16px;">
131
-                <div style="width:33%;">医疗救助基金金额:{{info[0].order.maf_pay}}元</div>
149
+            </div>
150
+          </div>
132 151
 
133
-                <div style="width:33%;">个人支付金额:{{ info[0].order.psn_pay }}元</div>
134
-                <div style="width:33%;">个人账户金额:{{info[0].order.balc}}元</div>
135
-              </div>
136
-            </td>
137
-            <td style="font-size:16px;">合计:{{info[0].order.medfee_sumamt}}元</td>
138
-          </tr>
139
-
140
-        </table>
141
-      </div>
142
-      <div style="float:right;margin:10px 0;display:flex;">
143
-        <div>操作人:<span style="width:100px;display:inline-block;">{{info[0].printor_admin.user_name}}</span></div>
144
-        <div>操作日期:<span style="width:100px;display:inline-block;">{{info[0].order.setl_time ? info[0].order.setl_time.split(' ')[0] : ''}}</span>
145
-        </div>
146
-      </div>
147
-      <img style="width:100%;" v-if="$store.getters.xt_user.org_id == 10138" src="https://kuyi.shengws.com/bailin/blend.jpg" alt="">
148
-      <img style="width:100%;" v-if="$store.getters.xt_user.org_id == 10278" src="https://kuyi.shengws.com/bailinbeier.png" alt="">
152
+          <img style="width:100%;" v-if="$store.getters.xt_user.org_id == 10138" src="https://kuyi.shengws.com/bailin/blend.jpg" alt="">
153
+          <img style="width:100%;" v-if="$store.getters.xt_user.org_id == 10278" src="https://kuyi.shengws.com/bailinbeier.png" alt="">
149 154
 
155
+        </div>
150 156
     </div>
151
-
152 157
   </div>
153 158
 
154 159
 </template>
@@ -181,7 +186,7 @@ export default {
181 186
   },
182 187
   props: {
183 188
     paramsObj: Object,
184
-    info: Object,
189
+    info: Array,
185 190
     balanceAccounts: Object
186 191
   },
187 192
   methods: {
@@ -423,14 +428,7 @@ export default {
423 428
   mounted() {
424 429
     this.org_id = this.$store.getters.xt_user.org_id
425 430
 
426
-    var record_date = this.paramsObj.record_date
427
-    console.log('record_date', record_date)
428
-    var patient_id = this.paramsObj.patient_id
429
-    console.log('patient_id', patient_id)
430
-    var prescription_id = this.paramsObj.prescription_id
431
-    this.getChargePrint(record_date, patient_id, prescription_id)
432
-    var xtuser = this.$store.getters.xt_user
433
-    this.orgname = xtuser.org.org_name
431
+
434 432
 
435 433
   },
436 434
   watch: {
@@ -452,11 +450,12 @@ export default {
452 450
 
453 451
 
454 452
 <style lang="scss" scoped>
453
+
455 454
 .prescription-print {
456 455
   -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
457 456
   -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
458 457
   box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
459
-  margin-bottom: 20px;
458
+  margin-bottom: 10px;
460 459
   padding: 20px 10px;
461 460
 }
462 461
 

+ 1 - 1
src/xt_pages/outpatientCharges/statementTemplate/printFive.vue 查看文件

@@ -110,7 +110,7 @@
110 110
             <div>费用总计:{{info.medfee_sumamt}}</div>
111 111
             <div>统筹支付:{{info.fund_pay_sumamt}}</div>
112 112
             <div>账户支付:{{info.acct_pay}}</div>
113
-            <div>个人现金支付:{{info.cash_payamt}}</div>
113
+            <div>个人现金支付:{{info.new_order.psn_cash_pay}}</div>
114 114
             <div>其他支付:{{info.oth_pay}}</div>
115 115
             <div>减免金额:</div>
116 116
           </td>

+ 42 - 24
src/xt_pages/outpatientCharges/summary.vue 查看文件

@@ -23,6 +23,7 @@
23 23
               @input="searchAction"
24 24
               @keyup.enter.native="searchAction"
25 25
               class="filter-item"
26
+              placeholder="请输入患者姓名"
26 27
           />
27 28
           <el-button
28 29
               size="small"
@@ -33,20 +34,6 @@
33 34
           >
34 35
             搜索
35 36
           </el-button>
36
-          <!--                    <el-select size="small" v-model="admin_user_id" placeholder="请选择"-->
37
-          <!--                               style="width:150px;margin-left:10px;" @change="changeDoctor">-->
38
-          <!--                        <el-option-->
39
-          <!--                                label="全部"-->
40
-          <!--                                value="0">-->
41
-          <!--                        </el-option>-->
42
-          <!--                        <el-option-->
43
-          <!--                                v-for="(item,index) in doctors"-->
44
-          <!--                                :key="index"-->
45
-          <!--                                :label="item.user_name"-->
46
-          <!--                                :value="item.admin_user_id">-->
47
-          <!--                        </el-option>-->
48
-          <!--                    </el-select>-->
49
-
50 37
           <el-select
51 38
               size="small"
52 39
               v-model="sort_type"
@@ -70,7 +57,7 @@
70 57
             <el-option label="晚上" value="3"></el-option>
71 58
           </el-select>
72 59
 
73
-          <el-select v-model="zoneVal" placeholder="分区" style="margin-right:20px;" @change="handleZoneChange">
60
+          <el-select v-model="zoneVal" placeholder="请选择分区" style="margin-right:20px;" @change="handleZoneChange">
74 61
             <el-option
75 62
               v-for="item in zone_options"
76 63
               :key="item.id"
@@ -79,7 +66,7 @@
79 66
             </el-option>
80 67
           </el-select>
81 68
 
82
-          <el-date-picker
69
+          <!-- <el-date-picker
83 70
               size="small"
84 71
               v-model="start_time"
85 72
               prefix-icon="el-icon-date"
@@ -107,10 +94,9 @@
107 94
               format="yyyy-MM-dd"
108 95
               value-format="yyyy-MM-dd"
109 96
               align="right"
110
-          ></el-date-picker>
111
-          <!--<el-radio v-model="radio" label="1">明细</el-radio>-->
112
-          <!--<el-radio v-model="radio" label="2">汇总</el-radio>-->
97
+          ></el-date-picker> -->
113 98
         </div>
99
+        <!-- 按钮 -->
114 100
         <div>
115 101
           <!-- <el-popover
116 102
                       placement="bottom"
@@ -121,7 +107,7 @@
121 107
                       <el-button slot="reference" style="margin:0 10px;" type="primary" size="small">打印</el-button>
122 108
 
123 109
                     </el-popover> -->
124
-          <el-button v-if="$store.getters.xt_user.org_id == 0" size="small" type="primary" @click="batch_print_settlte">批量打印结算单
110
+          <el-button  v-if="$store.getters.xt_user.org_id == 10138 || $store.getters.xt_user.org_id == 10278" size="small" type="primary" @click="batch_print_settlte">批量打印结算单
125 111
           </el-button>
126 112
           <el-button size="small" type="primary" @click="export_detail"
127 113
           >报表下载
@@ -149,6 +135,37 @@
149 135
 
150 136
         </div>
151 137
       </div>
138
+      <div style="margin-bottom: 10px;">
139
+        <el-date-picker
140
+              size="small"
141
+              v-model="start_time"
142
+              prefix-icon="el-icon-date"
143
+              @change="handleStartTimeChange"
144
+              :editable="false"
145
+              :clearable="false"
146
+              style="width: 196px; "
147
+              type="date"
148
+              placeholder="选择开始日期"
149
+              format="yyyy-MM-dd"
150
+              value-format="yyyy-MM-dd"
151
+              align="right"
152
+          ></el-date-picker>
153
+          <span style="text-align: center;">-</span>
154
+          <el-date-picker
155
+              size="small"
156
+              v-model="end_time"
157
+              prefix-icon="el-icon-date"
158
+              @change="handleEndTimeChange"
159
+              :editable="false"
160
+              :clearable="false"
161
+              style="width: 196px; "
162
+              type="date"
163
+              placeholder="选择结束日期"
164
+              format="yyyy-MM-dd"
165
+              value-format="yyyy-MM-dd"
166
+              align="right"
167
+          ></el-date-picker>
168
+      </div>
152 169
       <el-table
153 170
           :data="tableData"
154 171
           border
@@ -347,7 +364,7 @@
347 364
       ></new-statement-print>
348 365
     </el-dialog>
349 366
 
350
-
367
+    <!-- 批量打印 -->
351 368
     <el-dialog
352 369
       class="centerDialog"
353 370
       width="1200px"
@@ -483,8 +500,8 @@ export default {
483 500
       limit: 10,
484 501
       page: 1,
485 502
       keywords: "",
486
-      sch_type:"0",
487
-      zoneVal:0,
503
+      sch_type:"0",//班次
504
+      zoneVal:0,//分区
488 505
       start_time: moment(new Date()).add('year',0).format("YYYY-MM-DD"),
489 506
       end_time: moment(new Date()).add('year',0).format("YYYY-MM-DD"),
490 507
       total: "",
@@ -2782,7 +2799,8 @@ export default {
2782 2799
         }
2783 2800
       }
2784 2801
       return res
2785
-    },batch_print_settlte(){
2802
+    },
2803
+    batch_print_settlte(){
2786 2804
       if (this.selecting_schs.length === 0) {
2787 2805
         this.$message.error('请至少选择一条需要打印的内容')
2788 2806
         return false

+ 4 - 4
src/xt_pages/outpatientDoctorStation/batch_print_template/batchPrintThree.vue 查看文件

@@ -8,13 +8,13 @@
8 8
           class="prescription-print"
9 9
           style="page-break-after: always"
10 10
         >
11
-          <span v-if="org_id == 10138">
11
+          <span v-if="org_id == 10138 || org_id == 10341 || org_id == 10342">
12 12
             <img
13 13
               src="https://kuyi.shengws.com/bailin/bltotle.jpg"
14 14
               style="width: 100%"
15 15
               alt=""
16 16
             /></span>
17
-          <span v-if="org_id == 10278">
17
+          <span v-if="org_id == 10278  || org_id == 10341 || org_id == 10342">
18 18
             <img
19 19
               src="https://kuyi.shengws.com/beierlog.png"
20 20
               style="width: 100%"
@@ -220,13 +220,13 @@
220 220
           </div>
221 221
           <div>*处方当日有效,特殊情况可适当延长,一般不超过3天</div>
222 222
           <div>*药品属于特殊商品,非质量问题不允许退换</div>
223
-          <span v-if="org_id == 10138"
223
+          <span v-if="org_id == 10138  || org_id == 10341 || org_id == 10342"
224 224
           ><img
225 225
             src="https://kuyi.shengws.com/bailin/blend.jpg"
226 226
             style="width: 100%"
227 227
             alt=""
228 228
           /></span>
229
-          <span v-if="org_id == 10278"
229
+          <span v-if="org_id == 10278  || org_id == 10341 || org_id == 10342"
230 230
           ><img
231 231
             src="https://kuyi.shengws.com/bailinbeier.png"
232 232
             style="width: 100%"

+ 6 - 4
src/xt_pages/outpatientTool/labelPrint.vue 查看文件

@@ -6,12 +6,12 @@
6 6
         <div>
7 7
             <div style="display: flex;justify-content: space-between;margin-bottom:10px;">
8 8
                 <div>
9
-                    <el-input size="small" style="width:150px;" v-model="keywords" @input="searchAction"
9
+                    <el-input  style="width:150px;" v-model="keywords" @input="searchAction"
10 10
                               @keyup.enter.native='searchAction'
11 11
                               placeholder="请输入患者姓名"
12 12
                               class="filter-item"/>
13
-                    <el-select size="small" v-model="item_type" placeholder="请选择"
14
-                               style="width:150px;margin-left:10px;" @change="changeItem">
13
+                    <el-select  v-model="item_type" placeholder="请选择"
14
+                               style="width:150px;" @change="changeItem">
15 15
                         <el-option
16 16
                                 label="全部"
17 17
                                 value="0">
@@ -80,9 +80,11 @@
80 80
                             <el-button
81 81
                                     type="primary"
82 82
                                     size="small"
83
-                                    icon="el-icon-edit-outline"
83
+                                    icon="el-icon-printer"
84 84
                                     @click="Print(scope.row, scope.$index)"
85 85
                             >
86
+
87
+                            <!-- icon="el-icon-edit-outline" -->
86 88
                             </el-button>
87 89
                         </el-tooltip>
88 90
                     </template>

+ 3 - 2
src/xt_pages/user/components/PatientDetail.vue 查看文件

@@ -11,7 +11,7 @@
11 11
           <el-col :span="1">&nbsp;</el-col>
12 12
 
13 13
           <template v-for="(item, index) in form.formItem">
14
-            <el-col :span="7" :key="index">
14
+            <el-col :span="7" >
15 15
               <el-form-item
16 16
                 :label="item.item_name"
17 17
                 v-if="item.range_type == 1"
@@ -34,6 +34,7 @@
34 34
                 :key="item.item_id"
35 35
                 :prop="'formItem.' + index + '.value'"
36 36
               >
37
+              <!-- :key="item.item_id" -->
37 38
                 <el-select
38 39
                   v-model="item.value"
39 40
                   placeholder="请选择"
@@ -817,7 +818,7 @@
817 818
         </el-form-item>
818 819
       </el-col>
819 820
     </el-form>
820
-
821
+    <!-- 打印预览 -->
821 822
     <div style="display: none">
822 823
       <div id="print-info-box">
823 824
         <div class="print_main_content">