Commodity Auction System - Demo¶

商品竞拍平台-项目介绍¶


211850009 欧阳珅

repo: https://github.com/yunzinan/AP_CAP.git

用户功能¶

用户注册¶

按照要求依次输入用户名,密码, 电话号码, 地址.系统会自动判断用户名是否已经被注册, 也会基于regex判断各项的输入是否符合要求, 不合法的输入将会失败.

image-20221016094602025

image-20221016094353277

image-20221016094641925

用户登录¶

输入用户名和密码, 系统根据已有的注册用户信息, 判定是否登录成功.

image-20221016094834819

image-20221016095110743

卖家功能¶

我的商品: 查看/搜索/修改商品¶

  • 直接点击搜索, 可以查看所有属于该用户发布的商品.

image-20221016095300489

image-20221016095730272

  • 在搜索框中输入商品关键词(只需要商品中包含该词)或商品ID, 则会筛选符合的商品显示.

    image-20221016095925157

  • 双击某一行的商品, 会弹出该商品的详细信息, 进行查看或修改, 点击确认进行修改,或点击取消撤销本次修改.

image-20221016100033313

image-20221016100211223

订单列表: 查看订单¶

单击订单列表, 会切换到订单界面, 同时发起一次查看我的订单的请求, 如果未查询到我的订单信息, 会进行提示.

image-20221016100338746

商品发布¶

按照要求填写后点击确认添加即可发布商品.同样,不合法的输入将会失败.

image-20221016095524820

买家功能¶

商品市场: 查看/竞拍商品¶

查看逻辑同卖家界面.只会显示上架的商品.

  • 单击某一个栏目可以进行升序或降序排列
  • 双击某一个商品会跳出竞拍界面

image-20221016100906821

  • 竞拍界面可以查看该商品的详细信息, 并进行出价竞拍.
image-20221016101047633

当然, 系统会对竞拍的状态进行判断:

  • 若出价超过当前买家的余额, 会失败.

image-20221016101156721

  • 若出价低于起拍价(底价), 会失败

image-20221016101259857

  • 若已经对该商品出价过, 会失败

image-20221016101413478

  • 成功界面:

image-20221016101348291

我的订单¶

出价后, 进入我的订单界面,会显示历史订单.

image-20221016101538888

账号中心¶

账号中心界面显示该用户的所有信息, 可对除用户ID外的信息进行修改.

在输入框中输入新的信息后, 会进行判定, 同样的, 不合法的输入将会失败. 输入完成后, 点击右侧的修改按钮即可修改.

image-20221016101721885

对于用户余额充值功能, 该栏左侧显示当前余额, 右侧输入一个大于零的整数或一位小数后, 点击充值进行充值.

image-20221016102035160

管理员功能¶

管理员登录¶

输入管理员账号admin, 密码root, 点击登录进入管理员界面.

image-20221016102240369

商品列表¶

  • 查看/搜索逻辑同卖家和买家界面, 在此不赘述.双击可以查看全部信息并进行修改.

    image-20221016102351898

用户界面¶

用户界面显示所有用户的信息, 双击某一用户的状态栏可进行封禁/激活.

image-20221016102626077

相应的, 被封禁的用户将登录失败.

image-20221016102748142

订单列表¶

使用逻辑同卖家界面和买家界面, 不赘述.

image-20221016102838016

终止拍卖¶

管理员随时可以点击终止拍卖按钮, 系统将判断所有inProcess的订单的最终结果(succeeded/failed)并显示 image-20221016102926631 image-20221016114705749

拍卖结束后, 会自动更新订单, 商品, 用户余额信息.

image-20221016114807417

image-20221016114859440

image-20221016114920777

特性-拓展功能¶

基于MD5加密的用户密码加密存储¶

用户密码通过加密存储, 防止密码泄露.

image-20221016115331383

基于regex的输入合法性判断和模糊搜索¶

  • 对所有输入框的输入进行限制, 不合法的字符将直接无法输入, 增强了鲁棒性.
  • 支持模糊搜索, 增强了搜索功能.

基于Qt的交互界面和交互逻辑¶

  • 中文显示

  • GUI界面, 更加美观

  • 简化用户操作逻辑:

    • 买家/卖家界面快速切换

    • 查看/搜索合二为一

    • 查看详细/修改or竞拍合二为一

框架设计¶

LoginScene 登录界面¶

  • 读写userInfo.txt文件信息

  • 用户注册, 登录验证, 登录成功后将对应的用户信息指针作为参数调用UserCenter模块

AuctionSystem 竞拍系统¶

  • 读写commodityInfo.txt & orderInfo.txt

  • 对"客户端"提供接口, 负责处理各类请求并返回结果

UserCenter: 用户界面¶

仅负责交互: 接收用户输入->调用AuctionSystem对应API,返回结果->在界面中显示结果

AdminCenter 管理员界面¶

类似用户界面, 不赘述

MyMessageBox & CommodityBox: 自定义窗口控件¶

见实机演示

MyVector: 自定义数据结构¶

Thanks!¶