Browse Source

打印总次数

XMLWAN 4 years ago
parent
commit
863d64a5fa
2 changed files with 58 additions and 1 deletions
  1. 2 1
      controllers/schedule_api_controller.go
  2. 56 0
      service/schedule_service.go

+ 2 - 1
controllers/schedule_api_controller.go View File

558
 func (this *ScheduleApiController) PrintInitData() {
558
 func (this *ScheduleApiController) PrintInitData() {
559
 	dateStr := this.GetString("date")
559
 	dateStr := this.GetString("date")
560
 	//week_type, _ := this.GetInt64("type", 0)
560
 	//week_type, _ := this.GetInt64("type", 0)
561
-
562
 	var date *time.Time
561
 	var date *time.Time
563
 	if len(dateStr) == 0 {
562
 	if len(dateStr) == 0 {
564
 		now := time.Now()
563
 		now := time.Now()
590
 	//	break
589
 	//	break
591
 	//}
590
 	//}
592
 	schedules, getScheduleErr := service.GetPrinitWeekSchedules(adminUserInfo.CurrentOrgId, monday.Unix(), sunday.Unix())
591
 	schedules, getScheduleErr := service.GetPrinitWeekSchedules(adminUserInfo.CurrentOrgId, monday.Unix(), sunday.Unix())
592
+	total, getScheduleErr := service.GetPrinitWeekTotal(adminUserInfo.CurrentOrgId, monday.Unix(), sunday.Unix())
593
 	if getScheduleErr != nil {
593
 	if getScheduleErr != nil {
594
 		this.ErrorLog("获取周排班失败:%v", getScheduleErr)
594
 		this.ErrorLog("获取周排班失败:%v", getScheduleErr)
595
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
595
 		this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
611
 	}
611
 	}
612
 
612
 
613
 	this.ServeSuccessJSON(map[string]interface{}{
613
 	this.ServeSuccessJSON(map[string]interface{}{
614
+		"total":     total,
614
 		"schedules": schedules,
615
 		"schedules": schedules,
615
 		"monday":    monday.Unix(),
616
 		"monday":    monday.Unix(),
616
 		"days":      days,
617
 		"days":      days,

+ 56 - 0
service/schedule_service.go View File

146
 	Mode         *models.TreatmentMode `gorm:"ForeignKey:ModeID" json:"mode"`
146
 	Mode         *models.TreatmentMode `gorm:"ForeignKey:ModeID" json:"mode"`
147
 }
147
 }
148
 
148
 
149
+type PrintCount struct {
150
+	ScheduleType int64 `gorm:"column:schedule_type" json:"schedule_type"`
151
+	ScheduleWeek int64 `gorm:"column:schedule_week" json:"schedule_week"`
152
+	Count        int64
153
+}
154
+
149
 func GetPrinitWeekSchedules(orgID int64, start, end int64) ([]*WeekSchedulePrintVM, error) {
155
 func GetPrinitWeekSchedules(orgID int64, start, end int64) ([]*WeekSchedulePrintVM, error) {
150
 	var schedules []*WeekSchedulePrintVM
156
 	var schedules []*WeekSchedulePrintVM
151
 	err := readDb.Table("xt_schedule as s").
157
 	err := readDb.Table("xt_schedule as s").
160
 	return schedules, err
166
 	return schedules, err
161
 }
167
 }
162
 
168
 
169
+func GetPrinitWeekTotal(orgid int64, startime int64, endtime int64) (print []*PrintCount, err error) {
170
+
171
+	db := XTReadDB().Table("xt_schedule as x").Where("x.status = 1")
172
+	if orgid > 0 {
173
+		db = db.Where("x.user_org_id = ?", orgid)
174
+	}
175
+	if startime > 0 {
176
+		db = db.Where("x.schedule_date >=?", startime)
177
+	}
178
+	if endtime > 0 {
179
+		db = db.Where("x.schedule_date <=?", endtime)
180
+	}
181
+	err = db.Select("x.schedule_type,x.schedule_week,count(x.patient_id) as count").Group("x.schedule_date,x.schedule_type").Scan(&print).Error
182
+	return print, err
183
+}
184
+
185
+func GetBloodPrintWeekTotal(orgid int64, startime int64, endtime int64) (print []*PrintCount, err error) {
186
+
187
+	db := XTReadDB().Table("xt_schedule as x").Where("x.status = 1")
188
+	if orgid > 0 {
189
+		db = db.Where("x.user_org_id = ?", orgid)
190
+	}
191
+	if startime > 0 {
192
+		db = db.Where("x.schedule_date >=?", startime)
193
+	}
194
+	if endtime > 0 {
195
+		db = db.Where("x.schedule_date <=?", endtime)
196
+	}
197
+	db = db.Where("x.mode_id = 2")
198
+	err = db.Select("x.schedule_type,x.schedule_week,count(x.patient_id) as count").Group("x.schedule_date,x.schedule_type").Scan(&print).Error
199
+	return print, err
200
+}
201
+
202
+func GetPerfusionWeekTotal(orgid int64, startime int64, endtime int64) (print []*PrintCount, err error) {
203
+
204
+	db := XTReadDB().Table("xt_schedule as x").Where("x.status = 1")
205
+	if orgid > 0 {
206
+		db = db.Where("x.user_org_id = ?", orgid)
207
+	}
208
+	if startime > 0 {
209
+		db = db.Where("x.schedule_date >=?", startime)
210
+	}
211
+	if endtime > 0 {
212
+		db = db.Where("x.schedule_date <=?", endtime)
213
+	}
214
+	db = db.Where("x.mode_id = 3")
215
+	err = db.Select("x.schedule_type,x.schedule_week,count(x.patient_id) as count").Group("x.schedule_date,x.schedule_type").Scan(&print).Error
216
+	return print, err
217
+}
218
+
163
 // func ExchangeScheduleTimeWithWeekSchedules(orgID int64, nextWeekSchs []*models.Schedule, nextTwoWeekSchs []*models.Schedule) error {
219
 // func ExchangeScheduleTimeWithWeekSchedules(orgID int64, nextWeekSchs []*models.Schedule, nextTwoWeekSchs []*models.Schedule) error {
164
 // 	templateMode, getTemplateModeErr := GetOrgPatientScheduleTemplateMode(orgID)
220
 // 	templateMode, getTemplateModeErr := GetOrgPatientScheduleTemplateMode(orgID)
165
 // 	if getTemplateModeErr != nil {
221
 // 	if getTemplateModeErr != nil {