package db

import (
	"github.com/tidbcloud/jiraport/pkg/entity"

	"gorm.io/gorm/clause"
)

func (c *Client) CreateIssue(issue *entity.Issue) error {
	result := c.dataDB.Select("Key").Where(&entity.Issue{Key: issue.Key}).Find(&entity.Issue{})
	err := result.Error
	if err != nil {
		return err
	}
	if result.RowsAffected > 0 {
		return nil
	}
	return c.dataDB.Clauses(clause.OnConflict{DoNothing: true}).Create(issue).Error
}
