Example #1
0
    private void _on_Table_ClickClan(string key)
    {
        selectedClan         = clans.Single(x => x.key == key);
        confirmPanel.Visible = true;

        confirmPanel.GetNode <Label>("VBoxContainer/Label").Text = $"{selectedClan.origin}-{selectedClan.name}";
    }
        public async Task <int> RemoveAsync(IClan entity)
        {
            string sp = "tqc_remove_clan";

            SqlParameter[] parameters = new[]
            {
                new SqlParameter("@id", entity.Id)
            };

            return(await _sqlHandler.ExecuteNonQueryAsync(sp, CommandType.StoredProcedure, parameters));
        }
Example #3
0
        public bool RemoveClan(IClan clan)
        {
            var query = Clans.Where(x => x == clan).FirstOrDefault();

            if (query == null)
            {
                return(false);
            }

            Clans.Remove(query);

            return(true);
        }
Example #4
0
        public bool Iznajmi(string clanId, string knjigaId, out List <string> errorMessages)
        {
            bool   ok     = true;
            IClan  clan   = _clanManager.GetById(clanId);
            Knjiga knjiga = _knjigaManager.GetById(knjigaId);

            errorMessages = new List <string>();

            if (clan == null)
            {
                ok = false;
                errorMessages.Add("Taj clan ne postoji.");
            }

            if (knjiga == null)
            {
                ok = false;
                errorMessages.Add("Ta knjiga ne postoji.");
            }
            else if (knjiga.Taken)
            {
                ok = false;
                errorMessages.Add("Ta knjiga je zauzeta.");
            }

            if (clan?.State == States.Banned)
            {
                ok = false;
                errorMessages.Add("User je banovan!");
            }

            if (ok)
            {
                knjiga.Taken = true;
                _record.Add(new Tuple <Knjiga, IClan>(knjiga, clan));
                _log.Add(new LogItem
                {
                    DateTime  = CurrentDate,
                    Clan      = clan,
                    Knjiga    = knjiga,
                    LogAction = LogItem.Action.Posudio
                });
            }

            return(ok);
        }
        public async Task <int> CreateAsync(IClan entity)
        {
            try
            {
                string         sp         = "tqc_create_clan";
                SqlParameter[] parameters = new[]
                {
                    new SqlParameter("@platformId", entity.Platform.Id),
                    new SqlParameter("@name", entity.Name),
                    new SqlParameter("@about", entity.About)
                };

                return(await _sqlHandler.ExecuteNonQueryAsync(sp, CommandType.StoredProcedure, parameters));
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #6
0
        public void RazduziSve(IClan clan)
        {
            var knjige = _record.Where(x => x.Item2.Sifra == clan.Sifra)
                         .ToList()
                         .Select(x => x.Item1)
                         .ToList();

            foreach (Knjiga knjiga in knjige)
            {
                knjiga.Taken = false;
                _log.Add(new LogItem
                {
                    DateTime  = CurrentDate,
                    Clan      = clan,
                    Knjiga    = knjiga,
                    LogAction = LogItem.Action.Vratio
                });
            }

            _record.RemoveAll(x => x.Item2.Sifra == clan.Sifra);
        }
        public async Task <IClan> GetByIdAsync(int id)
        {
            try
            {
                string         sp         = "tqc_get_clan";
                SqlParameter[] parameters = new[]
                {
                    new SqlParameter("@id", id)
                };

                //using (var reader = await _sqlHandler.ExecuteReaderAsync(sp, CommandType.StoredProcedure, parameters))
                using (var reader = await SqlHelper.ExecuteReaderAsync(_configuration.GetConnectionString("TestDb"), sp, CommandType.StoredProcedure, parameters))
                {
                    if (reader.HasRows)
                    {
                        IClan clan = null;

                        while (await reader.ReadAsync())
                        {
                            if (clan != null)
                            {
                                if (clan.Id == reader.GetInt32(6) && reader.GetString(10).Equals("Founder"))
                                {
                                    ClanFounder founder = new(
                                        id : reader.GetInt32(7),
                                        userName : reader.GetString(8),
                                        new AuthorityType(
                                            id : reader.GetInt32(9),
                                            typeName : reader.GetString(10)));

                                    clan.AddClanFounder(founder);
                                }
                                else
                                {
                                    ClanAdmin admin = new(
                                        reader.GetInt32(7),
                                        reader.GetString(8),
                                        new AuthorityType(
                                            reader.GetInt32(9),
                                            reader.GetString(10)));

                                    clan.AddClanMember(admin);
                                }
                            }
                            else
                            {
                                clan = new Clan(
                                    id: reader.GetInt32(0),
                                    name: reader.GetString(1),
                                    about: reader.GetString(2),
                                    platform: new Platform(
                                        id: reader.GetInt32(3),
                                        name: reader.GetString(4),
                                        imagePath: reader.GetString(5)
                                        )
                                    );
                            }
                        }

                        return(await Task.FromResult(clan));
                    }

                    return(null);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
 public Task <int> AssignClanMentionRoleAsync(IClan clan, MentionRole mentionRole, bool overrideExistingData = true)
 {
     throw new NotImplementedException();
 }
 public Task <int> AssignClanAuthority(IClan clan, IMember member)
 {
     throw new NotImplementedException();
 }
 public ClanoviInfoController(IClan clan, DataContext context)
 {
     _clan    = clan;
     _context = context;
 }
Example #11
0
        private static void ProcessInput()
        {
            if (CurrentMenu17455 == Menus.Izlaz)
            {
                System.Environment.Exit(0);
            }
            else if (CurrentMenu17455 == Menus.Main)
            {
                History17455.Push(CurrentMenu17455);
                if (Index17455 == 1)
                {
                    CurrentMenu17455 = Menus.RegDelKnjiga;
                }
                else if (Index17455 == 2)
                {
                    CurrentMenu17455 = Menus.RegDelClan;
                }
                else if (Index17455 == 3)
                {
                    CurrentMenu17455 = Menus.IznajmiVrati;
                }
                else if (Index17455 == 4)
                {
                    CurrentMenu17455 = Menus.Pretraga;
                }
                else if (Index17455 == 5)
                {
                    CurrentMenu17455 = Menus.Analiza;
                }
                else if (Index17455 == 6)
                {
                    CurrentMenu17455 = Menus.PrintClanova;
                }
                else if (Index17455 == 7)
                {
                    CurrentMenu17455 = Menus.PrintKnjiga;
                }
                else if (Index17455 == 8)
                {
                    CurrentMenu17455 = Menus.Naplati;
                }
                else if (Index17455 == 9)
                {
                    CurrentMenu17455 = Menus.Izlaz;
                }
            }
            else if (CurrentMenu17455 == Menus.RegDelKnjiga)
            {
                History17455.Push(CurrentMenu17455);
                if (Index17455 == 1)
                {
                    CurrentMenu17455 = Menus.RegKnjiga;
                }
                else if (Index17455 == 2)
                {
                    CurrentMenu17455 = Menus.DelKnjiga;
                }
                else if (Index17455 == 3)
                {
                    Nazad(true);
                }
            }
            else if (CurrentMenu17455 == Menus.RegKnjiga)
            {
                if (Index17455 == 1)
                {
                    History17455.Push(CurrentMenu17455);
                    Knjiga knjiga = new Knjiga();
                    knjiga.GetValid();
                    _bibliotekaManager17455.AddKnjiga(knjiga);
                    Nazad(true);
                }
                else if (Index17455 == 2)
                {
                    History17455.Push(CurrentMenu17455);
                    NaucniRad naucniRad = new NaucniRad();
                    naucniRad.GetValid();
                    _bibliotekaManager17455.AddKnjiga(naucniRad);
                    Nazad(true);
                }
                else if (Index17455 == 3)
                {
                    History17455.Push(CurrentMenu17455);
                    Strip strip = new Strip();
                    strip.GetValid();
                    _bibliotekaManager17455.AddKnjiga(strip);
                    Nazad(true);
                }
                else if (Index17455 == 4)
                {
                    Nazad(true);
                }
            }
            else if (CurrentMenu17455 == Menus.DelKnjiga)
            {
                History17455.Push(CurrentMenu17455);
                Console.Write("Unesite sifru knjige koju zelite izbrisati (q za nazad): ");

                string code = Console.ReadLine();
                if (code != "q")
                {
                    while (!_bibliotekaManager17455.RemoveKnjigaById(code))
                    {
                        Console.WriteLine("Knjiga sa tom sifrom ne postoji, unesite ponovo: ");
                        code = Console.ReadLine();
                        if (code == "q")
                        {
                            break;
                        }
                    }
                }

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.RegDelClan)
            {
                History17455.Push(CurrentMenu17455);
                if (Index17455 == 1)
                {
                    CurrentMenu17455 = Menus.RegClan;
                }
                else if (Index17455 == 2)
                {
                    CurrentMenu17455 = Menus.DelClan;
                }
                else if (Index17455 == 3)
                {
                    Nazad(true);
                }
            }
            else if (CurrentMenu17455 == Menus.DelClan)
            {
                History17455.Push(CurrentMenu17455);
                Console.Write("Unesite sifru clana kojeg zelite izbrisati (q za nazad): ");

                string id = Console.ReadLine();
                if (id != "q")
                {
                    while (!_bibliotekaManager17455.RemoveClanById(id))
                    {
                        Console.WriteLine("Clan sa tom sifrom ne postoji, unesite ponovo (q za nazad): ");
                        id = Console.ReadLine();
                        if (id == "q")
                        {
                            break;
                        }
                    }
                }

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.IznajmiVrati)
            {
                History17455.Push(CurrentMenu17455);
                if (Index17455 == 1)
                {
                    CurrentMenu17455 = Menus.IznKnjigu;
                }
                else if (Index17455 == 2)
                {
                    CurrentMenu17455 = Menus.VraKnjigu;
                }
                else if (Index17455 == 3)
                {
                    Nazad(true);
                }
            }
            else if (CurrentMenu17455 == Menus.Pretraga)
            {
                History17455.Push(CurrentMenu17455);
                if (Index17455 == 1)
                {
                    CurrentMenu17455 = Menus.PoISBN;
                }
                else if (Index17455 == 2)
                {
                    CurrentMenu17455 = Menus.PoNazivu;
                }
                else if (Index17455 == 3)
                {
                    CurrentMenu17455 = Menus.PoSifri;
                }
                else if (Index17455 == 4)
                {
                    CurrentMenu17455 = Menus.PoImenu;
                }
                else if (Index17455 == 5)
                {
                    Nazad(true);
                }
            }
            else if (CurrentMenu17455 == Menus.PrintKnjiga)
            {
                History17455.Push(CurrentMenu17455);
                _bibliotekaManager17455.PrintKnjige();
                Parser.Stall(true);
                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.PrintClanova)
            {
                History17455.Push(CurrentMenu17455);
                _bibliotekaManager17455.PrintClanova();
                Parser.Stall(true);
                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.IznKnjigu)
            {
                History17455.Push(CurrentMenu17455);
                Console.Write("Unesi sifru knjige: ");
                string knjigaId = Console.ReadLine();
                Console.Write("Unesi sifru clana: ");
                string clanId = Console.ReadLine();

                List <string> errorMessages = null;
                if (!_bibliotekaManager17455.Iznajmi(clanId, knjigaId, out errorMessages))
                {
                    Console.WriteLine("Nije moguce iznajmniti zato sto:");
                    foreach (string error in errorMessages)
                    {
                        Console.WriteLine(error);
                    }
                    Parser.Stall();
                }

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.VraKnjigu)
            {
                History17455.Push(CurrentMenu17455);

                Console.Write("Unesi sifru clana: ");
                string clanId = Console.ReadLine();
                Console.Write("Unesi sifru knjige: ");
                string knjigaId = Console.ReadLine();

                if (!_bibliotekaManager17455.VratiKnjigu(clanId, knjigaId))
                {
                    Console.WriteLine("Nije moguce vratiti knjigu.");
                    Parser.Stall();
                }

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.PoISBN)
            {
                History17455.Push(CurrentMenu17455);
                string isbn;

                while (!KnjigaValidator.IsISBNValid(isbn = Console.ReadLine()))
                {
                    if (isbn == "q")
                    {
                        break;
                    }
                    else
                    {
                        Console.Write("Unesite validan ISBN (q za nazad): ");
                    }
                }

                if (isbn != "q")
                {
                    Knjiga knjiga = _bibliotekaManager17455.SearchByISBN(isbn);

                    if (knjiga == null)
                    {
                        Console.WriteLine("Ne postoji knjiga sa tim ISBNom.");
                    }
                    else
                    {
                        Console.WriteLine("Rezultat pretrage:");
                        knjiga.Print();
                    }
                }

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.PoSifri)
            {
                History17455.Push(CurrentMenu17455);
                Console.Write("Unesite sifru: ");
                string sifra  = Console.ReadLine();
                IClan  result = _bibliotekaManager17455.SearchClanBySifra(sifra);

                if (result == null)
                {
                    Console.WriteLine("Nije pronadjen clan sa tom sifrom.");
                }
                else
                {
                    result.Print();
                }
                Parser.Stall();

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.PoImenu)
            {
                History17455.Push(CurrentMenu17455);
                Console.Write("Unesite ime clana: ");
                string       ime    = Console.ReadLine();
                List <IClan> result = _bibliotekaManager17455.SearchBy(x => ((User)x).Ime == ime);

                if (result.Count == 0)
                {
                    Console.WriteLine("Nije pronadjen clan sa tim imenom.");
                }
                else
                {
                    foreach (IClan clan in result)
                    {
                        clan.Print();
                    }
                }

                Parser.Stall();
                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.PoNazivu)
            {
                History17455.Push(CurrentMenu17455);
                string naziv = Console.ReadLine();

                if (naziv != "q")
                {
                    List <Knjiga> knjige = _bibliotekaManager17455.SearchByNaziv(naziv);

                    if (knjige == null)
                    {
                        Console.WriteLine("Ne postoji knjiga sa tim nazivom.");
                    }
                    else
                    {
                        Console.WriteLine("Rezultat pretrage:");
                        foreach (Knjiga knjiga in knjige)
                        {
                            knjiga.Print();
                            Console.WriteLine();
                        }
                    }
                }

                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.Analiza)
            {
                History17455.Push(CurrentMenu17455);

                _bibliotekaManager17455.Analyse();

                Parser.Stall();
                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.RegClan)
            {
                Console.WriteLine("Odaberite tip clana:");
                Console.WriteLine("1. Obicni insan");
                Console.WriteLine("2. Student (podaci o nivou studija studenta ce biti uneseni kasnije)");
                Console.WriteLine("3. Profesor");
                Console.WriteLine("4. Nazad");

                int index = Parser.GetNextNumber(true, 1, 4);

                if (index == 1)
                {
                    User user = new User();
                    user.PromptInput();
                    _bibliotekaManager17455.AddClan(user);
                    Nazad(true);
                }
                else if (index == 2)
                {
                    Student student = new Student();
                    student.PromptInput();
                    _bibliotekaManager17455.AddClan(student);
                    Nazad(true);
                }
                else if (index == 3)
                {
                    Profesor profesor = new Profesor();
                    profesor.PromptInput();
                    _bibliotekaManager17455.AddClan(profesor);
                    Nazad(true);
                }
                else if (index == 4)
                {
                    Nazad(true);
                }
            }
            else if (CurrentMenu17455 == Menus.KnjigaInput)
            {
                Knjiga knjiga = new Knjiga();
                knjiga.GetValid();

                _bibliotekaManager17455.AddKnjiga(knjiga);
                Nazad(true);
            }
            else if (CurrentMenu17455 == Menus.Naplati)
            {
                History17455.Push(CurrentMenu17455);
                var bannedList = _bibliotekaManager17455.Naplati();

                if (bannedList?.Count > 0)
                {
                    Console.WriteLine("Sljedeci useri vise ne mogu korisiti usluge biblioteke:");
                    foreach (var user in bannedList)
                    {
                        user.Print();
                        Console.WriteLine();
                    }
                    Parser.Stall();
                }

                Nazad(true);
            }

            Console.Clear();
        }
Example #12
0
 public IClan AddClan(IClan clan)
 {
     return(_clanManager.AddClan(clan));
 }
Example #13
0
        public bool RemoveClanById(string id)
        {
            IClan clan = SearchClanBySifra(id);

            return(_clanManager.RemoveClan(clan));
        }
Example #14
0
 public bool RemoveClan(IClan clan)
 {
     return(_clanManager.RemoveClan(clan));
 }
 public ClanUpdatedEventArgs(IClan before, IClan after)
 {
     Before = before;
     After  = after;
 }
 /// <summary>
 /// Updates the member (clan) async.
 /// </summary>
 /// <param name="clan"></param>
 /// <returns></returns>
 public virtual Task<int> UpdateAsync(IClan clan)
 {
     try
     {
         return Repository.UpdateAsync<EvidencijaClanova.DAL.Clan>(Mapper.Map<EvidencijaClanova.DAL.Clan>(clan));
     }
     catch (Exception e)
     {
         throw e;
     }
 }
Example #17
0
 private void _on_ButtonCancel_pressed()
 {
     selectedClan         = null;
     confirmPanel.Visible = false;
 }
Example #18
0
 public IClan AddClan(IClan clan)
 {
     clan.Sifra = GenerateSifra();
     Clans.Add(clan);
     return(clan);
 }
Example #19
0
 private async Task InvokeClanEventStarted(IClan clan, Event @event)
 {
     await ClanEventStarted.InvokeAsync(this, new ClanEventStartedEventArgs(clan, @event)).ConfigureAwait(false);
 }
 public ClanController(IClan clan)
 {
     _clan = clan;
 }
 public ClanEventStartedEventArgs(IClan clan, Event @event)
 {
     Clan  = clan;
     Event = @event;
 }
Example #22
0
 private async Task InvokeClanUpdated(IClan before, IClan after)
 {
     await ClanUpdated.InvokeAsync(this, new ClanUpdatedEventArgs(before, after)).ConfigureAwait(false);
 }
Example #23
0
 public Task <int> RemoveClanMentionRoleAsync(IClan clan)
 {
     throw new NotImplementedException();
 }
Example #24
0
 bool IReadOnlyDictionary <SteamId, IClan> .TryGetValue(SteamId key, out IClan value) => _clans.TryGetValue(key, out value);
 /// <summary>
 /// Updates the member (clan) async.
 /// </summary>
 /// <param name="clan"></param>
 /// <returns></returns>
 public async Task<int> UpdateAsync(IClan clan) 
 {
     try
     {
         return await Repository.UpdateAsync(clan); 
     }
     catch (Exception e)
     {
         throw e;
     }
 }