Files
zmkgC/api/v1/system/work_schedule.go
2025-07-07 20:11:59 +08:00

212 lines
7.6 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// ==========================================================================
// GFast自动生成api操作代码。
// 生成日期2024-03-20 10:02:26
// 生成路径: api/v1/system/work_schedule.go
// 生成人gfast
// desc:工作计划相关参数
// company:云南奇讯科技有限公司
// ==========================================================================
package system
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
commonApi "github.com/tiger1103/gfast/v3/api/v1/common"
"github.com/tiger1103/gfast/v3/internal/app/system/model"
)
// WorkScheduleSearchReq 分页请求参数
type WorkScheduleSearchReq struct {
g.Meta `path:"/list" tags:"工作计划" method:"get" summary:"工作计划列表"`
Id string `p:"id"` //
WorkId string `p:"workId"` // 关联的工作ID
StartAt string `p:"startAt" v:"startAt@datetime#开始时间需为YYYY-MM-DD hh:mm:ss格式"` // 开始时间
Detail string `p:"detail"` // 每天详细数据
Status string `p:"status" v:"status@integer#状态需为整数"` // 状态
PlanNum string `p:"planNum" v:"planNum@integer#计划需为整数"` // 计划
FinishedNum string `p:"finishedNum" v:"finishedNum@integer#完成量需为整数"` // 完成量
commonApi.PageReq
commonApi.Author
}
// WorkScheduleSearchRes 列表返回结果
type WorkScheduleSearchRes struct {
g.Meta `mime:"application/json"`
commonApi.ListRes
List []*model.WorkScheduleInfo2Res `json:"list"`
}
// WorkScheduleAddReq 添加操作请求参数
type WorkScheduleAddReq struct {
g.Meta `path:"/add" tags:"工作计划" method:"post" summary:"工作计划添加"`
commonApi.Author
WorkId string `p:"workId" `
StartAt *gtime.Time `p:"startAt" `
Detail string `p:"detail" `
Status int `p:"status" v:"required#状态不能为空"`
PlanNum int `p:"planNum" `
FinishedNum int `p:"finishedNum" `
}
// WorkScheduleAddRes 添加操作返回结果
type WorkScheduleAddRes struct {
commonApi.EmptyRes
}
// WorkScheduleEditReq 修改操作请求参数
type WorkScheduleEditReq struct {
g.Meta `path:"/edit" tags:"工作计划" method:"put" summary:"工作计划修改"`
commonApi.Author
Id uint `p:"id" v:"required#主键ID不能为空"`
WorkId string `p:"workId" `
StartAt *gtime.Time `p:"startAt" `
Detail string `p:"detail" `
Status int `p:"status" v:"required#状态不能为空"`
PlanNum int `p:"planNum" `
FinishedNum int `p:"finishedNum" `
}
// WorkScheduleEditRes 修改操作返回结果
type WorkScheduleEditRes struct {
commonApi.EmptyRes
}
// WorkScheduleGetReq 获取一条数据请求
type WorkScheduleGetReq struct {
g.Meta `path:"/get" tags:"工作计划" method:"get" summary:"获取工作计划信息"`
commonApi.Author
Id uint `p:"id" v:"required#主键必须"` // 通过主键获取
}
// WorkScheduleGetRes 获取一条数据结果
type WorkScheduleGetRes struct {
g.Meta `mime:"application/json"`
*model.WorkScheduleInfoRes
}
// WorkScheduleDeleteReq 删除数据请求
type WorkScheduleDeleteReq struct {
g.Meta `path:"/delete" tags:"工作计划" method:"delete" summary:"删除工作计划"`
commonApi.Author
Ids int `p:"ids" v:"required#主键必须" dc:"计划的主键ID"` // 通过主键删除
// 方阵ID
FangzhenId string `p:"fangzhenId" v:"required#方阵ID不能为空" dc:"当前方阵ID"`
}
// WorkScheduleDeleteRes 删除数据返回
type WorkScheduleDeleteRes struct {
commonApi.EmptyRes
}
type ScheduleDetail struct {
Date string `json:"date" dc:"日期"`
// 计划数量
PlanNum int `json:"planNum" dc:"单日计划数量"`
}
// WorkScheduleAdddReq 新增工作计划
type WorkScheduleAdddReq struct {
g.Meta `path:"/addPlan" tags:"工作计划" method:"post" summary:"工作计划添加"`
// 工作ID
WorkID string `p:"workId" v:"required#工作ID不能为空" dc:"工作ID"`
// 是否延期
IsDelay int `p:"is_delay" d:"0" dc:"是否延期"`
// 计划数量
PlanNum int `p:"planNum" v:"required#计划数量不能为空" dc:"计划总数量"`
// 计划工期
PlanTime []ScheduleDetail `p:"scheduledTime" v:"required#计划工期不能为空" dc:"计划工期"`
}
// 新增工作计划返回
type WorkScheduleAdddRes struct {
commonApi.EmptyRes
}
// 获取指定 WorkID 下最后一个任务的结束时间
type WorkScheduleLastTimeReq struct {
g.Meta `path:"/lastTime" tags:"工作计划" method:"get" summary:"获取指定工作ID下最后一个任务的结束时间"`
commonApi.Author
// 是否延期
IsDelay int `p:"is_delay" dc:"是否延期"`
WorkID string `p:"workId" v:"required#工作ID不能为空" dc:"工作ID"`
}
type WorkScheduleLastTimeRes struct {
g.Meta `mime:"application/json"`
// 结束时间
EndAt *gtime.Time `json:"endAt" dc:"最后一个任务的结束时间"`
// 剩余可分配数量
RemainingNum int `json:"remainingNum" dc:"剩余可分配数量"`
}
type WorkScheduleSubmitReq struct {
g.Meta `path:"/submit" tags:"工作计划" method:"post" summary:"提交工作计划"`
ID uint `p:"id" v:"required#主键ID不能为空" dc:"主键ID"`
WorkID string `p:"workId" v:"required#工作ID不能为空" dc:"工作ID"`
SubmitTime string `p:"submitTime" v:"required#提交时间不能为空" dc:"提交时间"`
FinishedNum int `p:"finishedNum" v:"required#完成数量不能为空" dc:"完成数量"`
}
type WorkScheduleSubmitRes struct {
commonApi.EmptyRes
}
type WorkScheduleDetailReq struct {
g.Meta `path:"/scheduleDetail" tags:"工作计划" method:"get" summary:"获取工作计划详情"`
WorkID string `p:"workId" v:"required#工作ID不能为空" dc:"工作ID"`
}
type WorkScheduleDetailRes struct {
g.Meta `mime:"application/json"`
List []model.WorkScheduleDetail `json:"list"`
}
// 获取导出日报的可选日期
type WorkScheduleExportDateReq struct {
g.Meta `path:"/exportDate" tags:"工作计划" method:"get" summary:"获取导出日报的可选日期"`
SubProjectID string `p:"subProjectId" dc:"子项目ID"`
FangzhenID string `p:"fangzhenId" dc:"方阵ID"`
}
type WorkScheduleExportDateRes struct {
g.Meta `mime:"application/json"`
// 可选日期
StartTime string `json:"startTime"` // 起始时间
EndTime string `json:"endTime"` // 结束时间
}
// 导出为 Excel
type WorkScheduleExportExcelReq struct {
g.Meta `path:"/exportExcel" tags:"工作计划" method:"get" summary:"导出为Excel"`
// 方阵ID
FangzhenID string `p:"fangzhenId" dc:"方阵ID"`
// 子项目ID
SubProjectID string `p:"subProjectId" dc:"子项目ID"`
// 导出的起始时间
StartTime string `p:"startTime" v:"required#起始时间不能为空" dc:"起始时间"`
// 导出的结束时间
EndTime string `p:"endTime" v:"required#结束时间不能为空" dc:"结束时间"`
}
type WorkScheduleExportExcelRes struct {
// 文件路径
FilePath string `json:"filePath"`
}
// WorkScheduleExportWeekReq 导出周报
type WorkScheduleExportWeekReq struct {
g.Meta `path:"/exportWeek" tags:"工作计划" method:"get" summary:"导出周报"`
commonApi.Author
// 大项目ID
ProjectID string `p:"projectId" dc:"大项目ID"`
// 方阵ID
FangzhenID string `p:"fangzhenId" dc:"方阵ID"`
// 子项目ID
SubProjectID string `p:"subProjectId" dc:"子项目ID"`
// 导出的起始时间
StartTime string `p:"startTime" v:"required#起始时间不能为空" dc:"起始时间"`
// 导出的结束时间
EndTime string `p:"endTime" v:"required#结束时间不能为空" dc:"结束时间"`
}