|
|
@@ -48,15 +48,19 @@ class ActivityLogic extends BaseLogic
|
|
|
}
|
|
|
}
|
|
|
$res['activity_info'] = $propertyActivity->toArray();
|
|
|
- array_multisort(array_column($res['activity_info']['block_data'], 'sort'), SORT_DESC, $res['activity_info']['block_data']);
|
|
|
- foreach ($res['activity_info']['block_data'] as &$v){
|
|
|
- array_multisort(array_column($v['goods'], 'recommend_weight'), SORT_DESC, $v['goods']);
|
|
|
- if(!empty($v['goods'])){
|
|
|
- foreach ($v['goods'] as &$item){
|
|
|
- $item['service_fee'] = $item['base_service_fee'];
|
|
|
+ if(in_array($res['activity_info']['url_page'],['adver','adver1','adver2'])){
|
|
|
+ array_multisort(array_column($res['activity_info']['block_data'], 'sort'), SORT_DESC, $res['activity_info']['block_data']);
|
|
|
+ foreach ($res['activity_info']['block_data'] as &$v){
|
|
|
+ array_multisort(array_column($v['goods'], 'recommend_weight'), SORT_DESC, $v['goods']);
|
|
|
+ if(!empty($v['goods'])){
|
|
|
+ foreach ($v['goods'] as &$item){
|
|
|
+ $item['service_fee'] = $item['base_service_fee'];
|
|
|
+ }
|
|
|
}
|
|
|
+ $v['goods'] = self::groupArrays($v['goods']);
|
|
|
}
|
|
|
- $v['goods'] = self::groupArrays($v['goods']);
|
|
|
+ }else{
|
|
|
+ $res['block_data_structure'] = self::blockDataStructure($res['activity_info']['url_page'],$res['activity_info']['block_data']);
|
|
|
}
|
|
|
$res['coupons'] = CouponRules::with(['couponCategoryOne'])->where('property_activity_id',$params['property_activity_id'])
|
|
|
->select()
|
|
|
@@ -79,7 +83,28 @@ class ActivityLogic extends BaseLogic
|
|
|
throw new \Exception($e->getMessage());
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ public static function blockDataStructure(string $url_page,array $data): array {
|
|
|
+ if (empty($data)) return [];
|
|
|
+ array_multisort(array_column($data, 'sort'), SORT_DESC, $data);
|
|
|
+ foreach ($data as &$v){
|
|
|
+ array_multisort(array_column($v['goods'], 'recommend_weight'), SORT_DESC, $v['goods']);
|
|
|
+ // 临时改价 11-28
|
|
|
+ if(!empty($v['goods'])){
|
|
|
+ foreach ($v['goods'] as &$item){
|
|
|
+ $item['service_fee'] = $item['base_service_fee'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 不同模板 - 板块内商品数据结构不同
|
|
|
+ switch ($url_page){
|
|
|
+ case 'adver5':
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ $v['goods'] = self::groupArrays($v['goods']);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
public static function groupArrays($array) {
|
|
|
$result = []; $groupSize = 2;
|
|
|
$totalElements = count($array);
|