Mongodb:避免字段值重复

我正在使用 symfony ODM,我有两张表,一张用于保存账单,另一张用于保存最后一张账单号码。


Bills

id|bill_no |created_at

--|-------------------

1 |b2018/01|ISODate("2019-03-18T22:05:17.000+05:30")

--|-------------------

2 |b2018/01|ISODate("2019-03-18T22:05:17.000+05:30")

--|-------------------

3 |b2018/02|ISODate("2019-03-18T23:06:12.000+05:30")



Last_Bill

id|last_bill_no|key  |last_updated_at

--|-------------------

1 |2           |BILL |ISODate("2019-03-18T23:06:12.000+05:30")

基于 Last_Bill 表,我将 bill_no 保存到 bills 表中,如果我同时创建两个账单,则会发生账单编号重复,我该如何避免这种重复呢?请帮我。我的代码如下


$dm = $this->get('doctrine_mongodb')->getManager();

$lastBill = $dm->getRepository('AppBundle:LastBill')->findOneByKey('BILL');

$billNo = b.''.date('Y').'/'.($lastBill->getLastBillNo()+1);

$bill = new Bills();

$bill->setBillNo($billNo)

$dm->persist($bill);

$lastBill->setLastBillNo($lastBill->getLastBillNo()+1);

$dm->flush();

在票据文件中 billNo 被定义为,


/**

 * @MongoDB\Field(name="bill_no", type="string")

 */

protected $billNo;


SMILET
浏览 307回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP