// Inserts Auction Item
        // And Returns the Selected Index
        public int submitItem(AuctionItem auctionItem, int auctionItemSelectedIndex)
        {
            int executeQueryRowCount = -1;

            if (auctionItem.itemId < 1)
            {
                auctionItemSelectedIndex = 0;
                executeQueryRowCount     = AuctionItemTableData.insertAuctionItem(auctionItem);
                if (executeQueryRowCount > 0)
                {
                    auctionItems.Insert(auctionItemSelectedIndex, auctionItem);
                }
            }
            else
            {
                executeQueryRowCount = AuctionItemTableData.updateAuctionItem(auctionItem);
                if (executeQueryRowCount > 0)
                {
                    auctionItems.Insert(auctionItemSelectedIndex, auctionItem);
                    auctionItems.RemoveAt(auctionItemSelectedIndex + 1);
                }
            }
            if (executeQueryRowCount < 1)
            {
                return(-1);
            }

            searchEvent();
            return(auctionItemSelectedIndex + 1);
        }
예제 #2
0
 private void Item_Reset(AuctionItem ai)
 {
     dataCxt = new DataCxt {
         aItem = ai, aLocation = dataCxt.aLocation
     };
     this.DataContext = dataCxt;
     Item_ResetLbl();
 }
예제 #3
0
 public void ClickItem_Copy(object sender, RoutedEventArgs e)
 {
     if (auctionItem != null)
     {
         auctionItemCopy = new AuctionItem(auctionItem);
         Item_Reset(new AuctionItem());
     }
 }
예제 #4
0
 public AddEvent(AuctionItem ai, AuctionLocation al, MainWindow mw)
 {
     auctionItemCopy     = ai;
     auctionLocationCopy = al;
     mainWindow          = mw;
     InitializeComponent();
     txtNewEvent_ItemName.Text = ai == null?"Item Not Copied":ai.itemName;
     txtNewEvent_Location.Text = al == null ? "Location Not Copied":al.locationName;
 }
예제 #5
0
 public AuctionEvent(DataRow row)
 {
     eventId         = row.Field <int>("eventId");
     eventName       = row.Field <string>("eventName");
     eventTime       = row.Field <string>("eventTime");
     registrationFee = row.Field <int>("registrationFee");
     buyer           = row.Field <string>("buyer");
     conducted       = row.Field <bool>("conducted");
     auctionItem     = new AuctionItem(row);
     auctionLocation = new AuctionLocation(row);
 }
예제 #6
0
 public AuctionEvent setAuctionEvent(AuctionEvent ae)
 {
     eventId         = ae.eventId;
     eventName       = ae.eventName;
     eventTime       = ae.eventTime;
     registrationFee = ae.registrationFee;
     buyer           = ae.buyer;
     conducted       = ae.conducted;
     auctionItem     = new AuctionItem(ae.auctionItem);
     auctionLocation = new AuctionLocation(ae.auctionLocation);
     return(this);
 }
        public void searchItem(AuctionItem ai)
        {
            string queryItems = " ORDER BY itemId DESC LIMIT 20 ";

            auctionItems.Clear();
            var ais = new ObservableCollection <AuctionItem>(AuctionItemTableData.getAuctionItems(ai, queryItems));

            foreach (AuctionItem aiTemp in ais)
            {
                auctionItems.Add(aiTemp);
            }
            Console.WriteLine(auctionItems.Count);
        }
예제 #8
0
 public AuctionItem setAuctionItem(AuctionItem ai)
 {
     itemId         = ai.itemId;
     itemName       = ai.itemName;
     itemType       = ai.itemType;
     additionalInfo = ai.additionalInfo;
     owner          = ai.owner;
     quantity       = ai.quantity;
     initialPrice   = ai.initialPrice;
     sold           = ai.sold;
     //deleteFlag = ai.deleteFlag;
     auctioned = ai.sold ? "Yes" : "";
     return(this);
 }
예제 #9
0
        public static IList <AuctionItem> getAuctionItems(AuctionItem ai, string querySuffix)
        {
            string queryFormatted = "SELECT * FROM auction_item ";

            object[] vals  = values(ai);
            int      count = -1;

            vals[++count] = null;
            vals[++count] = (ai.quantity == -1) ? null : vals[count];
            vals[++count] = (ai.initialPrice == -1) ? null : vals[count];
            vals[++count] = blank(ai.itemName) ? null : "%" + vals[count] + "%";
            vals[++count] = blank(ai.itemType) ? null : "%" + vals[count] + "%";
            vals[++count] = blank(ai.additionalInfo) ? null : "%" + vals[count] + "%";
            vals[++count] = blank(ai.owner) ? null : "%" + vals[count] + "%";
            DataTable dataTable = getData(queryFormatted, columns, vals, querySuffix);

            return(dataTable.AsEnumerable().Select(row => new AuctionItem(row)).ToList());
        }
예제 #10
0
        public void ClickItem_Submit(object sender, RoutedEventArgs e)
        {
            Item_ResetLbl();
            AuctionItem aItem = dataCxt.aItem;

            if (aItem == null)
            {
                lblItem_ValueNotDefined.Visibility = Visibility.Visible;
                return;
            }
            // No Change In Values
            if (auctionItem != null && aItem.toString().Equals(auctionItem.toString()))
            {
                lblItem_NoChangeInValue.Visibility = Visibility.Visible;
                return;
            }
            // Mandatory Values Check
            if (!aItem.mandatoryCheck())
            {
                lblItem_DefineMandatoryValues.Visibility = Visibility.Visible;
                return;
            }
            // Insert/Update Values
            int selectedIndex = controlFunctions.submitItem(aItem, auctionItemSelectedIndex);

            if (selectedIndex > 0)
            {
                Item_Reset(new AuctionItem());
                lbxItem_Grid.SelectedIndex = selectedIndex - 1;
                lblItem_Success.Visibility = Visibility.Visible;
            }
            else if (selectedIndex > -1)
            {
                lblItem_ValueNotUpdatedError.Visibility = Visibility.Visible;
            }
            else
            {
                lblItem_Error.Visibility = Visibility.Visible;
            }
        }
예제 #11
0
 public void clearCopyItem()
 {
     auctionItemCopy     = null;
     auctionLocationCopy = null;
     controlFunctions.searchEvent();
 }
예제 #12
0
        /* *************************** CODE RELATED TO AUCTION ITEM *************************** */

        public void DblClickItem_Grid(object sender, MouseEventArgs e)
        {
            auctionItem = (AuctionItem)lbxItem_Grid.SelectedItem;
            auctionItemSelectedIndex = lbxItem_Grid.SelectedIndex;
            Item_Reset(new AuctionItem(auctionItem));
        }
예제 #13
0
 public static int updateAuctionItem(AuctionItem ai)
 {
     return(updateRecord("auction_item", columns, values(ai), " WHERE itemId=" + ai.itemId));
 }
예제 #14
0
 public static int insertAuctionItem(AuctionItem ai)
 {
     return(insertRecord("auction_item", columns, values(ai)));
 }
예제 #15
0
 private static object[] values(AuctionItem ai)
 {
     return(new object[] { ai.sold, ai.quantity, ai.initialPrice, ai.itemName, ai.itemType, ai.additionalInfo, ai.owner });
 }
예제 #16
0
 public AuctionItem(AuctionItem ai)
 {
     setAuctionItem(ai);
 }