智慧园区前端大屏
shuishen
2024-11-26 ecdffd165cf73c0e3c051c69d1dfdc71ba9331c8
src/views/supplies/components/box/dataContent.vue
@@ -3,7 +3,9 @@
    <template #content>
      <div class="content_box">
        <div class="list_box">
          <span class="content_span" @click="scrollLeft">《</span>
          <span class="content_span" @click="scrollLeft">
            <img src="@/assets/images/left.png" alt="">
          </span>
          <el-scrollbar ref="scrollbarRef" @scroll="scroll">
            <div class="scrollbar-flex-content">
              <p v-for="(item, index) in tilteList" @click="handleClick(item, index)" :key="index"
@@ -12,12 +14,14 @@
              </p>
            </div>
          </el-scrollbar>
          <span class="content_span" @click="scrollRight">》</span>
          <span class="content_span" @click="scrollRight">
            <img src="@/assets/images/right.png" alt="">
          </span>
        </div>
        <div class="page_box">
          <div>
            <el-table empty-text="" v-if="formInline.ownership == 1" :data="tableData">
            <el-table border empty-text="" v-if="formInline.ownership == 1" :data="tableData">
              <el-table-column prop="name" label="物资名称" />
              <el-table-column prop="personInCha" label="负责人" width="150" />
              <el-table-column prop="personInChaPhone" label="负责人电话" width="250" />
@@ -25,13 +29,12 @@
              <el-table-column prop="numUnit" label="数量" width="150" />
            </el-table>
            <el-table empty-text="" v-else :data="tableData">
              <!-- <el-table-column prop="firmName" label="企业名称" /> -->
            <el-table border empty-text="" v-else :data="tableData">
              <el-table-column prop="name" label="物资名称" />
              <!-- <el-table-column prop="personInCha" label="负责人" /> -->
              <!-- <el-table-column prop="personInChaPhone" label="负责人电话" /> -->
              <el-table-column prop="personInCha" label="负责人" width="150" />
              <el-table-column prop="personInChaPhone" label="负责人电话" width="250" />
              <el-table-column prop="stoLoc" label="物资地址" />
              <el-table-column prop="num" label="数量" />
              <el-table-column prop="numUnit" label="数量" />
            </el-table>
          </div>
        </div>
@@ -41,32 +44,32 @@
</template>
<script setup>
import publicContent from "./publicContent.vue";
import { getList, getCompanyList } from "@/api/emergencySupplies/emergencySupplies";
import publicContent from "./publicContent.vue"
import { getList, getCompanyList } from "@/api/emergencySupplies/emergencySupplies"
import { getPage } from '@/api/indParkInfo'
import { reactive, ref, onMounted } from "vue";
import { ElScrollbar } from 'element-plus';
import { reactive, ref, onMounted } from "vue"
import { ElScrollbar } from 'element-plus'
const loading = ref(false);
const loading = ref(false)
const tableData = ref([]);
const tableData = ref([])
const pages = {
  page: 1,
  pageSize: 1000,
  total: 0,
};
}
let currentIndex = ref(0)
// 园区 企业
const tilteList = ref([
  { label: "吉水化工园区", value: "0", id: "1" }
]);
])
onMounted(() => {
  getLists(formInline);
  getLists(formInline)
  getCompanyPages()
});
})
// const objectSpanMethod = ({ row, column, rowIndex, columnIndex }) => {
//   if (columnIndex === 0) {
@@ -84,18 +87,18 @@
//   }
// }
const scrollbarRef = ref(null);
const scrollbarRef = ref(null)
// 搜索条件
const formInline = reactive({
  firmId: '',
  ownership: 1,
});
})
function getCompanyPages(param = {}) {
  param.current = pages.page;
  param.size = pages.pageSize;
  param.current = pages.page
  param.size = pages.pageSize
  getPage(param).then(res => {
    let companyList = res.data.data.records
    companyList.forEach(item => {
@@ -117,7 +120,7 @@
  if (item.id == 1) {
    formInline.firmId = ''
    formInline.ownership = 1
    getLists(formInline);
    getLists(formInline)
  } else {
    formInline.firmId = item.id
    formInline.ownership = 2
@@ -162,56 +165,56 @@
// 查询分页数据
function getLists(param = {}) {
  param.current = pages.page;
  param.size = pages.pageSize;
  loading.value = true;
  param.current = pages.page
  param.size = pages.pageSize
  loading.value = true
  getList(param)
    .then((res) => {
      const data = res.data.data;
      tableData.value = data.records;
      pages.total = data.total;
      loading.value = false;
      const data = res.data.data
      tableData.value = data.records
      pages.total = data.total
      loading.value = false
    })
    .catch((err) => {
      loading.value = false;
      console.log(err);
    });
      loading.value = false
      console.log(err)
    })
}
// 查询分页数据
function getComLists(param = {}) {
  param.current = pages.page;
  param.size = pages.pageSize;
  loading.value = true;
  param.current = pages.page
  param.size = pages.pageSize
  loading.value = true
  getCompanyList(param)
    .then((res) => {
      const data = res.data.data;
      tableData.value = data.dataList;
      pages.total = data.total;
      loading.value = false;
      const data = res.data.data
      tableData.value = data.dataList
      pages.total = data.total
      loading.value = false
    })
    .catch((err) => {
      loading.value = false;
      console.log(err);
    });
      loading.value = false
      console.log(err)
    })
}
// 滚动到左边
const scrollLeft = () => {
  if (scrollbarRef.value) {
    const currentScrollLeft = scrollbarRef.value.wrapRef.scrollLeft;
    const step = 500; // 每次滚动的距离
    scrollbarRef.value.wrapRef.scrollLeft = currentScrollLeft - step;
    const currentScrollLeft = scrollbarRef.value.wrapRef.scrollLeft
    const step = 500 // 每次滚动的距离
    scrollbarRef.value.wrapRef.scrollLeft = currentScrollLeft - step
  }
}
// 滚动到右边
const scrollRight = () => {
  if (scrollbarRef.value) {
    const currentScrollLeft = scrollbarRef.value.wrapRef.scrollLeft;
    const step = 500; // 每次滚动的距离
    scrollbarRef.value.wrapRef.scrollLeft = currentScrollLeft + step;
    const currentScrollLeft = scrollbarRef.value.wrapRef.scrollLeft
    const step = 500 // 每次滚动的距离
    scrollbarRef.value.wrapRef.scrollLeft = currentScrollLeft + step
  }
}
</script>
@@ -240,16 +243,27 @@
  margin: 10px;
  padding: 0 5px;
  text-align: center;
  border-radius: 4px;
  // background: var(--el-color-danger-light-9);
  background-color: rgba(117, 116, 116, 0.3);
  // color: var(--el-color-danger);
  // color: #000;
  border-radius: 10px;
  box-shadow: inset 0 0 40px #409eff;
  cursor: pointer;
}
.content_box .content_span {
  line-height: 70px;
  margin: 0 15px;
  cursor: pointer;
  & img {
    // 图片上下居中
    vertical-align: middle;
    width: 30px;
    height: 30px;
  }
  & img:hover {
    box-shadow: inset 0 0 40px #fff;
    border-radius: 10px;
  }
}
.page_box .el-table {
@@ -259,8 +273,8 @@
}
.active {
  background-color: rgba(255, 255, 255, 0.3);
  color: #fff;
  border-radius: 10px;
  // color: #409eff;
  // border-radius: 10px;
  box-shadow: inset 0 0 100px #2a8ef1;
}
</style>