Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.16 MB, 25 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<b>Tên formHình ảnhChức năng<sub>thích</sub><sup>Chú</sup></b>
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">constraint FK_Thue_Phong foreignkey (maphong)references Phong(maphong), constraint FK_Thue_Khachhang foreignkey (maKh)references Khachhang(maKh),
createoralter view Taikhoan_view as
select tentk asN'Tên tài kho n'ả , loaitk asạN'Lo i tài kho n'ả
from Taikhoan go
--T o view khách hàng ạ
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">from Khachhang go
--T o view thuê phòng cho thu ngân ạ
createoralter view ThueTN_view as
select t maphong . , kh.hớ ' kh tenlot . + + kh tenKh HotenKH. as , . t ngaythue t ngaytra , . , . t tinhtrang t tongiten t maThue, . , . from Thue t Khachhang kh,
where t maKh kh. = .maKh go
--T o view cho thuê phòng cho admin ạ
createoralter view ThueAd_view as
select t maphong . , kh.hớ ' kh tenlot . + + kh tenKh HotenKH. as , . t ngaythue t ngaytra , . , . t tinhtrang t tongiten nv manv , . , . , nv.ho + + nv tenlot . ++ .nvtennv as HotenNV, t.maThue
from Thue t Khachhang kh Nhanvien nv, ,
where t maKh kh. = .maKh and nv manv t nguoiCapnhat. = . go
--Function: Ki m tra tr ng thái phòngể ạ
createoralter function f_kiemtratrangthai @maphong ( char(5))
if (selectcount(*)from Taikhoan where tentk @taikhoan = and matkhau @matkhau = and loaitk @loaitk= )=1
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">else if @loaitk =N'TN'
if (selectcount(*)from Taikhoan where tentk @taikhoan = and matkhau @matkhau = and loaitk @loaitk= )= 1
--Trigger: Nhân viên ph i trên 18 tu iả ổ
createoralter trigger tg_InUpNhanvien Nhanvienon for insert,update
as begin
declare @ngaysinh date
select @ngaysinh = ngaysinh from inserted
createoralter trigger tg_InKhachHang Khachhangon for insert,update
as begin
declare @ngaysinh date
select @ngaysinh = ngaysinh from inserted ifdatediff year( ,@ngaysinh,getdate()) < 18
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">else if @loaitk =N'Thu ngân'
insert into Taikhoan values(@tentk,'1111' 'TN', )
declare @maphong char( )10
select @maphong maphong = from inserted
--Procedure xem thông tin cá nhân
createoralter proc sp_thongtincn
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">tên', ngaysinh asN'Ngày sinh', sdt asốN'S đi n tho i'ệ ạ , chucvu asN'Ch c ứ v '
from Nhanvien
wherelower( ) likeho '%'+lower(@tukhoa)+'%'
orlower(tenlot ) like'%' +lower(@tukhoa ) +'%'
orlower(tennv ) like'%' +lower(@tukhoa ) +'%'
orlower(chucvu ) like'%' +lower(@tukhoa ) +'%'
commit tran go
--Procedure S a thông tin nhân viên theo mã nhân viênử
createoralter proc sp_suanv
if @ho =''or @tenlot = '' @ten = '' @sdt = '' (@chucvu !=
N'Thu ngân'and @chucvu !=N'Qu n lý'ả )
set ho @ho= , tenlot = @tenlot tennv , = @ten, sdt = @sdt, ngaysinh = @ngaysinh, chucvu @chucvu=
where manv @manv= commit tran
--Procedure Thêm nhân viên theo mã nhân viên
createoralter proc sp_themnv
if @ho =''or @tenlot = '' @ten = '' @sdt = '' (@chucvu !=
N'Thu ngân'and @chucvu !=N'Qu n lý'ả ) begin
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">whileexists(select from * Nhanvien where @manv manv= ) set @manv @manv = + 1
insert into Nhanvien values (@manv @ho, ,@tenlot @ten, ,@ngaysinh,@sdt @chucvu, ) commit tran
--Procedure Xóa nhân viên g m thông tin nhân viên và tài kho nồ ả
createoralter proc sp_xoanv @manv int as
begin tran
delete from Taikhoan where tentk @manv= delete from Nhanvien where @manv manv= commit tran
--Procedure Danh sách ch c v c a nhân viênứ ụ ủ
createoralter proc sp_loainv
--Procedure ch n nhân viên theo mã nhân viênọ
createoralter proc sp_chonnv
--Procedure Xem danh sách khách hàng
createoralter proc sp_loadDSKH @tukhoa nvarchar(50), @loaitk nvarchar(50) as
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">ifnot exists (select from * Khachhang)
select maKh asN'Mã khách hàng', ho +' ' tenlot +' ' tenKh asN'Họ và tên', ngaysinh asN'Ngày sinh', loaiKh asN'C p đ 'ấ ộ, nguoiCapnhat asN'Mã người c p nh t'
from Khachhang
wherelower( ) likeho '%'+lower(@tukhoa)+'%'
orlower(tenlot ) like'%' +lower(@tukhoa ) +'%'
orlower(tenKh ) like'%' +lower(@tukhoa ) +'%'
orlower(loaiKh ) like'%' +lower(@tukhoa ) +'%'
else if @loaitk ='TN'
from Khachhang_view
wherelower( ) likeho '%'+lower(@tukhoa)+'%'
orlower(tenlot ) like'%' +lower(@tukhoa ) +'%'
orlower(tenKh ) like'%' +lower(@tukhoa ) +'%'
orlower(loaiKh ) like'%' +lower(@tukhoa ) +'%'
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">whileexists (select from* Khachhang where maKh = @makh) set @makh @makh = + 1
insert into Khachhang values (@makh, @ho, @tenlot @tenkh @sdt @ngaysinh, , , ,N'Th ng'ườ ,@mancn)
set ho @ho= , tenlot = @tenlot tenKh , = @tenkh @sdt sdt , = , ngaysinh = @ngaysinh, loaiKh @loaiKh= , nguoiCapnhat = @mancn
where @makh = maKh
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">--Procedure Xem danh sách thuê phòng
createoralter proc sp_loadDSTP
select maphong asN'Mã phòng', HotenKH asN'H tên ọ KH', ngaythue asN'Ngày thuê', ngaytra asN'Ngày tr 'ả,
select maphong asN'Mã phòng', HotenKH asN'H tên ọ KH', ngaythue asN'Ngày thuê', ngaytra asN'Ngày tr 'ả,
else if @trangthai ='Y'
select maphong asN'Mã phòng', HotenKH asN'H tên ọ KH', ngaythue asN'Ngày thuê', ngaytra asN'Ngày tr 'ả,
tinhtrang asN'Tr ng thái'ạ , tongiten asN'T ng ti n'ổ ề
from ThueTN_view wherelower(HotenKH)like
'%'+lower(@tukhoa)+'%'and tinhtrang ='Y'
end else if @loaitk ='admin'
if @trangthai ='A'
select maphong asN'Mã phòng', HotenKH asN'H tên ọ KH', ngaythue asN'Ngày thuê', ngaytra asN'Ngày tr 'ả,
tinhtrang asN'Tr ng thái'ạ , tongiten asN'T ng ti n'ổ ề , manv asN'Mã nhân viên', HotenNV asN'H tên NV'ọ
from ThueAd_view wherelower(HotenKH)like
else if @trangthai ='N'
select maphong asN'Mã phòng', HotenKH asN'H tên ọ KH', ngaythue asN'Ngày thuê', ngaytra asN'Ngày tr 'ả,
tinhtrang asN'Tr ng thái'ạ , tongiten asN'T ng ti n'ổ ề , manv asN'Mã nhân viên', HotenNV asN'H tên NV'ọ
from ThueAd_view where tinhtrang ='N'and (lower(HotenKH)like'%'+lower(@tukhoa)+'%'
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">select maphong asN'Mã phòng', HotenKH asN'H tên ọ KH', ngaythue asN'Ngày thuê', ngaytra asN'Ngày tr 'ả,
tinhtrang asN'Tr ng thái'ạ , tongiten asN'T ng ti n'ổ ề , manv asN'Mã nhân viên', HotenNV asN'H tên NV'ọ
from ThueAd_view where tinhtrang ='Y' and (lower(HotenKH)like'%'+lower(@tukhoa)+'%'
end end
--Procedure Thêm thuê phòng
createoralter proc sp_datphong
-- Procedure Xem danh sách phòng
createoralter proc sp_loadDSP
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">createoralter procedure ThemHoaDon_proc @maHoaDon varchar(10),@SDT varchar( ),10 @maNV varchar( ),10 @maCN varchar(10),@tongGia float, @ngayBan
if @maphong =''or @loaiphong =''or @giaphong = '' @capdo =''
or (@tinhtrang !='Y'and @tinhtrang !='N')
insert into Phong
values(@stt,@maphong @loaiphong @capdo @giaphong @tinhtrang, , , , ) commit tran
--Procedure Xóa phịng theo mã phòng
createoralter proc sp_xoaphong
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">if @maphong =''or @loaiphong =''or @giaphong = '' @capdo =''
or (@tinhtrang !='Y'and @tinhtrang !='N')
select @tien = giaphong from Phong where maphong =@maphong select @ngaythue = ngaythue from Thue where @maThue maThue=
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">set tinhtrang ='Y', ngaytra =getdate(), tongiten @songay @tien = * , nguoiCapnhat =@mancc
where @maThue maThue=
set tinhtrang ='Y'
where @maphong maphong= commit tran
to RoleThuNgan