|
|
@@ -3,6 +3,7 @@
|
|
|
namespace bizMall\order\classes;
|
|
|
|
|
|
use common\components\business;
|
|
|
+use common\components\imgUtil;
|
|
|
use common\components\util;
|
|
|
use Yii;
|
|
|
use bizMall\base\classes\BaseClass;
|
|
|
@@ -100,19 +101,59 @@ class OrderGoodsClass extends BaseClass
|
|
|
}
|
|
|
|
|
|
//批量取订单 ssh 2020.1.2
|
|
|
+ /**
|
|
|
+ * 按订单号批量取花束明细,供订单列表组装 goodsInfoList
|
|
|
+ * @param array $sns 订单号列表
|
|
|
+ * @return array [orderSn => [goods...]]
|
|
|
+ */
|
|
|
public static function getGoodsListByOrderSns($sns)
|
|
|
{
|
|
|
+ $sns = array_values(array_filter(array_unique((array)$sns)));
|
|
|
+ if (empty($sns)) {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
$arr = self::getAllByCondition(['orderSn' => ['in', $sns]], null, '*');
|
|
|
if (empty($arr)) {
|
|
|
return [];
|
|
|
}
|
|
|
$data = [];
|
|
|
foreach ($arr as $info) {
|
|
|
- $orderSn = $info['orderSn'];
|
|
|
- $info = business::formatOrderGoodsCover($info);
|
|
|
+ $orderSn = $info['orderSn'] ?? '';
|
|
|
+ if ($orderSn === '' || $orderSn === null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ // 封面字段与花材明细、列表组件对齐(smallCoverUrl / cover / coverUrl)
|
|
|
+ $info = self::formatGoodsCover($info);
|
|
|
$data[$orderSn][] = $info;
|
|
|
}
|
|
|
return $data;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 处理花束订单明细封面,兼容列表与详情展示字段
|
|
|
+ * @param array $info 明细行
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ private static function formatGoodsCover($info)
|
|
|
+ {
|
|
|
+ $info = business::formatOrderGoodsCover($info);
|
|
|
+ $shortCover = !empty($info['cover']) ? $info['cover'] : (!empty($info['shortCover']) ? $info['shortCover'] : 'hhb_small.png');
|
|
|
+ // formatOrderGoodsCover 可能已把 coverUrl 填好,但 cover 仍是短路径;列表优先读 smallCoverUrl/cover
|
|
|
+ if (!empty($info['coverUrl'])) {
|
|
|
+ $info['shortCover'] = $shortCover;
|
|
|
+ $info['cover'] = $info['coverUrl'];
|
|
|
+ if (empty($info['smallCoverUrl'])) {
|
|
|
+ $info['smallCoverUrl'] = $info['coverUrl'] . "?x-oss-process=image/resize,m_fill,h_130,w_130";
|
|
|
+ }
|
|
|
+ $info['smallCover'] = $info['smallCoverUrl'];
|
|
|
+ return $info;
|
|
|
+ }
|
|
|
+ $info['shortCover'] = $shortCover;
|
|
|
+ $info['cover'] = imgUtil::groupImg($shortCover);
|
|
|
+ $info['smallCover'] = $info['cover'] . "?x-oss-process=image/resize,m_fill,h_130,w_130";
|
|
|
+ $info['coverUrl'] = $info['cover'];
|
|
|
+ $info['smallCoverUrl'] = $info['smallCover'];
|
|
|
+ return $info;
|
|
|
+ }
|
|
|
+
|
|
|
}
|