package actions

import (
	"zzman/model"

	"gorm.io/gorm"
)

func FindConfigsByGateway(tx *gorm.DB, macaddr string) ([]model.Config, error) {
	var configs []model.Config
	err := tx.Find(&configs, "macaddr = ?", macaddr).Error
	if err != nil {
		return nil, err
	}
	return configs, nil
}

func CreateConfigs(tx *gorm.DB, configs []model.Config) error {
	if len(configs) == 0 {
		return nil
	}

	// 使用事务批量插入配置
	return tx.Omit("createtime", "updatetime").Create(&configs).Error
}

func UpdateConfigs(tx *gorm.DB, configs []model.ConfigUpdate) error {
	if len(configs) == 0 {
		return nil
	}

	// 使用事务批量更新配置
	return tx.Updates(&configs).Error
}
