Files
houston-be/pkg/postgres/query/severity.go
2023-03-31 03:07:33 +05:30

73 lines
2.0 KiB
Go

package query
import (
"houston/entity"
"houston/model/request"
"go.uber.org/zap"
"gorm.io/gorm"
)
func FindSeverity(db *gorm.DB, logger *zap.Logger) ([]entity.SeverityEntity, error) {
var severityEntity []entity.SeverityEntity
result := db.Where("deleted_at is NULL").Find(&severityEntity)
if result.Error != nil {
logger.Error("fetching severity query failed", zap.Error(result.Error))
return nil, result.Error
}
return severityEntity, nil
}
func FindIncidentSeverityEntity(db *gorm.DB, logger *zap.Logger) ([]entity.SeverityEntity, error) {
var severityEntity []entity.SeverityEntity
result := db.Where("deleted_at is NULL").Find(&severityEntity)
if result.Error != nil {
logger.Error("fetching severity query failed", zap.Error(result.Error))
return nil, result.Error
}
return severityEntity, nil
}
func FindIncidentSeverityEntityById(db *gorm.DB, logger *zap.Logger, id int) (*entity.SeverityEntity, error) {
var severityEntity entity.SeverityEntity
result := db.Find(&severityEntity, "id = ?", id)
if result.Error != nil {
logger.Error("fetching severity query failed", zap.Error(result.Error))
return nil, result.Error
} else if result.RowsAffected == 0 {
logger.Error("SeverityEntity not found", zap.Error(result.Error))
return nil, nil
}
return &severityEntity, nil
}
func AddSeverity(db *gorm.DB, logger *zap.Logger, addSeverityRequest request.AddSeverityRequest) error {
severityEntity := &entity.SeverityEntity{
Name: addSeverityRequest.Name,
Description: addSeverityRequest.Description,
}
result := db.Create(severityEntity)
if result.Error != nil {
logger.Error("failed to add severity in the database", zap.Error(result.Error))
return result.Error
}
return nil
}
func FindSeverityById(db *gorm.DB, severityId int) (*entity.SeverityEntity, error) {
var severityEntity entity.SeverityEntity
result := db.Find(&severityEntity, "id = ?", severityId)
if result.Error != nil {
return nil, result.Error
}
return &severityEntity, nil
}