--- DatabaseLayer.h 2006/09/05 12:50:38 41 +++ DatabaseLayer.h 2007/10/22 13:00:14 60 @@ -11,31 +11,37 @@ class DatabaseLayer { -private: - CDatabase db; - public: -// virtual DatabaseLayer(void); virtual ~DatabaseLayer(void) {}; - virtual vector GetPersonAll(void) = 0; - virtual Person GetPerson(CString wantInits) = 0; + virtual vector GetPersonAll(void); + virtual Person GetPerson(CString wantInits); - virtual bool AddPerson(Person NewPerson) = 0; - virtual bool UpdatePerson(Person ChangePerson) = 0; - virtual bool DeletePerson(Person RemovePerson) = 0; - virtual bool ReturnEquipment(CString barcode) = 0; - virtual bool CheckoutEquipment(Person CheckPersID, Equipment CheckEquip, int Numdays) = 0; - virtual bool EquipmentReservation(CString barcode, Person CheckPerson) = 0; - virtual bool UpdateEquipment(Equipment CheckEquip) = 0; - virtual bool AddEquipment(Equipment AddEquip) = 0; - virtual vector GetEquipmentAll(void) = 0; - virtual Equipment GetEquipment(CString wantBarcode) = 0; - virtual bool DeleteEquipment(Equipment DelEquip) = 0; + virtual bool AddPerson(Person NewPerson); + virtual bool UpdatePerson(Person ChangePerson); + virtual bool DeletePerson(Person RemovePerson); + virtual bool ReturnEquipment(CString barcode); + virtual bool CheckoutEquipment(Person CheckPersID, Equipment CheckEquip, int Numdays) ; + virtual bool EquipmentReservation(CString barcode, Person CheckPerson) ; + virtual bool UpdateEquipment(Equipment CheckEquip); + virtual bool AddEquipment(Equipment AddEquip); + virtual vector GetEquipmentAll(void); + virtual Equipment GetEquipment(CString wantBarcode); + virtual bool DeleteEquipment(Equipment DelEquip); virtual vector Search(CString barcode, CString name, CString inits, bool available, bool reserved, bool deposited) = 0; - virtual void checkReservations(CString barcode) = 0; - virtual bool DeleteReservation(CString barcode, CString resid) = 0; -private: - virtual void FillEquipmentVector(vector &buffer, CRecordset &rs) = 0; + + virtual void checkReservations(CString barcode); + virtual bool DeleteReservation(CString barcode, CString resid); + +protected: + DatabaseLayer(void) {} //Avoid direct instantiation + + virtual void FillEquipmentVector(vector &buffer, CRecordset &rs); + + virtual CString GenerateQueryForLatestCheckouts(CString barcode) = 0; + +protected: + CDatabase db; + };