From cacb02dce3abddebd02f52fa78614c301abcf36f Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期三, 21 一月 2026 14:58:37 +0800
Subject: [PATCH] 完善 APP 设备状态查询

---
 pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBillList.vue   |   29 
 pages/MJGL/Sc_OEEStatusReport/Sc_OEEStatusReport.vue       |  313 +++++++++
 pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill.vue     |  938 +++++++++++++++++++++++++++++
 pages/index/tab3.vue                                       |   16 
 pages.json                                                 |   23 
 pages/index/tab2.vue                                       |    2 
 pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess.vue |   25 
 pages/shebeiyunxingzhuangtai/detail.vue                    |   74 +
 pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBillList.vue |  460 ++++++++++++++
 9 files changed, 1,815 insertions(+), 65 deletions(-)

diff --git a/pages.json b/pages.json
index 7f64a70..26cbe31 100644
--- a/pages.json
+++ b/pages.json
@@ -1620,7 +1620,7 @@
 		    "path" : "pages/MJGL/Sb_EquipStop/Sb_EquipStopBill",
 		    "style" : 
 		    {
-		        "navigationBarTitleText" : ""
+		        "navigationBarTitleText" : "璁惧鍋滄満鍗�"
 		    }
 		},
 		{
@@ -1643,6 +1643,27 @@
 		    {
 		        "navigationBarTitleText" : "璁惧宸ヨ壓璺嚎"
 		    }
+		},
+		{
+		    "path" : "pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill",
+		    "style" : 
+		    {
+		        "navigationBarTitleText" : "璁惧缁翠慨璁板綍鍗�"
+		    }
+		},
+		{
+		    "path" : "pages/MJGL/Sc_OEEStatusReport/Sc_OEEStatusReport",
+		    "style" : 
+		    {
+		        "navigationBarTitleText" : "璁惧鐘舵��"
+		    }
+		},
+		{
+		    "path" : "pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBillList",
+		    "style" : 
+		    {
+		        "navigationBarTitleText" : "璁惧缁翠慨璁板綍鍗曞垪琛�"
+		    }
 		}
 		
 
diff --git a/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill.vue b/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill.vue
new file mode 100644
index 0000000..17ddc2b
--- /dev/null
+++ b/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill.vue
@@ -0,0 +1,938 @@
+<template>
+    <view>
+        <view class="tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+            <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鍏朵粬淇℃伅</view>
+        </view>
+        <!-- 鍩烘湰淇℃伅 -->
+        <template v-if="tabs == 0">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">璁惧鏉$爜:</view>
+                    <view :class="enableEdit?'right':'righton'">
+                        <input v-model="hform.HBarCode" :disabled="!enableEdit"
+                            @confirm="GetMessageByBarCode(hform.HBarCode)" placeholder="璇疯緭鍏�(鎴栨壂鎻�)璁惧鏉$爜" />
+                    </view>
+                    <view class="icon-wrapper">
+                        <uni-icons type="scan" size="20" @click="toScanCode"></uni-icons>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨寮�濮�:</view>
+                    <view class="right">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HRepairPlanBeginDate">
+                            <input :value="hform.HRepairBeginDate" />
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨缁撴潫:</view>
+                    <view class="right">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HRepairPlanEndDate">
+                            <input :value="hform.HRepairEndDate" />
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨鍐呭:</view>
+                    <view class="right">
+                        <textarea v-model="hform.HRepairContent" placeholder="璇疯緭鍏ョ淮淇唴瀹�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�:</view>
+                    <view class="righton">
+                        <input disabled v-model="hform.HBillNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鏃ユ湡:</view>
+                    <view class="righton">
+                        <input disabled v-model="hform.HDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">婧愬崟绫诲瀷:</view>
+                    <zxz-uni-data-select class="right" :localdata="[
+                        {key: '璁惧缁翠慨鐧昏鍗�', value: '璁惧缁翠慨鐧昏鍗�'},
+                        {key: '鎵嬪伐褰曞叆', value: '鎵嬪伐褰曞叆'},
+                        {key: '璁惧缁翠慨娲惧伐鍗�', value: '璁惧缁翠慨娲惧伐鍗�'},
+                    ]" dataKey="key" dataValue="value" v-model="hform.HMainSourceBillType">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏁呴殰鐧昏鍗�:</view>
+                    <view :class="enableSourceBillEdit?'right':'righton'" >
+                        <input v-model="hform.HMainSourceBillNo" :disabled="enableSourceBillEdit?false:true"
+                            @confirm="GetMessageByHMainSourceBillNo(hform.HMainSourceBillNo)"
+                            placeholder="璇疯緭鍏�(鎴栨壂鎻�)鏁呴殰鐧昏鍗�" />
+                    </view>
+                    <view class="icon-wrapper">
+                        <uni-icons type="scan" size="20" @click="toScanHMainSourceBillNo"></uni-icons>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨瑕佹眰:</view>
+                    <view class="right">
+                        <textarea v-model="hform.HExplanation" placeholder="璇疯緭鍏ョ淮淇姹�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏃堕棿鍗曚綅:</view>
+                    <zxz-uni-data-select class="right" :localdata="[
+                        {key: '灏忔椂', value: '灏忔椂'},
+                        {key: '澶�', value: '澶�'},
+                        {key: '鏈�', value: '鏈�'},
+                    ]" dataKey="key" dataValue="value" v-model="hform.HCycleUnit">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨宸ユ椂:</view>
+                    <view class="right">
+                        <input type="number" v-model="hform.HTimes" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">閮ㄩ棬:</view>
+                    <zxz-uni-data-select required class="right" :localdata="HDeptList" dataKey="閮ㄩ棬鍚嶇О"
+                        dataValue="HItemID" v-model="hform.HDeptID">
+
+                    </zxz-uni-data-select>
+                    <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+                </view>
+                <view class="form-item">
+                    <view class="title required">缁翠慨浜�:</view>
+                    <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+                        dataValue="HItemID" v-model="hform.HEmpID">
+
+                    </zxz-uni-data-select>
+                    <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+                </view>
+                <view class="form-item">
+                    <view class="title required">缁翠慨椤圭洰:</view>
+                    <zxz-uni-data-select required class="right" :localdata="HRepairList" dataKey="缁翠慨椤圭洰"
+                        dataValue="hitemid" v-model="hform.HRepairID">
+
+                    </zxz-uni-data-select>
+                    <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+                </view>
+                <view class="form-item">
+                    <view class="title required">璐熻矗浜�:</view>
+                    <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+                        dataValue="HItemID" v-model="hform.HManagerID">
+
+                    </zxz-uni-data-select>
+                    <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧鍚嶇О:</view>
+                    <view class="righton">
+                        <input v-model="hform.HBarName" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧瑙勬牸:</view>
+                    <view class="righton">
+                        <input v-model="hform.HBarSpec" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧鍨嬪彿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HBarModel" disabled />
+                    </view>
+                </view>
+            </view>
+        </template>
+
+        <!-- 鍏朵粬淇℃伅 -->
+        <template v-if="tabs == 2">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">鍒涘缓浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMaker" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍒涘缓鏃ユ湡:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMakeDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HUpDater" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼鏃ユ湡:</view>
+                    <view class="righton">
+                        <input v-model="hform.HUpDateDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HChecker" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳鏃堕棿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HCheckDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HDeleteMan" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾鏃ユ湡:</view>
+                    <view class="righton">
+                        <input v-model="hform.HDeleteDate" />
+                    </view>
+                </view>
+            </view>
+
+        </template>
+        <!-- 鎿嶄綔鎸夐挳 -->
+        <view class="buttons" id="buttons">
+            <button class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+            <view style="flex: 1;"></view>
+            <button class="btn-a" v-if="operationType!=4" size="mini" @tap="addNew">鏂板</button>
+            <button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+        </view>
+        <!-- <xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload> -->
+    </view>
+</template>
+
+<script>
+    import dayjs from "dayjs";
+    import {
+        CommonUtils
+    } from "@/utils/common";
+    import {
+        MpaasScan
+    } from "@/utils/mpaasScan.js"
+    import {
+        getUserInfo
+    } from "../../../utils/auth";
+    export default {
+        // 璁惧缁翠慨璁板綍鍗�
+        name: 'Sb_EqpMaintenanceBill',
+        data() {
+            return {
+                tabs: 0,
+                HMainSourceBillType: "",
+                btnTop: 0,
+                tabsBottom: 0,
+                HModName: "Sb_EqpMaintenanceBill",
+                HBillType: '3910',
+                operationType: 1,
+                uploadOptions: {},
+                enableEdit: true,
+                enableSourceBillEdit: true,
+
+                HDeptList: [],
+                HRepairCheckList: [],
+                HEmpList: [],
+                HRepairList: [],
+
+                hform: {
+                    HBarCode: "",
+                    HBarCode: '',
+                    HRepairBeginDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    HRepairEndDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    HRepairContent: '',
+                    HBillNo: '',
+                    HInterID: 0,
+                    HDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    HDeptName: '',
+                    HDeptID: 0,
+                    HEmpName: '',
+                    HEmpID: 0,
+                    HRepair: '',
+                    HRepairID: 0,
+                    HExplanation: '',
+                    HMainSourceBillType: '璁惧缁翠慨鐧昏鍗�',
+                    HMainSourceBillNo: '',
+                    HMainSourceInterID: 0,
+                    HMainSourceEntryID: 0,
+                    HManagerName: '',
+                    HManagerID: 0,
+                    HTimes: '',
+                    HCycleUnit: '灏忔椂',
+                    HBarName: '',
+                    HNumber: '',
+                    HEquipID: 0,
+                    HBarSpec: '',
+                    HBarModel: '',
+                    HMaker: getUserInfo()["Czymc"],
+                    HChecker: '',
+                    HCloseMan: '',
+                    HUpDater: '',
+                    HMakeDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                    HCheckDate: '',
+                    HCloseDate: '',
+                    HUpDateDate: '',
+                    HDeleteMan: '',
+                    HDeleteDate: ''
+                },
+                HDetailList: [{
+                    "HRepairID": 0,
+                    "HRepairCode": "",
+                    "HRepairName": "",
+                    "HManagerID": 0,
+                    "HManagerCode": "",
+                    "HManagerName": "",
+                    "HRepairExplanation": '',
+                    "HRemark": "",
+                    "HEmpID": '',
+                    "HSourceInterID": 0,
+                    "HSourceEntryID": 0,
+                    "HSourceBillNo": ''
+                }]
+            };
+        },
+        computed: {
+            containerHeight: {
+                get() {
+                    return this.btnTop - this.tabsBottom - 5
+                }
+            },
+        },
+        methods: {
+            // 缁翠慨椤圭洰
+            async getRepairList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Repair/GetRepairList',
+                        data: {
+                            sWhere: '',
+                            user: getUserInfo()["Czymc"]
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HRepairList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇妫�楠岄」鐩け璐�: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇妫�楠岄」鐩け璐�: ${err}`
+                    })
+                }
+            },
+            // 鍒犻櫎鏄庣粏
+            delDetail(item) {
+
+            },
+            // 鎻愪氦鏁版嵁鏈夋晥鎬ф牎楠�
+            ValidCheck() {
+                if (this.hform.HEquipID == 0) {
+                    return {
+                        Message: "鏈綍鍏ヨ澶囦俊鎭紝璇峰厛褰曞叆璁惧淇℃伅!",
+                        state: false
+                    }
+                }
+                if (this.hform.HDeptID == 0) {
+                    return {
+                        Message: "閮ㄩ棬涓嶅緱涓虹┖!",
+                        state: false
+                    }
+                }
+                if (this.hform.HEmpID == 0) {
+                    return {
+                        Message: "楠屾敹浜轰笉寰椾负绌�!",
+                        state: false
+                    }
+                }
+                if (this.hform.HRepairCheckMainID == 0) {
+                    return {
+                        Message: "楠岃瘉椤圭洰涓嶅緱涓虹┖!",
+                        state: false
+                    }
+                }
+                if (this.hform.HManagerID == 0) {
+                    return {
+                        Message: "璐熻矗浜轰笉寰椾负绌�!",
+                        state: false
+                    }
+                }
+
+                return {
+                    Message: "",
+                    state: true
+                }
+            },
+            addNew() {
+                uni.redirectTo({
+                    url: './Sb_EquipRepairSendWorkBill?operationType=1'
+                })
+            },
+            goBack() {
+                uni.navigateBack()
+            },
+            checkBoxChangeHandler(index, e) {
+                let cr = e.detail.value
+                if (cr.length == 0) {
+                    this.HCheckFileList[index]["HDotCheckResult"] = false
+                } else {
+                    this.HCheckFileList[index]["HDotCheckResult"] = true
+                }
+            },
+            uploadFile(index) {
+                console.log('filePath: ', this.attachmentInfo[index].filePath);
+                // 閫氳繃涓存椂璺緞璇诲彇鏂囦欢
+                uni.uploadFile({
+                    url: CommonUtils.getServerUrl() + "/Sb_EquipDotCheckBill/UploadFile",
+                    filePath: this.attachmentInfo[index].filePath,
+                    name: 'file',
+                    formData: {
+                        HBillNo: this.hform.HBillNo,
+                        HRemark: "",
+                        HUserName: getUserInfo()["Czymc"]
+                    },
+                    success: (uploadRes) => {
+                        CommonUtils.showTips({
+                            message: "涓婁紶鎴愬姛"
+                        })
+                        this.attachmentInfo[index].status = "涓婁紶鎴愬姛"
+                    },
+                    fail: (err) => {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `涓婁紶澶辫触: ${err}`
+                        })
+                    }
+                })
+            },
+            delFile(index) {
+                console.log('attachmentInfo: ', this.attachmentInfo[index]);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + this.attachmentInfo[index].fileName + ' " 鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            this.attachmentInfo.splice(index, 1)
+                        }
+                    },
+                })
+
+            },
+            handleUploadCallback(res) { // 鏂囦欢涓婁紶鍥炶皟
+                console.log('file: ', res);
+                let fileInfo = res.data[0]
+                this.attachmentInfo.push({
+                    fileName: fileInfo.name,
+                    size: fileInfo.size,
+                    status: '绛夊緟涓婁紶',
+                    filePath: fileInfo.tempFilePath
+                })
+            },
+            // 涓婁紶鏂囦欢
+            fileUpload() {
+                this.$refs.XeUpload.upload('file', {});
+            },
+            //鑾峰彇鐝鏁版嵁
+            async getShiftList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetGy_ShiftsList_Json',
+                        data: {
+                            Shifts: "",
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HShiftsList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            //鑾峰彇浣跨敤閮ㄩ棬鏁版嵁
+            async getHDeptList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Department/list',
+                        data: {
+                            sWhere: ` and HUSEORGID = ${uni.getStorageSync('OrganizationID')} `,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HDeptList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            // 鑾峰彇鑱屽憳鏁版嵁
+            async getEmpList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/PublicPageMethod/UserList',
+                        data: {
+                            sWhere: " where 1=1",
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HEmpList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            // 鑾峰彇楠岃瘉椤圭洰鏁版嵁
+            async getCheckProjList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_RepairCheck/GetRepairCheckList',
+                        data: {
+                            sWhere: "",
+                            user: uni.getStorageSync('HUserName'),
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HRepairCheckList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            toScanCode() {
+                MpaasScan.scanCode(cb => {
+                    this.hfrom.HBarCode = cb
+                    this.GetMessageByBarCode(cb)
+                })
+            },
+            toScanHMainSourceBillNo() {
+                MpaasScan.scanCode(cb => {
+                    this.hfrom.HMainSourceBillNo = cb
+                    this.GetMessageByHMainSourceBillNo(cb)
+                })
+            },
+            async GetMessageByHMainSourceBillNo(HSouceBillNo) {
+                try{
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Sb_EqpRepairWorkBill/GetEqpConkBookBillListPage",
+                        data: {
+                            sWhere: ` and 鍗曟嵁鍙� = '${HSouceBillNo}'`,
+                            user: getUserInfo()["Czymc"],
+                            page: 1,
+                            size: 1,
+                        }
+                    })
+                    
+                    let {count, Message, data} = res.data
+                    if(count == 1) {
+                        this.hform.HMainSourceBillNo = data[0]["鍗曟嵁鍙�"]
+                        this.hform.HMainSourceInterID = data[0]["hmainid"]
+                        this.hform.HMainSourceEntryID = data[0]["hsubid"]
+                        
+                    }else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鑾峰彇缁翠慨鐧昏鍗曞け璐�: ${Message}`
+                        })
+                    }
+                }catch(err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇缁翠慨鐧昏鍗曞け璐�: ${err}`
+                    })
+                }
+            },
+            async GetMessageByBarCode(HBarCode) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown_List",
+                        data: {
+                            HBarCode: HBarCode,
+                        },
+                    })
+
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.hform.HEquipID = data[0].hmainid
+                        this.hform.HBarName = data[0].璁惧鍚嶇О
+                        this.hform.HBarSpec = data[0].璁惧瑙勬牸
+                        this.hform.HBarModel = data[0].璁惧鍨嬪彿
+                        this.hform.HQty = 1
+
+                        this.enableEdit = false
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: Message
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: err
+                    })
+                }
+            },
+            async GetItemByEquipFile() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Web/GetItemByEquipFile",
+                        data: {
+                            "EquipProjectID": this.hform.HEquipID,
+                            "Type": "DJ",
+                            "HDate": this.hform.HBeginDate
+                        }
+                    })
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+                    if (count == 1) {
+                        this.hform.HEquipDotCheckRuleInterID = data[0].鐐规瑙勭▼ID
+                        this.hform.HEquipDotCheckRuleInterNo = data[0].鐐规瑙勭▼鍗曞彿
+                        this.hform.HPlanNo = data[0].鐐规璁″垝鍗�
+                        this.hform.HPlanInterID = (data[0].鐐规璁″垝ID == null ? 0 : data[0].鐐规璁″垝ID) == "" ? 0 : data[0]
+                            .鐐规璁″垝ID
+                        this.hform.HPlanEntryID = (data[0].鐐规璁″垝瀛怚D == null ? 0 : data[0].鐐规璁″垝瀛怚D) == "" ? 0 : data[
+                            0].鐐规璁″垝瀛怚D
+
+                        this.HCheckFileList = Array.from(data).map(item => {
+                            return {
+                                "HDotCheckItemID": item.HDotCheckItemID,
+                                "HDotCheckCode": item.鐐规椤圭洰浠g爜,
+                                "HDotCheckItem": item.鐐规椤圭洰,
+                                "HDotCheckPart": item.鐐规閮ㄤ綅,
+                                "HClaim": item.鍏蜂綋瑕佹眰,
+                                "HManagerID": item.璐熻矗浜篒D,
+                                "HManagerCode": item.璐熻矗浜轰唬鐮�,
+                                "HManagerName": item.璐熻矗浜哄悕绉�,
+                                "HSourceInterID": item.鐐规璁″垝ID == null ? 0 : item.鐐规璁″垝ID,
+                                "HSourceEntryID": item.鐐规璁″垝瀛怚D == null ? 0 : item.鐐规璁″垝瀛怚D,
+                                "HSourceBillNo": item.鐐规璁″垝鍗�,
+                                "HDotCheckItemClassID": 0,
+                                "HDotCheckItemClassName": "",
+                                "HDotCheckItemMethodID": 0,
+                                "HDotCheckItemMethodName": "",
+                                "HDotCheckResult": item.榛樿缁撹 == 1 ? true : false
+                            }
+                        })
+
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${err}`
+                    })
+                }
+            },
+            radioChange({
+                detail: {
+                    value
+                }
+            }) {
+                this.hform.HCheckResult = value
+            },
+            async getMaxNum() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Web/GetMAXNum",
+                        data: {
+                            "HBillType": this.HBillType
+                        }
+                    })
+
+                    let {
+                        count,
+                        data,
+                        Message
+                    } = res.data
+                    console.log('data: ', data);
+                    this.hform.HInterID = data[0]["HInterID"]
+                    this.hform.HBillNo = data[0]["HBillNo"]
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: "鑾峰彇鍗曟嵁淇℃伅寮傚父: " + err
+                    })
+                }
+            },
+            async submit() {
+                let valid = this.ValidCheck()
+                if (!valid.state) {
+                    CommonUtils.showTips({
+                        message: valid.Message
+                    })
+                    return
+                }
+
+                try {
+                    let oMain = JSON.stringify(this.hform);
+                    this.HDetailList[0].HManagerID = this.hform.HManagerID
+                    this.HDetailList[0].HRepairID = this.hform.HRepairID
+                    this.HDetailList[0].HRepairExplanation = this.hform.HExplanation
+                    this.HDetailList[0].HEmpID = this.hform.HEmpID
+                    this.HDetailList[0].HSourceInterID = this.hform.HMainSourceInterID
+                    this.HDetailList[0].HSourceEntryID = this.hform.HMainSourceEntryID
+                    this.HDetailList[0].HSourceBillNo = this.hform.HMainSourceBillNo
+                    
+                    let sSubStr = JSON.stringify(this.HDetailList);
+                    let sMainSub = oMain + ';' + sSubStr + `;-1;${this.operationType}` + ';' + getUserInfo()[
+                        'Czymc'];
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_PDA_EqpRepairWorkBill/SaveGetEqpRepairWorkBillList",
+                        data: {
+                            "msg": sMainSub
+                        },
+                        method: "POST"
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        if(this.operationType == 4) {
+                            uni.showModal({
+                                title: '鎻愮ず',
+                                content: res.data.Message + '銆傚嵆灏嗚繑鍥炰笂绾ч〉闈�',
+                                showCancel: false,
+                                success: (res) => {
+                                    if (res.confirm) {
+                                        console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                        setTimeout(() => {
+                                            uni.navigateBack();
+                                        }, 50)
+                                        // uni.redirectTo({
+                                        //     url: './Sb_EquipRepairSendWorkBill?operationType=1'
+                                        // })
+                                    } else if (res.cancel) {
+                                        console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                        setTimeout(() => {
+                                            uni.navigateBack();
+                                        }, 50)
+                                    }
+                                }
+                            });
+                            return
+                        }
+                        uni.showModal({
+                            title: '鎻愮ず',
+                            content: res.data.Message + '銆傛槸鍚︾户缁柊澧烇紵(鐐瑰嚮鍙栨秷杩斿洖涓婄骇椤甸潰)',
+                            success: (res) => {
+                                if (res.confirm) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                    uni.redirectTo({
+                                        url: './Sb_EquipRepairSendWorkBill?operationType=1'
+                                    })
+                                } else if (res.cancel) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                    setTimeout(() => {
+                                        uni.navigateBack();
+                                    }, 50)
+                                }
+                            }
+                        });
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: "鎻愪氦鍗曟嵁澶辫触: " + Message
+                        })
+                    }
+
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: "鎻愪氦鍗曟嵁澶辫触: " + err
+                    })
+                }
+            },
+            async getEquipFileMain(HInterID) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown_ListByHEquipID",
+                        data: {
+                            HEquipID: HInterID,
+                        },
+                    })
+                
+                
+                    if (!res) {
+                        return
+                    }
+                
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.hform.HEquipID = data[0].hmainid
+                        this.hform.HBarName = data[0].璁惧鍚嶇О
+                        this.hform.HBarSpec = data[0].璁惧瑙勬牸
+                        this.hform.HBarModel = data[0].璁惧鍨嬪彿
+                        this.hform.HQty = 1
+                
+                        this.enableEdit = false
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: Message
+                        })
+                    }
+                
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: err
+                    })
+                }
+            }
+        },
+        onLoad(e) {
+            console.log('e: ', e);
+            if (!e.operationType) {
+                this.operationType = 1
+            } else {
+                this.operationType = e.operationType
+            }
+
+            if (this.operationType == 1) {
+                // 鏂板
+                this.getMaxNum()
+            } else if (this.operationType == 2) {
+                // 澶嶅埗
+            } else if (this.operationType == 3) {
+                // 缂栬緫
+
+            } else if (this.operationType == 4) {
+                // 鐢辨姤宸ュ钩鍙版墦寮�
+                let HEquipID = e.HEquipID
+                this.getMaxNum()
+                this.getEquipFileMain(HEquipID)
+            }
+
+            this.getHDeptList()
+            this.getEmpList()
+            this.getRepairList()
+        },
+        onReady() {
+            const query = uni.createSelectorQuery().in(this)
+            query.select("#buttons")
+                .boundingClientRect()
+                .select("#tabs")
+                .boundingClientRect()
+                .exec(res => {
+                    this.btnTop = Math.floor(res[0].top)
+                    this.tabsBottom = Math.ceil(res[1].bottom)
+                })
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    @import "@/pages/MJGL/style/MJBillStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBillList.vue b/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBillList.vue
new file mode 100644
index 0000000..59ea547
--- /dev/null
+++ b/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBillList.vue
@@ -0,0 +1,460 @@
+<template>
+    <view class="content">
+        <view class="form">
+            <view class="form-item">
+                <view class="title">寮�濮嬫椂闂�:</view>
+                <view class="right">
+                    <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HBeginDate">
+                        <input :value="hform.HBeginDate" />
+                    </uni-datetime-picker>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="title">缁撴潫鏃堕棿:</view>
+                <view class="right">
+                    <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HEndDate">
+                        <input :value="hform.HEndDate" />
+                    </uni-datetime-picker>
+                </view>
+            </view>
+            <view v-if="showmore">
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�:</view>
+                    <view class="right">
+                        <input v-model="hform.HBillNo" placeholder="璇疯緭鍏ュ崟鎹彿" />
+                    </view>
+                </view>
+
+            </view>
+            <view class="other">
+                <view v-if="!showmore" @tap="changeShowMore">
+                    灞曞紑鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="bottom"></uni-icons>
+                </view>
+                <view v-if="showmore" @tap="changeShowMore">
+                    鎶樺彔鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
+                </view>
+            </view>
+
+            <view class="buttons">
+                <button class="btn-a" size="mini" type="default" @tap="clear">閲嶇疆</button>
+                <button class="btn-b" size="mini" type="default" @tap="add">鏂板</button>
+                <button class="btn-c" size="mini" type="default" @tap="search">鏌ヨ</button>
+            </view>
+        </view>
+
+        <view id="divide" style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+        <view :style="{
+            height: calcContentHeight + 'px',
+            overflowY: 'auto'
+        }">
+            <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
+                <uni-card :title="item.鍒跺崟鏃ユ湡.substr(0,10)" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+                    @tap="showDetail = showDetail==index?-1:index">
+                    <view class="card-detail">
+                        <template
+                            v-for="(HBillField, index) in CommonUtils.emptyValueFilter(item,HFieldList).slice(0,10)">
+                            <view class="detail" v-if="HBillField.ColmType == 'DateTime'">
+                                <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }}
+                            </view>
+                            <view class="detail" v-else>
+                                <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] }}
+                            </view>
+                        </template>
+                    </view>
+                    <view class="card-detail" v-if="showDetail == index">
+                        <view class="card-detail">
+                            <template
+                                v-for="(HBillField, index) in CommonUtils.emptyValueFilter(item,HFieldList).slice(10,-1)">
+                                <view class="detail" v-if="HBillField.ColmType == 'DateTime'">
+                                    <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }}
+                                </view>
+                                <view class="detail" v-else>
+                                    <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] }}</view>
+                            </template>
+
+                        </view>
+                    </view>
+
+                    <view class="more" v-if="showDetail == index && operations != index">
+                        <view class="part" style="border-right: 1px solid #eee;">
+                            <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+                        </view>
+                        <view class="part" @tap.stop="operations = operations==index?-1:index">
+                            <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+                                size="14"></uni-icons>鎿嶄綔
+                        </view>
+                    </view>
+                    <view class="more" v-if="showDetail != index && operations != index">
+                        <view class="part" style="border-right: 1px solid #eee;">
+                            <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏇村淇℃伅
+                        </view>
+                        <view class="part" @tap.stop="operations = operations==index?-1:index">
+                            <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+                                size="14"></uni-icons>鎿嶄綔
+                        </view>
+                    </view>
+                    <view class="op" v-if="operations == index">
+                        <!-- <button class="op3" size="mini" plain @tap.stop="edit(item)">缂栬緫</button> -->
+                        <button class="op4" size="mini" plain @tap.stop="del(item)">鍒犻櫎</button>
+                        <button class="op5" size="mini" plain @tap.stop="operations = -1">鍙栨秷鎿嶄綔</button>
+                    </view>
+                </uni-card>
+            </view>
+        </view>
+        <view class="pagination-zone" id="pagination-zone">
+            <uni-pagination show-icon :page-size="size" :total="dataLength" :current="page"
+                @change="onPaginationChangeHandler"></uni-pagination>
+        </view>
+        <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+    </view>
+</template>
+
+<script>
+    import {
+        getUserInfo
+    } from "@/utils/auth.js";
+    import BarCodePopupVue from "@/components/BarCodePopup/BarCodePopup.vue";
+    import {
+        CommonUtils
+    } from "@/utils/common";
+    import dayjs from "dayjs";
+    export default {
+        data() {
+            return {
+                dayjs,
+                CommonUtils,
+                userInfo: getUserInfo(),
+                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+                tabs: 0,
+                urls: '/Web/GetEquipmentBillsList',
+                MvarReportTitle: '璁惧缁翠慨璁板綍鍗曠紦瀛�',
+                hform: {
+                    HBillNo: '',
+                    HSourceBillNo: '',
+                    HBillType: '',
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "WX",
+                    sWhere: "",
+                    HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+                    HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                },
+                sWhere: '',
+                listData: [],
+                showList: [],
+                HFieldList: [],
+                showDetail: -1,
+                operations: -1,
+
+                page: 1,
+                size: 20,
+                dataLength: 0,
+                divideBottom: 0,
+                paginationTop: 0,
+                showmore: false,
+            }
+        },
+        computed: {
+            calcContentHeight: {
+                get() {
+                    return this.paginationTop - this.divideBottom
+                }
+            }
+        },
+        onShow() {
+            //鐢ㄦ埛妯″潡鏉冮檺鍒ゆ柇
+            // this.CheckModRight()
+            this.changeTab(0)
+            console.log(this.userInfo, uni.getStorageSync('HUserName'))
+        },
+        components: {
+            BarCodePopupVue
+        },
+        onPullDownRefresh: function() {
+            this.clear()
+            setTimeout(() => {
+                uni.stopPullDownRefresh();
+            }, 1000);
+        },
+        onReady() {
+            this.getCalcHeight()
+        },
+        methods: {
+            changeShowMore() {
+                this.showmore = !this.showmore
+                this.$nextTick(() => {
+                    // 閲嶆柊璁$畻鍐呭瑙嗗彛楂樺害
+                    this.getCalcHeight()
+                })
+            },
+            getCalcHeight() {
+                let query = uni.createSelectorQuery().in(this)
+                query
+                    .select("#divide")
+                    .boundingClientRect()
+                    .select("#pagination-zone")
+                    .boundingClientRect()
+                    .exec(res => {
+                        this.divideBottom = Math.ceil(res[0].bottom)
+                        this.paginationTop = Math.floor(res[1].top)
+                    })
+            },
+            async qrCodeDisplay(item) {
+                this.$refs.barcodePopup.setCodeInfo(item.HBillNo)
+                await this.$nextTick()
+                this.$refs.barcodePopup.open()
+            },
+            CheckModRight() {
+                uni.request({
+                    url: this.serverUrl + '/WEBSController/CheckModRight_Json',
+                    data: {
+                        ModRightName: 'CE_OtherOut',
+                        HUserName: uni.getStorageSync('HUserName')
+                    },
+                    success: (res) => {
+                        if (res.data.count == 1) {} else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            onPaginationChangeHandler({
+                current
+            }) {
+                this.page = current
+                this.showList = this.getPage(current, this.size, this.listData)
+            },
+            getPage(page, size, list) {
+                let sindex = (parseInt(page) - 1) * size
+                let eindex = parseInt(page) * size
+                let newList = list.slice(sindex, eindex)
+                return newList
+            },
+            changeTab(e) {
+                this.tabs = e
+                this.page = 1
+                this.showList = []
+
+                if (this.tabs == 0) {
+                    this.urls = '/Web/GetEquipmentBillsList'
+                }
+                // if (this.tabs == 1) {
+                // 	this.urls = '/WEBSController/GetKf_ICStockBillQueryList_User_Json'
+                // }
+                this.search()
+            },
+            async getList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: this.urls,
+                        data: this.hform
+                    })
+
+                    let {
+                        count,
+                        data,
+                        Message,
+                        list
+                    } = res.data
+
+                    if (count == 1) {
+                        if (data == null) {
+                            data = []
+                        }
+                        this.listData = data
+                        this.showList = this.getPage(this.page, this.size, data)
+                        this.dataLength = data.length
+                        this.HFieldList = CommonUtils.fieldListFilterRole({
+                            ExcludeKeys: ["鍒跺崟鏃ユ湡", "鍗曟嵁鍙�"],
+                            FieldList: Array.from(list)
+                        }).data
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鑾峰彇璁惧鏁呴殰鐧昏鍗曞け璐�: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇璁惧鏁呴殰鐧昏鍗曞け璐�: ${err}`
+                    })
+                }
+
+            },
+            search() {
+                this.hform.sWhere = ''
+                this.listData = []
+                this.page = 1
+                this.showList = []
+
+                if (this.hform.HBillNo) {
+                    this.hform.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+                }
+                if (this.hform.HBeginDate && this.hform.HEndDate) {
+                    this.hform.sWhere +=
+                        ` and convert(date,鏃ユ湡) between convert(date, '${this.hform.HBeginDate}') and convert(date, '${this.hform.HEndDate}')`;
+                }
+                this.getList()
+            },
+            clear() {
+                this.listData = []
+                this.page = 1
+                this.showList = []
+
+                this.sWhere = ''
+                this.hform = {
+                    HBillNo: '',
+                    HSourceBillNo: '',
+                    HBillType: '',
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "WX",
+                    sWhere: "",
+                    HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+                    HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                }
+                this.search()
+            },
+            add() {
+                uni.navigateTo({
+                    url: '/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill?operationType=1'
+                })
+            },
+            //缂栬緫
+            edit(item) {
+                return
+                console.log(item)
+                uni.request({
+                    url: this.serverUrl + '/WEBSController/TempList_Modify_Json',
+                    data: {
+                        "HInterID": item.HInterID,
+                        "HBillNo": item.鍗曟嵁鍙�,
+                        "HBillType": this.hform.HBillType
+                    },
+                    success: (res) => {
+                        console.log(1, res);
+                        if (res.data.count == 1) {
+                            uni.navigateTo({
+                                url: './OtherOutBill?OperationType=2&HInterID=' + item.HInterID
+                            })
+                        } else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.hideLoading()
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                })
+            },
+            //鍒犻櫎
+            del(item) {
+                // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            uni.request({
+                                url: this.serverUrl +
+                                    '/Sb_EqpRepairWorkBill/DeltetEqpRepairWorkBill',
+                                data: {
+                                    HInterID: item.hmainid,
+                                    user: uni.getStorageSync('HUserName'),
+                                },
+                                success: (res) => {
+                                    console.log(1, res);
+                                    if (res.data.count == 1) {
+                                        this.clear()
+                                    }
+                                    uni.showToast({
+                                        title: res.data.Message,
+                                        icon: 'none'
+                                    })
+                                },
+                                fail: (res) => {
+                                    console.log(res);
+                                    uni.hideLoading()
+                                    uni.showToast({
+                                        title: '鎺ュ彛璇锋眰澶辫触',
+                                        icon: 'none'
+                                    })
+                                },
+                            });
+                        } else if (res.cancel) {
+                            console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                        }
+                    }
+                });
+            },
+            //鎾ら攢
+            revoke(item) {
+                // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '鏄惁纭鎾ら攢',
+                    success: (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            uni.request({
+                                url: this.serverUrl +
+                                    '/WEBSController/set_DeleteICStockBillAndWMS_Json',
+                                data: {
+                                    HInterID: item.HInterID,
+                                    HBillNo: item.鍗曟嵁鍙�,
+                                    HBillType: this.hform.HBillType,
+                                    HMaker: uni.getStorageSync('HUserName'),
+                                    MvarReportTitle: this.MvarReportTitle,
+                                },
+                                success: (res) => {
+                                    console.log(1, res);
+                                    if (res.data.count == 1) {
+                                        this.clear()
+                                    }
+                                    uni.showToast({
+                                        title: res.data.Message,
+                                        icon: 'none'
+                                    })
+                                },
+                                fail: (res) => {
+                                    console.log(res);
+                                    uni.hideLoading()
+                                    uni.showToast({
+                                        title: '鎺ュ彛璇锋眰澶辫触',
+                                        icon: 'none'
+                                    })
+                                },
+                            });
+                        } else if (res.cancel) {
+                            console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                        }
+                    }
+                });
+            },
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    @import "@/pages/MJGL/style/MJListStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBillList.vue b/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBillList.vue
index 17d7fe4..a165bc2 100644
--- a/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBillList.vue
+++ b/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBillList.vue
@@ -50,26 +50,31 @@
             <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
                 <uni-card :title="item.鍒跺崟鏃ユ湡.substr(0,10)" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
                     @tap="showDetail = showDetail==index?-1:index">
-                    <view class="card-detail"
-                        v-for="(HBillField, index) in CommonUtils.emptyValueFilter(item,HFieldList).slice(0,10)" :key="index">
+                    <view class="card-detail">
                         <template
-                            v-if="HBillField.ColmType == 'DateTime'"><text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }}
+                            v-for="(HBillField, index) in CommonUtils.emptyValueFilter(item,HFieldList).slice(0,10)">
+                            <view class="detail" v-if="HBillField.ColmType == 'DateTime'">
+                                <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }}
+                            </view>
+                            <view class="detail" v-else>
+                                <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] }}
+                            </view>
                         </template>
-                        <template
-                            v-else><text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] }}</template>
                     </view>
                     <view class="card-detail" v-if="showDetail == index">
-                        <view class="card-detail"
-                            v-for="(HBillField, index) in CommonUtils.emptyValueFilter(item,HFieldList).slice(10,-1)"
-                            :key="index">
+                        <view class="card-detail">
                             <template
-                                v-if="HBillField.ColmType == 'DateTime'"><text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }}
+                                v-for="(HBillField, index) in CommonUtils.emptyValueFilter(item,HFieldList).slice(10,-1)">
+                                <view class="detail" v-if="HBillField.ColmType == 'DateTime'">
+                                    <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }}
+                                </view>
+                                <view class="detail" v-else>
+                                    <text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] }}</view>
                             </template>
-                            <template
-                                v-else><text>{{ HBillField.ColmCols }}锛�</text>{{ item[HBillField.ColmCols] }}</template>
+                
                         </view>
                     </view>
-
+                
                     <view class="more" v-if="showDetail == index && operations != index">
                         <view class="part" style="border-right: 1px solid #eee;">
                             <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
diff --git a/pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess.vue b/pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess.vue
index 73abd63..5875786 100644
--- a/pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess.vue
+++ b/pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess.vue
@@ -5,8 +5,8 @@
             height: calcContentHeight + 'px',
             overflowY: 'auto'
         }">
-            <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
-                <uni-card :title="item.鍗曟嵁鍙�" style="margin: 10px;">
+            <view class="list" v-for="(item,index) in showList" :key="index" v-if="showList.length>0">
+                <uni-card style="margin: 10px;">
                     <view class="card-detail">
                         <template v-for="(field, index)  in CommonUtils.emptyValueFilter(item, HFieldList)">
                             <view v-if="field.ColmType == 'DateTime'" class="detail">
@@ -19,6 +19,7 @@
                     </view>
                 </uni-card>
             </view>
+            <view class="over" v-if="showList.length == 0">鏆傛棤鏁版嵁</view>
         </view>
         <view class="pagination-zone" id="pagination-zone">
             <uni-pagination show-icon :page-size="size" :total="dataLength" :current="page"
@@ -82,7 +83,7 @@
         },
         onShow() {
             //鐢ㄦ埛妯″潡鏉冮檺鍒ゆ柇
-            this.changeTab(0)
+            // this.changeTab(0)
             console.log(this.userInfo, uni.getStorageSync('HUserName'))
         },
         components: {
@@ -133,9 +134,9 @@
                 this.page = 1
                 this.showList = []
 
-                if (this.tabs == 0) {
-                    this.urls = '/Sc_HEquipStateDistribution/Get_EquipICMOTechParamList_Json'
-                }
+                // if (this.tabs == 0) {
+                //     this.urls = '/Sc_HEquipStateDistribution/Get_EquipICMOTechParamList_Json'
+                // }
                 // if (this.tabs == 1) {
                 // 	this.urls = '/WEBSController/GetKf_ICStockBillQueryList_User_Json'
                 // }
@@ -165,10 +166,10 @@
                         this.dataLength = data.length
                         this.HFieldList = CommonUtils.fieldListFilterRole({
                             FieldList: list,
-                            ExcludeKeys: ["鍗曟嵁鍙�"]
+                            ExcludeKeys: []
                         }).data
 
-                        console.log('this.HFieldList: ', this.HFieldList);
+                        console.log('showList: ', this.showList);
                     } else {
                         CommonUtils.showTips({
                             title: "娓╅Θ鎻愮ず",
@@ -205,12 +206,12 @@
                 HICMOInterID,
                 HICMOEntryID
             } = e
-
             if (operationType == 4) {
-                this.HInterID = HEquipID
-                this.HICMOInterID = HICMOInterID
-                this.HICMOEntryID = HICMOEntryID
+                this.hform.HInterID = HEquipID
+                this.hform.HICMOInterID = HICMOInterID
+                this.hform.HICMOEntryID = HICMOEntryID
             }
+            this.changeTab(0)
         }
     }
 </script>
diff --git a/pages/MJGL/Sc_OEEStatusReport/Sc_OEEStatusReport.vue b/pages/MJGL/Sc_OEEStatusReport/Sc_OEEStatusReport.vue
new file mode 100644
index 0000000..5480519
--- /dev/null
+++ b/pages/MJGL/Sc_OEEStatusReport/Sc_OEEStatusReport.vue
@@ -0,0 +1,313 @@
+<template>
+    <view>
+        <view class="tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="switchTab(0)">寰呯淮淇�</view>
+            <view :class="tabs == 1 ? 'on':''" @tap="switchTab(1)">宸茬淮淇�</view>
+            <!-- <view :class="tabs == 2 ? 'on':''" @tap="switchTab(2)">鍏ㄩ儴浠诲姟</view> -->
+        </view>
+
+        <!-- 璁惧缁翠慨浠诲姟鍒楄〃鍒楄〃 -->
+        <view v-show="tabs == 0">
+            <view class="list" v-for="(item,index) in reportBillsDisplay" :key="index">
+                <uni-card :title="item.鏁呴殰鐧昏鍗曞彿" :extra="`鏃ユ湡: ${dayjs(item.璁惧鏁呴殰鏃ユ湡).format('YYYY-MM-DD')}`"
+                    style="margin: 10px;">
+                    <view class="card-detail">
+                        <view class="detail" v-for="(field, index) in CommonUtils.emptyValueFilter(item, HFieldList)"
+                            :key="index">
+                            <text>{{field.ColmCols}}锛�</text>{{item[field.ColmCols]}}
+                        </view>
+                    </view>
+                </uni-card>
+            </view>
+            <view class="over" v-if="reportBillsDisplay.length == 0">鏆傛棤鏁版嵁</view>
+        </view>
+        <!-- OEE 鎶樼嚎鍥� -->
+        <view v-show="tabs == 1" style="padding: 40rpx 0;">
+            <view style="width:750rpx; height:750rpx"><l-echart ref="chartRef" @finished="initChart()"></l-echart>
+            </view>
+        </view>
+    </view>
+</template>
+
+<script>
+    import {
+        getUserInfo
+    } from '../../../utils/auth';
+    import {
+        CommonUtils
+    } from '../../../utils/common';
+    import dayjs from 'dayjs';
+    import * as echarts from 'echarts'
+    export default {
+        // 璁惧鐘舵�� 妯″潡
+        name: 'Sc_OEEStatusReport',
+        data() {
+            return {
+                dayjs,
+                CommonUtils,
+                tabs: 0,
+                HEquipID: 0,
+                HEquipNumber: "",
+                reportBillsDisplay: [],
+                reportBills: [], // 寰呯淮淇�
+                HFieldList: [], // 瀛楁鍒楄〃
+            }
+        },
+        methods: {
+            switchTab(tabIndex) {
+                this.tabs = tabIndex
+                switch (tabIndex) {
+                    case 0:
+                        this.reportBillsDisplay = this.reportBills;
+                        break;
+                        // case 1:
+                        //     this.reportBillsDisplay = this.reportBillsRepaired;
+                        //     break;
+                        // case 2:
+                        //     this.reportBillsDisplay = this.reportBillsAll;
+                        //     break;
+                }
+            },
+            async getEquipFileMain(HInterID) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown_ListByHEquipID",
+                        data: {
+                            HEquipID: HInterID,
+                        },
+                    })
+
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        // this.hform.HQty = 1
+                        this.HEquipID = data[0]["hmainid"]
+                        this.HEquipNumber = data[0]["璁惧缂栫爜"]
+                        this.enableEdit = false
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: Message
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: err
+                    })
+                }
+            },
+            async getReportList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Sc_OEEReport/list',
+                        data: {
+                            sWhere: `4,'${this.HEquipNumber}','','','','${dayjs(new Date()).subtract(2, 'weeks').format("YYYY-MM-DD")}', '${dayjs(new Date()).format("YYYY-MM-DD")}'`,
+                            user: getUserInfo()["Czymc"]
+                        }
+                    })
+
+                    let {
+                        count,
+                        data,
+                        Message,
+                        list
+                    } = res.data
+                    if (count == 1) {
+                        // console.log('data: ', data);
+                        this.reportBills = data
+
+                        let fieldList = CommonUtils.fieldListFilterRole({
+                            ExcludeKeys: ['璁惧缂栫爜'],
+                            FieldList: list
+                        })
+
+                        if (fieldList.status == false) {
+                            CommonUtils.showTips({
+                                title: '娓╅Θ鎻愮ず',
+                                message: `鑾峰彇琛ㄥ崟缁撴瀯澶辫触: ${fieldList.Message}`
+                            })
+                        }
+
+                        this.HFieldList = fieldList.data
+
+                        this.switchTab(0)
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇璁惧OEE寮傚父: ${Message}`
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇缁翠慨鍗曞紓甯�: ${err}`
+                    })
+                }
+            },
+            async initChart() {
+                let option_ZZT1 = {}
+                var H_X1 = []; //X杞存爣棰�
+                var HOEE = []; //璁惧OEE
+                var PerformanceUtilizationRate = []; //鎬ц兘绋煎姩鐜�
+                var TimeUtilizationRate = []; //鏃堕棿绋煎姩鐜�
+                var HTitle = "璁惧OEE"; //鍥惧舰鏍囬
+                if (this.reportBills.length > 0) {
+                    for (let i = 0; i < this.reportBills.length; i++) {
+                        H_X1.push(this.reportBills[i].鏃ユ湡);
+                    }
+                    // 濉厖鏁版嵁
+                    for (let i = 0; i < this.reportBills.length; i++) {
+
+                        HOEE.push((this.reportBills[i].OEE).replace('%', ''));
+                        PerformanceUtilizationRate.push((this.reportBills[i].鎬ц兘绋煎姩鐜�).replace('%', ''));
+                        TimeUtilizationRate.push((this.reportBills[i].鏃堕棿绋煎姩鐜�).replace('%', ''));
+                    }
+                }
+                option_ZZT1 = {
+                    title: {
+                        text: HTitle,
+                        left: 'center'
+                    },
+                    tooltip: {
+                        trigger: 'axis',
+                        formatter: function(params) {
+                            let tooltipHtml = params[0].axisValue + '<br>'; // X杞存暟鍊�
+
+                            params.forEach(function(item) {
+                                let valueToShow = parseFloat(item.value); // 灏嗗瓧绗︿覆杞崲涓烘暟鍊�
+                                tooltipHtml += item.seriesName + ': ' + valueToShow.toFixed(3) +
+                                    '%' + '<br>'; // Y杞存暟鍊硷紝骞舵坊鍔犵櫨鍒嗗彿
+                            });
+
+                            return tooltipHtml;
+                        }
+                    },
+                    legend: {
+                        data: ['OEE', '鎬ц兘绋煎姩鐜�', '鏃堕棿绋煎姩鐜�'],
+                        top: 'bottom',
+                        left: 'center'
+                    },
+                    toolbox: {
+                        show: false,
+                        orient: 'vertical',
+                        left: 'right',
+                        top: 'center',
+                        feature: {
+                            mark: {
+                                show: true
+                            },
+                            dataView: {
+                                show: true,
+                                readOnly: false
+                            },
+                            magicType: {
+                                show: true,
+                                type: ['line', 'bar', 'stack']
+                            },
+                            restore: {
+                                show: true
+                            },
+                            saveAsImage: {
+                                show: true
+                            }
+                        }
+                    },
+                    xAxis: [{
+                        type: 'category',
+                        axisTick: {
+                            show: false
+                        },
+                        data: H_X1
+                    }],
+                    yAxis: [{
+                        type: 'value',
+                        axisLabel: {
+                            formatter: '{value} %'
+                        }
+                    }],
+                    series: [{
+                            name: 'OEE',
+                            type: 'line',
+                            label: {
+                                show: true,
+                                formatter: '{c}%'
+                            },
+                            itemStyle: {
+                                normal: {
+                                    lineStyle: {
+                                        color: '#00FF00' // 璁剧疆绾挎潯棰滆壊涓虹豢鑹�
+                                    },
+                                    color: '#00FF00' // 璁剧疆绾挎潯棰滆壊涓虹豢鑹�
+                                }
+                            },
+                            data: HOEE
+                        },
+                        {
+                            name: '鎬ц兘绋煎姩鐜�',
+                            type: 'line',
+                            label: {
+                                show: true,
+                                formatter: '{c}%'
+                            },
+                            itemStyle: {
+                                normal: {
+                                    lineStyle: {
+                                        color: '#FF0000' // 璁剧疆绾挎潯棰滆壊涓虹孩鑹测��
+                                    },
+                                    color: '#FF0000' // 璁剧疆绾挎潯棰滆壊涓虹孩鑹�
+                                }
+                            },
+                            data: PerformanceUtilizationRate
+                        },
+                        {
+                            name: '鏃堕棿绋煎姩鐜�',
+                            type: 'line',
+                            label: {
+                                show: true,
+                                formatter: '{c}%'
+                            },
+                            itemStyle: {
+                                normal: {
+                                    lineStyle: {
+                                        color: '#00FFFF' // 璁剧疆绾挎潯棰滆壊涓洪潚鑹�
+                                    },
+                                    color: '#00FFFF' // 璁剧疆绾挎潯棰滆壊涓洪潚鑹�
+                                }
+                            },
+                            data: TimeUtilizationRate
+                        }
+                    ]
+                };
+                // chart 鍥捐〃瀹炰緥涓嶈兘瀛樺湪data閲�
+                const chart = await this.$refs.chartRef.init(echarts);
+                chart.setOption(option_ZZT1)
+            }
+        },
+        async onLoad(e) {
+            if (e.HEquipID) {
+                await this.getEquipFileMain(e.HEquipID)
+                await this.$nextTick()
+                await this.getReportList()
+                await this.initChart()
+
+            }
+        }
+    }
+</script>
+
+<style lang="scss">
+    @import "@/pages/MJGL/style/MJBillStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/index/tab2.vue b/pages/index/tab2.vue
index f1a2a0d..8d6e023 100644
--- a/pages/index/tab2.vue
+++ b/pages/index/tab2.vue
@@ -423,7 +423,7 @@
 					{
 						"img": "../../static/icon/icon7.png",
 						"text": "璁惧缁翠慨璁板綍鍗曞垪琛�",
-						"url": "/pages/shebeiweixiu/SbEqpMaintenanceBillList",
+						"url": "/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBillList",
 						"id": 52,
 						"hidden": false
 					},
diff --git a/pages/index/tab3.vue b/pages/index/tab3.vue
index 5fbc709..fe6f8ee 100644
--- a/pages/index/tab3.vue
+++ b/pages/index/tab3.vue
@@ -74,11 +74,11 @@
                         "hidden": false
                     },
                     {
-                    	"img": "../../static/icon/icon6.png",
-                    	"text": "璁惧鏁呴殰鐧昏鍗�",
-                    	"url": "/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBill?operationType=1",
-                    	"id": 20,
-                    	"hidden": false
+                        "img": "../../static/icon/icon6.png",
+                        "text": "璁惧鏁呴殰鐧昏鍗�",
+                        "url": "/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBill?operationType=1",
+                        "id": 20,
+                        "hidden": false
                     },
                     {
                         "img": "../../static/icon/icon8.png",
@@ -201,7 +201,7 @@
                         "url": "/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBill",
                         "id": 23,
                         "hidden": false
-                    }, 
+                    },
                     {
                         "img": "../../static/icon/icon8.png",
                         "text": "璁惧淇濆吇浠诲姟",
@@ -232,8 +232,8 @@
                     },
                     {
                         "img": "../../static/icon/icon8.png",
-                        "text": "璁惧鐘舵�佹煡璇�",
-                        "url": "/pages/shebeiyunxingzhuangtai/shebeiyunxingzhuangtai",
+                        "text": "璁惧缁翠慨璁板綍鍗�",
+                        "url": "/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill",
                         "id": 28,
                         "hidden": false
                     }
diff --git a/pages/shebeiyunxingzhuangtai/detail.vue b/pages/shebeiyunxingzhuangtai/detail.vue
index 9f2e41c..a949b5a 100644
--- a/pages/shebeiyunxingzhuangtai/detail.vue
+++ b/pages/shebeiyunxingzhuangtai/detail.vue
@@ -12,10 +12,10 @@
             <button size="mini" data-type="equipStop" plain>鍋滄満</button>
             <button size="mini" data-type="workDotCheck" plain>鐐规璁板綍</button>
             <button size="mini" data-type="equipConkBook" plain>鏁呴殰鐧昏</button>
-            <button size="mini" plain>缁翠慨</button>
+            <button size="mini" data-type="eqpMaintenance" plain>缁翠慨</button>
             <button size="mini" data-type="equipResume" plain>灞ュ巻</button>
             <button size="mini" data-type="equipmentProcess" plain>宸ヨ壓</button>
-            <button size="mini" plain>鐘舵��</button>
+            <button size="mini" data-type="OEEStatusReport" plain>鐘舵��</button>
         </view>
 
     </view>
@@ -107,7 +107,6 @@
                         data: [], // 榛樿series鏁版嵁涓虹┖
                         type: 'bar'
                     }],
-                    animation: false
                 };
 
                 // 濡傛灉鏈夋暟鎹紝鏇存柊option鐨勫唴瀹�
@@ -198,7 +197,6 @@
                         data: [], // 榛樿series鏁版嵁涓虹┖
                         type: 'bar'
                     }],
-                    animation: false
                 };
 
 
@@ -253,7 +251,6 @@
                         },
                         series: [], // 娓呯┖鏁版嵁
                         graphic: [], // 娓呯┖鍥惧舰涓殑鏂囨湰
-                        animation: false
                     });
                 } else {
                     // 鐘舵�侀鑹叉槧灏�
@@ -390,7 +387,6 @@
                         data: [], // 榛樿series鏁版嵁涓虹┖
                         type: 'bar'
                     }],
-                    animation: false
                 };
 
                 // 濡傛灉鏈夋暟鎹紝鏇存柊option鐨勫唴瀹�
@@ -425,7 +421,7 @@
                 // 鏇存柊鍥捐〃
                 mychart4.setOption(option);
             },
-            initCharts(data) {
+            async initCharts(data) {
                 try {
                     let {
                         h_p_Sc_FourStateDistributionReport,
@@ -435,10 +431,10 @@
                     } = data
 
                     // 鑳芥樉绀烘殏鏃犳暟鎹紝浣嗘槸闇�瑕佹覆鏌撲袱娆″浘琛�
-                    this.initHistogram1 = this.initHistogram1(h_p_Sc_FourStateDistributionReport);
-                    this.initLineChart = this.initLineChart(h_p_Sc_FourStateDistributionReport1);
-                    this.initStatistics = this.initStatistics(h_p_Sc_FourStateDistributionReport2);
-                    this.initHistogram4 = this.initHistogram4(h_p_Sc_FourStateDistributionReport3);
+                    this.initHistogram1 = await this.initHistogram1(h_p_Sc_FourStateDistributionReport);
+                    this.initLineChart = await this.initLineChart(h_p_Sc_FourStateDistributionReport1);
+                    this.initStatistics = await this.initStatistics(h_p_Sc_FourStateDistributionReport2);
+                    this.initHistogram4 = await this.initHistogram4(h_p_Sc_FourStateDistributionReport3);
                 } catch (e) {
                     console.error(e)
                 }
@@ -476,36 +472,52 @@
                                 url: "/pages/MJGL/Sb_EquipStop/Sb_EquipStopBill?HEquipID=" + this.HEquipID
                             });
                             break;
-                        case "workDotCheck": 
+                        case "workDotCheck":
                             // 瀵艰埅鍒扮偣妫�璁板綍
                             uni.navigateTo({
-                                url: "/pages/MJGL/Sc_WorkDotCheck/Sc_WorkDotCheckBillList_Day?operationType=璁惧&HEquipID=" + this.HEquipID
-                            });
-                            ;break;
-                        case "equipConkBook": 
+                                url: "/pages/MJGL/Sc_WorkDotCheck/Sc_WorkDotCheckBillList_Day?operationType=璁惧&HEquipID=" +
+                                    this.HEquipID
+                            });;
+                            break;
+                        case "equipConkBook":
                             // 瀵艰埅鍒拌澶囨晠闅滅櫥璁板崟
                             uni.navigateTo({
-                                url: "/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBill?operationType=4&HEquipID=" + this.HEquipID
-                            })
-                        ;break;
+                                url: "/pages/MJGL/Sb_EquipConkBook/Sb_EquipConkBookBill?operationType=4&HEquipID=" +
+                                    this.HEquipID
+                            });
+                            break;
                         case "equipResume":
                             // 瀵艰埅鍒拌澶囧饱鍘�
                             uni.navigateTo({
-                                url: "/pages/MJGL/Sb_EquipResumeCheckQuery/Sb_EquipResumeCheckQuery?operationType=4&HEquipID=" + this.HEquipID
-                            })
-                        ;break;
-                        case "equipmentProcess": 
+                                url: "/pages/MJGL/Sb_EquipResumeCheckQuery/Sb_EquipResumeCheckQuery?operationType=4&HEquipID=" +
+                                    this.HEquipID
+                            });
+                            break;
+                        case "equipmentProcess":
                             // 瀵艰埅鍒拌澶囧伐鑹�
-                            if(!this.HICMOInterID && !this.HICMOEntryID) {
+                            if (!this.HICMOInterID && !this.HICMOEntryID) {
                                 CommonUtils.showTips({
                                     message: "褰撳墠璁惧鏃犵敓浜ц鍗曪紝鏃犳硶鏌ョ湅宸ヨ壓"
                                 })
                             }
                             uni.navigateTo({
-                                url: "/pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess?operationType=4&HEquipID=" + this.HEquipID
-                                + `&HICMOInterID=${this.HICMOInterID}&HICMOEntryID=${this.HICMOEntryID}`
-                            })
-                        ;break;
+                                url: "/pages/MJGL/Sc_EquipmentProcessList/Sc_EquipmentProcess?operationType=4&HEquipID=" +
+                                    this.HEquipID +
+                                    `&HICMOInterID=${this.HICMOInterID}&HICMOEntryID=${this.HICMOEntryID}`
+                            });
+                            break;
+                        case "eqpMaintenance":
+                            uni.navigateTo({
+                                url: "/pages/MJGL/Sb_EqpMaintenance/Sb_EqpMaintenanceBill?operationType=4&HEquipID=" +
+                                    this.HEquipID
+                            });
+                            break;
+                        case "OEEStatusReport":
+                            uni.navigateTo({
+                                url: "/pages/MJGL/Sc_OEEStatusReport/Sc_OEEStatusReport?operationType=4&HEquipID=" +
+                                    this.HEquipID
+                            });
+                            break;
                         default:
                             return;
                     }
@@ -526,7 +538,7 @@
                     })
 
                     let res1 = res.data
-                    this.initCharts(res1.data)
+                    await this.initCharts(res1.data)
                 } catch (err) {
                     uni.showToast({
                         icon: "fail",
@@ -535,7 +547,7 @@
                 }
             }
         },
-        onLoad(options) {
+        async onLoad(options) {
             let {
                 HDeptID,
                 HSourceID,
@@ -547,7 +559,7 @@
             this.HICMOInterID = HICMOInterID
             this.HICMOEntryID = HICMOEntryID
 
-            this.getDiagram(HDeptID, HSourceID)
+            await this.getDiagram(HDeptID, HSourceID)
         },
     }
 </script>

--
Gitblit v1.9.1