|
|
@@ -1,139 +1,151 @@
|
|
|
package duty
|
|
|
|
|
|
import (
|
|
|
- "dashoo.cn/modi_webapi/app/service/duty"
|
|
|
+ "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"
|
|
|
- "fmt"
|
|
|
"github.com/gogf/gf/net/ghttp"
|
|
|
- "github.com/gogf/gf/os/gtime"
|
|
|
- "github.com/gogf/gf/util/gvalid"
|
|
|
)
|
|
|
|
|
|
-type Controller struct {
|
|
|
+type DutyController struct {
|
|
|
}
|
|
|
-// 获取值班管理列表
|
|
|
-func (c *Controller) GetAllDuty(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)
|
|
|
- }
|
|
|
+// 分页查询
|
|
|
+func (c *DutyController) GetPageList(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ page := request.GetPageInfo(r)
|
|
|
+ // 初始化service
|
|
|
+ service, err := dutyService.NewDutyService(tenant)
|
|
|
+ if err != nil {
|
|
|
+ response.Json(r, 1, err.Error())
|
|
|
}
|
|
|
-
|
|
|
- if term := r.GetString("Term"); term != ""{
|
|
|
- if where == ""{
|
|
|
- where = fmt.Sprintf(" Term LIKE '%%%v%%'", term)
|
|
|
- } else {
|
|
|
- where += fmt.Sprintf(" AND Term LIKE '%%%v%%'", term)
|
|
|
- }
|
|
|
+ pageInfo := common.PageInfo{
|
|
|
+ Current: page.Current,
|
|
|
+ PagesSize: page.Size,
|
|
|
+ }
|
|
|
+ selectPageReq := duty.SelectPageReq{
|
|
|
+ Tenant: tenant,
|
|
|
+ Title: "",
|
|
|
+ Year: 0,
|
|
|
+ Term: 0,
|
|
|
+ Page: &pageInfo,
|
|
|
+ Order: r.GetString("order"),
|
|
|
+ }
|
|
|
+ if Title := r.GetString("Title"); Title != "" {
|
|
|
+ selectPageReq.Title = Title
|
|
|
+ }
|
|
|
+ if Year := r.GetInt("Year"); Year != 0 {
|
|
|
+ selectPageReq.Year = Year
|
|
|
+ }
|
|
|
+ if Term := r.GetInt("Term"); Term != 0 {
|
|
|
+ selectPageReq.Term = Term
|
|
|
}
|
|
|
|
|
|
- var result []duty.Entity
|
|
|
- if err := duty.GetAllDuty(page, where, &result); err != nil{
|
|
|
- if err.Error() == "sql: no rows in result set"{
|
|
|
- response.Json(r, 0, "")
|
|
|
- return
|
|
|
- }
|
|
|
+ if dutyList, total, err := service.GetPageList(&selectPageReq); err != nil {
|
|
|
response.Json(r, -1, err.Error())
|
|
|
- }else {
|
|
|
- count, err1 := duty.FindDutyCount(where)
|
|
|
- if err1 != nil {
|
|
|
- response.Json(r, -1, err1.Error())
|
|
|
- } else {
|
|
|
- var records response.PagedRecords
|
|
|
- records.Size = page.Size
|
|
|
- records.Current = page.Current
|
|
|
- records.Total = count
|
|
|
- records.Records = result
|
|
|
- response.Json(r, 0, "", records)
|
|
|
- }
|
|
|
+ } else {
|
|
|
+ var records response.PagedRecords
|
|
|
+ records.Current = page.Current
|
|
|
+ records.Size = page.Size
|
|
|
+ records.Total = total
|
|
|
+ records.Records = dutyList
|
|
|
+ response.Json(r, 0, "ok", records)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-// 添加一条值班信息
|
|
|
-func (c *Controller) AddDuty(r *ghttp.Request){
|
|
|
- Duty := new(duty.Entity)
|
|
|
- if err := r.Parse(Duty); 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()
|
|
|
+// 添加值班
|
|
|
+func (c *DutyController) AddDuty(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ var entity *duty.Entity
|
|
|
+ // 赋值并校验参数
|
|
|
+ if err := r.Parse(&entity); err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
+ }
|
|
|
+ // 初始化课程详情service
|
|
|
+ service, err := dutyService.NewDutyService(tenant)
|
|
|
+ if err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
}
|
|
|
+ // 获取操作人
|
|
|
realName := r.GetParamVar("realname").String()
|
|
|
- currentTime := gtime.Now()
|
|
|
- Duty.CreatedTime = currentTime
|
|
|
- Duty.CreatedBy = realName
|
|
|
- Duty.UpdatedTime = currentTime
|
|
|
- Duty.UpdatedBy = realName
|
|
|
-
|
|
|
- if result,err := duty.Insert(Duty); err != nil {
|
|
|
+ entity.CreatedBy = realName
|
|
|
+ if newId, err := service.Add(entity); err != nil {
|
|
|
response.Json(r, 1, err.Error())
|
|
|
} else {
|
|
|
- var records response.PagedRecords
|
|
|
- id, _ := result.LastInsertId()
|
|
|
- Duty.Id = int(id)
|
|
|
- records.Records = Duty
|
|
|
- response.Json(r, 0, "", records)
|
|
|
+ response.Json(r, 0, "新增成功", newId)
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
-// 获取一条值班信息
|
|
|
-func (c *Controller) GetOneDuty(r *ghttp.Request){
|
|
|
- id := r.GetInt("id")
|
|
|
- if result, err := duty.FindOne(id); err != nil {
|
|
|
+
|
|
|
+// 获取详情
|
|
|
+func (c *DutyController) GetDutyById(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ Id := r.GetInt("Id")
|
|
|
+ // 初始化课程详情service
|
|
|
+ service, err := dutyService.NewDutyService(tenant)
|
|
|
+ if err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
+ }
|
|
|
+ if duty, err := service.GetDutyById(Id); err != nil {
|
|
|
response.Json(r, 1, err.Error())
|
|
|
- r.ExitAll()
|
|
|
- }else {
|
|
|
- var records response.PagedRecords
|
|
|
- records.Records = result
|
|
|
- response.Json(r, 0, "", records)
|
|
|
+ } else {
|
|
|
+ response.Json(r, 0, "ok", duty)
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
-// 修改一条值班信息
|
|
|
-func (c *Controller) UpdateDuty(r *ghttp.Request){
|
|
|
- Duty := new(duty.Entity)
|
|
|
- if err := r.Parse(Duty); 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()
|
|
|
+// 更新
|
|
|
+func (c *DutyController) UpdateDuty(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ var entity *duty.Entity
|
|
|
+ // 赋值并校验参数
|
|
|
+ if err := r.Parse(&entity); err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
}
|
|
|
-
|
|
|
+ // 初始化课程详情service
|
|
|
+ service, err := dutyService.NewDutyService(tenant)
|
|
|
+ if err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
+ }
|
|
|
+ // 获取操作人
|
|
|
realName := r.GetParamVar("realname").String()
|
|
|
- currentTime := gtime.Now()
|
|
|
+ entity.UpdatedBy = realName
|
|
|
|
|
|
- Duty.UpdatedTime = currentTime
|
|
|
- Duty.UpdatedBy = realName
|
|
|
-
|
|
|
- if _,err := duty.Replace(Duty); err != nil {
|
|
|
+ if duty, err := service.Save(entity); err != nil {
|
|
|
response.Json(r, 1, err.Error())
|
|
|
} else {
|
|
|
- var records response.PagedRecords
|
|
|
- records.Records = Duty
|
|
|
- response.Json(r, 0, "", records)
|
|
|
+ response.Json(r, 0, "更新成功", duty)
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
- // 删除一条值班信息
|
|
|
-func (c *Controller) DeleteDuty(r *ghttp.Request){
|
|
|
- id := r.GetInt("id")
|
|
|
- if _,err := duty.Delete(fmt.Sprintf("Id=%v", id)); err != nil{
|
|
|
+
|
|
|
+// 删除
|
|
|
+func (c *DutyController) DeleteDuty(r *ghttp.Request) {
|
|
|
+ // tenant 租户模式
|
|
|
+ tenant := r.Header.Get("Tenant")
|
|
|
+ // 详情id
|
|
|
+ Ids := r.GetInts("ids")
|
|
|
+ delIdsReq := new(common.DeleteIdsReq)
|
|
|
+ delUpdReq := new(common.DeleteUpdReq)
|
|
|
+ delIdsReq.Id = Ids
|
|
|
+ // 获取操作人
|
|
|
+ realName := r.GetParamVar("realname").String()
|
|
|
+ delUpdReq.UpdatedBy = realName
|
|
|
+ // 初始化课程详情service
|
|
|
+ service, err := dutyService.NewDutyService(tenant)
|
|
|
+ if err != nil {
|
|
|
+ response.Json(r, -1, err.Error())
|
|
|
+ }
|
|
|
+ if err := service.DeleteById(delIdsReq, delUpdReq); err != nil {
|
|
|
response.Json(r, 1, err.Error())
|
|
|
- r.ExitAll()
|
|
|
} else {
|
|
|
- response.Json(r, 0, "该记录已删除!")
|
|
|
+ response.Json(r, 0, "删除成功")
|
|
|
}
|
|
|
+
|
|
|
}
|