package main

import (
	"errors"
	"log"

	"gorm.io/gorm"
)

const (
	TimeLayout       = "2006-01-02T15:04:05.000+0000"
	TimeOutputLayout = "2006-01-02 15:04:05"
)

var (
	ErrDataNotExist = errors.New("data not exist in table")
)

func AutoMigrate(db *gorm.DB) {
	err := db.AutoMigrate(&CRM_User{}, &CRM_Todo{})
	if err != nil {
		log.Fatal(err.Error())
	}
}

func Save(db *gorm.DB, obj interface{}) error {
	return db.Save(obj).Error
}

func Find(db *gorm.DB, obj interface{}) error {
	tx := db.Find(obj, obj)
	if tx.Error != nil {
		return tx.Error
	}

	if tx.RowsAffected == 0 {
		return ErrDataNotExist
	}

	return nil
}
