瀏覽代碼

医保对接

csx 3 年之前
父節點
當前提交
ac4d6cb573

+ 0 - 1
controllers/common_api_controller.go 查看文件

734
 	dialysislist, total, err := service.GetDialysisList(statime, entime, page, limit, orgId)
734
 	dialysislist, total, err := service.GetDialysisList(statime, entime, page, limit, orgId)
735
 	prescriptionList, _ := service.GetAllDialysisList(statime, entime, orgId)
735
 	prescriptionList, _ := service.GetAllDialysisList(statime, entime, orgId)
736
 	list, totallist, _ := service.GetDialysisPatientList(statime, entime, page, limit, orgId)
736
 	list, totallist, _ := service.GetDialysisPatientList(statime, entime, page, limit, orgId)
737
-	fmt.Println("err", err)
738
 	//获取每个病人每个透析模式的数据
737
 	//获取每个病人每个透析模式的数据
739
 	modeIdCount, parseDateErr := service.GetModeIdCount(statime, entime, orgId, page, 1000)
738
 	modeIdCount, parseDateErr := service.GetModeIdCount(statime, entime, orgId, page, 1000)
740
 	if err != nil {
739
 	if err != nil {

+ 64 - 33
controllers/his_api_controller.go 查看文件

463
 			cus.Type = item.Type
463
 			cus.Type = item.Type
464
 			cus.PType = item.PType
464
 			cus.PType = item.PType
465
 			for _, subItem := range item.HisPrescriptionAdviceTemplate {
465
 			for _, subItem := range item.HisPrescriptionAdviceTemplate {
466
-				if subItem.FrequencyType == 1 { //每次必推
467
-					cus.HisPrescriptionAdviceTemplate = append(cus.HisPrescriptionAdviceTemplate, subItem)
468
-				}
469
-
470
-				if subItem.FrequencyType == 3 && strings.Index(subItem.WeekDay, week) != -1 { //按照星期来推
471
-					cus.HisPrescriptionAdviceTemplate = append(cus.HisPrescriptionAdviceTemplate, subItem)
472
-				}
466
+				if find := strings.Contains(subItem.Drug.DrugStatus, "停用"); !find {
467
+					if subItem.FrequencyType == 1 { //每次必推
468
+						cus.HisPrescriptionAdviceTemplate = append(cus.HisPrescriptionAdviceTemplate, subItem)
469
+					}
473
 
470
 
474
-				if subItem.FrequencyType == 2 { //按照天数频率
475
-					p, _ := time.Parse("2006-01-02", time.Now().Format("2006-01-02"))
476
-					now := p.Unix()
477
-					dayStr := strconv.FormatInt(subItem.DayCount, 10)
478
-					dayStr2 := "-" + dayStr
479
-					count, _ := strconv.ParseInt(dayStr2, 10, 64)
480
-					oldTime := time.Now().AddDate(0, 0, int(count)).Unix()
481
-					advices, _ := service.FindAllHisDoctorAdviceByTime(now, oldTime, patient_id, c.GetAdminUserInfo().CurrentOrgId, subItem.DrugId)
482
-					if len(advices) == 0 {
471
+					if subItem.FrequencyType == 3 && strings.Index(subItem.WeekDay, week) != -1 { //按照星期来推
483
 						cus.HisPrescriptionAdviceTemplate = append(cus.HisPrescriptionAdviceTemplate, subItem)
472
 						cus.HisPrescriptionAdviceTemplate = append(cus.HisPrescriptionAdviceTemplate, subItem)
484
 					}
473
 					}
485
-				}
486
 
474
 
475
+					if subItem.FrequencyType == 2 { //按照天数频率
476
+						p, _ := time.Parse("2006-01-02", time.Now().Format("2006-01-02"))
477
+						now := p.Unix()
478
+						dayStr := strconv.FormatInt(subItem.DayCount, 10)
479
+						dayStr2 := "-" + dayStr
480
+						count, _ := strconv.ParseInt(dayStr2, 10, 64)
481
+						oldTime := time.Now().AddDate(0, 0, int(count)).Unix()
482
+						advices, _ := service.FindAllHisDoctorAdviceByTime(now, oldTime, patient_id, c.GetAdminUserInfo().CurrentOrgId, subItem.DrugId)
483
+						if len(advices) == 0 {
484
+							cus.HisPrescriptionAdviceTemplate = append(cus.HisPrescriptionAdviceTemplate, subItem)
485
+						}
486
+					}
487
+				}
487
 			}
488
 			}
488
 
489
 
489
 			for _, subItem := range item.HisPrescriptionProjectTemplate {
490
 			for _, subItem := range item.HisPrescriptionProjectTemplate {
490
 
491
 
491
-				if subItem.FrequencyType == 1 {
492
-					cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
493
-				}
492
+				if subItem.Type == 2 {
493
+					if subItem.XtHisProject.MedicalStatus != 1 {
494
+						if subItem.FrequencyType == 1 {
495
+							cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
496
+						}
494
 
497
 
495
-				if subItem.FrequencyType == 3 && strings.Index(subItem.WeekDay, week) != -1 {
496
-					cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
497
-				}
498
+						if subItem.FrequencyType == 3 && strings.Index(subItem.WeekDay, week) != -1 {
499
+							cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
500
+						}
498
 
501
 
499
-				if subItem.FrequencyType == 2 {
500
-					p, _ := time.Parse("2006-01-02", time.Now().Format("2006-01-02"))
501
-					now := p.Unix()
502
-					dayStr := strconv.FormatInt(subItem.DayCount, 10)
503
-					dayStr2 := "-" + dayStr
504
-					count, _ := strconv.ParseInt(dayStr2, 10, 64)
505
-					oldTime := time.Now().AddDate(0, 0, int(count)).Unix()
506
-					projects, _ := service.FindAllHisProjectByTime(now, oldTime, patient_id, c.GetAdminUserInfo().CurrentOrgId, subItem.ProjectId)
507
-					if len(projects) == 0 {
508
-						cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
502
+						if subItem.FrequencyType == 2 {
503
+							p, _ := time.Parse("2006-01-02", time.Now().Format("2006-01-02"))
504
+							now := p.Unix()
505
+							dayStr := strconv.FormatInt(subItem.DayCount, 10)
506
+							dayStr2 := "-" + dayStr
507
+							count, _ := strconv.ParseInt(dayStr2, 10, 64)
508
+							oldTime := time.Now().AddDate(0, 0, int(count)).Unix()
509
+							projects, _ := service.FindAllHisProjectByTime(now, oldTime, patient_id, c.GetAdminUserInfo().CurrentOrgId, subItem.ProjectId)
510
+							if len(projects) == 0 {
511
+								cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
512
+							}
513
+						}
514
+
515
+					}
516
+
517
+				} else if subItem.Type == 3 {
518
+					if find := strings.Contains(subItem.GoodInfo.GoodStatus, "停用"); !find {
519
+						if subItem.FrequencyType == 1 {
520
+							cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
521
+						}
522
+
523
+						if subItem.FrequencyType == 3 && strings.Index(subItem.WeekDay, week) != -1 {
524
+							cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
525
+						}
526
+
527
+						if subItem.FrequencyType == 2 {
528
+							p, _ := time.Parse("2006-01-02", time.Now().Format("2006-01-02"))
529
+							now := p.Unix()
530
+							dayStr := strconv.FormatInt(subItem.DayCount, 10)
531
+							dayStr2 := "-" + dayStr
532
+							count, _ := strconv.ParseInt(dayStr2, 10, 64)
533
+							oldTime := time.Now().AddDate(0, 0, int(count)).Unix()
534
+							projects, _ := service.FindAllHisProjectByTime(now, oldTime, patient_id, c.GetAdminUserInfo().CurrentOrgId, subItem.ProjectId)
535
+							if len(projects) == 0 {
536
+								cus.HisPrescriptionProjectTemplate = append(cus.HisPrescriptionProjectTemplate, subItem)
537
+							}
538
+						}
509
 					}
539
 					}
540
+
510
 				}
541
 				}
511
 
542
 
512
 			}
543
 			}

+ 1 - 1
models/his_models.go 查看文件

766
 	Type   int64  `gorm:"column:type" json:"type" form:"type"`
766
 	Type   int64  `gorm:"column:type" json:"type" form:"type"`
767
 
767
 
768
 	Doctor         int64 `gorm:"column:doctor" json:"doctor" form:"doctor"`
768
 	Doctor         int64 `gorm:"column:doctor" json:"doctor" form:"doctor"`
769
-	ExecutionTime  int64 `gorm:"column:execution_time" json:"execution_time" form:"execution_time"`
769
+	ExecutionTime  int64 `gborm:"column:execution_time" json:"execution_time" form:"execution_time"`
770
 	ExecutionStaff int64 `gorm:"column:execution_staff" json:"execution_staff" form:"execution_staff"`
770
 	ExecutionStaff int64 `gorm:"column:execution_staff" json:"execution_staff" form:"execution_staff"`
771
 	ExecutionState int64 `gorm:"column:execution_state" json:"execution_state" form:"execution_state"`
771
 	ExecutionState int64 `gorm:"column:execution_state" json:"execution_state" form:"execution_state"`
772
 	CheckTime      int64 `gorm:"column:check_time" json:"check_time" form:"check_time"`
772
 	CheckTime      int64 `gorm:"column:check_time" json:"check_time" form:"check_time"`

+ 4 - 13
service/common_service.go 查看文件

496
 func GetDialysisList(startime int64, endtime int64, page int64, limit int64, orgid int64) (order []*models.BloodDialysisOrder, total int64, err error) {
496
 func GetDialysisList(startime int64, endtime int64, page int64, limit int64, orgid int64) (order []*models.BloodDialysisOrder, total int64, err error) {
497
 
497
 
498
 	db := XTReadDB().Table("xt_dialysis_order as o").Where("o.status = 1")
498
 	db := XTReadDB().Table("xt_dialysis_order as o").Where("o.status = 1")
499
-	table := XTReadDB().Table("xt_schedule as s")
500
-	fmt.Println(table)
499
+
501
 	d := XTReadDB().Table("xt_patients as p")
500
 	d := XTReadDB().Table("xt_patients as p")
502
 	fmt.Println(d)
501
 	fmt.Println(d)
503
 	if orgid > 0 {
502
 	if orgid > 0 {
510
 		db = db.Where("o.dialysis_date<=?", endtime)
509
 		db = db.Where("o.dialysis_date<=?", endtime)
511
 	}
510
 	}
512
 	offset := (page - 1) * limit
511
 	offset := (page - 1) * limit
513
-	err = db.Group("s.patient_id,s.mode_id").Select("s.mode_id,o.patient_id,p.name,p.id_card_no,p.dialysis_no,p.total_dialysis,p.user_sys_before_count").Joins("left join xt_schedule as s on s.patient_id = o.patient_id").Joins("left join  xt_patients as p on p.id = o.patient_id").Where("s.schedule_date = o.dialysis_date and s.status = 1").Count(&total).Offset(offset).Limit(limit).Scan(&order).Error
512
+	err = db.Group("s.patient_id,s.mode_id").Select("s.mode_id,o.patient_id,p.name,p.id_card_no,p.dialysis_no,p.total_dialysis,p.user_sys_before_count").Joins("left join xt_dialysis_prescription as s on s.patient_id = o.patient_id AND s.record_date = o.dialysis_date AND s.mode_id > 0").Joins("left join  xt_patients as p on p.id = o.patient_id").Where("s.status = 1").Count(&total).Offset(offset).Limit(limit).Scan(&order).Error
514
 	return order, total, err
513
 	return order, total, err
515
 
514
 
516
 }
515
 }
517
 
516
 
518
 func GetAllDialysisList(startime int64, endtime int64, orgid int64) (order []*models.BloodDialysisOrder, err error) {
517
 func GetAllDialysisList(startime int64, endtime int64, orgid int64) (order []*models.BloodDialysisOrder, err error) {
519
 
518
 
520
-	table := XTReadDB().Table("xt_schedule as s")
521
-	fmt.Println(table)
522
-	d := XTReadDB().Table("xt_patients as p")
523
-	fmt.Println(d)
524
 	db := XTReadDB().Table("xt_dialysis_order as o").Where("o.status = 1")
519
 	db := XTReadDB().Table("xt_dialysis_order as o").Where("o.status = 1")
525
 	if orgid > 0 {
520
 	if orgid > 0 {
526
 		db = db.Where("o.user_org_id = ?", orgid)
521
 		db = db.Where("o.user_org_id = ?", orgid)
531
 	if endtime > 0 {
526
 	if endtime > 0 {
532
 		db = db.Where("o.dialysis_date<=?", endtime)
527
 		db = db.Where("o.dialysis_date<=?", endtime)
533
 	}
528
 	}
534
-	err = db.Group("s.patient_id,s.mode_id").Select("s.mode_id,s.patient_id,p.name,p.id_card_no,p.dialysis_no,p.total_dialysis,p.user_sys_before_count").Joins("left join xt_schedule as s on s.patient_id = o.patient_id").Joins("left join xt_patients as p on p.id = o.patient_id").Where("s.schedule_date = o.dialysis_date and s.status = 1 ").Scan(&order).Error
529
+	err = db.Group("s.patient_id,s.mode_id").Select("s.mode_id,s.patient_id,p.name,p.id_card_no,p.dialysis_no,p.total_dialysis,p.user_sys_before_count").Joins("left join xt_dialysis_prescription as s on s.patient_id = o.patient_id AND s.record_date = o.dialysis_date AND s.mode_id > 0").Joins("left join xt_patients as p on p.id = o.patient_id").Where("s.status = 1 ").Scan(&order).Error
535
 	return order, err
530
 	return order, err
536
 }
531
 }
537
 
532
 
538
 func GetDialysisPatientList(startime int64, endtime int64, page int64, limit int64, orgid int64) (order []*models.BloodDialysisOrder, total int64, err error) {
533
 func GetDialysisPatientList(startime int64, endtime int64, page int64, limit int64, orgid int64) (order []*models.BloodDialysisOrder, total int64, err error) {
539
 
534
 
540
-	table := XTReadDB().Table("xt_schedule as s")
541
-	fmt.Println(table)
542
-	d := XTReadDB().Table("xt_patients as p")
543
-	fmt.Println(d)
544
 	db := XTReadDB().Table("xt_dialysis_order as o").Where("o.status = 1")
535
 	db := XTReadDB().Table("xt_dialysis_order as o").Where("o.status = 1")
545
 	if orgid > 0 {
536
 	if orgid > 0 {
546
 		db = db.Where("o.user_org_id = ?", orgid)
537
 		db = db.Where("o.user_org_id = ?", orgid)
552
 		db = db.Where("o.dialysis_date<=?", endtime)
543
 		db = db.Where("o.dialysis_date<=?", endtime)
553
 	}
544
 	}
554
 	offset := (page - 1) * limit
545
 	offset := (page - 1) * limit
555
-	err = db.Group("s.patient_id").Select("s.mode_id,o.patient_id,p.name,p.id_card_no,p.dialysis_no,p.total_dialysis,p.user_sys_before_count").Joins("left join xt_schedule as s on s.patient_id = o.patient_id").Joins("left join  xt_patients as p on p.id = o.patient_id").Where("s.schedule_date = o.dialysis_date and s.status =1 ").Count(&total).Offset(offset).Limit(limit).Scan(&order).Error
546
+	err = db.Group("s.patient_id").Select("s.mode_id,o.patient_id,p.name,p.id_card_no,p.dialysis_no,p.total_dialysis,p.user_sys_before_count").Joins("left join xt_dialysis_prescription as s on s.patient_id = o.patient_id AND s.record_date = o.dialysis_date AND s.mode_id > 0").Joins("left join  xt_patients as p on p.id = o.patient_id").Where("s.status =1 ").Count(&total).Offset(offset).Limit(limit).Scan(&order).Error
556
 	return order, total, err
547
 	return order, total, err
557
 }
548
 }
558
 
549
 

+ 2 - 2
service/his_hospital_service.go 查看文件

134
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("Drug", "status=1")
134
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("Drug", "status=1")
135
 		}).
135
 		}).
136
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
136
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
137
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("HisProject").Preload("GoodInfo", "status=1")
137
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
138
 		}).
138
 		}).
139
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND order_status <> 2 AND order_status <> 3", org_id, record_date, patient_id).
139
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND order_status <> 2 AND order_status <> 3", org_id, record_date, patient_id).
140
 		Find(&prescription).Error
140
 		Find(&prescription).Error
150
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("Drug", "status=1")
150
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("Drug", "status=1")
151
 		}).
151
 		}).
152
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
152
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
153
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("HisProject").Preload("GoodInfo", "status=1")
153
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
154
 		}).
154
 		}).
155
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND order_status = 2 ", org_id, record_date, patient_id).
155
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND order_status = 2 ", org_id, record_date, patient_id).
156
 		Find(&prescription).Error
156
 		Find(&prescription).Error

+ 10 - 10
service/his_service.go 查看文件

446
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
446
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
447
 		}).
447
 		}).
448
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
448
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
449
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
449
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
450
 		}).
450
 		}).
451
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND his_patient_id = ? AND p_type = ? ", org_id, record_date, patient_id, his_patient_id, p_type).
451
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND his_patient_id = ? AND p_type = ? ", org_id, record_date, patient_id, his_patient_id, p_type).
452
 		Find(&prescription).Error
452
 		Find(&prescription).Error
478
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("Drug", "status=1")
478
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("Drug", "status=1")
479
 		}).
479
 		}).
480
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
480
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
481
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("HisProject").Preload("GoodInfo", "status=1")
481
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisOrderInfo", "status = 1").Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
482
 		}).Preload("TempHisOrder", func(db *gorm.DB) *gorm.DB {
482
 		}).Preload("TempHisOrder", func(db *gorm.DB) *gorm.DB {
483
 		return db.Where("status = 1 AND user_org_id = ? AND order_status <> 3  AND order_status <> 2  ", org_id)
483
 		return db.Where("status = 1 AND user_org_id = ? AND order_status <> 3  AND order_status <> 2  ", org_id)
484
 	}).
484
 	}).
496
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
496
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
497
 		}).
497
 		}).
498
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
498
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
499
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
499
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
500
 		}).
500
 		}).
501
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND order_status <> 2 AND his_patient_id = ? AND p_type <> 1 AND med_type = ?", org_id, record_date, patient_id, his_patient_id, med_type).
501
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND order_status <> 2 AND his_patient_id = ? AND p_type <> 1 AND med_type = ?", org_id, record_date, patient_id, his_patient_id, med_type).
502
 		Find(&prescription).Error
502
 		Find(&prescription).Error
512
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
512
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
513
 		}).
513
 		}).
514
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
514
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
515
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
515
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
516
 		}).
516
 		}).
517
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ? AND order_status <> 2 AND p_type <> 1 AND med_type = ?", org_id, start_date, end_date, patient_id, med_type).
517
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ? AND order_status <> 2 AND p_type <> 1 AND med_type = ?", org_id, start_date, end_date, patient_id, med_type).
518
 		Find(&prescription).Error
518
 		Find(&prescription).Error
528
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
528
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
529
 		}).
529
 		}).
530
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
530
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
531
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
531
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
532
 		}).
532
 		}).
533
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ? AND p_type = ?", org_id, start_date, end_date, patient_id, p_type).
533
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ? AND p_type = ?", org_id, start_date, end_date, patient_id, p_type).
534
 		Find(&prescription).Error
534
 		Find(&prescription).Error
544
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
544
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
545
 		}).
545
 		}).
546
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
546
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
547
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
547
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
548
 		}).
548
 		}).
549
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ?  AND p_type = ? ", org_id, start_date, end_date, patient_id, p_type).
549
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ?  AND p_type = ? ", org_id, start_date, end_date, patient_id, p_type).
550
 		Find(&prescription).Error
550
 		Find(&prescription).Error
561
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
561
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
562
 		}).
562
 		}).
563
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
563
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
564
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
564
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
565
 		}).Preload("TempHisOrder", func(db *gorm.DB) *gorm.DB {
565
 		}).Preload("TempHisOrder", func(db *gorm.DB) *gorm.DB {
566
 		return db.Where("status = 1 AND user_org_id = ?", org_id)
566
 		return db.Where("status = 1 AND user_org_id = ?", org_id)
567
 	}).
567
 	}).
580
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
580
 			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("Drug", "status=1")
581
 		}).
581
 		}).
582
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
582
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
583
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
583
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
584
 		}).
584
 		}).
585
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ? AND order_status = 2 AND p_type = ?", org_id, start_date, end_date, patient_id, p_type).
585
 		Where("user_org_id = ? AND status = 1 AND record_date >= ? AND record_date <= ? AND patient_id = ? AND order_status = 2 AND p_type = ?", org_id, start_date, end_date, patient_id, p_type).
586
 		Find(&prescription).Error
586
 		Find(&prescription).Error
1026
 	err = readDb.Model(&models.HisPrescription{}).
1026
 	err = readDb.Model(&models.HisPrescription{}).
1027
 		Preload("HisDoctorAdviceInfo", "status = 1 AND user_org_id = ?", org_id).
1027
 		Preload("HisDoctorAdviceInfo", "status = 1 AND user_org_id = ?", org_id).
1028
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
1028
 		Preload("HisPrescriptionProject", func(db *gorm.DB) *gorm.DB {
1029
-			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1")
1029
+			return db.Where("status = 1 AND user_org_id = ?", org_id).Preload("HisProject").Preload("GoodInfo", "status=1").Preload("XtHisProjectTeam", "status = 1")
1030
 		}).
1030
 		}).
1031
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND prescription_number=?", org_id, record_date, patient_id, number).
1031
 		Where("user_org_id = ? AND status = 1 AND record_date = ? AND patient_id = ? AND prescription_number=?", org_id, record_date, patient_id, number).
1032
 		Find(&prescription).Error
1032
 		Find(&prescription).Error
1769
 }
1769
 }
1770
 
1770
 
1771
 func GetCheckAccountFormData(start_time int64, end_time int64, org_id int64, insutype string) (cus []*CustomAccountFormData, err error) {
1771
 func GetCheckAccountFormData(start_time int64, end_time int64, org_id int64, insutype string) (cus []*CustomAccountFormData, err error) {
1772
-	err = readDb.Raw("select o.setl_detail as setl_detail, o.maf_pay as maf_pay,  o.hifmi_pay  as hifmi_pay, o.hifob_pay as hifob_pay, o.cvlserv_pay as cvlserv_pay, o.hifes_pay as hifes_pay, o.patient_id as patient_id, p.diagnosis as diagnosis_id, p.iinfo as iinfo, o.medfee_sumamt as medfee_sumamt ,o.psn_name as psn_name ,p.id_card_no as id_card_no ,o.psn_no as psn_no, o.mdtrt_id as mdtrt_id, o.settle_accounts_date as settle_accounts_date,o.act_pay_dedc as act_pay_dedc,O.fund_pay_sumamt as fund_pay_sumamt,o.psn_cash_pay as psn_cash_pay ,o.acct_pay as acct_pay,o.psn_cash_pay as cash_pay,o.medfee_sumamt as sumamt  from his_order o  Join his_patient p On o.patient_id = p.patient_id AND o.settle_accounts_date = p.record_date where o.user_org_id = ? AND o.status = 1 AND o.order_status = 2  AND o.settle_accounts_date >= ? AND o.settle_accounts_date <= ? AND insutype = ? Group by o.id", org_id, start_time, end_time, insutype).Scan(&cus).Error
1772
+	err = readDb.Raw("select o.setl_detail as setl_detail, o.maf_pay as maf_pay,  o.hifmi_pay  as hifmi_pay, o.hifob_pay as hifob_pay, o.cvlserv_pay as cvlserv_pay, o.hifes_pay as hifes_pay, o.patient_id as patient_id, p.diagnosis as diagnosis_id, p.iinfo as iinfo, o.medfee_sumamt as medfee_sumamt ,o.psn_name as psn_name ,p.id_card_no as id_card_no ,o.psn_no as psn_no, o.mdtrt_id as mdtrt_id, o.settle_accounts_date as settle_accounts_date,o.act_pay_dedc as act_pay_dedc,O.fund_pay_sumamt as fund_pay_sumamt,o.psn_cash_pay as psn_cash_pay ,o.acct_pay as acct_pay,o.psn_cash_pay as cash_pay,o.medfee_sumamt as sumamt  from his_order o  Join his_patient p On o.patient_id = p.patient_id AND o.settle_accounts_date = p.record_date where o.user_org_id = ? AND o.status = 1 AND o.order_status = 2  AND o.settle_accounts_date >= ? AND o.settle_accounts_date <= ? AND o.insutype = ? Group by o.id", org_id, start_time, end_time, insutype).Scan(&cus).Error
1773
 
1773
 
1774
 	for _, item := range cus {
1774
 	for _, item := range cus {
1775
 		var total int64
1775
 		var total int64