Browse Source

Merge branch 'dev' of http://git.ycjcjy.com/SpaceOfCheng/services into dev

胡轶钦 6 years ago
parent
commit
3a13ba0977
5 changed files with 32 additions and 14 deletions
  1. 2
    2
      controllers/user/user.go
  2. 24
    8
      models/course/course.go
  3. 2
    0
      models/course/tag.go
  4. 1
    1
      routers/common.go
  5. 3
    3
      service/course/course.go

+ 2
- 2
controllers/user/user.go View File

79
 func (c *UserController) GetUserTypes() {
79
 func (c *UserController) GetUserTypes() {
80
 	// cases := c.Context.Get("cases").([]model.SysUserCase)
80
 	// cases := c.Context.Get("cases").([]model.SysUserCase)
81
 	// caseIDs := c.GetCaseIDs(cases)
81
 	// caseIDs := c.GetCaseIDs(cases)
82
-	orgid := c.GetString(":org")
83
-	usertypes, err := c.dao.GetUserTypes(orgid)
82
+	org := c.Context.Get("org").(model.SysOrg)
83
+	usertypes, err := c.dao.GetUserTypes(org.OrgId)
84
 	if err != nil {
84
 	if err != nil {
85
 		c.ResponseError(err)
85
 		c.ResponseError(err)
86
 	}
86
 	}

+ 24
- 8
models/course/course.go View File

224
 	return details, err
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
 // GetDetails 获取所有的排课记录
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
 	return details, err
247
 	return details, err
232
 }
248
 }
233
 
249
 
234
 // GetCourseSchedule 获取需要排课的记录
250
 // GetCourseSchedule 获取需要排课的记录
235
 func (m *CourseDAO) GetCourseSchedule(name, caseids, date string, page, pageSize int) ([]model.TaCourse, error) {
251
 func (m *CourseDAO) GetCourseSchedule(name, caseids, date string, page, pageSize int) ([]model.TaCourse, error) {
236
 	var courses []model.TaCourse
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
 	if name != "" {
254
 	if name != "" {
239
 		dao.And("course_name like '%" + name + "%'")
255
 		dao.And("course_name like '%" + name + "%'")
240
 	}
256
 	}
241
 	if caseids != "" {
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
 	return courses, err
261
 	return courses, err
246
 }
262
 }
247
 
263
 
248
 // GetCourseScheduleCount 获取排课记录数
264
 // GetCourseScheduleCount 获取排课记录数
249
 func (m *CourseDAO) GetCourseScheduleCount(name, caseids, date string) (int, error) {
265
 func (m *CourseDAO) GetCourseScheduleCount(name, caseids, date string) (int, error) {
250
 	var courses []model.TaCourse
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
 	if name != "" {
268
 	if name != "" {
253
 		dao.And("course_name like '%" + name + "%'")
269
 		dao.And("course_name like '%" + name + "%'")
254
 	}
270
 	}
255
 	if caseids != "" {
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
 	err := dao.Find(&courses)
274
 	err := dao.Find(&courses)
259
 	return len(courses), err
275
 	return len(courses), err

+ 2
- 0
models/course/tag.go View File

5
 	"spaceofcheng/services/models/model"
5
 	"spaceofcheng/services/models/model"
6
 	"spaceofcheng/services/utils"
6
 	"spaceofcheng/services/utils"
7
 	"strconv"
7
 	"strconv"
8
+	"time"
8
 )
9
 )
9
 
10
 
10
 // GetTagsList 获取标签列表
11
 // GetTagsList 获取标签列表
31
 func (m *CourseDAO) AddCourseTag(tag model.TdCourseTag) (*model.TdCourseTag, error) {
32
 func (m *CourseDAO) AddCourseTag(tag model.TdCourseTag) (*model.TdCourseTag, error) {
32
 	tag.TagId = utils.GetGUID()
33
 	tag.TagId = utils.GetGUID()
33
 	tag.Status = models.STATUS_NORMAL
34
 	tag.Status = models.STATUS_NORMAL
35
+	tag.CreateDate = time.Now()
34
 	_, err := m.db.Insert(tag)
36
 	_, err := m.db.Insert(tag)
35
 	return &tag, err
37
 	return &tag, err
36
 }
38
 }

+ 1
- 1
routers/common.go View File

177
 		beego.NSRouter("/course", &course.CourseController{}, "put:SaveCourse"),
177
 		beego.NSRouter("/course", &course.CourseController{}, "put:SaveCourse"),
178
 		beego.NSRouter("/course/:courseid", &course.CourseController{}, "delete:DeleteCourse"),
178
 		beego.NSRouter("/course/:courseid", &course.CourseController{}, "delete:DeleteCourse"),
179
 		beego.NSRouter("/course/:courseid/public", &course.CourseController{}, "put:CoursePublic"),
179
 		beego.NSRouter("/course/:courseid/public", &course.CourseController{}, "put:CoursePublic"),
180
-		beego.NSRouter("/course/:courseid/unpublic", &course.CourseController{}, "get:CourseUnPublic"),
180
+		beego.NSRouter("/course/:courseid/unpublic", &course.CourseController{}, "put:CourseUnPublic"),
181
 		beego.NSRouter("/courseimg/:courseid", &course.CourseController{}, "get:GetCourseImgs"),
181
 		beego.NSRouter("/courseimg/:courseid", &course.CourseController{}, "get:GetCourseImgs"),
182
 		beego.NSRouter("/courseimg", &course.CourseController{}, "post:SaveCourseImg"),
182
 		beego.NSRouter("/courseimg", &course.CourseController{}, "post:SaveCourseImg"),
183
 		beego.NSRouter("/courseimg", &course.CourseController{}, "put:SaveCourseImg"),
183
 		beego.NSRouter("/courseimg", &course.CourseController{}, "put:SaveCourseImg"),

+ 3
- 3
service/course/course.go View File

134
 	if course.BeginDate.IsZero() || course.EndDate.IsZero() {
134
 	if course.BeginDate.IsZero() || course.EndDate.IsZero() {
135
 		return nil, utils.LogError("课程时间不允许为空!")
135
 		return nil, utils.LogError("课程时间不允许为空!")
136
 	}
136
 	}
137
-	if course.EndDate.After(course.BeginDate) {
137
+	if !course.EndDate.After(course.BeginDate) {
138
 		return nil, utils.LogError("截止时间必须大于开始时间!")
138
 		return nil, utils.LogError("截止时间必须大于开始时间!")
139
 	}
139
 	}
140
 	if tagids == "" {
140
 	if tagids == "" {
176
 			tagid = newtag.TagId
176
 			tagid = newtag.TagId
177
 		}
177
 		}
178
 		var coursetag = model.TaCourseTag{
178
 		var coursetag = model.TaCourseTag{
179
-			CourseId: course.CourseId,
179
+			CourseId: newInfo.CourseId,
180
 			TagId:    tagid,
180
 			TagId:    tagid,
181
 		}
181
 		}
182
 		courseTags = append(courseTags, coursetag)
182
 		courseTags = append(courseTags, coursetag)
306
 }
306
 }
307
 
307
 
308
 // GetDetails 获取所有排课
308
 // GetDetails 获取所有排课
309
-func (s *CourseServ) GetDetails(caseid, date string) ([]model.TaCourseDetail, error) {
309
+func (s *CourseServ) GetDetails(caseid, date string) ([]course.DetailInfo, error) {
310
 	if caseid == "" {
310
 	if caseid == "" {
311
 		return nil, utils.LogError("请先选择案场!")
311
 		return nil, utils.LogError("请先选择案场!")
312
 	}
312
 	}