Browse Source

Merge remote-tracking branch 'origin/20230223_pc_vue_new_branch' into 20230223_pc_vue_new_branch

yq1 1 year ago
parent
commit
80e45a9ce2

+ 34 - 0
src/api/his/his_zuobiao.js View File

@@ -0,0 +1,34 @@
1
+import request from '@/utils/request'
2
+
3
+
4
+export function getZuoBiaoPatientList(params) {
5
+  return request({
6
+    url: "/api/zuobiaodetail/list",
7
+    method: "get",
8
+    params:params
9
+  });
10
+}
11
+
12
+
13
+export function getZuoBiaoPatientInfo(params) {
14
+  return request({
15
+    url: "/api/zuobiaodetail/info",
16
+    method: "get",
17
+    params:params
18
+  });
19
+}
20
+
21
+export function getZuoBiaoPatientMonthInfo(params) {
22
+  return request({
23
+    url: "/api/zuobiaomonthdetail/info",
24
+    method: "get",
25
+    params:params
26
+  });
27
+}
28
+
29
+
30
+
31
+
32
+
33
+
34
+

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

@@ -301,6 +301,7 @@ export default {
301 301
     objectRegistration:"医疗器械登记",
302 302
     Dialysisanalysis: '专业质控',
303 303
     queryData:"结算数据查询",
304
+    chargeDetailManagementTwo:"门诊明细上传"
304 305
   },
305 306
   navbar: {
306 307
     logOut: '退出登录',

+ 6 - 0
src/router/modules/outpatientCharges.js View File

@@ -43,6 +43,12 @@ export default {
43 43
         name: 'OutpatientChargesSummary',
44 44
         meta: { title: 'summary', noCache: true}
45 45
     },
46
+    {
47
+      path: '/outpatientCharges/chargeDetailManagement',
48
+      component: () => import('@/xt_pages/outpatientCharges/chargeDetailManagement'),
49
+      name: 'chargeDetailManagementTwo',
50
+      meta: { title: 'chargeDetailManagementTwo', noCache: true}
51
+    },
46 52
     {
47 53
         path: '/outpatientCharges/incomeStatistics',
48 54
         component: () => import('@/xt_pages/outpatientCharges/incomeStatistics'),

+ 3 - 2
src/xt_pages/Pharmacy/PatientDispensing.vue View File

@@ -142,6 +142,7 @@
142 142
               </el-option>
143 143
             </el-select>
144 144
           </div>
145
+          
145 146
 
146 147
           <div>
147 148
             <el-button type="primary" @click="toExport" v-if="state == 2"
@@ -533,7 +534,7 @@ export default {
533 534
         if (res.data.state == 1) {
534 535
            var list = res.data.data.list;
535 536
            console.log("hhhhawoowowow",list)
536
-          if(this.$store.getters.xt_user.org.id == 10188 || this.$store.getters.xt_user.org.id == 10217 || this.$store.getters.xt_user.org.id == 10387 ){
537
+          if(this.$store.getters.xt_user.org.id == 10188 || this.$store.getters.xt_user.org.id == 10217 || this.$store.getters.xt_user.org.id == 10387 ||  this.$store.getters.xt_user.org.id == 0  ||  this.$store.getters.xt_user.org.id == 10480  ){
537 538
             this.tableData = []
538 539
             if(list!=null && list.length >0){
539 540
               for(let i=0;i<list.length;i++){
@@ -544,7 +545,7 @@ export default {
544 545
             }
545 546
 
546 547
           }
547
-          if(this.$store.getters.xt_user.org.id != 10188 && this.$store.getters.xt_user.org.id != 10217 && this.$store.getters.xt_user.org.id != 10387){
548
+          if(this.$store.getters.xt_user.org.id != 10188 && this.$store.getters.xt_user.org.id != 10217 && this.$store.getters.xt_user.org.id != 10387 && this.$store.getters.xt_user.org.id != 0 && this.$store.getters.xt_user.org.id != 10480 ){
548 549
             this.tableData = []
549 550
             this.tableData = list
550 551
           }

+ 16 - 3
src/xt_pages/data/components/addDrugs.vue View File

@@ -488,6 +488,16 @@
488 488
                             </el-option>
489 489
                         </el-select>
490 490
                     </el-form-item>
491
+                    <el-form-item label="是否项目:" prop="is_pharmacy">
492
+                        <el-select v-model="form.is_project" style="width:160px;" placeholder="请选择">
493
+                            <el-option
494
+                                    v-for="item in projectList"
495
+                                    :key="item.id"
496
+                                    :label="item.name"
497
+                                    :value="item.id">
498
+                            </el-option>
499
+                        </el-select>
500
+                    </el-form-item>
491 501
                     <el-form-item label="" style="visibility: hidden;">
492 502
                         <el-input style="width:160px;" placeholder="" maxlength="30"></el-input>
493 503
                     </el-form-item>
@@ -632,6 +642,7 @@
632 642
           is_pharmacy:1,//是否通过药房发药
633 643
           bbx01:"",
634 644
           bby01:"",
645
+          is_project:"",
635 646
         },
636 647
 
637 648
         rules: {
@@ -645,10 +656,10 @@
645 656
           unval:[{required:true,message:"请填写拆零",trigger:'change'}],
646 657
           min_number:[{required:true,message:"请填写拆零",trigger:'change'}],
647 658
           packing_unit: [{ required: true, message: '请填写包装单位', trigger: 'change' }],
648
-          drug_type: [{ required: true, message: '请填写药品类型', trigger: 'blur' }],
659
+          // drug_type: [{ required: true, message: '请填写药品类型', trigger: 'blur' }],
649 660
           drug_stock_limit: [{ required: true, message: '请填写库存警戒', trigger: 'blur' }],
650 661
           // drug_origin_place: [{ required: true, message: '请填写产地', trigger: 'blur' }],
651
-          drug_dosage_form: [{ required: true, message: '请填写药品剂型', trigger: 'blur' }],
662
+          // drug_dosage_form: [{ required: true, message: '请填写药品剂型', trigger: 'blur' }],
652 663
           medical_insurance_level: [{ required: true, message: '请选择医保等级', trigger: 'change' }],
653 664
 
654 665
           unit_matrixing: [{ required: true, message: '请填写单位换算', trigger: 'blur' }],
@@ -657,7 +668,7 @@
657 668
           packing_price:[{required:true,message:'请填写包装零售价',trigger:'blur'}],
658 669
           drug_classify: [{ required: true, message: '请选择药物分类', trigger: 'change' }],
659 670
           drug_dose: [{ required: true, message: '请填写剂量', trigger: 'blur' }],
660
-          manufacturer: [{ required: true, message: '请选择生产产商', trigger: 'change' }],
671
+          // manufacturer: [{ required: true, message: '请选择生产产商', trigger: 'change' }],
661 672
           dealer: [{ required: true, message: '请选择经销商', trigger: 'change' }],
662 673
           prescription_mark: [{ required: true, message: '请选择处方药标志' }],
663 674
           social_security_directory_code: [{ required: true, message: '请填写社保目录编码' }],
@@ -690,6 +701,7 @@
690 701
           id: "2",
691 702
           name: "否"
692 703
         }],
704
+        projectList:[{id:"1",name:"是"},{id:"2",name:"否"}]
693 705
       }
694 706
     },
695 707
     props: {
@@ -961,6 +973,7 @@
961 973
         form['is_pharmacy'] = this.form.is_pharmacy
962 974
         form['bbx01'] = this.form.bbx01
963 975
         form['bby01'] = this.form.bby01
976
+        form['is_project'] = this.form.is_project
964 977
 
965 978
         return form
966 979
       },

+ 6 - 1
src/xt_pages/data/components/drugs.vue View File

@@ -725,7 +725,12 @@
725 725
               if(this.formValue.drug_classify == 0){
726 726
                  this.formValue.drug_classify = ""
727 727
               }
728
-
728
+           
729
+              if(this.formValue.is_project<=0){
730
+                  this.formValue.is_project = ''
731
+              }else{
732
+                this.formValue.is_project = this.formValue.is_project.toString()
733
+              }
729 734
 
730 735
 
731 736
               this.$refs.addDrugs.show(id, this.formValue)

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

@@ -82,7 +82,7 @@
82 82
           <div class="inline_block">
83 83
             病区:
84 84
             <div class="under_line" style="width: 50px; text-align: center">
85
-              <span v-if="org_id == 10121||org_id == 10138||org_id == 10414 ||org_id == 10447 || org_id == 0 || org_id ==10460">{{
85
+              <span v-if="org_id == 10121||org_id == 10138||org_id == 10414 ||org_id == 10447 || org_id == 0 || org_id ==10460 || org_id ==10567">{{
86 86
                 patientInfo.DialysisSchedule.device_zone.name
87 87
                   ? patientInfo.DialysisSchedule.device_zone.name
88 88
                   : ""
@@ -93,7 +93,7 @@
93 93
           <div class="inline_block" v-if="org_id!=10460">
94 94
             床号:
95 95
             <div class="under_line" style="width: 50px; text-align: center">
96
-              <span v-if="org_id == 10121||org_id == 10414 || org_id == 10447 || org_id == 9675 || org_id == 0 || org_id ==10460 || org_id ==10515">{{
96
+              <span v-if="org_id == 10121||org_id == 10414 || org_id == 10447 || org_id == 9675 || org_id == 0 || org_id ==10460 || org_id ==10515 || org_id == 10567">{{
97 97
                 dialysisOrder &&
98 98
                 dialysisOrder.DeviceNumber &&
99 99
                 dialysisOrder.DeviceNumber.number.length > 0

+ 8 - 3
src/xt_pages/hospitalStation/components/deskPrescription.vue View File

@@ -3081,15 +3081,20 @@ export default {
3081 3081
         if (row.sum_count <= 0) {
3082 3082
           if (selection) {
3083 3083
             selection.forEach(row => {
3084
-              if (row.sum_count <= 0) {
3084
+              if(row.is_project!=1){
3085
+              if ( row.sum_count <= 0) {
3085 3086
                 this.$refs.multipleTable.toggleRowSelection(row)
3086 3087
               }
3088
+            }
3087 3089
             })
3088 3090
           } else {
3089 3091
             this.$refs.multipleTable.clearSelection()
3090 3092
           }
3091
-          this.$message.error(row.drug_name + '库存不足')
3092
-          return
3093
+          if (row.is_project == 0 || row.is_project == 2){
3094
+            this.$message.error(row.drug_name + '库存不足')
3095
+            return 
3096
+          }
3097
+        
3093 3098
        }
3094 3099
       }
3095 3100
 

File diff suppressed because it is too large
+ 1775 - 0
src/xt_pages/outpatientCharges/chargeDetailManagement.vue


+ 373 - 0
src/xt_pages/outpatientCharges/componenttwo/ChargePrescriptionTable.vue View File

@@ -0,0 +1,373 @@
1
+<template>
2
+  <div class="prescriptionTable">
3
+    <el-table v-if="prescription.type == 1" :data="prescription.advices" border style="width: 99%;"
4
+              :row-style="{ color: '#303133' }"
5
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
6
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
7
+      <el-table-column align="center" prop="name" label="名称">
8
+        <template slot-scope="scope"><span :title='scope.row.drug_name'>{{ scope.row.drug_name }}</span></template>
9
+      </el-table-column>
10
+
11
+      <el-table-column align="center" prop="name" width="90" label="单次用量">
12
+        <template slot-scope="scope">
13
+          <!--<el-input v-model="scope.row.single_dose" readonly style="width:65%;"></el-input>-->
14
+          <div>{{scope.row.single_dose}}&nbsp;&nbsp;{{scope.row.single_dose_unit}}</div>
15
+        </template>
16
+      </el-table-column>
17
+      <el-table-column align="center" prop="name" width="100" label="用法">
18
+        <template slot-scope="scope">
19
+          <!--<el-input v-model="scope.row.delivery_way" readonly></el-input>-->
20
+          <div> {{scope.row.delivery_way}}</div>
21
+
22
+        </template>
23
+      </el-table-column>
24
+      <el-table-column align="center" prop="name" width="100" label="频率">
25
+        <template slot-scope="scope">
26
+          <div> {{scope.row.execution_frequency}}</div>
27
+
28
+          <!--<el-input v-model="scope.row.execution_frequency" readonly></el-input>-->
29
+        </template>
30
+      </el-table-column>
31
+
32
+<!--      <el-table-column align="center" prop="day" width="50" label="天数">-->
33
+<!--        <template slot-scope="scope">{{scope.row.day}}天</template>-->
34
+<!--      </el-table-column>-->
35
+
36
+      <el-table-column align="center" prop="name" width="100" label="总量">
37
+        <template slot-scope="scope">
38
+          <!--<el-input v-model="scope.row.prescribing_number" style="width:60%" readonly placeholder=""></el-input>-->
39
+          <div>{{scope.row.prescribing_number}}&nbsp;&nbsp;{{scope.row.prescribing_number_unit}}</div>
40
+        </template>
41
+      </el-table-column>
42
+      <el-table-column align="center" prop="name" width="60" label="单价">
43
+        <template slot-scope="scope">
44
+          <div> {{scope.row.retail_price}}元</div>
45
+
46
+          <!--<el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>-->
47
+        </template>
48
+      </el-table-column>
49
+
50
+      <el-table-column align="center" prop="name" width="60" label="总价">
51
+        <template slot-scope="scope">
52
+          <div> {{(scope.row.retail_price * scope.row.prescribing_number).toFixed(2)}}元</div>
53
+        </template>
54
+      </el-table-column>
55
+
56
+
57
+      <el-table-column align="center" prop="name" width="60" label="执行状态">
58
+        <template slot-scope="scope">
59
+          <div> {{scope.row.execution_state == 1?'已执行':'未执行'}}</div>
60
+        </template>
61
+      </el-table-column>
62
+
63
+
64
+
65
+      <el-table-column align="center" prop="name" width="60" label="医保编码">
66
+        <template slot-scope="scope">
67
+          <div> {{scope.row.code}}</div>
68
+        </template>
69
+      </el-table-column>
70
+
71
+
72
+      <el-table-column align="center" prop="name" width="60" label="规格/型号">
73
+        <template slot-scope="scope">
74
+          <div> {{scope.row.spec}}</div>
75
+        </template>
76
+      </el-table-column>
77
+
78
+      <el-table-column align="center" prop="name" width="60" label="金额">
79
+        <template slot-scope="scope">
80
+          <div> {{scope.row.det_item_fee_sumamt}}</div>
81
+        </template>
82
+      </el-table-column>
83
+
84
+
85
+      <el-table-column align="center" prop="name" width="60" label="生产厂家">
86
+        <template slot-scope="scope">
87
+          <div> {{getName(scope.row.name_id)}}</div>
88
+        </template>
89
+      </el-table-column>
90
+
91
+
92
+
93
+      <el-table-column align="center" prop="name" width="60" label="全自费金额">
94
+        <template slot-scope="scope">
95
+          <div> {{scope.row.fulamt_ownpay_amt}}元</div>
96
+        </template>
97
+      </el-table-column>
98
+
99
+
100
+
101
+      <el-table-column align="center" prop="name" width="60" label="超限价金额">
102
+        <template slot-scope="scope">
103
+          <div> {{scope.row.overlmt_amt}}元</div>
104
+        </template>
105
+      </el-table-column>
106
+
107
+
108
+      <el-table-column align="center" prop="name" width="60" label="先行自付金额">
109
+        <template slot-scope="scope">
110
+          <div> {{scope.row.preselfpay_amt}}元</div>
111
+        </template>
112
+      </el-table-column>
113
+
114
+
115
+      <el-table-column align="center" prop="name" width="60" label="符合正常范围金额">
116
+        <template slot-scope="scope">
117
+          <div> {{scope.row.inscp_scp_amt}}元</div>
118
+        </template>
119
+      </el-table-column>
120
+
121
+
122
+
123
+
124
+      <el-table-column align="center" prop="name" width="50" label="备注">
125
+        <template slot-scope="scope">
126
+          <!--<el-input v-model="scope.row.remark" :title="scope.row.remark" placeholder="" readonly></el-input>-->
127
+          <div> {{scope.row.remark}}</div>
128
+        </template>
129
+      </el-table-column>
130
+    </el-table>
131
+    <el-table v-if="prescription.type == 2" :data="prescription.project" border style="width: 99%;"
132
+              :row-style="{ color: '#303133' }"
133
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
134
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
135
+      <el-table-column align="center" prop="project_name" label="名称">
136
+        <template slot-scope="scope">{{ scope.row.project_name }}</template>
137
+      </el-table-column>
138
+      <el-table-column align="center" prop="statistical_classification" width="100" label="组">
139
+        <template slot-scope="scope">{{scope.row.statistical_classification}}</template>
140
+      </el-table-column>
141
+      <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
142
+        <template slot-scope="scope">{{scope.row.single_dose}}{{scope.row.unit}}</template>
143
+
144
+      </el-table-column>
145
+      <el-table-column align="center" prop="delivery_way" width="80" label="用法">
146
+        <template slot-scope="scope">
147
+          <!--<el-input v-model="scope.row.delivery_way" placeholder="" readonly></el-input>-->
148
+          {{scope.row.delivery_way}}
149
+
150
+        </template>
151
+      </el-table-column>
152
+      <el-table-column align="center" prop="execution_frequency" width="80" label="频率">
153
+        <template slot-scope="scope">
154
+          <!--<el-input v-model="scope.row.execution_frequency" placeholder="" readonly></el-input>-->
155
+          {{scope.row.execution_frequency}}
156
+
157
+        </template>
158
+      </el-table-column>
159
+<!--      <el-table-column align="center" prop="number_days" width="50" label="天数">-->
160
+<!--        <template slot-scope="scope">-->
161
+<!--          &lt;!&ndash;<el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>&ndash;&gt;-->
162
+<!--          {{scope.row.number_days}}天-->
163
+
164
+<!--        </template>-->
165
+
166
+<!--      </el-table-column>-->
167
+      <el-table-column align="center" prop="total" width="50" label="总量">
168
+        <template slot-scope="scope">
169
+          <div style="display:flex;">
170
+            <!--<el-input v-model="scope.row.total" placeholder="" readonly></el-input>-->
171
+            {{scope.row.total}}
172
+
173
+            <div>{{scope.row.unit}}</div>
174
+
175
+          </div>
176
+        </template>
177
+      </el-table-column>
178
+      <el-table-column align="center" prop="name" width="50" label="单价">
179
+        <template slot-scope="scope">
180
+          <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
181
+          {{scope.row.price}}元
182
+
183
+        </template>
184
+      </el-table-column>
185
+
186
+      <el-table-column align="center" prop="name" width="60" label="总价">
187
+        <template slot-scope="scope">
188
+          <div> {{(scope.row.total * scope.row.price).toFixed(2)}}元</div>
189
+        </template>
190
+      </el-table-column>
191
+
192
+      <el-table-column align="center" prop="name" width="60" label="执行状态">
193
+        <template slot-scope="scope">
194
+          <div> {{scope.row.execution_state == 1?'已执行':'未执行'}}</div>
195
+        </template>
196
+      </el-table-column>
197
+
198
+
199
+
200
+
201
+      <el-table-column align="center" prop="name" width="60" label="医保编码">
202
+        <template slot-scope="scope">
203
+          <div> {{scope.row.medical_code}}</div>
204
+        </template>
205
+      </el-table-column>
206
+
207
+
208
+      <el-table-column align="center" prop="name" width="60" label="规格/型号">
209
+        <template slot-scope="scope">
210
+          <div> {{scope.row.spec}}</div>
211
+        </template>
212
+      </el-table-column>
213
+
214
+      <el-table-column align="center" prop="name" width="60" label="金额">
215
+        <template slot-scope="scope">
216
+          <div> {{scope.row.det_item_fee_sumamt}}元</div>
217
+        </template>
218
+      </el-table-column>
219
+
220
+
221
+      <el-table-column align="center" prop="name" width="60" label="生产厂家">
222
+        <template slot-scope="scope">
223
+          <div> {{getName(scope.row.name_id)}}</div>
224
+        </template>
225
+      </el-table-column>
226
+
227
+
228
+
229
+      <el-table-column align="center" prop="name" width="60" label="全自费金额">
230
+        <template slot-scope="scope">
231
+          <div> {{scope.row.fulamt_ownpay_amt}}元</div>
232
+        </template>
233
+      </el-table-column>
234
+
235
+
236
+
237
+      <el-table-column align="center" prop="name" width="60" label="超限价金额">
238
+        <template slot-scope="scope">
239
+          <div> {{scope.row.overlmt_amt}}元</div>
240
+        </template>
241
+      </el-table-column>
242
+
243
+
244
+      <el-table-column align="center" prop="name" width="60" label="先行自付金额">
245
+        <template slot-scope="scope">
246
+          <div> {{scope.row.preselfpay_amt}}元</div>
247
+        </template>
248
+      </el-table-column>
249
+
250
+
251
+      <el-table-column align="center" prop="name" width="60" label="符合正常范围金额">
252
+        <template slot-scope="scope">
253
+          <div> {{scope.row.inscp_scp_amt}}元</div>
254
+        </template>
255
+      </el-table-column>
256
+
257
+
258
+
259
+
260
+      <el-table-column align="center" prop="name" width="50" label="备注">
261
+        <template slot-scope="scope">
262
+          <!--<el-input v-model="scope.row.remark" readonly></el-input>-->
263
+          {{scope.row.remark}}
264
+
265
+        </template>
266
+      </el-table-column>
267
+    </el-table>
268
+
269
+    <div class="additionalBox">
270
+      <div class="additionalOne" v-for="(item,index) in prescription.addition" :key="index">
271
+        <span :title="item.item_name">{{item.item_name}}</span>
272
+        <el-input v-model="item.price" placeholder="" style="width:50px;" readonly></el-input>
273
+        共
274
+        <el-input v-model="item.count" placeholder="" style="width:50px;" readonly></el-input>
275
+        次
276
+        <!--<i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>-->
277
+      </div>
278
+    </div>
279
+  </div>
280
+</template>
281
+
282
+<script>
283
+  import { getInitData } from '@/api/his/his'
284
+  import { getDictionaryDataConfig} from "@/utils/data";
285
+
286
+  export default {
287
+    props: {
288
+      prescription: Object,
289
+      manufacturers:Array,
290
+
291
+    },
292
+    data() {
293
+      return {
294
+        drugways: [],
295
+        efs: []
296
+      }
297
+    }, mounted() {
298
+      getInitData().then(response => {
299
+        if (response.data.state == 0) {
300
+          this.$message.error(response.data.msg);
301
+          return false
302
+        } else {
303
+          this.drugways = response.data.data.drugways;
304
+          this.efs = response.data.data.efs
305
+        }
306
+      })
307
+    }, methods:  {
308
+
309
+      getName(id){
310
+        console.log("!!!!!!!!!")
311
+
312
+        let  name = ""
313
+        for(let i = 0; i  < this.manufacturers.length; i++){
314
+          console.log(this.manufacturers[i].manufacturer_name)
315
+          if(id == this.manufacturers[i].id){
316
+            console.log("!!!!!!!!!")
317
+            name =  this.manufacturers[i].manufacturer_name
318
+          }
319
+        }
320
+        return name
321
+
322
+      },
323
+      getGroup(id){
324
+        var name = "";
325
+        var statistics_category =  getDictionaryDataConfig('system','statistics_category');
326
+        console.log("2235",statistics_category);
327
+        for(let i=0;i<statistics_category.length;i++){
328
+          if(id == statistics_category[i].id){
329
+            name = statistics_category[i].name
330
+          }
331
+        }
332
+        return name
333
+      },
334
+
335
+
336
+    }
337
+  }
338
+</script>
339
+
340
+<style lang="scss">
341
+  .prescriptionTable{
342
+  .additionalBox{
343
+    margin-top: 20px;
344
+    display: flex;
345
+    flex-wrap: wrap;
346
+  .additionalOne{
347
+    margin-right:20px;
348
+    margin-bottom:10px;
349
+    display: flex;
350
+    align-items: center;
351
+  >span{
352
+    white-space: nowrap;
353
+    overflow: hidden;
354
+    text-overflow: ellipsis;
355
+    width:80px;
356
+    display: inline-block;
357
+    font-size: 14px;
358
+  }
359
+  }
360
+  .deleteIcon{
361
+    color:red;
362
+    margin-left:5px;
363
+  }
364
+  }
365
+  .el-table th .cell, .el-table td .cell{
366
+    padding: 0 2px;
367
+    white-space: pre-line;
368
+  }
369
+  .el-icon-delete{
370
+    color:red;
371
+  }
372
+  }
373
+</style>

+ 196 - 0
src/xt_pages/outpatientCharges/componenttwo/chargeMonthPrescriptionTable.vue View File

@@ -0,0 +1,196 @@
1
+<template>
2
+  <div class="prescriptionTable">
3
+    <el-table v-if="prescription&&prescription.type == 1" :data="prescription.advices" border style="width: 99%;"
4
+              :row-style="{ color: '#303133' }"
5
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
6
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
7
+      <el-table-column align="center" prop="name" label="名称">
8
+        <template slot-scope="scope"><span :title='scope.row.drug_name'>{{ scope.row.drug_name }}</span></template>
9
+      </el-table-column>
10
+
11
+      <el-table-column align="center" prop="name" width="90" label="单次用量">
12
+        <template slot-scope="scope">
13
+          <!--<el-input v-model="scope.row.single_dose" readonly style="width:65%;"></el-input>-->
14
+          <div>{{scope.row.single_dose}}&nbsp;&nbsp;{{scope.row.single_dose_unit}}</div>
15
+        </template>
16
+      </el-table-column>
17
+      <el-table-column align="center" prop="name" width="100" label="用法">
18
+        <template slot-scope="scope">
19
+          <!--<el-input v-model="scope.row.delivery_way" readonly></el-input>-->
20
+          <div> {{scope.row.delivery_way}}</div>
21
+
22
+        </template>
23
+      </el-table-column>
24
+      <el-table-column align="center" prop="name" width="100" label="频率">
25
+        <template slot-scope="scope">
26
+          <div> {{scope.row.execution_frequency}}</div>
27
+
28
+          <!--<el-input v-model="scope.row.execution_frequency" readonly></el-input>-->
29
+        </template>
30
+      </el-table-column>
31
+
32
+      <el-table-column align="center" prop="day" width="50" label="天数">
33
+        <template slot-scope="scope">{{scope.row.day}}天</template>
34
+      </el-table-column>
35
+
36
+      <el-table-column align="center" prop="name" width="100" label="总量">
37
+        <template slot-scope="scope">
38
+          <!--<el-input v-model="scope.row.prescribing_number" style="width:60%" readonly placeholder=""></el-input>-->
39
+          <div>{{scope.row.prescribing_number}}&nbsp;&nbsp;{{scope.row.prescribing_number_unit}}</div>
40
+        </template>
41
+      </el-table-column>
42
+      <el-table-column align="center" prop="name" width="60" label="单价">
43
+        <template slot-scope="scope">
44
+          <div> {{scope.row.retail_price}}元</div>
45
+
46
+          <!--<el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>-->
47
+        </template>
48
+      </el-table-column>
49
+      <el-table-column align="center" prop="name" width="50" label="备注">
50
+        <template slot-scope="scope">
51
+          <!--<el-input v-model="scope.row.remark" :title="scope.row.remark" placeholder="" readonly></el-input>-->
52
+          <div> {{scope.row.remark}}</div>
53
+        </template>
54
+      </el-table-column>
55
+    </el-table>
56
+    <el-table v-if="prescription&&prescription.type == 2" :data="prescription.project" border style="width: 99%;"
57
+              :row-style="{ color: '#303133' }"
58
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
59
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
60
+      <el-table-column align="center" prop="project_name" label="名称">
61
+        <template slot-scope="scope">{{ scope.row.project_name }}</template>
62
+      </el-table-column>
63
+      <el-table-column align="center" prop="statistical_classification" width="100" label="组">
64
+        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
65
+      </el-table-column>
66
+      <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
67
+        <template slot-scope="scope">{{scope.row.single_dose}}{{scope.row.unit}}</template>
68
+
69
+      </el-table-column>
70
+      <el-table-column align="center" prop="delivery_way" width="80" label="用法">
71
+        <template slot-scope="scope">
72
+          <!--<el-input v-model="scope.row.delivery_way" placeholder="" readonly></el-input>-->
73
+          {{scope.row.delivery_way}}
74
+
75
+        </template>
76
+      </el-table-column>
77
+      <el-table-column align="center" prop="execution_frequency" width="80" label="频率">
78
+        <template slot-scope="scope">
79
+          <!--<el-input v-model="scope.row.execution_frequency" placeholder="" readonly></el-input>-->
80
+          {{scope.row.execution_frequency}}
81
+
82
+        </template>
83
+      </el-table-column>
84
+      <el-table-column align="center" prop="number_days" width="50" label="天数">
85
+        <template slot-scope="scope">
86
+          <!--<el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>-->
87
+          {{scope.row.number_days}}天
88
+
89
+        </template>
90
+
91
+      </el-table-column>
92
+      <el-table-column align="center" prop="total" width="50" label="总量">
93
+        <template slot-scope="scope">
94
+          <div style="display:flex;">
95
+            <!--<el-input v-model="scope.row.total" placeholder="" readonly></el-input>-->
96
+            {{scope.row.total}} {{scope.row.unit}}
97
+
98
+          </div>
99
+        </template>
100
+      </el-table-column>
101
+      <el-table-column align="center" prop="name" width="50" label="单价">
102
+        <template slot-scope="scope">
103
+          <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
104
+          {{scope.row.price}}元
105
+
106
+        </template>
107
+      </el-table-column>
108
+      <el-table-column align="center" prop="name" width="50" label="备注">
109
+        <template slot-scope="scope">
110
+          <!--<el-input v-model="scope.row.remark" readonly></el-input>-->
111
+          {{scope.row.remark}}
112
+
113
+        </template>
114
+      </el-table-column>
115
+    </el-table>
116
+
117
+  </div>
118
+</template>
119
+
120
+<script>
121
+  import { getInitData } from '@/api/his/his'
122
+  import { getDictionaryDataConfig} from "@/utils/data";
123
+
124
+  export default {
125
+    props: {
126
+      prescription: Object
127
+    },
128
+    data() {
129
+      return {
130
+        drugways: [],
131
+        efs: []
132
+      }
133
+    }, mounted() {
134
+      getInitData().then(response => {
135
+        if (response.data.state == 0) {
136
+          this.$message.error(response.data.msg);
137
+          return false
138
+        } else {
139
+          this.drugways = response.data.data.drugways;
140
+          this.efs = response.data.data.efs
141
+        }
142
+      })
143
+    }, methods:  {
144
+
145
+
146
+      getGroup(id){
147
+        var name = "";
148
+        var statistics_category =  getDictionaryDataConfig('system','statistics_category');
149
+        console.log("2235",statistics_category);
150
+        for(let i=0;i<statistics_category.length;i++){
151
+          if(id == statistics_category[i].id){
152
+            name = statistics_category[i].name
153
+          }
154
+        }
155
+        return name
156
+      },
157
+
158
+
159
+    }
160
+  }
161
+</script>
162
+
163
+<style lang="scss">
164
+  .prescriptionTable{
165
+  .additionalBox{
166
+    margin-top: 20px;
167
+    display: flex;
168
+    flex-wrap: wrap;
169
+  .additionalOne{
170
+    margin-right:20px;
171
+    margin-bottom:10px;
172
+    display: flex;
173
+    align-items: center;
174
+  >span{
175
+    white-space: nowrap;
176
+    overflow: hidden;
177
+    text-overflow: ellipsis;
178
+    width:80px;
179
+    display: inline-block;
180
+    font-size: 14px;
181
+  }
182
+  }
183
+  .deleteIcon{
184
+    color:red;
185
+    margin-left:5px;
186
+  }
187
+  }
188
+  .el-table th .cell, .el-table td .cell{
189
+    padding: 0 2px;
190
+    white-space: pre-line;
191
+  }
192
+  .el-icon-delete{
193
+    color:red;
194
+  }
195
+  }
196
+</style>

+ 5 - 5
src/xt_pages/outpatientCharges/listTemplate/printOne.vue View File

@@ -125,14 +125,14 @@
125 125
         return uParseTime(time, '{y}-{m}-{d}')
126 126
       },
127 127
       getPage(){
128
-        if(this.list.length <= 15){
128
+        if(this.list.length <= 16){
129 129
             this.page = 1
130 130
             this.pageArr.push(this.list.length)
131
-        }else if(this.list.length > 15){
132
-            this.page = parseInt(this.list.length / 15)
133
-            let num = this.list.length % 15
131
+        }else if(this.list.length > 16){
132
+            this.page = parseInt(this.list.length / 16)
133
+            let num = this.list.length % 16
134 134
             for (var i=0;i<this.page;i++){
135
-                this.pageArr.push(15)
135
+                this.pageArr.push(16)
136 136
             }
137 137
             if(num != 0){
138 138
                 this.pageArr.push(num)

+ 42 - 33
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue View File

@@ -79,19 +79,9 @@
79 79
       <div class="mainRight">
80 80
 
81 81
         <div class="mainCell fixedCell" style="margin-bottom:10px;">
82
-          <div v-if="org_id == 10454">
83
-            <el-button  size="small"
84
-                        @click="openZb(1)"
85
-                        v-if=" this.order.id == 0"
86
-                        type="primary">记账
87
-            </el-button>
88
-            <el-button   size="small"
89
-                         @click="openZb(2)"
90
-                         type="primary">撤销记账
91
-            </el-button>
92
-          </div>
93 82
 
94
-          <div v-if="org_id == 10206">
83
+
84
+          <div v-if="org_id == 10206  || org_id == 0">
95 85
             <el-button  size="small"
96 86
                         @click="openZb(1)"
97 87
                         v-if=" this.order.id == 0"
@@ -103,7 +93,7 @@
103 93
             </el-button>
104 94
           </div>
105 95
 
106
-          <div  v-if="org_id != 10206 && org_id != 10340 && org_id != 10454">
96
+          <div  v-if="org_id != 10206 && org_id != 10340 && org_id != 0">
107 97
             <!--            <el-button size="small"-->
108 98
             <!--                       @click="openZb(1)"-->
109 99
             <!--                       type="primary">登记-->
@@ -244,7 +234,7 @@
244 234
                                            v-if="((hisPatientInfo.id > 0 && items.curPrescriptions.order.id == 0) || items.curPrescriptions.order.order_status == 1 ||  items.curPrescriptions.order.order_status == 3) && org_id != 10340"
245 235
                                            size="small"
246 236
                                            @click="open(4,items.med_type,items.curPrescriptions.order,items.prescriptions)"
247
-                                           type="primary">收费  
237
+                                           type="primary">收费
248 238
                                 </el-button>
249 239
                               </div>
250 240
                             </div>
@@ -252,7 +242,7 @@
252 242
                             <prescription-table ref="prescription_tables"
253 243
                                               :prescription="items.curPrescriptions"
254 244
                                               :manufacturers="manufacturers"></prescription-table>
255
-                          
245
+
256 246
                         </el-tabs>
257 247
 
258 248
                       <div class="costBox">
@@ -325,7 +315,7 @@
325 315
                   <div>
326 316
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
327 317
 
328
-                      <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
318
+                      <el-form-item label="大病类别:" prop="sick_type" >
329 319
                         <el-select style="margin-right:5px;width:100px;"
330 320
                                    v-model="form.sick_type" placeholder="">
331 321
                           <el-option
@@ -337,7 +327,7 @@
337 327
                         </el-select>
338 328
                       </el-form-item>
339 329
 
340
-                      <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
330
+                      <el-form-item label="诊断:" prop="diagnosis" >
341 331
                         <el-select style="margin-right:5px;width:100px;"
342 332
                                    v-model="form.diagnosis" multiple placeholder="">
343 333
                           <el-option
@@ -551,7 +541,7 @@
551 541
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
552 542
 
553 543
 
554
-                      <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
544
+                      <el-form-item label="大病类别:" prop="sick_type" >
555 545
                         <el-select style="margin-right:5px;width:100px;"
556 546
                                    v-model="form.sick_type" placeholder="">
557 547
                           <el-option
@@ -563,7 +553,7 @@
563 553
                         </el-select>
564 554
                       </el-form-item>
565 555
 
566
-                      <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
556
+                      <el-form-item label="诊断:" prop="diagnosis" >
567 557
                         <el-select style="margin-right:5px;width:100px;"
568 558
                                    v-model="form.diagnosis" multiple placeholder="">
569 559
                           <el-option
@@ -781,7 +771,7 @@
781 771
                   <div>
782 772
                     <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
783 773
 
784
-                      <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
774
+                      <el-form-item label="大病类别:" prop="sick_type" >
785 775
                         <el-select style="margin-right:5px;width:100px;"
786 776
                                    v-model="form.sick_type" placeholder="">
787 777
                           <el-option
@@ -793,7 +783,7 @@
793 783
                         </el-select>
794 784
                       </el-form-item>
795 785
 
796
-                      <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
786
+                      <el-form-item label="诊断:" prop="diagnosis" >
797 787
                         <el-select style="margin-right:5px;width:100px;"
798 788
                                    v-model="form.diagnosis" multiple placeholder="">
799 789
                           <el-option
@@ -4468,18 +4458,36 @@ export default {
4468 4458
           let two_count = 0
4469 4459
 
4470 4460
           for (let i = 0; i < response.data.data.list.length; i++) {
4471
-            if (response.data.data.list[i].his_patient.length > 0) {
4472
-              let obj = {
4473
-                id: response.data.data.list[i].id,
4474
-                name: response.data.data.list[i].name,
4475
-                number: response.data.data.list[i].his_patient[0].number,
4476
-                order_status: 0,
4477
-                his_patient_id: response.data.data.list[i].his_patient[0].id,
4478
-                order_number: '',
4479
-                order_id: 0,
4480
-                prescription: response.data.data.list[i].prescription
4461
+            if (this.org_id == 10206 || this.org_id == 0){
4462
+                let obj = {
4463
+                  id: response.data.data.list[i].id,
4464
+                  name: response.data.data.list[i].name,
4465
+                  order_status: 0,
4466
+                  order_number: '',
4467
+                  order_id: 0,
4468
+                  prescription: response.data.data.list[i].prescription
4469
+                }
4470
+                if(response.data.data.list[i].his_patient&& response.data.data.list[i].his_patient.length > 0){
4471
+                  obj["his_patient_id"] = response.data.data.list[i].his_patient[0].id
4472
+                  obj["number"] = response.data.data.list[i].his_patient[0].number
4473
+                }
4474
+
4475
+                this.all_table_data.push(obj)
4476
+            }else{
4477
+              if (response.data.data.list[i].his_patient.length > 0) {
4478
+                let obj = {
4479
+                  id: response.data.data.list[i].id,
4480
+                  name: response.data.data.list[i].name,
4481
+                  number: response.data.data.list[i].his_patient[0].number,
4482
+                  order_status: 0,
4483
+                  his_patient_id: response.data.data.list[i].his_patient[0].id,
4484
+                  order_number: '',
4485
+                  order_id: 0,
4486
+                  prescription: response.data.data.list[i].prescription
4487
+                }
4488
+                this.all_table_data.push(obj)
4481 4489
               }
4482
-              this.all_table_data.push(obj)
4490
+
4483 4491
             }
4484 4492
 
4485 4493
           }
@@ -4755,7 +4763,8 @@ export default {
4755 4763
       if (this.big_month_prescriptions.length > 0) {
4756 4764
         this.editableTabsValue = this.big_month_prescriptions[0].curMonthPrescriptions.name
4757 4765
       }
4758
-    }, getPName(med_type, index) {
4766
+    },
4767
+    getPName(med_type, index) {
4759 4768
       var med_type = parseInt(med_type)
4760 4769
 
4761 4770
       if(this.org_id == 10206){

+ 13 - 5
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue View File

@@ -3233,6 +3233,7 @@ export default {
3233 3233
       this.$refs.additionalCharges.show()
3234 3234
     },
3235 3235
     selectDrugs(selection, row) {
3236
+    
3236 3237
       // if(this.org_id == 10138 || this.org_id == 9671 || this.org_id == 9675 || this.org_id == 4 || this.org_id == 3877 || this.org_id == 10028 || this.org_id == 10243 || this.org_id == 10188 || this.org_id == 10245 || this.org_id == 9919 || this.org_id == 10106 || this.org_id == 9504 || this.org_id ==10215 || this.org_id == 10188 || this.org_id == 10265 || this.org_id == 10164 || this.org_id == 9956 || this.org_id == 10188 || this.org_id == 10191 || this.org_id == 10278 || this.org_id == 10217 || this.org_id ==10210 || this.org_id ==10318 || this.org_id ==10340){
3237 3238
       //     if (row.count <= 0) {
3238 3239
       //       if (selection) {
@@ -3263,19 +3264,25 @@ export default {
3263 3264
       //     }
3264 3265
       // }
3265 3266
 
3266
-      if(row.is_user!=1 &&  this.org_id != 10206 && this.org_id != 0){
3267
+      if(row.is_user!=1 &&  this.org_id != 10206){
3268
+        console.log("row.sum_count",row)
3267 3269
         if (row.sum_count <= 0) {
3268 3270
         if (selection) {
3269 3271
           selection.forEach(row => {
3270
-            if (row.sum_count <= 0) {
3271
-              this.$refs.multipleTable.toggleRowSelection(row)
3272
+            if(row.is_project!=1){
3273
+              if ( row.sum_count <= 0) {
3274
+                this.$refs.multipleTable.toggleRowSelection(row)
3275
+              }
3272 3276
             }
3277
+            
3273 3278
           })
3274 3279
         } else {
3275 3280
           this.$refs.multipleTable.clearSelection()
3276 3281
         }
3277
-        this.$message.error(row.drug_name + '库存不足')
3278
-        return
3282
+        if (row.is_project == 0 || row.is_project == 2){
3283
+          this.$message.error(row.drug_name + '库存不足')
3284
+          return 
3285
+        }
3279 3286
        }
3280 3287
       }
3281 3288
 
@@ -3555,6 +3562,7 @@ export default {
3555 3562
       this.teamList = row
3556 3563
     },
3557 3564
     selectChange(selection, row) {
3565
+    
3558 3566
       // if(this.org_id == 10138 || this.org_id == 9671 || this.org_id == 9675 || this.org_id == 4 || this.org_id ==3877 || this.org_id == 10028 || this.org_id == 10243 || this.org_id == 10188 || this.org_id ==10245 || this.org_id == 9919  || this.org_id == 10106 || this.org_id == 9504 || this.org_id ==10215 ||  this.org_id == 10188 || this.org_id == 10265 || this.org_id == 10164 || this.org_id == 9956 || this.org_id == 10188 || this.org_id == 10191 || this.org_id == 10278 || this.org_id == 10217 || this.org_id ==10210 || this.org_id ==10318 || this.org_id ==10340){
3559 3567
       //    if (row.stock_count <= 0) {
3560 3568
       //     if (row.type == 3) {

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

@@ -45,7 +45,7 @@
45 45
         :editable="false"
46 46
         style="width: 150px;"
47 47
         type="date"
48
-        :picker-options="pickerOptions"
48
+       
49 49
         placeholder="选择日期时间"
50 50
         align="right"
51 51
         format="yyyy-MM-dd"
@@ -57,7 +57,7 @@
57 57
         prefix-icon="el-icon-date"
58 58
         @change="changeEndTime"
59 59
         :editable="false"
60
-        :picker-options="pickerOptions"
60
+        
61 61
         style="width: 150px;"
62 62
         type="date"
63 63
         placeholder="选择日期时间"
@@ -149,7 +149,7 @@
149 149
 
150 150
         pickerOptions: {
151 151
           disabledDate(time) {
152
-            let threeMonths = new Date(new Date().setFullYear(new Date().getFullYear() - 1)).getTime() - 24 * 3600 * 1000
152
+            let threeMonths = new Date(new Date().setFullYear(new Date().getFullYear() - 2)).getTime() - 24 * 3600 * 1000
153 153
             return time.getTime() > Date.now() || time.getTime() < threeMonths
154 154
 
155 155
           }

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

@@ -65,7 +65,7 @@
65 65
         :editable="false"
66 66
         style="width: 150px;"
67 67
         type="date"
68
-        :picker-options="pickerOptions"
68
+       
69 69
         placeholder="选择日期时间"
70 70
         align="right"
71 71
         format="yyyy-MM-dd"
@@ -77,7 +77,7 @@
77 77
         prefix-icon="el-icon-date"
78 78
         @change="changeEndTime"
79 79
         :editable="false"
80
-        :picker-options="pickerOptions"
80
+      
81 81
         style="width: 150px;"
82 82
         type="date"
83 83
         placeholder="选择日期时间"
@@ -147,7 +147,7 @@
147 147
 
148 148
         pickerOptions: {
149 149
           disabledDate(time) {
150
-            let threeMonths = new Date(new Date().setFullYear(new Date().getFullYear() - 1)).getTime() - 24 * 3600 * 1000
150
+            let threeMonths = new Date(new Date().setFullYear(new Date().getFullYear() - 2)).getTime() - 24 * 3600 * 1000
151 151
             return time.getTime() > Date.now() || time.getTime() < threeMonths
152 152
 
153 153
           }

+ 72 - 0
src/xt_pages/stock/detail/stockOutDetail.vue View File

@@ -13,7 +13,18 @@
13 13
       size="small"
14 14
       @click="exportListDetail"
15 15
       type="primary"
16
+      v-if="orgId !=10480 && orgId!=0"
16 17
       >明细导出
18
+     
19
+    </el-button>
20
+    <el-button
21
+      style="float: right;margin-right:10px"
22
+      size="small"
23
+      @click="exportListDetailOne"
24
+      type="primary"
25
+      v-if="orgId ==10480 || orgId == 0"
26
+      >明细导出
27
+     
17 28
     </el-button>
18 29
      <el-button
19 30
       style="float: right;margin-right:10px"
@@ -240,6 +251,7 @@ export default {
240 251
     this.fetchAllAdminUsers();
241 252
     this.goodUnit = this.$store.getters.good_unit
242 253
     var org_id = this.$store.getters.xt_user.org.id
254
+   
243 255
     this.orgId = org_id
244 256
 
245 257
 
@@ -707,6 +719,13 @@ export default {
707 719
         return uParseTime(val, "{y}-{m}-{d}");
708 720
       }
709 721
     },
722
+    getTimeOne: function(val) {
723
+      if (val == 0) {
724
+        return "";
725
+      } else {
726
+        return uParseTime(val, "{y}-{m}-{d} {h}:{i}");
727
+      }
728
+    },
710 729
     PrintAction: function() {
711 730
       window.sessionStorage.setItem('start',this.start_time)
712 731
       window.sessionStorage.setItem('end',this.end_time)
@@ -936,6 +955,8 @@ export default {
936 955
             total += this.tableDataList[i].count * this.tableDataList[i].price
937 956
           }
938 957
           this.tableDataList[i].in_price = this.tableDataList[i].WarehousingInfoNight.price
958
+
959
+          this.tableDataList[i].expiry_date = this.getTime(this.tableDataList[i].expiry_date)
939 960
         }
940 961
         obj.total_price = total.toFixed(2)
941 962
         console.log("WOHHAHHAHAH",this.tableDataList)
@@ -956,6 +977,57 @@ export default {
956 977
           this.downloadLoading = false
957 978
         })
958 979
      },
980
+
981
+     exportListDetailOne(){
982
+
983
+       console.log("hhahah",this.tableDataList)
984
+       var obj = {index:"合计",out_total_price:0,in_total_price:0}
985
+       var out_total = 0
986
+       var in_total =0
987
+       if(this.tableDataList!=null&&this.tableDataList.length>0){
988
+           for(let i=0;i<this.tableDataList.length;i++){
989
+              this.tableDataList[i].index = i+1
990
+              this.tableDataList[i].good_type_name = this.typeName(this.tableDataList[i].good_type_id)
991
+              this.tableDataList[i].good_name = this.typeNameOne(this.tableDataList[i].good_id)
992
+              this.tableDataList[i].specification_name = this.specificationName(this.tableDataList[i].good_id)
993
+              this.tableDataList[i].batch_number =this.tableDataList[i].WarehousingInfoNight.number
994
+              this.tableDataList[i].manufacturer_name = this.getManufacturerNameOne(this.tableDataList[i].GoodInfo.manufacturer)
995
+              this.tableDataList[i].in_price = this.tableDataList[i].WarehousingInfoNight.price
996
+              this.tableDataList[i].out_count = this.tableDataList[i].count
997
+              this.tableDataList[i].max_unit = this.tableDataList[i].GoodInfo.max_unit
998
+              this.tableDataList[i].out_total_price = (this.tableDataList[i].count * this.tableDataList[i].price).toFixed(2)
999
+              this.tableDataList[i].in_total_price = (this.tableDataList[i].count * this.tableDataList[i].WarehousingInfoNight.price).toFixed(2)
1000
+              this.tableDataList[i].patient_name =  this.getPatientName(this.tableDataList[i].patient_id)
1001
+              this.tableDataList[i].ctimeOne = this.getTime(this.tableDataList[i].ctime)
1002
+              this.tableDataList[i].ctimeTwo = this.getTimeOne(this.tableDataList[i].ctime)
1003
+              this.tableDataList[i].expiry_date = this.getTime(this.tableDataList[i].expiry_date)
1004
+              this.tableDataList[i].project_name ="居民报销"
1005
+            
1006
+              out_total += this.tableDataList[i].count * this.tableDataList[i].price
1007
+              in_total += this.tableDataList[i].count *this.tableDataList[i].WarehousingInfoNight.price
1008
+
1009
+           }
1010
+       }
1011
+       obj.out_total_price = out_total.toFixed(2)
1012
+       obj.in_total_price = in_total.toFixed(2)
1013
+       this.tableDataList.push(obj)
1014
+
1015
+      import('@/vendor/Export2Excel').then(excel => {
1016
+       const tHeader = ['序号','耗材名称', '耗材规格', '批号','生成厂家','耗材类型','报销方式','入库单价','出库单价','出库数量','实际出库数量','单位','出库金额','实际出库金额','实际成本','出库对象','有效日期','出库日期','操作时间','出库单号','备注']
1017
+       const filterVal = ['index','good_name', 'specification_name', 'batch_number','manufacturer_name','good_type_name','project_name','in_price','price','out_count','out_count','max_unit','out_total_price','out_total_price','in_total_price','patient_name','expiry_date','ctimeOne','ctimeTwo','warehouse_out_order_number','remark']
1018
+
1019
+       const data = this.formatJson(filterVal, this.tableDataList)
1020
+
1021
+
1022
+        excel.export_json_to_excel({
1023
+           header: tHeader,
1024
+           data,
1025
+           filename: '耗材出库明细'
1026
+         })
1027
+          this.downloadLoading = false
1028
+        })
1029
+
1030
+     },
959 1031
      formatJson(filterVal, jsonData) {
960 1032
         return jsonData.map(v => filterVal.map(j => v[j]));
961 1033
      },

+ 103 - 9
src/xt_pages/stock/drugs/components/drugOutDetail.vue View File

@@ -9,7 +9,7 @@
9 9
       >打印
10 10
     </el-button>
11 11
      <el-button
12
-      v-if="org_id != 10265"
12
+      v-if="org_id != 10265 && org_id!=0&&org_id!=10480"
13 13
       style="float: right;margin-right:10px"
14 14
       size="small"
15 15
       @click="exportListDetai"
@@ -23,6 +23,14 @@
23 23
       @click="exportListDetaiOne"
24 24
       type="primary"
25 25
       >明细导出
26
+    </el-button>
27
+    <el-button
28
+      v-if="org_id == 10480 || org_id == 0"
29
+      style="float: right;margin-right:10px"
30
+      size="small"
31
+      @click="exportListDetaiTwo"
32
+      type="primary"
33
+      >明细导出
26 34
     </el-button>
27 35
      <el-button
28 36
       style="float: right;margin-right:10px"
@@ -414,6 +422,13 @@ export default {
414 422
         return uParseTime(val, "{y}-{m}-{d}");
415 423
       }
416 424
     },
425
+    getTimeOne: function(val) {
426
+      if (val == 0) {
427
+        return "";
428
+      } else {
429
+        return uParseTime(val, "{y}-{m}-{d} {h}:{i}");
430
+      }
431
+    },
417 432
     PrintAction: function() {
418 433
       //  window.sessionStorage.setItem('start_out_time',this.start_time)
419 434
       //  window.sessionStorage.setItem('end_out_time',this.end_time)
@@ -494,14 +509,16 @@ export default {
494 509
 
495 510
           }
496 511
            console.log("toal_p3232332332233232",total_price)
497
-           order.push({
498
-            warehouse_out_order_number: "合计",
499
-            is_total: 1,
500
-            specification_name:"",
501
-            ctime:"",
502
-            total_price:total_price,
503
-          });
504
-
512
+           if(this.org_id!=0&&this.org_id!=10480){
513
+              order.push({
514
+              warehouse_out_order_number: "合计",
515
+              is_total: 1,
516
+              specification_name:"",
517
+              ctime:"",
518
+              total_price:total_price,
519
+            });
520
+           }
521
+          
505 522
           for(let i=0;i<order.length;i++){
506 523
             order[i].total_price = order[i].total_price.toFixed(2)
507 524
           }
@@ -782,6 +799,83 @@ export default {
782 799
        const data = this.formatJson(filterVal, this.tableData)
783 800
 
784 801
 
802
+       excel.export_json_to_excel({
803
+           header: tHeader,
804
+           data,
805
+           filename: '药品出库明细'
806
+         })
807
+          this.downloadLoading = false
808
+      })
809
+    },
810
+
811
+    exportListDetaiTwo(){
812
+      var obj = {index:"合计",out_total_price:0,in_total_price:0}
813
+       var out_total = 0
814
+       var in_total =0
815
+      console.log("tatbledateawowowo",this.tableData)
816
+ 
817
+      for(let i=0;i<this.tableData.length;i++){
818
+         if(this.tableData[i].is_total == 0){
819
+            this.tableData[i].index = i+1
820
+            if(this.tableData[i].drug_type == 1){
821
+              this.tableData[i].drugtype = "西药"
822
+            }
823
+            if(this.tableData[i].drug_type == 2){
824
+              this.tableData[i].drugtype = "草药"
825
+            }
826
+            if(this.tableData[i].drug_type == 3){
827
+              this.tableData[i].drugtype = "成药"
828
+            }
829
+            this.tableData[i].specification_name = this.tableData[i].dose + this.tableData[i].dose_unit +"*" + this.tableData[i].min_number + this.tableData[i].min_unit +  "/" + this.tableData[i].max_unit
830
+            this.tableData[i].time = this.getTime(this.tableData[i].ctime)
831
+            this.tableData[i].user_name = this.getAdminUser(this.tableData[i].creater)
832
+            this.tableData[i].manufacturer_name = this.getManufacturerName(this.tableData[i].manufacturer)
833
+            this.tableData[i].out_count = this.tableData[i].count
834
+            this.tableData[i].in_retail_price = (this.tableData[i].in_price/this.tableData[i].min_number).toFixed(2)
835
+            this.tableData[i].total = (this.tableData[i].count * this.tableData[i].price)
836
+            this.tableData[i].patient_name = this.getPatientName(this.tableData[i].patient_id) 
837
+            if(this.tableData[i].count_unit == this.tableData[i].min_unit && this.tableData[i].max_unit!=this.tableData[i].min_unit){
838
+                this.tableData[i].out_total_price = (this.tableData[i].count * this.tableData[i].price)
839
+                this.tableData[i].in_total_price =  this.tableData[i].in_retail_price * this.tableData[i].count
840
+            }
841
+            if(this.tableData[i].count_unit == this.tableData[i].max_unit && this.tableData[i].max_unit !=this.tableData[i].min_unit){
842
+              this.tableData[i].out_total_price = (this.tableData[i].count * this.tableData[i].price)*this.tableData[i].min_number
843
+              this.tableData[i].in_total_price =  this.tableData[i].min_number * (this.tableData[i].count * this.tableData[i].in_retail_price)
844
+            }
845
+            if(this.tableData[i].count_unit == this.tableData[i].max_unit && this.tableData[i].max_unit ==this.tableData[i].min_unit){
846
+              this.tableData[i].out_total_price = (this.tableData[i].count * this.tableData[i].price)*this.tableData[i].min_number
847
+
848
+              this.tableData[i].in_total_price =  this.tableData[i].min_number * (this.tableData[i].count * this.tableData[i].in_retail_price)
849
+            }
850
+
851
+            this.tableData[i].project_name = "居民医保"
852
+
853
+            this.tableData[i].expiry_date = this.getTime(this.tableData[i].expiry_date)
854
+
855
+            
856
+            this.tableData[i].ctimeOne = this.getTime(this.tableData[i].ctime)
857
+
858
+            this.tableData[i].ctimeTwo = this.getTimeOne(this.tableData[i].ctime)
859
+            
860
+            out_total += this.tableData[i].out_total_price 
861
+            in_total += this.tableData[i].in_total_price
862
+         }
863
+       }
864
+       obj.out_total_price = out_total.toFixed(2)
865
+       obj.in_total_price = in_total.toFixed(2)
866
+       this.tableData.push(obj)
867
+
868
+      import('@/vendor/Export2Excel').then(excel => {
869
+        const tHeader = ['序号','药品名称', '药品规格', '批号','生成厂家','药品类型','报销方式','入库单价','出库单价','出库数量','实际出库数量','单位','出库金额','实际出库金额','实际成本','出库对象','有效日期','出库日期','操作时间','出库单号','备注']
870
+        const filterVal = ['index','drug_name', 'specification_name', 'batch_number','manufacturer_name','drug_type','project_name','in_price','price','out_count','out_count','max_unit','out_total_price','out_total_price','in_total_price','patient_name','expiry_date','ctimeOne','ctimeTwo','warehouse_out_order_number','remark']
871
+
872
+       console.log("hwhhwhwhwhwhw",this.tableData)
873
+        
874
+      
875
+      
876
+       const data = this.formatJson(filterVal, this.tableData)
877
+
878
+
785 879
        excel.export_json_to_excel({
786 880
            header: tHeader,
787 881
            data,