Example #1
0
        public ActionResult AddResourcesToGroup(long setId, string resourceIds)
        {
            using (ResourceManager rManager = new ResourceManager())
            {
                ResourceGroup rc = rManager.GetResourceGroupById(setId);

                if (rc != null)
                {
                    if (!string.IsNullOrEmpty(resourceIds))
                    {
                        var selectedResources = resourceIds.Split(',').Select(n => int.Parse(n)).ToList();

                        foreach (int i in selectedResources)
                        {
                            SingleResource r = rManager.GetResourceById(i);
                            rc.SingleResources.Add(r);
                        }

                        rManager.UpdateResourceGroup(rc);
                    }
                    ResourceGroupModel model = new ResourceGroupModel(rc);
                    return(View("EditResourceSet", model));
                }
                else
                {
                    //set not exsits
                    return(View("EditResourceGroup"));
                }
            }
        }
        public async Task <ResourceGroupModel> GetAllResource(string subid, string access_token)
        {
            string url = string.Format("https://management.chinacloudapi.cn/" +
                                       "subscriptions/{0}/resourcegroups?api-version=2017-05-10", subid);
            ResourceGroupModel resourceGroup = null;

            using (HttpClient httpClient = new HttpClient())
            {
                //httpClient.DefaultRequestHeaders.Add("Cache-Control", "no-cache");
                //HttpContent content = new FormUrlEncodedContent(vals);
                httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", access_token);
                HttpResponseMessage hrm = httpClient.GetAsync(url).Result;
                if (hrm.IsSuccessStatusCode)
                {
                    string data = await hrm.Content.ReadAsStringAsync();

                    resourceGroup = JsonConvert.DeserializeObject <ResourceGroupModel>(data);
                    //await DataOperations(authenticationResponse);
                }
                else
                {
                    Console.WriteLine("Error." + hrm.ReasonPhrase);
                }
            }
            return(resourceGroup);
        }
Example #3
0
        public GroupExpanderWindow()
        {
            var datas = new List <ResourceGroupModel>();

            for (int i = 0; i < 20; i++)
            {
                var group = new ResourceGroupModel
                {
                    GroupName             = "GHT",
                    GroupRemark           = (3000 + i).ToString(),
                    ResourceGroupSetInfos = new List <ResourceGroupSetModel>()
                };

                for (int j = 0; j < 25; j++)
                {
                    var resource = new ResourceGroupSetModel
                    {
                        Tel = (4000 + j).ToString()
                    };

                    group.ResourceGroupSetInfos.Add(resource);
                }

                datas.Add(group);
            }

            Datas = datas;

            DataContext = this;
            InitializeComponent();
        }
Example #4
0
        public async Task <ResourceGroupModel> GetAllResourceGroup()
        {
            //string subid = this._configuration["accountsetting:subscriptionId"];
            string             subid         = "6273fbea-8a11-498b-8218-02b6f4398e12";
            string             access_token  = this._tokenDto.GetToken().Result.access_token;
            ResourceGroupModel resourceGroup = await this._resourceGroupDto.GetAllResource(subid, access_token);

            return(resourceGroup);
        }
Example #5
0
        public async Task <ResourceGroupModel> GetAllResourceGroup(string email, string subid)
        {
            //string subid = this._configuration["accountsetting:subscriptionId"];
            //string subid = "6273fbea-8a11-498b-8218-02b6f4398e12";
            string             access_token  = _tokenDto.GetTokenString(email, _tokenResource.Value.manage);
            ResourceGroupModel resourceGroup = await this._resourceGroupDto.GetAllResource(subid, access_token);

            return(resourceGroup);
        }
Example #6
0
        public ActionResult Create(CreateResourceGroupModel model)
        {
            ViewBag.Title = PresentationModel.GetViewTitleForTenant("Create Group Manager", this.Session.GetTenant());
            using (ResourceManager rManager = new ResourceManager())
            {
                ResourceGroupModel rsModel = new ResourceGroupModel(rManager.CreateResourceGroup(model.Name, model.ClassifierMode, null));

                return(View("EditResourceGroup", rsModel));
            }
        }
Example #7
0
        public ActionResult RemoveResourceFromGroup(long setId, long resourceId)
        {
            using (ResourceManager rManager = new ResourceManager())
            {
                ResourceGroup  rc = rManager.GetResourceGroupById(setId);
                SingleResource r  = rManager.GetResourceById(resourceId);
                rc.SingleResources.Remove(r);

                rManager.UpdateResourceGroup(rc);
                ResourceGroupModel model = new ResourceGroupModel(rc);

                return(View("EditResourceGroup", model));
            }
        }
Example #8
0
        public ActionResult ChooseResourceToGroup(long id)
        {
            ResourceGroupModel model = new ResourceGroupModel();

            model.Id = id;
            using (ResourceManager rManager = new ResourceManager())
            {
                IQueryable <SingleResource> resoures      = rManager.GetAllResources();
                List <ResourceModel>        resourceMList = new List <ResourceModel>();
                foreach (SingleResource r in resoures)
                {
                    resourceMList.Add(new ResourceModel(r));
                }
                model.AllResources = resourceMList;

                return(PartialView("_chooseResources", model));
            }
        }
Example #9
0
        public ActionResult Edit(ResourceGroupModel model)
        {
            using (ResourceManager rManager = new ResourceManager())
            {
                ResourceGroup rc = rManager.GetResourceGroupById(model.Id);
                if (rc != null)
                {
                    rc.Name      = model.Name;
                    rc.GroupMode = model.ClassifierMode;
                    rManager.UpdateResourceGroup(rc);
                }
                else
                {
                    //resource set does not exist!
                }
            }

            return(View("ResourceGroupManager"));
        }
Example #10
0
        public async Task<ResourceGroupModel> CreateRgAsync(ResourceGroupModel item, CancellationToken cancelToken = default)
        {
            try
            {
                await base.AddAuthHeaderAsync();

                var add = Mapper.Map<ResourceGroupCreateDto>(item.ResourceGroup);
                add.Name = null;
                var httpcontent = new StringContent(JsonSerializer.Serialize(add, _options), Encoding.UTF8, "application/json");

                //PUT https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}?api-version=2020-06-01
                var url = $"https://management.azure.com/subscriptions/{item.SubcriptionId}/resourcegroups/{item.NewRgName}?api-version=2020-06-01";
                var apiData = await HttpClientBase.PutAsync(url, httpcontent, cancelToken).ConfigureAwait(false);

                if (apiData.IsSuccessStatusCode)
                {
                    var content = await apiData.Content.ReadAsStringAsync();
                    var ser = JsonSerializer.Deserialize<ResourceGroupDto>(content, _options);
                    var result = Mapper.Map<ResourceGroup>(ser);
                    item.ResourceGroup = result;
                    item.IsNewRg = false;
                    item.NewRgName = null;
                    return item;

                    //var model = Mapper.Map<ResourceGroupModel>(result);
                    //return model;
                }
                else
                {
                    var content = await apiData.Content.ReadAsStringAsync();
                    throw new Exception(content);
                }
            }
            catch (Exception ex)
            {
                base.HandleException(ex);
                throw;
            }
        }