438 lines
19 KiB
C#
438 lines
19 KiB
C#
using System;
|
|
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
#nullable disable
|
|
|
|
namespace Modelo.Migrations
|
|
{
|
|
/// <inheritdoc />
|
|
public partial class Cambie_nombre_de_key2 : Migration
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.CreateTable(
|
|
name: "Categoria",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
Descripcion = table.Column<string>(type: "TEXT", maxLength: 50, nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Categoria", x => x.Id);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Clientes",
|
|
columns: table => new
|
|
{
|
|
Cuit = table.Column<long>(type: "INTEGER", nullable: false),
|
|
Nombre = table.Column<string>(type: "TEXT", maxLength: 30, nullable: false),
|
|
Apellido = table.Column<string>(type: "TEXT", maxLength: 30, nullable: false),
|
|
Direccion = table.Column<string>(type: "TEXT", maxLength: 50, nullable: false),
|
|
Correo = table.Column<string>(type: "TEXT", maxLength: 150, nullable: false),
|
|
Habilitado = table.Column<bool>(type: "INTEGER", nullable: false, defaultValue: true)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Clientes", x => x.Cuit);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Producto",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
Nombre = table.Column<string>(type: "TEXT", maxLength: 30, nullable: false),
|
|
Precio = table.Column<double>(type: "float", nullable: false),
|
|
Habilitado = table.Column<bool>(type: "INTEGER", nullable: false, defaultValue: true),
|
|
EsPerecedero = table.Column<bool>(type: "INTEGER", nullable: false),
|
|
Discriminator = table.Column<string>(type: "TEXT", maxLength: 21, nullable: false),
|
|
TipoDeEnvase = table.Column<string>(type: "TEXT", nullable: true),
|
|
MesesHastaConsumoPreferente = table.Column<int>(type: "INTEGER", nullable: true),
|
|
MesesHastaVencimiento = table.Column<int>(type: "INTEGER", nullable: true)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Producto", x => x.Id);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Proveedores",
|
|
columns: table => new
|
|
{
|
|
Cuit = table.Column<long>(type: "INTEGER", nullable: false),
|
|
Nombre = table.Column<string>(type: "TEXT", maxLength: 30, nullable: false),
|
|
RazonSocial = table.Column<string>(type: "TEXT", maxLength: 60, nullable: false),
|
|
Direccion = table.Column<string>(type: "TEXT", maxLength: 60, nullable: false),
|
|
Habilitado = table.Column<bool>(type: "INTEGER", nullable: false, defaultValue: true)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Proveedores", x => x.Cuit);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Facturas",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
Total = table.Column<double>(type: "REAL", nullable: false),
|
|
Fecha = table.Column<DateTime>(type: "TEXT", nullable: false),
|
|
IdCliente = table.Column<long>(type: "INTEGER", nullable: false),
|
|
ClienteCuit = table.Column<long>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Facturas", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Facturas_Clientes_ClienteCuit",
|
|
column: x => x.ClienteCuit,
|
|
principalTable: "Clientes",
|
|
principalColumn: "Cuit",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "ProductoCategoria",
|
|
columns: table => new
|
|
{
|
|
CategoriaId = table.Column<int>(type: "INTEGER", nullable: false),
|
|
ProductoId = table.Column<int>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_ProductoCategoria", x => new { x.CategoriaId, x.ProductoId });
|
|
table.ForeignKey(
|
|
name: "FK_ProductoCategoria_Categoria_CategoriaId",
|
|
column: x => x.CategoriaId,
|
|
principalTable: "Categoria",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_ProductoCategoria_Producto_ProductoId",
|
|
column: x => x.ProductoId,
|
|
principalTable: "Producto",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "OrdenDeCompras",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
ProveedorCuit = table.Column<long>(type: "INTEGER", nullable: false),
|
|
IdProveedor = table.Column<long>(type: "INTEGER", nullable: false),
|
|
Entregado = table.Column<bool>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_OrdenDeCompras", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_OrdenDeCompras_Proveedores_ProveedorCuit",
|
|
column: x => x.ProveedorCuit,
|
|
principalTable: "Proveedores",
|
|
principalColumn: "Cuit",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Presupuestos",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
Fecha = table.Column<DateTime>(type: "TEXT", nullable: false),
|
|
Habilitado = table.Column<bool>(type: "INTEGER", nullable: false),
|
|
Aceptado = table.Column<bool>(type: "INTEGER", nullable: false),
|
|
ProveedorCuit = table.Column<long>(type: "INTEGER", nullable: false),
|
|
IdProveedor = table.Column<long>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Presupuestos", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Presupuestos_Proveedores_ProveedorCuit",
|
|
column: x => x.ProveedorCuit,
|
|
principalTable: "Proveedores",
|
|
principalColumn: "Cuit",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "ProductoProveedor",
|
|
columns: table => new
|
|
{
|
|
ProveedorId = table.Column<long>(type: "INTEGER", nullable: false),
|
|
ProductoId = table.Column<int>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_ProductoProveedor", x => new { x.ProveedorId, x.ProductoId });
|
|
table.ForeignKey(
|
|
name: "FK_ProductoProveedor_Producto_ProductoId",
|
|
column: x => x.ProductoId,
|
|
principalTable: "Producto",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_ProductoProveedor_Proveedores_ProveedorId",
|
|
column: x => x.ProveedorId,
|
|
principalTable: "Proveedores",
|
|
principalColumn: "Cuit",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Remitos",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false)
|
|
.Annotation("Sqlite:Autoincrement", true),
|
|
ProveedorCuit = table.Column<long>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Remitos", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Remitos_Proveedores_ProveedorCuit",
|
|
column: x => x.ProveedorCuit,
|
|
principalTable: "Proveedores",
|
|
principalColumn: "Cuit",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "DetallesFacturas",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false),
|
|
IdFactura = table.Column<int>(type: "INTEGER", nullable: false),
|
|
Cantidad = table.Column<int>(type: "INTEGER", nullable: false),
|
|
ProductoId = table.Column<int>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_DetallesFacturas", x => new { x.Id, x.IdFactura });
|
|
table.ForeignKey(
|
|
name: "FK_DetallesFacturas_Facturas_IdFactura",
|
|
column: x => x.IdFactura,
|
|
principalTable: "Facturas",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_DetallesFacturas_Producto_ProductoId",
|
|
column: x => x.ProductoId,
|
|
principalTable: "Producto",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "DetalleOrdenDeCompras",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false),
|
|
IdOrdenDeCompra = table.Column<int>(type: "INTEGER", nullable: false),
|
|
MontoCU = table.Column<double>(type: "REAL", nullable: false),
|
|
IdPresupuesto = table.Column<int>(type: "INTEGER", nullable: false),
|
|
Cantidad = table.Column<int>(type: "INTEGER", nullable: false),
|
|
ProductoId = table.Column<int>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_DetalleOrdenDeCompras", x => new { x.Id, x.IdOrdenDeCompra });
|
|
table.ForeignKey(
|
|
name: "FK_DetalleOrdenDeCompras_OrdenDeCompras_IdOrdenDeCompra",
|
|
column: x => x.IdOrdenDeCompra,
|
|
principalTable: "OrdenDeCompras",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_DetalleOrdenDeCompras_Producto_ProductoId",
|
|
column: x => x.ProductoId,
|
|
principalTable: "Producto",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "DetallePresupuestos",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false),
|
|
IdPresupuesto = table.Column<int>(type: "INTEGER", nullable: false),
|
|
MontoCUPropuesto = table.Column<double>(type: "REAL", nullable: false),
|
|
Cantidad = table.Column<int>(type: "INTEGER", nullable: false),
|
|
ProductoId = table.Column<int>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_DetallePresupuestos", x => new { x.Id, x.IdPresupuesto });
|
|
table.ForeignKey(
|
|
name: "FK_DetallePresupuestos_Presupuestos_IdPresupuesto",
|
|
column: x => x.IdPresupuesto,
|
|
principalTable: "Presupuestos",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_DetallePresupuestos_Producto_ProductoId",
|
|
column: x => x.ProductoId,
|
|
principalTable: "Producto",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Lotes",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "INTEGER", nullable: false),
|
|
IdRemito = table.Column<int>(type: "INTEGER", nullable: false),
|
|
Fecha = table.Column<DateTime>(type: "TEXT", nullable: false),
|
|
Habilitado = table.Column<bool>(type: "INTEGER", nullable: false),
|
|
Cantidad = table.Column<int>(type: "INTEGER", nullable: false),
|
|
ProductoId = table.Column<int>(type: "INTEGER", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Lotes", x => new { x.Id, x.IdRemito });
|
|
table.ForeignKey(
|
|
name: "FK_Lotes_Producto_ProductoId",
|
|
column: x => x.ProductoId,
|
|
principalTable: "Producto",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_Lotes_Remitos_IdRemito",
|
|
column: x => x.IdRemito,
|
|
principalTable: "Remitos",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_DetalleOrdenDeCompras_IdOrdenDeCompra",
|
|
table: "DetalleOrdenDeCompras",
|
|
column: "IdOrdenDeCompra");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_DetalleOrdenDeCompras_ProductoId",
|
|
table: "DetalleOrdenDeCompras",
|
|
column: "ProductoId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_DetallePresupuestos_IdPresupuesto",
|
|
table: "DetallePresupuestos",
|
|
column: "IdPresupuesto");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_DetallePresupuestos_ProductoId",
|
|
table: "DetallePresupuestos",
|
|
column: "ProductoId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_DetallesFacturas_IdFactura",
|
|
table: "DetallesFacturas",
|
|
column: "IdFactura");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_DetallesFacturas_ProductoId",
|
|
table: "DetallesFacturas",
|
|
column: "ProductoId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Facturas_ClienteCuit",
|
|
table: "Facturas",
|
|
column: "ClienteCuit");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Lotes_IdRemito",
|
|
table: "Lotes",
|
|
column: "IdRemito");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Lotes_ProductoId",
|
|
table: "Lotes",
|
|
column: "ProductoId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_OrdenDeCompras_ProveedorCuit",
|
|
table: "OrdenDeCompras",
|
|
column: "ProveedorCuit");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Presupuestos_ProveedorCuit",
|
|
table: "Presupuestos",
|
|
column: "ProveedorCuit");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_ProductoCategoria_ProductoId",
|
|
table: "ProductoCategoria",
|
|
column: "ProductoId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_ProductoProveedor_ProductoId",
|
|
table: "ProductoProveedor",
|
|
column: "ProductoId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Remitos_ProveedorCuit",
|
|
table: "Remitos",
|
|
column: "ProveedorCuit");
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.DropTable(
|
|
name: "DetalleOrdenDeCompras");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "DetallePresupuestos");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "DetallesFacturas");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Lotes");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "ProductoCategoria");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "ProductoProveedor");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "OrdenDeCompras");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Presupuestos");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Facturas");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Remitos");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Categoria");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Producto");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Clientes");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Proveedores");
|
|
}
|
|
}
|
|
}
|