|
@@ -646,7 +646,7 @@ func DispensingMedicine(orgid, patient_id, stime, etime, creater int64) (err err
|
646
|
646
|
if PettyCash(v.DrugId) {
|
647
|
647
|
continue
|
648
|
648
|
}
|
649
|
|
- //判断药品库存是否充足
|
|
649
|
+ ////判断药品库存是否充足
|
650
|
650
|
kou := FenDrugInventory(v, orgid)
|
651
|
651
|
if !kou {
|
652
|
652
|
err = fmt.Errorf(FindDrugsName(v.DrugId) + "库存不足")
|
|
@@ -675,48 +675,52 @@ func DispensingMedicine(orgid, patient_id, stime, etime, creater int64) (err err
|
675
|
675
|
return err1
|
676
|
676
|
}
|
677
|
677
|
|
678
|
|
- err = tx.Raw("select id from xt_doctor_advice where status = 1 and (advice_type = 2 or advice_type = 3) and advice_date >= ? and advice_date <= ? and "+
|
679
|
|
- "user_org_id = ? and patient_id = ? and is_medicine = 0 and drug_id in (select id from xt_base_drug where org_id = ? and is_pharmacy = 1)", stime, etime, orgid, patient_id, orgid).Scan(&xids).Error
|
680
|
|
- if err != nil {
|
681
|
|
- return
|
682
|
|
- }
|
683
|
|
- xid := make([]int64, 0)
|
684
|
|
- for _, v := range xids {
|
685
|
|
- xid = append(xid, v.Id)
|
686
|
|
- }
|
687
|
|
- var advice []*models.HisDoctorAdviceInfo
|
688
|
|
- err = tx.Raw("select * from xt_doctor_advice where id in (?) and status = 1", xid).Scan(&advice).Error
|
689
|
|
- if err != nil {
|
690
|
|
- return
|
691
|
|
- }
|
692
|
|
- for _, v := range advice {
|
693
|
|
- tmp_bool := IsPharmacyConfig(orgid)
|
694
|
|
- if tmp_bool {
|
695
|
|
- if PettyCash(v.DrugId) {
|
696
|
|
- continue
|
697
|
|
- }
|
698
|
|
- kou := FenDrugInventory(v, orgid)
|
699
|
|
- if !kou {
|
700
|
|
- err = fmt.Errorf(FindDrugsName(v.DrugId) + "库存不足")
|
701
|
|
- return
|
702
|
|
- }
|
703
|
|
- //扣减库存
|
704
|
|
- err = FenStock(orgid, creater, v)
|
705
|
|
- if err != nil {
|
706
|
|
- err = fmt.Errorf("!:%v", err)
|
707
|
|
- return
|
|
678
|
+ //针对大丰响水
|
|
679
|
+ if orgid != 10217 && orgid != 10188 && orgid != 9671 && orgid != 10164 {
|
|
680
|
+ err = tx.Raw("select id from xt_doctor_advice where status = 1 and (advice_type = 2 or advice_type = 3) and advice_date >= ? and advice_date <= ? and "+
|
|
681
|
+ "user_org_id = ? and patient_id = ? and is_medicine = 0 and drug_id in (select id from xt_base_drug where org_id = ? and is_pharmacy = 1)", stime, etime, orgid, patient_id, orgid).Scan(&xids).Error
|
|
682
|
+ if err != nil {
|
|
683
|
+ return
|
|
684
|
+ }
|
|
685
|
+ xid := make([]int64, 0)
|
|
686
|
+ for _, v := range xids {
|
|
687
|
+ xid = append(xid, v.Id)
|
|
688
|
+ }
|
|
689
|
+ var advice []*models.HisDoctorAdviceInfo
|
|
690
|
+ err = tx.Raw("select * from xt_doctor_advice where id in (?) and status = 1", xid).Scan(&advice).Error
|
|
691
|
+ if err != nil {
|
|
692
|
+ return
|
|
693
|
+ }
|
|
694
|
+
|
|
695
|
+ for _, v := range advice {
|
|
696
|
+ tmp_bool := IsPharmacyConfig(orgid)
|
|
697
|
+ if tmp_bool {
|
|
698
|
+ if PettyCash(v.DrugId) {
|
|
699
|
+ continue
|
|
700
|
+ }
|
|
701
|
+ kou := FenDrugInventory(v, orgid)
|
|
702
|
+ if !kou {
|
|
703
|
+ err = fmt.Errorf(FindDrugsName(v.DrugId) + "库存不足")
|
|
704
|
+ return
|
|
705
|
+ }
|
|
706
|
+ //扣减库存
|
|
707
|
+ err = FenStock(orgid, creater, v)
|
|
708
|
+ if err != nil {
|
|
709
|
+ err = fmt.Errorf("!:%v", err)
|
|
710
|
+ return
|
|
711
|
+ }
|
708
|
712
|
}
|
709
|
713
|
}
|
710
|
|
- }
|
711
|
|
- //修改状态
|
712
|
|
- errs1 := XTWriteDB().Model(&models.XtDoctorAdviceL{}).Where("id in (?)", xid).Updates(map[string]interface{}{
|
713
|
|
- "is_medicine": 1,
|
714
|
|
- "people": 0,
|
715
|
|
- "dispensing_time": time_now,
|
716
|
|
- "updated_time": time.Now().Unix(),
|
717
|
|
- }).Error
|
718
|
|
- if errs1 != nil {
|
719
|
|
- return errs1
|
|
714
|
+ //修改状态
|
|
715
|
+ errs1 := XTWriteDB().Model(&models.XtDoctorAdviceL{}).Where("id in (?)", xid).Updates(map[string]interface{}{
|
|
716
|
+ "is_medicine": 1,
|
|
717
|
+ "people": 0,
|
|
718
|
+ "dispensing_time": time_now,
|
|
719
|
+ "updated_time": time.Now().Unix(),
|
|
720
|
+ }).Error
|
|
721
|
+ if errs1 != nil {
|
|
722
|
+ return errs1
|
|
723
|
+ }
|
720
|
724
|
}
|
721
|
725
|
|
722
|
726
|
//生成明细记录
|