王恒
2025-09-04 616e6be49d3f64f2397cb1b1c05d2c06df3db9a3
qiye/record/record.vue
@@ -1,48 +1,57 @@
<template>
   <view>
  <view>
      <u-sticky bgColor="white">
         <u-navbar title="执法记录" :autoBack="true" placeholder>
            <view slot="left"></view>
         </u-navbar>
         <u-tabs :list="list" @change="click" :current="current" :scrollable="false" bgColor="white"></u-tabs>
      </u-sticky>
      <view class="item" v-for="(item,index) in list1">
         <img src="/static/i05.png" class="img" alt="" />
         <view class="right">
            <view class="name">
               <view class="l">
                  {{item.companyName}}
               </view>
               <template v-if="item.orderStatus==2">
                  <view class="r color3">
                     未执法
                  </view>
               </template>
               <template v-if="item.isEva==0">
                  <view class="r color2">
                     待评价
                  </view>
               </template>
               <template v-if="item.isEva==1">
                  <view class="r color1">
                     已评价
                  </view>
               </template>
            </view>
            <view class="box">
               <view class="l">
                  <p style="display: flex;justify-content: flex-start;align-items: flex-start;"><text style="display: inline-block;width: 35%;">执法单位:</text> <text style="display: inline-block;width: 65%;">{{item.executeDeptName|| item.applyDeptName}}</text></p>
                  <p>执法时间:{{item.inTime || item.planTime}}</p>
               </view>
               <view class="r" @click="chakan(item.orderId)">
                  去查看
               </view>
            </view>
         </view>
      </view>
      <u-empty v-if="!list1.length"></u-empty>
      <!-- <view class="item">
    <u-sticky bgColor="white">
      <u-navbar title="执法记录" :autoBack="true" placeholder>
        <view slot="left"></view>
      </u-navbar>
      <u-tabs :list="list" @change="click" :current="current" :scrollable="false" bgColor="white"></u-tabs>
    </u-sticky>
    <view class="item" v-for="(item,index) in list1">
      <img src="/static/i05.png" class="img" alt="" />
      <view class="right">
        <view class="name">
          <view class="l">
            {{item.enforceReason}}
          </view>
          <!--  <template v-if="item.orderStatus==2">
            <view class="r color3">
              未执法
            </view>
          </template>
          <template v-if="item.isEva==0">
            <view class="r color2">
              待评价
            </view>
          </template>
          <template v-if="item.isEva==1">
            <view class="r color1">
              已评价
            </view>
          </template> -->
        </view>
        <view class="box">
          <view class="l">
            <p style="display: flex;justify-content: flex-start;align-items: flex-start;"><text
                style="display: inline-block;width: 35%;">执法单位:</text> <text
                style="display: inline-block;width: 65%;">{{item.executeDeptName|| item.applyDeptName}}</text></p>
            <p>执法时间:{{item.inTime || item.planTime}}</p>
          </view>
          <!-- 综合查一次 -->
          <view v-if="item.orderType == 2" class="r" @click="jumpCompositeDetail(item.comprehensiveId)">
            去查看
          </view>
          <!-- 正常情况 -->
          <view v-else class="r" @click="chakan(item.orderId)">
            去查看
          </view>
        </view>
      </view>
    </view>
    <u-empty v-if="!list1.length"></u-empty>
    <!-- <view class="item">
         <img src="/static/i05.png" class="img" alt="" />
         <view class="right">
            <view class="name">
@@ -86,186 +95,208 @@
            </view>
         </view>
      </view> -->
      <view style="height: 150rpx;"></view>
      <tabsCom :activeNumber.sync="activeNumber"></tabsCom>
    <view style="height: 150rpx;"></view>
    <tabsCom :activeNumber.sync="activeNumber"></tabsCom>
   </view>
  </view>
</template>
<script>
   import tabsCom from '@/qiye/components/bottom.vue'
   import {
      companyList
   } from '@/api/qiye.js'
  import tabsCom from '@/qiye/components/bottom.vue'
  import {
    companyList
  } from '@/api/qiye.js'
   export default {
      components: {
         tabsCom
      },
      data() {
         return {
            activeNumber: 1,
            list: [{
               name: '全部',
               value: {
  export default {
    components: {
      tabsCom
    },
    data() {
      return {
        activeNumber: 1,
        list: [
          //       {
          //    name: '全部',
          //    value: {
               }
            }, {
               name: '待评价',
               value: {
                  isEva: 0
               }
            }, {
               name: '未执法',
               value: {
                  orderStatus: 2
               }
            }, {
               name: '已评价',
               value: {
                  isEva: 1
               }
            }],
            current: 0,
            list1: [],
            queryParams: {
               pageNum: 1,
               pageSize: 10,
               companyId: '',
            },
            total: 1,
         }
      },
      onShow() {
         this.list1 = []
         this.queryParams.pageNum = 1
         this.getList()
      },
      onReachBottom() {
         if (this.list1.length == this.total) {
            return
         }
         this.queryParams.pageNum++
         this.getList()
      },
      methods: {
         chakan(id) {
            uni.navigateTo({
               url: `/qiye/record/details?id=${id}`
            })
         },
         getList() {
            let data = uni.getStorageSync("qiyedata")
            this.queryParams.companyId = data.companyId
            companyList({
               ...this.queryParams,
               ...this.list[this.current].value
            }).then(val => {
               // console.log(val.data)
               this.total = val.data.total
               this.list1 = [...this.list1, ...val.data.rows]
            })
         },
         click(i) {
            this.list1 = []
            this.queryParams.pageNum = 1
            this.current = i.index
            // console.log(i.index)
          //    }
          // }, {
          //    name: '未执法',
          //    value: {
          //       orderStatus: 2
          //    }
          // },
          {
            name: '待确认',
            value: {
              orderStatus: 4
            }
          }, {
            name: '待评价',
            value: {
              isEva: 0,
              orderStatus: 5
            }
          }, {
            name: '已评价',
            value: {
              isEva: 1
            }
          }
        ],
        current: 0,
        list1: [],
        queryParams: {
          pageNum: 1,
          pageSize: 10,
          companyId: '',
        },
        total: 1,
      }
    },
    onShow() {
      this.list1 = []
      this.queryParams.pageNum = 1
      this.getList()
    },
    onReachBottom() {
      if (this.list1.length == this.total) {
        return
      }
      this.queryParams.pageNum++
      this.getList()
    },
    methods: {
      chakan(id) {
        uni.navigateTo({
          url: `/qiye/record/details?id=${id}`
        })
      },
            // if(i.index==1){
            //    this.queryParams.isEva = 0
            // }
            // if(i.index==2){
            //    this.queryParams.orderStatus = 2
            // }
            // if(i.index==3){
            //    this.queryParams.isEva = 1
            // }
            this.getList()
         }
      }
   }
      // 综合查一次
      jumpCompositeDetail(id) {
        uni.navigateTo({
          url: `/qiye/record/compositeDetails?id=${id}`
        })
      },
      getList() {
        uni.showLoading({
          title: '加载中...',
          mask: true
        })
        let data = uni.getStorageSync("qiyedata")
        this.queryParams.companyId = data.companyId
        companyList({
          ...this.queryParams,
          ...this.list[this.current].value
        }).then(val => {
          this.total = val.data.total
          this.list1 = [...this.list1, ...val.data.rows]
        }).catch(err => {
          uni.hideLoading()
        })
      },
      click(i) {
        this.list1 = []
        this.queryParams.pageNum = 1
        this.current = i.index
        // console.log(i.index)
        // if(i.index==1){
        //    this.queryParams.isEva = 0
        // }
        // if(i.index==2){
        //    this.queryParams.orderStatus = 2
        // }
        // if(i.index==3){
        //    this.queryParams.isEva = 1
        // }
        this.getList()
      }
    }
  }
</script>
<style>
   page {
      background: #f4f4f4;
   }
  page {
    background: #f4f4f4;
  }
</style>
<style lang="scss" scoped>
   .item {
      background: #fff;
      border-radius: 5px;
      padding: 24rpx;
      box-sizing: border-box;
      margin: 20rpx 32rpx;
      display: flex;
  .item {
    background: #fff;
    border-radius: 5px;
    padding: 24rpx;
    box-sizing: border-box;
    margin: 20rpx 32rpx;
    display: flex;
      .img {
         width: 56rpx;
         height: 56rpx;
      }
    .img {
      width: 56rpx;
      height: 56rpx;
    }
      .right {
         width: 90%;
    .right {
      width: 90%;
         .name {
            display: flex;
            justify-content: space-between;
      .name {
        display: flex;
        justify-content: space-between;
            .l {
               color: #202d44;
               font-size: 32rpx;
               line-height: 44rpx;
               margin-bottom: 24rpx;
               width: 80%;
            }
        .l {
          color: #202d44;
          font-size: 32rpx;
          line-height: 44rpx;
          margin-bottom: 24rpx;
          width: 80%;
        }
            .r {
               font-size: 28rpx;
               width: 20%;
               text-align: right;
            }
         }
        .r {
          font-size: 28rpx;
          width: 20%;
          text-align: right;
        }
      }
         .box {
            display: flex;
            justify-content: space-between;
      .box {
        display: flex;
        justify-content: space-between;
            .l {
               font-size: 26rpx;
               color: #7e8593;
               max-width: 80%;
            }
        .l {
          font-size: 26rpx;
          color: #7e8593;
          max-width: 80%;
        }
            .r {
               width: 132rpx;
               height: 64rpx;
               line-height: 64rpx;
               border-radius: 5px;
               border: 1px solid #ABD2FF;
               background: #F0F8FF;
               color: #1171e0;
               text-align: center;
               font-size: 30rpx;
            }
         }
      }
   }
        .r {
          width: 132rpx;
          height: 64rpx;
          line-height: 64rpx;
          border-radius: 5px;
          border: 1px solid #ABD2FF;
          background: #F0F8FF;
          color: #1171e0;
          text-align: center;
          font-size: 30rpx;
        }
      }
    }
  }
   .color1 {
      color: #FE7B32;
      //cheng
   }
  .color1 {
    color: #FE7B32;
    //cheng
  }
   .color2 {
      color: #EB4746;
  .color2 {
    color: #EB4746;
      //hong
   }
    //hong
  }
   .color3 {
      color: #3EB47A;
      //lv
   }
  .color3 {
    color: #3EB47A;
    //lv
  }
</style>