MqController.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace console\controllers;
  3. use bizGhs\book\classes\BookItemCustomClass;
  4. use bizHd\purchase\classes\PurchaseClass;
  5. use bizHd\shop\classes\ShopClass;
  6. use biz\wx\classes\WxMessageClass;
  7. use yii\console\Controller;
  8. use bizGhs\order\classes\OrderClass;
  9. use Yii;
  10. class MqController extends Controller
  11. {
  12. //预订变化下架花材 ssh 20240729
  13. public function actionBookChangeOutStock()
  14. {
  15. $noticeKey = "bookChangeOffItem";
  16. while ($count = Yii::$app->redis->executeCommand('LLEN', [$noticeKey])) {
  17. $json = Yii::$app->redis->executeCommand('RPOP', [$noticeKey]);
  18. if (!empty($json)) {
  19. $arr = json_decode($json, true);
  20. $id = $arr['id'] ?? 0;
  21. $num = $arr['num'] ?? 0;
  22. $shopId = $arr['shopId'] ?? 0;
  23. $res = BookItemCustomClass::getById($id, true);
  24. if (!empty($res)) {
  25. $shop = \biz\shop\classes\ShopClass::getById($shopId, true);
  26. WxMessageClass::bookChangeOutStockInform($shop, $res, $num);
  27. }
  28. }
  29. }
  30. }
  31. //花店采购通知供货商 ssh 20230805
  32. public function actionHdCgNoticeGhs()
  33. {
  34. $noticeKey = "hdCgNoticeGhs";
  35. while ($count = Yii::$app->redis->executeCommand('LLEN', [$noticeKey])) {
  36. $json = Yii::$app->redis->executeCommand('RPOP', [$noticeKey]);
  37. if (!empty($json)) {
  38. $arr = json_decode($json, true);
  39. $orderId = $arr['orderId'] ?? 0;
  40. if (!empty($orderId)) {
  41. $order = OrderClass::getById($orderId, true);
  42. $shopId = $order->shopId ?? 0;
  43. $shop = ShopClass::getById($shopId, true);
  44. if (!empty($shop)) {
  45. WxMessageClass::ghsHasNewOrderInform($shop, $order);
  46. }
  47. }
  48. }
  49. }
  50. }
  51. //供货商开单通知花店 ssh 20231129
  52. public function actionGhsKdNoticeHd()
  53. {
  54. $noticeKey = "ghsKdNoticeHd";
  55. while ($count = Yii::$app->redis->executeCommand('LLEN', [$noticeKey])) {
  56. $json = Yii::$app->redis->executeCommand('RPOP', [$noticeKey]);
  57. if (!empty($json)) {
  58. $arr = json_decode($json, true);
  59. $id = $arr['id'] ?? 0;
  60. if (!empty($id)) {
  61. $cg = PurchaseClass::getById($id, true);
  62. $shopId = $cg->shopId ?? 0;
  63. $shop = ShopClass::getById($shopId, true);
  64. if (!empty($shop)) {
  65. WxMessageClass::hdNewCgOrderInform($shop, $cg);
  66. }
  67. }
  68. }
  69. }
  70. }
  71. }