发布时间 : 星期三 文章网上书城概要设计更新完毕开始阅读
新闻管理模块 添加分类 修改分类 删除分类
13、
公告管理
站内公告
14、
统计管理 a) 网站投票
用户选择相应的选项进行投票,可以查看投票统计。
3. 类与结构设计 1、GenericDataAccess:实现公共的功能,在随时需要访问数据库时可以重用它。
GenericDataAccess+CreateCommand() : <未指定>+ExecuteNonQuery() : int+ExecuteScalar() : string+ExecuteSelectCommand() : <未指定>
2、 CatalogAccess:包含特定于商品目录的功能,例于用来从数据库中获取门类列表的
GetDepartments方法。
CataLogAccess+AddBook() : bool+AddCategory() : bool+AddDepartment() : bool+AssignBookToCategory() : bool+DeleteBook() : bool+DeleteCategory() : bool+GetAllBooksInCategory()+GetBookDetails()+GetBooksInCategory()+GetBooksOnCatalogPromotion()+GetBooksOnDepartmentPromotion()+GetCategoriesInDepartment()+GetCategoriesWithBook()+GetCategoriesWithoutBook()+GetCategoryDetails()+GetDepartmentDetails()+GetDepartments()+GetLatelyNews()+GetNewsByKindId()+GetRecommedations(in productID : string)+GetSellTop()+MoveBookToCategory() : bool+Search()+RemoveBookFromCategory() : bool+UpdateBook() : bool+UpdateCategory() : bool+UpdateDepartment() : bool
3、 HBSTPConfiguration和Utilities:这两个类中包含很多功能,如发送邮件,在本项目中
其他在方多次重用。
HBSTPConfiguration-bookDescriptionLength : int-bookPerPage : int-cartPersistDays : int-dbConnectionString : string-dbProviderName : string-siteName : string+HBSTPConfiguration()Utilities+LogError()+SendMail()+TieButton()
4、 DepartmentDetails:此处为一个结构,因为它主要是初设计成为一个数据容器,里
同包括四个结构分别是:DepartmentDetails、CategoryDetails、BookDetails、OrderInfo.
<<结构>>DepartmentDetail+Description : string+Name : string<<结构>>OrderInfo+Canceled : bool+Comments : string+Completed : bool+CustomerName : string+DateCreated : string+DateShipped : string+OrderID : int+ShippingAddress : string+TotalAmount : decimal+Verified : bool<<结构>>BookDetails+Author : string+Binding : string+Description : string+Edition : string+Format : string+Forword : string+Image1FileName : string+Image2FileName : string+ISBN : string+Kai : int+List : string+Name : string+OnCatalogPromotion : bool+OnDepartmentPromotion : bool+OutLine : string+Pages : int+PDate+Price : decimal+Publisher : string+TotalNum : string<<结构>>CategoryDetails+DepartmentID : int+Description : string+Name : string
5、 ShoppingCartAccess:该类将调用存储过程,为购物车的表示层提供所需的功能支
持。如当访问者点击”添加到购物车”时,将调用ShoppingCartAccess类中的AddProduct方法。
ShoppingCartAccess-ShoppingCartID : string+AddItem(in productID : string) : bool+CountOldCarts(in days : byte) : int+CreateCommerceLibOrder(in shippingID : int, in taxID : int) : string+CreateOrder() : string+DeleteOldCarts(in days : byte) : bool+GetItems()+GetRecommendations()+GetTotalAmount() : decimal+RemoveItem(in productID : string) : bool+UpdateItem(in productID : string, in quantity : int) : bool
6、 OrdersAccess:在该类中订单访问的代码和多针对某个订单的数据可以封闭在一个
名为OrderInfo结构中(5所示),而这个结构可以通过不同的方法来维护订单的详细资料。
OrderAccess+GetByDate(in startDate : string, in endDate : string)+GetByRecent(in count : int)+GetDetails(in orderID : string)+GetInfo(in orderID : string) : OrderInfo+GetUnverifiedUnCanceled()+GetVerfiedUncompleted()+MarkCanceled(in orderID : string)+MarkCompleted(in orderID : string)+MarkVerfied(in orderId : string)+Update(in orderInfo : OrderInfo)
7、 ProfileWrapper用户档案类,该类主要用于从配制文件里获取用户详情。如地址、电话等。
ProfileWrapper-address1 : string-address2 : string-city : string-country : string-creditCard : string-creditCardExpiryDate : string-creditCardHolder : string-creditCardIssueDate : string-creditCardIssueNumber : string-creditCardNumber : string-creditCardType : string-dayPhone : string-email : string-evePhone : string-mobPhone : string-postalCode : string-region : string-shippingRegion : string+ProfileWrapper()+UpdateProfile()
8、 CommerceLibAccess:该类实现不允许别人访问订单详细资料或顾客及信用卡信息。
另外有三个类和两个结构分别是: CommerceLibOrderDetailInfo. CommerceLibAuditInfo. CommerceLibOrderInfo. CommerceLibAccess.
结构:TaxInfo