package opsdev import ( "context" "dashoo.cn/common_definition/comm_def" eventmodel "dashoo.cn/opms_parent/app/model/opsdev" services "dashoo.cn/opms_parent/app/service/opsdev" "github.com/gogf/gf/frame/g" "github.com/gogf/gf/util/gvalid" "dashoo.cn/opms_libary/myerrors" ) // DeliveryProjectEventHandler 交付项目事件接口处理类 type DeliveryProjectEventHandler struct{} // GetList 分页查询事件列表 func (h *DeliveryProjectEventHandler) GetList(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventSearchReq, rsp *comm_def.CommonMsg) error { // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 total, list, err := s.GetList(req) if err != nil { return err } // 统一返回格式 rsp.Data = g.Map{"list": list, "total": total} return nil } // Create 新增事件 func (h *DeliveryProjectEventHandler) Create(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventAddReq, rsp *comm_def.CommonMsg) error { // 参数校验 if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 if err := s.Create(req); err != nil { return err } rsp.Data = g.Map{"msg": "新增成功"} return nil } // UpdateById 更新事件 func (h *DeliveryProjectEventHandler) UpdateById(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventUpdateReq, rsp *comm_def.CommonMsg) error { // 参数校验 if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 if err := s.UpdateById(req); err != nil { return err } rsp.Data = g.Map{"msg": "更新成功"} return nil } // DeleteByIds 批量删除事件 func (h *DeliveryProjectEventHandler) DeleteByIds(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventDeleteReq, rsp *comm_def.CommonMsg) error { // 参数校验 if len(req.Ids) == 0 { return myerrors.ValidError("请选择需要删除的记录") } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 if err := s.DeleteByIds(req.Ids); err != nil { return err } rsp.Data = g.Map{"msg": "删除成功"} return nil } // GetById 根据ID查询详情 func (h *DeliveryProjectEventHandler) GetById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error { // 参数校验 if req.Id <= 0 { return myerrors.ValidError("ID不能为空") } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 detail, err := s.GetById(int(req.Id)) if err != nil { return err } rsp.Data = detail return nil } // GetAttachments 获取事件附件列表 func (h *DeliveryProjectEventHandler) GetAttachments(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error { // 参数校验 if req.Id <= 0 { return myerrors.ValidError("事件ID不能为空") } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 list, err := s.GetAttachments(int(req.Id)) if err != nil { return err } rsp.Data = g.Map{"list": list} return nil } // GetRecords 获取事件过程记录列表 func (h *DeliveryProjectEventHandler) GetRecords(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventRecordSearchReq, rsp *comm_def.CommonMsg) error { // 参数校验 if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 list, err := s.GetRecords(req) if err != nil { return err } rsp.Data = g.Map{"list": list} return nil } // AddRecord 添加事件过程记录 func (h *DeliveryProjectEventHandler) AddRecord(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventRecordAddReqWithAttachments, rsp *comm_def.CommonMsg) error { // 参数校验 if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 if err := s.AddRecord(req); err != nil { return err } rsp.Data = g.Map{"msg": "添加成功"} return nil } // Cancel 作废事件 func (h *DeliveryProjectEventHandler) Cancel(ctx context.Context, req *eventmodel.OpsDeliveryProjectEventCancelReq, rsp *comm_def.CommonMsg) error { // 参数校验 if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } // 初始化service s, err := services.NewDeliveryProjectEventService(ctx) if err != nil { return err } // 调用service方法 if err := s.Cancel(req); err != nil { return err } rsp.Data = g.Map{"msg": "作废成功"} return nil }