Na razie jest to tabela Wizyta i tabela RodzajZabiegu. Tabele zawierają dokładnie takie same pola, jak klasa, żeby wszystko ładnie połączyło się w jedną spójną całość.
Na początek dodałam też procedury dodawania wizyt.
1. Pierwsza procedura rezerwuje termin. Zostanie wykonana po wprowadzeniu daty zaplanowanej przez użytkownika wizyty
ALTER PROCEDURE
[dbo].[WizytaInsert]
(@Data_od datetime,
@Data_do datetime
)
AS
BEGIN
declare
@ile as int,
@maxID as int
select @ile=count(Id) from Wizyty where (Data_od between @Data_od and @Data_do)
or (Data_do between @Data_od and @Data_do)
if (@ile>0)
begin
insert into Wizyta(Data_od,Data_do)
values(@Data_od,@Data_do)
select @maxID=max(Id) from Wizyta
end
else
select 0
END
Jeżeli nikt jeszcze nie zarezerwował wizyty na ten czas, to wizyta zostanie zapisana, jeżeli już była wizyta, to zwraca błąd (czyli 0)
2. Druga procedura to dokonanie formalności w zapisie pozostałych danych:
create PROCEDURE [WizytaUpdate]
(@Imie nvarchar(50),
@Nazwisko nvarchar(50),
@Telefon nvarchar(50),
@Email nvarchar(50),
@Data_od datetime,
@Data_do datetime,
@RodzajZabiegu int,
@Id as int
)
AS
BEGIN
update Wizyta set Imie=@Imie,Nazwisko=@Nazwisko,Telefon=@Telefon,Email=@Email,
RodzajZabiegu=@RodzajZabiegu ,KodAutoryzacji=getdate()+rand(100)
where Id=@Id
select KodAutoryzacji from Wizyta where Id=@Id
END
GO
Zwraca ona kod autoryzacji, który będzie wysłany na maila, w celu potwierdzenia wizyty.
Dalej... dalej... Jestem ciekawy dalszych efektow :)
OdpowiedzUsuń