关于广告位管理系统设计-广告位销售记录表的设计

需求:

      广告位表 P(编号,名称,目录,规格)

      广告位有三种状态,空闲,试用,已售

      一个广告位只能有一条当前有效销售记录(ETime>Now),不能在S表中添加开始时间不是当前时间使用记录,当然不能把以后的时间提前买给别的用户(预售)

  状态转换

     空闲--(启用)-->试用|已售

     试用--(转正)-->已售

     试用|已售--(中止)-->空闲

     试用|已售---(调整)-->试用|已售 注意,试用调整后依旧是试用,已售也一样

     试用|已售--(到期)--->空闲

     已售---(继费)-->已售

------------------------------------

    广告位的状态由销售表计算获得,需要能查看广告位的操作记录(状态转换前后记录)

   网站上有,有多用户并发的情况,需要启用事务--在状态转换时锁定销售记录表

 

   销售记录表S(编号,负责人,操作,开始时间,结束时间,广告位编号,状态,转换,IsCut,...)

  说明 S.BTime开始时间,S.ETime 结束时间

  IsCut=1表示为历史记录(可以考试使用历史表)不过直接标记成IsCut更便捷

  ------------------------------------

 查询空闲广告位

Select ... From(

  Select p.编号,Max(s.ETime)

   P Left S On P.编号=S.广告位编号

   s.IsCut=0

  Group by P.编号) as t inner join 其他关联表

Where t.ETime < getdate() or  (t.ETime is null) 

-------------------------------------------------

查询使用广告位(试用,已售)

Select ... From p inner join S On p.编号=S.广告位编号

Where s.IsCut=0 And s.Etime >=getdate()

 

 

 状态转换:

1.读取S表的广告位编号为xxx并且ETime>=getdate() And IsCut=0的记录

2.锁定S表,再次判断 IsCut=0是否成立

3.设置IsCut=1

4.插入状态改变后的新记录IsCut=0

5.释放锁

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
特点:   1、在进行网页制作时,可以预留出广告的大类位置,比如首页最上部,中间右侧或者网页最下部等等。然后在广告管理中分别添加大类。  2、在每个大类中还可以细分若干广告位,比如中间右侧第1、2、3广告位,然后在广告管理中分别添加具体广告位。   3、如果同一大类中同一广告位有多个广告,广告将循环播放,每次播放的图片是距今等待时间最长、且处于正常状态的广告。  4、对于广告播放的条件,本系统提供了多种设置,除了设置单一的点击数、显示数、最后日期等限制,还可以将上述条件综合设置,比如设      置点击数<500、显示数<5000、最后日期为 2005 年 2 月 1 日,则只要其中任一条件满足,则该广告便会成为失效广告不再播放。  5、此系统还可以查看具体的广告图片观看者和点击者的 IP 地址。  6、在管理页面,你可以删除任意一条广告,暂停任意正常广告,激活被暂停广告,修改失效广告的限制条件并激活成正常广告。  7、当你删除其中一条广告的时候,这条广告的显示和点击记录也将被删除。  8、可以通过多种条件查询广告条目。  9、广告图片的尺寸可以根据客户或者排版需要任意定制。 10、登记广告时,可以详细添加广告客户的姓名、联系资料等。 11、支持图片和FLASH格式的广告
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值