public static int insertGearSizeItem(gear_size_items newGearSizeItem) { using (var db = new ExtremeAppContext()) { db.gear_size_items.Add(newGearSizeItem); db.SaveChanges(); } return(newGearSizeItem.gear_id); }
public static Boolean updateGearSizeItem(gear_size_items gearSizeItemUpdated) { var result = false; using (var db = new ExtremeAppContext()) { var oldGearSizeItem = (from gsi in db.gear_size_items where gsi.gear_id == gearSizeItemUpdated.gear_id where gsi.gear_size_id == gearSizeItemUpdated.gear_size_id select gsi).SingleOrDefault(); if (oldGearSizeItem != null) { oldGearSizeItem.quantity = gearSizeItemUpdated.quantity; oldGearSizeItem.available = gearSizeItemUpdated.quantity; db.SaveChanges(); result = true; } } return(result); }
private void btnAddGearConfirm_Click(object sender, EventArgs e) { //If gear has sizes new object is made for every item size //If gear already exists in database - just update quantity var validData = true; var exist = false; String gn = ""; String desc = ""; var gc = new gear_category(); var gm = new manufacturer(); var existingItem = new gear(); if (cBoxGearName.SelectedIndex == -1) { if (string.IsNullOrEmpty(cBoxGearName.Text)) { lblGearNameError.Text = "*unijeti naziv opereme"; validData = false; } else { gn = cBoxGearName.Text.Trim(); } if (cBoxGearCategory.SelectedIndex == -1) { lblGearCategoryError.Text = "*unijeti kategoriju"; validData = false; } else { gc = (gear_category)cBoxGearCategory.SelectedItem; } if (cBoxGearManufacturer.SelectedIndex == -1) { lblGearManufacturerError.Text = "*izabrati proizvođača"; validData = false; } else { gm = (manufacturer)cBoxGearManufacturer.SelectedItem; } } else { //User has selected existring gear item - change only quantity existingItem = (gear)cBoxGearName.SelectedItem; exist = true; } if (validData) { if (checkBoxMultipleSizes.Enabled == true) { //This category item have sizes if (checkBoxMultipleSizes.Checked) { //Multiple sizes selected } else { //Only one size is selected if (cBoxGearSize.SelectedIndex == -1) { lblGearSizeError.Text = "*izabrati veličinu"; } else { if (!exist) { var gs = (gear_size)cBoxGearSize.SelectedItem; var gq = Convert.ToInt32(nUpDownGearQuantity.Value); desc = rTextBoxGearDescription.Text.Trim(); var newGear = new gear() { gear_category_id = gc.gear_category_id, manufacturer_id = gm.manufacturer_id, name = gn, descritption = desc }; var insertedGearId = GearDAO.insert(newGear); var newGearSizeItem = new gear_size_items() { gear_id = insertedGearId, gear_size_id = gs.gear_size_id, quantity = gq, available = gq }; GearDAO.insertGearSizeItem(newGearSizeItem); } else { //Item already exists update it - if specific size doesn't exist create it var gs = (gear_size)cBoxGearSize.SelectedItem; var gq = Convert.ToInt32(nUpDownGearQuantity.Value); var gearSizeItems = GearDAO.getAllSizesByGearId(existingItem.gear_id); var updated = false; foreach (var gsi in gearSizeItems) { if (gsi.gear_size_id == gs.gear_size_id) { gsi.quantity += gq; gsi.available += gq; updated = GearDAO.updateGearSizeItem(gsi); } } if (!updated) { //Create new size for item var newGearSizeItem = new gear_size_items() { gear_id = existingItem.gear_id, gear_size_id = gs.gear_size_id, quantity = gq, available = gq }; GearDAO.insertGearSizeItem(newGearSizeItem); } } } } } } else { //This category items have no sizes var gq = Convert.ToInt32(nUpDownGearQuantity.Value); } }