|
@@ -37,9 +37,9 @@ class Page extends BaseModel
|
|
|
public function getPageDataAttr(string $json): array
|
|
public function getPageDataAttr(string $json): array
|
|
|
{
|
|
{
|
|
|
// 数据转义
|
|
// 数据转义
|
|
|
- $array = helper::jsonDecode(htmlspecialchars_decode($json));
|
|
|
|
|
|
|
+ $array = helper::jsonDecode(\htmlspecialchars_decode($json));
|
|
|
// 合并默认数据
|
|
// 合并默认数据
|
|
|
- return $this->_mergeDefaultData($array);
|
|
|
|
|
|
|
+ return $this->mergeDefaultData($array);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -72,7 +72,7 @@ class Page extends BaseModel
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 页面diy元素默认数据
|
|
|
|
|
|
|
+ * 店铺页面元素默认数据
|
|
|
* @return array
|
|
* @return array
|
|
|
*/
|
|
*/
|
|
|
public function getDefaultItems(): array
|
|
public function getDefaultItems(): array
|
|
@@ -100,12 +100,16 @@ class Page extends BaseModel
|
|
|
]
|
|
]
|
|
|
],
|
|
],
|
|
|
'banner' => [
|
|
'banner' => [
|
|
|
- 'name' => '图片轮播',
|
|
|
|
|
|
|
+ 'name' => '轮播图',
|
|
|
'type' => 'banner',
|
|
'type' => 'banner',
|
|
|
'style' => [
|
|
'style' => [
|
|
|
- 'btnColor' => '#ffffff',
|
|
|
|
|
- 'btnShape' => 'round',
|
|
|
|
|
- 'interval' => 2.5
|
|
|
|
|
|
|
+ 'paddingTop' => 0,
|
|
|
|
|
+ 'paddingLeft' => 0,
|
|
|
|
|
+ 'background' => '#ffffff',
|
|
|
|
|
+ 'btnShape' => 'round', // 指示点形状
|
|
|
|
|
+ 'btnColor' => '#ffffff', // 指示点颜色
|
|
|
|
|
+ 'interval' => 3, // 切换时间
|
|
|
|
|
+ 'borderRadius' => 0, // 圆角尺寸
|
|
|
],
|
|
],
|
|
|
'data' => [
|
|
'data' => [
|
|
|
[
|
|
[
|
|
@@ -121,12 +125,14 @@ class Page extends BaseModel
|
|
|
]
|
|
]
|
|
|
],
|
|
],
|
|
|
'image' => [
|
|
'image' => [
|
|
|
- 'name' => '图片',
|
|
|
|
|
|
|
+ 'name' => '图片组',
|
|
|
'type' => 'image',
|
|
'type' => 'image',
|
|
|
'style' => [
|
|
'style' => [
|
|
|
'paddingTop' => 0,
|
|
'paddingTop' => 0,
|
|
|
'paddingLeft' => 0,
|
|
'paddingLeft' => 0,
|
|
|
- 'background' => '#ffffff'
|
|
|
|
|
|
|
+ 'background' => '#ffffff',
|
|
|
|
|
+ 'borderRadius' => 0, // 圆角尺寸
|
|
|
|
|
+ 'itemMargin' => 0, // 图片间距
|
|
|
],
|
|
],
|
|
|
'data' => [
|
|
'data' => [
|
|
|
[
|
|
[
|
|
@@ -298,12 +304,13 @@ class Page extends BaseModel
|
|
|
'dataNum' => 4
|
|
'dataNum' => 4
|
|
|
],
|
|
],
|
|
|
'hotZone' => [
|
|
'hotZone' => [
|
|
|
- 'name' => '热区',
|
|
|
|
|
|
|
+ 'name' => '热区组',
|
|
|
'type' => 'hotZone',
|
|
'type' => 'hotZone',
|
|
|
'style' => [
|
|
'style' => [
|
|
|
'paddingTop' => 0,
|
|
'paddingTop' => 0,
|
|
|
'paddingLeft' => 0,
|
|
'paddingLeft' => 0,
|
|
|
- 'background' => '#ffffff'
|
|
|
|
|
|
|
+ 'background' => '#ffffff',
|
|
|
|
|
+ 'borderRadius' => 0, // 圆角尺寸
|
|
|
],
|
|
],
|
|
|
'data' => [
|
|
'data' => [
|
|
|
'imgUrl' => base_url() . 'assets/store/img/diy/banner/01.png',
|
|
'imgUrl' => base_url() . 'assets/store/img/diy/banner/01.png',
|
|
@@ -426,7 +433,7 @@ class Page extends BaseModel
|
|
|
'style' => []
|
|
'style' => []
|
|
|
],
|
|
],
|
|
|
'coupon' => [
|
|
'coupon' => [
|
|
|
- 'name' => '优惠券组',
|
|
|
|
|
|
|
+ 'name' => '优惠券',
|
|
|
'type' => 'coupon',
|
|
'type' => 'coupon',
|
|
|
'style' => [
|
|
'style' => [
|
|
|
'paddingTop' => 10,
|
|
'paddingTop' => 10,
|
|
@@ -536,7 +543,7 @@ class Page extends BaseModel
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * diy页面详情
|
|
|
|
|
|
|
+ * 获取指定的页面详情
|
|
|
* @param int $pageId
|
|
* @param int $pageId
|
|
|
* @return static|array|null
|
|
* @return static|array|null
|
|
|
*/
|
|
*/
|
|
@@ -546,7 +553,7 @@ class Page extends BaseModel
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * diy页面详情
|
|
|
|
|
|
|
+ * 获取首页页面详情
|
|
|
* @return static|array|null
|
|
* @return static|array|null
|
|
|
*/
|
|
*/
|
|
|
public static function getHomePage()
|
|
public static function getHomePage()
|
|
@@ -556,16 +563,16 @@ class Page extends BaseModel
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 合并默认数据
|
|
* 合并默认数据
|
|
|
- * @param $array
|
|
|
|
|
- * @return mixed
|
|
|
|
|
|
|
+ * @param array $array
|
|
|
|
|
+ * @return array
|
|
|
*/
|
|
*/
|
|
|
- private function _mergeDefaultData($array)
|
|
|
|
|
|
|
+ private function mergeDefaultData(array $array): array
|
|
|
{
|
|
{
|
|
|
$array['page'] = \resetOptions($this->getDefaultPage(), $array['page']);
|
|
$array['page'] = \resetOptions($this->getDefaultPage(), $array['page']);
|
|
|
$defaultItems = $this->getDefaultItems();
|
|
$defaultItems = $this->getDefaultItems();
|
|
|
foreach ($array['items'] as &$item) {
|
|
foreach ($array['items'] as &$item) {
|
|
|
if (isset($defaultItems[$item['type']])) {
|
|
if (isset($defaultItems[$item['type']])) {
|
|
|
- array_key_exists('data', $item) && $defaultItems[$item['type']]['data'] = [];
|
|
|
|
|
|
|
+ \array_key_exists('data', $item) && $defaultItems[$item['type']]['data'] = [];
|
|
|
$item = \resetOptions($defaultItems[$item['type']], $item);
|
|
$item = \resetOptions($defaultItems[$item['type']], $item);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|