1
wangyi
2026-03-12 f5bcbefaf9bbaa1d4d2ff3b8805d751c1ed3939a
pages/index/tab4.vue
@@ -1,118 +1,118 @@
<template>
   <view class="content">
      <view class="header">
         <view class="switch-button">
            <uni-icons type="loop" @click="switchIconsModeHandler"></uni-icons>
         </view>
      </view>
      <view class="mains">
         <view v-if="!canEdit" :hidden="item.hidden||!item.id" class="box" v-for="(item,index) in itemData" :key="index"
            @tap="toUrl(item)">
            <image :src="item.img" mode=""></image>
            <view class="texts">
               {{item.text}}
            </view>
         </view>
         <view :enable-hidden="item.hidden" :hidden="!item.id" v-if="canEdit" class="box edit" v-for="(item,index) in itemData"
            :key="index" @tap="switchHidden(index)">
            <uni-icons class="edit-mark" color="red" type="closeempty"></uni-icons>
            <image :src="item.img" mode=""></image>
            <view class="texts">
               {{item.text}}
            </view>
         </view>
      </view>
   </view>
    <view class="content">
        <view class="header">
            <view class="switch-button">
                <uni-icons type="loop" @click="switchIconsModeHandler"></uni-icons>
            </view>
        </view>
        <view class="mains">
            <view v-if="!canEdit" :hidden="item.hidden||!item.id" class="box" v-for="(item,index) in itemData"
                :key="index" @tap="toUrl(item)">
                <image :src="item.img" mode=""></image>
                <view class="texts">
                    {{item.text}}
                </view>
            </view>
            <view :enable-hidden="item.hidden" :hidden="!item.id" v-if="canEdit" class="box edit"
                v-for="(item,index) in itemData" :key="index" @tap="switchHidden(index)">
                <uni-icons class="edit-mark" color="red" type="closeempty"></uni-icons>
                <image :src="item.img" mode=""></image>
                <view class="texts">
                    {{item.text}}
                </view>
            </view>
        </view>
    </view>
</template>
<script>
   import {
      CommonUtils
   } from '../../utils/common'
   import {
      getMenuList,
      setMenuList
   } from '../../utils/menuListApp'
   import {
      getUserInfo
   } from '../../utils/auth'
   export default {
      data() {
         return {
            updateCount: 0,
            menuListName: 'tab4',
            canEdit: false,
            serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
            itemData: [
               {
                  "img": "../../static/icon/icon13.png",
                  "text": "首件检验单",
                  "url": "/pages/ZLGL/shoujianjianyan/firstCheckBill?operationType=1",
                  "id": 1,
                  "hidden": false
               },
               {
                   "img": "../../static/icon/icon8.png",
                   "text": "巡检检验单",
                   "url": "/pages/ZLGL/xunjianjianyan/PatrolProcCheckBill?operationType=1",
                   "id": 2,
                   "hidden": false
               },
               {
                   "img": "../../static/icon/icon8.png",
                   "text": "末件检验单",
                   "url": "/pages/ZLGL/mojianjianyan/ProcessCheckBill?operationType=1",
                   "id": 3,
                   "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "来料检验单",
                  "url": "/pages/ZLGL/lailiaojianyan/POStockInCheckBill",
                  "id": 4,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "生产入库检验单",
                  "url": "/pages/ZLGL/shengchanrukujiaoyan/QC_LastPieceCheckBill_v2",
                  "id": 5,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "出厂校验单",
                  "url": "/pages/ZLGL/chuchangjiaoyandan/QC_OutCompCheckBill",
                  "id": 6,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "来料检验(批量)",
                  "url": "/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast",
                  "id": 7,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "全检检验单",
                  "url": "/pages/ZLGL/QualityReportStep/QualityReportStepBill",
                  "id": 8,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "车间自检单",
                  "url": "/pages/ZLGL/WorkSelfCheckBill/WorkSelfCheckBill",
                  "id": 9,
                  "hidden": false
               },
               {
    import {
        CommonUtils
    } from '../../utils/common'
    import {
        getMenuList,
        setMenuList
    } from '../../utils/menuListApp'
    import {
        getUserInfo
    } from '../../utils/auth'
    export default {
        data() {
            return {
                updateCount: 0,
                menuListName: 'tab4',
                canEdit: false,
                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
                itemData: [
                    {
                        "img": "../../static/icon/icon13.png",
                        "text": "首件检验单",
                        "url": "/pages/ZLGL/shoujianjianyan/firstCheckBill?operationType=1",
                        "id": 1,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "巡检检验单",
                        "url": "/pages/ZLGL/xunjianjianyan/PatrolProcCheckBill?operationType=1",
                        "id": 2,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "末件检验单",
                        "url": "/pages/ZLGL/mojianjianyan/ProcessCheckBill?operationType=1",
                        "id": 3,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "来料检验单",
                        "url": "/pages/ZLGL/lailiaojianyan/POStockInCheckBill",
                        "id": 4,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "生产入库检验单",
                        "url": "/pages/ZLGL/shengchanrukujiaoyan/QC_LastPieceCheckBill_v2",
                        "id": 5,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "出厂校验单",
                        "url": "/pages/ZLGL/chuchangjiaoyandan/QC_OutCompCheckBill",
                        "id": 6,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "来料检验(批量)",
                        "url": "/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast",
                        "id": 7,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "全检检验单",
                        "url": "/pages/ZLGL/QualityReportStep/QualityReportStepBill",
                        "id": 8,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "车间自检单",
                        "url": "/pages/ZLGL/WorkSelfCheckBill/WorkSelfCheckBill",
                        "id": 9,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon8.png",
                        "text": "在库检验单",
                        "url": "/pages/ZLGL/zaikujianyandan/InStockCheckBill",
@@ -132,6 +132,7 @@
                  "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackReceiveBill/OA_ErrMsgBackReceiveBill",
                  "id": 12,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon15.png",
@@ -148,34 +149,107 @@
                  "hidden": false
               },
                    {
                       "img": "../../static/icon/icon15.png",
                       "text": "异常反馈验收单",
                       "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackCheckBill/OA_ErrMsgBackCheckBill",
                       "id": 15,
                       "hidden": false
                        "img": "../../static/icon/icon15.png",
                        "text": "异常反馈单",
                        "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackBill/OA_ErrMsgBackBill",
                        "id": 11,
                        "hidden": false
                    },
                    {
                       "img": "../../static/icon/icon15.png",
                       "text": "工作联系单",
                       "url": "/pages/ZLGL/OA_WorkLink/OA_WorkLinkBill?OperationType=1",
                       "id": 16,
                       "hidden": false
                        "img": "../../static/icon/icon15.png",
                        "text": "异常反馈接收单",
                        "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackReceiveBill/OA_ErrMsgBackReceiveBill",
                        "id": 12,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon15.png",
                        "text": "异常反馈签到单",
                        "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackSignBill/OA_ErrMsgBackSignBill",
                        "id": 13,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon15.png",
                        "text": "异常反馈处理单",
                        "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackHandleBill/OA_ErrMsgBackHandleBill",
                        "id": 14,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon15.png",
                        "text": "异常反馈验收单",
                        "url": "/pages/ZLGL/AanDengHujiao/OA_ErrMsgBackCheckBill/OA_ErrMsgBackCheckBill",
                        "id": 15,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon15.png",
                        "text": "工作联系单",
                        "url": "/pages/ZLGL/OA_WorkLink/OA_WorkLinkBill?OperationType=1",
                        "id": 16,
                        "hidden": false
                    },
                    // {
                    //    "img": "../../static/icon/icon15.png",
                    //    "text": "取样单",
                    //    "url": "/pages/ZLGL/QuYangHuangYang/QC_TakeSampleCheckBill/QC_TakeSampleCheckBill?operationType=0",
                    //    "id": 17,
                    //    "hidden": false
                    // },
                    {
                        "img": "../../static/icon/icon15.png",
                        "text": "还样单",
                        "url": "/pages/ZLGL/QuYangHuangYang/QC_TakeSampleCheckBill/QC_TakeSampleCheckBill?operationType=0",
                        "id": 18,
                        "hidden": false
                    },
                    {
                        "img": "../../static/icon/icon15.png",
                        "text": "待检验列表",
                        "url": "/pages/ZLGL/awaitCheckBillList/awaitCheckBillList",
                        "id": 19,
                        "hidden": false
                    },
                {
                        "img": "../../static/icon/icon15.png",
                        "text": "投料防错",
                        "url": "/pages/ZLGL/Gy_MaterialPrevention/Gy_MaterialPrevention",
                        "id": 20,
                        "hidden": false
                    },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "环境检测单",
                  "url": "/pages/ZLGL/QcenvironmentTestDotCheckBill/QcenvironmentTestDotCheckBill",
                  "id": 55,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon8.png",
                  "text": "环境检测单查询",
                  "url": "/pages/ZLGL/QcenvironmentTestDotCheckBill/QCEnvironmentTestDotCheckBillList",
                  "id": 55,
                  "hidden": false,
               },
               {
                  "img": "../../static/icon/icon15.png",
                  "text": "取样单",
                  "url": "/pages/ZLGL/QuYangHuangYang/QC_TakeSampleCheckBill/QC_TakeSampleCheckBill?operationType=0",
                  "id": 17,
                  "text": "不良品评审单",
                  "url": "/pages/ZLGL/QCNoPassProdDisposeBillMainList/QCNoPassProdDisposeBillMain",
                  "id": 55,
                  "hidden": false
               },
               {
                  "img": "../../static/icon/icon15.png",
                  "text": "还样单",
                  "url": "/pages/ZLGL/QuYangHuangYang/QC_TakeSampleCheckBill/QC_TakeSampleCheckBill?operationType=0",
                  "id": 18,
                  "hidden": false
                  "text": "不良品评审单列表",
                  "url": "/pages/ZLGL/QCNoPassProdDisposeBillMainList/QCNoPassProdDisposeBillMainList",
                  "id": 55,
                  "hidden": false,
               },
            ]
         }
      },
@@ -200,119 +274,119 @@
            this.itemData[index].hidden = !this.itemData[index].hidden
            
         },
         switchIconsModeHandler() {
            this.canEdit = !this.canEdit
            if (this.canEdit == false && this.updateCount > 0) {
               this.$nextTick(() => {
                  // uni.setStorageSync("HIndexItemData", this.itemData)
                  setMenuList({
                     menuName: this.menuListName,
                     payload: this.itemData
                  })
            switchIconsModeHandler() {
                this.canEdit = !this.canEdit
                if (this.canEdit == false && this.updateCount > 0) {
                    this.$nextTick(() => {
                        // uni.setStorageSync("HIndexItemData", this.itemData)
                        setMenuList({
                            menuName: this.menuListName,
                            payload: this.itemData
                        })
                  this.updateCount = 0
               })
            }
            this.$forceUpdate()
         },
         toUrl(item) {
            if (item.url) {
               uni.navigateTo({
                  url: item.url
               })
            } else {
               uni.showToast({
                  title: '功能开发中。。。',
                  icon: 'none'
               })
            }
         }
      }
   }
                        this.updateCount = 0
                    })
                }
                this.$forceUpdate()
            },
            toUrl(item) {
                if (item.url) {
                    uni.navigateTo({
                        url: item.url
                    })
                } else {
                    uni.showToast({
                        title: '功能开发中。。。',
                        icon: 'none'
                    })
                }
            }
        }
    }
</script>
<style lang="scss" scoped>
   // .mains{
   //    width: 720rpx;
   //    margin: 0 auto;
   //    display: flex;
   //    flex-wrap: wrap;
   //    margin-top: 10rpx;
   //    padding-bottom: 80rpx;
   //    .box{
   //       width: 100%;
   //       margin: 26rpx 26rpx 0 26rpx;
   //       padding: 0 0 16rpx 10rpx;
   //       display: flex;
   //       align-items: center;
   //       border-bottom: 1px solid #f0f0f0;
   //       image{
   //          width: 52rpx;
   //          height: 52rpx;
   //       }
   //       .texts{
   //          font-size: 30rpx;
   //          color: #333333;
   //          margin-left: 30rpx;
   //       }
   //    }
   // }
    // .mains{
    //    width: 720rpx;
    //    margin: 0 auto;
    //    display: flex;
    //    flex-wrap: wrap;
    //    margin-top: 10rpx;
    //    padding-bottom: 80rpx;
    //    .box{
    //       width: 100%;
    //       margin: 26rpx 26rpx 0 26rpx;
    //       padding: 0 0 16rpx 10rpx;
    //       display: flex;
    //       align-items: center;
    //       border-bottom: 1px solid #f0f0f0;
    //       image{
    //          width: 52rpx;
    //          height: 52rpx;
    //       }
    //       .texts{
    //          font-size: 30rpx;
    //          color: #333333;
    //          margin-left: 30rpx;
    //       }
    //    }
    // }
   .header {
      width: 100%;
      height: 2em;
      position: relative;
    .header {
        width: 100%;
        height: 2em;
        position: relative;
      .switch-button {
         position: absolute;
         right: 10rpx;
         bottom: 0;
      }
   }
        .switch-button {
            position: absolute;
            right: 10rpx;
            bottom: 0;
        }
    }
   .mains {
      width: 720rpx;
      margin: 0 auto;
      display: flex;
      flex-wrap: wrap;
      padding-bottom: 80rpx;
    .mains {
        width: 720rpx;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        padding-bottom: 80rpx;
      .box {
         width: 25%;
         margin-top: 2.5vh;
         text-align: center;
        .box {
            width: 25%;
            margin-top: 2.5vh;
            text-align: center;
         image {
            width: 18vw;
            height: 18vw;
         }
            image {
                width: 18vw;
                height: 18vw;
            }
         .texts {
            width: 120rpx;
            margin: 0 auto;
            font-size: 29rpx;
            font-weight: normal;
            color: #333333;
            margin-top: .2vh;
         }
      }
            .texts {
                width: 120rpx;
                margin: 0 auto;
                font-size: 29rpx;
                font-weight: normal;
                color: #333333;
                margin-top: .2vh;
            }
        }
      .edit {
         position: relative;
      }
        .edit {
            position: relative;
        }
      .edit-mark {
         position: absolute;
         top: 0;
         right: 0;
      }
        .edit-mark {
            position: absolute;
            top: 0;
            right: 0;
        }
      view[enable-hidden] {
         opacity: .4 !important;
      }
        view[enable-hidden] {
            opacity: .4 !important;
        }
      view[hidden] {
         display: none;
      }
   }
        view[hidden] {
            display: none;
        }
    }
</style>