|
@@ -562,33 +562,186 @@ func (c *HisApiController) GetHisPatientInfo() {
|
562
|
562
|
func (c *HisApiController) GetHisPrescriptionConfig() {
|
563
|
563
|
adminInfo := c.GetAdminUserInfo()
|
564
|
564
|
//获取医嘱模版
|
565
|
|
- advices, _ := service.FindAllHisAdviceTemplate(adminInfo.CurrentOrgId)
|
|
565
|
+ //advices, _ := service.FindAllHisAdviceTemplate(adminInfo.CurrentOrgId)
|
566
|
566
|
//获取所有基础药
|
567
|
|
- drugs, _ := service.GetAllDrugLibList(adminInfo.CurrentOrgId)
|
568
|
|
- drugways, _, _ := service.GetDrugWayDics(adminInfo.CurrentOrgId)
|
569
|
|
- efs, _, _ := service.GetExecutionFrequencyDics(adminInfo.CurrentOrgId)
|
570
|
|
- doctors, _ := service.GetHisAdminUserDoctors(adminInfo.CurrentOrgId)
|
571
|
|
- //获取所有科室信息
|
572
|
|
- department, _ := service.GetAllDepartMent(adminInfo.CurrentOrgId)
|
573
|
567
|
|
574
|
|
- //获取诊断信息
|
|
568
|
+ drugways_keys := strconv.FormatInt(adminInfo.CurrentOrgId, 10) + "_drugways"
|
|
569
|
+ efs_keys := strconv.FormatInt(adminInfo.CurrentOrgId, 10) + "_efs"
|
|
570
|
+ doctors_keys := strconv.FormatInt(adminInfo.CurrentOrgId, 10) + "_doctors"
|
|
571
|
+ department_keys := strconv.FormatInt(adminInfo.CurrentOrgId, 10) + "_department"
|
|
572
|
+ sick_keys := strconv.FormatInt(adminInfo.CurrentOrgId, 10) + "_sick"
|
|
573
|
+ diagnose_keys := strconv.FormatInt(adminInfo.CurrentOrgId, 10) + "_diagnose"
|
|
574
|
+
|
|
575
|
+ redis := service.RedisClient()
|
|
576
|
+ defer redis.Close()
|
|
577
|
+
|
|
578
|
+ drugways_str, _ := redis.Get(drugways_keys).Result()
|
|
579
|
+ efs_str, _ := redis.Get(efs_keys).Result()
|
|
580
|
+ doctors_str, _ := redis.Get(doctors_keys).Result()
|
|
581
|
+ department_str, _ := redis.Get(department_keys).Result()
|
|
582
|
+ sick_str, _ := redis.Get(sick_keys).Result()
|
|
583
|
+ diagnose_str, _ := redis.Get(diagnose_keys).Result()
|
|
584
|
+
|
|
585
|
+ var drugways []*models.DrugwayDic
|
|
586
|
+ var efs []*models.ExecutionFrequencyDic
|
|
587
|
+ var roles []*models.UserAdminRole
|
|
588
|
+ var departments []*models.XtHisDepartment
|
|
589
|
+ var sicks []*models.OutpatientServiceSick
|
|
590
|
+ var diagnose []*models.HisXtDiagnoseConfig
|
|
591
|
+
|
|
592
|
+ if len(drugways_str) == 0 {
|
|
593
|
+ drugways, _, _ = service.GetDrugWayDics(adminInfo.CurrentOrgId)
|
|
594
|
+ drugways_str, err := json.Marshal(drugways)
|
|
595
|
+ if err == nil {
|
|
596
|
+ redis.Set(drugways_keys, string(drugways_str), time.Second*60*60*18)
|
|
597
|
+
|
|
598
|
+ } else {
|
|
599
|
+ redis.Set(drugways_keys, "", time.Second*60*60*18)
|
|
600
|
+
|
|
601
|
+ }
|
|
602
|
+
|
|
603
|
+ } else {
|
|
604
|
+ err := json.Unmarshal([]byte(drugways_str), &drugways)
|
|
605
|
+ if err != nil {
|
|
606
|
+ drugways, _, _ = service.GetDrugWayDics(adminInfo.CurrentOrgId)
|
|
607
|
+ drugways_str, err := json.Marshal(drugways)
|
|
608
|
+ if err == nil {
|
|
609
|
+ redis.Set(drugways_keys, string(drugways_str), time.Second*60*60*18)
|
575
|
610
|
|
576
|
|
- sick, _ := service.FindAllSick(adminInfo.CurrentOrgId)
|
|
611
|
+ } else {
|
|
612
|
+ redis.Set(drugways_keys, "", time.Second*60*60*18)
|
|
613
|
+
|
|
614
|
+ }
|
|
615
|
+
|
|
616
|
+ }
|
|
617
|
+
|
|
618
|
+ }
|
|
619
|
+ if len(efs_str) == 0 {
|
|
620
|
+ efs, _, _ = service.GetExecutionFrequencyDics(adminInfo.CurrentOrgId)
|
|
621
|
+ efs_str, err := json.Marshal(efs)
|
|
622
|
+ if err == nil {
|
|
623
|
+
|
|
624
|
+ redis.Set(efs_keys, string(efs_str), time.Second*60*60*18)
|
|
625
|
+
|
|
626
|
+ } else {
|
|
627
|
+
|
|
628
|
+ redis.Set(efs_keys, "", time.Second*60*60*18)
|
|
629
|
+
|
|
630
|
+ }
|
|
631
|
+ } else {
|
|
632
|
+ err := json.Unmarshal([]byte(efs_str), &efs)
|
|
633
|
+ if err != nil {
|
|
634
|
+ efs, _, _ = service.GetExecutionFrequencyDics(adminInfo.CurrentOrgId)
|
|
635
|
+ efs_str, err := json.Marshal(efs)
|
|
636
|
+ if err == nil {
|
|
637
|
+
|
|
638
|
+ redis.Set(efs_keys, string(efs_str), time.Second*60*60*18)
|
|
639
|
+
|
|
640
|
+ } else {
|
|
641
|
+
|
|
642
|
+ redis.Set(efs_keys, "", time.Second*60*60*18)
|
|
643
|
+
|
|
644
|
+ }
|
|
645
|
+ }
|
|
646
|
+ }
|
|
647
|
+
|
|
648
|
+ if len(doctors_str) == 0 {
|
|
649
|
+ roles, _ = service.GetHisAdminUserDoctors(adminInfo.CurrentOrgId)
|
|
650
|
+ doctors_str, err := json.Marshal(roles)
|
|
651
|
+ if err == nil {
|
|
652
|
+ redis.Set(doctors_keys, string(doctors_str), time.Second*60*60*18)
|
|
653
|
+ } else {
|
|
654
|
+ redis.Set(doctors_keys, "", time.Second*60*60*18)
|
|
655
|
+ }
|
577
|
656
|
|
578
|
|
- diagnose, _ := service.FindAllDiagnose(adminInfo.CurrentOrgId)
|
|
657
|
+ } else {
|
|
658
|
+ err := json.Unmarshal([]byte(doctors_str), &efs)
|
|
659
|
+ if err != nil {
|
|
660
|
+ roles, _ = service.GetHisAdminUserDoctors(adminInfo.CurrentOrgId)
|
|
661
|
+ doctors_str, err := json.Marshal(roles)
|
|
662
|
+ if err == nil {
|
|
663
|
+ redis.Set(doctors_keys, string(doctors_str), time.Second*60*60*18)
|
|
664
|
+ } else {
|
|
665
|
+ redis.Set(doctors_keys, "", time.Second*60*60*18)
|
|
666
|
+ }
|
|
667
|
+
|
|
668
|
+ }
|
|
669
|
+ }
|
|
670
|
+
|
|
671
|
+ if len(department_str) == 0 {
|
|
672
|
+ departments, _ = service.GetAllDepartMent(adminInfo.CurrentOrgId)
|
|
673
|
+ department_str, err := json.Marshal(departments)
|
|
674
|
+ if err == nil {
|
|
675
|
+ redis.Set(department_keys, string(department_str), time.Second*60*60*18)
|
|
676
|
+ } else {
|
|
677
|
+ redis.Set(department_keys, "", time.Second*60*60*18)
|
|
678
|
+ }
|
|
679
|
+ } else {
|
|
680
|
+ err := json.Unmarshal([]byte(department_str), &departments)
|
|
681
|
+ if err != nil {
|
|
682
|
+ departments, _ = service.GetAllDepartMent(adminInfo.CurrentOrgId)
|
|
683
|
+ department_str, _ := json.Marshal(departments)
|
|
684
|
+ redis.Set(department_keys, string(department_str), time.Second*60*60*18)
|
|
685
|
+ }
|
|
686
|
+ }
|
|
687
|
+
|
|
688
|
+ if len(sick_str) == 0 {
|
|
689
|
+ sicks, _ = service.FindAllSick(adminInfo.CurrentOrgId)
|
|
690
|
+ sick_str, err := json.Marshal(sicks)
|
|
691
|
+ if err == nil {
|
|
692
|
+ redis.Set(sick_keys, string(sick_str), time.Second*60*60*18)
|
|
693
|
+ } else {
|
|
694
|
+ redis.Set(sick_keys, "", time.Second*60*60*18)
|
|
695
|
+ }
|
|
696
|
+
|
|
697
|
+ } else {
|
|
698
|
+ err := json.Unmarshal([]byte(sick_str), &sicks)
|
|
699
|
+ if err != nil {
|
|
700
|
+ sicks, _ = service.FindAllSick(adminInfo.CurrentOrgId)
|
|
701
|
+ sick_str, _ := json.Marshal(sicks)
|
|
702
|
+ redis.Set(sick_keys, string(sick_str), time.Second*60*60*18)
|
|
703
|
+
|
|
704
|
+ }
|
|
705
|
+
|
|
706
|
+ }
|
|
707
|
+
|
|
708
|
+ if len(diagnose_str) == 0 {
|
|
709
|
+ diagnose, _ = service.FindAllDiagnose(adminInfo.CurrentOrgId)
|
|
710
|
+ diagnose_str, err := json.Marshal(diagnose)
|
|
711
|
+ if err == nil {
|
|
712
|
+ redis.Set(diagnose_keys, string(diagnose_str), time.Second*60*60*18)
|
|
713
|
+ } else {
|
|
714
|
+ redis.Set(diagnose_keys, "", time.Second*60*60*18)
|
|
715
|
+ }
|
|
716
|
+ } else {
|
|
717
|
+ err := json.Unmarshal([]byte(diagnose_str), &sicks)
|
|
718
|
+ if err != nil {
|
|
719
|
+ diagnose, _ = service.FindAllDiagnose(adminInfo.CurrentOrgId)
|
|
720
|
+ diagnose_str, err := json.Marshal(diagnose)
|
|
721
|
+ if err == nil {
|
|
722
|
+ redis.Set(diagnose_keys, string(diagnose_str), time.Second*60*60*18)
|
|
723
|
+ } else {
|
|
724
|
+ redis.Set(diagnose_keys, "", time.Second*60*60*18)
|
|
725
|
+ }
|
|
726
|
+ }
|
|
727
|
+ }
|
|
728
|
+
|
|
729
|
+ drugs, _ := service.GetAllDrugLibList(adminInfo.CurrentOrgId)
|
|
730
|
+ //获取所有科室信息
|
|
731
|
+ //获取诊断信息
|
579
|
732
|
|
580
|
733
|
additions, _ := service.FindAllAddition(adminInfo.CurrentOrgId)
|
581
|
734
|
|
582
|
735
|
c.ServeSuccessJSON(map[string]interface{}{
|
583
|
|
- "drugs": drugs,
|
584
|
|
- "advices_template": advices,
|
585
|
|
- "drugways": drugways,
|
586
|
|
- "efs": efs,
|
587
|
|
- "doctors": doctors,
|
588
|
|
- "department": department,
|
589
|
|
- "sick": sick,
|
590
|
|
- "additions": additions,
|
591
|
|
- "diagnose": diagnose,
|
|
736
|
+ "drugs": drugs,
|
|
737
|
+ //"advices_template": advices,
|
|
738
|
+ "drugways": drugways,
|
|
739
|
+ "efs": efs,
|
|
740
|
+ "doctors": roles,
|
|
741
|
+ "department": departments,
|
|
742
|
+ "sick": sicks,
|
|
743
|
+ "additions": additions,
|
|
744
|
+ "diagnose": diagnose,
|
592
|
745
|
})
|
593
|
746
|
}
|
594
|
747
|
func (c *HisApiController) CreateHisPrescription() {
|