feat: Enhance UI/UX across multiple views with consistent styling and improved layout #3
4 changed files with 180 additions and 0 deletions
86
Migrations/20250621212709_AddEventDetails.Designer.cs
generated
Normal file
86
Migrations/20250621212709_AddEventDetails.Designer.cs
generated
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
// <auto-generated />
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using turf_tasker.Data;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace turf_tasker.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250621212709_AddEventDetails")]
|
||||
partial class AddEventDetails
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder.HasAnnotation("ProductVersion", "9.0.6");
|
||||
|
||||
modelBuilder.Entity("turf_tasker.Models.LawnCareEvent", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<decimal?>("AppliedAmount")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("EventDate")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int>("EventType")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<decimal?>("MowerHeightInches")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("MowingPattern")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<string>("Notes")
|
||||
.HasMaxLength(500)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("ProblemObserved")
|
||||
.HasMaxLength(250)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("ProductUsed")
|
||||
.HasMaxLength(200)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("LawnCareEvents");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("turf_tasker.Models.LawnCareTip", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<int>("Category")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<string>("Content")
|
||||
.IsRequired()
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasMaxLength(100)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("LawnCareTips");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
60
Migrations/20250621212709_AddEventDetails.cs
Normal file
60
Migrations/20250621212709_AddEventDetails.cs
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace turf_tasker.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddEventDetails : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<decimal>(
|
||||
name: "AppliedAmount",
|
||||
table: "LawnCareEvents",
|
||||
type: "TEXT",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<decimal>(
|
||||
name: "MowerHeightInches",
|
||||
table: "LawnCareEvents",
|
||||
type: "TEXT",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "ProblemObserved",
|
||||
table: "LawnCareEvents",
|
||||
type: "TEXT",
|
||||
maxLength: 250,
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "ProductUsed",
|
||||
table: "LawnCareEvents",
|
||||
type: "TEXT",
|
||||
maxLength: 200,
|
||||
nullable: true);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "AppliedAmount",
|
||||
table: "LawnCareEvents");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "MowerHeightInches",
|
||||
table: "LawnCareEvents");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ProblemObserved",
|
||||
table: "LawnCareEvents");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ProductUsed",
|
||||
table: "LawnCareEvents");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -23,12 +23,18 @@ namespace turf_tasker.Migrations
|
|||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<decimal?>("AppliedAmount")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("EventDate")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int>("EventType")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
b.Property<decimal?>("MowerHeightInches")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("MowingPattern")
|
||||
.HasColumnType("INTEGER");
|
||||
|
||||
|
|
@ -36,6 +42,14 @@ namespace turf_tasker.Migrations
|
|||
.HasMaxLength(500)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("ProblemObserved")
|
||||
.HasMaxLength(250)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("ProductUsed")
|
||||
.HasMaxLength(200)
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("LawnCareEvents");
|
||||
|
|
|
|||
|
|
@ -9,6 +9,10 @@ public enum LawnCareEventType
|
|||
Fertilizing,
|
||||
Aeration,
|
||||
WeedControl,
|
||||
PestControl,
|
||||
DiseaseControl,
|
||||
Topdressing,
|
||||
Overseeding,
|
||||
Other
|
||||
}
|
||||
|
||||
|
|
@ -40,6 +44,22 @@ public class LawnCareEvent
|
|||
[Display(Name = "Mowing Pattern")]
|
||||
public MowingPattern? MowingPattern { get; set; }
|
||||
|
||||
[Display(Name = "Product Used")]
|
||||
[StringLength(200)]
|
||||
public string? ProductUsed { get; set; }
|
||||
|
||||
[Display(Name = "Applied Amount")]
|
||||
[Range(0.01, 1000.0, ErrorMessage = "Amount must be positive.")] // Example range
|
||||
public decimal? AppliedAmount { get; set; }
|
||||
|
||||
[Display(Name = "Mower Height (inches)")]
|
||||
[Range(0.5, 6.0, ErrorMessage = "Height must be between 0.5 and 6 inches.")]
|
||||
public decimal? MowerHeightInches { get; set; }
|
||||
|
||||
[Display(Name = "Problem Observed")]
|
||||
[StringLength(250)]
|
||||
public string? ProblemObserved { get; set; }
|
||||
|
||||
[StringLength(500)]
|
||||
public string? Notes { get; set; }
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue