From 930c326fe4ba4831ea0923b5846a89d7964a4068 Mon Sep 17 00:00:00 2001
From: Mr.Zhang <710666463@qq.com>
Date: 星期三, 18 十月 2023 16:08:08 +0800
Subject: [PATCH] 企业端

---
 company_admin/src/views/business/pageConfiguration.vue | 1938 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 1,758 insertions(+), 180 deletions(-)

diff --git a/company_admin/src/views/business/pageConfiguration.vue b/company_admin/src/views/business/pageConfiguration.vue
index 9320c01..62a851f 100644
--- a/company_admin/src/views/business/pageConfiguration.vue
+++ b/company_admin/src/views/business/pageConfiguration.vue
@@ -1,209 +1,1787 @@
 <template>
-    <div class="pz">
-        <div class="pz_head">鍩烘湰淇℃伅</div>
-        <div class="pz_item">
-            <div class="pz_item_label">鍐呭鑼冨洿灏哄锛�</div>
-            <div class="pz_item_ipt">
-                <el-input v-model="from.rangeSize" type="number" style="width: 200px;" placeholder="鏀寔750px-1000px"></el-input>
-                <span style="margin-left: 15px;">px</span>
+  <div class="pz">
+    <div class="prediv">
+      <div class="option">
+        <div class="pz_head">椤甸潰棰勮</div>
+        <el-tabs v-model="type">
+          <el-tab-pane label="涓荤晫闈�" name="0"></el-tab-pane>
+          <el-tab-pane label="PK鏁堟灉" name="1"></el-tab-pane>
+          <el-tab-pane label="鎼滅储鏁堟灉" name="2"></el-tab-pane>
+        </el-tabs>
+      </div>
+
+      <div class="prediv-content">
+        <div class="content" :style="contentStyle">
+          <img :src="form.topImg.type ? form.topImg.imgurl : defaultBanner" alt="">
+          <template v-if="type != 1">
+            <div>
+              <div class="commodityFrom_head" :style="tableHeaderStyle">
+                <div class="commodityFrom_head_item" @mouseenter="mouseenter" @mouseleave="mouseleave">绫诲埆</div>
+                <div class="commodityFrom_head_item" @mouseenter="mouseenter" @mouseleave="mouseleave">鍝佺墝</div>
+                <div class="commodityFrom_head_item" @mouseenter="mouseenter" @mouseleave="mouseleave">鍨嬪彿</div>
+                <div class="commodityFrom_head_item" @mouseenter="mouseenter" @mouseleave="mouseleave">鎸囧浠�</div>
+                <div class="commodityFrom_head_item" @mouseenter="mouseenter" @mouseleave="mouseleave">鍏ユ墜浠�</div>
+              </div>
+              <div class="commodityFrom_body" :style="tableBodyStyle">
+                <div class="commodityFrom_body_content">
+                  <div class="commodityFrom_body_content_item" v-for="(item, index) in shopList" :key="index">
+                    <div class="commodityFrom_body_content_item_num">
+                      <div class="commodityFrom_body_content_item_num_img">
+                        <img :src="item.categoryImgurl" mode="widthFix" />
+                      </div>
+                      <span>{{ item.categoryName }}</span>
+                    </div>
+                    <div class="commodityFrom_body_content_item_num" @mouseenter.stop="item.ppShow = true"
+                      @mouseleave.stop="item.ppShow = false">
+                      <span>{{ item.brandName }}</span>
+                      <div class="drop-down"
+                        :style="{ opacity: item.ppShow ? '1' : '0', zIndex: item.ppShow ? '999' : '-1', ...pullStyle }">
+                        <div class="drop-down-item" v-for="(child, i) in item.ppData" :key="i"
+                          @click.stop="clickBrand(item, child)">
+                          <span class="item-value" :style="child == item.brandName ? selStyle : ''">{{ child }}</span>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="commodityFrom_body_content_item_num" @mouseenter.stop="item.xhShow = true"
+                      @mouseleave.stop="item.xhShow = false">
+                      <span>{{ item.name }}</span>
+                      <div class="drop-down"
+                        :style="{ opacity: item.xhShow ? '1' : '0', zIndex: item.xhShow ? '999' : '-1', ...pullStyle }">
+                        <div class="drop-down-item" v-for="(data, s) in item.xhData" :key="s"
+                          @click.stop="clickXH(item, data)">
+                          <!-- {{ stringOperations(data.name, 7)}} -->
+                          <span class="item-value" :style="data == item.name ? selStyle : ''">{{ data }}</span>
+                        </div>
+                      </div>
+                    </div>
+                    <div class="commodityFrom_body_content_item_num">
+                      <span>{{ item.zdPrice }}</span>
+                    </div>
+                    <div class="commodityFrom_body_content_item_num">
+                      <span>{{ item.price }}</span>
+                    </div>
+                    <div class="commodityFrom_body_content_item_tips">
+                      <image src="@/assets/images/ic_img@2x.png" mode="widthFix"></image>
+                      <image src="@/assets/images/ic_copy@2x.png" mode="widthFix"></image>
+                      <image src="@/assets/images/ic_delete@2x.png" mode="widthFix"></image>
+                    </div>
+                  </div>
+                </div>
+                <div class="commodityFrom_body_total">
+                  <div class="commodityFrom_body_total_item" :style="tableHeaderStyle">鎬昏锛�</div>
+                  <div class="commodityFrom_body_total_item" :style="tableHeaderStyle">
+                    18999
+                  </div>
+                  <div class="commodityFrom_body_total_item" :style="tableHeaderStyle">
+                    898999
+                  </div>
+                </div>
+              </div>
             </div>
-        </div>
-        <div class="pz_item">
-            <div class="pz_item_label">涓昏壊鑹插�硷細</div>
-            <div class="pz_item_ipt">
-                <el-color-picker v-model="from.mainColor"></el-color-picker>
+            <div class="productCategory">
+              <div class="productCategory_list" :style="categoryStyle">
+                <div class="productCategory_list_item" v-for="(item, index) in category" :key="index"
+                  @click="clickItem(index, item.id, item.name)">
+                  <img :src="item.img" mode="widthFix" />
+                  <span>{{ item.name }}</span>
+                </div>
+                <div class="productCategory_list_zw"></div>
+                <div class="productCategory_list_zw"></div>
+                <div class="productCategory_list_zw"></div>
+                <div class="productCategory_list_zw"></div>
+                <div class="productCategory_list_zw"></div>
+              </div>
             </div>
-        </div>
-        <div class="pz_item">
-            <div class="pz_item_label">鑳屾櫙鍥撅細</div>
-            <div class="pz_item_ipt">
-                <UploadAvatarImage
-                    :file="{ 'imgurlfull': from.bgImgUrl, 'imgurl': from.bgImg }"
-                    :uploadData="{ folder: 'web_param' }"
-                    tipsLabel=""
-                    @uploadSuccess="uploadReverseSuccess"
-                />
+          </template>
+          <div class="productPage" v-if="type == 1">
+            <div class="productPage_head">
+              <div class="productPage_head_item">
+                <span>灞炴��1</span>
+                <img src="@/assets/images/ar_open@2x.png" mode="widthFix">
+                <!-- <div class="productPage_xl" v-if="attrFirstList.length > 0">
+                  <div class="productPage_xl_iten" v-for="(item, index) in attrFirstList" :key="index"
+                    @click="clickShopPageCheck(item, 1)">
+                    <text>{{ item.name }}</text>
+                  </div>
+                </div> -->
+              </div>
+              <div class="productPage_head_item">
+                <span>灞炴��2</span>
+                <img src="@/assets/images/ar_open@2x.png" mode="widthFix">
+                <!-- <div class="productPage_xl" v-if="attrSecondList.length > 0">
+                  <div class="productPage_xl_iten" v-for="(item, index) in attrSecondList" :key="index"
+                    @click="clickShopPageCheck(item, 2)">
+                    <text>{{ item.name }}</text>
+                  </div>
+                </div> -->
+              </div>
+              <div class="productPage_head_item">
+                <span>棰勭畻</span>
+                <img src="@/assets/images/ar_open@2x.png" mode="widthFix">
+                <!-- <div class="productPage_xl" v-if="budgetList.length > 0">
+                  <div class="productPage_xl_iten" v-for="(item, index) in budgetList" :key="index"
+                    @click="clickShopPageCheck(item, 3)">
+                    <template v-if="!item.name">
+                      <text>{{ item.minamount }}~{{ item.maxamount }}</text>
+                    </template>
+                    <template v-else>
+                      <text>{{ item.name }}</text>
+                    </template>
+                  </div>
+                </div> -->
+              </div>
+              <div class="productPage_head_item">
+                <span>鍝佺墝</span>
+                <img src="@/assets/images/ar_open@2x.png" mode="widthFix">
+                <!-- <div class="productPage_xl" v-if="brandData1.length > 0">
+                  <div class="productPage_xl_iten" v-for="(item, index) in brandData1" :key="index"
+                    @click="clickShopPageCheck(item, 4)">
+                    <text>{{ item.name }}</text>
+                  </div>
+                </div> -->
+              </div>
             </div>
-        </div>
-        <div class="pz_item">
-            <div class="pz_item_label">椤堕儴瀹d紶鍥撅細</div>
-            <div class="pz_item_ipt">
-                <UploadAvatarImage
-                    :file="{ 'imgurlfull': from.topImgUrl, 'imgurl': from.topImg }"
-                    :uploadData="{ folder: 'web_param' }"
-                    tipsLabel=""
-                    @uploadSuccess="uploadReverseSuccess1"
-                />
+            <div class="productPage_pk">
+              <div class="productPage_pk_shop">
+
+                <div class="productPage_pk_shop_sp1">
+                  <div class="productPage_pk_shop_sp1_img">
+                    <img src="@/assets/images/Samsung@2x.png" mode="widthFix">
+                  </div>
+                  <span>涓夋槦323娲楃儤</span>
+                </div>
+                <div class="productPage_pk_shop_t">
+                  <img v-if="form.pkImg.type==0" src="@/assets/images/pk_defult.png" alt="">
+                  <img v-else :src="form.pkImg.imgurl" alt="">
+                </div>
+              </div>
+              <div class="productPage_pk_z">
+                <img src="@/assets/images/ic_pk@2x.png" mode="widthFix">
+              </div>
+              <div class="productPage_pk_shop">
+
+                <div class="productPage_pk_shop_sp1">
+                  <div class="productPage_pk_shop_sp1_img">
+                    <img src="@/assets/images/Galanz@2x.png" mode="widthFix">
+                  </div>
+                  <span>鏍煎叞浠�434娲楃儤</span>
+                </div>
+                <div class="productPage_pk_shop_t">
+                  <img v-if="form.pkImg.type==0" src="@/assets/images/pk_defult.png" alt="">
+                  <img v-else :src="form.pkImg.imgurl" alt="">
+                </div>
+              </div>
             </div>
+            <div class="productPage_parameter">
+						<div class="productPage_parameter_item" v-for="(item, index) in [leftShop, rightShop]" :key="index">
+							<div class="productPage_parameter_item_head">
+								<span>{{item.name}}</span>
+							</div>
+							<div class="productPage_parameter_item_content">
+								<div class="productPage_parameter_item_content_price">
+									<div class="zdj">
+										<span>鎸囧浠凤細</span>
+										<span>楼{{item.zdPrice}}</span>
+									</div>
+									<div class="rsj">
+										<span>寤鸿鍏ユ墜浠凤細</span>
+										<span>楼{{item.price}}</span>
+									</div>
+								</div>
+								<div class="productPage_parameter_item_content_nr">
+									<div class="item" v-if="item.param1"  v-for="(child, i) in item.param1" :key="child.index">
+										<div class="label">{{child.name}}锛�</div>
+										<div class="value">{{child.val}}</div>
+									</div>
+									<div v-if="item.param2.length>0" class="paramline"></div>
+									<div class="item" v-if="item.param2" v-for="(child, j) in item.param2" :key="child.index">
+										<div class="label">{{child.name}}锛�</div>
+										<div class="value">{{child.val}}</div>
+									</div>
+								</div>
+							</div>
+						</div>
+					</div>
+          </div>
+
         </div>
-        <div class="pz_item">
-            <div class="pz_item_label">PK鍙板浘锛�</div>
-            <div class="pz_item_ipt">
-                <UploadAvatarImage
-                    :file="{ 'imgurlfull': from.pkImgUrl, 'imgurl': from.pkImg }"
-                    :uploadData="{ folder: 'web_param' }"
-                    tipsLabel=""
-                    @uploadSuccess="uploadReverseSuccess2"
-                />
+      </div>
+      <div class="search" v-if="type == 2">
+        <div class="search_box">
+          <div class="search_box_item" :style="searchStyle">
+            <div class="icon">
+              <img src="@/assets/images/ic_search@2x.png" mode="widthFix" />
             </div>
+            <div class="search_box_item_right">
+              娴峰皵鍐扮
+            </div>
+          </div>
+          <div class="search_box_item_xl" :style="searchStyle">
+            <div class="search_box_item_xl_item" v-for="(item, i) in searchData" :key="i">
+              <div class="search_box_item_xl_item_name">{{ item.name }}</div><span v-if="item.price">锟{ item.price
+              }}</span>
+            </div>
+          </div>
         </div>
-        <div class="pz_footer">
-            <el-button type="primary" @click="submit">淇濆瓨</el-button>
-            <el-button>杩斿洖</el-button>
-        </div>
+      </div>
+
     </div>
+    <div class="setting">
+      <div class="pz_head">淇℃伅</div>
+      <el-form ref="form" :model="form" label-width="130px" label-suffix="锛�">
+        <el-form-item label="鍐呭鑼冨洿灏哄" props="rangeSize">
+          <el-input v-model="form.rangeSize" type="number" style="width: 200px;" placeholder="鏀寔750px-1200px"></el-input>
+          <span style="margin-left: 15px;">px</span>
+          <span style="margin-left: 15px; color: #666;">鏀寔750px-1200px</span>
+        </el-form-item>
+        <el-form-item label="鑳屾櫙棰滆壊">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.main.bgType" @change="selectBackground">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.main.bgType == 1">
+              <el-color-picker v-model="form.main.bgColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.main.alpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+        <el-form-item label="鑳屾櫙鍥剧墖">
+          <el-radio-group v-model="form.bgImg.isShow">
+            <el-radio :label="0">闅愯棌</el-radio>
+            <el-radio :label="1">鏄剧ず</el-radio>
+          </el-radio-group>
+
+          <div v-if="form.bgImg.isShow == 1">
+            <el-radio-group v-model="form.bgImg.type">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <div v-if="form.bgImg.type == 0" style="width: 100px; height: 100px; border: 1px solid #ccc;">
+              <el-image style="width: 100px; height: 100px" :src="require('@/assets/images/background_defult.png')"
+                fit="contain" :prediv-src-list="[require('@/assets/images/background_defult.png')]">
+              </el-image>
+            </div>
+            <div v-else class="img-select-item">
+              <div style="width: 100px; height: 100px; border: 1px solid #ccc;">
+                <el-image v-if="form.bgImg.bgImgUrl" style="width: 100px; height: 100px" :src="form.bgImg.bgImgUrl"
+                  fit="contain" :prediv-src-list="[form.bgImg.bgImgUrl]">
+                </el-image>
+              </div>
+              <div class="upload">
+                <div><el-button icon="el-icon-plus" @click="$refs.upBackground.click()">涓婁紶鑳屾櫙</el-button></div>
+                <span
+                  style="color: #999; font-size: 13px; line-height: 18px;">寤鸿灏哄锛�750px*1600px锛屽叾涓富瑕佸睍绀哄尯鍩熼珮搴︿负1008px锛屽ぇ灏忎笉瓒呰繃1M</span>
+                <input type="file" @change="upbgImgUrl" ref="upBackground" style="display: none;" />
+              </div>
+            </div>
+          </div>
+        </el-form-item>
+
+        <el-form-item label="椤堕儴鍥剧墖">
+          <el-radio-group v-model="form.topImg.type">
+            <el-radio :label="0">榛樿</el-radio>
+            <el-radio :label="1">鑷畾涔�</el-radio>
+          </el-radio-group>
+          <div v-if="form.topImg.type == 0" style="width: 100px; height: 100px; border: 1px solid #ccc;">
+            <el-image style="width: 100px; height: 100px" :src="require('@/assets/images/banner_defult.png')"
+              fit="contain" :prediv-src-list="[require('@/assets/images/banner_defult.png')]">
+            </el-image>
+          </div>
+          <div v-else class="img-select-item">
+            <div style="width: 100px; height: 100px; border: 1px solid #ccc;">
+              <el-image v-if="form.topImg.imgurl" style="width: 100px; height: 100px" :src="form.topImg.imgurl"
+                fit="contain" :prediv-src-list="[form.topImg.imgurl]">
+              </el-image>
+            </div>
+            <div class="upload">
+              <div><el-button icon="el-icon-plus" @click="$refs.upTop.click()">涓婁紶鍥剧墖</el-button></div>
+              <span style="color: #999; font-size: 13px; line-height: 18px;">寤鸿灏哄700px*300px锛屽ぇ灏忎笉瓒呰繃1M</span>
+              <input type="file" @change="upTopImgUrl" ref="upTop" style="display: none;" />
+            </div>
+          </div>
+        </el-form-item>
+
+        <el-form-item label="PK鍙板浘鐗�">
+          <el-radio-group v-model="form.pkImg.type">
+            <el-radio :label="0">榛樿</el-radio>
+            <el-radio :label="1">鑷畾涔�</el-radio>
+          </el-radio-group>
+          <div v-if="form.pkImg.type == 0" style="width: 100px; height: 100px; border: 1px solid #ccc;">
+            <el-image style="width: 100px; height: 100px" :src="require('@/assets/images/pk_defult.png')" fit="contain"
+              :prediv-src-list="[require('@/assets/images/pk_defult.png')]">
+            </el-image>
+          </div>
+          <div v-else class="img-select-item">
+            <div style="width: 100px; height: 100px; border: 1px solid #ccc;">
+              <el-image v-if="form.pkImg.imgurl" style="width: 100px; height: 100px" :src="form.pkImg.imgurl"
+                fit="contain" :prediv-src-list="[form.pkImg.imgurl]">
+              </el-image>
+            </div>
+            <div class="upload">
+              <div><el-button icon="el-icon-plus" @click="$refs.upPk.click()">涓婁紶鍥剧墖</el-button></div>
+              <span style="color: #999; font-size: 13px; line-height: 18px;">鍙兘涓婁紶鍥剧墖鏍煎紡锛屽缓璁昂瀵�254*76px</span>
+              <input type="file" @change="upPkImgUrl" ref="upPk" style="display: none;" />
+            </div>
+          </div>
+        </el-form-item>
+        <el-form-item label="琛ㄥご鑳屾櫙棰滆壊" props="headerBackgroundType">
+          <el-radio-group v-model="form.header.backgroundType" @change="selectHeaderBg">
+            <el-radio :label="0">榛樿</el-radio>
+            <el-radio :label="1">鑷畾涔夊崟鑹�</el-radio>
+            <el-radio :label="2">鑷畾涔夋笎鍙樿壊</el-radio>
+          </el-radio-group>
+          <div class="color-select-item" v-if="form.header.backgroundType == 1">
+            <el-color-picker v-model="form.header.bgColor" size="mini"
+              style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+            涓嶉�忔槑搴︼細<el-input v-model="form.header.bgAlpha" type="number" style="width: 100px;"></el-input> %
+          </div>
+          <div v-if="form.header.backgroundType == 2">
+            <div class="color-select-item">
+              寮�濮嬭壊鍊硷細<el-color-picker v-model="form.header.bgColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.header.bgAlpha" type="number" style="width: 100px;"></el-input> %
+            </div>
+            <div class="color-select-item">
+              缁撴潫鑹插�硷細<el-color-picker v-model="form.header.bgColor2" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.header.bgAlpha2" type="number" style="width: 100px;"></el-input> %
+            </div>
+          </div>
+        </el-form-item>
+        <el-form-item label="琛ㄥご瀛椾綋棰滆壊">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.header.type" @change="selectHeader">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.header.type == 1">
+              <el-color-picker v-model="form.header.color" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.header.alpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+        <el-form-item label="閫変腑瀛椾綋棰滆壊">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.pull.selType" @change="selectHeader">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.pull.selType == 1">
+              <el-color-picker v-model="form.pull.selColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.pull.selAlpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+        <el-form-item label="涓嬫媺妗嗚儗鏅鑹�">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.pull.bgType" @change="selectHeader">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.pull.bgType == 1">
+              <el-color-picker v-model="form.pull.bgColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.pull.bgAlpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+        <el-form-item label="鍒嗙被鑳屾櫙棰滆壊">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.category.bgType" @change="selectHeader">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.category.bgType == 1">
+              <el-color-picker v-model="form.category.bgColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.category.bgAlpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+        <el-form-item label="鎼滅储妗嗚儗鏅鑹�">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.search.bgType" @change="selectHeader">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.search.bgType == 1">
+              <el-color-picker v-model="form.search.bgColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.search.bgAlpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+        <el-form-item label="鍒楄〃鑳屾櫙棰滆壊">
+          <div class="color-select-item">
+            <el-radio-group v-model="form.list.bgType" @change="selectHeader">
+              <el-radio :label="0">榛樿</el-radio>
+              <el-radio :label="1">鑷畾涔�</el-radio>
+            </el-radio-group>
+            <template v-if="form.list.bgType == 1">
+              <el-color-picker v-model="form.list.bgColor" size="mini"
+                style="margin-right: 10px; margin-left: 10px;"></el-color-picker>
+              涓嶉�忔槑搴︼細<el-input v-model="form.list.bgAlpha" type="number" style="width: 100px;"></el-input> %
+            </template>
+          </div>
+        </el-form-item>
+      </el-form>
+      <div class="pz_footer">
+        <el-button type="primary" @click="submit">淇濆瓨</el-button>
+      </div>
+    </div>
+
+
+
+
+
+  </div>
 </template>
     
 <script>
-import { getByLogin, renew } from '@/api/business/page.js'
+import { getByLoginNew, renewUpdate } from '@/api/business/page.js'
 import UploadAvatarImage from '@/components/common/UploadAvatarImage.vue'
-
+import { upload } from '@/api/system/common'
 export default {
-    data() {
-        return {
-            action: process.env.VUE_APP_API_PREFIX + '/public/upload',
-            from: {
-                rangeSize: '',
-                mainColor: '',
-                bgImg: '',
-                bgImgUrl: '',
-                topImg: '',
-                topImgUrl: '',
-                pkImg: '',
-                pkImgUrl: ''
-            }
+  components: { UploadAvatarImage },
+  data() {
+    return {
+      isUploading: false,
+      type: '0', // 0銆佷富鐣岄潰 1銆丳K鏁堟灉 2銆佹悳绱㈡晥鏋�
+      shopList: [
+        { categoryImgurl: '', categoryName: '娲楄。鏈�', brandName: '娴峰皵', ppShow: false, ppData: ['CLOMO', '娴峰皵', '鏍煎叞浠�', '涓夋槦'], name: 'EG100MATE35S', xhShow: false, xhData: ['EG100MATE35S', 'DG100MATE35S', 'FG100MATE35S'], zdPrice: '1899', price: '1899' },
+        { categoryImgurl: '', categoryName: '娲楄。鏈�', brandName: '娴峰皵', ppShow: false, ppData: ['CLOMO', '娴峰皵', '鏍煎叞浠�', '涓夋槦'], name: 'EG100MATE35S', xhShow: false, xhData: ['EG100MATE35S', 'DG100MATE35S', 'FG100MATE35S'], zdPrice: '1899', price: '1899' },
+        { categoryImgurl: '', categoryName: '娲楄。鏈�', brandName: '娴峰皵', ppShow: false, ppData: ['CLOMO', '娴峰皵', '鏍煎叞浠�', '涓夋槦'], name: 'EG100MATE35S', xhShow: false, xhData: ['EG100MATE35S', 'DG100MATE35S', 'FG100MATE35S'], zdPrice: '1899', price: '1899' },
+      ],
+      searchData: [
+        { name: '鍐扮 娴峰皵EG100MATE35S', price: '3' },
+        { name: '鍐扮 娴峰皵EG100MATE35S', price: '3' },
+        { name: '鍐扮 娴峰皵EG100MATE35S', price: '3' },
+        { name: '鍐扮 娴峰皵EG100MATE35S', price: '3' },
+        { name: '鍐扮 娴峰皵EG100MATE35S', price: '3' },
+      ],
+      category: [
+        { img: require('@/assets/images/category/ic_bingxiang@2x.png'), name: '鍐扮' },
+        { img: require('@/assets/images/category/ic_xiyiji @2x.png'), name: '娲楄。鏈�' },
+        { img: require('@/assets/images/category/ic_kongtiao@2x.png'), name: '绌鸿皟' },
+        { img: require('@/assets/images/category/ic_dianshi@2x.png'), name: '鐢佃' },
+        { img: require('@/assets/images/category/ic_reshuiqi@2x.png'), name: '鐑按鍣�' },
+        { img: require('@/assets/images/category/ic_yanzao@2x.png'), name: '鐑熺伓' },
+        { img: require('@/assets/images/category/ic_kaoxiang@2x.png'), name: '钂哥儰绠�' },
+        { img: require('@/assets/images/category/ic_xiwanji@2x.png'), name: '娲楃鏈�' },
+        { img: require('@/assets/images/category/ic_jinshui@2x.png'), name: '鍑�姘村櫒' },
+        { img: require('@/assets/images/category/ic_qita@2x.png'), name: '鍏朵粬' },
+      ],
+      action: process.env.VUE_APP_API_PREFIX + '/public/upload',
+      defaultBanner: require('@/assets/images/banner_defult.png'),
+      leftShop: {
+        name: '涓夋槦323娲楃儤',
+        zdPrice: '3999',
+        price: '3499',
+        param1: [
+          { name: '鍝佺墝', val: '涓夋槦'},
+          { name: '鍨嬪彿', val: 'G100818bg'},
+          { name: '浣跨敤鏂瑰紡', val: '鍏ㄨ嚜鍔�'},
+          { name: '娲楁钉鍏枻閲�', val: '10kg'},
+          { name: '鐢ㄦ按閲�', val: '65L'},
+          { name: '鏈�楂樿浆閫�', val: '1200杞�/鍒嗛挓'},
+          { name: '娣卞害', val: '600mm'},
+          { name: '楂樺害', val: '845mm'},
+          { name: '淇濅慨鏈�', val: '36涓湀'},
+        ],
+        param2: [
+          { name: '绱绾挎潃鑿�', val: '鏄�'},
+          { name: '鎺掓按鏂瑰紡', val: '涓婃帓姘�'},
+        ]
+      },
+      rightShop: {
+        name: '鏍煎叞浠�434娲楃儤',
+        zdPrice: '2999',
+        price: '2499',
+        param1: [
+          { name: '鍝佺墝', val: '鏍煎叞浠�'},
+          { name: '鍨嬪彿', val: 'G100818bg'},
+          { name: '浣跨敤鏂瑰紡', val: '鍏ㄨ嚜鍔�'},
+          { name: '娲楁钉鍏枻閲�', val: '10kg'},
+          { name: '鐢ㄦ按閲�', val: '65L'},
+          { name: '鏈�楂樿浆閫�', val: '1200杞�/鍒嗛挓'},
+          { name: '娣卞害', val: '600mm'},
+          { name: '楂樺害', val: '845mm'},
+          { name: '淇濅慨鏈�', val: '36涓湀'},
+        ],
+        param2: [
+          { name: '鏄剧ず灞忕被鍨�', val: '瑙︽懜灞�'},
+          { name: '闄勫姞鍔熻兘', val: '鑷姩鏂數'},
+        ]
+      },
+
+      form: {
+        rangeSize: '',
+        main: {
+          bgType: 0, //0榛樿 1鑷畾涔�
+          bgColor: '#f7f7f7',
+          alpha: '100'
+        },
+
+        bgImg: {
+          isShow: 0,  // 0闅愯棌 1鏄剧ず
+          type: 0,
+          img: '',
+          imgurl: ''
+        },
+        topImg: {
+          type: 0,
+          img: '',
+          imgurl: ''
+        },
+        pkImg: {
+          type: 0,
+          img: '',
+          imgurl: ''
+        },
+        header: {
+          backgroundType: 0,
+          bgColor: '#f7f7f7',
+          bgAlpha: '100',
+          bgColor2: '#f7f7f7',
+          bgAlpha2: '100',
+          type: 0,
+          color: '#ffffff',
+          alpha: '100',
+
+        },
+        pull: {
+          bgType: 0,
+          bgColor: '#f7f7f7',
+          bgAlpha: '100',
+          selType: 0,
+          selColor: '#ff0000',
+          selAlpha: '100'
+        },
+        search: {
+          bgType: 0,
+          bgColor: '#f7f7f7',
+          bgAlpha: '100',
+        },
+        category: {
+          bgType: 0,
+          bgColor: '#f7f7f7',
+          bgAlpha: '100',
+        },
+        list: {
+          bgType: 0,
+          bgColor: '#f7f7f7',
+          bgAlpha: '100',
         }
-    },
-    components: { UploadAvatarImage },
-    created() {
-        this.getDesc()
-    },
-    methods: {
-        submit() {
-            if (this.from.rangeSize < 750) {
-                this.$message.warning({ message: '灏哄蹇呴』澶т簬750' })
-                return
-            }
-            if (this.from.rangeSize > 1000) {
-                this.$message.warning({ message: '灏哄蹇呴』灏忎簬1000' })
-                return
-            }
-            renew(this.from)
-                .then(res => {
-                    this.$message.success({ message: '淇濆瓨鎴愬姛' })
-                })
-        },
-        getDesc() {
-            getByLogin({})
-                .then(res => {
-                    if (res) {
-                        this.from.rangeSize = res.rangeSize
-                        this.from.mainColor = res.mainColor
-                        if (res.bgImg) {
-                            this.from.bgImg = res.bgImg
-                            this.from.bgImgUrl = res.resourcePath + res.bgImg
-                        }
-                        if (res.topImg) {
-                            this.from.topImg = res.topImg
-                            this.from.topImgUrl = res.resourcePath + res.topImg
-                        }
-                        if (res.pkImg) {
-                            this.from.pkImg = res.pkImg
-                            this.from.pkImgUrl = res.resourcePath + res.pkImg
-                        }
-                    }
-                })
-        },
-        exceed() {
-            this.$message.warning({ message: '鍙兘涓婁紶涓�寮犲浘鐗�' })
-        },
-        
-        uploadReverseSuccess2(file) {
-            this.from.pkImg = file.imgurl;
-            this.from.pkImgUrl = file.imgurlfull;
-        },
-        uploadReverseSuccess1(file) {
-            this.from.topImg = file.imgurl;
-            this.from.topImgUrl = file.imgurlfull;
-        },
-
-        uploadReverseSuccess(file) {
-            this.from.bgImg = file.imgurl;
-            this.from.bgImgUrl = file.imgurlfull;
-        },
-
-        handleRemove1(file, fileList) {
-            this.fileList1 = []
-            this.from.bgImg = ''
-        },
-        fileSuccess1(response) {
-            this.fileList1.push({ name: response.data.imgaddr, url: response.data.url })
-            this.from.bgImg = response.data.imgaddr
-        },
-
-        handleRemove2(file, fileList) {
-            this.fileList2.forEach((item, index) => {
-                if (file.name === item.name) {
-                    this.fileList2.splice(index, 1)
-                }
-            })
-            let arr = this.fileList2.map(item => item.name)
-            this.from.topImg = arr.join(',')
-        },
-        fileSuccess2(response) {
-            this.fileList2.push({ name: response.data.imgaddr, url: response.data.url })
-            let arr = this.fileList2.map(item => item.name)
-            this.from.topImg = arr.join(',')
-        },
-
-        handleRemove3(file, fileList) {
-            this.fileList3.forEach((item, index) => {
-                if (file.name === item.name) {
-                    this.fileList3.splice(index, 1)
-                }
-            })
-            let arr = this.fileList3.map(item => item.name)
-            this.from.pkImg = arr.join(',')
-        },
-        fileSuccess3(response) {
-            this.fileList3.push({ name: response.data.imgaddr, url: response.data.url })
-            let arr = this.fileList3.map(item => item.name)
-            this.from.pkImg = arr.join(',')
-        }
+      }
     }
+  },
+  computed: {
+    contentStyle() {
+      let alpha = +(this.form.main.alpha * 2.55).toFixed(0)
+      let backgroundColor = this.form.main.bgColor + alpha.toString(16)
+      let style = { backgroundColor }
+      if (this.form.bgImg.isShow) {
+        if (this.form.bgImg.type) {
+          style.backgroundImage = `url(${this.form.bgImg.imgurl})`
+        } else {
+          let img = require('@/assets/images/background_defult.png')
+          style.backgroundImage = `url(${img})`
+        }
+      }
+      return style
+    },
+    tableHeaderStyle() {
+      let headerStyle = {
+        color: this.form.header.color
+      }
+      if (this.form.header.backgroundType == 2) {
+        // 娓愬彉
+        let alpha = +(this.form.header.bgAlpha * 2.55).toFixed(0)
+        let alpha2 = +(this.form.header.bgAlpha2 * 2.55).toFixed(0)
+        let start = this.form.header.bgColor + alpha.toString(16)
+        let end = this.form.header.bgColor2 + alpha2.toString(16)
+        headerStyle.background = `linear-gradient(180deg, ${start} 0%, ${end} 100%)`
+      } else {
+        let alpha = +(this.form.header.alpha * 2.55).toFixed(0)
+        headerStyle.background = this.form.header.bgColor + alpha.toString(16)
+      }
+      console.log(headerStyle);
+      return headerStyle
+    },
+    tableBodyStyle() {
+      let alpha = +(this.form.list.bgAlpha * 2.55).toFixed(0)
+      let background = this.form.list.bgColor + alpha.toString(16)
+      return { background }
+    },
+    pullStyle() {
+      let alpha = +(this.form.pull.bgAlpha * 2.55).toFixed(0)
+      let background = this.form.pull.bgColor + alpha.toString(16)
+      return { background }
+    },
+    selStyle() {
+      let selStyle = {}
+      let alpha = +(this.form.pull.selAlpha * 2.55).toFixed(0)
+      selStyle.color = this.form.pull.selColor + alpha.toString(16)
+      console.log(selStyle);
+      return selStyle
+    },
+    searchStyle() {
+      let alpha = +(this.form.search.bgAlpha * 2.55).toFixed(0)
+      let background = this.form.search.bgColor + alpha.toString(16)
+      return { background }
+    },
+    categoryStyle() {
+      let alpha = +(this.form.category.bgAlpha * 2.55).toFixed(0)
+      let background = this.form.category.bgColor + alpha.toString(16)
+      return { background }
+    },
+  },
+  created() {
+    this.getDesc()
+  },
+  methods: {
+    selectBackground(v) {
+      console.log(v);
+      if (v == 0) {
+        this.form.main.bgColor = '#f7f7f7'
+        this.form.main.alpha = '100'
+      }
+    },
+    // 涓婁紶鑳屾櫙鍥剧墖
+    upbgImgUrl(file) {
+      const formdate = new FormData()
+      this.isUploading = true
+      formdate.append('file', file.target.files[0])
+      formdate.append('folder', 'web_param')
+      upload(formdate)
+        .then(res => {
+          this.form.bgImg.img = res.imgaddr
+          this.form.bgImg.imgurl = res.url
+        })
+        .catch(e => {
+          this.$message.error(e)
+        })
+        .finally(() => this.isUploading = false)
+      this.$refs.upBackground.value = null
+    },
+    // 涓婁紶椤堕儴鍥剧墖
+    upTopImgUrl(file) {
+      const formdate = new FormData()
+      this.isUploading = true
+      formdate.append('file', file.target.files[0])
+      formdate.append('folder', 'web_param')
+      upload(formdate)
+        .then(res => {
+          this.form.topImg.img = res.imgaddr
+          this.form.topImg.imgurl = res.url
+        })
+        .catch(e => {
+          this.$message.error(e)
+        })
+        .finally(() => this.isUploading = false)
+      this.$refs.upTop.value = null
+    },
+
+    // 涓婁紶pk澶浘鐗�
+    upPkImgUrl(file) {
+      const formdate = new FormData()
+      this.isUploading = true
+      formdate.append('file', file.target.files[0])
+      formdate.append('folder', 'web_param')
+      upload(formdate)
+        .then(res => {
+          this.form.pkImg.img = res.imgaddr
+          this.form.pkImg.imgurl = res.url
+        })
+        .catch(e => {
+          this.$message.error(e)
+        })
+        .finally(() => this.isUploading = false)
+      this.$refs.upPk.value = null
+    },
+    selectHeaderBg(v) {
+      if (v == 0) {
+        this.form.header.bgColor = '#f7f7f7'
+        this.form.header.bgAlpha = '100'
+      } else if (v == 1) {
+        this.form.header.bgColor = '#f7f7f7'
+        this.form.header.bgAlpha = '100'
+      } else {
+        this.form.header.bgColor = '#f7f7f7'
+        this.form.header.bgAlpha = '100'
+        this.form.header.bgColor2 = '#f7f7f7'
+        this.form.header.bgAlpha2 = '100'
+      }
+    },
+    selectHeader(v) {
+      if (v == 0) {
+        this.form.header.color = '#f7f7f7'
+        this.form.header.alpha = '100'
+      }
+    },
+
+    mouseenter(v) {
+      let alpha = +(this.form.header.selAlpha * 2.55).toFixed(0)
+      v.target.style.color = this.form.header.selColor + alpha.toString(16)
+    },
+    mouseleave(v) {
+      v.target.style.color = ''
+    },
+
+    clickBrand(item, child) {
+      item.brandName = child
+      item.ppShow = false
+    },
+    clickXH(item, data) {
+      item.name = data
+      item.ppShow = false
+    },
+
+    getDesc() {
+      getByLoginNew()
+        .then(res => {
+          if (res.newParam) {
+            this.form = JSON.parse(res.newParam)
+          }
+        })
+    },
+
+    submit() {
+      if (this.form.rangeSize < 750) {
+        this.$message.warning({ message: '灏哄蹇呴』澶т簬750' })
+        return
+      }
+      if (this.form.rangeSize > 1000) {
+        this.$message.warning({ message: '灏哄蹇呴』灏忎簬1000' })
+        return
+      }
+      renewUpdate({ newParam: JSON.stringify(this.form) })
+        .then(res => {
+          this.$message.success({ message: '淇濆瓨鎴愬姛' })
+        })
+    },
+  }
 }
+/**
+ *
+ */
 </script>
 
 <style lang="scss" scoped>
-    .pz {
-        width: 100%;
-        padding: 30px;
-        box-sizing: border-box;
-        background-color: #fff;
-        .pz_head {
-            font-size: 20px;
-            margin-bottom: 30px;
-            font-weight: bold;
+.pz {
+  width: 100%;
+  padding: 30px;
+  box-sizing: border-box;
+  background-color: #fff;
+  display: flex;
+
+  .prediv {
+    width: 400px;
+    height: 1000px;
+    position: relative;
+    overflow: hidden;
+    margin-right: 10px;
+
+    .option {
+      .select-option {
+        .option-item {
+          // span-align: center;
+          margin-top: 5px;
+          line-height: 20px;
+          height: 20px;
+          font-size: 16px;
+          cursor: pointer;
+          color: #222;
         }
-        .pz_item {
-            width: 750px;
+
+        .selected {
+          color: #2E68EC;
+        }
+      }
+    }
+
+    .prediv-content {
+
+      box-sizing: border-box;
+      padding: 15px;
+
+      .content {
+
+        // background-image: url('../../assets/images/background_defult.png');
+        background-position: center;
+        background-size: 100% 100%;
+        height: 1600px;
+        width: 750px;
+        transform: scale(0.5) translate(-50%, -50%);
+        box-sizing: border-box;
+        padding: 0 30px;
+
+        img {
+          width: 100%;
+        }
+
+        .productPage {
+          img {
+            width: 100%;
+          }
+
+          background-position: center;
+          background-size: 100% 100%;
+
+          width: 100%;
+          padding: 0 22px;
+          box-sizing: border-box;
+          margin-top: 16px;
+
+          .productPage_head {
+            width: 100%;
+            height: 45px;
+            display: flex;
+            align-items: center;
+            background: rgba(0, 224, 255, 0.34) linear-gradient(180deg, rgba(255, 255, 255, 0.35) 0%, rgba(0, 0, 0, 0.21) 100%);
+            border-radius: 8px 8px 0px 0px;
+
+            .productPage_head_item {
+              flex: 1;
+              height: 100%;
+              display: flex;
+              align-items: center;
+              justify-content: center;
+              cursor: pointer;
+              position: relative;
+              color: #fff;
+              font-size: 12px;
+
+              img {
+                width: 14px;
+                margin-left: 3px;
+              }
+
+              &:hover {
+                border-radius: 8px 8px 0px 0px;
+                background: linear-gradient(360deg, #025170 0%, #529DB9 100%) !important;
+              }
+
+              &:hover img {
+                transform: rotate(180deg);
+              }
+
+              &:hover .productPage_xl {
+                transform: translate(0%, 100%);
+                display: block;
+                animation: move 0.5s 0s;
+              }
+
+              @keyframes move {
+                0% {
+                  opacity: 0;
+                }
+
+                100% {
+                  opacity: 1;
+                }
+              }
+
+              .productPage_xl::-webkit-scrollbar {
+                width: 6px;
+                background: rgba(255, 255, 255, 0.5);
+                border-radius: 4px;
+              }
+
+              .productPage_xl::-webkit-scrollbar-thumb {
+                box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+                background: rgba(255, 255, 255, 0.8);
+              }
+
+              .productPage_xl {
+                transition: .3s;
+                position: absolute;
+                bottom: 0;
+                left: 0;
+                min-height: 0;
+                max-height: 260px;
+                overflow-y: scroll;
+                overflow-x: hidden;
+                height: auto;
+                display: none;
+                z-index: 3;
+                transform: translate(0%, 90%);
+                width: 100%;
+                background: linear-gradient(180deg, #518198 0%, #033B58 100%);
+                box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.19);
+                border-radius: 0px 0px 8px 8px;
+
+                .productPage_xl_iten {
+                  width: 100%;
+                  height: 40px;
+                  line-height: 40px;
+                  text-align: center;
+                  cursor: pointer;
+                  padding: 0 10px;
+                  box-sizing: border-box;
+
+                  &:hover {
+                    text {
+                      color: #FFF200;
+                    }
+                  }
+
+                  text {
+                    width: 100%;
+                    text-align: center;
+                    font-size: 16px;
+                    font-family: PingFangSC-Regular, PingFang SC;
+                    font-weight: 400;
+                    color: #FFFFFF;
+                    overflow: hidden;
+                    white-space: nowrap;
+                    text-overflow: ellipsis;
+                  }
+                }
+              }
+
+              text {
+                font-size: 16px;
+                font-family: SourceHanSansSC-Regular, SourceHanSansSC;
+                font-weight: 400;
+                color: #FFFFFF;
+              }
+
+              image {
+                transition: .3s;
+                width: 14px;
+                height: 10px;
+                margin-left: 4px;
+                margin-top: 7px;
+                transform: rotate(0deg);
+              }
+            }
+          }
+
+          .productPage_pk {
+            width: 100%;
+            margin-bottom: 32px;
+            display: flex;
+            align-items: center;
+
+            .productPage_pk_shop {
+              flex: 1;
+              display: flex;
+              justify-content: center;
+              align-items: center;
+              flex-direction: column;
+
+              .productPage_pk_shop_sp {
+                width: 100px;
+                height: 100px;
+                margin-top: 84px;
+                cursor: pointer;
+                margin-bottom: 52px;
+
+                image {
+                  width: 100%;
+                  height: 100%;
+                }
+              }
+
+              .productPage_pk_shop_sp1 {
+                width: 184px;
+                height: 200px;
+                background: linear-gradient(180deg, rgba(225, 255, 252, 0.8) 0%, rgba(179, 255, 252, 0.61) 36%, rgba(0, 255, 251, 0.36) 100%);
+                border-radius: 8px;
+                border: 2px solid #FFFFFF;
+                display: flex;
+                padding: 0 15px;
+                box-sizing: border-box;
+                align-items: center;
+                justify-content: center;
+                flex-direction: column;
+                margin-bottom: 12px;
+                margin-top: 24px;
+                cursor: pointer;
+
+                .productPage_pk_shop_sp1_img {
+                  width: 100px;
+                  height: 100px;
+
+                  img {
+                    width: 100%;
+                    height: 100%;
+                  }
+                }
+
+                span {
+                  width: 100%;
+                  text-align: center;
+                  font-weight: 500;
+                  font-size: 16px;
+                  font-family: SourceHanSansSC-Medium, SourceHanSansSC;
+                  font-weight: 500;
+                  color: #FFFFFF;
+                  margin-top: 18px;
+                  overflow: hidden;
+                  white-space: nowrap;
+                  text-overflow: ellipsis;
+                }
+              }
+
+              .productPage_pk_shop_t {
+                width: 254px;
+                height: 76px;
+
+                image {
+                  width: 100%;
+                  height: 100%;
+                }
+              }
+            }
+
+            .productPage_pk_z {
+              flex-shrink: 0;
+              width: 100px;
+              height: 50px;
+              cursor: pointer;
+
+              image {
+                width: 100%;
+                height: 100%;
+              }
+            }
+          }
+
+          .productPage_shop {
+            width: 100%;
+            margin-top: 12px;
+            display: flex;
+            justify-content: space-between;
+            flex-wrap: wrap;
+
+            .productPage_shop_zw {
+              width: 168px;
+              height: 0;
+            }
+
+            .productPage_shop_item {
+              width: 168px;
+              // height: 204px;
+              margin-bottom: 12px;
+              cursor: pointer;
+              background: rgba(0, 224, 255, 0.18);
+              border-radius: 8px;
+              display: flex;
+              transition: .5s;
+              padding: 15px;
+              box-sizing: border-box;
+              flex-direction: column;
+              // justify-content: center;
+              align-items: center;
+              box-sizing: border-box;
+              white-space: pre-wrap;
+              word-break: break-all;
+              text-align: center;
+
+              &:hover {
+                background: linear-gradient(180deg, rgba(0, 224, 255, 0.3) 0%, rgba(255, 255, 255, 0.41) 100%);
+                border-radius: 8px;
+                border: 2px solid #FFFFFF;
+                box-sizing: border-box;
+              }
+
+              .productPage_shop_item_img {
+                width: 136px;
+                height: 136px;
+                display: flex;
+                align-items: center;
+                justify-content: center;
+                overflow: hidden;
+
+                image {
+                  width: 100%;
+                  height: 100%;
+                }
+              }
+
+              text {
+                width: 100%;
+                overflow: hidden;
+                text-overflow: ellipsis;
+                display: -webkit-box;
+                -webkit-line-clamp: 2;
+                -webkit-box-orient: vertical;
+                font-size: 16px;
+                font-family: SourceHanSansSC-Normal, SourceHanSansSC;
+                font-weight: 400;
+                color: #FFFFFF;
+                margin-top: 12px;
+              }
+            }
+          }
+
+          .productPage_parameter {
+            width: 100%;
             display: flex;
             align-items: flex-start;
+            justify-content: space-between;
             margin-bottom: 30px;
-            .pz_item_label {
-                width: 140px;
-                flex-shrink: 0;
-                font-size: 16px;
-                text-align: right;
+
+            .productPage_parameter_item {
+              width: 49%;
+
+              &:first-child {
+                margin-right: 18px;
+              }
+
+              .productPage_parameter_item_head {
+                width: 100%;
+                height: 40px;
+                background: rgba(0, 224, 255, 0.34) linear-gradient(180deg, rgba(255, 255, 255, 0.35) 0%, rgba(0, 0, 0, 0.21) 100%);
+                border-radius: 8px 8px 0px 0px;
+                display: flex;
+                align-items: center;
+                justify-content: center;
+                overflow: hidden;
+                white-space: nowrap;
+                text-overflow: ellipsis;
+
+                span {
+                  width: 100%;
+                  text-align: center;
+                  font-size: 16px;
+                  font-family: SourceHanSansSC-Medium, SourceHanSansSC;
+                  font-weight: 500;
+                  color: #FFFFFF;
+                  overflow: hidden;
+                  white-space: nowrap;
+                  text-overflow: ellipsis;
+                }
+              }
+
+              .productPage_parameter_item_content {
+                width: 100%;
+                padding: 14px;
+                box-sizing: border-box;
+                background: rgba(0, 224, 255, 0.3);
+                border-radius: 0px 0px 8px 8px;
+                display: flex;
+                flex-direction: column;
+
+                .productPage_parameter_item_content_price {
+                  padding: 16px 0;
+                  box-sizing: border-box;
+                  background: #FFFFFF;
+                  border-radius: 8px;
+                  display: flex;
+                  align-items: center;
+
+                  .zdj {
+                    flex: 1;
+                    display: flex;
+                    flex-direction: column;
+                    align-items: flex-start;
+                    justify-content: center;
+                    margin-left: 20px;
+
+                    span {
+                      &:first-child {
+                        font-size: 16px;
+                        font-family: SourceHanSansSC-Regular, SourceHanSansSC;
+                        font-weight: 400;
+                        color: #333333;
+                      }
+
+                      &:last-child {
+                        font-size: 16px;
+                        font-family: SourceHanSansSC-Bold, SourceHanSansSC;
+                        font-weight: bold;
+                        color: #222222;
+                        margin-top: 10px;
+                      }
+                    }
+                  }
+
+                  .rsj {
+                    flex: 1;
+                    display: flex;
+                    flex-direction: column;
+                    align-items: flex-start;
+                    justify-content: center;
+
+                    span {
+                      &:first-child {
+                        font-size: 16px;
+                        font-family: SourceHanSansSC-Regular, SourceHanSansSC;
+                        font-weight: 400;
+                        color: #333333;
+                      }
+
+                      &:last-child {
+                        font-size: 16px;
+                        font-family: SourceHanSansSC-Bold, SourceHanSansSC;
+                        font-weight: bold;
+                        color: #F10000;
+                        margin-top: 10px;
+                      }
+                    }
+                  }
+                }
+
+                .productPage_parameter_item_content_nr {
+                  padding: 16px 18px;
+                  box-sizing: border-box;
+                  background: #FFFFFF;
+                  border-radius: 8px;
+                  margin-top: 12px;
+                  display: flex;
+                  flex-direction: column;
+
+                  .paramline {
+                    border-bottom: #c7c9ce 2px dashed;
+                    margin-bottom: 15px;
+                  }
+
+                  .item {
+                    display: flex;
+                    align-items: flex-start;
+                    margin-bottom: 15px;
+
+                    &:last-child {
+                      margin-bottom: 0 !important;
+                    }
+
+                    .label {
+                      flex-shrink: 0;
+                      font-size: 16px;
+                      font-family: SourceHanSansSC-Normal, SourceHanSansSC;
+                      font-weight: 400;
+                      color: #222222;
+                    }
+
+                    .value {
+                      flex: 1;
+                      font-size: 16px;
+                      font-family: SourceHanSansSC-Normal, SourceHanSansSC;
+                      font-weight: 400;
+                      color: #222222;
+                    }
+                  }
+                }
+              }
             }
-            .pz_item_ipt {
-                flex: 1;
+          }
+        }
+      }
+
+      .productCategory {
+        width: 100%;
+        padding: 0 22px;
+        box-sizing: border-box;
+        margin-top: 10px;
+
+        .productCategory_list {
+          width: 100%;
+          padding: 10px 20px 0px 20px;
+          box-sizing: border-box;
+          background: rgba(0, 224, 255, 0.18);
+          border-radius: 8px;
+          display: flex;
+          align-items: center;
+          justify-content: space-between;
+          flex-wrap: wrap;
+          margin-bottom: 30px;
+
+          .productCategory_list_zw {
+            width: 20%;
+            height: 0;
+          }
+
+          .productCategory_active {
+            background: rgba(255, 255, 255, 0.24) !important;
+            border-radius: 8px !important;
+          }
+
+          .productCategory_list_item {
+            width: 20%;
+            height: 108px;
+            display: flex;
+            transition: .5s;
+            flex-direction: column;
+            align-items: center;
+            justify-content: center;
+            margin-bottom: 12px;
+            cursor: pointer;
+
+            &:hover {
+              background: rgba(255, 255, 255, 0.24) !important;
+              border-radius: 8px !important;
             }
+
+            img {
+              width: 52px;
+              height: 52px;
+              margin-bottom: 4px;
+            }
+
+            span {
+              font-size: 16px;
+              font-family: SourceHanSansSC-Normal, SourceHanSansSC;
+              font-weight: 400;
+              color: #FFFFFF;
+            }
+          }
         }
-        .pz_footer {
-            width: 100%;
-            padding-left: 140px;
-            box-sizing: border-box;
-        }
+      }
     }
+  }
+
+  .setting {
+    flex: 1;
+  }
+
+  .pz_head {
+    font-size: 20px;
+    margin-bottom: 16px0px;
+    font-weight: bold;
+  }
+
+  .pz_item {
+    // width: 750px;
+    display: flex;
+    align-items: flex-start;
+    margin-bottom: 30px;
+
+    .pz_item_label {
+      width: 140px;
+      flex-shrink: 0;
+      font-size: 16px;
+    }
+
+    .pz_item_ipt {
+      flex: 1;
+    }
+  }
+
+  .pz_footer {
+    width: 100%;
+    padding-left: 140px;
+    box-sizing: border-box;
+  }
+}
+
+.commodityFrom_head {
+  width: 100%;
+  height: 45px;
+  padding: 10px 8px;
+  box-sizing: border-box;
+  // 
+  // background: rgba(0, 224, 255, 0.24) linear-gradient(180deg, rgba(255, 255, 255, 0.35) 0%, rgba(0, 0, 0, 0.21) 100%);
+  display: flex;
+  align-items: center;
+  color: #FFFFFF;
+
+  .commodityFrom_head_item {
+    // flex: 1;
+    width: 126px;
+    height: 100%;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    font-size: 16px;
+    font-weight: 500;
+
+    margin-right: 6px;
+
+    &:last-child {
+      margin-right: 0 !important;
+    }
+
+    &:nth-child(3) {
+      flex: 1 !important;
+    }
+
+    &:nth-child(4) {
+      width: 100px !important;
+    }
+
+    &:nth-child(5) {
+      width: 100px !important;
+    }
+  }
+}
+
+.commodityFrom_body {
+  width: 100%;
+  padding: 10px 8px;
+  box-sizing: border-box;
+  background: rgba(0, 224, 255, 0.3);
+  border-radius: 0 0 8px 8px;
+  display: flex;
+  flex-direction: column;
+
+  .commodityFrom_body_content {
+    width: 100%;
+    display: flex;
+    flex-direction: column;
+
+    .commodityFrom_body_content_item {
+      width: 100%;
+      height: 45px;
+      display: flex;
+      align-items: center;
+      margin-bottom: 6px;
+      position: relative;
+      transition: .5s;
+
+      &:hover .commodityFrom_body_content_item_tips {
+        transform: translate(100%, 0%);
+        opacity: 1;
+        z-index: 1;
+      }
+
+      .commodityFrom_body_content_item_tips {
+        transition: .5s;
+        position: absolute;
+        padding: 0 4px;
+        box-sizing: border-box;
+        right: -16px;
+        top: 0;
+        opacity: 0;
+        transform: translate(0%, 0%);
+        z-index: -1;
+        height: 45px;
+        display: flex;
+        align-items: center;
+        background: rgba(0, 224, 255, 0.3);
+        border-radius: 8px;
+
+        image {
+          width: 32px;
+          height: 32px;
+          cursor: pointer;
+        }
+      }
+
+      .commodityFrom_body_content_item_num {
+        width: 126px;
+        height: 100%;
+        padding: 0 15px;
+        box-sizing: border-box;
+        background: #FFFFFF;
+        border-radius: 8px;
+        margin-right: 6px;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        text-align: center;
+        position: relative;
+
+        &:hover {
+          .drop-top {
+            z-index: 5;
+            opacity: 1;
+          }
+        }
+
+        &:nth-child(4) {
+          width: 100px !important;
+        }
+
+        &:nth-child(5) {
+          width: 100px !important;
+          margin-right: 0 !important;
+        }
+
+        &:nth-child(2) {
+          cursor: pointer;
+        }
+
+        &:nth-child(3) {
+          cursor: pointer;
+          flex: 1 !important;
+        }
+
+        span {
+          width: 100%;
+          font-size: 16px;
+          font-family: PingFangSC-Medium, PingFang SC;
+          font-weight: 500;
+          color: #111111;
+          overflow: hidden;
+          white-space: nowrap;
+        }
+
+        .commodityFrom_body_content_item_num_img {
+          width: 28px;
+          height: 28px;
+          display: flex;
+          align-items: center;
+          justify-content: center;
+          margin-right: 4px;
+
+        }
+
+        input {
+          font-size: 16px;
+          font-family: PingFangSC-Medium, PingFang SC;
+          font-weight: 500;
+          color: #111111;
+        }
+
+        .drop-down::-webkit-scrollbar {
+          width: 6px;
+          background: rgba(255, 255, 255, 0.5);
+          border-radius: 4px;
+        }
+
+        .drop-down::-webkit-scrollbar-thumb {
+          box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+          background: rgba(255, 255, 255, 0.8);
+        }
+
+        .drop-down {
+          position: absolute;
+          bottom: 0;
+          left: 0;
+          width: 100%;
+          min-height: 0;
+          max-height: 260px;
+          overflow-y: scroll;
+          overflow-x: hidden;
+          height: auto;
+          transform: translate(0%, 100%);
+          background: linear-gradient(180deg, #518198 0%, #033B58 100%);
+          box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.19);
+          border-radius: 0px 0px 8px 8px;
+          // display: flex;
+          // flex-direction: column;
+          transition: .5s;
+
+          .drop-down-item {
+            width: 100%;
+            height: 52px;
+            // padding: 0 10px;
+            // box-sizing: border-box;
+            // overflow: hidden;
+            // white-space: nowrap;
+            // text-overflow: ellipsis;
+            cursor: pointer;
+            display: flex;
+            align-items: center;
+            justify-content: center;
+            padding: 0 10px;
+            box-sizing: border-box;
+
+            .item-value {
+              width: 100%;
+              text-align: center;
+              font-size: 16px;
+              font-family: PingFangSC-Regular, PingFang SC;
+              font-weight: 400;
+              color: #FFFFFF;
+              overflow: hidden;
+              white-space: nowrap;
+              text-overflow: ellipsis;
+            }
+          }
+        }
+      }
+    }
+  }
+
+  .commodityFrom_body_total {
+    width: 100%;
+    height: 45px;
+    display: flex;
+    align-items: center;
+
+    .commodityFrom_body_total_item {
+      width: 100px;
+      height: 100%;
+      background: rgba(255, 255, 255, 0.4);
+      border-radius: 8px;
+      margin-right: 6px;
+      font-size: 16px;
+      font-family: SourceHanSansSC-Bold, SourceHanSansSC;
+      font-weight: bold;
+      color: #FFF200;
+      display: flex;
+      align-items: center;
+      justify-content: center;
+
+      &:first-child {
+        flex: 1;
+        display: flex;
+        align-items: center;
+        justify-content: flex-start;
+        font-size: 16px;
+        font-family: SourceHanSansSC-Medium, SourceHanSansSC;
+        font-weight: 500;
+        padding: 0 15px;
+        color: #FFFFFF;
+      }
+
+      &:last-child {
+        margin-right: 0 !important;
+      }
+    }
+  }
+}
+
+.color-select-item {
+  display: flex;
+  align-items: center;
+  height: 33px;
+}
+
+.img-select-item {
+  display: flex;
+
+  .upload {
+    margin-left: 5px;
+    display: flex;
+    flex-direction: column;
+    justify-content: space-between;
+  }
+}
+
+
+.search {
+  position: absolute;
+  transform: scale(0.5) translate(0%, -20%);
+  z-index: 4;
+  top: 0;
+  left: 0;
+  width: 100%;
+  height: 100%;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+
+  .search_box {
+    width: 560px;
+    height: auto;
+    display: flex;
+    flex-direction: column;
+
+    .search_box_item_xl::-webkit-scrollbar {
+      width: 6px;
+      background: rgba(255, 255, 255, 0.5);
+      border-radius: 4px;
+    }
+
+    .search_box_item_xl::-webkit-scrollbar-thumb {
+      box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+      background: rgba(255, 255, 255, 0.8);
+    }
+
+    .search_box_item_xl {
+      width: 100%;
+      max-height: 60px;
+      min-height: 240px;
+      overflow-y: scroll;
+      background: rgba(5, 35, 102, 0.7);
+      border-radius: 8px;
+
+      // display: flex;
+      // flex-direction: column;
+      .search_box_item_xl_item {
+        width: 100%;
+        height: 40px;
+        // line-height: 52px;
+        // font-size: 28px;
+        // font-family: PingFangSC-Regular, PingFang SC;
+        // font-weight: 400;
+        // color: #FFFFFF;
+        padding: 0 24px;
+        cursor: pointer;
+        box-sizing: border-box;
+        display: flex;
+        align-items: center;
+
+        // &:hover {
+        // 	span {
+        // 		color: #FFF200;
+        // 	}
+        // }
+        .active {
+          color: #FFF200 !important;
+        }
+
+        .search_box_item_xl_item_name {
+          flex: 1;
+          height: 100%;
+          display: flex;
+          align-items: center;
+          overflow: hidden;
+          white-space: nowrap;
+          text-overflow: ellipsis;
+          font-size: 16px;
+          font-family: PingFangSC-Regular, PingFang SC;
+          font-weight: 400;
+          color: #FFFFFF;
+          // &:hover {
+          // 	color: #FFF200;
+          // }
+        }
+
+        span {
+          flex-shrink: 0;
+          font-size: 16px;
+          font-family: PingFangSC-Regular, PingFang SC;
+          font-weight: 400;
+          color: #FFFFFF;
+          margin-left: 10px;
+        }
+      }
+    }
+
+    .search_box_item {
+      width: 100%;
+      height: 62px;
+      background: rgba(5, 35, 102, 0.7);
+      border-radius: 32px;
+      display: flex;
+      align-items: center;
+      padding: 0 30px;
+      box-sizing: border-box;
+      margin-bottom: 16px;
+
+      &:last-child {
+        margin-bottom: 0 !important;
+      }
+
+      .search_box_item_right {
+        display: flex;
+        align-items: center;
+        font-weight: 600;
+        font-size: 18px;
+        color: #fff;
+      }
+
+      .icon {
+        width: 20px;
+        height: 20px;
+        flex-shrink: 0;
+        margin-right: 18px;
+
+        img {
+          width: 100%;
+          height: 100%;
+        }
+      }
+
+      .placeholder {
+        height: 62px;
+        line-height: 62px;
+        font-size: 16px;
+        font-family: PingFangSC-Regular, PingFang SC;
+        font-weight: 400;
+        color: rgba(255, 255, 255, 0.5);
+      }
+    }
+  }
+}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3