|
@@ -11021,6 +11021,7 @@ func SaveDrugOpen(open models.XtDrugCodeOpen) error {
|
11021
|
11021
|
|
11022
|
11022
|
func GetHisDrugCodeQuery(orgId int64, start_time int64, end_time int64, limit int64, page int64, is_sale int64) (list []*models.HisDoctorAdviceInfo, total int64, err error) {
|
11023
|
11023
|
|
|
11024
|
+ offset := (page - 1) * limit
|
11024
|
11025
|
db := XTReadDB().Model(&models.HisDoctorAdviceInfo{}).Where("status=1")
|
11025
|
11026
|
|
11026
|
11027
|
if orgId > 0 {
|
|
@@ -11034,19 +11035,63 @@ func GetHisDrugCodeQuery(orgId int64, start_time int64, end_time int64, limit in
|
11034
|
11035
|
db = db.Where("advice_date<=?", end_time)
|
11035
|
11036
|
}
|
11036
|
11037
|
|
11037
|
|
- offset := (page - 1) * limit
|
11038
|
|
-
|
11039
|
11038
|
if is_sale == 1 {
|
11040
|
11039
|
db = db.Where("is_upload = 1")
|
11041
|
11040
|
}
|
11042
|
11041
|
if is_sale == 2 {
|
11043
|
11042
|
db = db.Where("is_upload = 2 or is_upload =0")
|
11044
|
11043
|
}
|
11045
|
|
- err = db.Count(&total).Offset(offset).Limit(limit).Order("record_date desc").Find(&list).Error
|
|
11044
|
+
|
|
11045
|
+ err = db.Count(&total).Error
|
|
11046
|
+
|
|
11047
|
+ err = db.Offset(offset).Limit(limit).Order("record_date desc").Find(&list).Error
|
11046
|
11048
|
|
11047
|
11049
|
return list, total, err
|
11048
|
11050
|
}
|
11049
|
11051
|
|
|
11052
|
+func GetDoctorAdviceInfoList(page int64, limit int64, orgId int64, start_time int64, end_time int64, is_sale int64) ([]models.HisDoctorAdviceInfo, int64, error) {
|
|
11053
|
+ var list []models.HisDoctorAdviceInfo
|
|
11054
|
+ var total int64
|
|
11055
|
+
|
|
11056
|
+ // 计算偏移量
|
|
11057
|
+ offset := (page - 1) * limit
|
|
11058
|
+
|
|
11059
|
+ // 初始化数据库查询
|
|
11060
|
+ db := XTReadDB().Model(&models.HisDoctorAdviceInfo{})
|
|
11061
|
+
|
|
11062
|
+ // 构建 WHERE 子句
|
|
11063
|
+ query := db.Where("status=1")
|
|
11064
|
+ if orgId > 0 {
|
|
11065
|
+ query = query.Where("user_org_id=?", orgId)
|
|
11066
|
+ }
|
|
11067
|
+ if start_time > 0 {
|
|
11068
|
+ query = query.Where("advice_date >= ?", start_time)
|
|
11069
|
+ }
|
|
11070
|
+ if end_time > 0 {
|
|
11071
|
+ query = query.Where("advice_date <= ?", end_time)
|
|
11072
|
+ }
|
|
11073
|
+ if is_sale == 1 {
|
|
11074
|
+ query = query.Where("is_upload = 1")
|
|
11075
|
+ }
|
|
11076
|
+ if is_sale == 2 {
|
|
11077
|
+ query = query.Where("is_upload IN (?, ?)", 2, 0) // 使用 IN 替代 OR,通常性能更好
|
|
11078
|
+ }
|
|
11079
|
+
|
|
11080
|
+ // 获取总记录数
|
|
11081
|
+ err := query.Count(&total).Error
|
|
11082
|
+ if err != nil {
|
|
11083
|
+ return nil, 0, err
|
|
11084
|
+ }
|
|
11085
|
+
|
|
11086
|
+ // 获取分页后的数据
|
|
11087
|
+ err = query.Offset(offset).Limit(limit).Order("record_date desc").Find(&list).Error
|
|
11088
|
+ if err != nil {
|
|
11089
|
+ return nil, 0, err
|
|
11090
|
+ }
|
|
11091
|
+
|
|
11092
|
+ return list, total, nil
|
|
11093
|
+}
|
|
11094
|
+
|
11050
|
11095
|
func GetDrugWarehouseOutInfoByDrugCode(drug_id int64, patient_id int64, advice_date int64, user_org_id int64) (outinfo []*models.XtDrugWarehouseOutInfo, err error) {
|
11051
|
11096
|
|
11052
|
11097
|
err = XTReadDB().Where("drug_id = ? and patient_id = ? and sys_record_time =? and org_id = ? and status =1", drug_id, patient_id, advice_date, user_org_id).Find(&outinfo).Error
|