【恢复删除内容,修改完毕后统一删除】
This commit is contained in:
parent
b8efe7e11b
commit
8b556ab416
@ -17,6 +17,9 @@ func InitProjectLinkRouter(api *gin.RouterGroup, authMiddleware *jwt.GinJWTMiddl
|
||||
authed := api.Group("/v1/projectLink").Use(authMiddleware.MiddlewareFunc(), middleware.PermissMiddleware)
|
||||
authed.GET("/info/:id", queryProjectLinkInfo)
|
||||
authed.POST("", saveProjectLinkInfo)
|
||||
// TODO: 前端修改完成后删除
|
||||
authed.GET("/mapInfo/trainSize/:id", queryTrainSizeByMapId)
|
||||
authed.GET("/project/trainSize/:id", queryTrainSizeByPId)
|
||||
}
|
||||
|
||||
// 查询项目的所有关联信息
|
||||
@ -69,3 +72,57 @@ func saveProjectLinkInfo(c *gin.Context) {
|
||||
service.UpdateProjectLink(&req)
|
||||
c.JSON(http.StatusOK, true)
|
||||
}
|
||||
|
||||
// TODO:前端修改完成后删除
|
||||
// 通过项目ID查询项目的关联列车尺寸信息
|
||||
//
|
||||
// @Summary 通过项目ID查询项目的关联列车尺寸信息
|
||||
//
|
||||
// @Security JwtAuth
|
||||
//
|
||||
// @Description 通过项目ID查询项目的关联列车尺寸信息
|
||||
// @Tags 项目关联信息Api
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param id path int true "地图ID"
|
||||
// @Success 200 {object} dto.TrainSizeDto
|
||||
// @Failure 401 {object} dto.ErrorDto
|
||||
// @Failure 404 {object} dto.ErrorDto
|
||||
// @Failure 500 {object} dto.ErrorDto
|
||||
// @Router /api/v1/projectLink/project/trainSize/{id} [get]
|
||||
func queryTrainSizeByMapId(c *gin.Context) {
|
||||
id, exist := c.Params.Get("id")
|
||||
if !exist {
|
||||
panic(sys_error.New("查询失败,缺少id"))
|
||||
}
|
||||
slog.Debug("传入参数id为" + id)
|
||||
int64Id, _ := strconv.ParseInt(id, 10, 64)
|
||||
c.JSON(http.StatusOK, service.QueryTrainSizeByMapId(int32(int64Id)))
|
||||
}
|
||||
|
||||
// 通过地图ID查询项目的关联列车尺寸信息
|
||||
//
|
||||
// @Summary 通过地图ID查询项目的关联列车尺寸信息
|
||||
//
|
||||
// @Security JwtAuth
|
||||
//
|
||||
// @Description 通过地图ID查询项目的关联列车尺寸信息
|
||||
// @Tags 项目关联信息Api
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param id path int true "地图ID"
|
||||
// @Success 200 {object} dto.TrainSizeDto
|
||||
// @Failure 401 {object} dto.ErrorDto
|
||||
// @Failure 404 {object} dto.ErrorDto
|
||||
// @Failure 500 {object} dto.ErrorDto
|
||||
// @Router /api/v1/projectLink/mapInfo/trainSize/{id} [get]
|
||||
func queryTrainSizeByPId(c *gin.Context) {
|
||||
id, exist := c.Params.Get("id")
|
||||
if !exist {
|
||||
panic(sys_error.New("查询失败,缺少id"))
|
||||
}
|
||||
slog.Debug("传入参数id为" + id)
|
||||
int64Id, _ := strconv.ParseInt(id, 10, 64)
|
||||
trainSizeArr := service.QueryProjectTrainSize(int32(int64Id))
|
||||
c.JSON(http.StatusOK, dto.ConvertFromTrainSizeDto(trainSizeArr))
|
||||
}
|
||||
|
@ -7,11 +7,15 @@ type ProjectLinkRspDto struct {
|
||||
Name string `json:"name" form:"name"`
|
||||
Code string `json:"code" form:"code"`
|
||||
PublishedGiLinks []*PublishedGiLinkDto `json:"mapInfoLinks" form:"mapInfoLinks"`
|
||||
// TODO:前端修改完成后删除
|
||||
TrainSizeLinks []*TrainSizeDto `json:"trainSizeLinks" form:"trainSizeLinks"`
|
||||
}
|
||||
|
||||
type ProjectLinkReqDto struct {
|
||||
Pid int32 `json:"pid" form:"pid"`
|
||||
Mids []*int32 `json:"mids" form:"mids"`
|
||||
// TODO:前端修改完成后删除
|
||||
Sids []*int32 `json:"sids" form:"sids"`
|
||||
}
|
||||
|
||||
type PublishedGiLinkDto struct {
|
||||
@ -27,6 +31,8 @@ func ConvertProjectLink(gi *model.Project) *ProjectLinkRspDto {
|
||||
Name: gi.Name,
|
||||
Code: gi.Code,
|
||||
PublishedGiLinks: []*PublishedGiLinkDto{},
|
||||
// TODO:前端修改完成后删除
|
||||
TrainSizeLinks: []*TrainSizeDto{},
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -15,6 +15,9 @@ func QueryProjectLinkInfo(id int32) *dto.ProjectLinkRspDto {
|
||||
projectLink := dto.ConvertProjectLink(pro)
|
||||
// 关联地图列表
|
||||
projectLink.PublishedGiLinks = dto.ConvertFromPublishedGiLink(QueryProjectPublished(id))
|
||||
// TODO:前端修改完成后删除
|
||||
// 关联列车尺寸列表
|
||||
projectLink.TrainSizeLinks = dto.ConvertFromTrainSizeDto(QueryProjectTrainSize(id))
|
||||
return projectLink
|
||||
}
|
||||
|
||||
@ -22,6 +25,11 @@ func QueryProjectLinkInfo(id int32) *dto.ProjectLinkRspDto {
|
||||
func UpdateProjectLink(req *dto.ProjectLinkReqDto) {
|
||||
delProjectMapLink(req.Pid)
|
||||
saveProjectMapLink(req.Pid, req.Mids)
|
||||
|
||||
// TODO:前端修改完成后删除
|
||||
// 保存新关联关系
|
||||
delProjectSizeLink(req.Pid)
|
||||
saveProjectSize(req.Pid, req.Sids)
|
||||
}
|
||||
|
||||
// 删除项目地图关联关系
|
||||
@ -40,3 +48,30 @@ func saveProjectMapLink(pid int32, mids []*int32) {
|
||||
}
|
||||
dbquery.ProjectPublishLink.Save(mapInfos...)
|
||||
}
|
||||
|
||||
// TODO: 以下代码前端修改完成后删除
|
||||
// 通过地图ID获取列车尺寸列表
|
||||
func QueryTrainSizeByMapId(mid int32) []*dto.TrainSizeDto {
|
||||
pl, err := dbquery.ProjectPublishLink.Where(dbquery.ProjectPublishLink.Mid.Eq(mid)).First()
|
||||
if err != nil {
|
||||
panic(dto.ErrorDto{Code: dto.QueryDBError, Message: err.Error()})
|
||||
}
|
||||
return dto.ConvertFromTrainSizeDto(QueryProjectTrainSize(pl.Pid))
|
||||
}
|
||||
|
||||
// 保存项目尺寸关联关系
|
||||
func saveProjectSize(pid int32, sids []*int32) {
|
||||
if len(sids) == 0 {
|
||||
return
|
||||
}
|
||||
sizeInfos := make([]*model.ProjectTrainSizeLink, len(sids))
|
||||
for i, sid := range sids {
|
||||
sizeInfos[i] = &model.ProjectTrainSizeLink{Pid: pid, Sid: *sid}
|
||||
}
|
||||
dbquery.ProjectTrainSizeLink.Save(sizeInfos...)
|
||||
}
|
||||
|
||||
// 删除项目列车尺寸关联关系
|
||||
func delProjectSizeLink(pid int32) {
|
||||
dbquery.ProjectTrainSizeLink.Where(dbquery.ProjectTrainSizeLink.Pid.Eq(pid)).Delete()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user