package v1

import (
	"cmdb-backend/models"
	"cmdb-backend/pkg/utils"
	"github.com/gin-gonic/gin"
	"net/http"
	"sort"
	"strconv"
)

func GetRegionList(c *gin.Context) {
	vendorId, _ := strconv.Atoi(c.Query("vendor_id"))
	resp := utils.SelectResponse{
		Options: []utils.SelectOption{},
	}
	options := map[string]utils.SelectOption{}

	regionIds := models.GetRegionInfo(vendorId)
	for _, region := range regionIds {
		options[region.RegionName] = utils.SelectOption{
			Label: region.RegionName,
			Value: region.RegionId,
		}
	}

	for _, option := range options {
		resp.Options = append(resp.Options, option)
	}
	sort.Sort(resp.Options)

	c.JSON(http.StatusOK, utils.AmisResponse{
		Data: resp,
	})
}
