|
@@ -224,36 +224,52 @@ func (m *CourseDAO) GetCourseDetail(courseid string) ([]model.TaCourseDetail, er
|
224
|
224
|
return details, err
|
225
|
225
|
}
|
226
|
226
|
|
|
227
|
+// DetailInfo 排课记录
|
|
228
|
+type DetailInfo struct {
|
|
229
|
+ model.TaCourseDetail `xorm:"extends"`
|
|
230
|
+ CourseStatus int
|
|
231
|
+ CourseName string
|
|
232
|
+ CaseName string
|
|
233
|
+ CaseAddress string
|
|
234
|
+}
|
|
235
|
+
|
227
|
236
|
// GetDetails 获取所有的排课记录
|
228
|
|
-func (m *CourseDAO) GetDetails(caseid, date string) ([]model.TaCourseDetail, error) {
|
229
|
|
- var details []model.TaCourseDetail
|
230
|
|
- err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("DATE_FORMAT(begin_date,'%Y-%m') = ?", date).Find(&details)
|
|
237
|
+func (m *CourseDAO) GetDetails(caseid, date string) ([]DetailInfo, error) {
|
|
238
|
+ var details []DetailInfo
|
|
239
|
+
|
|
240
|
+ sql := `select a.*,b.course_name,b.status as course_status,c.case_name,c.case_address from ta_course_detail a
|
|
241
|
+ inner join ta_course b on a.course_id=b.course_id
|
|
242
|
+ inner join sys_case c on a.case_id=c.case_id where a.status>` + strconv.Itoa(models.STATUS_DEL) + `
|
|
243
|
+ and b.status>` + strconv.Itoa(models.STATUS_DEL) + ` and a.case_id='` + caseid + `' and DATE_FORMAT(a.begin_date,'%Y-%m') = '` + date + `'`
|
|
244
|
+ err := m.db.Sql(sql).Find(&details)
|
|
245
|
+
|
|
246
|
+ // err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("DATE_FORMAT(begin_date,'%Y-%m') = ?", date).Find(&details)
|
231
|
247
|
return details, err
|
232
|
248
|
}
|
233
|
249
|
|
234
|
250
|
// GetCourseSchedule 获取需要排课的记录
|
235
|
251
|
func (m *CourseDAO) GetCourseSchedule(name, caseids, date string, page, pageSize int) ([]model.TaCourse, error) {
|
236
|
252
|
var courses []model.TaCourse
|
237
|
|
- dao := m.db.Where("status=?", STATUS_UNPUBLISH).And("schedule_num<course_num").And(date + " BETWEEN begin_date and end_date")
|
|
253
|
+ dao := m.db.Where("status=?", STATUS_UNPUBLISH).And("schedule_num<course_num").And("'" + date + "' BETWEEN begin_date and end_date")
|
238
|
254
|
if name != "" {
|
239
|
255
|
dao.And("course_name like '%" + name + "%'")
|
240
|
256
|
}
|
241
|
257
|
if caseids != "" {
|
242
|
|
- dao.And("caseids in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
|
|
258
|
+ dao.And("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
|
243
|
259
|
}
|
244
|
|
- err := dao.OrderBy("create_date").Limit(pageSize, (page-1)*pageSize).Find(&courses)
|
|
260
|
+ err := dao.Desc("create_date").Limit(pageSize, (page-1)*pageSize).Find(&courses)
|
245
|
261
|
return courses, err
|
246
|
262
|
}
|
247
|
263
|
|
248
|
264
|
// GetCourseScheduleCount 获取排课记录数
|
249
|
265
|
func (m *CourseDAO) GetCourseScheduleCount(name, caseids, date string) (int, error) {
|
250
|
266
|
var courses []model.TaCourse
|
251
|
|
- dao := m.db.Where("status=?", STATUS_UNPUBLISH).And("schedule_num<course_num").And(date + " BETWEEN begin_date and end_date")
|
|
267
|
+ dao := m.db.Where("status=?", STATUS_UNPUBLISH).And("schedule_num<course_num").And("'" + date + "' BETWEEN begin_date and end_date")
|
252
|
268
|
if name != "" {
|
253
|
269
|
dao.And("course_name like '%" + name + "%'")
|
254
|
270
|
}
|
255
|
271
|
if caseids != "" {
|
256
|
|
- dao.And("caseids in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
|
|
272
|
+ dao.And("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
|
257
|
273
|
}
|
258
|
274
|
err := dao.Find(&courses)
|
259
|
275
|
return len(courses), err
|