From dd517a295209672cb3ec6bef3d2df894d3bce370 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期五, 09 一月 2026 16:45:28 +0800
Subject: [PATCH] 添加 器具维修检验单 设备维修派工单 器具维修派工单

---
 pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue       |  476 +++++++
 pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue |  478 +++++++
 pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue     |  800 +++++++++++
 pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue   |    2 
 pages/index/tab3.vue                                                 |   42 
 pages.json                                                           |   42 
 main.js                                                              |    2 
 pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue |  478 +++++++
 utils/i18n.js                                                        |    1 
 pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue     |  887 +++++++++++++
 pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue           |  777 +++++++++++
 pages/MJGL/style/MJBillStyle.scss                                    |   39 
 12 files changed, 4,021 insertions(+), 3 deletions(-)

diff --git a/main.js b/main.js
index aade6d2..eaccbc7 100644
--- a/main.js
+++ b/main.js
@@ -48,7 +48,7 @@
 import VueI18n from 'vue-i18n'
 Vue.use(VueI18n)
 const i18n = new VueI18n(i18nConfig)
-// TODO missing鍥炶皟鏃犳硶婊¤冻 鍔犺浇绾夸笂鍖� 鍚庣殑妫�楠屽姛鑳斤紝闇�閲嶅啓$t鍑芥暟
+// missing鍥炶皟鏃犳硶婊¤冻 鍔犺浇绾夸笂鍖� 鍚庣殑妫�楠屽姛鑳斤紝闇�閲嶅啓$t鍑芥暟
 const originalT = Vue.prototype.$t
 Vue.prototype.$t = function(key, ...args) {
     // 璋冪敤鍘熷 $t 鎵ц缈昏瘧
diff --git a/pages.json b/pages.json
index 7bfae43..420b181 100644
--- a/pages.json
+++ b/pages.json
@@ -1459,6 +1459,48 @@
             {
                 "navigationBarTitleText" : "璁惧缁翠慨楠屾敹鍗曠紦瀛�"
             }
+        },
+        {
+            "path" : "pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill",
+            "style" : 
+            {
+                "navigationBarTitleText" : "璁惧缁翠慨娲惧伐鍗�"
+            }
+        },
+        {
+            "path" : "pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList",
+            "style" : 
+            {
+                "navigationBarTitleText" : "璁惧缁翠慨娲惧伐鍗曠紦瀛�"
+            }
+        },
+        {
+            "path" : "pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鍣ㄥ叿缁翠慨娲惧伐鍗�"
+            }
+        },
+        {
+            "path" : "pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鍣ㄥ叿缁翠慨娲惧伐鍗曠紦瀛�"
+            }
+        },
+        {
+            "path" : "pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鍣ㄥ叿缁翠慨楠屾敹鍗�"
+            }
+        },
+        {
+            "path" : "pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鍣ㄥ叿缁翠慨楠屾敹鍗曠紦瀛�"
+            }
         }
         
     ],
diff --git a/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue
new file mode 100644
index 0000000..9a53f20
--- /dev/null
+++ b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue
@@ -0,0 +1,777 @@
+<template>
+    <view>
+        <view class="tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+            <!-- <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鏄庣粏淇℃伅</view> -->
+            <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鍏朵粬淇℃伅</view>
+            <!-- <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">闄勪欢淇℃伅</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 none-border">
+                        <radio-group @change="radioChange" class="radio_Container">
+                            <label>
+                                <view>
+                                    <radio value="OK" :checked="hform.HCheckResult == 'OK'" />
+                                    <text>OK</text>
+                                </view>
+                            </label>
+                            </label>
+                            <view>
+                                <radio value="NG" :checked="hform.HCheckResult == 'NG'" />
+                                <text>NG</text>
+                            </view>
+                            </label>
+                        </radio-group>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">楠屾敹鍐呭:</view>
+                    <view class="right">
+                        <textarea v-model="hform.HRepairCheckMainContent" placeholder="璇疯緭鍏ラ獙鏀跺唴瀹�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">婧愬崟绫诲瀷:</view>
+                    <zxz-uni-data-select class="right" :localdata="[
+                        {key: '鎵嬪伐褰曞叆', value: '-1'},
+                        {key: '妯″叿鏁呴殰鐧昏鍗�', value: '3815'}
+                        ]" dataKey="key" dataValue="value" v-model="hform.HMainSourceBillType">
+
+                    </zxz-uni-data-select>
+                    <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+                </view>
+                <view class="form-item">
+                    <view class="title">婧愬崟鍙�:</view>
+                    <view class="right">
+                        <input v-model="hform.HMainSourceBillNo" />
+                    </view>
+                    <view class="icon-wrapper">
+                        <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
+                    </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 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="HRepairCheckList" dataKey="缁翠慨楠屾敹椤圭洰"
+                        dataValue="hitemid" v-model="hform.HRepairCheckMainID">
+
+                    </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 required">缁翠慨璁板綍:</view>
+                    <view class="right">
+                        <input type="text" value="" />
+                    </view>
+                    <view class="icon-wrapper">
+                        <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">妯″叿鍚嶇О:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMouldName" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">妯″叿瑙勬牸:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMouldSpec" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">妯″叿鍨嬪彿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMouldModel" 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" 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: 'Sc_MouldRepairCheckBill',
+        data() {
+            return {
+                tabs: 0,
+                HMainSourceBillType: "",
+                btnTop: 0,
+                tabsBottom: 0,
+                HModName: "Sc_MouldRepairCheckBill",
+                HBillType: '3817',
+                operationType: 1,
+                uploadOptions: {},
+                enableEdit: true,
+
+                HDeptList: [],
+                HRepairCheckList: [],
+                HEmpList: [],
+
+                hform: {
+                    "HBarCode": "",
+                    "HBillNo": "",
+                    "HInterID": 0,
+                    "HDate": dayjs(new Date()).format("YYYY-MM-DD"),
+                    "HInnerBillNo": "",
+                    "HMouldName": "",
+                    "HMouldSpec": "",
+                    "HMouldModel": "",
+                    "HMouldID": 0,
+                    "HMainSourceBillType": "-1",
+                    "HMainSourceInterID": 0,
+                    "HMainSourceEntryID": 0,
+                    "HCheckResult": "OK",
+                    "HEmpName": "",
+                    "HEmpID": 0,
+                    "HCheckBeginDate": dayjs(new Date()).format("YYYY-MM-DD"),
+                    "HDeptName": "",
+                    "HDeptID": 0,
+                    "HMainSourceBillNo": "",
+                    "HManagerName": "",
+                    "HManagerID": 0,
+                    "HMouldRepairWorkName": "",
+                    "HMouldRepairWorkID": 0,
+                    "HExplanation": "",
+                    "HRemark": "",
+                    "HOrgID": uni.getStorageSync("OrganizationID"),
+                    "HMaker": getUserInfo()["Czymc"],
+                    "HChecker": "",
+                    "HCloseMan": "",
+                    "HUpDater": "",
+                    "HMakeDate": dayjs(new Date()).format("YYYY-MM-DD"),
+                    "HCheckDate": "",
+                    "HCloseDate": "",
+                    "HUpDateDate": "",
+                    "HDeleteMan": "",
+                    "HDeleteDate": "",
+                    "HRepairCheckMainID": 0,
+                    "HRepairCheckMainContent": "",
+                },
+                HBillSub: [{ // 鍚庣鎺ュ彛闇�瑕併�傚惁鍒欐暟鎹笉浼氭樉绀哄湪缂撳瓨涓�
+                    "HRepairCheckID": 0,
+                    "HRepairCheckCode": "",
+                    "HRepairCheckName": "",
+                    "HRepairCheckContent": "",
+                    "HManagerID": 0,
+                    "HManagerCode": "",
+                    "HManagerName": "",
+                    "HRemark": "",
+                    "LAY_TABLE_INDEX": 0
+                }]
+            };
+        },
+        computed: {
+            containerHeight: {
+                get() {
+                    return this.btnTop - this.tabsBottom - 5
+                }
+            },
+        },
+        methods: {
+            // 鎻愪氦鏁版嵁鏈夋晥鎬ф牎楠�
+            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_MouldRepairCheckBill?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: "",
+                            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)
+                })
+            },
+            async GetMessageByBarCode(HBarCode) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sc_PDA_MouldRepairCheckBill/txtHBarCode_KeyDown_List",
+                        data: {
+                            HBarCode: HBarCode,
+                        },
+                    })
+
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.hform.HMouldID = data[0].hmainid
+                        this.hform.HMouldName = data[0].妯″叿鍚嶇О
+                        this.hform.HMouldSpec = data[0].妯″叿鍝佺被
+                        this.hform.HMouldModel = 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 = 0
+                    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.HBillSub[0].HRepairCheckID = this.hform.HRepairCheckMainID
+                    this.HBillSub[0].HManagerID = this.hform.HManagerID
+                    this.HBillSub[0].HRepairCheckContent = this.hform.HRepairCheckMainContent
+                    let sSubStr = JSON.stringify(this.HBillSub);
+                    let sMainSub = oMain + ';' + sSubStr + ';' + getUserInfo()['Czymc'];
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sc_MouldRepairCheckBill/SaveGetMouldRepairCheckBillList",
+                        data: {
+                            "msg": sMainSub
+                        },
+                        method: "POST"
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        uni.showModal({
+                            title: '鎻愮ず',
+                            content: res.data.Message + '銆傛槸鍚︾户缁柊澧烇紵(鐐瑰嚮鍙栨秷杩斿洖涓婄骇椤甸潰)',
+                            success: (res) => {
+                                if (res.confirm) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                    uni.redirectTo({
+                                        url: '/pages/MJGL/Sb_EquipRepairCheck/Sb_EquipRepairCheckBill?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
+                    })
+                }
+            }
+        },
+        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) {
+                // 娴忚
+
+            }
+
+            this.getHDeptList()
+            this.getEmpList()
+            this.getCheckProjList()
+        },
+        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/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue
new file mode 100644
index 0000000..cc1cb4a
--- /dev/null
+++ b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue
@@ -0,0 +1,476 @@
+<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">
+                        <view class="detail" v-if="item.鍒跺崟浜�">
+                            <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+                        </view>
+                        <view class="detail" v-if="item.浜у搧妯″叿浠g爜">
+                            <text>浜у搧妯″叿浠g爜锛�</text>{{item.浜у搧妯″叿浠g爜}}
+                        </view>
+                        <view class="detail" v-if="item.浜у搧妯″叿">
+                            <text>浜у搧妯″叿锛�</text>{{item.浜у搧妯″叿}}
+                        </view>
+                        <view class="detail" v-if="item.璐熻矗浜�">
+                            <text>璐熻矗浜猴細</text>{{item.璐熻矗浜簘}
+                        </view>
+                        <view class="detail" v-if="item.楠屾敹閮ㄩ棬">
+                            <text>楠屾敹閮ㄩ棬锛�</text>{{item.楠屾敹閮ㄩ棬}}
+                        </view>
+                        <view class="detail" v-if="item.楠屾敹浜�">
+                            <text>楠屾敹浜猴細</text>{{item.楠屾敹浜簘}
+                        </view>
+                        <view class="detail" v-if="item.楠屾敹椤圭洰">
+                            <text>楠屾敹椤圭洰锛�</text>{{item.楠屾敹椤圭洰}}
+                        </view>
+                        <view class="card-detail" v-if="showDetail == index">
+
+
+                            <view class="detail" v-if="item.琛ㄥご澶囨敞">
+                                <text>琛ㄥご澶囨敞锛�</text>{{item.琛ㄥご澶囨敞}}
+                            </view>
+                            <view class="detail" v-if="item.鍙戠敓鏃ユ湡">
+                                <text>寮�濮嬫棩鏈燂細</text>{{dayjs(item.鍙戠敓鏃ユ湡).format("YYYY-MM-DD HH:mm:DD")}}
+                            </view>
+                            <view class="detail" v-if="item.楠屾敹浜轰唬鐮�">
+                                <text>楠屾敹浜轰唬鐮侊細</text>{{item.楠屾敹浜轰唬鐮亇}
+                            </view>
+                            <view class="detail" v-if="item.缁翠慨閮ㄩ棬浠g爜">
+                                <text>缁翠慨閮ㄩ棬浠g爜锛�</text>{{item.缁翠慨閮ㄩ棬浠g爜}}
+                            </view>
+                            <view class="detail" v-if="item.璐熻矗浜轰唬鐮�">
+                                <text>璐熻矗浜轰唬鐮侊細</text>{{item.璐熻矗浜轰唬鐮亇}
+                            </view>
+                            <view class="detail" v-if="item.hmainid">
+                                <text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.hmainid}}
+                            </view>
+                        </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 {
+        name: "Sc_MouldRepairCheckBillList",
+        data() {
+            return {
+                dayjs,
+                userInfo: getUserInfo(),
+                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+                tabs: 0,
+                urls: '/Web/GetMouldBillsList',
+                MvarReportTitle: '妯″叿缁翠慨妫�楠屽崟缂撳瓨',
+                hform: {
+                    HBillNo: '',
+                    HSourceBillNo: '',
+                    HBillType: 3899,
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "RC",
+                    sWhere: "",
+                    HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+                    HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                },
+                sWhere: '',
+                listData: [],
+                showList: [],
+                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/GetMouldBillsList'
+                }
+                // 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
+                    } = res.data
+
+                    if (count == 1) {
+                        if(data == null) {
+                           data = []
+                        }
+                        this.listData = data
+                        console.log('data: ', data);
+                        this.showList = this.getPage(this.page, this.size, data)
+                        this.dataLength = data.length
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${err}`
+                    })
+                }
+
+            },
+            search() {
+                this.hform.sWhere = ''
+                this.listData = []
+                this.page = 1
+                this.showList = []
+
+                console.log(this.hform)
+                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: 3899,
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    sWhere: '',
+                    Type: "RC",
+                    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_EquipRepariCheckBill/Sb_EquipRepariCheckBill?operationType=1'
+                })
+            },
+            //缂栬緫
+            edit(item) {
+                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 +
+                                    '/Sc_MouldRepairCheckBill/DeltetMouldRepairCheckBill',
+                                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_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue b/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue
index 1cb0fad..174694f 100644
--- a/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue
+++ b/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue
@@ -389,7 +389,7 @@
                             console.log('鐢ㄦ埛鐐瑰嚮纭畾');
                             uni.request({
                                 url: this.serverUrl +
-                                    '/Sb_EquipMaintainBill/DeltetEquipMaintainBillList',
+                                    '/Sb_EqpRepairWorkBill/DeltetEqpRepairCheckBill',
                                 data: {
                                     HInterID: item.hmainid,
                                     user: uni.getStorageSync('HUserName'),
diff --git a/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue
new file mode 100644
index 0000000..cff4b33
--- /dev/null
+++ b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue
@@ -0,0 +1,800 @@
+<template>
+    <view>
+        <view class="tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+            <!-- <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鏄庣粏淇℃伅</view> -->
+            <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鍏朵粬淇℃伅</view>
+            <!-- <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">闄勪欢淇℃伅</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.HRepairPlanBeginDate" />
+                        </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.HRepairPlanEndDate" />
+                        </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.HCycleUnit">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁″垝缁翠慨宸ユ椂:</view>
+                    <view class="right">
+                        <input type="number" v-model="hform.HPlanTimes" />
+                    </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 class="form-item">
+                    <view class="title">澶囨敞:</view>
+                    <view class="right">
+                        <textarea v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨瑕佹眰:</view>
+                    <view class="right">
+                        <textarea v-model="HDetailList[0].HRepairExplanation" placeholder="璇疯緭鍏ョ淮淇姹�" />
+                    </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" 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_EquipRepairSendWorkBill',
+        data() {
+            return {
+                tabs: 0,
+                HMainSourceBillType: "",
+                btnTop: 0,
+                tabsBottom: 0,
+                HModName: "Sb_EquipRepairSendWorkBill",
+                HBillType: '3909',
+                operationType: 1,
+                uploadOptions: {},
+                enableEdit: true,
+
+                HDeptList: [],
+                HRepairCheckList: [],
+                HEmpList: [],
+                HRepairList: [],
+
+                hform: {
+                    "HBarCode": "",
+                    HBillNo: '',
+                    HInterID: 0,
+                    HDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                    HInnerBillNo: '',
+                    HRepairContent: '',
+                    HDeptIDName: '',
+                    HDeptID: 0,
+                    HEmpIDName: '',
+                    HEmpID: 0,
+                    HManagerIDName: '',
+                    HManagerID: 0,
+                    HEquipIDName: '',
+                    HEquipID: 0,
+                    HRepairIDName: '',
+                    HRepairID: 0,
+                    HRepairPlanBeginDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                    HRepairPlanEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                    HCycleUnit: '灏忔椂',
+                    HPlanTimes: '',
+                    HExplanation: '',
+                    HRemark: '',
+                    HMaker: getUserInfo()["Czymc"],
+                    HChecker: '',
+                    HCloseMan: '',
+                    HUpDater: '',
+                    HMakeDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                    HCheckDate: '',
+                    HCloseDate: '',
+                    HUpDateDate: '',
+                    HDeleteMan: '',
+                    HDeleteDate: ''
+                },
+                HDetailList: [{ // 鍚庣鎺ュ彛鎻愪氦闇�瑕� 鏄庣粏淇℃伅
+                    "瀛愮淮淇」鐩�": "",
+                    "HRepairID": 0,
+                    "瀛愮淮淇」鐩唬鐮�": "",
+                    "HRepairExplanation": "",
+                    "瀛愯礋璐d汉浠g爜": "",
+                    "HManagerID": "",
+                    "瀛愯礋璐d汉": "",
+                    "HRemark": ""
+                }]
+            };
+        },
+        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: "",
+                            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)
+                })
+            },
+            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
+                    let sSubStr = JSON.stringify(this.HDetailList);
+                    let sMainSub = oMain + ';' + sSubStr + `;-1;${this.operationType}` + ';' + getUserInfo()[
+                    'Czymc'];
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_EquipRepairSendWorkBill/AddEquipRepairSendWorkBill",
+                        data: {
+                            "sMainSub": sMainSub
+                        },
+                        method: "POST"
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        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
+                    })
+                }
+            }
+        },
+        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) {
+                // 娴忚
+
+            }
+
+            this.getHDeptList()
+            this.getEmpList()
+            this.getCheckProjList()
+            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_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue
new file mode 100644
index 0000000..3dec3c5
--- /dev/null
+++ b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue
@@ -0,0 +1,478 @@
+<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">
+                        <view class="detail" v-if="item.鍒跺崟浜�">
+                            <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+                        </view>
+                        <view class="detail" v-if="item.璁惧浠g爜">
+                            <text>璁惧浠g爜锛�</text>{{item.璁惧浠g爜}}
+                        </view>
+                        <view class="detail" v-if="item.璁惧">
+                            <text>璁惧鍚嶇О锛�</text>{{item.璁惧}}
+                        </view>
+                        <view class="detail" v-if="item.璐熻矗浜�">
+                            <text>璐熻矗浜猴細</text>{{item.璐熻矗浜簘}
+                        </view>
+                        <view class="detail" v-if="item.缁翠慨椤圭洰">
+                            <text>缁翠慨椤圭洰锛�</text>{{item.缁翠慨椤圭洰}}
+                        </view>
+                        <view class="detail" v-if="item.缁翠慨閮ㄩ棬">
+                            <text>缁翠慨閮ㄩ棬锛�</text>{{item.缁翠慨閮ㄩ棬}}
+                        </view>
+                        <view class="detail" v-if="item.缁翠慨浜�">
+                            <text>缁翠慨浜猴細</text>{{item.缁翠慨浜簘}
+                        </view>
+                        <view class="detail" v-if="item.璁″垝缁翠慨宸ユ椂">
+                            <text>缁翠慨鏃堕棿锛�</text>{{ item.璁″垝缁翠慨宸ユ椂 + '' + item.鏃堕棿鍗曚綅}}
+                        </view>
+                        <view class="card-detail" v-if="showDetail == index">
+
+
+                            <view class="detail" v-if="item.琛ㄥご澶囨敞">
+                                <text>琛ㄥご澶囨敞锛�</text>{{item.琛ㄥご澶囨敞}}
+                            </view>
+                            <view class="detail" v-if="item.鍙戠敓鏃ユ湡">
+                                <text>寮�濮嬫棩鏈燂細</text>{{dayjs(item.鍙戠敓鏃ユ湡).format("YYYY-MM-DD HH:mm:DD")}}
+                            </view>
+                            <view class="detail" v-if="item.楠屾敹浜轰唬鐮�">
+                                <text>楠屾敹浜轰唬鐮侊細</text>{{item.楠屾敹浜轰唬鐮亇}
+                            </view>
+                            <view class="detail" v-if="item.缁翠慨閮ㄩ棬浠g爜">
+                                <text>缁翠慨閮ㄩ棬浠g爜锛�</text>{{item.缁翠慨閮ㄩ棬浠g爜}}
+                            </view>
+                            <view class="detail" v-if="item.璐熻矗浜轰唬鐮�">
+                                <text>璐熻矗浜轰唬鐮侊細</text>{{item.璐熻矗浜轰唬鐮亇}
+                            </view>
+                            <view class="detail" v-if="item.hmainid">
+                                <text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.hmainid}}
+                            </view>
+                        </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,
+                userInfo: getUserInfo(),
+                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+                tabs: 0,
+                urls: '/Web/GetEquipmentBillsList',
+                MvarReportTitle: '璁惧缁翠慨娲惧伐鍗曠紦瀛�',
+                hform: {
+                    HBillNo: '',
+                    HSourceBillNo: '',
+                    HBillType: 3909,
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "PG",
+                    sWhere: "",
+                    HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+                    HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                },
+                sWhere: '',
+                listData: [],
+                showList: [],
+                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
+                    } = res.data
+
+                    if (count == 1) {
+                        if(data == null) {
+                           data = []
+                        }
+                        this.listData = data
+                        console.log('data: ', data);
+                        this.showList = this.getPage(this.page, this.size, data)
+                        this.dataLength = data.length
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${err}`
+                    })
+                }
+
+            },
+            search() {
+                this.hform.sWhere = ''
+                this.listData = []
+                this.page = 1
+                this.showList = []
+
+                console.log(this.hform)
+                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: 3909,
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "PG",
+                    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_EquipRepairSendWork/Sb_EquipRepairSendWorkBill?operationType=1'
+                })
+            },
+            //缂栬緫
+            edit(item) {
+                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_EquipRepairSendWorkBill/DeleteWorkBill',
+                                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/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue
new file mode 100644
index 0000000..7066f6c
--- /dev/null
+++ b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue
@@ -0,0 +1,887 @@
+<template>
+    <view>
+        <view class="tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+            <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鍏朵粬淇℃伅</view>
+            <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鍒跺崟淇℃伅</view>
+            <!-- <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">闄勪欢淇℃伅</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.HRepairBeginDate">
+                            <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.HRepairEndDate">
+                            <input :value="hform.HRepairEndDate" />
+                        </uni-datetime-picker>
+                    </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.HCycleUnit">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title required">璁″垝缁翠慨宸ユ椂:</view>
+                    <view class="right">
+                        <input type="number" v-model="hform.HPlanTimes" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">瀹為檯缁翠慨宸ユ椂:</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.HMouldName" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿瑙勬牸:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMouldModel" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿鍨嬪彿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMouldSpec" disabled />
+                    </view>
+                </view>
+            </view>
+        </template>
+        <!-- 鍏朵粬淇℃伅(闈為噸瑕佷俊鎭�) -->
+        <template v-if="tabs == 1">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">渚涘簲鍟�:</view>
+                    <view class="right">
+                        <input v-model="hform.HSupID" placeholder="" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨绫诲瀷:</view>
+                    <zxz-uni-data-select class="right" :localdata="[
+                        {key: '鍐呴儴缁翠慨', value: '鍐呴儴缁翠慨'},
+                        {key: '澶栭儴缁翠慨', value: '澶栭儴缁翠慨'},
+                    ]" dataKey="key" dataValue="value" v-model="hform.HRepairType">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨鍚庢柊瑙勬牸:</view>
+                    <view class="right">
+                        <input type="number" v-model="hform.HNewModel" placeholder="" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏂拌璁″鍛�:</view>
+                    <view class="right">
+                        <input type="number" v-model="hform.HNewDesignLife" placeholder="" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧:</view>
+                    <view class="right">
+                        <input v-model="hform.HEquipID" placeholder="" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨璐圭敤:</view>
+                    <view class="right">
+                        <input type="number" v-model="HDetailList[0].HMoney" placeholder="" />
+                    </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="right">
+                        <textarea v-model="hform.HExplanation" placeholder="璇疯緭鍏ョ淮淇姹�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">澶囨敞:</view>
+                    <view class="right">
+                        <textarea v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+                    </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" 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: 'Sc_MouldRepairSendWorkBill',
+        data() {
+            return {
+                tabs: 0,
+                HMainSourceBillType: "",
+                btnTop: 0,
+                tabsBottom: 0,
+                HModName: "Sc_MouldRepairSendWorkBill",
+                HBillType: '3843',
+                operationType: 1,
+                uploadOptions: {},
+                enableEdit: true,
+
+                HDeptList: [],
+                HRepairCheckList: [],
+                HEmpList: [],
+                HRepairList: [],
+
+                hform: {
+                    "HBarCode": "",
+                    "HBillNo": "",
+                    "HInterID": "0",
+                    "HDate": dayjs(new Date()).format('YYYY-MM-DD'),
+                    "HInnerBillNo": "",
+                    "MouldHNumber": "",
+                    "HMouldID": "0",
+                    "HRepairIDName": "",
+                    "HRepairID": "0",
+                    "HCycleUnit": "灏忔椂",
+                    "MouldHName": "",
+                    "MouldHModel": "",
+                    "HDeptIDName": "",
+                    "HDeptID": "0",
+                    "HManagerIDName": "",
+                    "HManagerID": "0",
+                    "HEmpIDName": "",
+                    "HEmpID": "0",
+                    "HRepairBeginDate": dayjs(new Date()).format('YYYY-MM-DD'),
+                    "HMainSourceBillType": "",
+                    "HMainSourceInterID": "0",
+                    "HMainSourceEntryID": "0",
+                    "HPlanTimes": "0",
+                    "HTimes": "0",
+                    "HRepairEndDate": dayjs(new Date()).format('YYYY-MM-DD'),
+                    "HMainSourceBillNo": "",
+                    "HSupIDName": "",
+                    "HSupID": "0",
+                    "HRepairType": "鍐呴儴缁翠慨",
+                    "HNewModel": "0",
+                    "HOrgID": "",
+                    "HNewDesignLife": "0",
+                    "HEquipIDName": "",
+                    "HEquipID": "0",
+                    "HRepairContent": "",
+                    "HExplanation": "",
+                    "HRemark": "",
+                    "HMaker": getUserInfo()["Czymc"],
+                    "HChecker": "",
+                    "HCloseMan": "",
+                    "HUpDater": "",
+                    "HMakeDate": dayjs(new Date()).format('YYYY-MM-DD'),
+                    "HCheckDate": "",
+                    "HCloseDate": "",
+                    "HUpDateDate": "",
+                    "HDeleteMan": "",
+                    "HDeleteDate": "",
+                    HMouldName: "",
+                    HMouldSpec: "",
+                    HMouldModel: "",
+                },
+                HDetailList: [{ // 鍚庣鎺ュ彛鎻愪氦闇�瑕� 鏄庣粏淇℃伅
+                    "瀛愮淮淇」鐩�": "",
+                    "HRepairID": 0,
+                    "瀛愮淮淇」鐩唬鐮�": "",
+                    "HRepairExplanation": "",
+                    "瀛愯礋璐d汉浠g爜": "",
+                    "HManagerID": "",
+                    "瀛愯礋璐d汉": "",
+                    "HMoney": 0,
+                    "HRemark": ""
+                }]
+            };
+        },
+        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.HMouldID == 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
+                    }
+                }
+                if (this.hform.HPlanTimes == '') {
+                    return {
+                        Message: "璁″垝缁翠慨宸ユ椂涓嶅緱涓虹┖!",
+                        state: false
+                    }
+                }
+                if (this.hform.HTimes == '') {
+                    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: "",
+                            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)
+                })
+            },
+            async GetMessageByBarCode(HBarCode) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sc_PDA_MouldRepairCheckBill/txtHBarCode_KeyDown_List",
+                        data: {
+                            HBarCode: HBarCode,
+                        },
+                    })
+
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.hform.HMouldID = data[0].hmainid
+                        this.hform.HMouldName = data[0].妯″叿鍚嶇О
+                        this.hform.HMouldSpec = data[0].妯″叿鍝佺被
+                        this.hform.HMouldModel = 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
+                    let sSubStr = JSON.stringify(this.HDetailList);
+                    let sMainSub = oMain + ';' + sSubStr + `;${this.operationType}` + ';' + getUserInfo()[
+                        'Czymc'];
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sc_MouldRepairSendWorkBill/AddBill",
+                        data: {
+                            "sMainSub": sMainSub
+                        },
+                        method: "POST"
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        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
+                    })
+                }
+            }
+        },
+        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) {
+                // 娴忚
+
+            }
+
+            this.getHDeptList()
+            this.getEmpList()
+            this.getCheckProjList()
+            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/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue
new file mode 100644
index 0000000..a05ae16
--- /dev/null
+++ b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue
@@ -0,0 +1,478 @@
+<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">
+                        <view class="detail" v-if="item.鍒跺崟浜�">
+                            <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+                        </view>
+                        <view class="detail" v-if="item.浜у搧妯″叿浠g爜">
+                            <text>妯″叿浠g爜锛�</text>{{item.浜у搧妯″叿浠g爜}}
+                        </view>
+                        <view class="detail" v-if="item.浜у搧妯″叿">
+                            <text>妯″叿鍚嶇О锛�</text>{{item.浜у搧妯″叿}}
+                        </view>
+                        <view class="detail" v-if="item.璐熻矗浜�">
+                            <text>璐熻矗浜猴細</text>{{item.璐熻矗浜簘}
+                        </view>
+                        <view class="detail" v-if="item.缁翠慨椤圭洰">
+                            <text>缁翠慨椤圭洰锛�</text>{{item.缁翠慨椤圭洰}}
+                        </view>
+                        <view class="detail" v-if="item.缁翠慨閮ㄩ棬">
+                            <text>缁翠慨閮ㄩ棬锛�</text>{{item.缁翠慨閮ㄩ棬}}
+                        </view>
+                        <view class="detail" v-if="item.缁翠慨浜�">
+                            <text>缁翠慨浜猴細</text>{{item.缁翠慨浜簘}
+                        </view>
+                        <view class="detail" v-if="item.璁″垝缁翠慨宸ユ椂">
+                            <text>缁翠慨鏃堕棿锛�</text>{{ item.璁″垝缁翠慨宸ユ椂 + '' + item.鏃堕棿鍗曚綅}}
+                        </view>
+                        <view class="card-detail" v-if="showDetail == index">
+
+
+                            <view class="detail" v-if="item.琛ㄥご澶囨敞">
+                                <text>琛ㄥご澶囨敞锛�</text>{{item.琛ㄥご澶囨敞}}
+                            </view>
+                            <view class="detail" v-if="item.鍙戠敓鏃ユ湡">
+                                <text>寮�濮嬫棩鏈燂細</text>{{dayjs(item.鍙戠敓鏃ユ湡).format("YYYY-MM-DD HH:mm:DD")}}
+                            </view>
+                            <view class="detail" v-if="item.缁翠慨浜轰唬鐮�">
+                                <text>缁翠慨浜轰唬鐮侊細</text>{{item.缁翠慨浜轰唬鐮亇}
+                            </view>
+                            <view class="detail" v-if="item.缁翠慨閮ㄩ棬浠g爜">
+                                <text>缁翠慨閮ㄩ棬浠g爜锛�</text>{{item.缁翠慨閮ㄩ棬浠g爜}}
+                            </view>
+                            <view class="detail" v-if="item.璐熻矗浜轰唬鐮�">
+                                <text>璐熻矗浜轰唬鐮侊細</text>{{item.璐熻矗浜轰唬鐮亇}
+                            </view>
+                            <view class="detail" v-if="item.hmainid">
+                                <text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.hmainid}}
+                            </view>
+                        </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,
+                userInfo: getUserInfo(),
+                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+                tabs: 0,
+                urls: '/Web/GetMouldBillsList',
+                MvarReportTitle: '妯″叿缁翠慨娲惧伐鍗曠紦瀛�',
+                hform: {
+                    HBillNo: '',
+                    HSourceBillNo: '',
+                    HBillType: 3843,
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "PG",
+                    sWhere: "",
+                    HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+                    HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                },
+                sWhere: '',
+                listData: [],
+                showList: [],
+                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/GetMouldBillsList'
+                }
+                // 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
+                    } = res.data
+
+                    if (count == 1) {
+                        if (data == null) {
+                            data = []
+                        }
+                        this.listData = data
+                        console.log('data: ', data);
+                        this.showList = this.getPage(this.page, this.size, data)
+                        this.dataLength = data.length
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${err}`
+                    })
+                }
+
+            },
+            search() {
+                this.hform.sWhere = ''
+                this.listData = []
+                this.page = 1
+                this.showList = []
+
+                console.log(this.hform)
+                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: 3843,
+                    user: uni.getStorageSync('HUserName'),
+                    HStockOrgID: uni.getStorageSync('OrganizationID'),
+                    Type: "PG",
+                    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/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill?operationType=1'
+                })
+            },
+            //缂栬緫
+            edit(item) {
+                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 +
+                                    '/Sc_MouldRepairSendWorkBill/MouldDeleteBill',
+                                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/style/MJBillStyle.scss b/pages/MJGL/style/MJBillStyle.scss
index d2bcbda..21ebdbb 100644
--- a/pages/MJGL/style/MJBillStyle.scss
+++ b/pages/MJGL/style/MJBillStyle.scss
@@ -268,4 +268,43 @@
         justify-content: flex-start;
         gap: 6rpx;
 
+    }
+    
+    .card-buttons {
+        padding: 8rpx;
+        display: flex;
+        flex-direction: row;
+        gap: 20rpx;
+        justify-content: center;
+        align-items: flex-start;
+        
+        button {
+            border-radius: 10rpx;
+            width: 180rpx;
+            height: 66rpx;
+            line-height: 66rpx;
+            font-size: 28rpx;
+        }
+        .btn-a {
+            background-color: #3a78ff;
+            color: #fff;
+        }
+        .btn-b {
+            background-color: #41a863;
+            color: #fff;
+        }
+        .btn-c {
+            background-color: #acacac;
+            color: #fff;
+            // position: absolute;
+            // right: 120rpx;
+        }
+        .btn-d {
+            background-color: #ff8901;
+            color: #fff;
+        }
+        
+        .placeholder {
+            flex: 1
+        }
     }
\ No newline at end of file
diff --git a/pages/index/tab3.vue b/pages/index/tab3.vue
index 95f9bfd..98492f7 100644
--- a/pages/index/tab3.vue
+++ b/pages/index/tab3.vue
@@ -177,6 +177,48 @@
                         "url": "/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBill",
                         "id": 57,
                         "hidden": false
+                    },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "璁惧缁翠慨娲惧伐鍗曞垪琛�",
+                        "url": "/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList",
+                        "id": 58,
+                        "hidden": false
+                    },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "璁惧缁翠慨娲惧伐鍗�",
+                        "url": "/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill",
+                        "id": 59,
+                        "hidden": false
+                    },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "妯″叿缁翠慨楠屾敹鍗曞垪琛�",
+                        "url": "/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList",
+                        "id": 60,
+                        "hidden": false
+                    },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "妯″叿缁翠慨楠屾敹鍗�",
+                        "url": "/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill",
+                        "id": 61,
+                        "hidden": false
+                    },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "妯″叿缁翠慨娲惧伐鍗曞垪琛�",
+                        "url": "/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList",
+                        "id": 62,
+                        "hidden": false
+                    },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "妯″叿缁翠慨娲惧伐鍗�",
+                        "url": "/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill",
+                        "id": 63,
+                        "hidden": false
                     }
 				]
 			}
diff --git a/utils/i18n.js b/utils/i18n.js
index 04133e2..5ff2f8b 100644
--- a/utils/i18n.js
+++ b/utils/i18n.js
@@ -52,7 +52,6 @@
         }
         // 闃叉椤甸潰鍒濇鍔犺浇鏃讹紝浣跨敤鏈湴缈昏瘧妯″潡瀵艰嚧鐨� 鍋囩己澶辩幇璞�
         MissingKeysMap[key].add(HFieldCode)
-        console.log('MissingKeysMap: ', MissingKeysMap);
         if (!clockID) {
             clockID = setTimeout(() => {
                 syncMissingKeyToDB()

--
Gitblit v1.9.1