//This method is responsible for populating our Database.
        public void Seed()
        {
            if (Context.Department.Any() || Context.Seller.Any() || Context.SalesRecord.Any())
            {
                return;                 //DB has been already seeded.
            }

            //Workflow: Code first targets a database that doesn't exist and Code First will create it.
            //It can also be used if you have an empty database and then Code First will add new tables to it.
            Department department  = new Department(1, "Computers");
            Department department2 = new Department(2, "Books");
            Department department3 = new Department(3, "Music");
            Department department4 = new Department(4, "Cell Phones");

            Seller seller  = new Seller(1, "Lara G.", "*****@*****.**", new DateTime(2000, 05, 09), 5000.00, department);
            Seller seller2 = new Seller(2, "Duda A.", "*****@*****.**", new DateTime(2003, 04, 14), 5000.00, department2);
            Seller seller3 = new Seller(3, "Jord V.", "*****@*****.**", new DateTime(1997, 03, 01), 5000.00, department);
            Seller seller4 = new Seller(4, "Gustavo N.", "*****@*****.**", new DateTime(2000, 09, 06), 5000.00, department3);
            Seller seller5 = new Seller(5, "Lorena G.", "*****@*****.**", new DateTime(1999, 06, 09), 5000.00, department4);

            SalesRecord salesRecord   = new SalesRecord(1, new DateTime(2020, 05, 31), 2000.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord2  = new SalesRecord(2, new DateTime(2020, 05, 30), 2000.00, SaleStatus.Billed, seller2);
            SalesRecord salesRecord3  = new SalesRecord(3, new DateTime(2020, 05, 30), 3000.00, SaleStatus.Billed, seller2);
            SalesRecord salesRecord4  = new SalesRecord(4, new DateTime(2020, 05, 30), 4000.00, SaleStatus.Billed, seller2);
            SalesRecord salesRecord5  = new SalesRecord(5, new DateTime(2020, 05, 30), 5000.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord6  = new SalesRecord(6, new DateTime(2020, 05, 30), 5000.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord7  = new SalesRecord(7, new DateTime(2020, 05, 30), 5000.00, SaleStatus.Billed, seller3);
            SalesRecord salesRecord8  = new SalesRecord(8, new DateTime(2020, 05, 30), 5000.00, SaleStatus.Billed, seller3);
            SalesRecord salesRecord9  = new SalesRecord(9, new DateTime(2020, 05, 30), 5000.00, SaleStatus.Billed, seller3);
            SalesRecord salesRecord10 = new SalesRecord(10, new DateTime(2020, 05, 30), 5000.00, SaleStatus.Billed, seller4);
            SalesRecord salesRecord11 = new SalesRecord(11, new DateTime(2020, 05, 30), 25000.00, SaleStatus.Billed, seller4);
            SalesRecord salesRecord12 = new SalesRecord(12, new DateTime(2020, 05, 9), 25000.00, SaleStatus.Billed, seller4);
            SalesRecord salesRecord13 = new SalesRecord(13, new DateTime(2020, 05, 29), 5000.00, SaleStatus.Billed, seller4);
            SalesRecord salesRecord14 = new SalesRecord(14, new DateTime(2020, 05, 22), 5000.00, SaleStatus.Billed, seller4);
            SalesRecord salesRecord15 = new SalesRecord(15, new DateTime(2020, 05, 21), 5000.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord16 = new SalesRecord(16, new DateTime(2020, 05, 4), 1000.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord17 = new SalesRecord(17, new DateTime(2020, 05, 30), 12000.00, SaleStatus.Billed, seller3);
            SalesRecord salesRecord18 = new SalesRecord(18, new DateTime(2020, 05, 31), 12000.00, SaleStatus.Billed, seller2);
            SalesRecord salesRecord19 = new SalesRecord(19, new DateTime(2020, 05, 31), 200.00, SaleStatus.Billed, seller2);
            SalesRecord salesRecord20 = new SalesRecord(20, new DateTime(2020, 05, 31), 5000.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord21 = new SalesRecord(21, new DateTime(2020, 05, 31), 100.00, SaleStatus.Billed, seller3);
            SalesRecord salesRecord22 = new SalesRecord(22, new DateTime(2020, 05, 12), 200.00, SaleStatus.Billed, seller2);
            SalesRecord salesRecord23 = new SalesRecord(23, new DateTime(2020, 05, 23), 300.00, SaleStatus.Canceled, seller5);
            SalesRecord salesRecord24 = new SalesRecord(24, new DateTime(2020, 05, 31), 20700.00, SaleStatus.Billed, seller);
            SalesRecord salesRecord25 = new SalesRecord(25, new DateTime(2020, 05, 13), 350.00, SaleStatus.Pending, seller5);

            //Add data into DB
            Context.Department.AddRange(department, department2, department3, department4);
            Context.Seller.AddRange(seller, seller2, seller3, seller4, seller5);
            Context.SalesRecord.AddRange(salesRecord, salesRecord2, salesRecord3, salesRecord4, salesRecord5,
                                         salesRecord6, salesRecord7, salesRecord8, salesRecord9, salesRecord10,
                                         salesRecord11, salesRecord12, salesRecord13, salesRecord14, salesRecord15,
                                         salesRecord16, salesRecord17, salesRecord18, salesRecord19, salesRecord20,
                                         salesRecord21, salesRecord22, salesRecord23, salesRecord24, salesRecord25);

            Context.SaveChanges();
        }
Example #2
0
        public void Seed()
        {
            // testa se ja existe algum dado nessas tabelas
            if (_context.Department.Any() || _context.Seller.Any() || _context.SalesRecord.Any())
            {
                return; // DB ja foi populado
            }

            Department d1 = new Department(1, "Computers");
            Department d2 = new Department(2, "Electronics");
            Department d3 = new Department(3, "Fashion");
            Department d4 = new Department(4, "Books");

            Seller s1 = new Seller(1, "Bob Brown", "*****@*****.**", new DateTime(1998, 4, 21), 1000.0, d1);
            Seller s2 = new Seller(2, "Maria Green", "*****@*****.**", new DateTime(1979, 12, 31), 3500.0, d2);
            Seller s3 = new Seller(3, "Alex Grey", "*****@*****.**", new DateTime(1988, 1, 15), 2200.0, d1);
            Seller s4 = new Seller(4, "Martha Red", "*****@*****.**", new DateTime(1993, 11, 30), 3000.0, d4);
            Seller s5 = new Seller(5, "Donald Blue", "*****@*****.**", new DateTime(2000, 1, 9), 4000.0, d3);
            Seller s6 = new Seller(6, "Alex Pink", "*****@*****.**", new DateTime(1997, 3, 4), 3000.0, d2);

            SalesRecord r1  = new SalesRecord(1, new DateTime(2018, 09, 25), 11000.0, SaleStatus.Billed, s1);
            SalesRecord r2  = new SalesRecord(2, new DateTime(2018, 09, 4), 7000.0, SaleStatus.Billed, s5);
            SalesRecord r3  = new SalesRecord(3, new DateTime(2018, 09, 13), 4000.0, SaleStatus.Canceled, s4);
            SalesRecord r4  = new SalesRecord(4, new DateTime(2018, 09, 1), 8000.0, SaleStatus.Billed, s1);
            SalesRecord r5  = new SalesRecord(5, new DateTime(2018, 09, 21), 3000.0, SaleStatus.Billed, s3);
            SalesRecord r6  = new SalesRecord(6, new DateTime(2018, 09, 15), 2000.0, SaleStatus.Billed, s1);
            SalesRecord r7  = new SalesRecord(7, new DateTime(2018, 09, 28), 13000.0, SaleStatus.Billed, s2);
            SalesRecord r8  = new SalesRecord(8, new DateTime(2018, 09, 11), 4000.0, SaleStatus.Billed, s4);
            SalesRecord r9  = new SalesRecord(9, new DateTime(2018, 09, 14), 11000.0, SaleStatus.Pending, s6);
            SalesRecord r10 = new SalesRecord(10, new DateTime(2018, 09, 7), 9000.0, SaleStatus.Billed, s6);
            SalesRecord r11 = new SalesRecord(11, new DateTime(2018, 09, 13), 6000.0, SaleStatus.Billed, s2);
            SalesRecord r12 = new SalesRecord(12, new DateTime(2018, 09, 25), 7000.0, SaleStatus.Pending, s3);
            SalesRecord r13 = new SalesRecord(13, new DateTime(2018, 09, 29), 10000.0, SaleStatus.Billed, s4);
            SalesRecord r14 = new SalesRecord(14, new DateTime(2018, 09, 4), 3000.0, SaleStatus.Billed, s5);
            SalesRecord r15 = new SalesRecord(15, new DateTime(2018, 09, 12), 4000.0, SaleStatus.Billed, s1);
            SalesRecord r16 = new SalesRecord(16, new DateTime(2018, 10, 5), 2000.0, SaleStatus.Billed, s4);
            SalesRecord r17 = new SalesRecord(17, new DateTime(2018, 10, 1), 12000.0, SaleStatus.Billed, s1);
            SalesRecord r18 = new SalesRecord(18, new DateTime(2018, 10, 24), 6000.0, SaleStatus.Billed, s3);
            SalesRecord r19 = new SalesRecord(19, new DateTime(2018, 10, 22), 8000.0, SaleStatus.Billed, s5);
            SalesRecord r20 = new SalesRecord(20, new DateTime(2018, 10, 15), 8000.0, SaleStatus.Billed, s6);
            SalesRecord r21 = new SalesRecord(21, new DateTime(2018, 10, 17), 9000.0, SaleStatus.Billed, s2);
            SalesRecord r22 = new SalesRecord(22, new DateTime(2018, 10, 24), 4000.0, SaleStatus.Billed, s4);
            SalesRecord r23 = new SalesRecord(23, new DateTime(2018, 10, 19), 11000.0, SaleStatus.Canceled, s2);
            SalesRecord r24 = new SalesRecord(24, new DateTime(2018, 10, 12), 8000.0, SaleStatus.Billed, s5);
            SalesRecord r25 = new SalesRecord(25, new DateTime(2018, 10, 31), 7000.0, SaleStatus.Billed, s3);
            SalesRecord r26 = new SalesRecord(26, new DateTime(2018, 10, 6), 5000.0, SaleStatus.Billed, s4);
            SalesRecord r27 = new SalesRecord(27, new DateTime(2018, 10, 13), 9000.0, SaleStatus.Pending, s1);
            SalesRecord r28 = new SalesRecord(28, new DateTime(2018, 10, 7), 4000.0, SaleStatus.Billed, s3);
            SalesRecord r29 = new SalesRecord(29, new DateTime(2018, 10, 23), 12000.0, SaleStatus.Billed, s5);
            SalesRecord r30 = new SalesRecord(30, new DateTime(2018, 10, 12), 5000.0, SaleStatus.Billed, s2);

            _context.Department.AddRange(d1, d2, d3, d4);

            _context.Seller.AddRange(s1, s2, s3, s4, s5, s6);

            _context.SalesRecord.AddRange(
                r1, r2, r3, r4, r5, r6, r7, r8, r9, r10,
                r11, r12, r13, r14, r15, r16, r17, r18, r19, r20,
                r21, r22, r23, r24, r25, r26, r27, r28, r29, r30
                );

            _context.SaveChanges();
        }