如何搭建 预订服务类网站?

Events happening in the community are now at Drupal community events on www.drupal.org.
waveer's picture

现在有这样一个网站功能需求,请各位给点建议。

网站为一家美容院提供预订服务,有若干服务项目,如:美发,美容,牙齿美白等,有6个位置可以同时进行服务。

客户先选择服务项目,然后是日期,然后时间,确定后,添加到购物车付款。
每个项目的服务时间是固定的,如:
美发:40分钟
美容:60分钟
牙齿美白:50分钟
....
现在想到的展示方式有两种,一种是如图一这种:

另一种是如图二 这种:

可以预订的日期,可以点击,然后进入“天”的展示页面
页面列出所有的可以预订的服务,用户点击后,到购买页面,或者直接显示“现在订购”按钮在“天”页面。

这个功能,我尝试了一个月了,ubercart和commerce都试了,但多少都不太行,少一些东西。
drupal官方的预订类模块,我大都搜了一遍,7下的我也试了不少,有两三个看似不错,但装完后,错误不少,看模块的 issue 也解决不了。

现在我想咨询一下给位,目前官方的模块,能不能完成这一功能,如果可以,怎样搭建?有没有做过类似功能的朋友,如果可以,能否共享下方法,如果不方便公开,可否有偿告之。

如果目前官方的模块做不到,需要自定义模块的话,也请告之。

先谢谢诸位了

AttachmentSize
1.jpg54.44 KB
2.jpg72.78 KB
3.jpg64.79 KB

Comments

Drupal 7下使用

hooface's picture

Drupal 7下使用 Views、date、Flag应该就可以实现你的功能了。
如果需要在线支付,再加个 commerce 及相应的支付模块应该也没什么问题。

waveer's picture

能否具体的说下思路?

我的难点是:6个位置是可以进行任何服务,也就是可以同时做相同的服务,这样如果有两个客户同时来做相同的服务,就不用等待,这种怎么做?

code is poetry

wannianchuan's picture

drupal里现在好像还没有很好的解决方案。

可以看下这个脚本 http://www.phpjabbers.com/time-slots-booking-calendar/
是一个独立安装的php+mysql日历形式的时间段预订系统,它产生的日历可以用代码嵌到drupal模板里。自带管理后台,可以创建多个日历,你的6的位置就可以创建6个日历,这样每个位置的时间就可以单独管理了。

这个脚本是收费的,购买之后能提供源代码,可以根据自己的需要进行修改,源码里面好像带语言包,可以进行翻译。

谢谢了,等会看下

waveer's picture

谢谢了,等会看下

code is poetry

用merci模块

miloyz's picture

http://drupal.org/project/merci
如果开发能力有限,就用这个模块吧。
设备就是房间,在预订里增加项目选项,在表单提交里添加时间长短的validate。
就差不多是你要的了。

Love, Peace and Drupal

waveer's picture

merci我好像试过,但可能报错有点多吧,最后放弃了
时间有点长了,我记不太清了,回头再试试

code is poetry

1,Ubercart

g089h515r806's picture

1,Ubercart 还是Commerce都可以实现这样的功能。
2,把美发、牙齿美白、美容做成三个产品。
3,把日期、时间做成属性,日期和时间可以和并在一起。添加产品时,允许用户选择时间属性。
当然,这个需要定制开发的。添加时间属性,这个是需要检查一些规则的,比如同一个时间的所有位置都已经满了,这个时候,应该添加不了。就是说,肯定需要定制开发的,不管是Ubercart还是Commerce。
4,其它使用Views,Field API定制即可。

我的drupal博客Think in Drupal

更细一点的技术: 为订单添加一个 field

g089h515r806's picture

更细一点的技术:
为订单添加一个 field collection字段,比如叫做服务项目,它里面包含 三个字段
:1,具体的服务项目, 比如:美发、牙齿美白、美容
2,日期时间
3,位置,6个位置中的一个

不一定使用field collection,使用节点类型也可以,比如服务项目的内容类型,用户每购买一个产品,都创建一个该类型的节点。
这样可以保留用户的购买信息,在订单实体 中,可以有服务项目的引用。

我的drupal博客Think in Drupal

谢谢了

waveer's picture

谢谢了

code is poetry

Jordan_Fei's picture

我觉得你的case,无论是选择什么样的展现形式,简单的或usability好些的是一方面。另一方面就是你应该需要自己完全写一个简单的排程算法,可利用的资源是n个位置,产品就是你的几种项目,不同的属性就是他们的服务时间不同,可以作为属性,还有是否考虑到你的技师也可能是个影响你系统的因素,就是做的flexible点话,这些因素多考虑些,将来需求稍微变化,你的系统也能适应。 就是用户随便选个项目和时间段,你的系统应该智能的判断出这个时间available or not,如果available,也可以选出一个最佳位置,这样可以使美容店的运行效率最高。

Drupal Developer

waveer's picture

嗯,谢谢了,看来利用目前的现有模块是不行了。
暂时只能先用一个替代方案了,主要我还不会写模块。
以后如果可以,再看看能不能找到一个通用的方法,写一个模块

code is poetry

中国 - China

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: