public string CriarCanaisVerdesConta(string organizationName, string contaId, string familiasIds)
        {
            string[]              lstRegitrosId        = familiasIds.Split(';');
            CanalVerdeService     canalVerdeService    = new CanalVerdeService(organizationName, false);
            RepositoryService     RepositoryService    = new RepositoryService(organizationName, false);
            DomainExecuteMultiple multipleCreateReturn = null;

            var jsSerializer = new JavaScriptSerializer();

            try
            {
                List <CanalVerde> canalVerdeList = new List <CanalVerde>();
                foreach (var familiaIdTmp in lstRegitrosId)
                {
                    string[]   segmentoEFamiliaIdsLst = familiaIdTmp.Split('|');
                    CanalVerde canalVerdeTmp          = new CanalVerde(organizationName, false);

                    canalVerdeTmp.Segmento       = new Lookup(new Guid(segmentoEFamiliaIdsLst[0]), "");
                    canalVerdeTmp.FamiliaProduto = new Lookup(new Guid(segmentoEFamiliaIdsLst[1]), "");
                    canalVerdeTmp.Canal          = new Lookup(new Guid(contaId), "");

                    canalVerdeList.Add(canalVerdeTmp);
                }

                multipleCreateReturn = RepositoryService.CanalVerde.Create(canalVerdeList);
            }
            catch (Exception e)
            {
                jsSerializer.MaxJsonLength = Int32.MaxValue;

                Dictionary <string, string> retornoMapErr = new Dictionary <string, string>();

                retornoMapErr.Add("return", "FALSE");
                retornoMapErr.Add("message", e.Message);
                var jsonErr = jsSerializer.Serialize(retornoMapErr);

                return(jsonErr.ToString());
            }


            jsSerializer.MaxJsonLength = Int32.MaxValue;
            Dictionary <string, string> retornoMap = new Dictionary <string, string>();

            if (multipleCreateReturn.IsFaulted)
            {
                retornoMap.Add("return", "FALSE");
            }
            else
            {
                retornoMap.Add("return", "TRUE");
            }

            var json = jsSerializer.Serialize(retornoMap);

            return(json.ToString());
        }
        public string GetListaFamiliaProd(string organizationName, string canalId)
        {
            FamiliaProdutoService familiaProdutoService = new FamiliaProdutoService(organizationName, false);
            SegmentoService       segmentoService       = new SegmentoService(organizationName, false);
            CanalVerdeService     canalVerdeService     = new CanalVerdeService(organizationName, false);

            var jsSerializer = new JavaScriptSerializer();

            try
            {
                var listaSeg = segmentoService.ListarCanaisVerdes();
                var listRet  = new Dictionary <string, Dictionary <string, string> >();
                var listFam  = canalVerdeService.listarPorCanal(new Guid(canalId));

                foreach (var itemSeg in listaSeg)
                {
                    var listaFam  = new Dictionary <string, string>();
                    var canalGuid = new Guid(canalId);
                    var listaTmp  = familiaProdutoService.ListarPorSegmento((Guid)itemSeg.ID, true, canalGuid, listFam);

                    foreach (var itemTmp in listaTmp)
                    {
                        listaFam.Add(itemTmp.ID.ToString(), itemTmp.Nome);
                    }

                    if (listaFam.Count > 0)
                    {
                        string segNameTmp = itemSeg.Nome + "|" + itemSeg.ID.ToString();
                        listRet.Add(segNameTmp, listaFam);
                    }
                }

                jsSerializer.MaxJsonLength = Int32.MaxValue;
                var json = jsSerializer.Serialize(listRet);

                return(json.ToString());
            }
            catch (Exception ex)
            {
                jsSerializer.MaxJsonLength = Int32.MaxValue;

                Dictionary <string, string> retornoMapErr = new Dictionary <string, string>();

                retornoMapErr.Add("return", "FALSE");
                retornoMapErr.Add("message", ex.Message);
                var jsonErr = jsSerializer.Serialize(retornoMapErr);

                return(jsonErr.ToString());
            }
        }