<template>
  <view class="main">
    <div
      class="top"
      :style="{
        height: `${loginType === 'min' ? menu.bottom + 8 : ''}px`,
        paddingTop: `${menu.top}px`,
      }"
      v-if="false"
    >
      <div class="topContent">
        <image
          class="backIcon"
          src="https://eshangtech.com/wanmeiyizhanImg/home/backArrow.svg"
          @click="handleBack"
        />

        <div class="first" @click="goSelectServer">
          <image
            class="addressIcon"
            src="https://eshangtech.com/wanmeiyizhanImg/home/blackFixed.png"
          />
          <div class="text">{{ nowServiceObj.SERVERPART_NAME || "" }}</div>
          <image
            class="moreIcon"
            src="https://eshangtech.com/wanmeiyizhanImg/home/rightArrow.png"
          />
        </div>

        <div
          :class="inSearchAll ? 'inSearchAll' : 'searchAll'"
          @click="handleSearchAll"
        >
          查看全部
        </div>
      </div>
    </div>

    <div class="tabBox" v-if="false">
      <div
        :class="fintType === 1000 ? 'tabItem active' : 'tabItem'"
        @click="handleChangeType(1000)"
      >
        失物信息
      </div>
      <div
        :class="fintType === 2000 ? 'tabItem active' : 'tabItem'"
        @click="handleChangeType(2000)"
      >
        招领信息
      </div>
    </div>

    <div class="headerBox">
      <div
        class="searchBox"
        :style="{
          width: showSearchBtn ? 'calc(100% - 80rpx) ' : '100%',
        }"
      >
        <image
          class="searchIcon"
          src="https://eshangtech.com/wanmeiyizhanImg/home/searchIcon.png"
        />
        <input
          class="inputBox"
          placeholder="请输入物品信息"
          style="font-size: 28rpx"
          v-model="searchText"
          confirm-type="send"
          @focus="clickSearch"
          @blur="noClickSearch"
          @confirm="handleEntrySearch"
        />
        <!-- <image class="searchIcon" src="https://eshangtech.com/wanmeiyizhanImg/home/searchIcon.png" />
        <span class="searchText">请输入服务区</span> -->
      </div>
      <div class="searchBtn" v-if="showSearchBtn" @click="handleGetListData">
        搜索
      </div>
      <!-- <div class="filterBox" @click="showFilter" style="margin-left: 8px">
        <image class="filterIcon" src="https://eshangtech.com/wanmeiyizhanImg/home/filterIcon.svg" />
      </div>
      <div class="filterBox" @click="handleGoAdd" style="margin-left: 8px">
        <image class="filterIcon" src="https://eshangtech.com/wanmeiyizhanImg/home/addIcon.svg" />
      </div> -->
    </div>
    <div class="newSelectBox">
      <div class="leftBox">
        <div class="first" @click="goSelectServer">
          <image
            class="addressIcon"
            src="https://eshangtech.com/wanmeiyizhanImg/home/blackFixed.png"
          />
          <div class="text">{{ nowServiceObj.SERVERPART_NAME || "" }}</div>
          <image
            class="moreIcon"
            src="https://eshangtech.com/wanmeiyizhanImg/home/rightArrow.png"
          />
        </div>

        <div
          :class="inSearchAll ? 'inSearchAll' : 'searchAll'"
          @click="handleSearchAll"
        >
          查看全部
        </div>
      </div>

      <div class="tabBoxNew">
        <div
          :class="fintType === 1000 ? 'tabItemNew activeNew' : 'tabItemNew'"
          @click="handleChangeType(1000)"
        >
          失物
        </div>
        <div
          :class="fintType === 2000 ? 'tabItemNew activeNew' : 'tabItemNew'"
          @click="handleChangeType(2000)"
        >
          招领
        </div>
      </div>
    </div>

    <div
      class="pageList"
      :style="{
        height: `calc(100vh - 186rpx - ${
          loginType === 'min' ? menu.bottom : menu.top * 2
        }px )`,
      }"
    >
      <div
        v-if="dataList && dataList.length > 0"
        style="width: 100%; height: 100%"
      >
        <!-- <div class="pageTitle">物品 ({{ dataList.length || "" }})</div> -->
        <scroll-view
          scroll-y
          class="listBox"
          :style="{
            height: `calc(100vh - 186rpx - ${
              loginType === 'min' ? menu.bottom : menu.top * 2
            }px )`,
          }"
          refresher-enabled
          :refresher-triggered="triggered"
          @scrolltolower="handleScrollBottom"
          @refresherrefresh="handleRefresh"
        >
          <div
            class="shopItem"
            v-for="(item, index) in dataList"
            :key="index"
            @click="handleGoDetail(item)"
          >
            <div class="leftImgNew">
              <image
                class="img"
                :src="item.ImageList[0].ImageUrl"
                v-if="item.ImageList && item.ImageList.length > 0"
              />
              <image
                class="img"
                src="https://eshangtech.com/wanmeiyizhanImg/discovery/defaultIcon.png"
                v-else
              />
            </div>

            <div class="rightItem">
              <view>
                <div class="title">
                  <span class="type">{{
                    fintType === 1000 ? "失物" : "招领"
                  }}</span>
                  <span class="normal">{{ item.beforeOtherName }}</span>
                  <span class="light">{{ item.lightName }}</span>
                  <span class="normal">{{ item.afterOtherName }}</span>
                </div>
              </view>
              <view>
                <div class="timeBox">
                  <!-- <span class="label">时间</span> -->
                  {{ item.SUGGESTION_CREATEDATE || "-" }}
                </div>

                <div class="placeBox">
                  <!-- <span class="label">{{
                    fintType === 1000 ? "丢失地点" : "捡拾地点"
                  }}</span> -->
                  {{ item.SERVERPART_NAME || "-" }}
                </div>
                <div class="phone">
                  <!-- <span class="label">联系电话</span> -->
                  {{ item.PHONE_NUMBER || "-" }}
                </div>
                <div class="phone" v-if="item.SUGGESTION_REASON">
                  <span class="label">服务热线</span>
                  {{ item.SUGGESTION_REASON || "-" }}
                </div>
              </view>
            </div>

            <div v-if="false">
              <div class="title">
                <span class="normal">{{ item.beforeOtherName }}</span>
                <span class="light">{{ item.lightName }}</span>
                <span class="normal">{{ item.afterOtherName }}</span>
              </div>
              <div class="timeBox">
                <image
                  class="timeIcon"
                  src="https://eshangtech.com/wanmeiyizhanImg/home/timeIcon.png"
                />
                <span class="timeText">{{ item.SUGGESTION_CREATEDATE }}</span>
              </div>
              <div class="phoneBox">
                <!-- <image
                class="phoneIcon"
                src="https://eshangtech.com/wanmeiyizhanImg/home/phoneIcon.svg"
              />
              <span class="phoneText">{{ item.PHONE_NUMBER }}</span> -->
                <image
                  class="phoneIcon"
                  src="https://eshangtech.com/wanmeiyizhanImg/home/communityInteraction.svg"
                />

                <span class="phoneText">{{ item.SERVERPART_NAME }}</span>
              </div>
              <div class="callPhoneBox" @click="handleCallPhone(item)">
                <image
                  class="callPhoneIcon"
                  src="https://eshangtech.com/wanmeiyizhanImg/home/phone.png"
                />
              </div>
            </div>
          </div>

          <div v-if="dataList && dataList.length > 0">
            <view class="inBottom">
              <text class="bottomText">{{
                pageObj.isOver ? "我是有底线的" : "下拉加载更多"
              }}</text>
            </view>
          </div>
        </scroll-view>
      </div>
      <div
        v-if="!(dataList && dataList.length > 0)"
        style="width: 100%; padding-top: 160px"
      >
        <no-data text="暂无物品信息" :isShow="true" :type="1"></no-data>
      </div>
    </div>

    <view class="addNewPost" @click="handleGoAdd">
      <view class="newPostBox">
        <image
          class="addIcon"
          src="https://eshangtech.com/wanmeiyizhanImg/home/addPost.svg"
        />
        <text class="addText">{{
          fintType === 1000 ? "新增失物" : fintType === 2000 ? "新增招领" : ""
        }}</text>
      </view>
    </view>

    <uni-popup
      ref="popup"
      :show="isShow"
      :safe-area="false"
      @close="handleClosePopup"
    >
      <div class="popupBox">
        <div class="popupTitle">
          <image
            class="closeIcon"
            src="https://eshangtech.com/wanmeiyizhanImg/home/closeIcon.svg"
            @click="handleClosePopup"
          />
          <span class="titleText">更多筛选</span>
          <div class="closeIcon"></div>
        </div>
        <div class="popupList">
          <div class="popupLeftBox">
            <div
              :class="
                leftSelectIndex === index ? 'itemType selectType' : 'itemType'
              "
              v-for="(item, index) in leftTypeList"
              :key="index"
              @click="handleSelectType(index, item.value)"
            >
              {{ item.label }}
            </div>
          </div>
          <scroll-view
            :scroll-y="true"
            :scroll-into-view="scrollTop"
            show-scrollbar="false"
            :scroll-with-animation="true"
            class="popupRightBox"
          >
            <div
              class="rightItem"
              :id="'shop' + item.value"
              v-for="(item, index) in leftTypeList"
              :key="index"
            >
              <template v-if="index !== 0">
                <div class="itemTitle">{{ item.label }}</div>
                <div
                  class="rightTypeList"
                  v-if="item.children && item.children.length > 0"
                >
                  <div
                    :class="
                      subItem.value === rightSelectValue
                        ? 'rightType selectRightType'
                        : 'rightType'
                    "
                    v-for="(subItem, subIndex) in item.children"
                    :key="subIndex"
                    @click="handleChangeRightSelect(index, subItem.value)"
                  >
                    {{ subItem.label }}
                  </div>
                </div>
              </template>
            </div>
          </scroll-view>
        </div>
        <div class="btnBox" @click="handleClickConfirm">
          <div class="btn">确定</div>
        </div>
      </div>
    </uni-popup>
  </view>
</template>
<script>
import UniPopup from "@/uni_modules/uni-popup/components/uni-popup/uni-popup.vue";
import NoData from "../../components/noData.vue";
export default {
  data() {
    return {
      nowServiceObj: {}, // 当前的服务区信息
      isShow: false, // 悬浮框的是否显示
      dataList: [
        // {
        //   beforeOtherName: "罗马仕",
        //   lightName: "充电宝",
        //   afterOtherName: "",
        //   time: "2024-12-12 10:34:34",
        //   phone: "123456789",
        // },
      ], // 数据列表
      leftTypeList: [], // 悬浮框左侧的列表
      leftSelectIndex: 0, // 左侧的默认选择
      rightSelectValue: 0, // 右侧的改变
      scrollTop: "", // 滚动的锚点
      searchText: "", // 查询的内容
      showSearchBtn: false, // 点击输入框时 出现搜索按钮
      menu: {}, // 手机样式
      goAdd: false, // 判断是否已经跳转了新增页面
      inSearchAll: true, // 判断是否查看全部服务区
      pageObj: {
        pageSize: 10,
        pageIndex: 1,
        isOver: false,
      },
      triggered: false, // 下拉状态
      fintType: 1000, // 1000 失物  2000 招领
      loginType: "",
    };
  },
  components: {
    UniPopup,
    NoData,
  },
  onLoad() {
    let systemInfo = uni.getSystemInfoSync();
    let type = uni.getStorageSync("loginType");
    this.loginType = type;
    if (type === "min") {
      this.menu = uni.getMenuButtonBoundingClientRect();
    } else {
      this.menu = systemInfo.safeArea;
    }
    console.log("this.menu", this.menu);

    let currentService = uni.getStorageSync("currentService");
    console.log("currentService", currentService);
    this.nowServiceObj = currentService;
    this.handleGetTypeList();
    this.handleGetListData();
  },
  onShow() {
    let currentService = uni.getStorageSync("currentService");
    if (currentService.SERVERPART_ID !== this.nowServiceObj.SERVERPART_ID) {
      this.nowServiceObj = currentService;
      this.dataList = [];
      this.handleGetListData();
      // this.goAdd = false;
    }

    let contactReload = uni.getStorageSync("contactReload");
    if (contactReload) {
      this.dataList = [];
      this.pageObj = {
        pageSize: 10,
        pageIndex: 1,
        isOver: false,
      };

      this.handleGetListData();
      uni.setStorageSync("contactReload", null);
    }
  },
  methods: {
    // 查看详情
    handleGoDetail(obj) {
      console.log("obj", obj);
      uni.navigateTo({
        url: `/pages/contact/addContact?id=${obj.SUGGESTION_ID}&addType=${obj.WECHAT_OPENID}`,
      });
    },
    // 回车查询调用的方法
    handleEntrySearch() {
      console.log("handleEntrySearch");
      this.dataList = [];
      this.pageObj = {
        pageIndex: 1,
        pageSize: 10,
        isOver: false,
      };
      this.handleGetListData();
    },
    // 改变查询的类型
    handleChangeType(value) {
      this.fintType = value;
      this.$forceUpdate();
      this.dataList = [];
      this.pageObj = {
        pageSize: 10,
        pageIndex: 1,
        isOver: false,
      };
      this.handleGetListData();
    },
    // 下拉刷新
    async handleRefresh(e) {
      this.triggered = true;
      this.dataList = [];
      this.pageObj = {
        pageIndex: 1,
        pageSize: 10,
        isOver: false,
      };
      await this.handleGetListData();
      this.triggered = false;
    },
    // 滚动到底部
    handleScrollBottom() {
      this.pageObj.pageIndex += 1;
      if (!this.pageObj.isOver) {
        this.handleGetListData();
      }
    },
    // 查看全部
    handleSearchAll() {
      this.inSearchAll = !this.inSearchAll;
      this.dataList = [];
      this.pageObj = {
        pageIndex: 1,
        pageSize: 10,
        isOver: false,
      };
      this.handleGetListData();
    },
    // 返回上一级
    handleBack() {
      uni.navigateBack({
        delta: 1,
      });
    },
    // 跳转去添加失物的页面
    handleGoAdd() {
      // this.goAdd = true;
      uni.navigateTo({
        url: `/pages/contact/addContact?addType=${this.fintType}`,
      });
    },
    // 跳转到地图选择服务区
    goSelectServer() {
      uni.navigateTo({ url: "/pages/newMap/index/index" });
    },
    showFilter() {
      this.isShow = true;
      this.$refs.popup.open("bottom");
    },
    handleClosePopup() {
      this.$refs.popup.close();
      this.isShow = false;
    },
    // 拿到类型枚举
    async handleGetTypeList() {
      const data = await this.$api.$get(
        "/EShangApiMain/FrameWork/GetFieldEnumTree",
        { FieldExplainField: "business_target" }
      );
      let list = this.$utils.wrapTreeNode(data.Result_Data.List);
      let res = [];
      if (list && list.length > 0) {
        list.forEach((item) => {
          if (item.value === 6000) {
            res = item.children;
          }
        });
      }

      res.unshift({ label: "全部", value: 6000 });
      console.log("handleGetTypeList", res);
      this.leftTypeList = res;
    },
    // 左侧类型的选择
    handleSelectType(index, itemValue) {
      this.leftSelectIndex = index;
      this.scrollTop = "shop" + itemValue;
    },
    // 右侧的选择事件 会改变左侧的选中效果
    handleChangeRightSelect(leftIndex, rightValue) {
      if (this.rightSelectValue === rightValue) {
        this.leftSelectIndex = 0;
        this.rightSelectValue = 0;
      } else {
        this.leftSelectIndex = leftIndex;
        this.rightSelectValue = rightValue;
      }
    },
    // 点击悬浮框里面的确定
    handleClickConfirm() {
      this.handleClosePopup();
      this.handleGetListData();
    },
    // 拿到失物招领的数据  只要最近三个月的数据
    async handleGetListData() {
      const req = {
        SearchParameter: {
          SUGGESTION_TYPES: 4000,
          SERVERPART_IDS: this.inSearchAll
            ? ""
            : this.nowServiceObj.SERVERPART_ID || "",
          SUGGESTION_STATES: 1,
          ENUM_LABEL: this.rightSelectValue || "",
          WECHAT_OPENID: this.fintType,
          SUGGESTION_CREATEDATE_Start: this.$moment
            .now()
            .set("month", -3)
            .format("YYYY-MM-DD"),
          SUGGESTION_CREATEDATE_End: this.$moment.now().format("YYYY-MM-DD"),
        },
        SortStr: "SUGGESTION_CREATEDATE desc",
        PageSize: this.pageObj.pageSize,
        PageIndex: this.pageObj.pageIndex,
        keyWord: {
          Key: "SUGGESTION_TITLE",
          value: this.searchText,
        },
        // PageIndex: 1,
        // PageSize: 999999,
      };
      const data = await this.$api.$post(
        "/EShangApiMain/SiteManage/GetSUGGESTIONList",
        req
      );
      console.log("data", data);
      let oldList = [];
      if (this.dataList && this.dataList.length > 0) {
        oldList = JSON.parse(JSON.stringify(this.dataList));
      }

      let list = data.Result_Data.List;
      if (list && list.length > 0) {
        if (list.length < this.pageObj.pageSize) {
          this.pageObj.isOver = true;
        }

        list.forEach((item) => {
          if (this.searchText) {
            let obj = this.extractParts(item.SUGGESTION_TITLE, this.searchText);
            item.beforeOtherName = obj.beforeKeyword || "";
            item.lightName = obj.keyword || "";
            item.afterOtherName = obj.afterKeyword || "";
          } else {
            item.beforeOtherName = item.SUGGESTION_TITLE;
          }
        });
      } else {
        this.pageObj.isOver = true;
      }
      this.dataList = oldList.concat(list);
    },
    // 截取关键字前后 关键字的方法
    extractParts(str, keyword) {
      const keywordIndex = str.indexOf(keyword);
      if (keywordIndex === -1) {
        return null; // 如果找不到关键字，则返回 null
      }
      // 截取关键字前的内容
      const beforeKeyword = str.substring(0, keywordIndex);
      // 截取关键字后的内容
      const afterKeyword = str.substring(keywordIndex + keyword.length);
      // 返回结果对象
      return {
        keyword: keyword,
        beforeKeyword: beforeKeyword,
        afterKeyword: afterKeyword,
      };
    },
    // 出现搜索按钮
    clickSearch() {
      this.showSearchBtn = true;
    },
    // 关闭搜索按钮
    noClickSearch() {
      this.showSearchBtn = false;
    },
    // 调起打电话
    handleCallPhone(obj) {
      uni.makePhoneCall({
        phoneNumber: obj.PHONE_NUMBER, //仅为示例
      });
    },
  },
};
</script>
<style scoped lang="less">
.main {
  width: 100%;
  height: 100vh;
  background: #fff;
  .top {
    width: 100%;
    box-sizing: border-box;
    background: #fff;
    .topContent {
      display: flex;
      align-items: center;
      box-sizing: border-box;
      padding: 0 16px;
      .backIcon {
        width: 48rpx;
        height: 48rpx;
        margin-right: 8px;
      }

      .first {
        display: flex;
        align-items: center;
        box-sizing: border-box;
        border: 1rpx solid #e7e7e6;
        border-radius: 48rpx;
        padding: 12rpx 24rpx;
        .addressIcon {
          width: 24rpx;
          height: 24rpx;
          margin-right: 8rpx;
        }
        .text {
          font-family: PingFangSC, PingFang SC;
          font-weight: 400;
          font-size: 28rpx;
          color: #090c1a;
          line-height: 40rpx;
          text-align: justify;
          font-style: normal;
        }
        .moreIcon {
          margin-left: 8rpx;
          width: 24rpx;
          height: 24rpx;
        }
      }

      .searchAll {
        width: 120rpx;
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 24rpx;
        color: #090c1a;
        line-height: 40rpx;
        text-align: justify;
        font-style: normal;
        margin-left: 8rpx;
        text-align: center;
      }

      .inSearchAll {
        width: 120rpx;
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 24rpx;
        color: #fff;
        line-height: 40rpx;
        text-align: justify;
        font-style: normal;
        margin-left: 8rpx;
        background: #ba922f;
        text-align: center;
        border-radius: 8rpx;
      }
    }
  }

  .tabBox {
    width: 100%;
    height: 60rpx;
    display: flex;
    align-items: center;
    margin-top: 16rpx;
    border-bottom: 1px solid #f6f6f6;
    .tabItem {
      width: 50%;
      height: 100%;
      font-family: PingFangSC, PingFang SC;
      font-weight: 400;
      font-size: 28rpx;
      color: #716f69;
      line-height: 40rpx;
      text-align: center;
      font-style: normal;
    }
    .active {
      font-family: PingFangSC, PingFang SC;
      font-weight: 400;
      font-size: 28rpx;
      color: #130f05;
      line-height: 40rpx;
      text-align: center;
      font-style: normal;
      position: relative;
    }
    .active:after {
      content: "";
      width: 2rem;
      height: 6rpx;
      background: #ba922f;
      position: absolute;
      left: 50%;
      bottom: 6rpx;
      transform: translateX(-50%);
    }
  }

  .headerBox {
    height: 104rpx;
    box-sizing: border-box;
    padding: 24rpx 32rpx 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    .searchBox {
      width: 100%;
      // width: calc(100% - 104rpx);
      height: 80rpx;
      background: #f5f6f7;
      border-radius: 8rpx;
      box-sizing: border-box;
      padding: 16rpx 20rpx;
      display: flex;
      align-items: center;
      .searchIcon {
        width: 32rpx;
        height: 32rpx;
        margin-right: 8rpx;
      }
      .inputBox {
        width: 100%;
        // width: calc(100% - 160rpx);
      }
      .searchText {
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 28rpx;
        color: #9fa1aa;
        line-height: 40rpx;
        text-align: left;
        font-style: normal;
        margin-left: 8rpx;
      }
    }
    .searchBtn {
      font-family: PingFangSC, PingFang SC;
      font-weight: 400;
      font-size: 28rpx;
      color: #130f05;
      line-height: 44rpx;
      text-align: left;
      font-style: normal;
    }

    .filterBox {
      width: 80rpx;
      height: 80rpx;
      background: #f5f6f7;
      border-radius: 8rpx;
      display: flex;
      align-items: center;
      justify-content: center;
      .filterIcon {
        width: 32rpx;
        height: 32rpx;
      }
    }
  }

  .newSelectBox {
    width: 100%;
    box-sizing: border-box;
    padding: 24rpx 32rpx 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    .leftBox {
      max-width: 70%;
      display: flex;
      align-items: center;
      .first {
        display: flex;
        align-items: center;
        .addressIcon {
          width: 24rpx;
          height: 24rpx;
          margin-right: 8rpx;
        }
        .text {
          font-family: PingFangSC, PingFang SC;
          font-weight: 400;
          font-size: 30rpx;
          color: #090c1a;
          line-height: 36rpx;
          text-align: justify;
          font-style: normal;
        }
        .moreIcon {
          margin-left: 8rpx;
          width: 24rpx;
          height: 24rpx;
        }
      }

      .searchAll {
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 30rpx;
        color: #090c1a;
        line-height: 36rpx;
        text-align: justify;
        font-style: normal;
        margin-left: 8rpx;
        text-align: center;
        padding: 4rpx 16rpx;
      }

      .inSearchAll {
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 30rpx;
        color: #fff;
        line-height: 36rpx;
        text-align: justify;
        font-style: normal;
        margin-left: 8rpx;
        background: #ba922f;
        text-align: center;
        border-radius: 8rpx;
        padding: 4rpx 16rpx;
      }
    }

    .tabBoxNew {
      border: 2rpx solid #ba922f;
      border-radius: 8rpx;
      .tabItemNew {
        display: inline-block;
        padding: 4rpx 16rpx;
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 30rpx;
        color: #ba922f;
        line-height: 36rpx;
        text-align: center;
        font-style: normal;
      }
      .activeNew {
        background: #ba922f;
        color: #fff;
      }
    }
  }

  .pageList {
    width: 100%;
    // height: calc(100vh - 200rpx);
    box-sizing: border-box;
    padding: 0 32rpx;
    margin-top: 24rpx;
    .pageTitle {
      font-family: PingFangSC, PingFang SC;
      font-weight: 400;
      font-size: 32rpx;
      color: #130f05;
      line-height: 44rpx;
      text-align: left;
      font-style: normal;
      margin-bottom: 24rpx;
    }
    .listBox {
      width: 100%;
      // height: calc(100% - 80rpx);
      overflow-y: auto;
      .shopItem {
        width: 100%;
        margin-bottom: 24rpx;
        background: #ffffff;
        border-radius: 6rpx;
        border: 2rpx solid #f5f6f7;
        box-sizing: border-box;
        padding: 24rpx;
        position: relative;
        display: flex;
        align-items: center;
        .leftImgNew {
          width: 200rpx;
          height: 200rpx;
          border-radius: 8rpx;
          overflow: hidden;
          margin-right: 16rpx;
          .img {
            width: 100%;
            height: 100%;
          }
        }

        .rightItem {
          width: calc(100% - 200rpx);
          height: 200rpx;
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          .title {
            width: 100%;
            font-family: "PingFangSC";
            font-weight: 400;
            font-size: 30rpx;
            color: #130f05;
            line-height: 36rpx;
            text-align: left;
            font-style: normal;
            display: -webkit-box;
            -webkit-line-clamp: 2; /* 设置显示的行数 */
            -webkit-box-orient: vertical;
            overflow: hidden;
            text-overflow: ellipsis;
            .type {
              font-size: 30rpx;
              color: #d57a35;
              margin-right: 12rpx;
            }
            .normal {
              font-family: "PingFangSC";
              font-weight: 400;
              font-size: 30rpx;
              color: #130f05;
              line-height: 44rpx;
              text-align: left;
              font-style: normal;
            }
            .light {
              font-family: "PingFangSC";
              font-weight: 400;
              font-size: 30rpx;
              color: #ba922f;
              line-height: 44rpx;
              text-align: left;
              font-style: normal;
            }
          }

          .timeBox,
          .placeBox,
          .phone {
            width: 100%;
            font-family: "PingFangSC";
            font-weight: 400;
            font-size: 26rpx;
            color: #716f69;
            line-height: 38rpx;
            text-align: left;
            font-style: normal;
            .label {
              font-family: "PingFangSC";
              font-weight: 400;
              font-size: 26rpx;
              color: #716f69;
              line-height: 38rpx;
              text-align: left;
              font-style: normal;
              margin-right: 12rpx;
              width: 150rpx;
              display: inline-block;
            }
          }
        }

        .title {
          width: calc(100% - 72rpx);
          // text-overflow: ellipsis;
          // overflow: hidden;
          // white-space: nowrap;
          display: -webkit-box; /* 使用弹性盒模型 */
          -webkit-box-orient: vertical; /* 垂直排列 */
          overflow: hidden; /* 超出部分隐藏 */
          -webkit-line-clamp: 6; /* 限制最多显示多少行文本 */
          text-overflow: ellipsis; /* 超出部分用省略号显示 */
          .normal {
            font-family: PingFangSC, PingFang SC;
            font-weight: 400;
            font-size: 32rpx;
            color: #130f05;
            line-height: 44rpx;
            text-align: left;
            font-style: normal;
          }
          .light {
            font-family: PingFangSC, PingFang SC;
            font-weight: 400;
            font-size: 32rpx;
            color: #ba922f;
            line-height: 44rpx;
            text-align: left;
            font-style: normal;
          }
        }
        .timeBox {
          margin-top: 8rpx;
          display: flex;
          align-items: center;
          .timeIcon {
            width: 24rpx;
            height: 24rpx;
            margin-right: 8rpx;
          }
          .timeText {
            font-family: PingFangSC, PingFang SC;
            font-weight: 400;
            font-size: 24rpx;
            color: #716f69;
            line-height: 36rpx;
            text-align: left;
            font-style: normal;
          }
        }
        .phoneBox {
          margin-top: 4rpx;
          display: flex;
          align-items: center;
          .phoneIcon {
            width: 24rpx;
            height: 24rpx;
            margin-right: 8rpx;
          }
          .phoneText {
            font-family: PingFangSC, PingFang SC;
            font-weight: 400;
            font-size: 24rpx;
            color: #716f69;
            line-height: 36rpx;
            text-align: left;
            font-style: normal;
          }
        }

        .callPhoneBox {
          position: absolute;
          right: 24rpx;
          top: 24rpx;
          width: 64rpx;
          height: 64rpx;
          background: #f5f6f7;
          border-radius: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          .callPhoneIcon {
            width: 32rpx;
            height: 32rpx;
          }
        }
      }

      .inBottom {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        .bottomText {
          font-family: PingFangSC, PingFang SC;
          font-weight: 400;
          font-size: 26rpx;
          color: #d0d0d0;
          line-height: 40rpx;
          text-align: justify;
          font-style: normal;
          position: relative;
          padding: 6rpx 0;
        }
        .bottomText::after {
          content: "";
          width: 30vw;
          height: 2rpx;
          background: #e0e0e0;
          position: absolute;
          left: -32vw;
          top: 50%;
        }
        .bottomText::before {
          content: "";
          width: 30vw;
          height: 2rpx;
          background: #e0e0e0;
          position: absolute;
          right: -32vw;
          top: 50%;
        }
      }
    }
    .listBox ::-webkit-scrollbar {
      display: none;
    }
  }

  .addNewPost {
    width: calc(100% - 80rpx);
    margin-left: 40rpx;
    background: #ba922f;
    border-radius: 6rpx;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    justify-content: center;
    .newPostBox {
      display: inline-block;
      padding: 16rpx 24rpx;
      border-radius: 36rpx;
      background: #ba922f;
      .addIcon {
        width: 28rpx;
        height: 28rpx;
        margin-right: 8rpx;
      }
      .addText {
        font-family: "PingFangSC";
        font-weight: 400;
        font-size: 32rpx;
        color: #ffffff;
        line-height: 44rpx;
        text-align: center;
        font-style: normal;
      }
    }
  }

  .popupBox {
    width: 100vw;
    height: 80vh;
    background: #fff;

    .popupTitle {
      width: 100%;
      box-sizing: border-box;
      padding: 32rpx;
      display: flex;
      justify-content: space-between;
      align-items: center;
      .closeIcon {
        width: 32rpx;
        height: 32rpx;
      }
      .titleText {
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 32rpx;
        color: #130f05;
        line-height: 44rpx;
        text-align: left;
        font-style: normal;
      }
    }
    .popupList {
      width: 100%;
      height: calc(100% - 250rpx);
      display: flex;
      align-items: center;
      .popupLeftBox {
        width: 200rpx;
        height: 100%;
        background: #f5f6f7;
        overflow-y: auto;
        .itemType {
          width: 100%;
          box-sizing: border-box;
          padding: 24rpx 0;
          font-family: PingFangSC, PingFang SC;
          font-weight: 400;
          font-size: 28rpx;
          color: #130f05;
          line-height: 40rpx;
          text-align: center;
          font-style: normal;
        }
        .selectType {
          color: #ba922f;
          background: #fff;
        }
      }
      .popupRightBox {
        width: calc(100% - 200rpx);
        height: 100%;
        background: #fff;
        box-sizing: border-box;
        padding: 0 50rpx 0 32rpx;
        overflow-y: auto;
        .rightItem {
          width: 100%;
          margin-bottom: 24rpx;
          .itemTitle {
            font-family: PingFangSC, PingFang SC;
            font-weight: 400;
            font-size: 28rpx;
            color: #130f05;
            line-height: 40rpx;
            text-align: left;
            font-style: normal;
            margin-bottom: 16rpx;
          }
          .rightTypeList {
            width: 100%;
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            .rightType {
              display: block;
              width: calc((100% - 48rpx) / 3);
              height: 64rpx;
              font-family: PingFangSC, PingFang SC;
              font-weight: 400;
              font-size: 28rpx;
              color: #716f69;
              line-height: 40rpx;
              font-style: normal;
              background: #f5f6f7;
              border-radius: 4rpx;
              display: flex;
              align-items: center;
              justify-content: center;
              margin-bottom: 16rpx;
              margin-right: 16rpx;
            }
            .selectRightType {
              color: #ffffff;
              background: #ba922f;
            }
          }
        }
      }
      .popupLeftBox::-webkit-scrollbar {
        display: none;
      }
      .popupRightBox::-webkit-scrollbar {
        display: none;
      }
    }

    .btnBox {
      width: 100%;
      box-sizing: border-box;
      padding: 16rpx 40rpx;
      .btn {
        width: 100%;
        background: #ba922f;
        border-radius: 6rpx;
        text-align: center;
        font-family: PingFangSC, PingFang SC;
        font-weight: 400;
        font-size: 32rpx;
        color: #ffffff;
        line-height: 44rpx;
        text-align: center;
        font-style: normal;
        padding: 22rpx 0;
      }
    }
  }
}
</style>