public function actionGetSitePersons() { $companyid = Yii::app()->request->getParam('companyid', 0); $padid = Yii::app()->request->getParam('padid', 0); $stlid = Yii::app()->request->getParam('stlid', 0); $splid = Yii::app()->request->getParam('splid', 0); $ret = array(); $nowqueueno = "000"; $queueno = "A001"; $waitingno = 0; if (empty($companyid) || empty($padid)) { Yii::app()->end(json_encode(array('status' => false, 'msg' => '店铺或设备不存在!'))); } $pad = Pad::model()->with("printer")->find(' t.dpid=:companyId and t.lid=:padid', array(':companyId' => $companyid, ':padid' => $padid)); //var_dump($pad);exit; if (!empty($pad)) { //生成新的排队号 $siteType = SiteType::model()->find(" dpid=:dpid and lid=:lid", array(":dpid" => $companyid, ":lid" => $stlid)); //var_dump($siteType);exit; $criteria = new CDbCriteria(); $criteria->condition = " dpid=" . $companyid . " and stlid=" . $stlid . " and splid=" . $splid . " and create_at >='" . date('Y-m-d', time()) . " 00:00:00' and create_at <='" . date('Y-m-d', time()) . " 23:59:59'"; $criteria->order = ' lid '; $queuePerson = QueuePersons::model()->findAll($criteria); if (empty($siteType)) { Yii::app()->end(json_encode(array('status' => false, 'msg' => '座位类型不存在!'))); } //var_dump($queuePerson);exit; if (!empty($queuePerson)) { $countsp = count($queuePerson); $queueno = $siteType->simplecode . substr("000" . (string) ($countsp + 1), -3); for ($sti = $countsp - 1; $sti >= 0; $sti--) { if ($queuePerson[$sti]->status == "0") { $waitingno++; } else { break; } } } else { $queueno = $siteType->simplecode . "001"; $waitingno = 0; } $se = new Sequence("queue_persons"); $queuelid = $se->nextval(); $data = array('lid' => $queuelid, 'dpid' => $companyid, 'create_at' => date('Y-m-d H:i:s', time()), 'update_at' => date('Y-m-d H:i:s', time()), 'stlid' => $stlid, 'splid' => $splid, 'queue_no' => $queueno, 'status' => '0', 'slid' => "0000000000", 'delete_flag' => '0'); Yii::app()->db->createCommand()->insert('nb_queue_persons', $data); $waitingno++; //返回现有的等待人数 $precode = ""; $printserver = "0"; // $memo = "排队号:" . $queueno . ",(还有" . $waitingno . "组在等待)"; $ret = Helper::printQueue($pad, $precode, $printserver, $memo); if ($ret['status']) { $ret['waitingnum'] = $waitingno; } } else { $ret = array('status' => false, 'msg' => '没有找到PAD'); } Yii::app()->end(json_encode($ret)); }
public function actionButton() { $sid = Yii::app()->request->getParam('sid', '0'); $status = Yii::app()->request->getParam('status', '0'); $istemp = Yii::app()->request->getParam('istemp', '0'); $typeId = Yii::app()->request->getParam('typeId', '0'); $queueno = ""; if ($typeId == "queue") { $criteria = new CDbCriteria(); $criteria->condition = 't.status=0 and t.dpid=' . $this->companyId . ' and t.stlid=' . $istemp . ' and t.splid=' . $sid . ' and t.create_at <="' . date('Y-m-d', time()) . ' 23:59:59" and t.create_at >= "' . date('Y-m-d', time()) . ' 00:00:00"'; $criteria->order = ' t.lid '; $queue = QueuePersons::model()->find($criteria); //var_dump($criteria);exit; if (!empty($queue)) { $queueno = $queue->queue_no; } } else { $criteria2 = new CDbCriteria(); $criteria2->condition = 't.status in ("1","2","3") and t.dpid=' . $this->companyId . ' and t.site_id=' . $sid . ' and t.is_temp=' . $istemp; $criteria2->order = ' t.lid desc '; $siteNo = SiteNo::model()->find($criteria2); if (empty($siteNo)) { $status = "0"; } else { $status = $siteNo->status; } } $model = array(); //var_dump($status);exit; $this->renderPartial('button', array('model' => $model, 'sid' => $sid, 'status' => $status, 'istemp' => $istemp, 'typeId' => $typeId, 'nexpersons' => $queueno)); }