示例#1
0
        public void AddDomainForBook()
        {
            string bookName = Helper.ReadString("Introduce the name of the book: ");

            while (!BookDAL.CheckBook(bookName))
            {
                Helper.DisplayError("\n Wrong book name!");
                Console.ForegroundColor = ConsoleColor.Red;
                bookName = Helper.ReadString("Reintroduce the name of the book: ");
            }

            string newDomainName = Helper.ReadString("Introduce the new domain: ");

            // aici verific ca noul domeniu sa nu contina deja cartea
            bool ok = true;

            foreach (Domain domain in BookDAL.GetDomainsForBook(bookName))
            {
                if (newDomainName.Equals(domain.DomainName))
                {
                    ok = false;
                    break;
                }
            }

            while (!DomainDAL.CheckDomain(newDomainName) || !ok || !ValidDomain(bookName, newDomainName))
            {
                if (!ValidDomain(bookName, newDomainName))
                {
                    Helper.DisplayError("\n The new domain is an ascendent of one of the existing domains of the book!");
                }
                else
                {
                    Helper.DisplayError("\n Invalid domain!");
                }

                Console.ForegroundColor = ConsoleColor.Red;
                newDomainName           = Helper.ReadString("Reintroduce the new domain: ");

                ok = true;
                foreach (Domain domain in BookDAL.GetDomainsForBook(bookName))
                {
                    if (newDomainName.Equals(domain.DomainName))
                    {
                        ok = false;
                        break;
                    }
                }
            }

            int size = BookDAL.GetDomainsForBook(bookName).Count;
            int DOM  = Helper.GetConfigData()["DOM"];

            if (size < DOM)
            {
                BookDAL.AddDomainForBook(newDomainName, bookName);
                Console.WriteLine("\n Operation completed succesfully!");
            }
            else
            {
                Helper.DisplayError("\nA book can belong to " + DOM + " domains. (DOM = " + DOM + ")");
            }
        }