CELLibraryController.cs

using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Configuration;
using System.XML;
using System.Web;
using DotNetNuke;
using DotNetNuke.Services.Search;
using DotNetNuke.Common.Utilities.XmlUtils;

namespace CEL.Modules.CELLibrary
{

	/// <summary>
	/// The Controller class for CELLibrary
	/// </summary>
	/// <remarks>
	/// </remarks>
	/// <history>
	/// </history>
	/// -----------------------------------------------------------------------------
	public class CELLibraryController : Entities.Modules.ISearchable, Entities.Modules.IPortable
	{

		#region "Public Methods"
		public DataTable GetAllBorrowedBook(int ModuleID)
		{
			return DataProvider.Instance.GetAllBorrowedBook(ModuleID).Tables(0);
		}
		public DataTable getAllLibrary(string SortExp, int ModuleID)
		{
			return DataProvider.Instance.GetAllLibrary(SortExp, ModuleID).Tables(0);
		}
		public DataTable getAllNonArchivedLibrary(int ModuleID)
		{
			return DataProvider.Instance.GetNotArchivedLibrary(ModuleID).Tables(0);
		}
		public DataTable getAllArchivedLibrary(int ModuleID)
		{
			return DataProvider.Instance.GetArchivedLibrary(ModuleID).Tables(0);
		}

		public DataTable getLibraryByID(int LibraryID)
		{
			return DataProvider.Instance.GetLibraryByID(LibraryID).Tables(0);
		}
		public DataTable getLibraryByTitle(string Title, string SortExp, int ModuleID)
		{
			return DataProvider.Instance.GetLibraryByTitle(Title, SortExp, ModuleID).Tables(0);
		}
		public DataTable getLibraryByPublisher(string Publisher, string SortExp, int ModuleID)
		{
			return DataProvider.Instance.GetLibraryByPublisher(Publisher, SortExp, ModuleID).Tables(0);
		}
		public DataTable getLibraryByPublishDate(string PublishDate, string SortExp, int ModuleID)
		{
			return DataProvider.Instance.GetLibraryByPublishDate(PublishDate, SortExp, ModuleID).Tables(0);
		}
		public DataTable getLibraryByMedia(string Media, string SortExp, int ModuleID)
		{
			return DataProvider.Instance.GetLibraryByMedia(Media, SortExp, ModuleID).Tables(0);
		}
		public DataTable getLibraryByAuthor(string Author, string SortExp, int ModuleID)
		{
			return DataProvider.Instance.GetLibraryByAuthor(Author, SortExp, ModuleID).Tables(0);
		}
		public void AddBook(string Title, string ISBN, string Author, string Publisher, string PublishDate, string Owner, int ModuleID, string Media)
		{
			DataProvider.Instance.AddLibrary(Title, ISBN, Author, Publisher, PublishDate, Owner, ModuleID, Media);
		}
		public void UpdateLibrary(string Title, string ISBN, string Author, string Publisher, string PublishDate, string Owner, int LibraryID, string Media)
		{
			DataProvider.Instance.UpdateLibrary(Title, ISBN, Author, Publisher, PublishDate, Owner, LibraryID, Media);
		}
		public void DeleteLibraryByID(int LibraryID)
		{
			DataProvider.Instance.DeleteLibraryByID(LibraryID);
		}
		public void ArchiveBook(int LibraryID)
		{
			DataProvider.Instance.ArchiveBook(LibraryID);
		}
		public void UnArchiveBook(int LibraryID)
		{
			DataProvider.Instance.UnArchiveBook(LibraryID);
		}

		public DataTable GetBorrowedBookByLibraryID(int LibraryID)
		{
			return DataProvider.Instance.GetBorrowedBookByLibraryID(LibraryID).Tables(0);
		}

		public void AddLibraryBorrow(int LibraryID, int UserID, DateTime BorrowDate, DateTime DueReturnDate, DateTime ActualReturnDate)
		{
			DataProvider.Instance.AddLibraryBorrow(LibraryID, UserID, BorrowDate, DueReturnDate, ActualReturnDate);
		}

		public void RemoveBorrow(int LibraryBorrowID, int LibraryID)
		{
			DataProvider.Instance.RemoveBorrow(LibraryBorrowID, LibraryID);
		}

		public void UpdateLibraryModuleID(int ModuleID, int LibraryID)
		{
			DataProvider.Instance.UpdateLibraryModuleID(ModuleID, LibraryID);
		}
		public DataTable GetAllLibraryWithoutModuleID()
		{
			return DataProvider.Instance.GetAllLibraryWithoutModuleID().Tables(0);
		}

		#endregion

		#region "Optional Interfaces"

		/// -----------------------------------------------------------------------------
		/// <summary>
		/// GetSearchItems implements the ISearchable Interface
		/// </summary>
		/// <remarks>
		/// </remarks>
		/// <param name="ModInfo">The ModuleInfo for the module to be Indexed</param>
		/// <history>
		/// </history>
		/// -----------------------------------------------------------------------------

		public DotNetNuke.Services.Search.SearchItemInfoCollection GetSearchItems(Entities.Modules.ModuleInfo ModInfo)
		{
			SearchItemInfoCollection SearchItemCollection = new SearchItemInfoCollection();

			//Dim colCELLibrarys As List(Of CELLibraryInfo) = GetCELLibrarys(ModInfo.ModuleID)
			//Dim objCELLibrary As CELLibraryInfo
			//For Each objCELLibrary In colCELLibrarys
			//    Dim SearchItem As SearchItemInfo = New SearchItemInfo(ModInfo.ModuleTitle, objCELLibrary.Content, objCELLibrary.CreatedByUser, objCELLibrary.CreatedDate, ModInfo.ModuleID, objCELLibrary.ItemId.ToString, objCELLibrary.Content, "ItemId=" & objCELLibrary.ItemId.ToString)
			//    SearchItemCollection.Add(SearchItem)
			//Next

			return SearchItemCollection;

		}

		/// -----------------------------------------------------------------------------
		/// <summary>
		/// ExportModule implements the IPortable ExportModule Interface
		/// </summary>
		/// <remarks>
		/// </remarks>
		/// <param name="ModuleID">The Id of the module to be exported</param>
		/// <history>
		/// </history>
		/// -----------------------------------------------------------------------------

		public string ExportModule(int ModuleID)
		{
			string strXML = "";

			//Dim colCELLibrarys As List(Of CELLibraryInfo) = GetCELLibrarys(ModuleID)
			//If colCELLibrarys.Count <> 0 Then
			//    strXML += "<CELLibrarys>"
			//    Dim objCELLibrary As CELLibraryInfo
			//    For Each objCELLibrary In colCELLibrarys
			//        strXML += "<CELLibrary>"
			//        strXML += "<content>" & XMLEncode(objCELLibrary.Content) & "</content>"
			//        strXML += "</CELLibrary>"
			//    Next
			//    strXML += "</CELLibrarys>"
			//End If

			return strXML;

		}

		/// -----------------------------------------------------------------------------
		/// <summary>
		/// ImportModule implements the IPortable ImportModule Interface
		/// </summary>
		/// <remarks>
		/// </remarks>
		/// <param name="ModuleID">The Id of the module to be imported</param>
		/// <param name="Content">The content to be imported</param>
		/// <param name="Version">The version of the module to be imported</param>
		/// <param name="UserId">The Id of the user performing the import</param>
		/// <history>
		/// </history>
		/// -----------------------------------------------------------------------------

		public void ImportModule(int ModuleID, string Content, string Version, int UserId)
		{
			//Dim xmlCELLibrary As XmlNode
			//Dim xmlCELLibrarys As XmlNode = GetContent(Content, "CELLibrarys")
			//For Each xmlCELLibrary In xmlCELLibrarys.SelectNodes("CELLibrary")
			//    Dim objCELLibrary As New CELLibraryInfo
			//    objCELLibrary.ModuleId = ModuleID
			//    objCELLibrary.Content = xmlCELLibrary.SelectSingleNode("content").InnerText
			//    objCELLibrary.CreatedByUser = UserId
			//    AddCELLibrary(objCELLibrary)
			//Next

		}

		#endregion

	}
}
posted @ 2010-07-13 00:09  小生不才  阅读(280)  评论(0编辑  收藏  举报