diff --git a/crmeb/app/adminapi/controller/v1/order/RefundOrder.php b/crmeb/app/adminapi/controller/v1/order/RefundOrder.php index b5dce8d43..46ad1355c 100644 --- a/crmeb/app/adminapi/controller/v1/order/RefundOrder.php +++ b/crmeb/app/adminapi/controller/v1/order/RefundOrder.php @@ -87,7 +87,7 @@ class RefundOrder extends AuthController */ public function remark($id) { - [$remark] = $this->request->postMore([['remark', '']],true); + [$remark] = $this->request->postMore([['remark', '']], true); $this->services->updateRemark((int)$id, $remark); return app('json')->success(100024); @@ -177,10 +177,10 @@ class RefundOrder extends AuthController mt_srand(); $refund_data['refund_id'] = $order['order_id'] . rand(100, 999); } - ($order['pid'] > 0) ? $refund_data['order_id'] = $services->value(['id'=>(int)$order['pid']],'order_id') : $refund_data['order_id'] = $order['order_id']; + ($order['pid'] > 0) ? $refund_data['order_id'] = $services->value(['id' => (int)$order['pid']], 'order_id') : $refund_data['order_id'] = $order['order_id']; /** @var WechatUserServices $wechatUserServices */ $wechatUserServices = app()->make(WechatUserServices::class); - $refund_data['open_id'] = $wechatUserServices->uidToOpenid((int)$order['uid'],'routine') ?? ''; + $refund_data['open_id'] = $wechatUserServices->uidToOpenid((int)$order['uid'], 'routine') ?? ''; $refund_data['refund_no'] = $orderRefund['order_id']; //修改订单退款状态 unset($data['refund_price']); diff --git a/crmeb/app/api/controller/v1/PublicController.php b/crmeb/app/api/controller/v1/PublicController.php index 5b3a6bb68..f635b277e 100644 --- a/crmeb/app/api/controller/v1/PublicController.php +++ b/crmeb/app/api/controller/v1/PublicController.php @@ -300,6 +300,9 @@ class PublicController ['image', ''], ['code', ''], ], true); + if (!preg_match('/.*(\.png|\.jpg|\.jpeg|\.gif)$/', $imageUrl) || !preg_match('/.*(\.png|\.jpg|\.jpeg|\.gif)$/', $codeUrl)) { + return app('json')->fail(100100); + } try { $code = CacheService::get($codeUrl, function () use ($codeUrl) { $codeTmp = $code = $codeUrl ? image_to_base64($codeUrl) : false; diff --git a/crmeb/app/api/controller/v1/store/StoreProductController.php b/crmeb/app/api/controller/v1/store/StoreProductController.php index 63d9b3ff3..830155c2f 100644 --- a/crmeb/app/api/controller/v1/store/StoreProductController.php +++ b/crmeb/app/api/controller/v1/store/StoreProductController.php @@ -66,6 +66,10 @@ class StoreProductController } if ($where['ids'] && is_string($where['ids'])) { $where['ids'] = explode(',', $where['ids']); + foreach ($where['ids'] as $key => &$item) { + $where['ids'][$key] = (int)$item; + if ($where['ids'][$key] == 0) unset($where['ids'][$key]); + } } if (!$where['ids']) { unset($where['ids']); diff --git a/crmeb/app/dao/user/UserWechatUserDao.php b/crmeb/app/dao/user/UserWechatUserDao.php index a45db6d60..5e6d98e23 100644 --- a/crmeb/app/dao/user/UserWechatUserDao.php +++ b/crmeb/app/dao/user/UserWechatUserDao.php @@ -171,10 +171,15 @@ class UserWechatUserDao extends BaseDao } //用户标签 if (isset($where['label_id']) && $where['label_id']) { - $model = $model->where(function ($query) use ($where, $userAlias) { - $labelIds = explode(',', $where['label_id']); - foreach ($labelIds as $item) { - $query->whereFindInSet($userAlias . 'label_ids', $item); + $model = $model->whereIn($userAlias . 'uid', function ($query) use ($where) { + if (is_array($where['label_id'])) { + $query->name('user_label_relation')->whereIn('label_id', $where['label_id'])->field('uid')->select(); + } else { + if (strpos($where['label_id'], ',') !== false) { + $query->name('user_label_relation')->whereIn('label_id', explode(',', $where['label_id']))->field('uid')->select(); + } else { + $query->name('user_label_relation')->where('label_id', $where['label_id'])->field('uid')->select(); + } } }); } diff --git a/crmeb/app/services/order/StoreOrderDeliveryServices.php b/crmeb/app/services/order/StoreOrderDeliveryServices.php index 741ef3fa3..b8c668bcb 100644 --- a/crmeb/app/services/order/StoreOrderDeliveryServices.php +++ b/crmeb/app/services/order/StoreOrderDeliveryServices.php @@ -439,13 +439,9 @@ class StoreOrderDeliveryServices extends BaseServices switch ($type) { case 1://快递发货 $this->orderDeliverGoods($id, $data, $orderInfo, $storeName); - //用户推送消息事件 - event('notice.notice', [['orderInfo' => $orderInfo, 'storeName' => $storeName, 'data' => $data], 'order_postage_success']); break; case 2://配送 $this->orderDelivery($id, $data, $orderInfo, $storeName); - //用户推送消息事件 - event('notice.notice', [['orderInfo' => $orderInfo, 'storeName' => $storeName, 'data' => $data], 'order_deliver_success']); break; case 3://虚拟发货 $this->orderVirtualDelivery($id, $data, $orderInfo, $storeName); @@ -453,6 +449,8 @@ class StoreOrderDeliveryServices extends BaseServices default: throw new AdminException(400522); } + //用户推送消息事件 + event('notice.notice', [['orderInfo' => $orderInfo, 'storeName' => $storeName, 'data' => $data], 'order_deliver_success']); event('order.delivery', [$orderInfo, $storeName, $data, $type]); return true; } diff --git a/crmeb/app/services/order/StoreOrderRefundServices.php b/crmeb/app/services/order/StoreOrderRefundServices.php index da4fc69cc..d72e497ac 100644 --- a/crmeb/app/services/order/StoreOrderRefundServices.php +++ b/crmeb/app/services/order/StoreOrderRefundServices.php @@ -987,6 +987,12 @@ class StoreOrderRefundServices extends BaseServices $storeOrderCartInfoServices->clearOrderCartInfo($order['id']); //申请退款事件 event('order.orderRefundCreateAfter', [$order]); + //提醒推送 + event('notice.notice', [['order' => $order], 'send_order_apply_refund']); + try { + ChannelService::instance()->send('NEW_REFUND_ORDER', ['order_id' => $order['order_id']]); + } catch (\Exception $e) { + } return $res; } diff --git a/crmeb/app/services/product/sku/StoreProductAttrServices.php b/crmeb/app/services/product/sku/StoreProductAttrServices.php index d22c08550..4e2f662b6 100644 --- a/crmeb/app/services/product/sku/StoreProductAttrServices.php +++ b/crmeb/app/services/product/sku/StoreProductAttrServices.php @@ -63,7 +63,9 @@ class StoreProductAttrServices extends BaseServices $productVipPrice = min($detailTemp); } } - $storeProductService->update($id, ['vip_price' => $productVipPrice]); + if ($type == 0) { + $storeProductService->update($id, ['vip_price' => $productVipPrice]); + } } if ($is_virtual == 0 || $is_virtual == 2) { if ($is_virtual == 2 && in_array(0, array_column($data['valueGroup'], 'coupon_id'))) {