コード例 #1
0
        protected void MakeOrder(object sender, EventArgs e)
        {
            bool        duplicate = false;
            Button      btn       = (Button)sender;
            GridViewRow gvr       = (GridViewRow)btn.NamingContainer;

            int itemcode           = Convert.ToInt32(((Label)gvr.FindControl("Label_tenderId")).Text);
            Tender_List_Details td = context.Tender_List_Details.Where(x => x.tender_id == itemcode).First();


            HashSet <OrderDetailsView> itemList = (HashSet <OrderDetailsView>)Session["tender"];


            next.Visible = true;



            if (itemList == null)
            {
                itemList = new HashSet <OrderDetailsView>();
                itemList.Add(new OrderDetailsView(td));
                lblResult.Visible    = true;
                lblduplicate.Visible = false;
                lblResult.Text       = "Added Item  Successfully";
                Session["tender"]    = itemList;

                GridView2.DataSource = itemList;
                GridView2.DataBind();
            }
            else
            {
                foreach (OrderDetailsView s in itemList)
                {
                    if (s.TenderId == td.tender_id)
                    {
                        duplicate = true;
                        break;
                    }
                }

                if (!duplicate)
                {
                    itemList.Add(new OrderDetailsView(td));
                    lblResult.Visible    = true;
                    lblduplicate.Visible = false;
                    lblResult.Text       = "Added Item Successfully";
                    GridView2.DataSource = itemList;
                    GridView2.DataBind();
                    Session["tender"] = itemList;
                }
                else
                {
                    lblduplicate.Visible = true;
                    lblResult.Visible    = false;
                    lblduplicate.Text    = "Duplicate item!";
                    Session["tender"]    = itemList;
                }
            }
        }
        protected void btnGo_Click(object sender, EventArgs e)
        {
            using (SSISEntities context = new SSISEntities())
            {
                // For all item codes that are not set, go and add things to stuff
                var details = context.Tender_List_Details.GroupBy(x => x.item_code).ToList();

                var existingItemCodes = details.Select(s => s.Key);
                var otherItemCodes    = context.Stock_Inventory.Select(s => s.item_code).ToList();

                foreach (var item in existingItemCodes)
                {
                    otherItemCodes.Remove(item);
                }

                // otherItemCodes has been filtered

                Random r = new Random();

                List <int> tenderYearIds = context.Tender_List.Select(x => x.tender_year_id).ToList();

                foreach (var item in otherItemCodes)
                {
                    int toRemove = r.Next(0, 4);

                    List <int> filteredTenderYearIds = tenderYearIds.ToList();

                    // select 3 supplier ids
                    filteredTenderYearIds.RemoveAt(toRemove);

                    // add a newdetail for each of the supplier ids, with each a random price
                    double price = r.NextDouble() * 2 + 0.2d;

                    foreach (int tenderYeadId in filteredTenderYearIds)
                    {
                        // add a new tenderListDetail
                        Tender_List_Details newDetail = new Tender_List_Details();

                        decimal priceChange = (decimal)((r.NextDouble() * 0.4) - 0.2);

                        decimal newPrice = ((decimal)price) + priceChange;

                        newDetail.price          = newPrice;
                        newDetail.rank           = 0;
                        newDetail.tender_year_id = tenderYeadId;
                        newDetail.item_code      = item;
                        newDetail.deleted        = "N";

                        context.Tender_List_Details.Add(newDetail);
                    }
                }

                context.SaveChanges();
            }
        }
        protected void btnOldGo_Click(object sender, EventArgs e)
        {
            using (SSISEntities context = new SSISEntities())
            {
                // Get all tender list details currently
                // Get item codes from there
                // get price too
                // foreach tender list detail, add one for supplier ALPA (year_id 7)
                // set price to be price += random from -0.5 to 0.5. if price is below zero, add 1

                // set rank 0, set deleted 'N'

                var details = context.Tender_List_Details.GroupBy(x => x.item_code).ToList();

                Random r = new Random();

                int count = details.Count;
                int i     = 0;
                foreach (var detail in details)
                {
                    string  code  = detail.Key;
                    decimal price = detail.First().price;

                    decimal priceChange = (decimal)(r.NextDouble() - 0.2);

                    decimal newPrice = price + priceChange;

                    newPrice = newPrice < 0 ? newPrice + 0.5m : newPrice;

                    Tender_List_Details newDetail = new Tender_List_Details();

                    newDetail.price = newPrice;
                    newDetail.rank  = 0;
                    if (i <= count / 2)
                    {
                        newDetail.tender_year_id = 10;
                    }
                    else
                    {
                        newDetail.tender_year_id = 11;
                    }

                    newDetail.item_code = code;
                    newDetail.deleted   = "N";

                    context.Tender_List_Details.Add(newDetail);

                    i++;
                }

                context.SaveChanges();
            }
        }
コード例 #4
0
        private void fillFields(Tender_List_Details order)
        {
            using (SSISEntities context = new SSISEntities())
            {
                Stock_Inventory item = context.Stock_Inventory.Where(x => x.item_code == order.item_code).First();//Find(order.ISBN);

                itemDesc     = item.item_description;
                supplierName = context.Suppliers.Where(x => x.supplier_id == order.Tender_List.supplier_id).Select(x => x.name).First();
                price        = order.price;
                tenderId     = order.tender_id;
                quantity     = item.reorder_qty;
                supplierId   = order.Tender_List.supplier_id;
            }
        }
コード例 #5
0
 public OrderDetailsView(Tender_List_Details tender)
 {
     fillFields(tender);
 }
コード例 #6
0
        protected void InsertNewTender_Click(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                decimal price; int rank;

                String   supplierName    = DropDownList1.SelectedItem.ToString();
                String   itemDescription = DropDownList2.SelectedItem.ToString();
                DateTime tenderDate      = DateTime.Parse(TextBox1.Text);
                bool     isDouble        = Decimal.TryParse(TextBox2.Text, out price);

                String currentDate = DateTime.Now.ToString("yyyy-MM-dd");

                if (supplierName.Equals("Select---"))
                {
                    lblerror2.Text = "PLeae choose Supplier Name!";
                }
                else if (itemDescription.Equals("Select---"))
                {
                    lblerror2.Text = " ";
                    lblerror3.Text = "PLeae choose one item description!";
                }
                else if ((TextBox1.Text).CompareTo(currentDate) == -1)
                {
                    lblerror2.Text = " ";
                    lblerror3.Text = " ";
                    lblerror1.Text = "Cannot choose previous date!";
                }
                else
                {
                    lblerror1.Text = "";
                    lblerror2.Text = "";
                    lblerror3.Text = "";
                    Label1.Text    = "";

                    if ((!supplierName.Equals("Select---")) && (!itemDescription.Equals("Select---")))
                    {
                        //For getting supplier Id from supplier name
                        var result1 = entities.Suppliers.Where(x => x.name == supplierName).Select(x => x.supplier_id);
                        supplierID = result1.First();

                        //For getting item code from item description
                        var result2 = entities.Stock_Inventory.Where(x => x.item_description == itemDescription).Select(x => x.item_code);
                        itemCode = result2.First();

                        using (SSISEntities entities = new SSISEntities())
                        {
                            //For checking tender year
                            string[] words  = tenderDate.ToString().Split('/');
                            String   tyear  = words[2];
                            String   ctyear = tyear.Substring(0, 4);

                            bool tenderListFlag        = checkTenderList(ctyear);
                            int  tenderListDetailCount = checkTenderListDetail(ctyear);

                            if (tenderListFlag == false)
                            {
                                if (tenderListDetailCount == 0)
                                {
                                    Tender_List tender = new Tender_List
                                    {
                                        supplier_id = supplierID,
                                        tender_date = tenderDate,
                                        deleted     = "N"
                                    };
                                    Tender_List_Details tenderDetail = new Tender_List_Details
                                    {
                                        tender_year_id = tender.tender_year_id,
                                        price          = price,
                                        rank           = 0,
                                        item_code      = itemCode,
                                        deleted        = "N"
                                    };
                                    entities.Tender_List.Add(tender);
                                    entities.Tender_List_Details.Add(tenderDetail);
                                    entities.SaveChanges();
                                }
                                else
                                {
                                    chkflag = "T";
                                }
                            }
                            else
                            {
                                if (tenderListDetailCount == 0)
                                {
                                    var query = entities.Tender_List.Where(x => x.tender_date.Year == DateTime.Today.Year &&
                                                                           x.supplier_id == supplierID && x.deleted == "N").Select(x => x.tender_year_id).Distinct();
                                    tenderYearId = query.First();

                                    Tender_List_Details tenderDetail = new Tender_List_Details
                                    {
                                        tender_year_id = tenderYearId,
                                        price          = price,
                                        rank           = 0,
                                        item_code      = itemCode,
                                        deleted        = "N"
                                    };

                                    entities.Tender_List_Details.Add(tenderDetail);
                                    entities.SaveChanges();
                                }
                                else
                                {
                                    chkflag = "T";
                                }
                            }

                            if (chkflag == "T")
                            {
                                Label1.Text = "Your Data is already exist.Please choose another one!";
                            }
                            else
                            {
                                Response.Redirect("TenderListForm.aspx");
                            }
                        }
                    }
                }
            }
        }