Ejemplo n.º 1
0
        public void InsertMotor(Motor motor)
        {
            using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(ConnectionStrHelper.CnnVal("TestDB")))
            {
                string motorSql   = $@"insert into dbo.Motors (MotorNumber, MotorType, Displacement, Feature, Description) 
                                    values (@MotorNumber, @MotorType, @Displacement, @Feature, @Description)";
                string partsSql   = $@"insert into dbo.Parts (PartNumber, Designation, Description) 
                                    values (@PartNumber, @Designation, @Description)";
                string BomItemSql = $@"insert into dbo.BOMItems(MotorNumber, PartNumber, PositionNumber, Quantity) 
                                    values (@MotorNumber, @PartNumber, @PositionNumber, @Quantity)";

                connection.Execute(motorSql, MotorFactory.BulidMotorRecord(motor));

                var partsToInsert = motor.BOM.Select(b => b.PartItem).Distinct();
                connection.Execute(partsSql, partsToInsert);

                var bomItems = CreateDynItemsListFromBomItemsInMotor(new List <Motor> {
                    motor
                });
                connection.Execute(BomItemSql, bomItems);
            }
        }