0

对不起这个标题,但我不知道如何用简短的形式解释我的问题。

我有很多面包店,里面有很多烤箱。现在我想找一家没有用过的烤箱的面包店。有没有办法,我的陈述应该是什么样子?烤箱有时间让烤箱变得不寻常。即,我将一些面包放入烤箱,使这个烤箱无法使用 2 小时。用户可以“租用”烤箱。这个烤箱“使用”了一段时间,它保存在面包房的桌子上。在 bakery-table 中也节省了烤箱的数量。在烤箱表中都是租用的烤箱,即将到来的,正在运行的和旧的事件。现在我想找到在特殊时间有免费烤箱的面包店,并想创造如下条件:

找到所有面包店在哪里(计算其中的烤箱哪里(烤箱在时间是空的或(烤箱在出租时间是空的+“使用中”-时间))<= count_all_ovens_in_bakery

我创建了一个声明,其中找到了开放时间和烤箱大小,但我不知道如何使用免费烤箱创建此声明

对不起,我的英语很糟糕...

希望你能帮助我

M。

4

1 回答 1

2

在不知道这些表的架构的情况下,这有点像是在黑暗中刺伤。还取决于您如何设置模型关联。假设面包店有很多烤箱,烤箱属于面包店。并假设已在模型上设置了可包含行为。

找到所有面包店在哪里(计算其中的烤箱哪里(烤箱在时间是空的或(烤箱在出租时间是空的+“使用中”-时间))<= count_all_ovens_in_bakery

$freeOvens = $this->Oven->find('all', array(
    'fields' => array(
        'COUNT(Bakery.id) AS NUM_BAKERIES',
        'COUNT(Oven.id) AS NUM_OVENS',
        // Any other fields you want included
    ),
    'conditions' => array(
        'OR' => array(
            // Oven is empty at time,
            // Oven is empty at (rent-time + in-use-time)
        )
    ),
    'recursive' => 2,
    'contain' => array(
        'Bakery'
    ),
    'group' => array('Bakery.id'),
    'order' => array('Bakery.name', 'NUM_OVENS DESC')
));
于 2013-06-14T14:07:15.707 回答