XMLWAN 3 anos atrás
pai
commit
8ff5de9742

+ 13 - 2
src/router/modules/patient.js Ver arquivo

139
     }
139
     }
140
   },
140
   },
141
   {
141
   {
142
-    path:"/patients/patients/:id/inspectionInfectious",
142
+    path: '/patients/patients/:id/inspectionInfectious',
143
     component: () => import('@/xt_pages/user/inspectionInfectious'),
143
     component: () => import('@/xt_pages/user/inspectionInfectious'),
144
     hidden: true,
144
     hidden: true,
145
     is_menu: false,
145
     is_menu: false,
148
       title: 'inspectionInfectious',
148
       title: 'inspectionInfectious',
149
       noCache: true
149
       noCache: true
150
     }
150
     }
151
-  
151
+  },
152
+  {
153
+    path: '/patients/patients/:id/templateSummary',
154
+    component: () => import('@/xt_pages/user/templateSummary'),
155
+    hidden: true,
156
+    is_menu: false,
157
+    name: 'templateSummary',
158
+    meta: {
159
+      title: 'templateSummary',
160
+      noCache: true
161
+    }
152
   },
162
   },
153
   {
163
   {
154
     path: '/patients/course',
164
     path: '/patients/course',
193
       noCache: true
203
       noCache: true
194
     }
204
     }
195
   }
205
   }
206
+
196
   ]
207
   ]
197
 }
208
 }

+ 2 - 2
src/xt_pages/data/template.vue Ver arquivo

46
         { label: this.$t("data_config.special_record"), key: "special_record" },
46
         { label: this.$t("data_config.special_record"), key: "special_record" },
47
         { label: this.$t("data_config.course_disease"), key: "course_disease" },
47
         { label: this.$t("data_config.course_disease"), key: "course_disease" },
48
         { label: this.$t("data_config.rescue_record"), key: "rescue_record" },
48
         { label: this.$t("data_config.rescue_record"), key: "rescue_record" },
49
-        // { label: this.$t("data_config.template_summary"), key: "template_summary" },
50
-        // { label: this.$t("data_config.template_plan"), key: "template_plan" }
49
+        { label: this.$t("data_config.template_summary"), key: "template_summary" },
50
+        { label: this.$t("data_config.template_plan"), key: "template_plan" }
51
       ],
51
       ],
52
       activeName: "education",
52
       activeName: "education",
53
       createdTimes: 0
53
       createdTimes: 0

+ 31 - 29
src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue Ver arquivo

1283
               })
1283
               })
1284
               var msg = response.data.data.msg
1284
               var msg = response.data.data.msg
1285
               if(msg == 1){
1285
               if(msg == 1){
1286
-                this.$message.error("无库存,请入库")
1287
-                return
1286
+                var exid = response.data.data.advice.id
1287
+                  if (response.data.data.advice.parent_id > 0) {
1288
+                    exid = response.data.data.advice.parent_id
1289
+                  }
1290
+                
1291
+                  this.currentRow.execution_state = 1
1292
+                  this.currentRow.execution_staff =
1293
+                    response.data.data.advice.execution_staff
1294
+                  this.currentRow.execution_time =
1295
+                    response.data.data.advice.execution_time
1296
+                  var alen = this.doctor_advices.length
1297
+
1298
+                  for (var index in this.doctor_advices) {
1299
+                    if (
1300
+                      this.doctor_advices[index].id == exid ||
1301
+                      this.doctor_advices[index].parent_id == exid
1302
+                    ) {
1303
+                      this.doctor_advices[index].execution_state = 1
1304
+                      this.doctor_advices[index].execution_staff =
1305
+                        response.data.data.advice.execution_staff
1306
+                      this.doctor_advices[index].execution_time =
1307
+                        response.data.data.advice.execution_time
1308
+                      // this.doctor_advices[index].checker = response.data.data.advice.checker;
1309
+                      break
1310
+                    }
1311
+                  }
1312
+                  this.execTimeDialogVisible = false
1313
+                  return false
1288
               }
1314
               }
1289
 
1315
 
1290
               if(msg == 2){
1316
               if(msg == 2){
1291
                 this.$message.error("库存不足,请入库")
1317
                 this.$message.error("库存不足,请入库")
1292
                 return
1318
                 return
1293
               }
1319
               }
1294
-              var exid = response.data.data.advice.id
1295
-              if (response.data.data.advice.parent_id > 0) {
1296
-                exid = response.data.data.advice.parent_id
1297
-              }
1298
-             
1299
-              this.currentRow.execution_state = 1
1300
-              this.currentRow.execution_staff =
1301
-                response.data.data.advice.execution_staff
1302
-              this.currentRow.execution_time =
1303
-                response.data.data.advice.execution_time
1304
-              var alen = this.doctor_advices.length
1305
-
1306
-              for (var index in this.doctor_advices) {
1307
-                if (
1308
-                  this.doctor_advices[index].id == exid ||
1309
-                  this.doctor_advices[index].parent_id == exid
1310
-                ) {
1311
-                  this.doctor_advices[index].execution_state = 1
1312
-                  this.doctor_advices[index].execution_staff =
1313
-                    response.data.data.advice.execution_staff
1314
-                  this.doctor_advices[index].execution_time =
1315
-                    response.data.data.advice.execution_time
1316
-                  // this.doctor_advices[index].checker = response.data.data.advice.checker;
1317
-                  break
1318
-                }
1320
+              if(msg == 3){
1321
+                this.$message.error("无库存,请入库")
1319
               }
1322
               }
1320
-              this.execTimeDialogVisible = false
1321
-              return false
1323
+              
1322
             }
1324
             }
1323
           })
1325
           })
1324
           .catch(() => {
1326
           .catch(() => {

+ 30 - 4
src/xt_pages/stock/cancelStockOrderAdd.vue Ver arquivo

157
                     v-for="(item,index) in numberList"
157
                     v-for="(item,index) in numberList"
158
                     :key="index"
158
                     :key="index"
159
                     :label="item.number"
159
                     :label="item.number"
160
-                    :value="item.number">
160
+                    :value="item.id">
161
                   </el-option>
161
                   </el-option>
162
               </el-select>
162
               </el-select>
163
               </el-form-item>
163
               </el-form-item>
314
       tableRules: {
314
       tableRules: {
315
         return_count: [
315
         return_count: [
316
           { required: true, message: "数量不能为空", trigge: "blur" }
316
           { required: true, message: "数量不能为空", trigge: "blur" }
317
-        ]
317
+        
318
+        ],
319
+        // price: [
320
+        //   { required: true, message: "单价不能为空", trigge: "blur" }
321
+        // ]
318
       },
322
       },
319
       ruleForm: {
323
       ruleForm: {
320
         manufacturer: [
324
         manufacturer: [
340
       dealer: [],
344
       dealer: [],
341
       goodType: [],
345
       goodType: [],
342
       goodInfo:[],
346
       goodInfo:[],
343
-      numberList:[]
347
+      numberList:[],
348
+      dealerList:[],
349
+      manufacturerList:[]
344
     };
350
     };
345
   },
351
   },
346
   methods: {
352
   methods: {
432
       tempObj["remark"] = ""
438
       tempObj["remark"] = ""
433
       tempObj["price"] = ""
439
       tempObj["price"] = ""
434
       tempObj["total"] = ""
440
       tempObj["total"] = ""
441
+      tempObj["warehouse_info_id"] =  0
435
       this.recordInfo.recordData.push(tempObj);
442
       this.recordInfo.recordData.push(tempObj);
436
     },
443
     },
437
     handleDelete: function(index, row) {
444
     handleDelete: function(index, row) {
539
             this.$message.success("请添加退库商品");
546
             this.$message.success("请添加退库商品");
540
             return;
547
             return;
541
           }
548
           }
549
+          console.log("hhhhh2h332",this.recordInfo.recordData)
550
+          for(let i=0;i<this.recordInfo.recordData.length;i++){
551
+            if(this.recordInfo.recordData[i].good_id == 0){
552
+               this.$message.error("耗材规格不能为空")
553
+               return
554
+            }
555
+
556
+            for(let j=0;j<this.numberList.length;j++){
557
+              if(this.recordInfo.recordData[i].number == this.numberList[j].id){
558
+                this.recordInfo.recordData[i].number = this.numberList[j].number
559
+                this.recordInfo.recordData[i].warehouse_info_id = this.numberList[j].id
560
+              }
561
+            }
562
+            
563
+          }
542
 
564
 
543
           const params = {
565
           const params = {
544
             cancelStock: this.recordInfo.recordData
566
             cancelStock: this.recordInfo.recordData
545
           };
567
           };
546
           console.log("params",params)
568
           console.log("params",params)
547
- 
569
+         
548
           postCancelStock(
570
           postCancelStock(
549
             params,
571
             params,
550
             this.return_time,
572
             this.return_time,
563
              }
585
              }
564
              if(msg == 2){
586
              if(msg == 2){
565
                this.$message.error("退库数量大于出库数量")
587
                this.$message.error("退库数量大于出库数量")
588
+             }
589
+              if(msg == 4){
590
+               this.$message.error("该批次退库数量大于入库数量")
566
              }
591
              }
567
              if(msg == 3){
592
              if(msg == 3){
568
                this.$notify({
593
                this.$notify({
693
     tempObj["remark"] = ""
718
     tempObj["remark"] = ""
694
     tempObj["price"] = ""
719
     tempObj["price"] = ""
695
     tempObj["total"] = ""
720
     tempObj["total"] = ""
721
+    tempObj["warehouse_info_id"] = 0
696
     this.recordInfo.recordData.push(tempObj);
722
     this.recordInfo.recordData.push(tempObj);
697
     this.GetConfigInfo();
723
     this.GetConfigInfo();
698
     this.propForm.goodUnit = this.$store.getters.good_unit;
724
     this.propForm.goodUnit = this.$store.getters.good_unit;

+ 44 - 8
src/xt_pages/stock/cancelStockOrderEdit.vue Ver arquivo

112
                 :prop="'recordData.' + scope.$index + '.return_count'"
112
                 :prop="'recordData.' + scope.$index + '.return_count'"
113
                 style="padding-top: 17px"
113
                 style="padding-top: 17px"
114
               >
114
               >
115
-               <el-select v-model="scope.row.number" filterable placeholder="请选择">
115
+               <el-select v-model="scope.row.number" filterable placeholder="请选择" >
116
                   <el-option
116
                   <el-option
117
                     v-for="(item,index) in numberList"
117
                     v-for="(item,index) in numberList"
118
                     :key="index"
118
                     :key="index"
119
                     :label="item.number"
119
                     :label="item.number"
120
-                    :value="item.number">
120
+                    :value="item.id">
121
                   </el-option>
121
                   </el-option>
122
               </el-select>
122
               </el-select>
123
               </el-form-item>
123
               </el-form-item>
277
         tableRules: {
277
         tableRules: {
278
           count: [
278
           count: [
279
             { required: true, message: '数量不能为空', trigge: 'blur' }
279
             { required: true, message: '数量不能为空', trigge: 'blur' }
280
-          ]
280
+          ],
281
+          // price: [
282
+          //   { required: true, message: '单价不能为空', trigge: 'blur' }
283
+          // ]
281
 
284
 
282
         },
285
         },
283
         ruleForm: {
286
         ruleForm: {
311
         goodList:[],
314
         goodList:[],
312
         manufacturerList:[],
315
         manufacturerList:[],
313
         dealerList:[],
316
         dealerList:[],
314
-        numberList:[]
317
+        numberList:[],
318
+        numberShow:true
315
       }
319
       }
316
     },
320
     },
317
     methods: {
321
     methods: {
395
         tempObj["register_account"] = ""
399
         tempObj["register_account"] = ""
396
         tempObj["remark"] = ""
400
         tempObj["remark"] = ""
397
         tempObj["price"] = ""
401
         tempObj["price"] = ""
402
+        tempObj["warehouse_info_id"] = 0
398
         this.recordInfo.recordData.push(tempObj)
403
         this.recordInfo.recordData.push(tempObj)
399
       }, handleDelete: function(index, row) {
404
       }, handleDelete: function(index, row) {
400
         if (row.id == 0) {
405
         if (row.id == 0) {
509
               array[i].price = array[i].price.toString()
514
               array[i].price = array[i].price.toString()
510
             }
515
             }
511
 
516
 
517
+            for(let i=0;i<this.recordInfo.recordData.length;i++){
518
+               if(this.recordInfo.recordData[i].good_id == 0){
519
+                  this.$message.error("耗材规格不能为空")
520
+                  return
521
+               }
522
+             for(let j=0;j<this.numberList.length;j++){
523
+                if(this.recordInfo.recordData[i].number == this.numberList[j].id){
524
+                  this.recordInfo.recordData[i].number = this.numberList[j].number
525
+                  this.recordInfo.recordData[i].warehouse_info_id = this.numberList[j].id
526
+                }
527
+             }
528
+            }
529
+
512
             const params = {
530
             const params = {
513
               'cancelStock': this.recordInfo.recordData
531
               'cancelStock': this.recordInfo.recordData
514
             }
532
             }
515
             console.log("parasm23232",params)
533
             console.log("parasm23232",params)
516
-         
534
+           
517
             editCancelStockInfo(params, this.return_time, this.$route.query.id, this.$route.query.type,this.form.manufacturer,this.form.dealer).then(response => {
535
             editCancelStockInfo(params, this.return_time, this.$route.query.id, this.$route.query.type,this.form.manufacturer,this.form.dealer).then(response => {
518
               if (response.data.state == 0) {
536
               if (response.data.state == 0) {
519
                 this.$message.error(response.data.msg)
537
                 this.$message.error(response.data.msg)
520
                 return false
538
                 return false
521
               } else {
539
               } else {
522
-                this.$message.success('退库成功')
523
-
524
-                this.$router.back(-1)
540
+                var msg =  response.data.data.msg
541
+                if (msg == 1){
542
+                    this.$message.error("该耗材无出库记录")
543
+                    return
544
+                }
545
+                if(msg == 2){
546
+                  this.$message.error("退库数量大于出库数量")
547
+                }
548
+                  if(msg == 4){
549
+                  this.$message.error("该批次退库数量大于入库数量")
550
+                }
551
+                if(msg == 3){
552
+                  this.$notify({
553
+                    title: "成功",
554
+                    message: "退库成功",
555
+                    type: "success",
556
+                    duration: 2000
557
+                  });
558
+                  this.recordInfo.recordData = [];
559
+                  this.$router.back(-1);
560
+                }        
525
               }
561
               }
526
             })
562
             })
527
           } else {
563
           } else {

+ 4 - 0
src/xt_pages/stock/drugs/cancelDrugStockOrderAdd.vue Ver arquivo

499
       tempObj["product_date"] = ""
499
       tempObj["product_date"] = ""
500
       tempObj["expiry_date"] = ""
500
       tempObj["expiry_date"] = ""
501
       tempObj["batch_number"] = ""
501
       tempObj["batch_number"] = ""
502
+      tempObj["max_unit"] = ""
502
       tempObj["batch_number_id"] = 0
503
       tempObj["batch_number_id"] = 0
503
       this.recordInfo.recordData.push(tempObj);
504
       this.recordInfo.recordData.push(tempObj);
504
     },
505
     },
598
             return;
599
             return;
599
           }
600
           }
600
           for(let i=0;i<this.recordInfo.recordData.length;i++){
601
           for(let i=0;i<this.recordInfo.recordData.length;i++){
602
+            this.recordInfo.recordData[i].price = this.recordInfo.recordData[i].price.toString()
601
              for(let j=0;j<this.numberList.length;j++){
603
              for(let j=0;j<this.numberList.length;j++){
602
                 if(this.recordInfo.recordData[i].batch_number == this.numberList[j].id){
604
                 if(this.recordInfo.recordData[i].batch_number == this.numberList[j].id){
603
                    this.recordInfo.recordData[i].batch_number = this.numberList[j].batch_number
605
                    this.recordInfo.recordData[i].batch_number = this.numberList[j].batch_number
604
                    this.recordInfo.recordData[i].batch_number_id = this.numberList[j].id
606
                    this.recordInfo.recordData[i].batch_number_id = this.numberList[j].id
607
+                 
605
                 }
608
                 }
606
              }
609
              }
607
           }
610
           }
756
     tempObj["expiry_date"] = ""
759
     tempObj["expiry_date"] = ""
757
     tempObj["batch_number"] = ""
760
     tempObj["batch_number"] = ""
758
     tempObj["batch_number_id"] = 0
761
     tempObj["batch_number_id"] = 0
762
+    tempObj["max_unit"] = ""
759
     this.unitList =  getDataConfig('hemodialysis','units')
763
     this.unitList =  getDataConfig('hemodialysis','units')
760
     console.log("单位",this.unitList)
764
     console.log("单位",this.unitList)
761
     this.recordInfo.recordData.push(tempObj);
765
     this.recordInfo.recordData.push(tempObj);

+ 1 - 1
src/xt_pages/stock/drugs/drugStockInOrder.vue Ver arquivo

858
          
858
          
859
      
859
      
860
         console.log("table",this.exportList)
860
         console.log("table",this.exportList)
861
-        return
861
+       
862
         const data = this.formatJson(filterVal, this.exportList)
862
         const data = this.formatJson(filterVal, this.exportList)
863
         excel.export_json_to_excel({
863
         excel.export_json_to_excel({
864
           header: tHeader,
864
           header: tHeader,

+ 2 - 2
src/xt_pages/stock/drugs/drugStockInOrderEdit.vue Ver arquivo

657
              }
657
              }
658
 
658
 
659
              this.recordInfo.recordData[i].last_price = this.recordInfo.recordData[i].last_price.toString()
659
              this.recordInfo.recordData[i].last_price = this.recordInfo.recordData[i].last_price.toString()
660
-            //  this.recordInfo.recordData[i].manufacturer = this.recordInfo.recordData[i].drug.manufacturer
660
+             this.recordInfo.recordData[i].price = this.recordInfo.recordData[i].last_price.toString()
661
             
661
             
662
             for(let j=0;j<this.manufacturerList.length;j++){
662
             for(let j=0;j<this.manufacturerList.length;j++){
663
               if(this.recordInfo.recordData[i].manufacturer == this.manufacturerList[j].manufacturer_name){
663
               if(this.recordInfo.recordData[i].manufacturer == this.manufacturerList[j].manufacturer_name){
676
             stockIn: this.recordInfo.recordData
676
             stockIn: this.recordInfo.recordData
677
           };
677
           };
678
           console.log("params22222222222",params)
678
           console.log("params22222222222",params)
679
-          
679
+         
680
           EditDrugWarehouse(
680
           EditDrugWarehouse(
681
             params,
681
             params,
682
             this.warehousing_time,
682
             this.warehousing_time,

+ 1 - 1
src/xt_pages/stock/stockBatchNumber.vue Ver arquivo

7
       <div class="cell clearfix">
7
       <div class="cell clearfix">
8
         耗材名称:{{this.$route.query.good_name}} &nbsp;
8
         耗材名称:{{this.$route.query.good_name}} &nbsp;
9
         <!-- 库存: {{getInCount(this.$route.query.id)- getOutCount(this.$route.query.id) - getAutoCount(this.$route.query.id) + getCancelCount(this.$route.query.id)}}{{this.$route.query.packing_unit}}&nbsp; -->
9
         <!-- 库存: {{getInCount(this.$route.query.id)- getOutCount(this.$route.query.id) - getAutoCount(this.$route.query.id) + getCancelCount(this.$route.query.id)}}{{this.$route.query.packing_unit}}&nbsp; -->
10
-         {{getStockCount(this.$route.query.id)}}
10
+        库存: {{getStockCount(this.$route.query.id)}}
11
         规格:{{this.$route.query.specification_name}} &nbsp;
11
         规格:{{this.$route.query.specification_name}} &nbsp;
12
         厂家:{{this.$route.query.manufacturer}} 
12
         厂家:{{this.$route.query.manufacturer}} 
13
       </div>
13
       </div>

+ 2 - 2
src/xt_pages/stock/stockQuery.vue Ver arquivo

114
          </template>
114
          </template>
115
        </el-table-column>
115
        </el-table-column>
116
 
116
 
117
-       <el-table-column label="退库数量" align="center">
117
+       <!-- <el-table-column label="退库数量" align="center">
118
          <template slot-scope="scope">
118
          <template slot-scope="scope">
119
            <span>{{getCancelCount(scope.row.good_id)}}{{scope.row.packing_unit}}</span>
119
            <span>{{getCancelCount(scope.row.good_id)}}{{scope.row.packing_unit}}</span>
120
 
120
 
121
          </template>
121
          </template>
122
        </el-table-column>
122
        </el-table-column>
123
-      
123
+       -->
124
        <el-table-column label="剩余库存量" align="center">
124
        <el-table-column label="剩余库存量" align="center">
125
          <template slot-scope="scope">
125
          <template slot-scope="scope">
126
            <!-- {{getInCount(scope.row.good_id)- getOutCount(scope.row.good_id) - getAutoCount(scope.row.good_id) + getCancelCount(scope.row.good_id)}} {{scope.row.packing_unit}} -->
126
            <!-- {{getInCount(scope.row.good_id)- getOutCount(scope.row.good_id) - getAutoCount(scope.row.good_id) + getCancelCount(scope.row.good_id)}} {{scope.row.packing_unit}} -->

+ 8 - 1
src/xt_pages/user/components/PatientSidebar.vue Ver arquivo

102
               name: '1-2',
102
               name: '1-2',
103
               label: '病程管理'
103
               label: '病程管理'
104
             },
104
             },
105
+            // {
106
+            //   name: '1-9',
107
+            //   label: '阶段小结'
108
+            // },
105
             {
109
             {
106
               name: '1-3',
110
               name: '1-3',
107
               label: '检验检查'
111
               label: '检验检查'
183
         this.$router.push({path:'/patients/patient/'+this.id+'/vascularAccess'})
187
         this.$router.push({path:'/patients/patient/'+this.id+'/vascularAccess'})
184
       }else if (name == '1-8'){
188
       }else if (name == '1-8'){
185
         this.$router.push({path:'/patients/patients/'+this.id+'/inspectionInfectious'})
189
         this.$router.push({path:'/patients/patients/'+this.id+'/inspectionInfectious'})
186
-
190
+      }else if (name == '1-9'){
191
+        this.$router.push({path:'/patients/patients/'+6092+'/templateSummary'})
187
       }
192
       }
188
     },
193
     },
189
     changePatient(value) {
194
     changePatient(value) {
328
         this.$router.push({
333
         this.$router.push({
329
           path: '/patients/patient/' + this.id + '/proeducation'
334
           path: '/patients/patient/' + this.id + '/proeducation'
330
         })
335
         })
336
+      }else if (patientKey == '1-9'){
337
+        this.$router.push({path:'/patients/patients/'+this.id+'/templateSummary'})
331
       }
338
       }
332
     
339
     
333
      }else{
340
      }else{