package service import ( "fmt" "time" "joylink.club/bj-rtsts-server/db/dbquery" "joylink.club/bj-rtsts-server/db/model" "joylink.club/bj-rtsts-server/dto" "joylink.club/bj-rtsts-server/sys_error" ) // 查询项目运行环境列表带分页 func PageProjectRunConfigQuery(query *dto.PageProjectRunConfigReqDto) *dto.PageDto[*dto.ProjectRunConfigDto] { d := dbquery.ProjectRunConfig dq := d.Where() if query.Name != "" { dq = dq.Where(d.Name.Like(fmt.Sprintf("%%%s%%", query.Name))) } records, total, err := dq.Debug().Omit(d.ConfigContent).FindByPage(query.Offset(), query.Size) if err != nil { panic(sys_error.New("查询失败,数据库错误请联系运维人员", err)) } return &dto.PageDto[*dto.ProjectRunConfigDto]{Total: int(total), PageQueryDto: query.PageQueryDto, Records: dto.ConvertToRunConfigFromSlice(records)} } // 查询项目运行环境列表 func ListProjectRunConfigQuery() []*dto.ProjectRunConfigDto { records, err := dbquery.ProjectRunConfig.Debug().Omit(dbquery.ProjectRunConfig.ConfigContent).Find() if err != nil { panic(sys_error.New("查询失败,数据库错误请联系运维人员", err)) } return dto.ConvertToRunConfigFromSlice(records) } // 创建项目运行环境 func CreateProjectRunConfig(dd *dto.ProjectRunConfigReqDto) bool { d := model.ProjectRunConfig{ Name: dd.Name, Description: dd.Description, ConfigContent: dd.ConfigContent, CreateTime: time.Now(), UpdateTime: time.Now(), } err := dbquery.ProjectRunConfig.Save(&d) if err != nil { panic(sys_error.New("保存失败,数据库错误请联系运维人员", err)) } return true } // 查询项目运行环境 func QueryProjectRunConfig(id int32) *dto.ProjectRunConfigDto { query, err := dbquery.ProjectRunConfig.Where(dbquery.ProjectRunConfig.ID.Eq(id)).Debug().First() if err != nil { panic(sys_error.New("查询失败,不存在此信息", err)) } return dto.ConvertToRunConfigDto(query) } // 查询项目运行环境 func QueryRunConfig(id int32) *dto.ProjectRunConfigDto { if id == 0 { return nil } query, err := dbquery.ProjectRunConfig.Where(dbquery.ProjectRunConfig.ID.Eq(id)).Find() if err != nil { panic(sys_error.New("查询失败", err)) } if len(query) == 0 { return nil } return dto.ConvertToRunConfigDto(query[0]) } // 更新项目运行环境 func UpdateProjectRunConfig(id int32, dd *dto.ProjectRunConfigReqDto) bool { findOldQuery := dbquery.ProjectRunConfig oldD, err := findOldQuery.Where(findOldQuery.ID.Eq(id)).Debug().First() if oldD == nil || err != nil { panic(sys_error.New("保存失败,不存在此信息", err)) } oldD.Name = dd.Name oldD.Description = dd.Description oldD.ConfigContent = dd.ConfigContent oldD.UpdateTime = time.Now() _, err2 := findOldQuery.Updates(oldD) if err2 != nil { panic(sys_error.New("保存失败,请联系维护人员", err2)) } return true } // 删除项目运行环境 func DeleteProjectRunConfigById(id int32) { dbquery.ProjectRunConfig.Debug().Where(dbquery.ProjectRunConfig.ID.Eq(id)).Delete() }