瀏覽代碼

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

XMLWAN 4 年之前
父節點
當前提交
b1637aff83

+ 6 - 32
src/api/role/admin.js 查看文件

@@ -26,23 +26,11 @@ export function getAddAdminInitData() {
26 26
   })
27 27
 }
28 28
 
29
-export function addAdmin(mobile, name, type, title, role, intro, user_title_name,department,department_id) {
30
-  const params = {
31
-    mobile: mobile,
32
-    name: name,
33
-    type: type,
34
-    title: title,
35
-    role: role,
36
-    intro: intro,
37
-    user_title_name: user_title_name,
38
-    department:department,
39
-    department_id:department_id,
40
-  }
41
-  console.log("epa",department_id,department)
42
-
29
+export function addAdmin(params) {
30
+  
43 31
   return request({
44 32
     url: '/api/admin/add',
45
-    method: 'post',
33
+    method: 'get',
46 34
     params: params
47 35
   })
48 36
 }
@@ -58,25 +46,11 @@ export function getModifyAdminInitData(uid) {
58 46
   })
59 47
 }
60 48
 
61
-export function modifyAdmin(uid, name, type, title, role, intro, user_title_name, sort,department,department_id) {
62
-  console.log("进来",department,department_id)
63
-  const params = {
64
-    uid: uid,
65
-    name: name,
66
-    type: type,
67
-    title: title,
68
-    role: role,
69
-    intro: intro,
70
-    user_title_name: user_title_name,
71
-    sort: sort,
72
-    department:department,
73
-    department_id:department_id
74
-  }
75
-
76
-
49
+export function modifyAdmin(params) {
50
+ 
77 51
   return request({
78 52
     url: '/api/admin/edit',
79
-    method: 'post',
53
+    method: 'get',
80 54
     params: params
81 55
   })
82 56
 }

+ 48 - 5
src/xt_pages/data/components/addDrugs.vue 查看文件

@@ -208,11 +208,39 @@
208 208
                 </el-option>
209 209
               </el-select>
210 210
             </el-form-item>
211
+
212
+            <el-form-item label="处方药标志" >
213
+                <el-select v-model="form.prescription_mark" style="width:160px;" placeholder="请选择">
214
+                <el-option
215
+                  v-for="item,index in options"
216
+                  :key="index"
217
+                  :label="item.label"
218
+                  :value="item.value">
219
+                </el-option>
220
+               </el-select>  
221
+            </el-form-item>
222
+
223
+           <el-form-item label="社保目录编码" >
224
+              <el-input v-model="form.social_security_directory_code" style="width:180px"></el-input>
225
+           </el-form-item>
226
+
227
+           <el-form-item label="备案日期:" >
228
+               <el-date-picker
229
+                  value-format="yyyy-MM-dd"
230
+                  v-model="form.record_date"
231
+                  type="date"
232
+                  placeholder="选择日期时间">
233
+              </el-date-picker>
234
+           </el-form-item>
235
+
236
+           <el-form-item label="药品备注:">
237
+               <el-input v-model="form.drug_remark" style="width:180px"></el-input>
238
+           </el-form-item>
211 239
             <!-- <el-form-item label="代理商 : " prop="agent">
212 240
               <el-input v-model="form.agent" style="width:160px;" placeholder="" maxlength="30"></el-input>
213 241
             </el-form-item> -->
214 242
 
215
-          <el-form-item label="经销商 : " prop="dealer" style="width:100%">
243
+          <el-form-item label="经销商: " prop="dealer" style="width:100%">
216 244
              
217 245
                <el-select v-model="form.dealer" style="width:100%;" filterable placeholder="请选择">
218 246
                   <el-option
@@ -428,6 +456,10 @@
428 456
           is_charge_use: '',//是否收费常用项
429 457
           drug_code:'',
430 458
           dealer:'',
459
+          prescription_mark:"",//处方药标志
460
+          social_security_directory_code:"",//社保目录编码
461
+          record_date:"",//备案日期
462
+          drug_remark:"",//药品备注
431 463
         },
432 464
 
433 465
         rules: {
@@ -447,7 +479,11 @@
447 479
           drug_classify: [{ required: true, message: '请选择药物分类',trigger: 'change'  }],
448 480
           drug_dose: [{ required: true, message: '请填写剂量',trigger: 'blur'  }],
449 481
           manufacturer: [{ required: true, message: '请选择生产产商',trigger: 'change'  }],
450
-          dealer:[{required:true,message:'请选择经销商',trigger:'change'}]
482
+          dealer:[{required:true,message:'请选择经销商',trigger:'change'}],
483
+          prescription_mark:[{required:true,message:"请选择处方药标志"}],
484
+          social_security_directory_code:[{required:true,message:"请填写社保目录编码"}],
485
+          record_date:[{required:true,message:"请选择备案日期"}],
486
+          drug_remark:[{required:true,message:"请填写药品备注"}]
451 487
         },
452 488
         page:1,
453 489
         limit:500,
@@ -502,6 +538,7 @@
502 538
         this.form.intro = ''
503 539
       },
504 540
       show(id,obj) {
541
+        console.log("obj222",obj)
505 542
         // this.clear()
506 543
         this.visible = true
507 544
         if (id == 0) {
@@ -549,6 +586,10 @@
549 586
       ,
550 587
       hide() {
551 588
         // this.clear()
589
+        this.form.social_security_directory_code = ""
590
+        this.form.prescription_mark = ""
591
+        this.form.record_date = ""
592
+        this.form.drug_remark = ""
552 593
         this.visible = false
553 594
       },
554 595
       getValue: function() {
@@ -600,8 +641,10 @@
600 641
         form['drug_code'] = this.form.drug_code
601 642
         form['drug_classify'] = this.form.drug_classify
602 643
         form['dealer'] = this.form.dealer
603
-
604
-
644
+        form['prescription_mark'] = this.form.prescription_mark
645
+        form['social_security_directory_code'] = this.form.social_security_directory_code
646
+        form['record_date'] = this.form.record_date
647
+        form['drug_remark'] = this.form.drug_remark
605 648
         return form
606 649
       },
607 650
       getlist(){
@@ -609,7 +652,7 @@
609 652
              page:this.page,
610 653
              limit:this.limit
611 654
           }
612
-          console.log("params2222222",params)
655
+         
613 656
         getManufacturerList(params).then(response=>{
614 657
            var manufacturerList =   response.data.data.manufacturer
615 658
            console.log("列表2222222",manufacturerList)

+ 18 - 2
src/xt_pages/data/components/addProject.vue 查看文件

@@ -119,12 +119,22 @@
119 119
                           <el-form-item label="总量 : " prop="medical_code">
120 120
                             <el-input v-model="form.total" style="width:160px;" placeholder="" maxlength="30"></el-input>
121 121
                         </el-form-item>
122
-                        <el-form-item label="状态 : " prop="medical_status" style="width:100%;">
122
+                        <el-form-item label="状态 : " prop="medical_status">
123 123
                             <el-radio-group v-model="form.medical_status">
124 124
                                 <el-radio :label="1">停用</el-radio>
125 125
                                 <el-radio :label="2">收费</el-radio>
126 126
                             </el-radio-group>
127 127
                         </el-form-item>
128
+                        <el-form-item label="类别:" prop="">
129
+                           <el-select v-model="form.category" style="width:160px;" placeholder="请选择">
130
+                              <el-option
131
+                                v-for="(item,index) in categoryList"
132
+                                :key="index"
133
+                                :label="item.name"
134
+                                :value="item.id">
135
+                                </el-option>
136
+                            </el-select>
137
+                        </el-form-item>
128 138
                         <el-form-item label="备注 : " prop="remark" style="width:100%;">
129 139
                             <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
130 140
                         </el-form-item>
@@ -261,7 +271,12 @@ export default {
261 271
                 cost_classify: [{ required: true, message: '请填写费用类别',trigger: 'blur' }],
262 272
                 executive_section: [{ required: true, message: '请填写执行科室',trigger: 'blur'  }],
263 273
                 medical_coverage: [{ required: true, message: '请填写医保等级',trigger: 'blur' }],
264
-           }
274
+           },
275
+           categoryList:[
276
+             {id:1,name:"常规诊疗项目"},
277
+             {id:4,name:"辅助器具项目"},
278
+             {id:5,name:"加收项目"}
279
+           ]
265 280
         }
266 281
     },
267 282
     methods:{
@@ -324,6 +339,7 @@ export default {
324 339
                     execution_frequency:this.form.execution_frequency,
325 340
                     number_days:this.form.number_days,
326 341
                     total:this.form.total,
342
+                    category:this.form.category,
327 343
                }
328 344
            
329 345
               saveProject(params).then(response=>{

+ 160 - 13
src/xt_pages/data/components/consumables.vue 查看文件

@@ -16,7 +16,25 @@
16 16
             :value="item.value">
17 17
           </el-option>
18 18
         </el-select>
19
-        <label class="title"><span class="name">是否收费</span> : </label>
19
+        <label class="title"><span class="name">生产厂商</span> : </label>
20
+        <el-select v-model="manufacturer" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeManufacture">
21
+          <el-option
22
+            v-for="item in manufacturers"
23
+            :key="item.id"
24
+            :label="item.manufacturer_name"
25
+            :value="item.id">
26
+          </el-option>
27
+        </el-select>
28
+        <span style="color: #909399;font-size:14px;">备案 : &nbsp;</span>
29
+        <el-select v-model="is_record" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeRecord">
30
+          <el-option
31
+            v-for="item in optionOne"
32
+            :key="item.value"
33
+            :label="item.label"
34
+            :value="item.value">
35
+          </el-option>
36
+        </el-select>
37
+        <!-- <label class="title"><span class="name">是否收费</span> : </label>
20 38
         <el-select v-model="is_charge" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeCharge">
21 39
           <el-option
22 40
             v-for="item in options"
@@ -37,16 +55,26 @@
37 55
             :label="item.name"
38 56
             :value="item.id">
39 57
           </el-option>
40
-        </el-select>
58
+        </el-select> -->
59
+      </div>
60
+      <div>
61
+        <el-button type="primary" @click="openForm()">新增</el-button>
62
+        <el-button type="primary" @click="BatchDelete()">批量备案</el-button>
41 63
       </div>
42
-      <el-button type="primary" @click="openForm()">新增</el-button>
43 64
     </div>
65
+
44 66
     <el-table
45 67
       border style="width: 100%" :row-style="{ color: '#303133' }"
46 68
       :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}"
47 69
       :data="goodInfo.goodInfoData"
48 70
       v-loading="goodInfo.loading"
71
+      @selection-change="handleSelectionChange"
49 72
     >
73
+      <el-table-column
74
+          align="center"
75
+          type="selection"
76
+          width="55">
77
+      </el-table-column>    
50 78
       <el-table-column type="index" label="序号" width="60px" align="center"></el-table-column>
51 79
       <el-table-column label="耗材名称" align="center">
52 80
         <template slot-scope="scope">
@@ -94,6 +122,11 @@
94 122
           <el-button @click="handleGoodInfoEdit(scope.$index, scope.row)" type="primary" size="small">编辑</el-button>
95 123
           <!--<el-button type="primary" size="small" @click="clickSelfPayment(scope.row.id)">自付比例</el-button>-->
96 124
           <el-button type="danger" size="small" @click="handleGoodInfoDelete(scope.$index, scope.row)">删除</el-button>
125
+
126
+          <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)">
127
+             <span v-if="scope.row.is_mark == 0">备案</span>
128
+             <span v-if="scope.row.is_mark == 1">撤销</span>
129
+          </el-button>
97 130
         </template>
98 131
       </el-table-column>
99 132
     </el-table>
@@ -127,7 +160,7 @@
127 160
   import GoodInfoDailog from '../../stock/Dialog/goodInfoDailog'
128 161
   import { getDictionaryDataConfig } from "@/utils/data";
129 162
   import selfPayment from './selfPayment'
130
-
163
+  import axios from 'axios'
131 164
   import {
132 165
     createGoodInfo,
133 166
     deleteGoodInfo,
@@ -215,12 +248,29 @@
215 248
               sort:'',
216 249
               is_doctor_use:'',
217 250
               good_number:'',
218
-
251
+              social_security_directory_code:"",
252
+              special_medical:"",
253
+              production_type:""
219 254
             },
220 255
 
221 256
             isVisibility: false
222 257
           }
223
-        }
258
+        },
259
+        selectDrug:[],
260
+        manufacturers:[],
261
+        optionOne: [
262
+          {
263
+            value: '0',
264
+            label: '全部'
265
+          }, {
266
+            value: '1',
267
+            label: '已备案'
268
+          }, {
269
+            value: '2',
270
+            label: '未备案'
271
+        }],
272
+        is_record:"",
273
+        manufacturer:""
224 274
       }
225 275
     },
226 276
     methods: {
@@ -454,14 +504,24 @@
454 504
                 response.data.data.goodInfo.is_doctor_use.toString()
455 505
             }
456 506
 
457
-            this.goodInfo.goodInfoDialog.formValue.agent =
458
-              response.data.data.goodInfo.agent
459
-
460
-            this.goodInfo.goodInfoDialog.formValue.good_number =
461
-              response.data.data.goodInfo.good_number
462
-
507
+            this.goodInfo.goodInfoDialog.formValue.agent =response.data.data.goodInfo.agent
463 508
 
509
+            this.goodInfo.goodInfoDialog.formValue.good_number = response.data.data.goodInfo.good_number
510
+            
511
+            this.goodInfo.goodInfoDialog.formValue.social_security_directory_code = response.data.data.goodInfo.social_security_directory_code
512
+            
513
+            if(response.data.data.production_type<=0){
514
+               this.goodInfo.goodInfoDialog.production_type = ''
515
+            }else{
516
+              this.goodInfo.goodInfoDialog.formValue.production_type = response.data.data.goodInfo.production_type.toString()
517
+            }
464 518
 
519
+            if(response.data.data.special_medical<=0){
520
+               this.goodInfo.goodInfoDialog.special_medical = ''
521
+            }else{
522
+              this.goodInfo.goodInfoDialog.formValue.special_medical = response.data.data.goodInfo.special_medical.toString()
523
+            }
524
+        
465 525
             this.$refs.addConsumable.show(row.id, this.goodInfo.goodInfoDialog.formValue)
466 526
           }
467 527
         })
@@ -499,6 +559,8 @@
499 559
           is_use:this.is_use,
500 560
           good_kind:this.good_kind,
501 561
           is_charge: this.is_charge,
562
+          is_mark:this.is_record,
563
+          manufacturer:this.manufacturer,
502 564
         }
503 565
         console.log("222222",params)
504 566
         getGoodInfoList(params).then(response => {
@@ -649,11 +711,15 @@
649 711
             this.$message.error(response.data.msg)
650 712
             return false
651 713
           } else {
714
+            var obj = {id:0,manufacturer_name:"全部"}
715
+            this.manufacturers.push(obj)
652 716
             for (let i = 0; i < response.data.data.manufacturer.length; i++) {
653 717
               this.goodInfo.goodInfoDialog.formValue.manufacturers.push(
654 718
                 response.data.data.manufacturer[i]
655 719
               )
720
+              this.manufacturers.push(response.data.data.manufacturer[i])
656 721
             }
722
+            console.log("生产厂商888222",this.manufacturers)
657 723
           }
658 724
         })
659 725
       },
@@ -752,7 +818,88 @@
752 818
         this.goodInfo.goodInfoDialog.formValue.good_number = ''
753 819
 
754 820
         this.$refs.addConsumable.show(0)
755
-      }
821
+      },
822
+     handleSelectionChange(val) {
823
+      this.selectDrug = val;
824
+     },
825
+      // toRecord(){
826
+
827
+      //    var that = this
828
+      //    axios.get('http://127.0.0.1:9532/sz/api/goods/get').then(function(response) {
829
+      //     if (response.data.state == 0) {
830
+      //          that.$message.error(response.data.msg)
831
+      //          return false
832
+      //       } else {
833
+      //         that.$message({ message: '备案成功', type: 'success' })
834
+      //        }
835
+      //      }).catch(function(error) {
836
+      //   })
837
+      // },
838
+       BatchDelete() {
839
+          if (this.selectDrug.length == 0) {
840
+            this.$message.error("请选择要备案的信息");
841
+            return false;
842
+          }
843
+          this.$confirm(
844
+            "确认要备案所选记录吗? <br>",
845
+            "备案提示",
846
+            {
847
+              dangerouslyUseHTMLString: true,
848
+              confirmButtonText: "确定",
849
+              cancelButtonText: "取消",
850
+              type: "warning"
851
+            }
852
+          ).then(() => {
853
+            var ids = [];
854
+            var idMap = {};
855
+            for (const index in this.selectDrug) {
856
+              ids.push(this.selectDrug[index].id);
857
+              idMap[this.selectDrug[index].id] = this.selectDrug[index].id;
858
+            }
859
+            console.log('ids222222222',ids)
860
+            var idss = ids.join(',')
861
+            let params = {
862
+              ids:idss
863
+            }
864
+        
865
+            var that = this
866
+            axios.get('http://127.0.0.1:9532/sz/api/goods/get',{ params: params }).then(function(response) {
867
+            if (response.data.state == 0) {
868
+                  that.$message.error(response.data.msg)
869
+                  return false
870
+                } else {
871
+                  that.$message({ message: '备案成功', type: 'success' })
872
+                  that.getList()
873
+                }
874
+              }).catch(function(error) {
875
+            })
876
+          });
877
+     },
878
+      toReturn(id,isMark){
879
+        
880
+         var that = this
881
+         let params = {
882
+             'id':id,
883
+             'type_id':3,
884
+             'is_mark':isMark
885
+          }
886
+         axios.get('http://127.0.0.1:9532/sz/api/revocation/get',{params:params}).then(function(response) {
887
+          if (response.data.state == 0) {
888
+               that.$message.error(response.data.msg)
889
+               return false
890
+            } else {
891
+              that.$message({ message: '操作成功', type: 'success' })
892
+              that.getList()
893
+             }
894
+           }).catch(function(error) {
895
+        })
896
+      },
897
+      changeManufacture(){
898
+        this.getList()
899
+      },
900
+      changeRecord(){
901
+         this.getList()
902
+      },
756 903
     }, created() {
757 904
       this.getList()
758 905
       this.getAllDealer()

+ 217 - 43
src/xt_pages/data/components/drugs.vue 查看文件

@@ -7,7 +7,7 @@
7 7
         <el-button style="margin-right:10px;" class="filter-item" type="primary" icon="el-icon-search"
8 8
                    @click="searchAction">搜索
9 9
         </el-button>
10
-        <label class="title"><span class="name">是否启用</span> : </label>
10
+        <!-- <label class="title"><span class="name">是否启用</span> : </label>
11 11
         <el-select v-model="is_use" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeUser">
12 12
           <el-option
13 13
             v-for="item in options"
@@ -15,6 +15,15 @@
15 15
             :label="item.label"
16 16
             :value="item.value">
17 17
           </el-option>
18
+        </el-select> -->
19
+       <label class="title"><span class="name">生产厂商</span> : </label>
20
+        <el-select v-model="manufacturer" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeManufacture">
21
+          <el-option
22
+            v-for="item in manufacturers"
23
+            :key="item.id"
24
+            :label="item.manufacturer_name"
25
+            :value="item.id">
26
+          </el-option>
18 27
         </el-select>
19 28
         <label class="title"><span class="name">是否收费</span> : </label>
20 29
         <el-select v-model="is_charge" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeCharge">
@@ -25,7 +34,7 @@
25 34
             :value="item.value">
26 35
           </el-option>
27 36
         </el-select>
28
-        <span style="color: #909399;font-size:14px;">是否注射类别 : &nbsp;</span>
37
+        <!-- <span style="color: #909399;font-size:14px;">是否注射类别 : &nbsp;</span>
29 38
         <el-select v-model="is_inject" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeInject">
30 39
           <el-option
31 40
             v-for="item in options"
@@ -33,52 +42,106 @@
33 42
             :label="item.label"
34 43
             :value="item.value">
35 44
           </el-option>
45
+        </el-select> -->
46
+
47
+        <span style="color: #909399;font-size:14px;">备案 : &nbsp;</span>
48
+        <el-select v-model="is_record" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeRecord">
49
+          <el-option
50
+            v-for="item in options"
51
+            :key="item.value"
52
+            :label="item.label"
53
+            :value="item.value">
54
+          </el-option>
36 55
         </el-select>
37 56
       </div>
38
-      <el-button type="primary" @click="openForm(0)">新增</el-button>
57
+      <div>
58
+        <el-button type="primary" @click="openForm(0)">新增</el-button>
59
+        <el-button type="primary" @click="BatchDelete()">批量备案</el-button>
60
+      </div>
39 61
     </div>
40 62
     <el-table :data="list" border style="width: 100%" :row-style="{ color: '#303133' }"
41
-              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}">
63
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}"
64
+             @selection-change="handleSelectionChange">
65
+       <el-table-column
66
+          align="center"
67
+          type="selection"
68
+          width="55"
69
+       ></el-table-column>        
42 70
       <el-table-column type="index" label="序号" width="60px" align="center"></el-table-column>
43 71
 
44
-      <el-table-column prop="date" label="药品名称" align="center">
72
+      <el-table-column prop="date" label="药品名称" align="center" width="100">
45 73
         <template slot-scope="scope">
46 74
           <div>{{scope.row.drug_name}}</div>
47 75
         </template>
48
-
49 76
       </el-table-column>
50
-      <el-table-column prop="date" label="生产厂商" align="center">
77
+      <el-table-column prop="date" label="规格" width="60" align="center">
51 78
         <template slot-scope="scope">
52
-          <div>{{getName(scope.row.manufacturer)}}</div>
79
+          <div>{{scope.row.drug_spec}}</div>
53 80
         </template>
54 81
       </el-table-column>
55
-      <el-table-column prop="date" label="规格" width="140" align="center">
82
+      <el-table-column prop="date" label="最大单位" width="60" align="center">
56 83
         <template slot-scope="scope">
57
-          <div>{{scope.row.drug_spec}}</div>
84
+          <div>{{scope.row.max_unit}}</div>
58 85
         </template>
59 86
       </el-table-column>
60 87
       <el-table-column label="最小单位" width="60" align="center">
61 88
         <template slot-scope="scope">
62 89
           <div>{{scope.row.min_unit}}</div>
63 90
         </template>
64
-
91
+      </el-table-column>
92
+      <el-table-column prop="date" label="进货价" width="60" align="center">
93
+        <template slot-scope="scope">
94
+          <div>{{scope.row.last_price}}</div>
95
+        </template>
65 96
       </el-table-column>
66 97
       <el-table-column label="零售价" width="60" align="center">
67 98
         <template slot-scope="scope">
68 99
           <div>{{scope.row.retail_price}}</div>
69 100
         </template>
101
+      </el-table-column>
102
+       <el-table-column prop="date" label="医保编码" width="100" align="center">
103
+        <template slot-scope="scope">
104
+          <div>{{scope.row.medical_insurance_number}}</div>
105
+        </template>
106
+      </el-table-column>
107
+      <el-table-column prop="date" label="药品本位码" width="100" align="center">
108
+        <template slot-scope="scope">
109
+          <div>{{scope.row.code}}</div>
110
+        </template>
111
+      </el-table-column>
112
+      <el-table-column prop="date" label="生产厂商" align="center" width="100">
113
+        <template slot-scope="scope">
114
+          <div>{{getName(scope.row.manufacturer)}}</div>
115
+        </template>
116
+      </el-table-column>
117
+      <el-table-column prop="date" label="经销商" align="center" width="100">
118
+        <template slot-scope="scope">
119
+          <div>{{getDealer(scope.row.dealer)}}</div>
120
+        </template>
121
+      </el-table-column>
122
+      <el-table-column prop="date" label="备案日期" align="center" width="100">
123
+        <template slot-scope="scope">
124
+          <span>{{getTime(scope.row.record_date)}}</span>
125
+        </template>
126
+      </el-table-column>
127
+      <el-table-column prop="date" label="药品备注" align="center" width="100">
128
+        <template slot-scope="scope">
129
+          <div>{{scope.row.drug_remark}}</div>
130
+        </template>
70 131
       </el-table-column>
71 132
       <el-table-column label="状态" width="60" align="center">
72 133
         <template slot-scope="scope">
73 134
           <div>{{scope.row.drug_status.indexOf('停用') == -1 ? '启用':'停用' }}</div>
74 135
         </template>
75 136
       </el-table-column>
76
-      <el-table-column prop="date" label="操作" width="400" align="center">
137
+      <el-table-column prop="date" label="操作" width="250" align="center" fixed="right">
77 138
         <template slot-scope="scope">
78 139
           <el-button @click="openForm(scope.row.id)" type="primary" size="small">编辑</el-button>
79
-          <!--<el-button type="primary" size="small" @click="clickSelfPayment(scope.row.id)">自付比例</el-button>-->
80
-          <!--<el-button type="primary" size="small" @click="clickMainTain">单位维护</el-button>-->
81 140
           <el-button type="danger" size="small" @click="deleteDurg(scope.row.id,scope.$index)">删除</el-button>
141
+        <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)">
142
+          <span v-if="scope.row.is_mark == 0">备案</span>
143
+          <span v-if="scope.row.is_mark == 1">撤消</span>
144
+        </el-button>
82 145
         </template>
83 146
       </el-table-column>
84 147
     </el-table>
@@ -110,11 +173,13 @@
110 173
 </template>
111 174
 
112 175
 <script>
176
+  import axios from 'axios'
113 177
   import selfPayment from './selfPayment'
114 178
   import maintain from './maintain'
115 179
   import addDrugs from './addDrugs'
116 180
   import { GetAllManufacturer } from '@/api/stock'
117 181
   import { getDataConfig } from "@/utils/data";
182
+  import { uParseTime } from '@/utils/tools'
118 183
   import {
119 184
     createBaseDrugLib,
120 185
     createDrugUnitSafeguard,
@@ -124,7 +189,7 @@
124 189
     getBaseDrugLibList,
125 190
     deleteDurg
126 191
   } from '@/api/data'
127
-
192
+ import {GetAllConfig } from "@/api/stock";
128 193
   export default {
129 194
     components: {
130 195
       selfPayment,
@@ -138,9 +203,11 @@
138 203
         keywords: '',
139 204
         is_use: '',
140 205
         is_charge: '',
206
+        manufacturer:'',
207
+        is_record:"",
141 208
         is_inject: '',
142 209
         list: [],
143
-
210
+    
144 211
         isCreated: 1,
145 212
         manufacturers: [],
146 213
         title: '',
@@ -251,30 +318,15 @@
251 318
             label: '全部'
252 319
           }, {
253 320
             value: '1',
254
-            label: ''
321
+            label: '已备案'
255 322
           }, {
256 323
             value: '2',
257
-            label: ''
324
+            label: '未备案'
258 325
           }],
259 326
         value: '',
260
-        tableData: [{
261
-          date: '2016-05-02',
262
-          name: '王小虎',
263
-          address: '上海市普陀区金沙江路 1518 弄'
264
-        }, {
265
-          date: '2016-05-04',
266
-          name: '王小虎',
267
-          address: '上海市普陀区金沙江路 1517 弄'
268
-        }, {
269
-          date: '2016-05-01',
270
-          name: '王小虎',
271
-          address: '上海市普陀区金沙江路 1519 弄'
272
-        }, {
273
-          date: '2016-05-03',
274
-          name: '王小虎',
275
-          address: '上海市普陀区金沙江路 1516 弄'
276
-        }]
277
-
327
+       
328
+        dealer:[],
329
+        selectDrug:[],
278 330
       }
279 331
     },
280 332
     methods: {
@@ -292,11 +344,15 @@
292 344
       },
293 345
       changeCharge(val) {
294 346
         this.getList()
295
-
296 347
       },
297 348
       changeUser(val) {
298 349
         this.getList()
299
-
350
+      },
351
+      changeManufacture(){
352
+        this.getList()
353
+      },
354
+      changeRecord(){
355
+         this.getList()
300 356
       },
301 357
       getName(id) {
302 358
         for (let i = 0; i < this.manufacturers.length; i++) {
@@ -306,6 +362,15 @@
306 362
         }
307 363
         return ''
308 364
       },
365
+      getDealer(id){
366
+        var name = ""
367
+        for(let i=0;i<this.dealer.length;i++){
368
+          if(this.dealer[i].id == id){
369
+             name = this.dealer[i].dealer_name
370
+          }
371
+        }
372
+        return name
373
+      },
309 374
       goodInfoDialogComfirm: function(val) {
310 375
 
311 376
         //修改自备药
@@ -356,11 +421,13 @@
356 421
             this.$message.error(response.data.msg)
357 422
             return false
358 423
           } else {
424
+              var obj = {id:0,manufacturer_name:"全部"}
425
+              this.manufacturers.push(obj)
426
+          
359 427
             for (let i = 0; i < response.data.data.manufacturer.length; i++) {
360
-              this.manufacturers.push(
361
-                response.data.data.manufacturer[i]
362
-              )
428
+              this.manufacturers.push(response.data.data.manufacturer[i])
363 429
             }
430
+          
364 431
           }
365 432
         })
366 433
       },
@@ -453,6 +520,14 @@
453 520
 
454 521
               }
455 522
 
523
+              if(this.formValue.prescription_mark<=0){
524
+                  this.formValue.prescription_mark = ''
525
+              }else{
526
+                this.formValue.prescription_mark = this.formValue.prescription_mark.toString()
527
+              }
528
+
529
+              this.formValue.record_date = this.getTime(this.formValue.record_date)
530
+
456 531
               this.$refs.addDrugs.show(id, this.formValue)
457 532
 
458 533
             }
@@ -495,7 +570,9 @@
495 570
           keyword: this.keywords,
496 571
           is_use: this.is_use,
497 572
           is_charge: this.is_charge,
498
-          is_inject: this.is_inject
573
+          is_inject: this.is_inject,
574
+          manufacturer:this.manufacturer,
575
+          is_record:this.is_record
499 576
         }
500 577
         getBaseDrugLibList(params).then(response => {
501 578
           if (response.data.state == 0) {
@@ -504,6 +581,7 @@
504 581
           } else {
505 582
             this.total = response.data.data.total
506 583
             this.list = []
584
+            console.log("333333333",response.data.data.list)
507 585
             for (let i = 0; i < response.data.data.list.length; i++) {
508 586
               this.list.push(response.data.data.list[i])
509 587
             }
@@ -513,10 +591,106 @@
513 591
      getDataConfig(module, filed_name){
514 592
         return getDataConfig(module, filed_name)
515 593
       },
594
+      toRecord(){
595
+         var that = this
596
+         axios.get('http://127.0.0.1:9532/sz/api/drug/get').then(function(response) {
597
+          if (response.data.state == 0) {
598
+               that.$message.error(response.data.msg)
599
+               return false
600
+            } else {
601
+              that.$message({ message: '备案成功', type: 'success' })
602
+               that.getList()
603
+             }
604
+           }).catch(function(error) {
605
+        })
606
+      },
607
+      toReturn(id,isMark){
608
+        console.log("id2222",id)
609
+         var that = this
610
+         let params = {
611
+             'id':id,
612
+             'type_id':1,
613
+             'is_mark':isMark,
614
+          }
615
+         axios.get('http://127.0.0.1:9532/sz/api/revocation/get',{params:params}).then(function(response) {
616
+          if (response.data.state == 0) {
617
+               that.$message.error(response.data.msg)
618
+               return false
619
+            } else {
620
+              that.$message({ message: '操作成功', type: 'success' })
621
+              that.getList()
622
+             }
623
+           }).catch(function(error) {
624
+        })
625
+      },
626
+     GetAllConfig(){
627
+        GetAllConfig().then(response => {
628
+        if (response.data.state == 0) {
629
+          this.$message.error(response.data.msg);
630
+          return false;
631
+        } else {
632
+          this.dealer = response.data.data.dealer;
633
+         
634
+        }
635
+       });
636
+      },
637
+      getTime(val) {
638
+         if(val == ""){
639
+          return ""
640
+         }else {
641
+          return uParseTime(val, '{y}-{m}-{d}')
642
+         }
643
+      },
516 644
 
517
-    }, created() {
645
+      handleSelectionChange(val){
646
+        this.selectDrug = val
647
+      },
648
+
649
+      BatchDelete() {
650
+      if (this.selectDrug.length == 0) {
651
+        this.$message.error("请选择要备案的信息");
652
+        return false;
653
+      }
654
+      this.$confirm(
655
+        "确认要备案所选记录吗? <br>",
656
+        "备案提示",
657
+        {
658
+          dangerouslyUseHTMLString: true,
659
+          confirmButtonText: "确定",
660
+          cancelButtonText: "取消",
661
+          type: "warning"
662
+        }
663
+      ).then(() => {
664
+        var ids = [];
665
+        var idMap = {};
666
+        for (const index in this.selectDrug) {
667
+          ids.push(this.selectDrug[index].id);
668
+          idMap[this.selectDrug[index].id] = this.selectDrug[index].id;
669
+        }
670
+        console.log('ids222222222',ids)
671
+        var idss = ids.join(',')
672
+        let params = {
673
+          ids:idss
674
+        }
675
+     
676
+        var that = this
677
+        axios.get('http://127.0.0.1:9532/sz/api/drug/get',{ params: params }).then(function(response) {
678
+         if (response.data.state == 0) {
679
+               that.$message.error(response.data.msg)
680
+               return false
681
+            } else {
682
+              that.$message({ message: '备案成功', type: 'success' })
683
+              that.getList()
684
+             }
685
+           }).catch(function(error) {
686
+        })
687
+       });
688
+     },
689
+    }, 
690
+    created() {
518 691
       this.getList()
519 692
       this.getAllManufacturer()
693
+      this.GetAllConfig()
520 694
     }
521 695
   }
522 696
 </script>

+ 21 - 3
src/xt_pages/data/components/editProject.vue 查看文件

@@ -119,12 +119,22 @@
119 119
                           <el-form-item label="总量 : " prop="medical_code">
120 120
                             <el-input v-model="form.total" style="width:160px;" placeholder="" maxlength="30"></el-input>
121 121
                         </el-form-item>
122
-                        <el-form-item label="状态 : " prop="medical_status" style="width:100%;">
122
+                        <el-form-item label="状态 : " prop="medical_status">
123 123
                             <el-radio-group v-model="form.medical_status">
124 124
                                 <el-radio :label="1">停用</el-radio>
125 125
                                 <el-radio :label="2">收费</el-radio>
126 126
                             </el-radio-group>
127 127
                         </el-form-item>
128
+                        <el-form-item label="类别:" prop="">
129
+                           <el-select v-model="form.category" style="width:160px;" placeholder="请选择">
130
+                              <el-option
131
+                                v-for="(item,index) in categoryList"
132
+                                :key="index"
133
+                                :label="item.name"
134
+                                :value="item.id">
135
+                                </el-option>
136
+                            </el-select>
137
+                        </el-form-item>
128 138
                         <el-form-item label="备注 : " prop="remark" style="width:100%;">
129 139
                             <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
130 140
                         </el-form-item>
@@ -256,7 +266,8 @@ export default {
256 266
               delivery_way:"",
257 267
               execution_frequency:"",
258 268
               number_days:"",
259
-              total:""
269
+              total:"",
270
+              category:""
260 271
             },
261 272
             rules: {
262 273
                 project_name: [{ required: true, message: '请填写项目名称', trigger: 'blur'  }],
@@ -267,7 +278,12 @@ export default {
267 278
                 cost_classify: [{ required: true, message: '请填写费用类别',trigger: 'blur' }],
268 279
                 executive_section: [{ required: true, message: '请填写执行科室',trigger: 'blur'  }],
269 280
                 medical_coverage: [{ required: true, message: '请填写医保等级',trigger: 'blur' }],
270
-           }
281
+           },
282
+          categoryList:[
283
+             {id:1,name:"常规诊疗项目"},
284
+             {id:4,name:"辅助器具项目"},
285
+             {id:5,name:"加收项目"}
286
+           ]
271 287
         }
272 288
     },
273 289
     methods:{
@@ -329,6 +345,7 @@ export default {
329 345
               this.form.execution_frequency = projecDetail.execution_frequency
330 346
               this.form.number_days = projecDetail.number_days
331 347
               this.form.total = projecDetail.total
348
+              this.form.category = projecDetail.category
332 349
             }
333 350
          })
334 351
        },
@@ -367,6 +384,7 @@ export default {
367 384
                     execution_frequency:this.form.execution_frequency,
368 385
                     number_days:this.form.number_days,
369 386
                     total:this.form.total,
387
+                    category:this.form.category
370 388
                }
371 389
               
372 390
               updatedProject(params).then(response=>{

+ 122 - 4
src/xt_pages/data/components/project.vue 查看文件

@@ -22,10 +22,27 @@
22 22
                     :value="item.value">
23 23
                     </el-option>
24 24
                 </el-select>
25
+                <label class="title"><span class="name">备案:</span> : </label>
26
+                <el-select v-model="is_mark" style="width:140px;margin-right:10px;" placeholder="请选择" @change="changeRecord">
27
+                  <el-option
28
+                    v-for="item in optionOne"
29
+                    :key="item.value"
30
+                    :label="item.label"
31
+                    :value="item.value">
32
+                  </el-option>
33
+                </el-select>
34
+            </div>
35
+            <div>
36
+             <el-button type="primary" @click="openForm(0)">新增</el-button>
37
+             <el-button type="primary" @click="BatchDelete()">批量备案</el-button>
25 38
             </div>
26
-            <el-button type="primary" @click="openForm(0)">新增</el-button>
27 39
         </div>
28
-        <el-table :data="tableData" border style="width: 100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}">
40
+        <el-table :data="tableData" border style="width: 100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}"  @selection-change="handleSelectionChange">
41
+            <el-table-column
42
+              align="center"
43
+              type="selection"
44
+              width="55">
45
+            </el-table-column>  
29 46
             <el-table-column prop="date" label="序号" width="80" align="center">
30 47
                  <template  slot-scope="scope">
31 48
                       {{scope.$index+1}}
@@ -62,6 +79,10 @@
62 79
                 <template slot-scope="scope">
63 80
                     <el-button @click="editHisProject(scope.row.id)" type="primary" size="small">编辑</el-button>
64 81
                     <el-button type="danger" size="small" @click="deleteProject(scope.row.id,scope.$index)">删除</el-button>
82
+                    <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.id,scope.row.is_mark)">
83
+                      <span v-if="scope.row.is_mark ==0">备案</span>
84
+                      <span v-if="scope.row.is_mark ==1">撤销</span>
85
+                    </el-button>
65 86
                 </template>
66 87
             </el-table-column>
67 88
         </el-table>
@@ -88,6 +109,7 @@ import addProject from './addProject'
88 109
 import editProject from './editProject'
89 110
 import { getProjectList,deleteHisProject } from "@/api/project/project"
90 111
 import { getDictionaryDataConfig } from "@/utils/data";
112
+import axios from 'axios'
91 113
 export default {
92 114
     components:{
93 115
         addProject,
@@ -112,7 +134,20 @@ export default {
112 134
             total:0,
113 135
             tableData: [],
114 136
             is_start:0,
115
-            is_charge:0
137
+            is_charge:0,
138
+            selectDrug:[],
139
+            optionOne: [
140
+            {
141
+              value: '0',
142
+              label: '全部'
143
+            }, {
144
+              value: '1',
145
+              label: '已备案'
146
+            }, {
147
+              value: '2',
148
+              label: '未备案'
149
+          }],
150
+         is_mark:""
116 151
         }
117 152
     },
118 153
     methods:{
@@ -169,6 +204,7 @@ export default {
169 204
                is_start:this.is_start,
170 205
                limit:this.limit,
171 206
                page:this.page,
207
+               is_mark:this.is_mark,
172 208
             }
173 209
            console.log("222",params)
174 210
           getProjectList(params).then(response=>{
@@ -200,8 +236,90 @@ export default {
200 236
         },
201 237
         changeOption(){
202 238
           this.getlist()
239
+        },
240
+
241
+        toRecord(){
242
+         var that = this
243
+         axios.get('http://127.0.0.1:9532/sz/api/treatment/get').then(function(response) {
244
+          if (response.data.state == 0) {
245
+               that.$message.error(response.data.msg)
246
+               return false
247
+            } else {
248
+              that.$message({ message: '备案成功', type: 'success' })
249
+              that.getlist()
250
+             }
251
+           }).catch(function(error) {
252
+        })
253
+      },
254
+
255
+     toReturn(id,isMark){
256
+        console.log("id2222",id)
257
+         var that = this
258
+         let params = {
259
+             'id':id,
260
+             'type_id':2,
261
+             'is_mark':isMark,
262
+          }
263
+          console.log("params22222222",params)
264
+         
265
+         axios.get('http://127.0.0.1:9532/sz/api/revocation/get',{params:params}).then(function(response) {
266
+          if (response.data.state == 0) {
267
+               that.$message.error(response.data.msg)
268
+               return false
269
+            } else {
270
+              that.$message({ message: '操作成功', type: 'success' })
271
+              that.getlist()
272
+             }
273
+           }).catch(function(error) {
274
+        })
275
+      },
276
+      handleSelectionChange(val) {
277
+        this.selectDrug = val;
278
+      }, 
279
+    changeRecord(){
280
+      this.getlist()
281
+    },
282
+      
283
+    BatchDelete() {
284
+      if (this.selectDrug.length == 0) {
285
+        this.$message.error("请选择要备案的信息");
286
+        return false;
287
+      }
288
+      this.$confirm(
289
+        "确认要备案所选记录吗? <br>",
290
+        "备案提示",
291
+        {
292
+          dangerouslyUseHTMLString: true,
293
+          confirmButtonText: "确定",
294
+          cancelButtonText: "取消",
295
+          type: "warning"
203 296
         }
204
-        
297
+      ).then(() => {
298
+        var ids = [];
299
+        var idMap = {};
300
+        for (const index in this.selectDrug) {
301
+          ids.push(this.selectDrug[index].id);
302
+          idMap[this.selectDrug[index].id] = this.selectDrug[index].id;
303
+        }
304
+        console.log('ids222222222',ids)
305
+        var idss = ids.join(',')
306
+        let params = {
307
+          ids:idss
308
+        }
309
+     
310
+        var that = this
311
+        axios.get('http://127.0.0.1:9532/sz/api/treatment/get',{ params: params }).then(function(response) {
312
+         if (response.data.state == 0) {
313
+               that.$message.error(response.data.msg)
314
+               return false
315
+            } else {
316
+              that.$message({ message: '备案成功', type: 'success' })
317
+              that.getList()
318
+             }
319
+           }).catch(function(error) {
320
+        })
321
+       });
322
+     },
205 323
     },
206 324
     created(){
207 325
       this.getlist()

+ 5 - 1
src/xt_pages/dialysis/batch_print/batch_print_order.vue 查看文件

@@ -946,7 +946,11 @@
946 946
                       </div>
947 947
                       <div class="inline_block" style="float: right;">
948 948
                         医生签名:
949
-                        <div class="under_line" style="width: 100px;">
949
+                        <div class="under-line" v-if="org_id == 9987">
950
+                          <span v-if="setAdminUserES(record.prescription==null?0:(record.prescription.prescription_doctor?record.prescription.prescription_doctor:record.prescription.creater)) == ''">{{getAdminUser(record.prescription==null?0:(record.prescription.prescription_doctor?record.prescription.prescription_doctor:record.prescription.creater))}}</span>
951
+                          <img v-else style="height:30px;" :src="setAdminUserES(record.prescription==null?0:(record.prescription.prescription_doctor?record.prescription.prescription_doctor:record.prescription.creater))" alt="" srcset="">
952
+                        </div>
953
+                        <div class="under_line" v-else style="width: 100px;">
950 954
                           <span
951 955
                             v-if="
952 956
                               !record.advices ||

+ 3 - 9
src/xt_pages/outpatientCharges/components/registerDialog.vue 查看文件

@@ -166,10 +166,10 @@
166 166
         </el-select>
167 167
       </el-form-item>
168 168
       <el-form-item label="挂号费:">
169
-        <el-input v-model.number="form.registration_fee"></el-input>
169
+        <el-input v-model="form.registration_fee"></el-input>
170 170
       </el-form-item>
171 171
       <el-form-item label="诊疗费:">
172
-        <el-input v-model.number="form.medical_expenses"></el-input>
172
+        <el-input v-model="form.medical_expenses"></el-input>
173 173
       </el-form-item>
174 174
     </el-form>
175 175
 
@@ -203,7 +203,6 @@
203 203
           {value: 15, label: "门诊统筹"},
204 204
           {value: 16, label: "门诊慢性病"},
205 205
           {value: 21, label: "普通住院"},
206
-
207 206
         ],
208 207
         form: {
209 208
           id: '',
@@ -291,8 +290,7 @@
291 290
         }, {
292 291
           value: 6,
293 292
           label: "城乡居民大病医疗保险"
294
-        },
295
-          {
293
+        }, {
296 294
             value: 7,
297 295
             label: "生育保险"
298 296
           }],
@@ -323,17 +321,13 @@
323 321
           birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}],
324 322
           certificates: [{required: true, message: "证件类型不能为空", trigger: 'change'}],
325 323
           id_card_type: [{required: true, message: "读卡类型不能为空", trigger: 'change'}],
326
-
327 324
           p_type: [{required: true, message: "处方类型不能为空", trigger: 'change'}],
328 325
           sick_type: [{required: true, message: "大病类别不能为空", trigger: 'change'}],
329 326
           diagnosis: [{required: true, message: "诊断不能为空", trigger: 'change'}],
330
-
331 327
         },
332
-
333 328
         visibility: false,
334 329
         labelPosition: 'right',
335 330
         isClose: false,
336
-
337 331
         resetForm: {
338 332
           settlement_value: '',
339 333
           medical_insurance_card: '',

文件差異過大導致無法顯示
+ 505 - 544
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue


+ 2 - 2
src/xt_pages/outpatientCharges/template/printOne.vue 查看文件

@@ -35,7 +35,7 @@
35 35
             <p>核对:</p>
36 36
             <p>发药:</p>
37 37
             <p>药费:</p>
38
-        </div>
38
+        </div> b
39 39
     </div>
40 40
 </template>
41 41
 
@@ -97,7 +97,7 @@
97 97
 }
98 98
 .actionBar{
99 99
     display: flex;
100
-    justify-content: space-between; 
100
+    justify-content: space-between;
101 101
     line-height: 24px;
102 102
     padding:0 10px;
103 103
 }

+ 465 - 179
src/xt_pages/outpatientCharges/treatTemplate/printOne.vue 查看文件

@@ -1,212 +1,498 @@
1 1
 <template>
2 2
     <div id='prescription-print' class="prescription-print">
3
-        <div class="printTitle">{{orgname}}&nbsp;&nbsp;医药费收据及收费项目清单</div>
4
-        <div class="infoMain">
5
-            <div class="infoP">医院(药店)编号:</div>
6
-            <div class="infoP">名称:血液透析中心</div>
7
-            <div class="infoP">医生工号:</div>
8
-            <div class="infoP">门诊流水号:</div>
9
-            <div class="infoP">科别:{{list.p_info.departments?list.p_info.departments:""}}</div>
10
-            <div class="infoP">处方单据号:</div>
11
-            <div class="infoP">姓名:{{patient.name}}</div>
12
-            <div class="infoP">医疗账号:</div>
13
-            <div class="infoP">医疗类别:普通</div>
14
-        </div>
15
-        <div class="chargeBox">
16
-            <div style="display:flex;justify-content: space-between;border-bottom:1px solid #000;">
17
-                <div class="chargeUl" style="width:20%;">
18
-                    <p style="width:50%;border-right:1px solid #000;">费用类型</p>
19
-                    <p style="width:50%;border-right:1px solid #000;">金额</p>
20
-                </div>
21
-                <div class="chargeUl" style="width:80%;">
22
-                    <p style="width:40%;border-right:1px solid #000;">明细名称</p>
23
-                    <p style="width:15%;border-right:1px solid #000;">规格</p>
24
-                    <p style="width:15%;border-right:1px solid #000;">数量</p>
25
-                    <p style="width:15%;border-right:1px solid #000;">单价</p>
26
-                    <p style="width:15%;">金额</p>
27
-                </div>
3
+        <div v-if=" this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 9538">
4
+            <div class="printTitle">{{orgname}}&nbsp;&nbsp;医药费收据及收费项目清单</div>
5
+            <div class="infoMain">
6
+                <div class="infoP">医院(药店)编号:{{org_code}}</div>
7
+                <div class="infoP">名称:{{orgname}}</div>
8
+                <div class="infoP">医生工号:{{doctor_code}}</div>
9
+                <div class="infoP">门诊流水号:{{result.transBody.akc190}}</div>
10
+                <div class="infoP">科别:{{全科}}</div>
11
+                <div class="infoP">处方单据号:</div>
12
+                <div class="infoP">姓名:{{patient_name}}</div>
13
+                <div class="infoP">医疗账号:</div>
14
+                <div class="infoP">医疗类别:普通</div>
28 15
             </div>
29
-            <div style="display:flex;justify-content: space-between;">
30
-                <div style="width:20%;">
31
-                    <div class="chargeUl" v-for="(item,index) in 1" :key="index">
32
-                        <p style="width:50%;">材料费</p>
33
-                        <p style="width:50%;"></p>
34
-                    </div>
35
-                    <div class="chargeUl" style="border-top:1px solid #000;">
36
-                        <p style="width:50%;">费用合计</p>
37
-                        <p style="width:50%;">{{list.order_info.medfee_sumamt?list.order_info.medfee_sumamt:""}}</p>
16
+            <div class="chargeBox">
17
+                <div style="display:flex;justify-content: space-between;border-bottom:1px solid #000;">
18
+                    <div class="chargeUl" style="width:20%;">
19
+                        <p style="width:50%;border-right:1px solid #000;">费用类型</p>
20
+                        <p style="width:50%;border-right:1px solid #000;">金额</p>
38 21
                     </div>
39
-                    <div class="chargeUl" style="border-top:1px solid #000;">
40
-                        <p style="width:50%;">记账支付</p>
41
-                        <p style="width:50%;"></p>
22
+                    <div class="chargeUl" style="width:80%;">
23
+                        <p style="width:40%;border-right:1px solid #000;">明细名称</p>
24
+                        <p style="width:15%;border-right:1px solid #000;">规格</p>
25
+                        <p style="width:15%;border-right:1px solid #000;">数量</p>
26
+                        <p style="width:15%;border-right:1px solid #000;">单价</p>
27
+                        <p style="width:15%;">金额</p>
42 28
                     </div>
43
-                    <div class="chargeUl" style="border-top:1px solid #000;">
44
-                        <p style="width:50%;">个人账号</p>
45
-                        <p style="width:50%;"></p>
29
+                </div>
30
+                <div style="display:flex;justify-content: space-between;">
31
+                    <div style="width:20%;">
32
+                        <div class="chargeUl" v-for="(item,index) in result.transBody.outputlist2" :key="index">
33
+                            <p style="width:50%;">{{getItemName(item.aka111)}}</p>
34
+                            <p style="width:50%;">{{item.bka058}}</p>
35
+                        </div>
36
+                        <div class="chargeUl" style="border-top:1px solid #000;">
37
+                            <p style="width:50%;">费用合计</p>
38
+                            <p style="width:50%;">{{result.transBody.akc264}}</p>
39
+                        </div>
40
+                        <div class="chargeUl" style="border-top:1px solid #000;">
41
+                            <p style="width:50%;">记账支付</p>
42
+                            <p style="width:50%;">{{result.transBody.akb068}}</p>
43
+                        </div>
44
+                        <div class="chargeUl" style="border-top:1px solid #000;">
45
+                            <p style="width:50%;">个人账号</p>
46
+                            <p style="width:50%;">{{result.transBody.akc264}}</p>
47
+                        </div>
48
+                        <div class="chargeUl" style="border-top:1px solid #000;border-bottom:1px solid #000;">
49
+                            <p style="width:50%;">现金支付</p>
50
+                            <p style="width:50%;">{{result.transBody.akb067}}</p>
51
+                        </div>
46 52
                     </div>
47
-                    <div class="chargeUl" style="border-top:1px solid #000;border-bottom:1px solid #000;">
48
-                        <p style="width:50%;">现金支付</p>
49
-                        <p style="width:50%;">{{list.order_info.psn_cash_pay}}</p>
53
+                    <div style="width:80%;display:flex;height:300px;">
54
+
55
+                        <div style="border-left:1px solid #000;border-right:1px solid #000;width:40%;text-align:center;">
56
+                            <p v-for="(item,i) in name_arr" :key="i" class="chargeP">
57
+                                {{item}}</p>
58
+                        </div>
59
+                        <div style="border-right:1px solid #000;width:15%;text-align:center;">
60
+                            <p v-for="(item,y) in spec_arr" :key="y" class="chargeP">
61
+                                {{item}}</p>
62
+                        </div>
63
+                        <div style="border-right:1px solid #000;width:15%;text-align:center;">
64
+                            <p v-for="(item,z) in count_arr" :key="z" class="chargeP">
65
+                                {{item}}次</p>
66
+                        </div>
67
+                        <div style="border-right:1px solid #000;width:15%;text-align:center;">
68
+                            <p v-for="(item,f) in price_arr" :key="f" class="chargeP">{{item}}</p>
69
+                        </div>
70
+                        <div style="width:15%;text-align:center;">
71
+                            <p v-for="(item,d) in total_arr" :key="d" class="chargeP">{{item}}</p>
72
+                        </div>
50 73
                     </div>
51 74
                 </div>
52
-                <div style="width:80%;display:flex;height:300px;">
53 75
 
54
-                    <div style="border-left:1px solid #000;border-right:1px solid #000;width:40%;text-align:center;">
55
-                        <p v-for="(item,i) in prescription[0].advices" :key="i" class="chargeP">{{item.advice_name}}</p>
56
-                    </div>
57
-                    <div style="border-right:1px solid #000;width:15%;text-align:center;">
58
-                        <p v-for="(item,y) in prescription[0].advices" :key="y" class="chargeP">{{item.advice_desc}}</p>
76
+            </div>
77
+            <div class="moneyBox">
78
+                <p>实收金:{{result.transBody.akc264}}</p>
79
+                <p>记账前金额:{{0.00}}</p>
80
+                <p>扣款金额:{{0.00}}</p>
81
+                <p>记账后金额:{{0.00}}</p>
82
+                <p>找赎金:{{0.00}}</p>
83
+            </div>
84
+            <div class="actionBar">
85
+                <div>收费员:{{doctor_name}}</div>
86
+                <div>日期:{{this.$route.query.record_date}}</div>
87
+            </div>
88
+        </div>
89
+
90
+        <div v-else>
91
+            <div class="printTitle">{{orgname}}&nbsp;&nbsp;医药费收据及收费项目清单</div>
92
+            <div class="infoMain">
93
+                <div class="infoP">医院(药店)编号:</div>
94
+                <div class="infoP">名称:{{orgname}}</div>
95
+                <div class="infoP">医生工号:</div>
96
+                <div class="infoP">门诊流水号:</div>
97
+                <div class="infoP">科别:{{list.p_info.departments?list.p_info.departments:''}}</div>
98
+                <div class="infoP">处方单据号:</div>
99
+                <div class="infoP">姓名:{{patient.name}}</div>
100
+                <div class="infoP">医疗账号:</div>
101
+                <div class="infoP">医疗类别:普通</div>
102
+            </div>
103
+            <div class="chargeBox">
104
+                <div style="display:flex;justify-content: space-between;border-bottom:1px solid #000;">
105
+                    <div class="chargeUl" style="width:20%;">
106
+                        <p style="width:50%;border-right:1px solid #000;">费用类型</p>
107
+                        <p style="width:50%;border-right:1px solid #000;">金额</p>
59 108
                     </div>
60
-                    <div style="border-right:1px solid #000;width:15%;text-align:center;">
61
-                        <p v-for="(item,z) in prescription[0].advices" :key="z" class="chargeP">{{item.single_dose}}个</p>
109
+                    <div class="chargeUl" style="width:80%;" >
110
+                        <p style="width:40%;border-right:1px solid #000;">明细名称</p>
111
+                        <p style="width:15%;border-right:1px solid #000;">规格</p>
112
+                        <p style="width:15%;border-right:1px solid #000;">数量</p>
113
+                        <p style="width:15%;border-right:1px solid #000;">单价</p>
114
+                        <p style="width:15%;">金额</p>
62 115
                     </div>
63
-                    <div style="border-right:1px solid #000;width:15%;text-align:center;">
64
-                        <p v-for="(item,f) in prescription[0].advices" :key="f" class="chargeP">{{item.price}}</p>
116
+                </div>
117
+                <div style="display:flex;justify-content: space-between;">
118
+                    <div style="width:20%;">
119
+                        <div class="chargeUl" v-for="(item,index) in 1" :key="index">
120
+                            <p style="width:50%;">材料费</p>
121
+                            <p style="width:50%;"></p>
122
+                        </div>
123
+                        <div class="chargeUl" style="border-top:1px solid #000;">
124
+                            <p style="width:50%;">费用合计</p>
125
+                            <p style="width:50%;">{{list.order_info.medfee_sumamt?list.order_info.medfee_sumamt:''}}</p>
126
+                        </div>
127
+                        <div class="chargeUl" style="border-top:1px solid #000;">
128
+                            <p style="width:50%;">记账支付</p>
129
+                            <p style="width:50%;"></p>
130
+                        </div>
131
+                        <div class="chargeUl" style="border-top:1px solid #000;">
132
+                            <p style="width:50%;">个人账号</p>
133
+                            <p style="width:50%;"></p>
134
+                        </div>
135
+                        <div class="chargeUl" style="border-top:1px solid #000;border-bottom:1px solid #000;">
136
+                            <p style="width:50%;">现金支付</p>
137
+                            <p style="width:50%;">{{list.order_info.psn_cash_pay}}</p>
138
+                        </div>
65 139
                     </div>
66
-                    <div style="width:15%;text-align:center;">
67
-                        <p v-for="(item,d) in prescription[0].advices" :key="d" class="chargeP">{{item.single_dose * item.price}}</p>
140
+                    <div style="width:80%;display:flex;height:300px;">
141
+
142
+                        <div style="border-left:1px solid #000;border-right:1px solid #000;width:40%;text-align:center;">
143
+                            <p v-for="(item,i) in prescription[0].advices" :key="i" class="chargeP">
144
+                                {{item.advice_name}}</p>
145
+                        </div>
146
+                        <div style="border-right:1px solid #000;width:15%;text-align:center;">
147
+                            <p v-for="(item,y) in prescription[0].advices" :key="y" class="chargeP">
148
+                                {{item.advice_desc}}</p>
149
+                        </div>
150
+                        <div style="border-right:1px solid #000;width:15%;text-align:center;">
151
+                            <p v-for="(item,z) in prescription[0].advices" :key="z" class="chargeP">
152
+                                {{item.single_dose}}个</p>
153
+                        </div>
154
+                        <div style="border-right:1px solid #000;width:15%;text-align:center;">
155
+                            <p v-for="(item,f) in prescription[0].advices" :key="f" class="chargeP">{{item.price}}</p>
156
+                        </div>
157
+                        <div style="width:15%;text-align:center;">
158
+                            <p v-for="(item,d) in prescription[0].advices" :key="d" class="chargeP">{{item.single_dose *
159
+                                item.price}}</p>
160
+                        </div>
68 161
                     </div>
69 162
                 </div>
70
-            </div>
71 163
 
72
-        </div>
73
-        <div class="moneyBox">
74
-            <p>实收金:{{list.order_info.medfee_sumamt?list.order_info.medfee_sumamt:''}}</p>
75
-            <p>记账前金额:{{list.order_info.preselfpay_amt?list.order_info.preselfpay_amt:""}}</p>
76
-            <p>扣款金额:</p>
77
-            <p>记账后金额:</p>
78
-            <p>找赎金:</p>
79
-        </div>
80
-        <div class="actionBar">
81
-            <div>收费员:</div>
82
-            <div>日期:{{this.$route.query.record_date}}</div>
164
+            </div>
165
+            <div class="moneyBox">
166
+                <p>实收金:{{list.order_info.medfee_sumamt?list.order_info.medfee_sumamt:''}}</p>
167
+                <p>记账前金额:{{list.order_info.preselfpay_amt?list.order_info.preselfpay_amt:''}}</p>
168
+                <p>扣款金额:</p>
169
+                <p>记账后金额:</p>
170
+                <p>找赎金:</p>
171
+            </div>
172
+            <div class="actionBar">
173
+                <div>收费员:{{}}</div>
174
+                <div>日期:{{this.$route.query.record_date}}</div>
175
+            </div>
83 176
         </div>
84 177
     </div>
178
+
179
+
85 180
 </template>
86 181
 <script>
87
- import { getChargePrint } from "@/api/project/project"
88
-export default {
89
-    data(){
90
-      return{
91
-          list:{},
92
-          prescription:[],
93
-          patient:{},
94
-          orgname:""
182
+  import axios from 'axios'
183
+  import { getChargePrint } from '@/api/project/project'
184
+
185
+  export default {
186
+    data() {
187
+      return {
188
+        list: {},
189
+        prescription: [],
190
+        patient: {},
191
+        orgname: '',
192
+
193
+        result:{},
194
+        org_code:"",
195
+        patient_name:"",
196
+        doctor_code:"",
197
+        doctor_name:"",
198
+
199
+        name_arr:[],
200
+        spec_arr:[],
201
+        count_arr:[],
202
+        price_arr:[],
203
+        total_arr:[],
204
+
205
+
95 206
       }
96 207
     },
97
-    props:{
98
-        paramsObj:Object
208
+    props: {
209
+      paramsObj: Object
99 210
     },
100
-    methods:{
101
-       getChargePrint(record_date,patient_id,prescription_id){
102
-           var params = {
103
-              record_date:record_date,
104
-              patient_id:patient_id,
105
-              prescription_id:prescription_id
106
-           }
107
-           console.log("params",params)
108
-         getChargePrint(params).then(response=>{
109
-            if(response.data.state == 1){
110
-               var list = response.data.data.list
111
-               console.log("list9999999999",list)
112
-               this.list = list
113
-               var prescription = response.data.data.prescription
114
-               console.log("prescription",prescription)
115
-               this.prescription = prescription
116
-               var patient = response.data.data.patient
117
-               console.log("patient",patient)
118
-               this.patient  = patient
119
-               var histpatient =   response.data.data.hisPatient
120
-               console.log("hispatient",histpatient)
121
-            }
122
-         })
123
-       }
211
+    methods: {
212
+      getItemName(number){
213
+        switch (number) {
214
+          case "01":
215
+            return "床位费"
216
+            break
217
+          case "02":
218
+            return "西药费"
219
+
220
+            break
221
+          case "03":
222
+            return "中药费"
223
+
224
+            break
225
+          case "04":
226
+            return "中成药费"
227
+
228
+            break
229
+          case "05":
230
+            return "中草药费"
231
+
232
+            break
233
+          case "06":
234
+            return "检查费"
235
+
236
+            break
237
+          case "07":
238
+            return "治疗费"
239
+
240
+            break
241
+          case "08":
242
+            return "放射费"
243
+
244
+            break
245
+          case "09":
246
+            return "手术费"
247
+
248
+            break
249
+          case "10":
250
+            return "化验费"
251
+
252
+            break
253
+          case "11":
254
+            return "输血费"
255
+
256
+            break
257
+          case "12":
258
+            return "输氧费"
259
+
260
+
261
+            break
262
+          case "13":
263
+            return "其它费"
264
+
265
+            break
266
+          case "14":
267
+            return "麻醉费"
268
+
269
+            break
270
+          case "15":
271
+            return "材料费"
272
+
273
+            break
274
+          case "16":
275
+            return "特殊检查费"
276
+
277
+            break
278
+          case "17":
279
+            return "特殊治疗费"
280
+
281
+            break
282
+          case "18":
283
+            return "诊疗费(诊查费)"
284
+
285
+            break
286
+          case "19":
287
+            return "护理费"
288
+
289
+            break
290
+          case "20":
291
+            return "诊金"
292
+
293
+            break
294
+          case "21":
295
+            return "检查费(CT)"
296
+
297
+            break
298
+          case "22":
299
+            return "检查费(MRT)"
300
+
301
+            break
302
+          case "23":
303
+            return "检查费(其他)"
304
+
305
+            break
306
+          case "24":
307
+            return "特需服务费"
308
+
309
+            break
310
+          case "25":
311
+            return "杂费"
312
+
313
+            break
314
+          case "26":
315
+            return "挂号费"
316
+            break
317
+
318
+        }
319
+
320
+
321
+      },
322
+      getChargePrint(record_date, patient_id, prescription_id) {
323
+        var params = {
324
+          record_date: record_date,
325
+          patient_id: patient_id,
326
+          prescription_id: prescription_id
327
+        }
328
+        console.log('params', params)
329
+        getChargePrint(params).then(response => {
330
+          if (response.data.state == 1) {
331
+            var list = response.data.data.list
332
+            console.log('list9999999999', list)
333
+            this.list = list
334
+            var prescription = response.data.data.prescription
335
+            console.log('prescription', prescription)
336
+            this.prescription = prescription
337
+            var patient = response.data.data.patient
338
+            console.log('patient', patient)
339
+            this.patient = patient
340
+            var histpatient = response.data.data.hisPatient
341
+            console.log('hispatient', histpatient)
342
+          }
343
+        })
344
+      }
124 345
     },
125
-    created(){
126
-       var record_date =  this.paramsObj.record_date
127
-       console.log("record_date",record_date)
128
-       var patient_id = this.paramsObj.patient_id
129
-       console.log("patient_id",patient_id)
130
-       var prescription_id = this.paramsObj.prescription_id
131
-       this.getChargePrint(record_date,patient_id,prescription_id)
132
-       var xtuser = this.$store.getters.xt_user
133
-       this.orgname = xtuser.org.org_name
346
+    created() {
347
+
348
+      if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 9538) {
349
+        var form = {
350
+          'order_id': this.paramsObj.order_id,
351
+          'patient_id': this.paramsObj.patient_id,
352
+          'record_time': this.paramsObj.record_date,
353
+          'admin_user_id': this.$store.getters.xt_user.user.id
354
+        }
355
+        var that = this
356
+        axios.get('http://127.0.0.1:9532/sz/api/settle/query', {
357
+          params: form
358
+        })
359
+          .then(function(response) {
360
+            if (response.data.state == 0) {
361
+              that.$message.error(response.data.msg)
362
+              return false
363
+            } else {
364
+              if (response.data.data.failed_code == -10) {
365
+                that.$message.error(response.data.data.msg)
366
+              } else {
367
+                this.result = response.data.data.res
368
+
369
+                this.org_code = response.data.data.org_code
370
+                this.patient_name = response.data.data.patient_name
371
+                this.doctor_code = response.data.data.doctor_code
372
+                this.doctor_name = response.data.data.doctor_name
373
+                this.name_arr = []
374
+                this.spec_arr = []
375
+                this.count_arr = []
376
+                this.price_arr = []
377
+                this.total_arr = []
378
+                for(let i = 0;i < this.result.transBody.outputlist1.length; i++){
379
+                  this.name_arr.push(this.result.transBody.outputlist1[i].ake006)
380
+                  this.spec_arr.push(this.result.transBody.outputlist1[i].aka074)
381
+                  this.count_arr.push(this.result.transBody.outputlist1[i].akc226)
382
+                  this.price_arr.push(this.result.transBody.outputlist1[i].akc225)
383
+                  this.total_arr.push(this.result.transBody.outputlist1[i].akc264)
384
+                }
385
+
386
+
387
+
388
+
389
+
390
+
391
+              }
392
+
393
+            }
394
+          })
395
+          .catch(function(error) {
396
+
397
+          })
398
+
399
+      } else {
400
+        var record_date = this.paramsObj.record_date
401
+        console.log('record_date', record_date)
402
+        var patient_id = this.paramsObj.patient_id
403
+        console.log('patient_id', patient_id)
404
+        var prescription_id = this.paramsObj.prescription_id
405
+        this.getChargePrint(record_date, patient_id, prescription_id)
406
+        var xtuser = this.$store.getters.xt_user
407
+        this.orgname = xtuser.org.org_name
408
+
409
+      }
134 410
 
135 411
     },
136
-    watch:{
137
-        paramsObj:{//深度监听,可监听到对象、数组的变化
138
-        handler(val, oldVal){
139
-            this.paramsObj = val
140
-            this.patient_id = this.paramsObj.patient_id
141
-            var record_date = this.paramsObj.record
142
-            this.record_date = record_date
143
-            var prescription_id = this.paramsObj.prescription_id
144
-            this.prescription_id = prescription_id
412
+    watch: {
413
+      paramsObj: {//深度监听,可监听到对象、数组的变化
414
+        handler(val, oldVal) {
415
+          this.paramsObj = val
416
+          this.patient_id = this.paramsObj.patient_id
417
+          var record_date = this.paramsObj.record
418
+          this.record_date = record_date
419
+          var prescription_id = this.paramsObj.prescription_id
420
+          this.prescription_id = prescription_id
145 421
 
146 422
         },
147
-        deep:true
148
-        }
423
+        deep: true
424
+      }
149 425
     }
150
-}
426
+  }
151 427
 </script>
152 428
 
153 429
 
154 430
 <style lang="scss" scoped>
155
-.prescription-print{
156
-    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
157
-    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
158
-    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
159
-    margin-bottom: 20px;
160
-    padding:20px 10px;
161
-}
162
-.printTitle{
163
-    font-size: 22px;
164
-    text-align: center;
165
-    font-weight: bold;
166
-}
167
-.infoMain{
168
-    display: flex;
169
-    flex-wrap: wrap;
170
-    padding:0 10px;
171
-    margin-top:10px;
172
-}
173
-.infoMain .infoP{
174
-    width: 33%;
175
-    line-height: 24px;
176
-}
177
-.chargeBox{
178
-    border: 1px solid #000;
179
-}
180
-.chargeUl{
181
-    display:flex;
182
-    justify-content: space-between;
183
-    text-align: center;
184
-}
185
-.chargeUl p{
186
-    height:40px;
187
-    line-height: 40px;
188
-}
189
-.chargeP{
190
-    height:40px;
191
-    line-height: 40px;
192
-}
193
-.moneyBox{
194
-    display: flex;
195
-    justify-content: space-between;
196
-    padding: 0 10px;
197
-    background: #eee;
198
-    height: 40px;
199
-    align-items: center;
200
-    border:1px solid #000;
201
-    border-top:none
202
-}
203
-.actionBar{
204
-    display: flex;
205
-    justify-content: space-between;
206
-    line-height: 24px;
207
-    padding:0 10px;
208
-}
209
-.actionBar div{
210
-    width:150px;
211
-}
431
+    .prescription-print {
432
+        -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
433
+        -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
434
+        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
435
+        margin-bottom: 20px;
436
+        padding: 20px 10px;
437
+    }
438
+
439
+    .printTitle {
440
+        font-size: 22px;
441
+        text-align: center;
442
+        font-weight: bold;
443
+    }
444
+
445
+    .infoMain {
446
+        display: flex;
447
+        flex-wrap: wrap;
448
+        padding: 0 10px;
449
+        margin-top: 10px;
450
+    }
451
+
452
+    .infoMain .infoP {
453
+        width: 33%;
454
+        line-height: 24px;
455
+    }
456
+
457
+    .chargeBox {
458
+        border: 1px solid #000;
459
+    }
460
+
461
+    .chargeUl {
462
+        display: flex;
463
+        justify-content: space-between;
464
+        text-align: center;
465
+    }
466
+
467
+    .chargeUl p {
468
+        height: 40px;
469
+        line-height: 40px;
470
+    }
471
+
472
+    .chargeP {
473
+        height: 40px;
474
+        line-height: 40px;
475
+    }
476
+
477
+    .moneyBox {
478
+        display: flex;
479
+        justify-content: space-between;
480
+        padding: 0 10px;
481
+        background: #eee;
482
+        height: 40px;
483
+        align-items: center;
484
+        border: 1px solid #000;
485
+        border-top: none
486
+    }
487
+
488
+    .actionBar {
489
+        display: flex;
490
+        justify-content: space-between;
491
+        line-height: 24px;
492
+        padding: 0 10px;
493
+    }
494
+
495
+    .actionBar div {
496
+        width: 150px;
497
+    }
212 498
 </style>

+ 3 - 2
src/xt_pages/outpatientDoctorStation/recordTemplate/printOne.vue 查看文件

@@ -12,8 +12,9 @@
12 12
         </div>
13 13
         <div class="infoTitle">
14 14
             <div>婚姻状况:
15
-              <span v-if="patient.marital_status == 1">已婚 </span>
16
-              <span v-if="patient.marital_status == 2">未婚 </span>
15
+              <span v-if="patient.marital_status == 1">未婚</span>
16
+              <span v-if="patient.marital_status == 2">已婚</span>
17
+              <span v-if="patient.marital_status == 3">离异</span>
17 18
             </div>
18 19
             <div>职业:{{getProfession(patient.profession)?getProfession(patient.profession):''}}</div>
19 20
         </div>

+ 113 - 14
src/xt_pages/role/admin.vue 查看文件

@@ -2,16 +2,25 @@
2 2
   <div class="main-contain">
3 3
     <div class="position">
4 4
       <bread-crumb :crumbs="crumbs"></bread-crumb>
5
-      <!-- <router-link to="/role/admin/create"> -->
6
-      <el-button
5
+     
6
+       <div style="position: fixed;margin-left:950px">
7
+        <el-button
8
+          type="primary"
9
+          size="small"
10
+          icon="el-icon-circle-plus-outline"
11
+          style="float:left"
12
+          @click="openForm(0)">新增</el-button>
13
+     </div>
14
+      <!-- <el-button
7 15
         type="primary"
8 16
         size="small"
9
-        icon="el-icon-circle-plus-outline"
10
-        style="float:right;"
11
-        @click="openForm(0)"
12
-        >新增</el-button
13
-      >
14
-      <!-- </router-link> -->
17
+        @click="toLogin"
18
+        >医药师登记</el-button> -->
19
+        <el-button
20
+        type="primary"
21
+        size="small"
22
+        @click="BatchDelete"
23
+        >医药师登记</el-button>
15 24
     </div>
16 25
     <div class="app-container">
17 26
       <el-table
@@ -25,7 +34,13 @@
25 34
         border
26 35
         :data="admins"
27 36
         v-loading="is_loading_admins"
28
-      >
37
+        @selection-change="handleSelectionChange"
38
+      > 
39
+        <el-table-column
40
+              align="center"
41
+              type="selection"
42
+              width="55">
43
+        </el-table-column>  
29 44
         <el-table-column
30 45
           label="用户名"
31 46
           prop="user_name"
@@ -71,7 +86,7 @@
71 86
             </div>
72 87
           </template>
73 88
         </el-table-column>
74
-        <el-table-column label="操作" width="120" align="center">
89
+        <el-table-column label="操作" width="240" align="center">
75 90
           <template slot-scope="scope">
76 91
             <!-- <router-link :to="{ path:'/role/admin/edit', query:{ id:scope.row.user_id }}"> -->
77 92
             <el-tooltip
@@ -124,6 +139,12 @@
124 139
                 @click="recoverAdminAction(scope.row)"
125 140
               ></el-button>
126 141
             </el-tooltip>
142
+            <span v-if="scope.row.user_type == 2">
143
+              <el-button type="primary" size="small" icon="el-icon-refresh-left" @click="toReturn(scope.row.user_id,scope.row.is_mark)">
144
+                    <span v-if="scope.row.is_mark ==0">已登记</span>
145
+                    <span v-if="scope.row.is_mark ==1">撤销</span>
146
+              </el-button>
147
+            </span>
127 148
           </template>
128 149
         </el-table-column>
129 150
       </el-table>
@@ -151,7 +172,7 @@ import { getRoles } from "@/api/role/role";
151 172
 import { parseTime } from "@/utils";
152 173
 import BreadCrumb from "@/xt_pages/components/bread-crumb";
153 174
 import AdminInfoForm from "./components/AdminInfoForm";
154
-
175
+import axios from 'axios'
155 176
 export default {
156 177
   name: "adminManage",
157 178
   data() {
@@ -168,8 +189,8 @@ export default {
168 189
       is_exist_role: false,
169 190
       org: null,
170 191
       isSubSuperAdmin: false,
171
-
172
-      local_user_id: 0
192
+      local_user_id: 0,
193
+      selectDrug:[]
173 194
     };
174 195
   },
175 196
   components: {
@@ -265,6 +286,7 @@ export default {
265 286
           console.log(resp);
266 287
           if (resp.state === 1) {
267 288
              var admindata = resp.data.admins
289
+          
268 290
             this.admins.push(...admindata);
269 291
             this.admin_total_count = resp.data.total_count;
270 292
           } else {
@@ -341,7 +363,84 @@ export default {
341 363
     },
342 364
     pageChange: function(nextPage) {
343 365
       this.requestAdminsWithPage(nextPage);
344
-    }
366
+    },
367
+  //  toLogin(){
368
+  //     var that = this
369
+  //     axios.get('http://127.0.0.1:9532/sz/api/doctor/get').then(function(response) {
370
+  //     if (response.data.state == 0) {
371
+  //         that.$message.error(response.data.msg)
372
+  //         return false
373
+  //       } else {
374
+  //         that.$message({ message: '登记成功', type: 'success' })
375
+  //         }
376
+  //        }).catch(function(error) {
377
+  //     })
378
+  //   },
379
+
380
+   BatchDelete() {
381
+      if (this.selectDrug.length == 0) {
382
+        this.$message.error("请选择要登记的信息");
383
+        return false;
384
+      }
385
+      this.$confirm(
386
+        "确认要登记所选记录吗? <br>",
387
+        "备案提示",
388
+        {
389
+          dangerouslyUseHTMLString: true,
390
+          confirmButtonText: "确定",
391
+          cancelButtonText: "取消",
392
+          type: "warning"
393
+        }
394
+      ).then(() => {
395
+        var ids = [];
396
+        var idMap = {};
397
+        console.log("3333333",this.selectDrug)
398
+        for (const index in this.selectDrug) {
399
+          ids.push(this.selectDrug[index].user_id);
400
+          idMap[this.selectDrug[index].user_id] = this.selectDrug[index].user_id;
401
+        }
402
+        console.log('ids222222222',ids)
403
+        var idss = ids.join(',')
404
+        let params = {
405
+          ids:idss
406
+        }
407
+     
408
+        var that = this
409
+        axios.get('http://127.0.0.1:9532/sz/api/doctor/get',{ params: params }).then(function(response) {
410
+         if (response.data.state == 0) {
411
+               that.$message.error(response.data.msg)
412
+               return false
413
+            } else {
414
+              that.$message({ message: '操作成功', type: 'success' })
415
+              that.adminMainView()
416
+             }
417
+           }).catch(function(error) {
418
+        })
419
+       });
420
+     },
421
+     toReturn(id,is_mark){
422
+       var that = this
423
+         let params = {
424
+           'id':id,
425
+           "is_mark":is_mark,
426
+        }
427
+        console.log("params222222222",params)
428
+         axios.get('http://127.0.0.1:9532/sz/api/medical/get',{params:params}).then(function(response) {
429
+          if (response.data.state == 0) {
430
+               that.$message.error(response.data.msg)
431
+               return false
432
+            } else {
433
+              // that.$message({ message: '操作成功', type: 'success' })
434
+              this.$message.error(response.data.msg)
435
+              that.adminMainView()
436
+             }
437
+           }).catch(function(error) {
438
+        })
439
+     },
440
+
441
+   handleSelectionChange(val) {
442
+      this.selectDrug = val;
443
+    },
345 444
   },
346 445
   watch: {
347 446
     should_update_admins(should_change) {

文件差異過大導致無法顯示
+ 798 - 78
src/xt_pages/role/components/AdminInfoForm.vue


+ 1 - 0
src/xt_pages/role/components/EditAdminInfo.vue 查看文件

@@ -217,6 +217,7 @@ export default {
217 217
                         modifyAdmin(this.form.id, this.form.name, this.form.user_type, this.form.user_title, this.form.role, this.form.intro).then(rs => {
218 218
                             this.loading = false
219 219
                             var resp = rs.data
220
+                            
220 221
                             if (resp.state === 1) {
221 222
                                 this.$store.dispatch('DidChangeAdmins')
222 223
                                 var _this = this

+ 52 - 5
src/xt_pages/stock/Dialog/goodInfoDailog.vue 查看文件

@@ -1,5 +1,5 @@
1 1
 <template>
2
-  <el-dialog width="854px"
2
+  <el-dialog width="870px"
3 3
              :title="titles"
4 4
              :visible.sync="visible"
5 5
              :close-on-click-modal="isClose"
@@ -131,6 +131,36 @@
131 131
               </el-checkbox-group>
132 132
             </el-form-item>
133 133
 
134
+            <el-form-item label="社保目录编码:" >
135
+               <el-input v-model="form.social_security_directory_code" style="width:180px"></el-input>
136
+            </el-form-item>
137
+
138
+            <el-form-item label="生产地类别:">
139
+              <el-select v-model="form.production_type" style="width:160px;" placeholder="请选择">
140
+                <el-option
141
+                  v-for="item in options"
142
+                  :key="item.value"
143
+                  :label="item.label"
144
+                  :value="item.value">
145
+                </el-option>
146
+              </el-select>
147
+            </el-form-item>
148
+
149
+          
150
+
151
+            <el-form-item label="特殊医用材料标志:">
152
+              <el-select v-model="form.special_medical " style="width:160px;" placeholder="请选择">
153
+                <el-option
154
+                  v-for="item in options"
155
+                  :key="item.value"
156
+                  :label="item.label"
157
+                  :value="item.value">
158
+                </el-option>
159
+              </el-select>
160
+            </el-form-item>
161
+
162
+            
163
+
134 164
            <el-form-item label="经销商 : " prop="manufacturer" style="width:100%">
135 165
              
136 166
                <el-select v-model="form.dealer" style="width:100%;" filterable placeholder="请选择">
@@ -259,6 +289,13 @@
259 289
           value: '2',
260 290
           label: '否'
261 291
         }],
292
+        optionsOne: [{
293
+          value: '1',
294
+          label: '国内'
295
+        }, {
296
+          value: '2',
297
+          label: '国外'
298
+        }],
262 299
         good_unit: '',
263 300
         isClose: false,
264 301
         good_status: [],
@@ -297,7 +334,10 @@
297 334
           is_statistics_work: '',
298 335
           sort: '',
299 336
           is_doctor_use: '',
300
-          good_number: ''
337
+          good_number: '',
338
+          social_security_directory_code:"",
339
+          production_type:"",
340
+          special_medical:"",
301 341
         },
302 342
 
303 343
         rules: {
@@ -324,8 +364,13 @@
324 364
             { required: true, message: '请输入零价', trigger: 'blur' }
325 365
           ], stock_warn_count: [
326 366
             { required: true, message: '请输入库存警戒', trigger: 'blur' }
367
+          ],social_security_directory_code:[
368
+            {required:true,message:"请填写社保目录编码",trigger:'blur'}
369
+          ],production_type:[
370
+            {required:true,message:"请填写生产地类别",trigger:"blur"}
371
+          ],special_medical:[
372
+            {required:true,message:"请填写特殊医院材料标志",trigger:"blur"}
327 373
           ]
328
-
329 374
         },
330 375
         dealer:[]
331 376
       }
@@ -422,7 +467,7 @@
422 467
         })
423 468
       },
424 469
       getValue: function() {
425
-        console.log("生产吃",this.form.manufacturer)
470
+        
426 471
         const form = {}
427 472
         form['specification_name'] = this.form.specification_name
428 473
         form['good_unit'] = this.form.good_unit
@@ -459,7 +504,9 @@
459 504
         form['agent'] = this.form.agent
460 505
         form['good_number'] = this.form.good_number
461 506
         form['good_status'] = this.good_status.join(',')
462
-
507
+        form['social_security_directory_code'] = this.form.social_security_directory_code
508
+        form['production_type'] = this.form.production_type
509
+        form['special_medical'] = this.form.special_medical
463 510
         return form
464 511
       }, changeSelected: function(val) {
465 512
         console.log(val)

+ 5 - 5
src/xt_pages/workforce/remind_print.vue 查看文件

@@ -59,8 +59,8 @@
59 59
                   {{modeOptions[main_collection.mode_id].name}}
60 60
                 </td>
61 61
                 <td :width="td_1_width">
62
-                  <span v-if="org_id!=9987">{{main_collection.prescription.dialyzer_perfusion_apparatus}}</span> 
63
-                  {{main_collection.prescription.dialysis_dialyszers}} 
62
+                  <span v-if="org_id!=9987">{{main_collection.prescription.dialyzer_perfusion_apparatus}}</span>
63
+                  {{main_collection.prescription.dialysis_dialyszers}}
64 64
                   <span v-if="main_collection.prescription.dialysis_dialyszers!=''&& main_collection.prescription.dialysis_irrigation!='' ">/</span>
65 65
                   <span v-if="main_collection.prescription.dialysis_irrigation!=''">{{main_collection.prescription.dialysis_irrigation}}</span>
66 66
 
@@ -128,7 +128,7 @@
128 128
       this.anticoagulants_confit = this.$store.getters.anticoagulants_confit
129 129
       this.week_type = this.$route.query.week_type
130 130
       this.week_time  = this.$route.query.week_time
131
-      
131
+
132 132
       const params = {
133 133
           week_type:this.week_type,
134 134
           week_time:this.week_time,
@@ -311,7 +311,7 @@
311 311
         }else{
312 312
           var str = year + "年" + month + "月" + day + "日  " + days;
313 313
           return str;
314
-        } 
314
+        }
315 315
       },
316 316
       compare(property) {
317 317
         return function (a, b) {
@@ -321,7 +321,7 @@
321 321
         }
322 322
       },
323 323
     }
324
-   
324
+
325 325
   }
326 326
 </script>
327 327