package opsdev import ( "context" "dashoo.cn/common_definition/comm_def" "dashoo.cn/opms_libary/myerrors" opsdevmodel "dashoo.cn/opms_parent/app/model/opsdev" opsdevSrv "dashoo.cn/opms_parent/app/service/opsdev" "github.com/gogf/gf/frame/g" "github.com/gogf/gf/util/gvalid" ) type DeliveryProjectHandler struct{} // GetList 获取交付项目列表 func (h *DeliveryProjectHandler) GetList(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectSearchReq, rsp *comm_def.CommonMsg) error { srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } total, list, err := srv.GetList(req) if err != nil { return err } rsp.Data = g.Map{"list": list, "total": total} return nil } // GetListAll 获取所有交付项目列表(不带权限校验,用于下拉选择等场景) func (h *DeliveryProjectHandler) GetListAll(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectSearchReq, rsp *comm_def.CommonMsg) error { srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } total, list, err := srv.GetListAll(req) if err != nil { return err } rsp.Data = g.Map{"list": list, "total": total} return nil } // GetEntityById 根据ID获取详情 func (h *DeliveryProjectHandler) GetEntityById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error { srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } detail, err := srv.GetEntityById(req) if err != nil { return err } rsp.Data = detail return nil } func (h *DeliveryProjectHandler) GetById(ctx context.Context, req *comm_def.IdReq, rsp *comm_def.CommonMsg) error { return h.GetEntityById(ctx, req, rsp) } // Create 创建交付项目 func (h *DeliveryProjectHandler) Create(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectReq, rsp *comm_def.CommonMsg) error { if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } if err := srv.Create(req); err != nil { return err } rsp.Data = g.Map{"message": "创建成功"} return nil } // UpdateById 更新交付项目 func (h *DeliveryProjectHandler) UpdateById(ctx context.Context, req *opsdevmodel.OpsDeliveryProjectUpdateReq, rsp *comm_def.CommonMsg) error { if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } if err := srv.UpdateById(req); err != nil { return err } rsp.Data = g.Map{"message": "更新成功"} return nil } // DeleteByIds 批量删除 func (h *DeliveryProjectHandler) DeleteByIds(ctx context.Context, req *comm_def.IdsReq, rsp *comm_def.CommonMsg) error { if len(req.Ids) == 0 { return myerrors.ValidError("参数有误!") } srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } if err := srv.DeleteByIds(req); err != nil { return err } rsp.Data = g.Map{"message": "删除成功"} return nil } // AssignDeliveryUser 指派/改派交付负责人 func (h *DeliveryProjectHandler) AssignDeliveryUser(ctx context.Context, req *opsdevmodel.AssignDeliveryUserReq, rsp *comm_def.CommonMsg) error { if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return myerrors.ValidError(err.Error()) } srv, err := opsdevSrv.NewDeliveryProjectService(ctx) if err != nil { return err } if err := srv.AssignDeliveryUser(req); err != nil { return err } rsp.Data = g.Map{"message": "操作成功"} return nil }