|
|
@@ -1,76 +1,112 @@
|
|
|
package course
|
|
|
|
|
|
import (
|
|
|
- "dashoo.cn/micro_libary/response"
|
|
|
"dashoo.cn/modi_webapi/app/model/course"
|
|
|
service "dashoo.cn/modi_webapi/app/service/course"
|
|
|
|
|
|
+ "dashoo.cn/modi_webapi/library/request"
|
|
|
+ "dashoo.cn/modi_webapi/library/response"
|
|
|
+ "fmt"
|
|
|
"github.com/gogf/gf/net/ghttp"
|
|
|
+ "github.com/gogf/gf/os/glog"
|
|
|
+ "github.com/gogf/gf/os/gtime"
|
|
|
+ "github.com/gogf/gf/util/gvalid"
|
|
|
)
|
|
|
|
|
|
// 课程管理API管理对象
|
|
|
type Controller struct {
|
|
|
}
|
|
|
|
|
|
-// 注册请求参数,用于前后端交互参数格式约定
|
|
|
-type GetListRequest struct {
|
|
|
- course.AddOrUpdateReq
|
|
|
+// 添加一条课程信息
|
|
|
+func (c *Controller) AddCourse(r *ghttp.Request){
|
|
|
+ Course := new(course.Entity)
|
|
|
+ if err := r.Parse(Course); err != nil {
|
|
|
+ // 数据验证错误
|
|
|
+ if v, ok := err.(*gvalid.Error); ok {
|
|
|
+ response.Json(r, 1, v.FirstString())
|
|
|
+ r.ExitAll()
|
|
|
+ }
|
|
|
+ // 其他错误
|
|
|
+ response.Json(r, 1, err.Error())
|
|
|
+ r.ExitAll()
|
|
|
+ }
|
|
|
+ realName := r.GetParamVar("realname").String()
|
|
|
+ currentTime := gtime.Now()
|
|
|
+ Course.CreatedTime = currentTime
|
|
|
+ Course.UpdatedBy = realName
|
|
|
+
|
|
|
+ if result,err := course.Insert(Course); err != nil {
|
|
|
+ response.Json(r, 1, err.Error())
|
|
|
+ } else {
|
|
|
+ var records response.PagedRecords
|
|
|
+ id, _ := result.LastInsertId()
|
|
|
+ Course.Id = int(id)
|
|
|
+ records.Records = Course
|
|
|
+ response.Json(r, 0, "", records)
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
-// 保存课程信息
|
|
|
-func (c *Controller) Save(r *ghttp.Request) {
|
|
|
- // tenant 租户模式
|
|
|
- tenant := r.Header.Get("Tenant")
|
|
|
- var addOrUpdateReq *course.AddOrUpdateReq
|
|
|
- // 赋值并// 校验参数
|
|
|
- if err := r.Parse(&addOrUpdateReq); err != nil {
|
|
|
+// 获取课程管理列表
|
|
|
+func (c *Controller) GetAllCourse(r *ghttp.Request){
|
|
|
+ page := request.GetPageInfo(r)
|
|
|
+ where := ""
|
|
|
+
|
|
|
+ if year := r.GetInt("Year"); year != 0 {
|
|
|
+ if where == ""{
|
|
|
+ where = fmt.Sprintf(" Year = %v", year)
|
|
|
+ } else {
|
|
|
+ where += fmt.Sprintf(" AND Year = %v", year)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if term := r.GetInt("Term"); term != 0 {
|
|
|
+ if where == ""{
|
|
|
+ where = fmt.Sprintf(" Term LIKE '%%%v%%'", term)
|
|
|
+ } else {
|
|
|
+ where += fmt.Sprintf(" AND Term LIKE '%%%v%%'", term)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ var result []course.Entity
|
|
|
+ if err := course.GetAllCourse(page, where, &result); err != nil{
|
|
|
+ if err.Error() == "sql: no rows in result set"{
|
|
|
+ response.Json(r, 0, "")
|
|
|
+ return
|
|
|
+ }
|
|
|
response.Json(r, -1, err.Error())
|
|
|
+ }else {
|
|
|
+ count, err1 := course.FindCourseCount(where)
|
|
|
+ if err1 != nil {
|
|
|
+ response.Json(r, -1, err1.Error())
|
|
|
+ } else {
|
|
|
+ var records response.PagedRecords
|
|
|
+ records.Total = count
|
|
|
+ records.Records = result
|
|
|
+ response.Json(r, 0, "", records)
|
|
|
+ }
|
|
|
}
|
|
|
+}
|
|
|
+
|
|
|
+// Delete 删除课程主表信息
|
|
|
+func (c *Controller) DeleteCourse(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ id := r.GetInt("id")
|
|
|
+ glog.Info(id)
|
|
|
|
|
|
- // 初始化
|
|
|
+ // 初始化学生service
|
|
|
servcie, err := service.NewCourseService(tenant)
|
|
|
if err != nil {
|
|
|
response.Json(r, 1, err.Error())
|
|
|
}
|
|
|
|
|
|
- // 判断是新增还是删除,获取的id为空新增,不为空则更新
|
|
|
- if addOrUpdateReq.Id > 0 {
|
|
|
- if newStudent, err := servcie.Update(addOrUpdateReq); err != nil {
|
|
|
- response.Json(r, 1, err.Error())
|
|
|
- } else {
|
|
|
- response.Json(r, 0, "更新成功", newStudent)
|
|
|
- }
|
|
|
+ if err := servcie.Delete(id); err != nil {
|
|
|
+ response.Json(r, 1, err.Error())
|
|
|
} else {
|
|
|
- addOrUpdateReq.Id = 0
|
|
|
- if newId, err := servcie.Add(addOrUpdateReq); err != nil {
|
|
|
- response.Json(r, 1, err.Error())
|
|
|
- } else {
|
|
|
- response.Json(r, 0, "新建成功", newId)
|
|
|
- }
|
|
|
+ response.Json(r, 0, "删除成功")
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
|
|
|
-// DeleteStudentById 删除信息,更新信息删除状态isDel=1
|
|
|
-//func (c *Controller) DeleteById(r *ghttp.Request) {
|
|
|
-// // tenant 租户模式
|
|
|
-// tenant := r.Header.Get("Tenant")
|
|
|
-// id := r.GetInt("id")
|
|
|
-// glog.Info(id)
|
|
|
-//
|
|
|
-// // 初始化学生service
|
|
|
-// servcie, err := service.NewInformationService(tenant)
|
|
|
-// if err != nil {
|
|
|
-// response.Json(r, 1, err.Error())
|
|
|
-// }
|
|
|
-//
|
|
|
-// if err := servcie.Delete(id); err != nil {
|
|
|
-// response.Json(r, 1, err.Error())
|
|
|
-// } else {
|
|
|
-// response.Json(r, 0, "删除成功")
|
|
|
-// }
|
|
|
-//}
|
|
|
-//
|
|
|
//// GetDetailById 根据id信息详情
|
|
|
//func (c *Controller) GetDetailById(r *ghttp.Request) {
|
|
|
// // tenant 租户模式
|
|
|
@@ -92,31 +128,3 @@ func (c *Controller) Save(r *ghttp.Request) {
|
|
|
//
|
|
|
//}
|
|
|
//
|
|
|
-//// GetPageList 分页查询信息列表
|
|
|
-//func (c *Controller) GetPageList(r *ghttp.Request) {
|
|
|
-// // tenant 租户模式
|
|
|
-// tenant := r.Header.Get("Tenant")
|
|
|
-// // 初始化service
|
|
|
-// servcie, err := service.NewCourseService(tenant)
|
|
|
-// if err != nil {
|
|
|
-// response.Json(r, 1, err.Error())
|
|
|
-// }
|
|
|
-// // 分页查询信息列表
|
|
|
-// var selectPageReq information.SelectPageReq
|
|
|
-// // 赋值并// 校验参数
|
|
|
-// if err := r.Parse(&selectPageReq); err != nil {
|
|
|
-// response.Json(r, -1, err.Error())
|
|
|
-// }
|
|
|
-// if informationList, total, err := servcie.GetPageList(&selectPageReq); err != nil {
|
|
|
-// response.Json(r, -1, err.Error())
|
|
|
-// } else {
|
|
|
-// var records response.PagedRecords
|
|
|
-// records.Current = selectPageReq.Page.Current
|
|
|
-// records.Size = selectPageReq.Page.Size
|
|
|
-// if total > 0 {
|
|
|
-// records.Total = total
|
|
|
-// records.Records = informationList
|
|
|
-// }
|
|
|
-// response.Json(r, 0, "ok", records)
|
|
|
-// }
|
|
|
-//}
|