123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- <?php
- namespace backend\controllers;
- use backend\forms\MessageForm;
- use common\helpers\KeyHelper;
- use common\logic\Amqp\Cache;
- use components\Exception;
- use components\service\AmqpConfig;
- use Yii;
- class MessageController extends BaseController
- {
-
- public function actionQueryReceipt($query, $queue)
- {
- if (is_string($query) && is_string($query)) {
- $statusKey = KeyHelper::getMessageStatusKey($query, $queue);
- $resultKey = KeyHelper::getMessageResultKey($query, $queue);
- $status = Yii::$app->redis->get($statusKey);
- if ($status !== false) {
- $mark = AmqpConfig::getMarkById($status);
- if (Cache::STATUS_HAND_OK == $status) {
- return json_decode(Yii::$app->redis->get($resultKey), true);
- } else {
- throw new Exception(2101, $mark);
- }
- } else {
- throw new Exception(2102);
- }
- } else {
- throw new Exception(2102);
- }
- }
-
- public function actionSend()
- {
- $model = new MessageForm();
- $model->setScenario('send');
- $model->load(['MessageForm' => Yii::$app->request->get()]);
- $data = [];
- if ($model->validate()) {
- $data = $model->sendMessageV1_1();
- } else {
- $model->handleError();
- }
- return [
- 'code' => 200,
- 'message' => Yii::t('error', 200),
- 'data' => $data
- ];
- }
-
- public function actionBatchSend()
- {
- $model = new MessageForm();
- $model->setScenario('batch_send');
- $model->load(['MessageForm' => Yii::$app->request->get()]);
- $data = [];
- if ($model->validate()) {
- $data = $model->batchSendMessage();
- } else {
- $model->handleError();
- }
- return [
- 'code' => 200,
- 'message' => Yii::t('error', 200),
- 'data' => $data
- ];
- }
-
- public function actionList()
- {
- $model = new MessageForm();
- $model->setScenario('message_list');
- $model->load(['MessageForm' => Yii::$app->request->get()]);
- $data = [];
- if ($model->validate()) {
- $data = $model->getMessageList();
- } else {
- $model->handleError();
- }
- return [
- 'code' => 200,
- 'message' => Yii::t('error', 200),
- 'data' => $data
- ];
- }
-
- public function actionConsume()
- {
- $model = new MessageForm();
- $model->setScenario('consume');
- $model->load(['MessageForm' => Yii::$app->request->get()]);
- $data = [];
- if ($model->validate()) {
- $data = $model->consumeMessage();
- } else {
- $model->handleError();
- }
- return [
- 'code' => 200,
- 'message' => Yii::t('error', 200),
- 'data' => $data
- ];
- }
-
- public function actionDelete()
- {
- }
-
- public function actionPurge()
- {
- $model = new MessageForm();
- $model->setScenario('purge');
- $model->load(['MessageForm' => Yii::$app->request->get()]);
- $data = [];
- if ($model->validate()) {
- $data = $model->purge();
- } else {
- $model->handleError();
- }
- return [
- 'code' => 200,
- 'message' => Yii::t('error', 200),
- 'data' => $data
- ];
- }
- }
|