liuyang 5 rokov pred
rodič
commit
80282f2fdd

+ 41 - 2
backend/src/dashoo.cn/modi_webapi/app/api/duty/detail.go

@@ -51,6 +51,10 @@ func (c *DetailController) GetPageList(r *ghttp.Request) {
 func (c *DetailController) AddDetail(r *ghttp.Request) {
 	// tenant 租户模式
 	tenant := r.Header.Get("Tenant")
+	if DutyId := r.GetInt("DutyId"); DutyId == 0 {
+		response.Json(r, -1, "值班ID不能为空")
+	}
+
 	var entity *detail.Entity
 	// 赋值并校验参数
 	if err := r.Parse(&entity); err != nil {
@@ -77,6 +81,9 @@ func (c *DetailController) GetDetailById(r *ghttp.Request) {
 	// tenant 租户模式
 	tenant := r.Header.Get("Tenant")
 	Id := r.GetInt("Id")
+	if Id == 0 {
+		response.Json(r, -1, "Id不能为空")
+	}
 	// 初始化课程详情service
 	service, err := detailService.NewDetailService(tenant)
 	if err != nil {
@@ -94,11 +101,15 @@ func (c *DetailController) GetDetailById(r *ghttp.Request) {
 func (c *DetailController) UpdateDetail(r *ghttp.Request) {
 	// tenant 租户模式
 	tenant := r.Header.Get("Tenant")
-	var entity *detail.Entity
+	var entity *detail.UpdDateReq
 	// 赋值并校验参数
 	if err := r.Parse(&entity); err != nil {
 		response.Json(r, -1, err.Error())
 	}
+	Id := r.GetInt("Id")
+	if Id == 0 {
+		response.Json(r, -1, "Id不能为空")
+	}
 	// 初始化课程详情service
 	service, err := detailService.NewDetailService(tenant)
 	if err != nil {
@@ -108,10 +119,38 @@ func (c *DetailController) UpdateDetail(r *ghttp.Request) {
 	realName := r.GetParamVar("realname").String()
 	entity.UpdatedBy = realName
 
-	if detail, err := service.Save(entity); err != nil {
+	if detail, err := service.Save(Id, entity); err != nil {
 		response.Json(r, 1, err.Error())
 	} else {
 		response.Json(r, 0, "更新成功", detail)
 	}
 
 }
+
+// 删除
+func (c *DetailController) DeleteDetail(r *ghttp.Request) {
+	// tenant 租户模式
+	tenant := r.Header.Get("Tenant")
+	// 详情id
+	Ids := r.GetInts("ids")
+	if len(Ids) == 0 {
+		response.Json(r, -1, "ids不能为空")
+	}
+	delIdsReq := new(common.DeleteIdsReq)
+	delUpdReq := new(common.DeleteUpdReq)
+	delIdsReq.Id = Ids
+	// 获取操作人
+	realName := r.GetParamVar("realname").String()
+	delUpdReq.UpdatedBy = realName
+	// 初始化service
+	service, err := detailService.NewDetailService(tenant)
+	if err != nil {
+		response.Json(r, -1, err.Error())
+	}
+	if err := service.DeleteById(delIdsReq, delUpdReq); err != nil {
+		response.Json(r, 1, err.Error())
+	} else {
+		response.Json(r, 0, "删除成功")
+	}
+
+}

+ 16 - 5
backend/src/dashoo.cn/modi_webapi/app/api/duty/duty.go

@@ -1,11 +1,11 @@
 package duty
 
 import (
+	"dashoo.cn/micro_libary/response"
 	"dashoo.cn/modi_webapi/app/common"
 	"dashoo.cn/modi_webapi/app/model/duty"
 	dutyService "dashoo.cn/modi_webapi/app/service/duty"
 	"dashoo.cn/modi_webapi/library/request"
-	"dashoo.cn/modi_webapi/library/response"
 	"github.com/gogf/gf/net/ghttp"
 )
 
@@ -63,7 +63,7 @@ func (c *DutyController) GetPageList(r *ghttp.Request) {
 func (c *DutyController) AddDuty(r *ghttp.Request) {
 	// tenant 租户模式
 	tenant := r.Header.Get("Tenant")
-	var entity *duty.Entity
+	var entity *duty.AddDateReq
 	// 赋值并校验参数
 	if err := r.Parse(&entity); err != nil {
 		response.Json(r, -1, err.Error())
@@ -89,6 +89,9 @@ func (c *DutyController) GetDutyById(r *ghttp.Request) {
 	// tenant 租户模式
 	tenant := r.Header.Get("Tenant")
 	Id := r.GetInt("Id")
+	if Id == 0 {
+		response.Json(r, -1, "Id不能为空")
+	}
 	// 初始化课程详情service
 	service, err := dutyService.NewDutyService(tenant)
 	if err != nil {
@@ -106,11 +109,16 @@ func (c *DutyController) GetDutyById(r *ghttp.Request) {
 func (c *DutyController) UpdateDuty(r *ghttp.Request) {
 	// tenant 租户模式
 	tenant := r.Header.Get("Tenant")
-	var entity *duty.Entity
+	var entity *duty.UpdDateReq
 	// 赋值并校验参数
 	if err := r.Parse(&entity); err != nil {
 		response.Json(r, -1, err.Error())
 	}
+	Id := r.GetInt("Id")
+	if Id == 0 {
+		response.Json(r, -1, "Id不能为空")
+	}
+
 	// 初始化课程详情service
 	service, err := dutyService.NewDutyService(tenant)
 	if err != nil {
@@ -120,7 +128,7 @@ func (c *DutyController) UpdateDuty(r *ghttp.Request) {
 	realName := r.GetParamVar("realname").String()
 	entity.UpdatedBy = realName
 
-	if duty, err := service.Save(entity); err != nil {
+	if duty, err := service.Save(Id, entity); err != nil {
 		response.Json(r, 1, err.Error())
 	} else {
 		response.Json(r, 0, "更新成功", duty)
@@ -134,13 +142,16 @@ func (c *DutyController) DeleteDuty(r *ghttp.Request) {
 	tenant := r.Header.Get("Tenant")
 	// 详情id
 	Ids := r.GetInts("ids")
+	if len(Ids) == 0 {
+		response.Json(r, -1, "ids不能为空")
+	}
 	delIdsReq := new(common.DeleteIdsReq)
 	delUpdReq := new(common.DeleteUpdReq)
 	delIdsReq.Id = Ids
 	// 获取操作人
 	realName := r.GetParamVar("realname").String()
 	delUpdReq.UpdatedBy = realName
-	// 初始化课程详情service
+	// 初始化详情service
 	service, err := dutyService.NewDutyService(tenant)
 	if err != nil {
 		response.Json(r, -1, err.Error())

+ 23 - 1
backend/src/dashoo.cn/modi_webapi/app/model/duty/detail/detail.go

@@ -1,6 +1,9 @@
 package detail
 
-import "dashoo.cn/modi_webapi/app/common"
+import (
+	"dashoo.cn/modi_webapi/app/common"
+	"github.com/gogf/gf/os/gtime"
+)
 
 // 搜索请求
 type SelectPageReq struct {
@@ -12,3 +15,22 @@ type SelectPageReq struct {
 	Prop   string           `json:prop`
 	Order  string           `json:order`
 }
+
+// 修改
+type UpdDateReq struct {
+	DutyId      int         `xorm:"INT(10)" v:"required"` // 值周ID
+	Local       string      `xorm:"INT(10)"`              // 地点
+	Time        int         `xorm:"INT(10)"`              // 时间段
+	Status      string      `xorm:"VARCHAR(32)"`          // 状态
+	People      string      `xorm:"VARCHAR(32)"`          // 值班人员
+	Monday      int         `xorm:"INT(10)"`              // 周一
+	Tuesday     int         `xorm:"INT(10)"`              // 周二
+	Wednesday   int         `xorm:"INT(10)"`              // 周三
+	Thursday    int         `xorm:"INT(10)"`              // 周四
+	Friday      int         `xorm:"INT(10)"`              // 周五
+	Saturday    int         `xorm:"INT(10)"`              // 周六
+	Sunday      int         `xorm:"INT(10)"`              // 周天
+	UpdatedBy   string      `xorm:"VARCHAR(32)"`          // 更新人
+	UpdatedTime *gtime.Time `xorm:"DATETIME updated"`     // 更新时间
+	IsDel       int         `xorm:"INT(11)"`              // 删除标志
+}

+ 1 - 1
backend/src/dashoo.cn/modi_webapi/app/model/duty/detail/detail_entity.go

@@ -13,7 +13,7 @@ import (
 // Entity is the golang structure for table instrument.
 type Entity struct {
 	Id          int         `xorm:"not null pk autoincr INT(10)"` // id
-	DutyId      int         `xorm:"INT(10)"`                      // 值周ID
+	DutyId      int         `xorm:"INT(10)" v:"required"`         // 值周ID
 	Local       string      `xorm:"INT(10)"`                      // 地点
 	Time        int         `xorm:"INT(10)"`                      // 时间段
 	Status      string      `xorm:"VARCHAR(32)"`                  // 状态

+ 26 - 1
backend/src/dashoo.cn/modi_webapi/app/model/duty/duty.go

@@ -4,7 +4,10 @@
 
 package duty
 
-import "dashoo.cn/modi_webapi/app/common"
+import (
+	"dashoo.cn/modi_webapi/app/common"
+	"github.com/gogf/gf/os/gtime"
+)
 
 // 搜索请求
 type SelectPageReq struct {
@@ -13,3 +16,25 @@ type SelectPageReq struct {
 	Term   int    `protobuf:"bytes,2,opt,name=Term,proto3" json:"Term,omitempty"`
 	Common common.SelectPageReq
 }
+
+// 添加
+type AddDateReq struct {
+	Year        int         `xorm:"INT(10)" v:"required"`     // 学年
+	Term        string      `xorm:"VARCHAR(32)" v:"required"` // 学期
+	Title       string      `xorm:"VARCHAR(32)" v:"required"` // 标题
+	Status      string      `xorm:"VARCHAR(32)" v:"required"` // 状态
+	CreatedBy   string      `xorm:"VARCHAR(32)"`              // 创建人
+	CreatedTime *gtime.Time `xorm:"DATETIME created"`         // 创建时间
+	IsDel       int         `xorm:"INT(10)"`                  // 删除标志
+}
+
+// 修改
+type UpdDateReq struct {
+	Year        int         `xorm:"INT(10)"`          // 学年
+	Term        string      `xorm:"VARCHAR(32)"`      // 学期
+	Title       string      `xorm:"VARCHAR(32)"`      // 标题
+	Status      string      `xorm:"VARCHAR(32)"`      // 状态
+	UpdatedBy   string      `xorm:"VARCHAR(32)"`      // 更新人
+	UpdatedTime *gtime.Time `xorm:"DATETIME updated"` // 更新时间
+	IsDel       int         `xorm:"INT(10)"`          // 删除标志
+}

+ 2 - 2
backend/src/dashoo.cn/modi_webapi/app/model/duty/duty_entity.go

@@ -13,7 +13,7 @@ import (
 // Entity is the golang structure for table instrument.
 type Entity struct {
 	Id          int         `xorm:"not null pk autoincr INT(10)"` // id
-	Year        int         `xorm:"not null pk autoincr INT(11)"` // 学年
+	Year        int         `xorm:"INT(10)"`                      // 学年
 	Term        string      `xorm:"VARCHAR(32)"`                  // 学期
 	Title       string      `xorm:"VARCHAR(32)"`                  // 标题
 	Status      string      `xorm:"VARCHAR(32)"`                  // 状态
@@ -21,7 +21,7 @@ type Entity struct {
 	CreatedTime *gtime.Time `xorm:"DATETIME created"`             // 创建时间
 	UpdatedBy   string      `xorm:"VARCHAR(32)"`                  // 更新人
 	UpdatedTime *gtime.Time `xorm:"DATETIME updated"`             // 更新时间
-	IsDel       int         `xorm:"INT(11)"`                      // 删除标志
+	IsDel       int         `xorm:"INT(10)"`                      // 删除标志
 
 }
 

+ 4 - 4
backend/src/dashoo.cn/modi_webapi/app/service/duty/detail.go

@@ -34,7 +34,7 @@ func (s DetailService) GetPageList(param *common.SelectPageReq) (list []*detail.
 	// 列表查询
 	model = model.Page(int(param.Page.Current), int(param.Page.PagesSize)).Order(orderby)
 	var result []*detail.Entity
-	err = model.Struct(&result)
+	err = model.Structs(&result)
 	// 如果未查到列表返回空
 	if err == sql.ErrNoRows {
 		return nil, 0, nil
@@ -74,14 +74,14 @@ func (s DetailService) DeleteById(Ids *common.DeleteIdsReq, param *common.Delete
 }
 
 // 更新
-func (s DetailService) Save(param *detail.Entity) (*detail.Entity, error) {
-	detail, err := s.GetDetailById(param.Id)
+func (s DetailService) Save(Id int, param *detail.UpdDateReq) (*detail.Entity, error) {
+	detail, err := s.GetDetailById(Id)
 	if err != nil {
 		return nil, err
 	}
 	// 设置更新时间
 	param.UpdatedTime = gtime.Now()
-	if _, err = s.SafeModel.Where(param.Id).Update(param); err != nil {
+	if _, err = s.SafeModel.Where("Id", Id).Update(param); err != nil {
 		return nil, err
 	}
 	return detail, nil

+ 7 - 6
backend/src/dashoo.cn/modi_webapi/app/service/duty/duty.go

@@ -41,11 +41,12 @@ func (s DutyService) GetPageList(param *duty.SelectPageReq) (list []*duty.Entity
 		return nil, -1, gerror.New("读取行数失败")
 	}
 	// 排序
-	orderby := "Id asc" // 默认排序
+	orderby := "Id desc" // 默认排序
 	// 列表查询
 	model = model.Page(int(param.Common.Page.Current), int(param.Common.Page.PagesSize)).Order(orderby)
 	var result []*duty.Entity
-	err = model.Struct(&result)
+	err = model.Structs(&result)
+
 	// 如果未查到列表返回空
 	if err == sql.ErrNoRows {
 		return nil, 0, nil
@@ -54,7 +55,7 @@ func (s DutyService) GetPageList(param *duty.SelectPageReq) (list []*duty.Entity
 }
 
 // 新增
-func (s DutyService) Add(param *duty.Entity) (id int64, err error) {
+func (s DutyService) Add(param *duty.AddDateReq) (id int64, err error) {
 	param.CreatedTime = gtime.Now()
 	if result, err := s.SafeModel.Insert(param); err != nil {
 		return 0, err
@@ -85,14 +86,14 @@ func (s DutyService) DeleteById(Ids *common.DeleteIdsReq, param *common.DeleteUp
 }
 
 // 更新
-func (s DutyService) Save(param *duty.Entity) (*duty.Entity, error) {
-	duty, err := s.GetDutyById(param.Id)
+func (s DutyService) Save(Id int, param *duty.UpdDateReq) (*duty.Entity, error) {
+	duty, err := s.GetDutyById(Id)
 	if err != nil {
 		return nil, err
 	}
 	// 设置更新时间
 	param.UpdatedTime = gtime.Now()
-	if _, err = s.SafeModel.Where(param.Id).Update(param); err != nil {
+	if _, err = s.SafeModel.Where("Id", Id).Update(param); err != nil {
 		return nil, err
 	}
 	return duty, nil

+ 1 - 0
backend/src/dashoo.cn/modi_webapi/router/router.go

@@ -56,6 +56,7 @@ func init() {
 		{"All", "/class", new(class.Controller)},
 		// 值班表管理
 		{"All", "/duty", new(duty.DutyController)},
+		{"All", "/duty/detail", new(duty.DetailController)},
 		// 课程管理
 		{"All", "/course", new(course.Controller)},
 		{"All", "/course/detail", new(detail.CourseDetailController)},