package service

import (
	"fmt"
	"fonchain-fiee/api/account"
	"fonchain-fiee/api/accountFiee"
	"fonchain-fiee/api/bundle"
	"fonchain-fiee/api/cast"
	"fonchain-fiee/api/files"
	"fonchain-fiee/api/order"
	"fonchain-fiee/api/payment"
	pkConfig "fonchain-fiee/pkg/config"
	"os"

	"dubbo.apache.org/dubbo-go/v3/common/constant"
	"dubbo.apache.org/dubbo-go/v3/config"
	_ "dubbo.apache.org/dubbo-go/v3/imports"
)

var AccountProvider = new(account.AccountClientImpl)
var AccountFieeProvider = new(accountFiee.AccountFieeClientImpl)

var BundleProvider = new(bundle.BundleClientImpl)
var OrderProvider = new(order.OrderClientImpl)
var FilesProvider = new(files.FileClientImpl)
var PaymentProvider = new(payment.PaymentCentClientImpl)
var CastProvider = new(cast.CastClientImpl)

func init() {
	config.SetConsumerService(BundleProvider)
	config.SetConsumerService(OrderProvider)
	config.SetConsumerService(AccountProvider)
	config.SetConsumerService(PaymentProvider)
	config.SetConsumerService(AccountFieeProvider)
	config.SetConsumerService(CastProvider)
	config.SetConsumerService(FilesProvider)

	if err := config.Load(); err != nil {
		panic(err)
	}
	pkConfig.GetOptions()
	fmt.Println(os.Getenv(constant.ConfigFileEnvKey))

	if err := config.Load(); err != nil {
		panic(err)
	}
}