Beispiel #1
0
        /// <summary>
        /// Delete Item
        /// </summary>
        private void DeleteItemBorrowing()
        {
            databaseEntities db = new databaseEntities();
            int count           = olvBorrowing.SelectedObjects.Count;

            if (count == 1)                // If selected Item
            {                              // Find Object
                Borrowing borr = db.Borrowing.Find(((Borrowing)olvBorrowing.SelectedObject).ID);

                if (Dialogs.ShowQuest(Lng.Get("DeleteItem", "Really delete item") + " \"" + borr.Item + "\"?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    db.Borrowing.Remove(borr);                  // Delete Item
                    db.SaveChanges();                           // Save to DB
                    UpdateBorrowingOLV();                       // Update Borrowing OLV
                }
            }
            else if (count > 1)                 // If selected Item
            {
                if (Dialogs.ShowQuest(Lng.Get("DeleteItems", "Really delete selected items") + " (" + count.ToString() + ")?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    foreach (var item in olvBorrowing.SelectedObjects) // Find Object
                    {
                        Borrowing itm = db.Borrowing.Find(((Borrowing)item).ID);
                        db.Borrowing.Remove(itm);               // Delete Item
                    }
                    db.SaveChanges();                           // Save to DB
                    UpdateBorrowingOLV();                       // Update Borrowing OLV
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// Find Person in DB by Code
        /// </summary>
        /// <param name="barcode">Person Code</param>
        /// <returns>Person ID</returns>
        private Guid FindPersonByBarcode(string barcode)
        {
            long iCode = Conv.ToNumber(barcode);

            /*long num = -1;
             * foreach (var item in contList)
             * {
             *  num = Conv.ToNumber(item.PersonalNum);
             *  if (num == iCode || num == iCode / 10)
             *  {
             *      return item.ID;
             *  }
             * }*/

            // ----- Try find Person by barcode -----
            databaseEntities db = new databaseEntities();
            var list            = db.Contacts.Where(x => x.Barcode == iCode).ToList();

            if (list.Count > 0)
            {
                return(list[0].ID);
            }
            // ----- If no found -> tryfind Person by barcode without checksum -----
            else
            {
                list = db.Contacts.Where(x => x.Barcode == iCode / 10).ToList();    // remove EAN checksum
                if (list.Count > 0)
                {
                    return(list[0].ID);
                }
            }
            // ----- If not found -> return Empty GUID -----
            return(Guid.Empty);
        }
Beispiel #3
0
        /// <summary>
        /// Set Items textbox context
        /// </summary>
        private void SetItemsContext()
        {
            databaseEntities db = new databaseEntities();

            txtItem.AutoCompleteCustomSource.Clear();

            itemList = db.Copies.Where(x => !(x.Excluded ?? false) && ((x.Status ?? (short)LendStatus.Returned) == (short)LendStatus.Canceled || (x.Status ?? (short)LendStatus.Returned) == (short)LendStatus.Returned)).Select(x => new IInfo {
                ID = x.ID, ItemID = x.ItemID ?? Guid.Empty, InventoryNumber = x.InventoryNumber.Trim(), ItemType = x.ItemType.Trim(), Barcode = x.Barcode ?? 0
            }).ToList();


            for (int j = 0; j < selItemList.Count; j++)
            {
                for (int i = itemList.Count - 1; i >= 0; i--)
                {
                    if (itemList[i].ID == selItemList[j].ID)
                    {
                        itemList.RemoveAt(i);
                        break;
                    }
                }
            }

            for (int i = 0; i < itemList.Count; i++)
            {
                itemList[i].Name = global.GetLendingItemName(itemList[i].ItemType.ToString(), itemList[i].ItemID);
                txtItem.AutoCompleteCustomSource.Add(itemList[i].Name + " #" + i.ToString());
            }
        }
Beispiel #4
0
        /// <summary>
        /// Process data after timeout
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void TimeOut_Tick(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            TimeOut.Enabled = false;
            // ----- Fill Person by Barcode -----
            if (txtPerson.Focused)
            {
                Guid ID = FindPersonByBarcode(Barcode);
                if (ID != Guid.Empty)
                {
                    Contacts person = db.Contacts.Find(ID);
                    txtPerson.Text    = person.Name.Trim() + " " + person.Surname.Trim();
                    lblPersonNum.Text = Lng.Get("PersonNum", "Person number") + ": " + person.PersonCode.Trim();
                    PersonGuid        = person.ID;
                    txtItem.Focus();
                }
                else
                {
                    Dialogs.ShowWar(Lng.Get("NoPersonNumber", "This ID have no person!"), Lng.Get("Warning"));
                }
            }
            // ----- Fill Inventory number -----
            else if (txtItem.Focused)
            {
                txtItem.Text += "; " + Barcode;
                AddItem();
            }
            Barcode = "";
        }
Beispiel #5
0
        /// <summary>
        /// Delete Item
        /// </summary>
        private void DeleteItemContacts()
        {
            databaseEntities db = new databaseEntities();
            int count           = olvContacts.SelectedObjects.Count;

            if (count == 1)                 // If selected Item
            {                               // Find Object
                Contacts contact = db.Contacts.Find(((Contacts)olvContacts.SelectedObject).ID);

                if (Dialogs.ShowQuest(Lng.Get("DeleteItem", "Really delete item") + " \"" + contact.Name.Trim() + " " + contact.Surname.Trim() + "\"?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    db.Contacts.Remove(contact);                // Delete Item
                    db.SaveChanges();                           // Save to DB
                    UpdateConOLV();                             // Update Contacts OLV
                }
            }
            else if (count > 1)                 // If selected Item
            {
                if (Dialogs.ShowQuest(Lng.Get("DeleteItems", "Really delete selected items") + " (" + count.ToString() + ")?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    foreach (var item in olvContacts.SelectedObjects) // Find Object
                    {
                        Contacts contact = db.Contacts.Find(((Contacts)item).ID);
                        db.Contacts.Remove(contact);            // Delete Item
                    }
                    db.SaveChanges();                           // Save to DB
                    UpdateConOLV();                             // Update Contacts OLV
                }
            }
        }
Beispiel #6
0
        /// <summary>
        /// Delete Item
        /// </summary>
        private void DeleteItemLending()
        {
            databaseEntities db = new databaseEntities();
            int count           = olvLending.SelectedObjects.Count;

            if (count == 1)                  // If selected Item
            {                                // Find Object
                Lending borr = db.Lending.Find(((Lending)olvLending.SelectedObject).ID);

                if (Dialogs.ShowQuest(Lng.Get("DeleteItem", "Really delete item") + " \"" + global.GetLendingItemName(borr.CopyType.Trim(), borr.CopyID ?? Guid.Empty) + "\"?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    db.Lending.Remove(borr);                    // Delete Item
                    db.SaveChanges();                           // Save to DB
                    UpdateLendingOLV();                         // Update Lending OLV
                    UpdateAllItemsOLV();
                }
            }
            else if (count > 1)                 // If selected Item
            {
                if (Dialogs.ShowQuest(Lng.Get("DeleteItems", "Really delete selected items") + " (" + count.ToString() + ")?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    foreach (var item in olvLending.SelectedObjects) // Find Object
                    {
                        Lending itm = db.Lending.Find(((Lending)item).ID);
                        db.Lending.Remove(itm);                 // Delete Item
                    }
                    db.SaveChanges();                           // Save to DB
                    UpdateLendingOLV();                         // Update Lending OLV
                    UpdateAllItemsOLV();
                }
            }
        }
Beispiel #7
0
        /// <summary>
        /// Button Ok
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnOk_Click(object sender, EventArgs e)
        {
            // ----- Find selected person in DB -----
            FindPerson();

            // ----- Check if record valid -----
            if (PersonGuid == Guid.Empty)
            {
                Dialogs.ShowWar(Lng.Get("NoSelPerson", "Not selected person!"), Lng.Get("Warning"));
                return;
            }

            if (selItemList.Count == 0)
            {
                Dialogs.ShowWar(Lng.Get("NoSelItem", "Not selected item!"), Lng.Get("Warning"));
                return;
            }

            databaseEntities db = new databaseEntities();

            Lending borr;

            // ----- Delete old data -----
            if (ID.Count > 0)
            {
                foreach (var itm in ID)
                {
                    borr = db.Lending.Find(itm);
                    db.Lending.Remove(borr);
                }
                db.SaveChanges();
            }

            // ----- Create new -----
            foreach (var itm in selItemList)
            {
                borr    = new Lending();
                borr.ID = Guid.NewGuid();
                FillLend(ref borr, itm);
                db.Lending.Add(borr);
            }

            // ----- Save to DB -----
            db.SaveChanges();

            // ----- Refresh Copy Status -----
            global.RefreshCopiesStatus(selItemList, (short)cbStatus.SelectedIndex);

            // ----- Refresh Available Items in Items Tables -----
            RefreshAvailableItems(selItemList);

            // ----- Close Barcode reader connection -----
            com.Close();

            this.DialogResult = DialogResult.OK;
        }
        /// <summary>
        /// Find other Borrowings to fill Item list
        /// </summary>
        /// <param name="ID">Main ID</param>
        /// <returns>Borrowings list</returns>
        private List <Guid> FindOtherBorrowings(Guid ID)
        {
            databaseEntities db = new databaseEntities();

            List <Guid> list = new List <Guid>();

            list = db.Borrowing.Where(x => x.PersonID == ID && (x.Status == (short)LendStatus.Reserved || x.Status == (short)LendStatus.Lended)).Select(x => x.ID).ToList();

            return(list);
        }
Beispiel #9
0
        /// <summary>
        /// Process data after timeout
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void TimeOut_Tick(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            TimeOut.Enabled = false;
            if (txtInvNum.Focused)
            {
                txtInvNum.Text = Barcode.Replace("\r", "").Replace("\n,", "");
            }
            Barcode = "";
        }
Beispiel #10
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            FindPerson();
            FindItem();

            if (PersonGuid == Guid.Empty)
            {
                Dialogs.ShowWar(Lng.Get("NoSelPerson", "Not selected person!"), Lng.Get("Warning"));
                return;
            }

            if (ItemGuid == Guid.Empty)
            {
                Dialogs.ShowWar(Lng.Get("NoSelItem", "Not selected item!"), Lng.Get("Warning"));
                return;
            }

            if (Conv.ToIntDef(cbItemNum.Text, 0) == 0)
            {
                Dialogs.ShowWar(Lng.Get("NoSelItemNum", "Not selected item number!"), Lng.Get("Warning"));
                return;
            }

            databaseEntities db = new databaseEntities();

            Borrowing borr;

            // ----- ID -----
            if (ID != Guid.Empty)
            {
                borr = db.Borrowing.Find(ID);
            }
            else
            {
                borr    = new Borrowing();
                borr.ID = Guid.NewGuid();
            }

            FillBorr(ref borr);

            if (ID == Guid.Empty)
            {
                db.Borrowing.Add(borr);
            }
            db.SaveChanges();

            RefreshAvailableItems();


            this.DialogResult = DialogResult.OK;
        }
Beispiel #11
0
 /// <summary>
 /// Set Fast Tags
 /// </summary>
 /// <param name="tag">Tags Mask</param>
 private void SetTagItemBoard(short tag)
 {
     if (olvBoard.SelectedObjects != null)                 // If selected Item
     {
         databaseEntities db = new databaseEntities();
         foreach (var item in olvBoard.SelectedObjects) // Find Object
         {
             Boardgames itm = db.Boardgames.Find(((Boardgames)item).ID);
             itm.FastTags |= tag;
         }
         db.SaveChanges();                           // Save to DB
         UpdateBoardOLV();                           // Update Contacts OLV
     }
 }
Beispiel #12
0
 /// <summary>
 /// Set Fast Tags
 /// </summary>
 /// <param name="tag">Tags Mask</param>
 private void SetTagItemContacts(short tag)
 {
     if (olvContacts.SelectedObjects != null)                 // If selected Item
     {
         databaseEntities db = new databaseEntities();
         foreach (var item in olvContacts.SelectedObjects) // Find Object
         {
             Contacts contact = db.Contacts.Find(((Contacts)item).ID);
             contact.FastTags |= tag;
         }
         db.SaveChanges();                           // Save to DB
         UpdateConOLV();                             // Update Contacts OLV
     }
 }
Beispiel #13
0
        /// <summary>
        /// Set active (excluded)
        /// </summary>
        /// <param name="active"></param>
        private void SetActiveContacts(bool active)
        {
            if (olvContacts.SelectedObjects != null)                 // If selected Item
            {
                databaseEntities db = new databaseEntities();

                foreach (var item in olvContacts.SelectedObjects) // Find Object
                {
                    Contacts itm = db.Contacts.Find(((Contacts)item).ID);
                    itm.Active = active;
                }
                db.SaveChanges();                           // Save to DB
                UpdateConOLV();                             // Update Contacts OLV
            }
        }
Beispiel #14
0
        /// <summary>
        /// Set Fast Tags
        /// </summary>
        /// <param name="tag">Tags Mask</param>
        private void SetTagItemCopies(short tag)
        {
            if (olvRecipes.SelectedObjects != null)                 // If selected Item
            {
                databaseEntities db = new databaseEntities();

                foreach (var item in olvRecipes.SelectedObjects) // Find Object
                {
                    Recipes itm = db.Recipes.Find(((Recipes)item).ID);
                    itm.FastTags |= tag;
                }
                db.SaveChanges();                           // Save to DB
                UpdateRecOLV();                             // Update Contacts OLV
            }
        }
Beispiel #15
0
        /// <summary>
        /// Set Fast Tags
        /// </summary>
        /// <param name="tag">Tags Mask</param>
        private void SetTagItemLending(short tag)
        {
            if (olvLending.SelectedObjects != null)                 // If selected Item
            {
                databaseEntities db = new databaseEntities();

                foreach (var item in olvLending.SelectedObjects) // Find Object
                {
                    Lending itm = db.Lending.Find(((Lending)item).ID);
                    itm.FastTags |= tag;
                }
                db.SaveChanges();                           // Save to DB
                UpdateLendingOLV();                         // Update Contacts OLV
            }
        }
Beispiel #16
0
        /// <summary>
        /// Find other Borrowings to fill Item list
        /// </summary>
        /// <param name="ID">Main ID</param>
        /// <returns>Borrowings list</returns>
        private List <Guid> FindOtherBorrowings(Guid ID)
        {
            databaseEntities db = new databaseEntities();

            List <Guid> list = new List <Guid>();

            Borrowing borr = db.Borrowing.Find(ID);

            if (borr != null)
            {
                list = db.Borrowing.Where(x => x.PersonID == borr.PersonID && x.Status == borr.Status && x.From == borr.From && x.To == borr.To).Select(x => x.ID).ToList();
            }

            return(list);
        }
Beispiel #17
0
        /// <summary>
        /// Set active (excluded)
        /// </summary>
        /// <param name="active"></param>
        private void SetActiveBoard(bool active)
        {
            if (olvBoard.SelectedObjects != null)                 // If selected Item
            {
                databaseEntities db = new databaseEntities();

                foreach (var item in olvBoard.SelectedObjects) // Find Object
                {
                    Boardgames itm = db.Boardgames.Find(((Boardgames)item).ID);
                    itm.Excluded = !active;
                }
                db.SaveChanges();                           // Save to DB
                UpdateBoardOLV();                           // Update Contacts OLV
            }
        }
Beispiel #18
0
        /// <summary>
        /// Textbox Person Change
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtPerson_TextChanged(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            PersonGuid = Guid.Empty;
            FindPerson();
            if (PersonGuid != Guid.Empty)
            {
                Contacts person = db.Contacts.Find(PersonGuid);
                lblPersonNum.Text = Lng.Get("PersonNum", "Person number") + ": " + person.PersonCode.Trim();
            }
            else
            {
                lblPersonNum.Text = Lng.Get("PersonNum", "Person number") + ": -";
            }
        }
Beispiel #19
0
        /// <summary>
        /// Delete Item
        /// </summary>
        private void DeleteItemBoard()
        {
            databaseEntities db = new databaseEntities();
            int count           = olvBoard.SelectedObjects.Count;

            if (count == 1)                     // If selected Item
            {                                   // Find Object
                Boardgames itm = db.Boardgames.Find(((Boardgames)olvBoard.SelectedObject).ID);

                if (Dialogs.ShowQuest(Lng.Get("DeleteItem", "Really delete item") + " \"" + itm.Name.Trim() + "\"?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    db.Boardgames.Remove(itm);                       // Delete Item

                    // ----- Remove copies -----
                    var copies = db.Copies.Where(x => (x.ItemType.Trim() == ItemTypes.boardgame.ToString()) && (x.ItemID == ((Boardgames)olvBoard.SelectedObject).ID)).ToList();
                    foreach (var copy in copies)
                    {
                        db.Copies.Remove(copy);                 // Remove copy
                    }

                    db.SaveChanges();                           // Save to DB
                    UpdateBoardOLV();                           // Update Items OLV
                    UpdateCopOLV();                             // Update Copies OLV
                }
            }
            else if (count > 1)                 // If selected Item
            {
                if (Dialogs.ShowQuest(Lng.Get("DeleteItems", "Really delete selected items") + " (" + count.ToString() + ")?", Lng.Get("Delete")) == DialogResult.Yes)
                {
                    foreach (var item in olvBoard.SelectedObjects) // Find Object
                    {
                        Boardgames itm = db.Boardgames.Find(((Boardgames)item).ID);
                        db.Boardgames.Remove(itm);                   // Delete Item

                        // ----- Remove copies -----
                        var copies = db.Copies.Where(x => (x.ItemType.Trim() == ItemTypes.boardgame.ToString()) && (x.ItemID == ((Boardgames)item).ID)).ToList();
                        foreach (var copy in copies)
                        {
                            db.Copies.Remove(copy);                 // Remove copy
                        }
                    }
                    db.SaveChanges();                           // Save to DB
                    UpdateBoardOLV();                           // Update Items OLV
                    UpdateCopOLV();                             // Update Copies OLV
                }
            }
        }
Beispiel #20
0
        private void ImportObjects(string fileName)
        {
            List <Objects> con;

            if (Path.GetExtension(fileName) == "csv")
            {
                con = global.ImportObjectsCSV(fileName);
            }
            else
            {
                con = global.ImportObjectsXML(fileName);
            }

            if (con == null)
            {
                Dialogs.ShowErr(Lng.Get("ParseFileError", "Parse file error") + ".", Lng.Get("Error"));
                return;
            }

            databaseEntities db = new databaseEntities();

            foreach (var item in con)
            {
                Objects itm;
                // ----- ID -----
                if (item.ID != Guid.Empty)
                {
                    itm = db.Objects.Find(item.ID);
                    if (itm != null)
                    {
                        Conv.CopyClassPropetries(itm, item);
                    }
                    else
                    {
                        db.Objects.Add(item);
                    }
                }
                else
                {
                    item.ID = Guid.NewGuid();
                    db.Objects.Add(item);
                }
            }
            db.SaveChanges();
            UpdateObjOLV();
            Dialogs.ShowInfo(Lng.Get("SuccesfullyImport", "Import was succesfully done") + ".", Lng.Get("Import"));
        }
Beispiel #21
0
        /// <summary>
        /// Create Contact list for autocomplete function
        /// </summary>
        private void SetContactsContext()
        {
            databaseEntities db = new databaseEntities();

            AutoCompleteStringCollection auto = new AutoCompleteStringCollection();

            contList = db.Contacts.Where(x => x.Active ?? true).Select(x => new CInfo {
                ID = x.ID, Name = x.Name.Trim(), Surname = x.Surname.Trim(), PersonalNum = x.PersonCode.Trim()
            }).ToList();
            for (int i = 0; i < contList.Count; i++)
            {
                auto.Add(contList[i].Name + " " + contList[i].Surname + " #" + i.ToString());
                auto.Add(contList[i].Surname + " " + contList[i].Name + " #" + i.ToString());
                //txtPerson.AutoCompleteCustomSource.Add(contList[i].Name + " " + contList[i].Surname + " #" + i.ToString());
                //txtPerson.AutoCompleteCustomSource.Add(contList[i].Surname + " " + contList[i].Name + " #" + i.ToString());
            }
            txtPerson.AutoCompleteCustomSource = auto;
        }
Beispiel #22
0
        /// <summary>
        /// Item Changed
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtItem_TextChanged(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            ItemGuid = Guid.Empty;
            FindItem();
            if (ItemGuid != Guid.Empty)
            {
                var copy = db.Copies.Find(ItemGuid);
                lblInvNum.Text = Lng.Get("InventoryNumber", "Inventory number") + ": " + copy.InventoryNumber;
            }
            else
            {
                lblInvNum.Text = Lng.Get("InventoryNumber", "Inventory number") + ": -";
            }

            LastItemGuid = ItemGuid;
        }
Beispiel #23
0
        /// <summary>
        /// Process data after timeout
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void TimeOut_Tick(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            TimeOut.Enabled = false;
            // ----- Fill Person by Barcode -----
            if (txtPerson.Focused)
            {
                Guid ID = FindPersonByCode(Barcode);
                if (ID != Guid.Empty)
                {
                    Contacts person = db.Contacts.Find(ID);
                    txtPerson.Text    = person.Name.Trim() + " " + person.Surname.Trim();
                    lblPersonNum.Text = Lng.Get("PersonNum", "Person number") + ": " + person.PersonCode.Trim();
                    PersonGuid        = person.ID;
                    txtItem.Focus();
                }
                else
                {
                    Dialogs.ShowWar(Lng.Get("NoPersonNumber", "This ID have no person!"), Lng.Get("Warning"));
                }
            }
            // ----- Fill Inventory number -----
            else if (txtItem.Focused)
            {
                Guid ID = FindItemByCode(Barcode);
                if (ID != Guid.Empty)
                {
                    var copy = db.Copies.Find(ID);
                    ItemGuid       = ID;
                    txtItem.Text   = global.GetLendingItemName(copy.ItemType, copy.ItemID ?? Guid.Empty);
                    lblInvNum.Text = Lng.Get("InventoryNumber", "Inventory number") + ": " + copy.InventoryNumber;

                    AddItem();
                }
                else
                {
                    Dialogs.ShowWar(Lng.Get("NoItemNumber", "This ID have no item!"), Lng.Get("Warning"));
                }
            }
            Barcode = "";
        }
Beispiel #24
0
        /// <summary>
        /// Button add person
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAddPerson_Click(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            // ----- Create new Contact -----
            Guid            ID;
            frmEditContacts form = new frmEditContacts();

            form.ShowDialog(out ID);

            // ----- Select this Contact -----
            Contacts person = db.Contacts.Find(ID);

            if (person != null)
            {
                txtPerson.Text    = person.Name.Trim() + " " + person.Surname.Trim();
                PersonGuid        = ID;
                lblPersonNum.Text = Lng.Get("PersonNum", "Person number") + ": " + person.PersonCode.Trim();
            }
        }
Beispiel #25
0
        /// <summary>
        /// Refresh Available Items
        /// </summary>
        /// <param name="list"></param>
        private void RefreshAvailableItems()
        {
            databaseEntities db = new databaseEntities();

            foreach (var itm in lendList)
            {
                var copy = db.Copies.Find(itm.CopyID);

                if (copy != null)
                {
                    var borr = db.Copies.Where(p => (p.ItemID == copy.ItemID) && p.ItemType.Contains(copy.ItemType.ToString()) && ((p.Status ?? 1) == (short)LendStatus.Reserved || (p.Status ?? 1) == (short)LendStatus.Lended)).Select(c => c.ID).ToList();

                    if (global.GetItemType(copy.ItemType) == ItemTypes.item)
                    {
                        Items item = db.Items.Find(copy.ItemID);
                        if (item != null)
                        {
                            item.Available = (short)((item.Count ?? 1) - borr.Count);
                        }
                    }
                    else if (global.GetItemType(copy.ItemType) == ItemTypes.book)
                    {
                        Books book = db.Books.Find(copy.ItemID);
                        if (book != null)
                        {
                            book.Available = (short)((book.Count ?? 1) - borr.Count);
                        }
                    }
                    else if (global.GetItemType(copy.ItemType) == ItemTypes.boardgame)
                    {
                        Boardgames board = db.Boardgames.Find(copy.ItemID);
                        if (board != null)
                        {
                            board.Available = (short)((board.Count ?? 1) - borr.Count);
                        }
                    }
                }
            }
            db.SaveChanges();
        }
Beispiel #26
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            // ----- Objects -----
            if (objectForm)
            {
                frmAddObject form = new frmAddObject();
                Guid         ID   = Guid.Empty;
                form.ShowDialog(ref ID);
                if (ID != Guid.Empty)
                {
                    databaseEntities db = new databaseEntities();       // Database
                    var obj             = db.Objects.Find(ID);
                    if (obj != null)
                    {
                        ObjectList.Add(obj);
                    }
                    FileText = global.GetTextFromObjects(ObjectList);

                    UpdateOLVObject();
                }
            }
            // ----- Files -----
            else
            {
                string      text = "";
                frmEditFile form = new frmEditFile();
                form.ShowDialog(ref text, RelativePath);
                if (text != "")
                {
                    if (FileText != "")
                    {
                        FileText += ";";
                    }
                    FileText += text;
                    FileList  = global.GetFInfoList(FileText);

                    UpdateOLV();
                }
            }
        }
Beispiel #27
0
        private void ImportContacts(string fileName)
        {
            List <Contacts> con = global.ImportContactsCSV(fileName);

            if (con == null)
            {
                Dialogs.ShowErr(Lng.Get("ParseFileError", "Parse file error") + ".", Lng.Get("Error"));
                return;
            }

            databaseEntities db = new databaseEntities();

            foreach (var item in con)
            {
                Contacts contact;
                // ----- ID -----
                if (item.ID != Guid.Empty)
                {
                    contact = db.Contacts.Find(item.ID);
                    if (contact != null)
                    {
                        Conv.CopyClassPropetries(contact, item);
                    }
                    else
                    {
                        db.Contacts.Add(item);
                    }
                }
                else
                {
                    item.ID = Guid.NewGuid();
                    db.Contacts.Add(item);
                }
            }
            db.SaveChanges();
            UpdateConOLV();
            Dialogs.ShowInfo(Lng.Get("SuccesfullyImport", "Import was succesfully done") + ".", Lng.Get("Import"));
        }
Beispiel #28
0
        /// <summary>
        /// Add Item to list
        /// </summary>
        private void AddItem()
        {
            databaseEntities db = new databaseEntities();

            // ----- Find selected Item -----
            FindItem();

            if (ItemGuid == Guid.Empty)
            {
                Dialogs.ShowWar(Lng.Get("NoSelItem", "Not selected item!"), Lng.Get("Warning"));
                return;
            }

            // ----- Add selected item to list -----
            var newItem = db.Copies.Find(ItemGuid);

            selItemList.Add(newItem);
            UpdateOLV();

            // ----- Refresh Items TextBox -----
            SetItemsContext();
            txtItem.Text = "";
        }
Beispiel #29
0
        /// <summary>
        /// Process data after timeout
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void TimeOut_Tick(object sender, EventArgs e)
        {
            databaseEntities db = new databaseEntities();

            TimeOut.Enabled = false;
            // ----- Inventory Number -----
            if (txtInvNum.Focused)
            {
                txtInvNum.Text = Barcode.Replace("\r", "").Replace("\n,", "");
            }
            // ----- ISBN -----
            else
            {
                txtISBN.Text = Barcode.Replace("\r", "").Replace("\n,", "");
                // ----- Get data from web -----
                GetDataFromWeb();
                if (Properties.Settings.Default.BookUseISBN)
                {
                    txtInvNum.Text = Barcode.Replace("\r", "").Replace("\n,", "");
                }
            }
            Barcode = "";
        }
Beispiel #30
0
        /// <summary>
        /// Update Items ObjectListView
        /// </summary>
        void UpdateBoardOLV()
        {
            databaseEntities db = new databaseEntities();

            List <Boardgames> itm;

            if (chbShowExcludedBoard.Checked)
            {
                itm = db.Boardgames.ToList();
            }
            else
            {
                itm = db.Boardgames.Where(p => !(p.Excluded ?? false)).ToList();
            }

            bgTags.Renderer     = new ImageRenderer();
            bgTags.AspectGetter = delegate(object x) {
                List <int> ret  = new List <int>();
                FastFlags  flag = (FastFlags)((Boardgames)x).FastTags;
                if (flag.HasFlag(FastFlags.FLAG1))
                {
                    ret.Add(0);
                }
                if (flag.HasFlag(FastFlags.FLAG2))
                {
                    ret.Add(1);
                }
                if (flag.HasFlag(FastFlags.FLAG3))
                {
                    ret.Add(2);
                }
                if (flag.HasFlag(FastFlags.FLAG4))
                {
                    ret.Add(3);
                }
                if (flag.HasFlag(FastFlags.FLAG5))
                {
                    ret.Add(4);
                }
                if (flag.HasFlag(FastFlags.FLAG6))
                {
                    ret.Add(5);
                }

                return(ret);
            };
            bgTagsNum.AspectGetter = delegate(object x) {
                string    res  = "";
                FastFlags flag = (FastFlags)((Boardgames)x).FastTags;
                if (flag.HasFlag(FastFlags.FLAG1))
                {
                    res += "1";
                }
                if (flag.HasFlag(FastFlags.FLAG2))
                {
                    res += "2";
                }
                if (flag.HasFlag(FastFlags.FLAG3))
                {
                    res += "3";
                }
                if (flag.HasFlag(FastFlags.FLAG4))
                {
                    res += "4";
                }
                if (flag.HasFlag(FastFlags.FLAG5))
                {
                    res += "5";
                }
                if (flag.HasFlag(FastFlags.FLAG6))
                {
                    res += "6";
                }
                return(res);
            };

            bgName.AspectGetter = delegate(object x) {
                return(((Boardgames)x).Name.Trim());
            };
            bgCategory.AspectGetter = delegate(object x) {
                return(((Boardgames)x).Category.Trim());
            };
            bgInvNum.AspectGetter = delegate(object x) {
                return(global.GetInvNumList(((Boardgames)x).ID));
            };
            bgLocation.AspectGetter = delegate(object x) {
                return(global.GetLocationList(((Boardgames)x).ID));
            };
            bgKeywords.AspectGetter = delegate(object x) {
                return(((Boardgames)x).Keywords.Trim());
            };
            bgCounts.AspectGetter = delegate(object x) {
                return(((Boardgames)x).Count.ToString());
            };
            bgAvailable.AspectGetter = delegate(object x) {
                /*var borr = db.Lending.Where(p => p.ItemID == ((Items)x).Id && p.ItemType.Contains("item") && !(p.Returned ?? false)).ToList();
                 * int count = ((Items)x).Count ?? 1 - borr.Count;*/
                return(((Boardgames)x).Available ?? (((Boardgames)x).Count ?? 1));
            };
            bgExcluded.Renderer     = new ImageRenderer();
            bgExcluded.AspectGetter = delegate(object x) {
                if (((Boardgames)x).Excluded ?? false)
                {
                    return(7);
                }
                else
                {
                    return(6);
                }
            };

            olvBoard.SetObjects(itm);
        }