From 06efefc91964328be8800df03cb56ed3595b74f2 Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期五, 31 十月 2025 11:11:36 +0800
Subject: [PATCH] Merge branch 'Dev' of http://101.37.171.70:10101/r/~jhz/STUWMS into Dev

---
 components/ZLGL/ICMOBillPopup.vue                           |  365 +
 pages/MJGL/mujubaoyangjiludan/table_son.vue                 |  250 
 pages/shouliaotongzhi/table.vue                             |   33 
 pages/weixiujilu/form.vue                                   | 1706 ++++++
 components/ZLGL/CheckProjectPopup.vue                       |  305 +
 pages/index/tab2.vue                                        |   48 
 pages/MJGL/mujudianjianjiludan/formDetail.vue               |  463 +
 components/ZLGL/ProcessPopup.vue                            |  269 +
 pages/shengchanlingliao/form.vue                            |   44 
 utils/common.js                                             |   61 
 components/ZLGL/InspectValueTemplate.vue                    |  309 +
 pages/caigourukujiaoyan/form.vue                            |   15 
 pages/zhijiediaobo/table.vue                                |    2 
 pages/MJGL/mujudianjianjiludan/table.vue                    |  560 ++
 components/ZLGL/ProcExchBillPopup.vue                       |  369 +
 pages/MJGL/mujudianjianjiludan/form.vue                     |  749 ++
 pages/index/login.vue                                       |   65 
 pages/MJGL/mujubaoyangjiludan/form.vue                      |  772 ++
 pages/MJGL/mujudianjianjiludan/plan.vue                     |  351 +
 pages/weixiujilu/table.vue                                  |  587 ++
 components/BillListPopup/BillListPopupMouldConkBookBill.vue |  379 +
 pages/index/index.vue                                       |   11 
 components/ZLGL/SampleSchemePopup.vue                       |  290 +
 pages/ZLGL/shoujianjianyan/form.vue                         | 1415 +++++
 pages/ZLGL/shoujianjianyan/table.vue                        |  572 ++
 pages/qijvguzhangdengji/form.vue                            | 1502 +++++
 pages/MJGL/mujubaoyangjiludan/plan.vue                      |  351 +
 components/ZLGL/MaterialPopup.vue                           |  306 +
 pages/zhijiediaobo/form.vue                                 |   77 
 pages.json                                                  |  318 +
 pages/qijvguzhangdengji/table.vue                           |  595 ++
 pages/qitachuku_v2/form.vue                                 |    1 
 components/ZLGL/CheckItemPopup.vue                          |  269 +
 manifest.json                                               |    4 
 pages/jishikucunchaxun/table.vue                            |  711 +-
 pages/MJGL/mujubaoyangjiludan/formDetail.vue                |  463 +
 pages/MJGL/mujubaoyangjiludan/table.vue                     |  560 ++
 components/ZLGL/InspectMentPopup.vue                        |  288 +
 pages/MJGL/mujudianjianjiludan/table_son.vue                |  221 
 39 files changed, 15,262 insertions(+), 394 deletions(-)

diff --git a/components/BillListPopup/BillListPopupMouldConkBookBill.vue b/components/BillListPopup/BillListPopupMouldConkBookBill.vue
new file mode 100644
index 0000000..a7237af
--- /dev/null
+++ b/components/BillListPopup/BillListPopupMouldConkBookBill.vue
@@ -0,0 +1,379 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>鏃ユ湡: </text></view>
+                    <view class="daterange" style="flex: 1;">
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HBeginDate">
+                                <view>{{HBeginDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                        <view>鈥�</view>
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HEndDate">
+                                <view>{{HEndDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                    </view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>妯″叿缂栫爜: </text></view>
+                    <view class="right"><input type="text" :focus="enablefocus" v-model="HNumber"
+                            @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>妯″叿鍚嶇О: </text></view>
+                    <view class="right"><input type="text" v-model="HName" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鍗曟嵁鍙�: </text></view>
+                    <view class="right"><input type="text" v-model="HBillNo" @confirm="getBillList" /></view>
+                </view>
+                <view class="buttons">
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="search">鎼滅储</button>
+                    <button v-if="MultiSourceBill" size="mini" type="primary" @click="ret">杩斿洖</button>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['鍗曟嵁鍙�']"
+                            @tap="clickCard(bill, index)">
+                            <view class="item">
+                                <view class="left">鏃ユ湡: </view>
+                                <view class="right">{{dayjs(bill['鏃ユ湡']).format('YYYY-MM-DD')}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">鏁呴殰绫诲埆浠g爜: </view>
+                                <view class="right">{{bill['鏁呴殰绫诲埆浠g爜']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">鏁呴殰绫诲埆: </view>
+                                <view class="right">{{bill['鏁呴殰绫诲埆']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['浜у搧妯″叿浠g爜']">
+                                <view class="left">浜у搧妯″叿浠g爜: </view>
+                                <view class="right">{{bill['浜у搧妯″叿浠g爜']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['浜у搧妯″叿']">
+                                <view class="left">浜у搧妯″叿: </view>
+                                <view class="right">{{bill['娆惧彿']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['妯″叿瑙勬牸']">
+                                <view class="left">妯″叿瑙勬牸: </view>
+                                <view class="right">{{bill['妯″叿瑙勬牸']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['妯″叿鍨嬪彿']">
+                                <view class="left">妯″叿鍨嬪彿: </view>
+                                <view class="right">{{bill['妯″叿鍨嬪彿']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鏁呴殰鍙戠敓鏃ユ湡']">
+                                <view class="left">鏁呴殰鍙戠敓鏃ユ湡: </view>
+                                <view class="right">{{dayjs(bill['鏁呴殰鍙戠敓鏃ユ湡']).format('YYYY-MM-DD')}}</view>
+                            </view>
+                            <view class="item" v-if="bill['瑕佹眰瀹屽杽鏃ユ湡']">
+                                <view class="left">瑕佹眰瀹屽杽鏃ユ湡: </view>
+                                <view class="right">{{dayjs(bill['瑕佹眰瀹屽杽鏃ユ湡']).format('YYYY-MM-DD')}}</view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size"
+                    :total="length"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '../../utils/common';
+    import {
+        getUserInfo
+    } from '../../utils/auth';
+    export default {
+        name: "BillListPopup",
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HSourceBillNo: '',
+                HMater: '',
+                HCustom: '',
+                HBillList: [],
+                panelHeight: 0,
+                HBeginDate: dayjs(new Date()).subtract(30, 'd').format("YYYY-MM-DD"),
+                HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                HNumber: '',
+                HName: '',
+                HBillNo: '',
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            HBillType: {
+                type: [String, Number],
+                required: true
+            },
+            HSourceBillType: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+                required: true
+            },
+            MultiSourceBill: {
+                type: Boolean,
+                default: false,
+                required: false
+            }
+        },
+        model: {
+            prop: "HSourceBill",
+            event: 'change'
+        },
+        methods: {
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            ret() {
+                console.log('this.MultiSourceBill: ', this.MultiSourceBill);
+                uni.$emit('BillSelectComplete', {
+                    HInterID: 0,
+                    HBillNo: 0,
+                    enableMultiSourceBill: this.MultiSourceBill,
+                    MultiSourceBillList: this.multiSouceBillList
+                })
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                if (this.MultiSourceBill == false) { // 闈炲婧愬崟妯″紡
+                    uni.$emit('BillSelectComplete', {
+                        HInterID: bill["hmainid"],
+                        HEntryID: bill["hsubid"],
+                        HBillNo: bill["鍗曟嵁鍙�"],
+                        HMouldID: bill["HMouldID"],
+                        HMouldName: bill['浜у搧妯″叿'],
+                        HMouldSpec: bill['妯″叿瑙勬牸'],
+                        HMouldModel: bill['妯″叿鍨嬪彿'],
+                        enableMultiSourceBill: this.MultiSourceBill
+                    })
+                } else {
+                    this.$set(this.HBillList[this.curPage - 1][index], 'isActive', !this.HBillList[this.curPage - 1][
+                        index
+                    ]['isActive'])
+                    console.log(this.HBillList[this.curPage - 1][index])
+                    // 璁剧疆浜嗗婧愬崟妯″紡
+                    this.setMultiSourceBillList({
+                        HInterID: interid,
+                        HBillNo: billno,
+                        HIsActive: this.HBillList[this.curPage - 1][index]['isActive']
+                    })
+                }
+
+                // this.exit()
+            },
+            setMultiSourceBillList(billInfo) {
+                let index = this.multiSouceBillList.findIndex(item => item.HInterID == billInfo.HInterID)
+                if (index == -1) {
+                    billInfo['count'] = 1
+                    this.multiSouceBillList.push(billInfo)
+                } else {
+                    if (billInfo.HIsActive) {
+                        // 濡傛灉瀵瑰簲鍗曟嵁浼犲叆鐨勬槸鍚︽縺娲绘暟鏄痶rue锛屽垯璁℃暟鍣�+1
+                        this.multiSouceBillList[index]['count']++;
+                    } else {
+                        // 濡傛灉瀵瑰簲鍗曟嵁浼犲叆鐨勬槸鍚︽縺娲绘暟鏄痜alse锛屽垯璁℃暟鍣�-1
+                        this.multiSouceBillList[index]['count']--;
+                    }
+                    if (this.multiSouceBillList[index]['count'] == 0) {
+                        // 娌℃湁閫変腑鐨勫崟鎹紝鍒欑Щ闄ょ紦瀛樹腑鐨勬暟鎹�
+                        this.multiSouceBillList.splice(index, 1)
+                    }
+                }
+                console.log('this.multiSouceBillList: ', this.multiSouceBillList);
+            },
+            getsWhere() {
+                let sWhere = ''
+                if (this.HBeginDate && this.HEndDate) {
+                    sWhere += ` and  CONVERT(varchar(100),鏃ユ湡, 23) between '${this.HBeginDate}' and '${this.HEndDate}'`
+                }
+
+
+                if (this.HNumber) {
+                    sWhere += ` and 浜у搧妯″叿浠g爜 like '%${this.HNumber}%'`
+                }
+
+                if (this.HName) {
+                    sWhere += ` and 浜у搧妯″叿 like '%${this.HName}%'`
+                }
+
+                if (this.HBillNo) {
+                    sWhere += ` and 鍗曟嵁鍙� like '%${this.HBillNo}%'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = 0
+                this.page = 0
+                this.curPage = 1
+                CommonUtils.doRequest(
+                    "/Sc_MouldConkBookBill/GetMouldConkBookBillList_PDA", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()["Czymc"]
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            this.length = Array.from(data).length
+                            const result = [];
+                            for (let i = 0; i < data.length; i += this.size) {
+                                result.push(data.slice(i, i + this.size));
+                            }
+                            this.HBillList = result
+                            this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: grid;
+            grid-template-columns: repeat(1, 1fr);
+            gap: 20rpx;
+
+            >view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                .left {
+                    display: inline-block;
+                    width: 6rem;
+                }
+
+                .right {
+                    display: inline-block;
+                }
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/CheckItemPopup.vue b/components/ZLGL/CheckItemPopup.vue
new file mode 100644
index 0000000..f08c2af
--- /dev/null
+++ b/components/ZLGL/CheckItemPopup.vue
@@ -0,0 +1,269 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>浠g爜: </text></view>
+                    <view class="right"><input type="text" v-model="HCode" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鍚嶇О: </text></view>
+                    <view class="right"><input type="text" v-model="HName" @confirm="getBillList" /></view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['鍚嶇О']" :extra="`浠g爜: ${bill['浠g爜']}`"
+                            @tap="clickCard(bill, index)">
+                            <view class="item">
+                                <view class="left">妫�楠岄」鐩被鍒�: </view>
+                                <view class="right">{{bill['妫�楠岄」鐩被鍒�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">绛夌骇: </view>
+                                <view class="right">{{bill['绛夌骇']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">绂佺敤鏍囪: </view>
+                                <view class="right">{{bill['绂佺敤鏍囪']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">澶囨敞: </view>
+                                <view class="right">{{bill['澶囨敞']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">浣跨敤鏍囪: </view>
+                                <view class="right">{{bill['浣跨敤鏍囪']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">浣跨敤缁勭粐: </view>
+                                <view class="right">{{bill['浣跨敤缁勭粐鍚嶇О']}}</view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size"
+                    :total="length"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HName: '',
+                HCode: '',
+                HBillList: [],
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere = ` and 绂佺敤鏍囪 !='Y' and  ISNULL(瀹℃牳浜�,'')!=''  and 浣跨敤缁勭粐鍚嶇О = '${ uni.getStorageSync("Organization")}'`
+
+               if (this.HCode) {
+                   swhere += ` and 浠g爜 like '%${this.HCode}%'`
+               }
+               if (this.HName) {
+                   swhere += ` and 鍚嶇О like '%${this.HName}%'`
+               }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = 0
+                this.page = 0
+                this.curPage = 1
+                CommonUtils.doRequest(
+                    "/Gy_CheckItem/list", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc']
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            this.length = Array.from(data).length
+                            const result = [];
+                            for (let i = 0; i < data.length; i += this.size) {
+                                result.push(data.slice(i, i + this.size));
+                            }
+                            this.HBillList = result
+                            this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: grid;
+            grid-template-columns: repeat(1, 1fr);
+            gap: 20rpx;
+
+            >view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                .left {
+                    display: inline-block;
+                    width: 6rem;
+                }
+
+                .right {
+                    display: inline-block;
+                }
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/CheckProjectPopup.vue b/components/ZLGL/CheckProjectPopup.vue
new file mode 100644
index 0000000..0fb9d35
--- /dev/null
+++ b/components/ZLGL/CheckProjectPopup.vue
@@ -0,0 +1,305 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>鏃ユ湡: </text></view>
+                    <view class="daterange" style="flex: 1;">
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HBeginDate">
+                                <view>{{HBeginDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                        <view>鈥�</view>
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HEndDate">
+                                <view>{{HEndDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                    </view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['妫�楠屾柟妗堝悕绉�']"
+                            @tap="clickCard(bill, index)">
+                            <view class="item" v-if="bill['鍗曟嵁鍙�']">
+                                <view class="left">鍗曟嵁鍙�: </view>
+                                <view class="right">{{bill['鍗曟嵁鍙�']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鏃ユ湡']">
+                                <view class="left">鏃ユ湡: </view>
+                                <view class="right">{{dayjs(bill['鏃ユ湡']).format("YYYY-MM-DD")}}</view>
+                            </view>
+                            <view class="item" v-if="bill['閮ㄩ棬鍚嶇О']">
+                                <view class="left">閮ㄩ棬鍚嶇О: </view>
+                                <view class="right">{{bill['閮ㄩ棬鍚嶇О']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['宸ュ簭鍚嶇О']">
+                                <view class="left">宸ュ簭鍚嶇О: </view>
+                                <view class="right">{{bill['宸ュ簭鍚嶇О']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鐗╂枡浠g爜']">
+                                <view class="left">鐗╂枡浠g爜: </view>
+                                <view class="right">{{bill['鐗╂枡浠g爜']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鐗╂枡鍚嶇О']">
+                                <view class="left">鐗╂枡鍚嶇О: </view>
+                                <view class="right">{{bill['鐗╂枡鍚嶇О']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['瑙勬牸鍨嬪彿']">
+                                <view class="left">瑙勬牸鍨嬪彿: </view>
+                                <view class="right">{{bill['瑙勬牸鍨嬪彿']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鐗╂枡澶х被浠g爜']">
+                                <view class="left">鐗╂枡澶х被浠g爜: </view>
+                                <view class="right">{{bill['鐗╂枡澶х被浠g爜']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鐗╂枡澶х被鍚嶇О']">
+                                <view class="left">鐗╂枡澶х被鍚嶇О: </view>
+                                <view class="right">{{bill['鐗╂枡澶х被鍚嶇О']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['鐢熶骇璧勬簮']">
+                                <view class="left">鐢熶骇璧勬簮: </view>
+                                <view class="right">{{bill['鐢熶骇璧勬簮']}}</view>
+                            </view>
+                            <view class="item" v-if="bill['榛樿鏂规']">
+                                <view class="left">榛樿鏂规: </view>
+                                <view class="right">{{bill['榛樿鏂规']}}</view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size"
+                    :total="length"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HName: '',
+                HCode: '',
+                HBillList: [],
+                panelHeight: 0,
+                HProcessName: '',
+                HMaterName: '',
+                HBeginDate: dayjs(new Date()).subtract(30, 'd').format("YYYY-MM-DD"),
+                HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere =
+                    ` and ISNULL(瀹℃牳浜�,'')!=''  and HOrgID  = '${ uni.getStorageSync("OrganizationID")}'`
+                if (this.HBeginDate && this.HEndDate) {
+                    sWhere += ` and  CONVERT(varchar(100),鏃ユ湡, 23) between '${this.HBeginDate}' and '${this.HEndDate}'`
+                }
+
+                if (this.HMaterName && this.HProcessName) {
+                    sWhere += ` and 鐗╂枡鍚嶇О = '${this.HMaterName}' and 宸ュ簭鍚嶇О = '${this.HProcessName}'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = 0
+                this.page = 0
+                this.curPage = 1
+                CommonUtils.doRequest(
+                    "/QC_Management/MES_QC_CheckProjectList_Json_Main", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc']
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            this.length = Array.from(data).length
+                            const result = [];
+                            for (let i = 0; i < data.length; i += this.size) {
+                                result.push(data.slice(i, i + this.size));
+                            }
+                            this.HBillList = result
+                            this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+            setRequiredInfo(MaterName, ProcessName) {
+                this.HMaterName = MaterName || ""
+                this.HProcessName = ProcessName || ""
+            }
+        },
+    }
+</script>
+
+<style lang="scss">
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: grid;
+            grid-template-columns: repeat(1, 1fr);
+            gap: 20rpx;
+
+            >view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                .left {
+                    display: inline-block;
+                    width: 6rem;
+                }
+
+                .right {
+                    display: inline-block;
+                }
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/ICMOBillPopup.vue b/components/ZLGL/ICMOBillPopup.vue
new file mode 100644
index 0000000..cb72dc2
--- /dev/null
+++ b/components/ZLGL/ICMOBillPopup.vue
@@ -0,0 +1,365 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>鏃ユ湡: </text></view>
+                    <view class="daterange" style="flex: 1;">
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HBeginDate">
+                                <view>{{HBeginDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                        <view>鈥�</view>
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HEndDate">
+                                <view>{{HEndDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                    </view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鐗╂枡缂栫爜: </text></view>
+                    <view class="right"><input type="text" v-model="HCode" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>涓氬姟鐘舵��: </text></view>
+                    <view class="right">
+                        <uni-combox :candidates="HStatusList" v-model="HStatus"></uni-combox>
+                    </view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList" :key="index" :title="bill['鏃ユ湡']" :extra="`${bill['鏃ユ湡']}`"
+                            @tap="clickCard(bill, index)">
+                            <view class="item-wrapper">
+                                <view class="item"  v-if="bill['鍗曟嵁鐘舵��']">
+                                    <view class="left">鍗曟嵁鐘舵��: </view>
+                                    <view class="right">{{bill['鍗曟嵁鐘舵��']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['鐘舵��']">
+                                    <view class="left" >鐘舵��: </view>
+                                    <view class="right">{{bill['鐘舵��']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['棰嗘枡鐘舵��']">
+                                    <view class="left" >棰嗘枡鐘舵��: </view>
+                                    <view class="right">{{bill['棰嗘枡鐘舵��']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['鏄惁鎺掍骇']">
+                                    <view class="left" >鏄惁鎺掍骇: </view>
+                                    <view class="right">{{bill['鏄惁鎺掍骇']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['宸叉眹鎶ユ暟閲�']">
+                                    <view class="left" >宸叉眹鎶ユ暟閲�: </view>
+                                    <view class="right">{{bill['宸叉眹鎶ユ暟閲�']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['宸叉眹鎶ュ鏍告暟閲�']">
+                                    <view class="left" >宸叉眹鎶ュ鏍告暟閲�: </view>
+                                    <view class="right">{{bill['宸叉眹鎶ュ鏍告暟閲�']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['宸ヨ壓璺嚎浠g爜']">
+                                    <view class="left" >宸ヨ壓璺嚎浠g爜: </view>
+                                    <view class="right">{{bill['宸ヨ壓璺嚎浠g爜']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['宸ヨ壓璺嚎']"> 
+                                    <view class="left" >宸ヨ壓璺嚎: </view>
+                                    <view class="right">{{bill['宸ヨ壓璺嚎']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['榻愬鏁伴噺']">
+                                    <view class="left" >榻愬鏁伴噺: </view>
+                                    <view class="right">{{bill['榻愬鏁伴噺']}}</view>
+                                </view>
+                                <view class="item"  v-if="bill['浜у搧浠g爜']">
+                                    <view class="left">浜у搧浠g爜: </view>
+                                    <view class="right">{{bill['浜у搧浠g爜']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['浜у搧鍚嶇О']">
+                                    <view class="left" >浜у搧鍚嶇О: </view>
+                                    <view class="right">{{bill['浜у搧鍚嶇О']}}</view>
+                                </view>
+                                <view class="item"  v-if="bill['瑙勬牸鍨嬪彿']">
+                                    <view class="left">瑙勬牸鍨嬪彿: </view>
+                                    <view class="right">{{bill['瑙勬牸鍨嬪彿']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['璁¢噺鍗曚綅浠g爜']">
+                                    <view class="left" >璁¢噺鍗曚綅浠g爜: </view>
+                                    <view class="right">{{bill['璁¢噺鍗曚綅浠g爜']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['璁¢噺鍗曚綅']">
+                                    <view class="left">璁¢噺鍗曚綅: </view>
+                                    <view class="right">{{bill['璁¢噺鍗曚綅']}}</view>
+                                </view>
+                                <view class="item"  v-if="bill['鐢熶骇浠诲姟鍗曟暟閲�']">
+                                    <view class="left">鐢熶骇浠诲姟鍗曟暟閲�: </view>
+                                    <view class="right">{{bill['鐢熶骇浠诲姟鍗曟暟閲�']}}</view>
+                                </view>
+                                <view class="item"  v-if="bill['娴佽浆鍗℃暟閲�']">
+                                    <view class="left">娴佽浆鍗℃暟閲�: </view>
+                                    <view class="right">{{bill['娴佽浆鍗℃暟閲�']}}</view>
+                                </view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size" :total="length"
+                    @update:modelValue="pageUpdate"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HStatus: '寮�宸�',
+                HStatusList: ['寮�宸�', '璁″垝', '璁″垝纭', '涓嬭揪', '鍏ㄩ儴', '瀹屽伐', '缁撴'],
+                HCode: '',
+                HBillList: [],
+                HBeginDate: dayjs(new Date()).subtract(30, 'd').format("YYYY-MM-DD"),
+                HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            async pageUpdate(e) {
+                console.log('e: ', e);
+                this.curPage = e
+                await this.$nextTick()
+                this.getBillList()
+            },
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere =
+                    ` and 鍗曟嵁鐘舵�� = '宸插鏍�' and 琛岀姸鎬� = ''  and HPRDORGID = '${uni.getStorageSync("OrganizationID")}'`
+
+                if (this.HBeginDate && this.HEndDate) {
+                    sWhere += ` and  CONVERT(varchar(100),鏃ユ湡, 23) between '${this.HBeginDate}' and '${this.HEndDate}'`
+                }
+                if (this.HCode) {
+                    sWhere += ` and 鐗╂枡缂栫爜 like '%${this.HCode}%'`
+                }
+                if (this.HStatus) {
+                    sWhere += ` and 鐘舵�� like '%${this.HStatus}%'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = this.length || 0
+                this.page = 0
+                this.curPage = this.curPage || 1
+                CommonUtils.doRequest(
+                    "/LEMS/MES_IF_ICMOBillList_Json_byPage", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc'],
+                        Organization: uni.getStorageSync("Organization"),
+                        page: this.curPage,
+                        size: this.size
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count > 0) {
+                            this.length = count
+                            // const result = [];
+                            // for (let i = 0; i < data.length; i += this.size) {
+                            //     result.push(data.slice(i, i + this.size));
+                            // }
+                            this.HBillList = data
+                            // this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    button {}
+
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+
+                .uni-combox {
+                    padding: 0;
+                    height: auto;
+
+                    .uni-input-placeholder,
+                    .uni-input-input {
+                        font-size: 26rpx;
+                    }
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .item-wrapper {
+                display: flex;
+                flex-direction: row;
+                flex-wrap: wrap;
+                gap: 8rpx 0;
+            }
+
+            view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                display: flex;
+                flex-direction: row;
+                align-items: center;
+
+                .left {
+                    padding: 0 20rpx;
+                }
+
+                .right {}
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/InspectMentPopup.vue b/components/ZLGL/InspectMentPopup.vue
new file mode 100644
index 0000000..401b4e5
--- /dev/null
+++ b/components/ZLGL/InspectMentPopup.vue
@@ -0,0 +1,288 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>浠g爜: </text></view>
+                    <view class="right"><input type="text" v-model="HCode" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鍚嶇О: </text></view>
+                    <view class="right"><input type="text" v-model="HName" @confirm="getBillList" /></view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['妫�楠屼华鍣ㄥ悕绉�']"
+                            :extra="`浠g爜: ${bill['妫�楠屼华鍣ㄤ唬鐮�']}`" @tap="clickCard(bill, index)">
+                            <view class="item-wrapper">
+                                <view class="item">
+                                    <view class="left">鏍″噯鐘舵��: </view>
+                                    <view class="right">{{bill['鏍″噯鐘舵��']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left">鏍″噯鏃ユ湡: </view>
+                                    <view class="right">{{dayjs(bill['鏍″噯鏃ユ湡']).format("YYYY-MM-DD")}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left">鏈夋晥鏃ユ湡: </view>
+                                    <view class="right">{{dayjs(bill['鏈夋晥鏃ユ湡']).format("YYYY-MM-DD")}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left">鍒版湡澶╂暟: </view>
+                                    <view class="right">{{bill['鍒版湡澶╂暟']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left">绂佺敤鏍囧織: </view>
+                                    <view class="right">{{bill['绂佺敤鏍囧織']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['澶囨敞']">
+                                    <view class="left">澶囨敞: </view>
+                                    <view class="right">{{bill['澶囨敞']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left">浣跨敤鐘舵��: </view>
+                                    <view class="right">{{bill['浣跨敤鐘舵��']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left">浣跨敤缁勭粐: </view>
+                                    <view class="right">{{bill['浣跨敤缁勭粐鍚嶇О']}}</view>
+                                </view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="" v-model="curPage" :pageSize="size"
+                    :total="length"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HName: '',
+                HCode: '',
+                HBillList: [],
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere =
+                    ` and 浣跨敤缁勭粐鍚嶇О = '${uni.getStorageSync("Organization")}'  and 绂佺敤鏍囧織 !='鏄�' and ISNULL(瀹℃牳浜�,'')!=''  `
+
+                if (this.HCode) {
+                    swhere += ` and 妫�楠屼华鍣ㄤ唬鐮� like '%${this.HCode}%'`
+                }
+                if (this.HName) {
+                    swhere += ` and 妫�楠屼华鍣ㄥ悕绉� like '%${this.HName}%'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = 0
+                this.page = 0
+                this.curPage = 1
+                CommonUtils.doRequest(
+                    "/Gy_BadReason/Gy_InspectInstruMentList", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc']
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            this.length = Array.from(data).length
+                            const result = [];
+                            for (let i = 0; i < data.length; i += this.size) {
+                                result.push(data.slice(i, i + this.size));
+                            }
+                            this.HBillList = result
+                            this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            view {
+                margin: 0 !important;
+                box-sizing: border-box;
+            }
+            .item-wrapper{
+                display: flex;
+                flex-direction: row;
+                flex-wrap: wrap;
+                gap: 8rpx 20rpx;
+            }
+
+            .item {
+                display: flex;
+                flex-direction: row;
+                align-items: center;
+                
+
+                .left {
+                    width: 5rem;
+                }
+
+                .right {}
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/InspectValueTemplate.vue b/components/ZLGL/InspectValueTemplate.vue
new file mode 100644
index 0000000..bbfe0f9
--- /dev/null
+++ b/components/ZLGL/InspectValueTemplate.vue
@@ -0,0 +1,309 @@
+<template>
+    <view>
+        <view class="inspect-value-content">
+            <view class="form-item">
+                <view class="left">椤圭洰搴忓彿</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.num" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">妫�楠岄」鐩�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HQCCheckItemName" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">鏍锋湰閲�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HSampleQty" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">妫�楠岀粨鏋�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HResult2" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">涓嶅悎鏍兼暟</view>
+                <view class="right">
+                    <input type="number" v-model="checkData.HSampleUnRightQty" />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">淇濈暀灏忔暟浣�</view>
+                <view class="right">
+                    <input type="number" v-model="checkData.HResDec" />
+                </view>
+            </view>
+            <view style="width: 100%;border-bottom: 1px solid #e3e3e3;"></view>
+            <view class="form-item" style="width: 100%;">
+                <view class="left">鐘舵��</view>
+                <view class="right none-border">
+                    <view style="width: 4em; ">
+                        {{ checkData.HStatus?"鍚堟牸":"涓嶅悎鏍�" }}
+                    </view>
+                    <view>
+                        <switch style="width: 2em; transform:scale(0.7);" :checked="checkData.HStatus?'checked':''"
+                            @change="HStatusChange" />
+                    </view>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">姣旇緝绗�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HResult2" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">鍗曚綅</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HTargetVal" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">妫�楠屽��</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HInspectVal" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">鐩爣鍊�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HTargetVal" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">涓婇檺鍊�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HUpLimit" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">涓嬮檺鍊�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HDownLimit" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">涓婂亸宸�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HUpOffset" disabled />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">涓嬪亸宸�</view>
+                <view class="right disabled">
+                    <input type="text" v-model="checkData.HDownOffset" disabled />
+                </view>
+            </view>
+            <view style="width: 100%;border-bottom: 1px solid #e3e3e3;"></view>
+            <view class="inspect-value-list">
+                <view style="width: 100%;text-align: right;">
+                    <button type="default" size="mini" class="btn-a" @click="storeInspectValue">缂撳瓨妫�楠屽��</button>
+                </view>
+                <view class="item" style="border-top: 2px solid #e3e3e3 ;">
+                    <view class="th1">搴忓彿</view>
+                    <view class="th2" style="display: flex; flex-direction: row; align-items: center;">
+                        妫�楠岀粨鏋�
+                    </view>
+                    <view class="th3">
+                        妫�楠屽��({{getAnalysisMethodTitle(checkData.HAnalysisMethod)}})
+                    </view>
+                </view>
+                <view class="item" v-for="(item, index) in inspectValues">
+                    <view class="th1">{{item.HSEQ}}</view>
+                    <view class="th2" style="display: flex; flex-direction: row; align-items: center;">
+                        <view style="width: 3em; ">
+                            {{ item.HInspectResult?"鍚堟牸":"涓嶅悎鏍�" }}
+                        </view>
+                        <view>
+                            <switch style="width: 3em; transform:scale(0.7);" :checked="item.HInspectResult?'checked':''"
+                                @change="HInspectResultChange(index, $event)" />
+                        </view>
+                    </view>
+                    <view class="th3">
+                        <input type="number" v-model="item.HInspectValue" />
+                    </view>
+                </view>
+            </view>
+        </view>
+    </view>
+</template>
+
+<script>
+    // 妫�楠屽�兼ā鏉�
+    export default {
+        name: "InspectValueTemplate",
+        data() {
+            return {
+                checkData: {
+                    HResDec: 2,
+                    HResult2: '',
+                    HStatus: true,
+                },
+                inspectValues: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            bindData: {
+                type: Object,
+                required: true
+            }
+        },
+        mounted() {
+            console.log('bingData: ', this.bindData);
+            let {data, list} = this.bindData
+            this.checkData = Object.assign(data, JSON.parse(JSON.stringify(this.bindData)))
+            // 鍒ゆ柇鏄惁鏈夌紦瀛樻暟鎹垨鑰呯紦瀛樻暟鎹槸鍚︿笌鏍锋湰鏁颁竴鑷�
+            if(!list || list.length != this.checkData.HSampleQty ){
+                for (let index = 0; index < this.checkData.HSampleQty; index++) {
+                    this.inspectValues.push({
+                        HSEQ: index + 1,
+                        HInspectResult: true,
+                        HInspectValue: 0,
+                    })
+                }
+            }else {
+                this.inspectValues = list
+            }
+           
+            this.$forceUpdate()
+        },
+        methods: {
+            storeInspectValue(){
+                this.$emit("update", {
+                    data: this.checkData,
+                    list: this.inspectValues
+                })
+            },
+            getAnalysisMethodTitle(type){
+                if(type == 1) {
+                    return '瀹氭�у垎鏋�'
+                }else if(type == 2){
+                    return '瀹氶噺鍒嗘瀽'
+                }
+                return '鍏朵粬鍒嗘瀽'
+            },
+            HStatusChange(e) {
+                this.checkData.HStatus = e.detail.value
+            },
+            HInspectResultChange(index, e) {
+                console.log('e: ',e.detail.value);
+                this.inspectValues[index].HInspectResult = e.detail.value
+            },
+
+        }
+    }
+</script>
+
+<style lang="scss">
+    input {
+        height: inherit;
+        width: inherit;
+        font-size: 26rpx;
+    }
+
+    .inspect-value-content {
+        box-sizing: border-box;
+        padding: 20rpx 10rpx;
+        display: flex;
+        flex-direction: row;
+        flex-wrap: wrap;
+        gap: 20rpx 0;
+
+        .form-item {
+            width: 50%;
+            display: flex;
+            align-items: center;
+            font-size: 26rpx;
+            box-sizing: border-box;
+            padding-left: 20rpx;
+
+            .left {
+                width: 5em;
+
+                text {
+                    color: red;
+                    font-weight: bold;
+                }
+            }
+
+            .right {
+                // width: 450rpx;
+                padding: 8rpx 20rpx;
+                font-size: 26rpx;
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                display: flex;
+                flex-direction: row;
+                align-items: center;
+            }
+
+            .disabled {
+                border: 1px solid #e4e4e4;
+                background-color: #e4e4e4;
+            }
+
+            .none-border {
+                border: none;
+            }
+        }
+    }
+
+    .inspect-value-list {
+        box-sizing: border-box;
+        display: flex;
+        flex-direction: column;
+        width: 100%;
+
+        .item {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            font-size: 30rpx;
+        }
+
+        .th1 {
+            height: 100%;
+            width: 4em;
+            border: #e4e4e4 2px solid;
+            border-top: 0;
+            display: flex;
+            align-items: center;
+            box-sizing: border-box;
+            padding: 8rpx 16rpx;
+        }
+
+        .th2 {
+            height: 100%;
+            width: 50%;
+            border: #e4e4e4 2px solid;
+            border-left: 0;
+            border-top: 0;
+            box-sizing: border-box;
+            padding: 8rpx 16rpx;
+        }
+
+        .th3 {
+            height: 100%;
+            flex: 1;
+            border: #e4e4e4 2px solid;
+            border-left: 0;
+            border-top: 0;
+            box-sizing: border-box;
+            padding: 8rpx 16rpx;
+        }
+    }
+
+    .btn-a {
+        background-color: #3A78FF;
+        color: #fff;
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/MaterialPopup.vue b/components/ZLGL/MaterialPopup.vue
new file mode 100644
index 0000000..9561b5b
--- /dev/null
+++ b/components/ZLGL/MaterialPopup.vue
@@ -0,0 +1,306 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>鐗╂枡浠g爜: </text></view>
+                    <view class="right"><input type="text" v-model="HCode" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鐗╂枡鍚嶇О: </text></view>
+                    <view class="right"><input type="text" v-model="HName" @confirm="getBillList" /></view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList" :key="index" :title="bill['鐗╂枡鍚嶇О']"
+                            :extra="`浠g爜: ${bill['鐗╂枡浠g爜']}`" @tap="clickCard(bill, index)">
+                            <view class="item-wrapper">
+                                <view class="item">
+                                    <view class="left" v-if="bill['瑙勬牸鍨嬪彿'].trim()">瑙勬牸鍨嬪彿: </view>
+                                    <view class="right">{{bill['瑙勬牸鍨嬪彿']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['璁¢噺鍗曚綅鍚嶇О']">璁¢噺鍗曚綅鍚嶇О: </view>
+                                    <view class="right">{{bill['璁¢噺鍗曚綅鍚嶇О']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['浠撳簱鍚嶇О']">浠撳簱鍚嶇О: </view>
+                                    <view class="right">{{bill['浠撳簱鍚嶇О']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['鐗╂枡鍒嗙被鍚嶇О']">鐗╂枡鍒嗙被鍚嶇О: </view>
+                                    <view class="right">{{bill['鐗╂枡鍒嗙被鍚嶇О']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['鐗╂枡灞炴��']">鐗╂枡灞炴��: </view>
+                                    <view class="right">{{bill['鐗╂枡灞炴��']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['鍩烘湰璁¢噺鍗曚綅']">鍩烘湰璁¢噺鍗曚綅: </view>
+                                    <view class="right">{{bill['鍩烘湰璁¢噺鍗曚綅']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['浜嬩笟閮�']">浜嬩笟閮�: </view>
+                                    <view class="right">{{bill['浜嬩笟閮�']}}</view>
+                                </view> 
+                                <view class="item">
+                                    <view class="left" v-if="bill['缁勭粐鍚嶇О']">缁勭粐鍚嶇О: </view>
+                                    <view class="right">{{bill['缁勭粐鍚嶇О']}}</view>
+                                </view>
+                                <view class="item">
+                                    <view class="left" v-if="bill['澶囨敞']">澶囨敞: </view>
+                                    <view class="right">{{bill['澶囨敞']}}</view>
+                                </view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size" :total="length"
+                    @update:modelValue="pageUpdate"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HName: '',
+                HCode: '',
+                HBillList: [],
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            async pageUpdate(e) {
+                console.log('e: ', e);
+                this.curPage = e
+                await this.$nextTick()
+                this.getBillList()
+            },
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere =
+                    `  and 1=1 and 绂佺敤鏍囪 = '' and ISNULL(瀹℃牳浜�,'') <> '' and HUSEORGID =  '${uni.getStorageSync("OrganizationID")}'`
+
+                if (this.HCode) {
+                    sWhere += ` and 鐗╂枡浠g爜 like '%${this.HCode}%'`
+                }
+                if (this.HName) {
+                    sWhere += ` and 鐗╂枡鍚嶇О like '%${this.HName}%'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = this.length || 0
+                this.page = 0
+                this.curPage = this.curPage || 1
+                CommonUtils.doRequest(
+                    "/Gy_Material/page", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc'],
+                        Organization: uni.getStorageSync("Organization"),
+                        page: this.curPage,
+                        size: this.size
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count > 0) {
+                            this.length = count
+                            // const result = [];
+                            // for (let i = 0; i < data.length; i += this.size) {
+                            //     result.push(data.slice(i, i + this.size));
+                            // }
+                            this.HBillList = data
+                            // this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    button {
+        
+    }
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .item-wrapper {
+                display: flex;
+                flex-direction: row;
+                flex-wrap: wrap;
+                gap: 8rpx 0;
+            }
+
+            view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                display: flex;
+                flex-direction: row;
+                align-items: center;
+
+                .left {
+                   padding: 0 20rpx;
+                }
+
+                .right {
+                    
+                }
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/ProcExchBillPopup.vue b/components/ZLGL/ProcExchBillPopup.vue
new file mode 100644
index 0000000..85aa2ee
--- /dev/null
+++ b/components/ZLGL/ProcExchBillPopup.vue
@@ -0,0 +1,369 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>鏃ユ湡: </text></view>
+                    <view class="daterange" style="flex: 1;">
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HBeginDate">
+                                <view>{{HBeginDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                        <view>鈥�</view>
+                        <view class="right general">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="HEndDate">
+                                <view>{{HEndDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                    </view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鐢熶骇璁㈠崟鍙�: </text></view>
+                    <view class="right"><input type="text" v-model="HPrdOrderBillNo" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>鐢熶骇杞﹂棿: </text></view>
+                    <view class="right">
+                        <uni-combox :candidates="HWorkShopList" v-model="HWorkShop"></uni-combox>
+                    </view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList" :key="index" :title="bill['鍗曟嵁鍙�']" :extra="`${bill['鏃ユ湡']}`"
+                            @tap="clickCard(bill, index)">
+                            <view class="item-wrapper">
+                                <view class="item" v-if="bill['鐢熶骇璁㈠崟鍙�']">
+                                    <view class="left">鐢熶骇璁㈠崟鍙�: </view>
+                                    <view class="right">{{bill['鐢熶骇璁㈠崟鍙�']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['鍗曟嵁鐘舵��']">
+                                    <view class="left">鍗曟嵁鐘舵��: </view>
+                                    <view class="right">{{bill['鍗曟嵁鐘舵��']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['浜у搧浠g爜']">
+                                    <view class="left">浜у搧浠g爜: </view>
+                                    <view class="right">{{bill['浜у搧浠g爜']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['浜у搧鍚嶇О']">
+                                    <view class="left">浜у搧鍚嶇О: </view>
+                                    <view class="right">{{bill['浜у搧鍚嶇О']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['浜у搧瑙勬牸']">
+                                    <view class="left">浜у搧瑙勬牸: </view>
+                                    <view class="right">{{bill['浜у搧瑙勬牸']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['娴佽浆鍗℃暟閲�']">
+                                    <view class="left">娴佽浆鍗℃暟閲�: </view>
+                                    <view class="right">{{bill['娴佽浆鍗℃暟閲�']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['鍗曚綅']">
+                                    <view class="left">鍗曚綅: </view>
+                                    <view class="right">{{bill['鍗曚綅']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['瀹㈡埛']">
+                                    <view class="left">瀹㈡埛: </view>
+                                    <view class="right">{{bill['瀹㈡埛']}}</view>
+                                </view>
+                                <view class="item" v-if="bill['涓氬姟鍛�']">
+                                    <view class="left">涓氬姟鍛�: </view>
+                                    <view class="right">{{bill['涓氬姟鍛�']}}</view>
+                                </view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size" :total="length"
+                    @update:modelValue="pageUpdate"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HWorkShop: '鍏ㄩ儴杞﹂棿',
+                HWorkShopList: ['鍏ㄩ儴杞﹂棿'],
+                HWorkShopValues: [],
+                HCode: '',
+                HBillList: [],
+                HPrdOrderBillNo: '',
+                HBeginDate: dayjs(new Date()).subtract(30, 'd').format("YYYY-MM-DD"),
+                HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            async pageUpdate(e) {
+                console.log('e: ', e);
+                this.curPage = e
+                await this.$nextTick()
+                this.getBillList()
+            },
+            async popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async getDept() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Sc_ICMOBill/GetHDeptList',
+                        data: {
+                            "HOrgID": uni.getStorageSync("OrganizationID")
+                        }
+                    })
+                    
+                    let {data, count, Message} = res.data
+                    if(count == 1) {
+                        this.HWorkShopList = ['鍏ㄩ儴杞﹂棿']
+                        this.HWorkShopList.push(...Array.from(data).map(e => e.HName))
+                        this.HWorkShopValues = data
+                    }else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栬溅闂村け璐�: ${Message}`
+                        })
+                    }
+                }catch(err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栬溅闂村け璐�: ${err}`
+                    })
+                }
+                
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere =
+                    `  and 鎵撳嵃娆℃暟 >= 0 and HPRDORGID = '${uni.getStorageSync("OrganizationID")}' and ISNULL(瀹℃牳浜�,'') != '' and ISNULL(鍏抽棴浜�,'')='' and HBillSubType<>'SUB'`
+
+                if (this.HBeginDate && this.HEndDate) {
+                    sWhere += ` and  CONVERT(varchar(100),鏃ユ湡, 23) between '${this.HBeginDate}' and '${this.HEndDate}'`
+                }
+                if (this.HPrdOrderBillNo) {
+                    sWhere += ` and 鐢熶骇璁㈠崟鍙� like'%${this.HPrdOrderBillNo}%`
+                }
+                if (this.HWorkShop != '鍏ㄩ儴杞﹂棿') {
+                    let workshopValue = this.HWorkShopValues.find(e => e.HName = this.HStatus )
+                    sWhere += ` and HWorkShopID like '%${workshopValue.HItemID}%'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = this.length || 0
+                this.page = 0
+                this.curPage = this.curPage || 1
+                CommonUtils.doRequest(
+                    "/LEMS/Sc_ProcessExchangeBillList_Query_byPage", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc'],
+                        Organization: uni.getStorageSync("Organization"),
+                        page: this.curPage,
+                        size: this.size,
+                        HBillSubType: 3772
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count > 0) {
+                            this.length = count
+                            // const result = [];
+                            // for (let i = 0; i < data.length; i += this.size) {
+                            //     result.push(data.slice(i, i + this.size));
+                            // }
+                            this.HBillList = data
+                            // this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    button {}
+
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+
+                .uni-combox {
+                    padding: 0;
+                    height: auto;
+
+                    .uni-input-placeholder,
+                    .uni-input-input {
+                        font-size: 26rpx;
+                    }
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .item-wrapper {
+                display: flex;
+                flex-direction: row;
+                flex-wrap: wrap;
+                gap: 8rpx 0;
+            }
+
+            view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                display: flex;
+                flex-direction: row;
+                align-items: center;
+
+                .left {
+                    padding: 0 20rpx;
+                }
+
+                .right {}
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/ProcessPopup.vue b/components/ZLGL/ProcessPopup.vue
new file mode 100644
index 0000000..7420f34
--- /dev/null
+++ b/components/ZLGL/ProcessPopup.vue
@@ -0,0 +1,269 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="search-condition">
+                    <view class="title"><text>宸ュ簭浠g爜: </text></view>
+                    <view class="right"><input type="text" v-model="HCode" @confirm="getBillList" /></view>
+                </view>
+                <view class="search-condition">
+                    <view class="title"><text>宸ュ簭鍚嶇О: </text></view>
+                    <view class="right"><input type="text" v-model="HName" @confirm="getBillList" /></view>
+                </view>
+                <view class="buttons">
+                    <button size="mini" type="primary" @click="search">鏌ヨ</button>
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['宸ュ簭鍚嶇О']" :extra="`${bill['宸ュ簭浠g爜']}`"
+                            @tap="clickCard(bill, index)">
+                            <view class="item">
+                                <view class="left">妫�楠岄」鐩被鍒�: </view>
+                                <view class="right">{{bill['妫�楠岄」鐩被鍒�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">绛夌骇: </view>
+                                <view class="right">{{bill['绛夌骇']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">绂佺敤鏍囪: </view>
+                                <view class="right">{{bill['绂佺敤鏍囪']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">澶囨敞: </view>
+                                <view class="right">{{bill['澶囨敞']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">浣跨敤鏍囪: </view>
+                                <view class="right">{{bill['浣跨敤鏍囪']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">浣跨敤缁勭粐: </view>
+                                <view class="right">{{bill['浣跨敤缁勭粐鍚嶇О']}}</view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size"
+                    :total="length"></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HName: '',
+                HCode: '',
+                HBillList: [],
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere = ` and 绂佺敤鏍囪 !='Y' and  ISNULL(瀹℃牳浜�,'')!=''  and HUSEORGID = '${ uni.getStorageSync("OrganizationID")}'`
+
+               if (this.HCode) {
+                   swhere += ` and 宸ュ簭浠g爜 like '%${this.HCode}%'`
+               }
+               if (this.HName) {
+                   swhere += ` and 宸ュ簭鍚嶇О like '%${this.HName}%'`
+               }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = 0
+                this.page = 0
+                this.curPage = 1
+                CommonUtils.doRequest(
+                    "/Gy_Process/list", {
+                        sWhere: this.getsWhere(),
+                        user: getUserInfo()['Czymc']
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            this.length = Array.from(data).length
+                            const result = [];
+                            for (let i = 0; i < data.length; i += this.size) {
+                                result.push(data.slice(i, i + this.size));
+                            }
+                            this.HBillList = result
+                            this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: grid;
+            grid-template-columns: repeat(1, 1fr);
+            gap: 20rpx;
+
+            >view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                .left {
+                    display: inline-block;
+                    width: 6rem;
+                }
+
+                .right {
+                    display: inline-block;
+                }
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/components/ZLGL/SampleSchemePopup.vue b/components/ZLGL/SampleSchemePopup.vue
new file mode 100644
index 0000000..a419f8c
--- /dev/null
+++ b/components/ZLGL/SampleSchemePopup.vue
@@ -0,0 +1,290 @@
+<template>
+    <view>
+        <uni-popup ref="popup" type="bottom" @change="popupChangeHandler">
+            <view class="content">
+                <view class="buttons">
+                    <view style="flex: 1;"></view>
+                    <button size="mini" type="primary" @click="exit">閫�鍑�</button>
+                </view>
+                <scroll-view id="#BillListPanel" scroll-y="true" style="height: 55vh;">
+                    <view class="options-wrapper" v-show="HBillList.length != 0">
+                        <uni-card :is-active="bill.isActive" :class="bill.isActive?'uni-card--is-active':''"
+                            v-for="(bill, index) in HBillList[curPage-1]" :key="index" :title="bill['鎶芥牱鏂规鍚嶇О']"
+                            @tap="clickCard(bill, index)">
+                            <view class="item">
+                                <view class="left">鎶芥牱鏂规浠g爜: </view>
+                                <view class="right">{{bill['鎶芥牱鏂规浠g爜']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">鎶芥牱绫诲瀷: </view>
+                                <view class="right">{{bill['鎶芥牱绫诲瀷']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">妫�楠屾按骞�: </view>
+                                <view class="right">{{bill['妫�楠屾按骞�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">涓ユ牸搴�: </view>
+                                <view class="right">{{bill['涓ユ牸搴�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">AQL: </view>
+                                <view class="right">{{bill['AQL']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">鏍锋湰閲�: </view>
+                                <view class="right">{{bill['鏍锋湰閲�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">鍏佽鏁�: </view>
+                                <view class="right">{{bill['鍏佽鏁�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">鎷掔粷鏁�: </view>
+                                <view class="right">{{bill['鎷掔粷鏁�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">涓婇檺鍊�: </view>
+                                <view class="right">{{bill['涓婇檺鍊�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">涓嬮檺鍊�: </view>
+                                <view class="right">{{bill['涓嬮檺鍊�']}}</view>
+                            </view>
+                            <view class="item">
+                                <view class="left">浣跨敤缁勭粐: </view>
+                                <view class="right">{{bill['浣跨敤缁勭粐']}}</view>
+                            </view>
+                        </uni-card>
+                    </view>
+                    <view class="over" v-show="HBillList.length == 0">鏆傛棤鏁版嵁</view>
+                </scroll-view>
+                <uni-pagination id="#pagination" title="鏍囬鏂囧瓧" v-model="curPage" :pageSize="size"
+                    :total="length" ></uni-pagination>
+            </view>
+
+        </uni-popup>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs';
+    import {
+        CommonUtils
+    } from '@/utils/common';
+    import {
+        getUserInfo
+    } from '@/utils/auth';
+    export default {
+        name: "SampleSchemePopup",
+        emits: ["update:modelValue"],
+        data() {
+            return {
+                dayjs: dayjs,
+                enablefocus: false,
+                size: 20,
+                curPage: 1,
+                length: 0,
+                page: 0,
+                HSourceBillNo: '',
+                HMater: '',
+                HCustom: '',
+                HBillList: [],
+                panelHeight: 0,
+
+                multiSouceBillList: []
+            };
+        },
+        props: {
+            bindKey: {
+                type: [String, Number],
+                required: true
+            },
+            HStockOrgID: {
+                type: [String, Number],
+            },
+        },
+        methods: {
+            popupChangeHandler(e) {
+                if (e.show === true) {
+                    this.getBillList()
+                }
+            },
+            async exit() {
+                this.size = 20
+                this.curPage = 1
+                this.length = 0
+                this.page = 0
+                this.HSourceBillNo = ''
+                this.HMater = ''
+                this.HCustom = ''
+                this.HBillList = []
+                this.enablefocus = false
+                this.multiSouceBillList = []
+                // 闇�瑕佺瓑寰呴〉闈㈠唴鐨勬暟鎹祴鍊煎畬姣�
+                await this.$nextTick()
+                this.$refs.popup.close();
+            },
+            search() {
+                this.getBillList()
+            },
+            showPopup() {
+                this.$refs.popup.open();
+            },
+            clickCard(bill, index) {
+                let retVal = {}
+                retVal[this.bindKey] = bill
+                console.log('retVal: ', retVal);
+                this.$emit("update", {
+                    retVal: retVal
+                })
+            },
+            getsWhere() {
+                let sWhere = ''
+                if (this.HBeginDate && this.HEndDate) {
+                    sWhere += ` and  CONVERT(varchar(100),鏃ユ湡, 23) between '${this.HBeginDate}' and '${this.HEndDate}'`
+                }
+
+
+                if (this.HNumber) {
+                    sWhere += ` and 浜у搧妯″叿浠g爜 like '%${this.HNumber}%'`
+                }
+
+                if (this.HName) {
+                    sWhere += ` and 浜у搧妯″叿 like '%${this.HName}%'`
+                }
+
+                if (this.HBillNo) {
+                    sWhere += ` and 鍗曟嵁鍙� like '%${this.HBillNo}%'`
+                }
+                return sWhere
+            },
+            getBillList() {
+                this.HBillList = []
+                this.length = 0
+                this.page = 0
+                this.curPage = 1
+                CommonUtils.doRequest(
+                    "/Web/GetGy_SampleScheme", {
+                        SampleScheme: '',
+                        OrganizationID: this.HStockOrgID || uni.getStorageSync("OrganizationID")
+                    },
+                    (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            this.length = Array.from(data).length
+                            const result = [];
+                            for (let i = 0; i < data.length; i += this.size) {
+                                result.push(data.slice(i, i + this.size));
+                            }
+                            this.HBillList = result
+                            this.page = result.length
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                        } else {
+                            setTimeout(() => {
+                                this.enablefocus = true
+                            }, 500)
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                )
+            },
+        },
+    }
+</script>
+
+<style lang="scss">
+    .content {
+        box-sizing: border-box;
+        border-radius: 15rpx 15rpx 0 0;
+        padding: 20rpx 20rpx 40rpx 20rpx;
+        background-color: #fff;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+
+        .search-condition {
+            display: flex;
+            flex-direction: row;
+            align-items: center;
+            gap: 20rpx;
+            font-size: 30rpx;
+
+            .title {
+                width: 5rem;
+                text-align: right;
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                height: auto;
+                padding: 8rpx 16rpx;
+
+                input {
+                    width: 100%;
+                    font-size: 30rpx;
+                }
+            }
+        }
+
+        .buttons {
+            display: flex;
+            flex-direction: row;
+            gap: 20rpx;
+            justify-content: flex-end;
+
+            >button {
+                display: inline-flex;
+                width: 4rem;
+            }
+        }
+
+        .options-wrapper {
+            padding: 20rpx;
+            display: grid;
+            grid-template-columns: repeat(1, 1fr);
+            gap: 20rpx;
+
+            >view {
+                margin: 0 !important;
+                box-sizing: border-box;
+
+            }
+
+            .item {
+                .left {
+                    display: inline-block;
+                    width: 6rem;
+                }
+
+                .right {
+                    display: inline-block;
+                }
+            }
+        }
+
+        .uni-card--is-active {
+            background-color: rgba(0, 122, 255, 0.2);
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/manifest.json b/manifest.json
index 1191ef6..46f764f 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
     "name" : "鏅轰簯LMES",
     "appid" : "__UNI__B002F49",
     "description" : "",
-    "versionName" : "2.0.4",
-    "versionCode" : 204,
+    "versionName" : "2.0.9",
+    "versionCode" : 209,
     "transformPx" : false,
     /* 5+App鐗规湁鐩稿叧 */
     "app-plus" : {
diff --git a/pages.json b/pages.json
index 97f2100..9b372bb 100644
--- a/pages.json
+++ b/pages.json
@@ -562,6 +562,7 @@
 				"navigationBarTitleText": "涓嬫ā鍗�"
 			}
 		},
+<<<<<<< .mine
 		{
 			"path": "pages/MJGL/mujudianjianjiludan/table",
 			"style": {
@@ -569,6 +570,15 @@
 				"enablePullDownRefresh": true
 			}
 		},
+=======
+        {
+            "path": "pages/qitachukujiaoyan/qitachukujiaoyan",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍑哄簱鏍¢獙",
+                "enablePullDownRefresh": true
+            }
+        },
+>>>>>>> .theirs
 		{
 			"path": "pages/MJGL/mujudianjianjiludan/form",
 			"style": {
@@ -581,6 +591,7 @@
 				"navigationBarTitleText": "妯″叿淇濆吇璁板綍瀛愯〃"
 			}
 		},
+<<<<<<< .mine
 		{
 			"path": "pages/MJGL/mujubaoyangjiludan/table",
 			"style": {
@@ -588,12 +599,22 @@
 				"enablePullDownRefresh": true
 			}
 		},
+=======
+        },
+        {
+            "path": "pages/shengchanbuliaojiaoyan/form",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇琛ユ枡鍗曟牎楠�"
+            }
+        },
+>>>>>>> .theirs
 		{
 			"path": "pages/MJGL/mujubaoyangjiludan/form",
 			"style": {
 				"navigationBarTitleText": "妯″叿淇濆吇璁板綍鍗�"
 			}
 		},
+<<<<<<< .mine
 		{
 			"path": "pages/MJGL/mujubaoyangjiludan/table_son",
 			"style": {
@@ -730,6 +751,144 @@
 			"style": {
 				"navigationBarTitleText": "鐢熶骇鍏ュ簱鍗�"
 			}
+=======
+        },
+        {
+            "path": "pages/xiaoshouchukujiaoyan/form",
+            "style": {
+                "navigationBarTitleText": "閿�鍞嚭搴撳崟鏍¢獙"
+            }
+        },
+        {
+            "path": "pages/weiwailingliaojiaoyan/table",
+            "style": {
+                "navigationBarTitleText": "濮斿棰嗘枡鏍¢獙",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/weiwailingliaojiaoyan/form",
+            "style": {
+                "navigationBarTitleText": "濮斿棰嗘枡鍗曟牎楠�"
+            }
+        },
+        {
+            "path": "pages/caigourukujiaoyan/table",
+            "style": {
+                "navigationBarTitleText": "閲囪喘鍏ュ簱鏍¢獙",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/caigourukujiaoyan/form",
+            "style": {
+                "navigationBarTitleText": "閲囪喘鍏ュ簱鍗曟牎楠�",
+                "enablePullDownRefresh": false
+            }
+        },
+        {
+            "path": "pages/qitarukujiaoyan/table",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍏ュ簱鏍¢獙",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/qitarukujiaoyan/form",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍏ュ簱鍗曟牎楠�"
+            }
+        },
+        {
+            "path": "pages/weiwaibuliaojiaoyan/table",
+            "style": {
+                "navigationBarTitleText": "濮斿琛ユ枡鏍¢獙",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/weiwaibuliaojiaoyan/form",
+            "style": {
+                "navigationBarTitleText": "濮斿琛ユ枡鍗曟牎楠�"
+            }
+        },
+        {
+            "path": "pages/shengchanlingliaoshengdan/table",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇棰嗘枡",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/shengchanlingliaoshengdan/form",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇棰嗘枡鍗�"
+            }
+        },
+        {
+            "path": "pages/weiwailingliao/table",
+            "style": {
+                "navigationBarTitleText": "濮斿棰嗘枡",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/weiwailingliao/form",
+            "style": {
+                "navigationBarTitleText": "濮斿棰嗘枡鍗�"
+            }
+        },
+        {
+            "path": "pages/shengchanrukushengdan/table",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇鍏ュ簱",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/shengchanrukushengdan/form",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇鍏ュ簱鍗�"
+            }
+        },
+        {
+            "path": "pages/shengchanbuliao/table",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇琛ユ枡",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/shengchanbuliao/form",
+            "style": {
+                "navigationBarTitleText": "鐢熶骇琛ユ枡鍗�"
+            }
+        },
+        {
+            "path": "pages/qitaruku_v2/table",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍏ュ簱",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/qitaruku_v2/form",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍏ュ簱鍗�"
+            }
+        },
+        {
+            "path": "pages/qitachuku_v2/table",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍑哄簱",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path": "pages/qitachuku_v2/form",
+            "style": {
+                "navigationBarTitleText": "鍏朵粬鍑哄簱鍗�"
+>>>>>>> .theirs
 		},
 		{
 			"path": "pages/shengchanbuliao/table",
@@ -737,8 +896,13 @@
 				"navigationBarTitleText": "鐢熶骇琛ユ枡",
 				"enablePullDownRefresh": true
 			}
+<<<<<<< .mine
 		},
 		{
+=======
+        },
+        {
+>>>>>>> .theirs
 			"path": "pages/shengchanbuliao/form",
 			"style": {
 				"navigationBarTitleText": "鐢熶骇琛ユ枡鍗�"
@@ -762,6 +926,7 @@
 			"style": {
 				"navigationBarTitleText": "鍏朵粬鍑哄簱",
 				"enablePullDownRefresh": true
+<<<<<<< .mine
 			}
 		},
 		{
@@ -769,6 +934,15 @@
 			"style": {
 				"navigationBarTitleText": "鍏朵粬鍑哄簱鍗�"
 			}
+=======
+        },
+        {
+            "path": "pages/tiaomaguanli/table",
+            "style": {
+                "navigationBarTitleText": "鏉$爜绠$悊"
+            }
+        },
+>>>>>>> .theirs
 		}, {
 			"path": "pages/weiwairuku/table",
 			"style": {
@@ -820,6 +994,7 @@
 				"enablePullDownRefresh": true
 			}
 		},
+<<<<<<< .mine
 		{
 			"path": "pages/quyangdan/form",
 			"style": {
@@ -921,4 +1096,147 @@
 		"pageOrientation": "default"
 	},
 	"uniIdRouter": {}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+=======
+            }
+        },
+        {
+            "path" : "pages/zutuosaoma/table",
+            "style" : 
+            {
+                "navigationBarTitleText" : "缁勬墭鎵爜缂撳瓨"
+            }
+        },
+        {
+            "path" : "pages/chaituosaoma/form",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鎷嗘墭鎵爜"
+            }
+        },
+        {
+            "path" : "pages/shengchantuiliao/table",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鐢熶骇閫�鏂�"
+            }
+        },
+        {
+            "path" : "pages/shengchantuiliao/form",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鐢熶骇閫�鏂欏崟"
+            }
+        },
+        {
+            "path" : "pages/weixiujilu/table",
+            "style" : 
+            {
+                "navigationBarTitleText" : "缁翠慨璁板綍",
+                "enablePullDownRefresh": true
+            }
+        },
+        {
+            "path" : "pages/weixiujilu/form",
+            "style" : 
+            {
+                "navigationBarTitleText" : "缁翠慨璁板綍鍗�"
+            }
+        },
+        {
+            "path" : "pages/qijvguzhangdengji/table",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鍣ㄥ叿鏁呴殰鐧昏"
+               
+            }
+        },
+        {
+            "path" : "pages/qijvguzhangdengji/form",
+            "style" : 
+            {
+                "navigationBarTitleText" : "鍣ㄥ叿鏁呴殰鐧昏鍗�"
+            }
+        },
+        {
+            "path": "pages/jishikucunchaxun/table",
+            "style" :
+            {
+                "navigationBarTitleText" : "ERP鍗虫椂搴撳瓨鏌ヨ"
+            }
+        },
+        {
+            "path" : "pages/ZLGL/shoujianjianyan/table",
+            "style" : 
+            {
+                "navigationBarTitleText" : "棣栦欢妫�楠屽崟缁存姢"
+            }
+        },
+        {
+            "path" : "pages/ZLGL/shoujianjianyan/form",
+            "style" : 
+            {
+                "navigationBarTitleText" : "棣栦欢妫�楠屽崟"
+            }
+        }
+    ],
+    "tabBar": {
+        "color": "#888888", //tab 涓婄殑鏂囧瓧榛樿棰滆壊锛屼粎鏀寔鍗佸叚杩涘埗棰滆壊
+        "selectedColor": "#2d7dee", //tab 涓婄殑鏂囧瓧閫変腑鏃剁殑棰滆壊锛屼粎鏀寔鍗佸叚杩涘埗棰滆壊
+        "borderStyle": "black", //tabbar涓婅竟妗嗙殑棰滆壊锛� 浠呮敮鎸� black / white
+        "backgroundColor": "#ffffff", //tab 鐨勮儗鏅壊锛屼粎鏀寔鍗佸叚杩涘埗棰滆壊
+        "list": [{
+                "pagePath": "pages/index/index",
+                "iconPath": "static/tabBar/home.png",
+                "selectedIconPath": "static/tabBar/home-default.png",
+                "text": "浠撳偍绠$悊"
+            },
+            {
+                "pagePath": "pages/index/tab1",
+                "iconPath": "static/tabBar/icon1.png",
+                "selectedIconPath": "static/tabBar/icon1-default.png",
+                "text": "杞﹂棿宸ュ簭"
+            },
+            {
+                "pagePath": "pages/index/tab2",
+                "iconPath": "static/tabBar/icon2.png",
+                "selectedIconPath": "static/tabBar/icon2-default.png",
+                "text": "鍗曟嵁鍒楄〃"
+            },
+            {
+                "pagePath": "pages/index/mine",
+                "iconPath": "static/tabBar/user.png",
+                "selectedIconPath": "static/tabBar/user-default.png",
+                "text": "鎴戠殑"
+            }
+        ]
+    },
+    "globalStyle": {
+        "navigationBarTextStyle": "white",
+        "navigationBarTitleText": "璁惧绠$悊",
+        "navigationBarBackgroundColor": "#3A78FF",
+        "backgroundColor": "#F8F8F8",
+        "pageOrientation": "default"
+    },
+    "uniIdRouter": {}
+>>>>>>> .theirs
 }
\ No newline at end of file
diff --git a/pages/MJGL/mujubaoyangjiludan/form.vue b/pages/MJGL/mujubaoyangjiludan/form.vue
new file mode 100644
index 0000000..39935b7
--- /dev/null
+++ b/pages/MJGL/mujubaoyangjiludan/form.vue
@@ -0,0 +1,772 @@
+<template>
+	<view>
+		<view class="form">
+			<view class="form-item">
+				<view class="title">鍗曟嵁鍙�:</view>
+				<view class="righton">
+					<input name="HBillNo" v-model="hform.HBillNo" disabled placeholder="璇疯緭鍏ュ崟鎹彿" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鏃ユ湡:</view>
+				<view class="righton">
+					<input name="HDate" disabled v-model="hform.HDate" placeholder="璇烽�夋嫨鏃ユ湡" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鍐呴儴鍗曟嵁鍙�:</view>
+				<view class="right">
+					<input name="HInnerBillNo" v-model="hform.HInnerBillNo" placeholder="璇疯緭鍏ュ唴閮ㄥ崟鎹彿" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">妯″叿缂栫爜:</view>
+				<view class="righton">
+					<input name="HMouldNumber" disabled v-model="hform.HMouldNumber" placeholder="璇疯緭鍏ユā鍏风紪鐮�" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>妯″叿:</view>
+				<view class="right" style="width: 380rpx;">
+					<input name="HMouldName" v-model="hform.HMouldName" @blur="getHBarCodeData(hform.HMouldName)"
+						placeholder="璇锋壂鎻忔ā鍏锋潯鐮�" />
+				</view>
+				<uni-icons type="scan"
+					style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;font-weight: 500;"
+					size="20" @click="toScanCode"></uni-icons>
+			</view>
+
+
+			<view class="tab_area"></view>
+
+			<view class="form-item">
+				<view class="title">淇濆吇寮�濮�:</view>
+				<view class="right">
+					<picker mode="date" v-model="hform.HBeginDate" @change="HBeginDateChange">
+						<view class="picker-overlay"></view>
+						<input name="HBeginDate" disabled v-model="hform.HBeginDate" placeholder="璇烽�夋嫨淇濆吇寮�濮嬫棩鏈�" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">淇濆吇缁撴潫:</view>
+				<view class="right">
+					<picker mode="date" v-model="hform.HEndDate" @change="HEndDateChange">
+						<view class="picker-overlay"></view>
+						<input name="HEndDate" disabled v-model="hform.HEndDate" placeholder="璇烽�夋嫨淇濆吇缁撴潫鏃ユ湡" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">淇濆吇璁″垝缂栧彿:</view>
+				<view class="right" style="width: 380rpx;" @tap="showPlan=true">
+					<input name="HPlanName" disabled v-model="hform.HPlanName" placeholder="璇烽�夋嫨淇濆吇璁″垝缂栧彿" />
+				</view>
+				<uni-icons type="list"
+					style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;font-weight: 500;"
+					size="20" @click="showPlan=true"></uni-icons>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>妯″叿淇濆吇瑙勭▼:</view>
+				<view class="right">
+					<uni-combox :candidates="arrayHMouldMaintainRuleInterNo" placeholder="璇烽�夋嫨妯″叿淇濆吇瑙勭▼"
+						v-model="hform.HMouldMaintainRuleInterNo" @input="HMouldMaintainRuleInterNoChange"></uni-combox>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>妯″叿淇濆吇绾у埆:</view>
+				<view class="right">
+					<uni-combox :candidates="arrayHMaintainLev" placeholder="璇烽�夋嫨妯″叿淇濆吇绾у埆" v-model="hform.HMaintainLevName"
+						@input="HMaintainLevChange"></uni-combox>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>缁撴灉鍒ゅ畾:</view>
+				<view class="right" style="display: flex; align-items: center; padding: 0 20rpx; border: none;">
+					<view style="display: flex; align-items: center;">
+						<checkbox-group @change="onLastResultChange">
+							<checkbox :value="'true'" :checked="hform.HLastResult"></checkbox>
+						</checkbox-group>
+						<text style="margin-left: 10rpx;">鍚堟牸</text>
+
+					</view>
+				</view>
+			</view>
+
+			<view class="tab_area"></view>
+
+			<view class="form-item" style="align-items: flex-start;">
+				<view class="title">鎽樿:</view>
+				<view class="right" style="min-height: 150rpx;">
+					<textarea name="HExplanation" v-model="hform.HExplanation" auto-height maxlength="-1"
+						placeholder="璇疯緭鍏ユ憳瑕�"></textarea>
+				</view>
+			</view>
+
+			<view class="tab_area"></view>
+
+			<view class="form-item" style="align-items: flex-start;">
+				<view class="title">澶囨敞:</view>
+				<view class="right" style="min-height: 150rpx;">
+					<textarea name="HRemark" v-model="hform.HRemark" auto-height maxlength="-1"
+						placeholder="璇疯緭鍏ュ娉�"></textarea>
+				</view>
+			</view>
+
+			<view class="tab_area"></view>
+
+			<view v-if="showmore">
+				<view class="form-item">
+					<view class="title">鍒跺崟浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HMaker" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">鍒跺崟鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HMakeDate" v-model="hform.HMakeDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HMakeDate" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">淇敼浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HUpDater" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">淇敼鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HUpDateDate" v-model="hform.HUpDateDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HUpDateDate" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">瀹℃牳浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HChecker" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">瀹℃牳鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HCheckDate" v-model="hform.HCheckDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HCheckDate" disabled />
+					</view>
+				</view>
+			</view>
+			<view class="other">
+				<view v-if="!showmore" @tap="showmore = true">
+					灞曞紑鍏朵粬淇℃伅<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="bottom"></uni-icons>
+				</view>
+				<view v-if="showmore" @tap="showmore = false">
+					鎶樺彔鍏朵粬淇℃伅<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="tip"><text>*</text>娉�: 璇风偣鍑讳笅鏂圭豢鑹叉柊澧炴寜閽坊鍔犱繚鍏婚」淇℃伅锛堝繀濉級</view>
+			</view>
+
+			<view class="bottom-btn">
+				<button class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+				<button class="btn-b" size="mini" @tap="showMask = true">鏂板</button>
+				<button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+			</view>
+		</view>
+
+		<plan @planData="getPlanData" @close="closeMask" v-if="showPlan"></plan>
+		<formDetail :form1List='form1List' @hformList='hformList' v-if="showMask"></formDetail>
+	</view>
+</template>
+<script>
+	import getDateTime from '@/utils/getdateTime.js';
+	import plan from './plan.vue';
+	import formDetail from './formDetail.vue';
+	import {
+		getUserInfo
+	} from '../../../utils/auth'
+	export default {
+		components: {
+			plan,
+			formDetail
+		},
+		data() {
+			return {
+				serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+				arrayHMouldName: [],
+				showPlan: false,
+				showmore: false,
+				arrayHMouldMaintainRuleInterNo: [], //瑙勭▼
+				HMouldMaintainRuleInterNoList: [],
+				arrayHMaintainLev: [], //绾у埆
+				HMaintainLevList: [],
+				hform: {
+					HInterID: 0,
+					HBillNo: '',
+					HDate: getDateTime.dateTimeStr('y-m-d'),
+					HInnerBillNo: '',
+					HMouldID: '',
+					HMouldName: '',
+					HMouldNumber: '',
+					HQty: 0,
+					HLastResult: 'true',
+					HPlanNo: '',
+					HPlanInterID: '',
+					HMouldMaintainPlanInterID: '',
+					HMouldMaintainPlanEntryID: '1',
+					HMainSourceInterID: '',
+					HMainSourceEntryID: '0',
+					HMainSourceBillNo: '',
+					HMaintainLevID: '',
+					HMaintainLevName: '',
+					HBeginDate: '',
+					HEndDate: '',
+					HMouldMaintainRuleInterID: '',
+					HMouldMaintainRuleInterNo: '',
+					HExplanation: '',
+					HRemark: '',
+					HMaker: getUserInfo().Czymc,
+					HMakeDate: '',
+					HUpDater: '',
+					HUpDateDate: '',
+					HChecker: '',
+					HCheckDate: '',
+					HCloseMan: '',
+					HCloseDate: '',
+					HDeleteMan: '',
+					HDeleteDate: '',
+				},
+
+				showMask: false,
+				form1List: [],
+				form2List: [],
+			}
+		},
+		onLoad(e) {
+			this.getHMouldMaintainRuleInterList()
+			this.getHMaintainLevList()
+			if (e.hmainid) {
+				this.getEditData(e.hmainid)
+			} else {
+				this.getNewData()
+			}
+
+		},
+		methods: {
+			//鐩戝惉澶嶉�夋
+			onLastResultChange(e) {
+				// 閫氳繃 value 鍒ゆ柇鐘舵��
+				this.hform.HLastResult = e.detail.value.includes('true');
+			},
+			//鎵爜
+			toScanCode() {
+				var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
+				mpaasScanModule.mpaasScan({
+					'hideAlbum': true,
+					'timeoutInterval': '10', //瓒呮椂鏃堕棿
+					'timeoutText': '鏈瘑鍒埌浜岀淮鐮�' //瓒呮椂鎻愰啋            
+				}, (ret) => {
+					console.log(ret.resp_result)
+					this.hform.HMouldName = ret.resp_result
+					this.getHBarCodeData(ret.resp_result)
+				})
+			},
+			getHBarCodeData(HBarCode) {
+				uni.request({
+					url: this.serverUrl + '/QJ_PDA_MouldDotCheckBill/txtHBarCode_KeyDown',
+					data: {
+						HBarCode: this.hform.HMouldName
+					},
+					success: (res) => {
+						console.log(res.data);
+						if (res.data.count == 1) {
+							var data = res.data.data[0]
+							this.hform.HMouldID = data.HInterID
+							this.hform.HMouldName = data.HName
+							this.hform.HMouldNumber = data.HMouldNo
+						}
+						uni.showToast({
+							title: res.data.Message,
+							icon: 'none'
+						})
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//淇濆吇寮�濮嬮�夋嫨
+			HBeginDateChange(e) {
+				console.log(e.detail.value)
+				this.hform.HBeginDate = e.detail.value
+			},
+			//淇濆吇缁撴潫閫夋嫨
+			HEndDateChange(e) {
+				console.log(e.detail.value)
+				this.hform.HEndDate = e.detail.value
+			},
+
+			//閫夋嫨淇濆吇璁″垝缂栧彿
+			getPlanData(e) {
+				console.log(e)
+				this.hform.HPlanNo = e.HPlanName
+				this.hform.HPlanName = e.HPlanName
+				this.hform.HPlanInterID = e.HInterID
+				this.hform.HMouldMaintainPlanInterID = e.HInterID
+				this.hform.HMainSourceInterID = e.HInterID
+				this.hform.HMainSourceBillNo = e.HPlanName
+				this.showPlan = false
+				//瀛愯〃
+				uni.request({
+					url: this.serverUrl + '/Sb_EquipMaintainPlanBill/Sb_EquipMaintainPlanBillListProjectDetaiNew',
+					data: {
+						HInterID: e.HPlanNo
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.form1List = res.data.list[0];
+							console.log(2, res.data.list[0]);
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			closeMask(e) {
+				this.showPlan = false
+			},
+			//鑾峰彇妯″叿淇濆吇绾у埆
+			getHMaintainLevList() {
+				uni.request({
+					url: this.serverUrl + '/Gy_BadReason/Gy_MaintainLevList',
+					data: {
+						sWhere: '',
+						user: uni.getStorageSync('HUserName')
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.arrayHMaintainLevList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHMaintainLev[i] = res.data.data[i].淇濆吇绾у埆鍚嶇О
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			// 閫夋嫨妯″叿淇濆吇绾у埆
+			HMaintainLevChange(e) {
+				for (var i = 0; i < this.arrayHMaintainLevList.length; i++) {
+					if (this.arrayHMaintainLevList[i].淇濆吇绾у埆鍚嶇О == e) {
+						this.hform.HMaintainLevID = this.arrayHMaintainLevList[i].HItemID;
+						this.hform.HMaintainLevName = this.arrayHMaintainLevList[i].淇濆吇绾у埆鍚嶇О;
+					}
+				}
+			},
+			//鑾峰彇妯″叿淇濆吇瑙勭▼鍒楄〃鏁版嵁
+			getHMouldMaintainRuleInterList() {
+				uni.request({
+					url: this.serverUrl + '/Sc_MouldMaintainRuleBill/GetMouldMaintainRuleList',
+					data: {
+						sWhere: '',
+						user: uni.getStorageSync('HUserName')
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.HMouldMaintainRuleInterNoList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHMouldMaintainRuleInterNo[i] = res.data.data[i].鍗曟嵁鍙�
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//閫夋嫨妯″叿淇濆吇瑙勭▼
+			HMouldMaintainRuleInterNoChange(e) {
+				for (var i = 0; i < this.HMouldMaintainRuleInterNoList.length; i++) {
+					if (this.HMouldMaintainRuleInterNoList[i].鍗曟嵁鍙� == e) {
+						this.hform.HMouldMaintainRuleInterID = this.HMouldMaintainRuleInterNoList[i].hmainid
+						this.hform.HMouldMaintainRuleInterNo = this.HMouldMaintainRuleInterNoList[i].鍗曟嵁鍙�
+						//瀛愯〃
+						uni.request({
+							url: this.serverUrl +
+								'/Sc_MouldMaintainRuleBill/GetMouldRuleSubList-Detail',
+							data: {
+								HInterID: this.hform.HMouldMaintainRuleInterID,
+								HBillType: '3819'
+							},
+							success: (res) => {
+								if (res.data.count == 1) {
+									this.form1List = res.data.list[0];
+									console.log(2, res.data.list[0]);
+								} else {
+									uni.showToast({
+										title: res.data.Message,
+										icon: 'none'
+									})
+								}
+							},
+							fail: (res) => {
+								console.log(res);
+								uni.showToast({
+									title: '鎺ュ彛璇锋眰澶辫触',
+									icon: 'none'
+								})
+							},
+						});
+					}
+				}
+			},
+
+			hformList(e) {
+				console.log(e)
+				this.form1List = e
+				this.showMask = false
+			},
+
+			//缂栬緫
+			getEditData(hmainid) {
+				//涓昏〃
+				uni.request({
+					url: this.serverUrl + '/Sc_MouldMaintainBill/Sc_MouldMaintainBillListCheckDetai',
+					data: {
+						HID: hmainid
+					},
+					success: (res) => {
+						console.log(1, res.data.data.h_v_Sc_MouldMaintain);
+						if (res.data.code == 1) {
+							var data = res.data.data.h_v_Sc_MouldMaintain[0]
+							this.hform = {
+								HInterID: hmainid,
+								HBillNo: data.鍗曟嵁鍙�,
+								HDate: data.鏃ユ湡.substr(0, 10),
+								HInnerBillNo: data.鍐呴儴鍗曟嵁鍙�,
+								HMouldID: data.HMouldID,
+								HMouldNumber: data.浜у搧妯″叿缂栧彿,
+								HMouldName: data.浜у搧妯″叿,
+								HPlanNo: data.淇濆吇璁″垝缂栧彿,
+								HPlanName: data.淇濆吇璁″垝缂栧彿,
+								HPlanInterID: data.淇濆吇璁″垝鍐呯爜,
+								HBeginDate: data.淇濆吇寮�濮嬫棩鏈�.substr(0, 10),
+								HEndDate: data.淇濆吇缁撴潫鏃ユ湡.substr(0, 10),
+								HMouldMaintainRuleInterID: data.HMouldMaintainRuleInterID,
+								HMouldMaintainRuleInterNo: data.鍣ㄥ叿淇濆吇瑙勭▼,
+								HMaintainLevID: data.HMaintainLevID,
+								HMaintainLevName: data.淇濆吇绾у埆鍚嶇О,
+								HExplanation: data.鎽樿,
+								HRemark: data.琛ㄥご澶囨敞,
+								HLastResult: data.鏈�缁堢粨璁� === '鍚堟牸',
+								
+								HMaker: data.鍒跺崟浜�,
+								HMakeDate: data.鍒跺崟鏃ユ湡,
+								HUpDater: data.淇敼浜�,
+								HUpDateDate: data.淇敼鏃ユ湡,
+								HChecker: data.瀹℃牳浜�,
+								HCheckDate: data.瀹℃牳鏃ユ湡,
+								HDeleteMan: data.浣滃簾浜�,
+								HDeleteDate: data.浣滃簾鏃ユ湡,
+							}
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+				//瀛愯〃
+				uni.request({
+					url: this.serverUrl + '/Sc_MouldMaintainBill/Sc_MouldMaintainBillListProjectDetaiNew',
+					data: {
+						HInterID: hmainid
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.form1List = res.data.list[0];
+							console.log(2, res.data.list[0]);
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//鏂板
+			getNewData() {
+				uni.request({
+					url: this.serverUrl + '/Web/GetMAXNum',
+					data: {
+						HBillType: '3819'
+					},
+					success: (res) => {
+						console.log(res.data)
+						if (res.data.count == 1) {
+							this.hform.HInterID = 0
+							this.hform.HBillNo = res.data.data[0].HBillNo
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+
+			submit() {
+				if (!this.hform.HDate) {
+					uni.showToast({
+						title: '璇烽�夋嫨鏃ユ湡',
+						icon: 'none'
+					})
+				} else if (!this.hform.HMouldID) {
+					uni.showToast({
+						title: '璇烽�夋嫨妯″叿',
+						icon: 'none'
+					})
+				} else if (!this.hform.HBeginDate) {
+					uni.showToast({
+						title: '璇烽�夋嫨淇濆吇寮�濮嬫棩鏈�',
+						icon: 'none'
+					})
+				} else if (!this.hform.HEndDate) {
+					uni.showToast({
+						title: '璇烽�夋嫨淇濆吇缁撴潫鏃ユ湡',
+						icon: 'none'
+					})
+				} else if (!this.hform.HMouldMaintainRuleInterID) {
+					uni.showToast({
+						title: '璇烽�夋嫨妯″叿淇濆吇瑙勭▼',
+						icon: 'none'
+					})
+				} else if (this.form1List.length == 0) {
+					uni.showToast({
+						title: '璇锋柊澧炰繚鍏婚」淇℃伅锛屼繚鍏婚」涓嶅彲涓虹┖',
+						icon: 'none'
+					})
+				} else {
+					uni.showLoading({
+						title: '璇风◢鍊�'
+					})
+					var sMainStr = JSON.stringify(this.hform);
+					var sSubStr = JSON.stringify(this.form1List);
+					this.form2List = [{
+						HManagerID: 0,
+						HManagerName: '',
+						HManagerNumber: '',
+						HMaterID: 0,
+						HMaterName: '',
+						HMaterNumber: '',
+						HQty: 0,
+						HQtyMust: 0,
+						HRemark: "",
+						HUnitID: 0,
+						HUnitName: '',
+						HUnitNumber: '',
+					}]
+					var sSubStr1 = JSON.stringify(this.form2List);
+					//PDA鐩墠鍙兘鏀寔涓�涓瓙琛�
+					//var sMainSub = sMainStr + ';' + sSubStr + ";" + sSubStr1 + ";" + uni.getStorageSync('HUserName');
+					var sMainSub = sMainStr + ';' + sSubStr + ";" + uni.getStorageSync('HUserName');
+					console.log(sMainSub);
+					uni.request({
+						url: this.serverUrl + '/Sc_MouldMaintainBill/SaveGetMouldMaintainBillListPDA',
+						method: 'POST',
+						dataType: "json",
+						data: {
+							msg: sMainSub
+						},
+						success: (res) => {
+							console.log(1, res);
+							uni.hideLoading()
+							if (res.data.count == 1) {
+
+							}
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						},
+						fail: (res) => {
+							console.log(res);
+							uni.showToast({
+								title: '鎺ュ彛璇锋眰澶辫触',
+								icon: 'none'
+							})
+						},
+					});
+				}
+			},
+			goBack() {
+				uni.navigateBack()
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.form {
+		width: 668rpx;
+		margin: 20rpx auto;
+		padding-bottom: 240rpx;
+	}
+
+	.tab_area {
+		width: 100%;
+		height: 50rpx;
+	}
+
+	.form-item {
+		display: flex;
+		align-items: center;
+		font-size: 30rpx;
+		padding: 6rpx 0;
+
+		.title {
+			width: 208rpx;
+		}
+
+		.right {
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #acacac;
+		}
+
+		.righton {
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #e4e4e4;
+			background-color: #e4e4e4;
+		}
+
+		text {
+			color: red;
+			font-weight: bold;
+		}
+
+		input {
+			width: 100%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		textarea {
+			width: 98%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		.tip {
+			color: #da9100;
+			margin-top: 20rpx;
+		}
+	}
+
+	.other {
+		margin-top: 8rpx;
+		text-align: center;
+		font-size: 28rpx;
+		padding: 4rpx 18rpx;
+		color: #1890FF;
+	}
+
+	.bottom-btn {
+		width: 100%;
+		// height: 120rpx;
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		background-color: #fff;
+		box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+		padding: 30rpx 40rpx 40rpx 40rpx;
+
+		button {
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+		}
+
+		.btn-a {
+			background-color: #3A78FF;
+			color: #fff;
+		}
+
+		.btn-b {
+			background-color: #41a863;
+			color: #fff;
+			margin-left: 30rpx;
+		}
+
+		.btn-c {
+			background-color: #acacac;
+			color: #fff;
+			position: absolute;
+			right: 120rpx;
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/mujubaoyangjiludan/formDetail.vue b/pages/MJGL/mujubaoyangjiludan/formDetail.vue
new file mode 100644
index 0000000..560c08f
--- /dev/null
+++ b/pages/MJGL/mujubaoyangjiludan/formDetail.vue
@@ -0,0 +1,463 @@
+<template>
+	<view class="content">
+		<view class="mains" v-if="num==1">
+			<!-- 淇濆吇椤逛俊鎭儴鍒嗕繚鎸佷笉鍙� -->
+			<view class="title">淇濆吇椤逛俊鎭�</view>
+			<view class="table">
+				<uni-collapse accordion>
+					<uni-collapse-item v-for="(item,index) in hformList" :key="index">
+						<template v-slot:title>
+							<view class="table-line">
+								<view class="line">
+									<view class="font">
+										<text>淇濆吇椤圭洰锛�</text>{{item.HMaintainItem}}
+									</view>
+									<view>
+										<text>淇濆吇閮ㄤ綅锛�</text>{{item.HMaintainPart}}
+									</view>
+								</view>
+								<view class="line">
+									<text>璐熻矗浜猴細</text>{{item.HManagerName}}
+								</view>
+							</view>
+						</template>
+						<view class="table-detail">
+							<view class="detail">
+								<text>鍏蜂綋瑕佹眰锛�</text>{{item.HClaim?item.HClaim:'鏆傛棤鍏蜂綋瑕佹眰'}}
+							</view>
+							<view class="detail">
+								<text>鏄惁鍚堟牸锛�</text>{{ item.HMaintainResult ? '鍚堟牸' : '涓嶅悎鏍�' }}
+							</view>
+							<view class="detail" v-if="item.HRemark">
+								<text>澶囨敞锛�</text>{{item.HRemark}}
+							</view>
+							<view class="btns">
+								<button class="btnd" size="mini" @tap="edit(index)">缂栬緫</button>
+								<button class="btne" size="mini" @tap="del(index)">鍒犻櫎</button>
+							</view>
+						</view>
+					</uni-collapse-item>
+				</uni-collapse>
+			</view>
+			<view class="foot">
+				<button class="btna" size="mini" @tap="creat">鏂板</button>
+				<button class="btnb" size="mini" @tap="over">纭</button>
+			</view>
+		</view>
+
+		<view class="mains" v-if="num == 2">
+			<view class="title">淇濆吇椤圭紪杈�</view>
+			<view class="form">
+				<view class="form-item">
+					<view class="item-title">淇濆吇椤圭洰:</view>
+					<view class="item-right">
+						<uni-combox :candidates="arrayHMaintainItem" placeholder="璇烽�夋嫨淇濆吇椤圭洰" v-model="hform.HMaintainItem"
+							@input="HMaintainItemInput"></uni-combox>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">淇濆吇閮ㄤ綅:</view>
+					<view class="item-right">
+						<input v-model="hform.HMaintainPart" placeholder="璇疯緭鍏ヤ繚鍏婚儴浣�" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">璐熻矗浜�:</view>
+					<view class="item-right">
+						<uni-combox :candidates="arrayHManagerName" placeholder="璇烽�夋嫨璐熻矗浜�" v-model="hform.HManagerName"
+							@input="HManagerNameInput"></uni-combox>
+					</view>
+				</view>
+				<view class="form-item" style="align-items: flex-start;">
+					<view class="item-title">鍏蜂綋瑕佹眰:</view>
+					<view class="item-right" style="min-height: 150rpx;">
+						<textarea v-model="hform.HClaim" auto-height maxlength="-1" placeholder="璇疯緭鍏ュ叿浣撹姹�"></textarea>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">缁撴灉:</view>
+					<view class="right" style="display: flex; align-items: center; padding: 0 20rpx; border: none;">
+						<view style="display: flex; align-items: center;">
+							<checkbox-group @change="onResultChange">
+							  <checkbox :value="'true'" :checked="hform.HMaintainResult"></checkbox>
+							</checkbox-group>
+							<text style="margin-left: 10rpx;">鍚堟牸</text>
+						</view>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">澶囨敞:</view>
+					<view class="item-right">
+						<input v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+					</view>
+				</view>
+			</view>
+			<view class="foot">
+				<button class="btnc" size="mini" @tap="back">杩斿洖</button>
+				<button class="btnb" size="mini" @tap="add">纭</button>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+				num: 1,
+				editIndex: -1,
+
+				HMaintainItemList: [],
+				arrayHMaintainItem: [],
+
+				HManagerNameList: [],
+				arrayHManagerName: [],
+
+				hformList: [],
+				hform: {},
+			}
+		},
+		props: {
+			form1List: {
+				type: Array,
+				default () {
+					return []
+				}
+			},
+		},
+		created() {
+			this.getHMaintainItemList()
+			this.getHManagerNameList()
+			this.hformList = this.form1List
+		},
+		methods: {
+			// 鏂板锛氬鐞嗗閫夋鍙樺寲浜嬩欢
+			onResultChange(e) {
+				this.hform.HMaintainResult = e.detail.value.includes('true');
+			},
+
+			//淇濆吇椤圭洰
+			getHMaintainItemList() {
+				uni.request({
+					url: this.serverUrl + '/PublicPageMethod/MaintainList',
+					data: {
+						sWhere: "where HStopFlag=0 and HEndFlag=1"
+					},
+					success: (res) => {
+						console.log(1, res.data.data);
+						if (res.data.count == 1) {
+							this.HMaintainItemList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHMaintainItem[i] = res.data.data[i].HName
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			HMaintainItemInput(e) {
+				console.log(e)
+				for (var i = 0; i < this.HMaintainItemList.length; i++) {
+					if (this.HMaintainItemList[i].HName == e) {
+						this.hform.HMaintainItemID = this.HMaintainItemList[i].HItemID
+						this.hform.HMaintainItemNumber = this.HMaintainItemList[i].HNumber
+						this.hform.HMaintainItem = this.HMaintainItemList[i].HName
+					}
+				}
+			},
+
+			//璐熻矗浜�
+			getHManagerNameList() {
+				uni.request({
+					url: this.serverUrl + '/PublicPageMethod/UserList',
+					data: {
+						sWhere: ''
+					},
+					success: (res) => {
+						console.log(2, res.data.data);
+						if (res.data.count == 1) {
+							this.HManagerNameList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHManagerName[i] = res.data.data[i].HName
+							}
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			HManagerNameInput(e) {
+				console.log(e)
+				for (var i = 0; i < this.HManagerNameList.length; i++) {
+					if (this.HManagerNameList[i].HName == e) {
+						this.hform.HManagerID = this.HManagerNameList[i].HItemID
+						this.hform.HManagerNumber = this.HManagerNameList[i].HNumber
+						this.hform.HManagerName = this.HManagerNameList[i].HName
+					}
+				}
+			},
+
+			creat() {
+				this.hform = {
+						HMaintainItemID: '',
+						HMaintainItemNumber: '',
+						HMaintainItem: '',
+						HMaintainPart: '',
+						HClaim: '',
+						HManagerID: '',
+						HManagerNumber: '',
+						HManagerName: '',
+						HMaintainResult: true, // 榛樿璁句负true锛屽嵆榛樿鍕鹃��
+						HRemark: '',
+					},
+					this.num = 2
+			},
+			back() {
+				this.hformList[this.editIndex] = uni.getStorageSync('hform')
+				uni.removeStorageSync('hform')
+				this.editIndex = -1
+				this.num = 1
+			},
+			edit(index) {
+				this.hform = this.hformList[index]
+				uni.setStorageSync('hform', this.hformList[index]);
+				this.editIndex = index
+				this.num = 2
+			},
+			del(index) {
+				this.hformList.splice(index, 1);
+			},
+			add() {
+				if (!this.hform.HMaintainItemID) {
+					uni.showToast({
+						title: '璇烽�夋嫨淇濆吇椤圭洰淇℃伅',
+						icon: 'none'
+					})
+				} else if (!this.hform.HMaintainPart) {
+					uni.showToast({
+						title: '璇疯緭鍏ヤ繚鍏婚儴浣嶄俊鎭�',
+						icon: 'none'
+					})
+				} else if (!this.hform.HManagerID) {
+					uni.showToast({
+						title: '璇烽�夋嫨璐熻矗浜�',
+						icon: 'none'
+					})
+				} else {
+					uni.showModal({
+						title: '鎻愮ず',
+						content: '鏄惁纭鎻愪氦淇濆吇椤圭洰鍐呭锛屾槸鐨勮瘽灏嗘坊鍔犲埌淇濆吇椤逛俊鎭腑銆�',
+						success: (res) => {
+							if (res.confirm) {
+								if (this.editIndex > -1) {
+									this.hformList.splice(this.editIndex, 1);
+									this.editIndex = -1
+
+									uni.showToast({
+										title: '淇敼瀹屾垚',
+										icon: 'none'
+									})
+								}
+								this.num = 1
+								this.hformList.unshift(this.hform)
+							}
+						}
+					});
+				}
+			},
+
+			over() {
+				this.$emit('hformList', this.hformList)
+			},
+		}
+	}
+</script>
+
+<!-- 鏍峰紡閮ㄥ垎淇濇寔涓嶅彉 -->
+<style lang="scss" scoped>
+	.content {
+		width: 100%;
+		height: 100%;
+		position: fixed;
+		z-index: 999;
+		top: 0;
+		left: 0;
+		background-color: rgba(0, 0, 0, 0.5);
+	}
+
+	.mains {
+		width: 88%;
+		height: 88%;
+		background-color: #f5f5f5;
+		margin: 12% auto;
+		border-radius: 14rpx;
+
+		.title {
+			width: 100%;
+			height: 6%;
+			background-color: #fff;
+			border-bottom: 1px solid #acacac;
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			border-radius: 14rpx 14rpx 0 0;
+		}
+
+		.foot {
+			padding: 0 40rpx;
+			height: 8%;
+			background-color: #fff;
+			border-top: 1px solid #eee;
+			display: flex;
+			align-items: center;
+			border-radius: 0 0 14rpx 14rpx;
+
+			button {
+				width: 180rpx;
+			}
+		}
+
+		.table {
+			width: 100%;
+			height: 86%;
+			overflow: hidden;
+			overflow-y: auto;
+
+			.table-line {
+				padding: 18rpx 10rpx 18rpx 20rpx;
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+
+				.line {
+					font-size: 30rpx;
+					color: #555;
+
+					text {
+						color: #999;
+						font-size: 27rpx;
+					}
+
+					.font {
+						color: #333;
+						line-height: 150%;
+					}
+				}
+			}
+
+			.table-detail {
+				font-size: 30rpx;
+				color: #555;
+				padding: 0 10rpx 24rpx 20rpx;
+
+				text {
+					color: #999;
+					font-size: 27rpx;
+				}
+
+				.detail {}
+
+				.btns {
+					text-align: right;
+					margin-top: 14rpx;
+
+					button {
+						width: 150rpx;
+						margin-right: 30rpx;
+					}
+				}
+			}
+		}
+
+		.form {
+			height: 82%;
+			padding: 4%;
+			overflow: hidden;
+			overflow-y: auto;
+
+			.form-item {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+				font-size: 30rpx;
+				padding: 10rpx 0;
+
+				.item-title {
+					width: 140rpx;
+
+					text {
+						color: red;
+						font-weight: bold;
+					}
+				}
+
+				.item-right {
+					width: 450rpx;
+					border-radius: 22rpx;
+					border: 1px solid #acacac;
+					background-color: #fff;
+				}
+
+				input {
+					width: 100%;
+					padding: 8rpx 20rpx;
+					font-size: 30rpx;
+				}
+
+				textarea {
+					width: 98%;
+					padding: 8rpx 20rpx;
+					font-size: 30rpx;
+				}
+			}
+		}
+	}
+
+	.btna {
+		background-color: #41a863;
+		color: #fff;
+	}
+
+	.btnb {
+		background-color: #3A78FF;
+		color: #fff;
+	}
+
+	.btnc {
+		background-color: #acacac;
+		color: #fff;
+	}
+
+	.btnd {
+		background-color: #d98d00;
+		color: #fff;
+	}
+
+	.btne {
+		background-color: #da0000;
+		color: #fff;
+	}
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/mujubaoyangjiludan/plan.vue b/pages/MJGL/mujubaoyangjiludan/plan.vue
new file mode 100644
index 0000000..582f828
--- /dev/null
+++ b/pages/MJGL/mujubaoyangjiludan/plan.vue
@@ -0,0 +1,351 @@
+<template>
+	<view class="content">
+		<view class="form">
+			<view class="form-item">
+				<view class="title">鍗曟嵁鍙�:</view>
+				<view class="right">
+					<input v-model="hform.HBillNo" placeholder="璇疯緭鍏ュ崟鎹彿" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鍒跺崟浜�:</view>
+				<view class="right">
+					<input v-model="hform.HCreateBy" placeholder="璇疯緭鍏ュ埗鍗曚汉" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">寮�濮嬫椂闂�:</view>
+				<view class="right">
+					<picker mode="date" :value="hform.BenginHCreateDate" @change="BenginHCreateDateChange">
+						<input name="BenginHCreateDate" disabled :value="hform.BenginHCreateDate" placeholder="璇烽�夋嫨" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">缁撴潫鏃堕棿:</view>
+				<view class="right">
+					<picker mode="date" :value="hform.EndHCreateDate" @change="EndHCreateDateChange">
+						<input name="EndHCreateDate" disabled :value="hform.EndHCreateDate" placeholder="璇烽�夋嫨" />
+					</picker>
+				</view>
+			</view>
+			
+			<view class="buttons">
+				<button class="op5" size="mini" type="default" @tap="clear">閲嶇疆</button>
+				<button class="op3" size="mini" type="default" @tap="search">鏌ヨ</button>
+				<button class="op4" size="mini" type="default" @tap="close">鍏抽棴</button>
+			</view>
+		</view>
+		
+		<view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+		
+		<view class="list" v-for="(item,index) in listData" :key="index">
+			<uni-card :title="item.鍣ㄥ叿鍚嶇О" :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.鍐呴儴鍗曟嵁鍙�">
+						<text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.鍐呴儴鍗曟嵁鍙穧}
+					</view>
+					<view class="detail" v-if="item.寮�濮嬫棩鏈�">
+						<text>寮�濮嬫棩鏈燂細</text>{{item.寮�濮嬫棩鏈�.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.缁撴潫鏃ユ湡">
+						<text>缁撴潫鏃ユ湡锛�</text>{{item.缁撴潫鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.淇濆吇鍛ㄦ湡">
+						<text>淇濆吇鍛ㄦ湡(鍗曚綅)锛�</text>{{item.淇濆吇鍛ㄦ湡}}({{item.鍛ㄦ湡鍗曚綅}})
+					</view>
+					<view class="detail" v-if="item.澶囨敞">
+						<text>澶囨敞锛�</text>{{item.澶囨敞}}
+					</view>
+				</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>{{item.鍒跺崟鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.瀹℃牳浜�">
+						<text>瀹℃牳浜猴細</text>{{item.瀹℃牳浜簘}
+					</view>
+					<view class="detail" v-if="item.瀹℃牳鏃ユ湡">
+						<text>瀹℃牳鏃ユ湡锛�</text>{{item.瀹℃牳鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.淇敼浜�">
+						<text>淇敼浜猴細</text>{{item.淇敼浜簘}
+					</view>
+					<view class="detail" v-if="item.淇敼鏃ユ湡">
+						<text>淇敼鏃ユ湡锛�</text>{{item.淇敼鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.鍏抽棴浜�">
+						<text>鍏抽棴浜猴細</text>{{item.鍏抽棴浜簘}
+					</view>
+					<view class="detail" v-if="item.鍏抽棴鏃ユ湡">
+						<text>鍏抽棴鏃ユ湡锛�</text>{{item.鍏抽棴鏃ユ湡.substr(0,10)}}
+					</view>
+				</view>
+				
+				<view class="more" v-if="showDetail == 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="choose(item)">
+						<uni-icons type="checkmarkempty" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>閫夊彇璇ユ暟鎹�
+					</view>
+				</view>
+				<view class="more" v-if="showDetail != 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="choose(item)">
+						<uni-icons type="checkmarkempty" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>閫夊彇璇ユ暟鎹�
+					</view>
+				</view>
+			</uni-card>
+		</view>
+		
+		<view class="over" v-if="listData.length == 0">鏆傛棤鏁版嵁</view>
+		<view class="over" v-if="listData.length != 0">宸插埌搴�</view>
+	</view>
+</template>
+
+<script>
+	import { getUserInfo } from "@/utils/auth.js";
+	export default {
+	    data() {
+	        return {
+				userInfo:getUserInfo(),
+				serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
+				hform:{
+					HBillNo:'',
+					HCreateBy:'',
+					BenginHCreateDate:'',
+					EndHCreateDate:'',
+				},
+				sWhere:'',
+				listData:[],
+				showDetail:-1,
+	        }
+	    },
+		created() {
+			this.getList()
+			console.log(this.userInfo,uni.getStorageSync('HUserName'))
+		},
+	    methods: {
+			getList(){
+				// console.log(this.sWhere)
+				uni.showLoading({
+					title:'鍔犺浇涓�...'
+				})
+				uni.request({
+				    url: this.serverUrl + '/Sc_MouldMaintainPlanBill/GetMouldMaintainPlanBillList',
+					data:{ 
+						sWhere: this.sWhere,
+						user: uni.getStorageSync('HUserName')
+					},
+				    success: (res) => {
+				        console.log(1,res);
+						if(res.data.count == 1){
+							this.listData = res.data.data
+							uni.hideLoading()
+						}else{
+							uni.hideLoading()
+							uni.showToast({
+								title:res.data.Message,
+								icon:'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.hideLoading()
+						uni.showToast({
+							title:'鎺ュ彛璇锋眰澶辫触',
+							icon:'none'
+						})
+					},
+				});
+			},
+			//閫夋嫨鍗曟嵁鏃ユ湡
+			BenginHCreateDateChange(e){
+				console.log(e.detail.value)
+				this.hform.BenginHCreateDate = e.detail.value
+			},
+			//閫夋嫨鍗曟嵁鏃ユ湡
+			EndHCreateDateChange(e){
+				console.log(e.detail.value)
+				this.hform.EndHCreateDate = e.detail.value
+			},
+			search(){
+				this.sWhere = ''
+				
+				console.log(this.hform)
+				if (this.hform.HBillNo) {
+				    this.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+				}
+				if (this.hform.HCreateBy) {
+				    this.sWhere += " and 鍒跺崟浜� like '%" + this.hform.HCreateBy + "%'";
+				}
+				if (this.hform.BenginHCreateDate) {
+				    this.sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.hform.BenginHCreateDate + "'";
+				}
+				if (this.hform.EndHCreateDate) {
+				    this.sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.hform.EndHCreateDate + "'";
+				}
+				
+				this.getList()
+			},
+			clear(){
+				this.sWhere = ''
+				this.showDetail = -1,
+				this.hform = {
+					HBillNo:'',
+					HCreateBy:'',
+					BenginHCreateDate:'',
+					EndHCreateDate:'',
+				}
+				this.getList()
+			},
+			choose(item){
+				console.log(item)
+				var data = {
+					HPlanName:item.鍗曟嵁鍙�,
+					HPlanNo:item.hmainid,
+					HInterID:item.hmainid,
+				}
+				this.$emit('planData', data)
+			},
+			close(){
+				this.$emit('close',true)
+			},
+	    }
+	}
+</script>
+
+<style lang="scss" scoped>
+	.content{
+		width: 100%;
+		height: 100%;
+		background-color: #fff;
+		overflow: hidden;
+		overflow-y: auto;
+		position: fixed;
+		top: 0;
+		left: 0;
+		z-index: 99;
+	}
+	.form{
+		width: 640rpx;
+		margin: 20rpx auto;
+	}
+    .form-item{
+		display: flex;
+		align-items: center;
+		font-size: 28rpx;
+		padding: 6rpx 0;
+		.title{
+			width: 180rpx;
+			text{
+				color: red;
+				font-weight: bold;
+			}
+		}
+		.right{
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #acacac;
+		}
+		.righton{
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #e4e4e4;
+			background-color: #e4e4e4;
+		}
+		input{
+			width: 100%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+	}
+	.buttons{
+		width: 100%;
+		display: flex;
+		justify-content: center;
+		margin-top: 20rpx;
+		button{
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+			color: #fff;
+		}
+	}
+	
+	.list{
+		width: 100%;
+		.card-detail{
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+			.detail{
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+				text{
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+		.more{
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+			.part{
+				width: 50%;
+				text-align: center;
+			}
+		}
+		.op{
+			display: flex;
+			justify-content: space-around;
+			margin-top: 20rpx;
+			button{
+				padding: 0;
+				width: 130rpx;
+				font-size: 25rpx;
+			}
+		}
+	}
+
+	.op1{
+		border: 1px solid #41a863;
+		background-color: #41a863;
+	}
+	.op2{
+		border: 1px solid #d98d00;
+		background-color: #d98d00;
+	}
+	.op3{
+		border: 1px solid #3a78ff;
+		background-color: #3a78ff;
+	}
+	.op4{
+		border: 1px solid #da0000;
+		background-color: #da0000;
+	}
+	.op5{
+		border: 1px solid #888;
+		background-color: #888;
+	}
+</style>
diff --git a/pages/MJGL/mujubaoyangjiludan/table.vue b/pages/MJGL/mujubaoyangjiludan/table.vue
new file mode 100644
index 0000000..0223ca7
--- /dev/null
+++ b/pages/MJGL/mujubaoyangjiludan/table.vue
@@ -0,0 +1,560 @@
+<template>
+	<view>
+		<view class="page-header">
+			<view class="search-item">
+				<view class="left">鏃ユ湡闂撮殧</view>
+				<view class="right">
+					<picker mode="selector" :value="curDateGap" :range="dateRangePicker"
+						@change="onDateRangePickerChangeHandler">
+						<input disabled v-model="curDateGap" placeholder="璇烽�夋嫨鏃ユ湡闂撮殧" />
+						<view class="picker-overlay"></view>
+					</picker>
+
+				</view>
+			</view>
+			<view class="search-item">
+				<view class="left">寮�濮嬫棩鏈�</view>
+				<view class="right">
+					<uni-datetime-picker :clear-icon="false" type="date" v-model="startDate"
+						:disabled="!enableCustomDateRange">
+						<view class="datetime-picker-inner"
+							:class="enableCustomDateRange?'font__enable':'font__disable'">
+							<text>{{ startDate }}</text>
+						</view>
+					</uni-datetime-picker>
+				</view>
+			</view>
+			<view class="search-item">
+				<view class="left">缁撴潫鏃ユ湡</view>
+				<view class="right">
+					<uni-datetime-picker :clear-icon="false" type="date" v-model="endDate"
+						:disabled="!enableCustomDateRange">
+						<view class="datetime-picker-inner"
+							:class="enableCustomDateRange?'font__enable':'font__disable'">{{ endDate }}</view>
+					</uni-datetime-picker>
+				</view>
+			</view>
+			<view class="search-item">
+				<view class="left">鍗曟嵁鍙�</view>
+				<view class="right">
+					<input type="text" auto-focus v-model="HBillNo" />
+				</view>
+			</view>
+
+			<view class="button-groups">
+				<button type="default" size="mini" class="btn-b" @tap.stop="onAddClickHandler">鏂板</button>
+				<button type="default" size="mini" class="btn-c" @tap.stop="onSearchClickHandler">鏌ヨ</button>
+				<button type="default" size="mini" class="btn-a" @tap.stop="onResetClickHandler">閲嶇疆</button>
+			</view>
+		</view>
+		<view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+		<scroll-view id="pageContent" scroll-y class="page-content" :style="{height: pageContentHeight + 'px'}">
+			<view v-for="(item,index) in listData" :key="index">
+				<uni-card :title="item.浜у搧妯″叿" :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.淇濆吇璁″垝缂栧彿">
+							<text>淇濆吇璁″垝缂栧彿锛�</text>{{item.淇濆吇璁″垝缂栧彿}}
+						</view>
+						<view class="detail" v-if="item.淇濆吇瑙勭▼缂栧彿">
+							<text>淇濆吇瑙勭▼缂栧彿锛�</text>{{item.淇濆吇瑙勭▼缂栧彿}}
+						</view>
+						<view class="detail" v-if="item.淇濆吇寮�濮嬫棩鏈�">
+							<text>淇濆吇寮�濮嬫棩鏈燂細</text>{{item.淇濆吇寮�濮嬫棩鏈�.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.淇濆吇缁撴潫鏃ユ湡">
+							<text>淇濆吇缁撴潫鏃ユ湡锛�</text>{{item.淇濆吇缁撴潫鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.鏈�缁堢粨璁�">
+							<text>鏈�缁堢粨璁猴細</text>{{item.鏈�缁堢粨璁簘}
+						</view>
+					</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>{{item.鍒跺崟鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.瀹℃牳浜�">
+							<text>瀹℃牳浜猴細</text>{{item.瀹℃牳浜簘}
+						</view>
+						<view class="detail" v-if="item.瀹℃牳鏃ユ湡">
+							<text>瀹℃牳鏃ユ湡锛�</text>{{item.瀹℃牳鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.淇敼浜�">
+							<text>淇敼浜猴細</text>{{item.淇敼浜簘}
+						</view>
+						<view class="detail" v-if="item.淇敼鏃ユ湡">
+							<text>淇敼鏃ユ湡锛�</text>{{item.淇敼鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.鍏抽棴浜�">
+							<text>鍏抽棴浜猴細</text>{{item.鍏抽棴浜簘}
+						</view>
+						<view class="detail" v-if="item.鍏抽棴鏃ユ湡">
+							<text>鍏抽棴鏃ユ湡锛�</text>{{item.鍏抽棴鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.浣滃簾浜�">
+							<text>浣滃簾浜猴細</text>{{item.浣滃簾浜簘}
+						</view>
+						<view class="detail" v-if="item.浣滃簾鏃ユ湡">
+							<text>浣滃簾鏃ユ湡锛�</text>{{item.浣滃簾鏃ユ湡.substr(0,10)}}
+						</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="op1" size="mini" plain @tap.stop="toSon(item)">瀛愯〃淇℃伅</button>
+						<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 class="over" v-if="listData.length == 0">鏆傛棤鏁版嵁</view>
+		</scroll-view>
+		<!-- 鍒嗛〉鍣� -->
+		<view class="page-footer">
+			<uni-pagination id="pagination" title="鏍囬鏂囧瓧" v-model="pageMeta.curPage" :pageSize="pageMeta.size"
+				:total="pageMeta.total" @change="onPageChangeHandler"></uni-pagination>
+		</view>
+	</view>
+</template>
+
+<script>
+	import dayjs from 'dayjs'
+	import {
+		CommonUtils
+	} from '@/utils/common.js'
+	import {
+		getUserInfo
+	} from '../../../utils/auth'
+	export default {
+		data() {
+			return {
+				// 璁$畻鍗$墖鍒楄〃楂樺害
+				pagination_top: 0,
+				pageContent_top: 0,
+				// 鍒嗛〉鎺у埗
+				pageMeta: {
+					curPage: 1,
+					size: 50,
+					total: 0,
+				},
+				// 婊氬姩鎺у埗
+				scrollTop: 0,
+				old: {
+					scrollTop: 0
+				},
+
+				dateRangePicker: ["浠绘剰闂撮殧", "浠婂ぉ", "杩戜袱澶�", "杩戜笁澶�", "杩戝洓澶�", "杩戜簲澶�", "杩戝叚澶�", "杩戜竷澶�", "杩�30澶�"],
+				curDateGap: "杩戜竷澶�",
+				enableCustomDateRange: false,
+				startDate: dayjs(new Date()).subtract(7, 'day').format('YYYY-MM-DD'),
+				endDate: dayjs(new Date()).format('YYYY-MM-DD'),
+				HBillNo: '',
+
+				listData: [],
+				showDetail: -1,
+				operations: -1,
+			}
+		},
+		computed: {
+			pageContentHeight: {
+				get() {
+					return (this.pagination_top - this.pageContent_top)
+				}
+			},
+		},
+		onLoad() {
+			this.onSearchClickHandler()
+		},
+		onPullDownRefresh() {
+			this.onSearchClickHandler()
+		},
+		async onReady() {
+			// #ifndef MP-WEIXIN
+			let query = uni.createSelectorQuery().in(this)
+			query.select("#pagination")
+				.boundingClientRect((data) => {
+					if (data) {
+						this.pagination_top = data.top
+					} else {
+						console.log("鏈壘鍒�#pagination鑺傜偣");
+					}
+				})
+				.exec();
+			query.select("#pageContent")
+				.boundingClientRect((data) => {
+					if (data) {
+						this.pageContent_top = data.top
+					} else {
+						console.log("鏈壘鍒�#pageContent鑺傜偣");
+					}
+				})
+				.exec();
+			// #endif
+
+		},
+		methods: {
+			goTop: function(e) {
+				// 瑙e喅view灞備笉鍚屾鐨勯棶棰�
+				this.scrollTop = this.old.scrollTop
+				this.$nextTick(function() {
+					this.scrollTop = 0
+				});
+			},
+			onDateRangePickerChangeHandler({
+				detail
+			}) {
+				this.enableCustomDateRange = false
+				this.curDateGap = this.dateRangePicker[detail.value]
+				let date = new Date()
+				switch (this.curDateGap) {
+					case "浠婂ぉ":
+						this.startDate = dayjs(date).format("YYYY-MM-DD")
+						break;
+					case "杩戜竴澶�":
+						this.startDate = dayjs(date).subtract(1, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜袱澶�":
+						this.startDate = dayjs(date).subtract(2, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜笁澶�":
+						this.startDate = dayjs(date).subtract(3, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戝洓澶�":
+						this.startDate = dayjs(date).subtract(4, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜簲澶�":
+						this.startDate = dayjs(date).subtract(5, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戝叚澶�":
+						this.startDate = dayjs(date).subtract(6, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜竷澶�":
+						this.startDate = dayjs(date).subtract(7, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩�30澶�":
+						this.startDate = dayjs(date).subtract(30, 'day').format("YYYY-MM-DD")
+						break;
+				}
+				if (this.curDateGap == '浠绘剰闂撮殧') {
+					this.enableCustomDateRange = true
+				}
+			},
+			onSearchClickHandler() {
+				let sWhere = ""
+				if (this.startDate) {
+					sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.startDate + "'";
+				}
+				if (this.endDate) {
+					sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) <= '" + this.endDate + "'";
+				}
+				if (this.HBillNo) {
+					sWhere += " and 鍗曟嵁鍙� like '%" + this.HBillNo + "%'";
+				}
+				this.get_DisplayPage(sWhere);
+			},
+			clear() {
+				this.curDateGap = "杩戜竷澶�"
+				this.enableCustomDateRange = false
+				this.startDate = dayjs(new Date()).subtract(7, 'day').format('YYYY-MM-DD')
+				this.endDate = dayjs(new Date()).format('YYYY-MM-DD')
+				this.HBillNo = ''
+			},
+			async onResetClickHandler() {
+				this.clear()
+				await this.$nextTick()
+				this.onSearchClickHandler()
+			},
+			get_DisplayPage(sWhere) {
+				CommonUtils.doRequest2({
+					url: '/Sc_MouldMaintainBill/GetMouldMaintainBillListPage',
+					data: {
+						"sWhere": sWhere,
+						"user": getUserInfo()["Czymc"],
+						"page": this.pageMeta.curPage,
+						"size": this.pageMeta.size
+					},
+					resFunction: (res) => {
+						let {
+							data,
+							Message,
+							count
+						} = res.data
+						console.log('res.data: ', res.data);
+						this.listData = data;
+						this.pageMeta.total = count
+						uni.stopPullDownRefresh()
+					}
+				})
+			},
+			onPageChangeHandler() {
+				this.onSearchClickHandler()
+				this.goTop()
+			},
+			// 鏂板妯″叿淇濆吇璁板綍鍗�
+			onAddClickHandler() {
+				uni.navigateTo({
+					url: "/pages/MJGL/mujubaoyangjiludan/form"
+				})
+			},
+			//缂栬緫淇濆吇璁板綍鍗�
+			edit(item) {
+				console.log(item)
+				uni.navigateTo({
+					url: '/pages/MJGL/mujubaoyangjiludan/form?hmainid=' + item.hmainid
+				})
+			},
+			//鍒犻櫎淇濆吇璁板綍鍗�
+			del(item) {
+				uni.showModal({
+					title: '鍒犻櫎纭',
+					content: '纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠',
+					success: (res) => {
+						if (res.confirm) {
+							console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+							CommonUtils.doRequest2({
+								url: '/Sc_MouldMaintainBill/DeltetSc_MouldMaintainBill',
+								data: {
+									HInterID: item['hmainid'],
+									user: getUserInfo()['Czymc']
+								},
+								resFunction: (res) => {
+									let {
+										data,
+										count,
+										Message
+									} = res.data
+									if (count == 1) {
+										uni.showToast({
+											icon: count === 1 ? 'success' : 'error',
+											title: Message,
+											duration: 2000
+										});
+
+										// 绛夊緟鎻愮ず鏄剧ず瀹屾垚鍐嶅埛鏂�
+										setTimeout(() => {
+											this.onSearchClickHandler();
+										}, 2000);
+									} else {
+										uni.showToast({
+											icon: 'none',
+											title: Message
+										})
+									}
+								}
+							})
+						} else if (res.cancel) {
+							console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+						}
+					}
+				});
+			},
+			//瀛愯〃鏌ョ湅
+			toSon(item) {
+				uni.navigateTo({
+					url: '/pages/MJGL/mujubaoyangjiludan/table_son?HInterID=' + item.hmainid + '&浜у搧妯″叿=' + item
+						.浜у搧妯″叿 + '&浜у搧妯″叿浠g爜=' + item.浜у搧妯″叿浠g爜,
+				});
+			}
+		},
+	}
+</script>
+
+<style lang="scss">
+	.page-header {
+		display: flex;
+		box-sizing: border-box;
+		padding: 20rpx;
+		flex-direction: column;
+		gap: 10rpx;
+		font-size: 32rpx;
+
+		.search-item {
+			display: flex;
+			flex-direction: row;
+			gap: 10rpx;
+			justify-content: center;
+			align-items: center;
+
+			.left {
+				width: 4em;
+			}
+
+			.right {
+				flex: 1;
+				position: relative;
+				border-radius: 22rpx;
+				border: 1px solid #acacac;
+				display: flex;
+				padding: 4rpx 10rpx;
+
+				picker {
+					width: 100%;
+				}
+			}
+		}
+
+		input {
+			width: inherit;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		.datetime-picker-inner {
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+			display: flex;
+			align-items: center;
+		}
+
+		.font__enable {
+			color: #000;
+		}
+
+		.font__disable {
+			color: #cccccc;
+		}
+	}
+
+	.button-groups {
+		box-sizing: border-box;
+		padding: 10rpx 0 0 0;
+		display: flex;
+		flex-direction: row;
+		gap: 10rpx;
+		justify-content: space-between;
+
+		button {
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+		}
+
+		.btn-a {
+			background-color: #acacac;
+			color: #fff;
+		}
+
+		.btn-b {
+			background-color: #41a863;
+			color: #fff;
+		}
+
+		.btn-c {
+			background-color: #3a78ff;
+			color: #fff;
+		}
+	}
+
+	.page-content {
+		// height: 40vh;
+		box-sizing: border-box;
+		padding: 10rpx 0;
+
+		.card-detail {
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+
+			.detail {
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+
+				text {
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+
+		.more {
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+
+			.part {
+				width: 50%;
+				text-align: center;
+			}
+		}
+
+		.op {
+			display: flex;
+			justify-content: space-around;
+			margin-top: 20rpx;
+
+			button {
+				padding: 0;
+				width: 150rpx;
+				font-size: 25rpx;
+			}
+
+			.op1 {
+				border: 1px solid #41a863;
+				color: #41a863;
+			}
+
+			.op2 {
+				border: 1px solid #d98d00;
+				color: #d98d00;
+			}
+
+			.op3 {
+				border: 1px solid #3a78ff;
+				color: #3a78ff;
+			}
+
+			.op4 {
+				border: 1px solid #da0000;
+				color: #da0000;
+			}
+
+			.op5 {
+				border: 1px solid #888;
+				color: #888;
+			}
+		}
+	}
+
+	.page-footer {
+		position: fixed;
+		bottom: 0;
+		width: 100%;
+		box-sizing: border-box;
+		padding: 32rpx 40rpx;
+	}
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/mujubaoyangjiludan/table_son.vue b/pages/MJGL/mujubaoyangjiludan/table_son.vue
new file mode 100644
index 0000000..1338729
--- /dev/null
+++ b/pages/MJGL/mujubaoyangjiludan/table_son.vue
@@ -0,0 +1,250 @@
+<template>
+	<view class="content">
+		<view class="infoArea">
+			<view class="name">{{infoData.浜у搧妯″叿}}</view>
+			<view class="dm">浠g爜锛歿{infoData.浜у搧妯″叿浠g爜}}</view>
+			
+			<view class="choose">
+				<view class="tab" :class="{focus: number == 1}" @tap="number = 1">淇濆吇椤逛俊鎭�</view>
+				<view class="tab" :class="{focus: number == 2}" @tap="number = 2">閰嶄欢淇℃伅</view>
+			</view>
+		</view>
+		
+		<view style="width: 100%;height: 200rpx;"></view>
+		<view v-if="number == 1">
+			<view class="list" v-for="(item,index) in listData1" :key="index">
+				<uni-card :title="item.HMaintainItem" :extra="item.HMaintainItemNumber" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
+					<view class="card-detail">
+						<view class="detail" v-if="item.HMaintainPart">
+							<text>淇濆吇閮ㄤ綅锛�</text>{{item.HMaintainPart}}
+						</view>
+						<view class="detail" v-if="item.HManagerName">
+							<text>璐熻矗浜猴細</text>{{item.HManagerName}}
+						</view>
+						<view class="detail" v-if="item.HManagerNumber">
+							<text>璐熻矗浜轰唬鐮侊細</text>{{item.HManagerNumber}}
+						</view>
+						<view class="detail" v-if="item.HRemark">
+							<text>澶囨敞锛�</text>{{item.HRemark}}
+						</view>
+					</view>
+					<view class="card-detail" v-if="showDetail == index">
+						<view class="detail">
+							<text>鍏蜂綋瑕佹眰锛�</text>{{item.HClaim?item.HClaim:'鏆傛棤鍏蜂綋瑕佹眰'}}
+						</view>
+					</view>
+					
+					<view class="morea" v-if="showDetail == index" >
+						<uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+					</view>
+					<view class="morea" v-if="showDetail != index">
+						<uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏌ョ湅鍏蜂綋瑕佹眰
+					</view>
+				</uni-card>
+			</view>
+			
+			<view class="over" v-if="listData1.length == 0 ">鏆傛棤鏁版嵁</view>
+			<view class="over" v-if="listData1.length != 0 ">宸插埌搴�</view>
+		</view>
+
+		<view v-if="number == 2">
+			<view class="list" v-for="(item,index) in listData2" :key="index" >
+				<uni-card :title="item.HMaterName" :extra="item.HMaterNumber" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
+					<view class="card-detail">
+						<view class="detail" v-if="item.HUnitName">
+							<text>鍗曚綅鍚嶇О锛�</text>{{item.HUnitName}}
+						</view>
+						<view class="detail" v-if="item.HUnitNumber">
+							<text>鍗曚綅浠g爜锛�</text>{{item.HUnitNumber}}
+						</view>
+						<view class="detail" v-if="item.HManagerName">
+							<text>璐熻矗浜猴細</text>{{item.HManagerName}}
+						</view>
+						<view class="detail" v-if="item.HManagerNumber">
+							<text>璐熻矗浜轰唬鐮侊細</text>{{item.HManagerNumber}}
+						</view>
+						<view class="detail" v-if="item.HQty">
+							<text>瀹為檯鐢ㄩ噺锛�</text>{{item.HQty}}
+						</view>
+						<view class="detail" v-if="item.HQtyMust">
+							<text>鏍囧噯鐢ㄩ噺锛�</text>{{item.HQtyMust}}
+						</view>
+						<view class="detail" v-if="item.HRemark">
+							<text>澶囨敞锛�</text>{{item.HRemark}}
+						</view>
+					</view>
+				</uni-card>
+			</view>
+			<view class="over" v-if="listData2.length == 0">鏆傛棤鏁版嵁</view>
+			<view class="over" v-if="listData2.length != 0">宸插埌搴�</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import { getUserInfo } from "@/utils/auth.js";
+	export default {
+	    data() {
+	        return {
+				userInfo:getUserInfo(),
+				serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
+				infoData:{},
+				number:1,
+				listData1:[],
+				listData2:[],
+				showDetail:-1,
+	        }
+	    },
+		onLoad(e) {
+			console.log(e)
+			uni.setNavigationBarTitle({
+				title: e.浜у搧妯″叿
+			});
+			this.infoData = e
+			this.getList(e.HInterID)
+		},
+	    methods: {
+			getList(HInterID){
+				uni.showLoading({
+					title:'鍔犺浇涓�...'
+				})
+				uni.request({
+				    url: this.serverUrl + '/Sc_MouldMaintainBill/Sc_MouldMaintainBillListProjectDetaiNew',
+					data: { "HInterID": HInterID },
+				    success: (res) => {
+						if(res.data.count == 1){
+							this.listData1 = res.data.list[0]
+							this.listData2 = res.data.list[1]
+							console.log(1,this.listData1);
+							console.log(2,this.listData2);
+							uni.hideLoading()
+						}else{
+							uni.hideLoading()
+							uni.showToast({
+								title:res.data.Message,
+								icon:'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.hideLoading()
+						uni.showToast({
+							title:'鎺ュ彛璇锋眰澶辫触',
+							icon:'none'
+						})
+					},
+				});
+			},
+	    }
+	}
+</script>
+
+<style lang="scss" scoped>
+	.infoArea{
+		width: 100%;
+		padding-top: 20rpx;
+		background-color: #f0f0f0;
+		position: fixed;
+		top: 0;
+		left: 0;
+		z-index: 99;
+		.name{
+			text-align: center;
+			font-size: 32rpx;
+			font-weight: 600;
+			color: #333;
+			line-height: 150%;
+		}
+		.dm{
+			text-align: center;
+			font-size: 27rpx;
+			font-weight: 500;
+			color: #333;
+			margin-top: 10px;
+		}
+		.other{
+			display: flex;
+			flex-wrap: wrap;
+			width: 90%;
+			margin: 0 auto;
+			margin-top: 12rpx;
+			font-size: 27rpx;
+			color: #666;
+			text{
+				font-size: 28rpx;
+				color: #333;
+				margin-left: 10rpx;
+			}
+			.half{
+				width: 50%;
+			}
+			.all{
+				width: 100%;
+			}
+		}
+		.choose{
+			height: 70rpx;
+			margin-top: 20rpx;
+			padding: 0 30rpx;
+			background-color: #fff;
+			line-height: 86rpx;
+			border-radius: 40rpx 40rpx 0 0;
+			border-bottom: 2px solid #eee;
+			display: flex;
+			.tab{
+				margin: 0 20rpx;
+				text-align: center;
+				font-size: 28rpx;
+				color: #666;
+			}
+			.focus{
+				font-size: 30rpx;
+				color: #333;
+				font-weight: 600;
+				border-bottom: 2px solid #3a78ff;
+			}
+		}
+	}
+	
+	.list{
+		width: 100%;
+		.card-detail{
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+			.detail{
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+				text{
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+		.more{
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+			.part{
+				width: 50%;
+				text-align: center;
+			}
+		}
+		
+		.morea{
+			color: #888;
+			font-size: 24rpx;
+			padding-top: 10rpx;
+			text-align: right;
+		}
+	}
+
+</style>
diff --git a/pages/MJGL/mujudianjianjiludan/form.vue b/pages/MJGL/mujudianjianjiludan/form.vue
new file mode 100644
index 0000000..1bb3243
--- /dev/null
+++ b/pages/MJGL/mujudianjianjiludan/form.vue
@@ -0,0 +1,749 @@
+<template>
+	<view>
+		<view class="form">
+			<view class="form-item">
+				<view class="title">鍗曟嵁鍙�:</view>
+				<view class="righton">
+					<input name="HBillNo" v-model="hform.HBillNo" disabled placeholder="璇疯緭鍏ュ崟鎹彿" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鏃ユ湡:</view>
+				<view class="righton">
+					<input name="HDate" disabled v-model="hform.HDate" placeholder="璇烽�夋嫨鏃ユ湡" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鍐呴儴鍗曟嵁鍙�:</view>
+				<view class="right">
+					<input name="HInnerBillNo" v-model="hform.HInnerBillNo" placeholder="璇疯緭鍏ュ唴閮ㄥ崟鎹彿" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">妯″叿缂栫爜:</view>
+				<view class="righton">
+					<input name="HMouldNumber" disabled v-model="hform.HMouldNumber" placeholder="璇疯緭鍏ユā鍏风紪鐮�" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>妯″叿:</view>
+				<view class="right" style="width: 380rpx;">
+					<input name="HMouldName" v-model="hform.HMouldName" @blur="getHBarCodeData(hform.HMouldName)"
+						placeholder="璇锋壂鎻忔ā鍏锋潯鐮�" />
+				</view>
+				<uni-icons type="scan"
+					style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;font-weight: 500;"
+					size="20" @click="toScanCode"></uni-icons>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>鐝:</view>
+				<view class="right">
+					<uni-combox :candidates="arrayHShifts" placeholder="璇烽�夋嫨鐝" v-model="hform.HShiftsName"
+						@input="HShiftsChange"></uni-combox>
+				</view>
+			</view>
+
+			<view class="tab_area"></view>
+
+			<view class="form-item">
+				<view class="title">鐐规寮�濮�:</view>
+				<view class="right">
+					<picker mode="date" v-model="hform.HBeginDate" @change="HBeginDateChange">
+						<view class="picker-overlay"></view>
+						<input name="HBeginDate" disabled v-model="hform.HBeginDate" placeholder="璇烽�夋嫨鐐规寮�濮嬫棩鏈�" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鐐规缁撴潫:</view>
+				<view class="right">
+					<picker mode="date" v-model="hform.HEndDate" @change="HEndDateChange">
+						<view class="picker-overlay"></view>
+						<input name="HEndDate" disabled v-model="hform.HEndDate" placeholder="璇烽�夋嫨鐐规缁撴潫鏃ユ湡" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鐐规璁″垝缂栧彿:</view>
+				<view class="right" style="width: 380rpx;" @tap="showPlan=true">
+					<input name="HPlanName" disabled v-model="hform.HPlanName" placeholder="璇烽�夋嫨鐐规璁″垝缂栧彿" />
+				</view>
+				<uni-icons type="list"
+					style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;font-weight: 500;"
+					size="20" @click="showPlan=true"></uni-icons>
+			</view>
+			<view class="form-item">
+				<view class="title"><text>*</text>妯″叿鐐规瑙勭▼:</view>
+				<view class="right">
+					<uni-combox :candidates="arrayHMouldMaintainRuleInterNo" placeholder="璇烽�夋嫨妯″叿鐐规瑙勭▼"
+						v-model="hform.HMouldDotCheckRuleNo" @input="HMouldMaintainRuleInterNoChange"></uni-combox>
+				</view>
+			</view>
+
+			<view class="form-item">
+				<view class="title"><text>*</text>缁撴灉鍒ゅ畾:</view>
+				<view class="right" style="display: flex; align-items: center; padding: 0 20rpx; border: none;">
+					<view style="display: flex; align-items: center;">
+						<checkbox-group @change="onLastResultChange">
+							<checkbox :value="'true'" :checked="hform.HLastResult"></checkbox>
+						</checkbox-group>
+						<text style="margin-left: 10rpx;">鍚堟牸</text>
+
+					</view>
+				</view>
+			</view>
+			
+			<view class="tab_area"></view>
+			
+			<view class="form-item" style="align-items: flex-start;">
+				<view class="title">寮傚父鎯呭喌璁板綍:</view>
+				<view class="right" style="min-height: 150rpx;">
+					<textarea name="HErrNote" v-model="hform.HErrNote" auto-height maxlength="-1"
+						placeholder="璇疯緭鍏ュ紓甯告儏鍐佃褰�"></textarea>
+				</view>
+			</view>
+			
+			<view class="tab_area"></view>
+			
+			<view class="form-item" style="align-items: flex-start;">
+				<view class="title">閲嶅ぇ瀹夊叏闅愭偅璁板綍:</view>
+				<view class="right" style="min-height: 150rpx;">
+					<textarea name="HBigSafeNote" v-model="hform.HBigSafeNote" auto-height maxlength="-1"
+						placeholder="璇疯緭鍏ラ噸澶у畨鍏ㄩ殣鎮h褰�"></textarea>
+				</view>
+			</view>
+
+			<view class="tab_area"></view>
+
+			<view class="form-item" style="align-items: flex-start;">
+				<view class="title">澶囨敞:</view>
+				<view class="right" style="min-height: 150rpx;">
+					<textarea name="HRemark" v-model="hform.HRemark" auto-height maxlength="-1"
+						placeholder="璇疯緭鍏ュ娉�"></textarea>
+				</view>
+			</view>
+			
+			<view class="tab_area"></view>
+			
+			<view class="form-item" style="align-items: flex-start;">
+				<view class="title">鎽樿:</view>
+				<view class="right" style="min-height: 150rpx;">
+					<textarea name="HExplanation" v-model="hform.HExplanation" auto-height maxlength="-1"
+						placeholder="璇疯緭鍏ユ憳瑕�"></textarea>
+				</view>
+			</view>
+
+			<view class="tab_area"></view>
+
+			<view v-if="showmore">
+				<view class="form-item">
+					<view class="title">鍒跺崟浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HMaker" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">鍒跺崟鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HMakeDate" v-model="hform.HMakeDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HMakeDate" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">淇敼浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HUpDater" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">淇敼鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HUpDateDate" v-model="hform.HUpDateDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HUpDateDate" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">瀹℃牳浜�:</view>
+					<view class="righton">
+						<input v-model="hform.HChecker" disabled />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="title">瀹℃牳鏃ユ湡:</view>
+					<view class="righton">
+						<input v-if="hform.HCheckDate" v-model="hform.HCheckDate.substr(0,10)" disabled />
+						<input v-else v-model="hform.HCheckDate" disabled />
+					</view>
+				</view>
+			</view>
+			<view class="other">
+				<view v-if="!showmore" @tap="showmore = true">
+					灞曞紑鍏朵粬淇℃伅<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="bottom"></uni-icons>
+				</view>
+				<view v-if="showmore" @tap="showmore = false">
+					鎶樺彔鍏朵粬淇℃伅<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="tip"><text>*</text>娉�: 璇风偣鍑讳笅鏂圭豢鑹叉柊澧炴寜閽坊鍔犵偣妫�椤逛俊鎭紙蹇呭~锛�</view>
+			</view>
+
+			<view class="bottom-btn">
+				<button class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+				<button class="btn-b" size="mini" @tap="showMask = true">鏂板</button>
+				<button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+			</view>
+		</view>
+
+		<plan @planData="getPlanData" @close="closeMask" v-if="showPlan"></plan>
+		<formDetail :form1List='form1List' @hformList='hformList' v-if="showMask"></formDetail>
+	</view>
+</template>
+<script>
+	import getDateTime from '@/utils/getdateTime.js';
+	import plan from './plan.vue';
+	import formDetail from './formDetail.vue';
+	import {
+		getUserInfo
+	} from '../../../utils/auth'
+	export default {
+		components: {
+			plan,
+			formDetail
+		},
+		data() {
+			return {
+				serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+				arrayHMouldName: [],
+				showPlan: false,
+				showmore: false,
+				arrayHMouldMaintainRuleInterNo: [], //瑙勭▼
+				HMouldMaintainRuleInterNoList: [],
+				arrayHShifts: [], //鐝
+				HShiftsList: [],
+				hform: {
+					HInterID: 0,
+					HBillNo: '',
+					HDate: getDateTime.dateTimeStr('y-m-d'),
+					HInnerBillNo: '',
+					HMouldID: '',
+					HMouldName: '',
+					HMouldNumber: '',
+					HShiftsID: '0',
+					HShiftsName: '',
+
+					HLastResult: 'true',
+					HPlanNo: '',
+					HPlanInterID: '0',
+					HMainSourceInterID: '0',
+					HMainSourceEntryID: '0',
+					HMainSourceBillNo: '',
+					HBeginDate: '',
+					HEndDate: '',
+					HMouldDotCheckRuleID: '0',
+					HMouldDotCheckRuleNo: '',
+					HBigSafeNote:'',
+					HErrNote:'',
+					HExplanation: '',
+					HRemark: '',
+
+					HMaker: getUserInfo().Czymc,
+					HMakeDate: '',
+					HUpDater: '',
+					HUpDateDate: '',
+					HChecker: '',
+					HCheckDate: '',
+					HCloseMan: '',
+					HCloseDate: '',
+					HDeleteMan: '',
+					HDeleteDate: '',
+				},
+
+				showMask: false,
+				form1List: [],
+			}
+		},
+		onLoad(e) {
+			this.getHShiftsList()
+			this.getHMouldMaintainRuleInterList()
+			if (e.hmainid) {
+				this.getEditData(e.hmainid)
+			} else {
+				this.getNewData()
+			}
+
+		},
+		methods: {
+			//鐩戝惉澶嶉�夋
+			onLastResultChange(e) {
+				// 閫氳繃 value 鍒ゆ柇鐘舵��
+				this.hform.HLastResult = e.detail.value.includes('true');
+			},
+			//鎵爜
+			toScanCode() {
+				var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
+				mpaasScanModule.mpaasScan({
+					'hideAlbum': true,
+					'timeoutInterval': '10', //瓒呮椂鏃堕棿
+					'timeoutText': '鏈瘑鍒埌浜岀淮鐮�' //瓒呮椂鎻愰啋            
+				}, (ret) => {
+					console.log(ret.resp_result)
+					this.hform.HMouldName = ret.resp_result
+					this.getHBarCodeData(ret.resp_result)
+				})
+			},
+			getHBarCodeData(HBarCode) {
+				uni.request({
+					url: this.serverUrl + '/QJ_PDA_MouldDotCheckBill/txtHBarCode_KeyDown',
+					data: {
+						HBarCode: this.hform.HMouldName
+					},
+					success: (res) => {
+						console.log(res.data);
+						if (res.data.count == 1) {
+							var data = res.data.data[0]
+							this.hform.HMouldID = data.HInterID
+							this.hform.HMouldName = data.HName
+							this.hform.HMouldNumber = data.HMouldNo
+						}
+						uni.showToast({
+							title: res.data.Message,
+							icon: 'none'
+						})
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//鐐规寮�濮嬮�夋嫨
+			HBeginDateChange(e) {
+				console.log(e.detail.value)
+				this.hform.HBeginDate = e.detail.value
+			},
+			//鐐规缁撴潫閫夋嫨
+			HEndDateChange(e) {
+				console.log(e.detail.value)
+				this.hform.HEndDate = e.detail.value
+			},
+			//鐝
+			getHShiftsList() {
+				uni.request({
+					url: this.serverUrl + '/Web/GetGy_ShiftsList_Json',
+					data: {
+						Shifts: ''
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.HShiftsList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHShifts[i] = res.data.data[i].鐝鍚嶇О
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//閫夋嫨鐝
+			HShiftsChange(e) {
+				for (var i = 0; i < this.HShiftsList.length; i++) {
+					if (this.HShiftsList[i].鐝鍚嶇О == e) {
+						this.hform.HShiftsID = this.HShiftsList[i].HItemID
+					}
+				}
+			},
+			//閫夋嫨鐐规璁″垝缂栧彿
+			getPlanData(e) {
+				console.log(e)
+				this.hform.HPlanNo = e.HPlanName
+				this.hform.HPlanName = e.HPlanName
+				this.hform.HPlanInterID = e.HInterID
+				this.hform.HMainSourceInterID = e.HInterID
+				this.hform.HMainSourceBillNo = e.HPlanName
+				this.showPlan = false
+				
+			},
+			closeMask(e) {
+				this.showPlan = false
+			},
+			//鑾峰彇妯″叿鐐规瑙勭▼鍒楄〃鏁版嵁
+			getHMouldMaintainRuleInterList() {
+				uni.request({
+					url: this.serverUrl + '/Sc_MouldDotCheckRuleBill/Sc_MouldDotCheckRuleList',
+					data: {
+						sWhere: '',
+						user: uni.getStorageSync('HUserName')
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.HMouldMaintainRuleInterNoList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHMouldMaintainRuleInterNo[i] = res.data.data[i].鍗曟嵁鍙�
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//閫夋嫨妯″叿鐐规瑙勭▼
+			HMouldMaintainRuleInterNoChange(e) {
+				for (var i = 0; i < this.HMouldMaintainRuleInterNoList.length; i++) {
+					if (this.HMouldMaintainRuleInterNoList[i].鍗曟嵁鍙� == e) {
+						this.hform.HMouldDotCheckRuleID = this.HMouldMaintainRuleInterNoList[i].hmainid
+						this.hform.HMouldDotCheckRuleNo = this.HMouldMaintainRuleInterNoList[i].鍗曟嵁鍙�
+						//瀛愯〃
+						uni.request({
+							url: this.serverUrl +
+								'/Sc_MouldMaintainRuleBill/GetMouldRuleSubList-Detail',
+							data: {
+								HInterID: this.hform.HMouldDotCheckRuleID,
+								HBillType: '3821'
+							},
+							success: (res) => {
+								if (res.data.count == 1) {
+									this.form1List = res.data.list[0];
+									console.log(2, res.data.list[0]);
+								} else {
+									uni.showToast({
+										title: res.data.Message,
+										icon: 'none'
+									})
+								}
+							},
+							fail: (res) => {
+								console.log(res);
+								uni.showToast({
+									title: '鎺ュ彛璇锋眰澶辫触',
+									icon: 'none'
+								})
+							},
+						});
+					}
+				}
+			},
+
+			hformList(e) {
+				console.log(e)
+				this.form1List = e
+				this.showMask = false
+			},
+
+			//缂栬緫
+			getEditData(hmainid) {
+				//涓昏〃
+				uni.request({
+					url: this.serverUrl + '/Sc_MouldDotCheckBill/Sc_MouldDotCheckBillListCheckDetai',
+					data: {
+						HID: hmainid
+					},
+					success: (res) => {
+						console.log(1, res.data.data.h_v_Sc_MouldDotCheckBillMain_Edit);
+						if (res.data.code == 1) {
+							var data = res.data.data.h_v_Sc_MouldDotCheckBillMain_Edit[0]
+							this.hform = {
+								HInterID: hmainid,
+								HBillNo: data.鍗曟嵁鍙�,
+								HDate: data.鏃ユ湡.substr(0, 10),
+								HInnerBillNo: data.鍐呴儴鍗曟嵁鍙�,
+								HMouldID: data.HMouldID,
+								HMouldNumber: data.浜у搧妯″叿浠g爜,
+								HMouldName: data.浜у搧妯″叿,
+								HPlanNo: data.鐐规璁″垝缂栧彿,
+								HPlanName: data.鐐规璁″垝缂栧彿,
+								HPlanInterID: data.HPlanInterID,
+								HBeginDate: data.鐐规寮�濮嬫棩鏈�.substr(0, 10),
+								HEndDate: data.鐐规缁撴潫鏃ユ湡.substr(0, 10),
+								HShiftsID: data.HShiftsID ,
+								HShiftsName: data.鐝鍚嶇О,
+								HLastResult: data.鏈�缁堢粨璁� === '鍚堟牸',
+								HMouldDotCheckRuleID: data.HMouldDotCheckRuleID,
+								HMouldDotCheckRuleNo: data.鍣ㄥ叿鐐规瑙勭▼鍗曟嵁鍙�,
+								HErrNote: data.寮傚父鎯呭喌璁板綍,
+								HBigSafeNote: data.閲嶅ぇ瀹夊叏闅愭偅璁板綍,
+								HExplanation: data.鎽樿,
+								HRemark: data.澶囨敞,
+
+								HMaker: data.鍒跺崟浜�,
+								HMakeDate: data.鍒跺崟鏃ユ湡,
+								HUpDater: data.淇敼浜�,
+								HUpDateDate: data.淇敼鏃ユ湡,
+								HChecker: data.瀹℃牳浜�,
+								HCheckDate: data.瀹℃牳鏃ユ湡,
+								HDeleteMan: data.浣滃簾浜�,
+								HDeleteDate: data.浣滃簾鏃ユ湡,
+							}
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+				//瀛愯〃
+				uni.request({
+					url: this.serverUrl + '/Sc_MouldDotCheckBill/Sc_MouldDotCheckBillListProjectDetai',
+					data: {
+						sqlWhere: 'and HInterID=' + hmainid
+					},
+					success: (res) => {
+						if (res.data.count == 1) {
+							this.form1List = res.data.list[0];
+							console.log(2, res.data.list[0]);
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			//鏂板
+			getNewData() {
+				uni.request({
+					url: this.serverUrl + '/Web/GetMAXNum',
+					data: {
+						HBillType: '3821'
+					},
+					success: (res) => {
+						console.log(res.data)
+						if (res.data.count == 1) {
+							this.hform.HInterID = 0
+							this.hform.HBillNo = res.data.data[0].HBillNo
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+
+			submit() {
+				if (!this.hform.HDate) {
+					uni.showToast({
+						title: '璇烽�夋嫨鏃ユ湡',
+						icon: 'none'
+					})
+				} else if (!this.hform.HMouldID) {
+					uni.showToast({
+						title: '璇烽�夋嫨妯″叿',
+						icon: 'none'
+					})
+				} else if (!this.hform.HBeginDate) {
+					uni.showToast({
+						title: '璇烽�夋嫨鐐规寮�濮嬫棩鏈�',
+						icon: 'none'
+					})
+				} else if (!this.hform.HEndDate) {
+					uni.showToast({
+						title: '璇烽�夋嫨鐐规缁撴潫鏃ユ湡',
+						icon: 'none'
+					})
+				} else if (!this.hform.HMouldDotCheckRuleID) {
+					uni.showToast({
+						title: '璇烽�夋嫨妯″叿鐐规瑙勭▼',
+						icon: 'none'
+					})
+				} else if (this.form1List.length == 0) {
+					uni.showToast({
+						title: '璇锋柊澧炵偣妫�椤逛俊鎭紝鐐规椤逛笉鍙负绌�',
+						icon: 'none'
+					})
+				} else {
+					uni.showLoading({
+						title: '璇风◢鍊�'
+					})
+					var sMainStr = JSON.stringify(this.hform);
+					var sSubStr = JSON.stringify(this.form1List);
+					var sMainSub = sMainStr + ';' + sSubStr + ";" + uni.getStorageSync('HUserName');
+					console.log(sMainSub);
+					uni.request({
+						url: this.serverUrl + '/Sc_MouldDotCheckBill/SaveGetMouldDotCheckBillList',
+						method: 'POST',
+						dataType: "json",
+						data: {
+							msg: sMainSub
+						},
+						success: (res) => {
+							console.log(1, res);
+							uni.hideLoading()
+							if (res.data.count == 1) {
+
+							}
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						},
+						fail: (res) => {
+							console.log(res);
+							uni.showToast({
+								title: '鎺ュ彛璇锋眰澶辫触',
+								icon: 'none'
+							})
+						},
+					});
+				}
+			},
+			goBack() {
+				uni.navigateBack()
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.form {
+		width: 668rpx;
+		margin: 20rpx auto;
+		padding-bottom: 240rpx;
+	}
+
+	.tab_area {
+		width: 100%;
+		height: 50rpx;
+	}
+
+	.form-item {
+		display: flex;
+		align-items: center;
+		font-size: 30rpx;
+		padding: 6rpx 0;
+
+		.title {
+			width: 208rpx;
+		}
+
+		.right {
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #acacac;
+		}
+
+		.righton {
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #e4e4e4;
+			background-color: #e4e4e4;
+		}
+
+		text {
+			color: red;
+			font-weight: bold;
+		}
+
+		input {
+			width: 100%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		textarea {
+			width: 98%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		.tip {
+			color: #da9100;
+			margin-top: 20rpx;
+		}
+	}
+
+	.other {
+		margin-top: 8rpx;
+		text-align: center;
+		font-size: 28rpx;
+		padding: 4rpx 18rpx;
+		color: #1890FF;
+	}
+
+	.bottom-btn {
+		width: 100%;
+		// height: 120rpx;
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		background-color: #fff;
+		box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+		padding: 30rpx 40rpx 40rpx 40rpx;
+
+		button {
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+		}
+
+		.btn-a {
+			background-color: #3A78FF;
+			color: #fff;
+		}
+
+		.btn-b {
+			background-color: #41a863;
+			color: #fff;
+			margin-left: 30rpx;
+		}
+
+		.btn-c {
+			background-color: #acacac;
+			color: #fff;
+			position: absolute;
+			right: 120rpx;
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/mujudianjianjiludan/formDetail.vue b/pages/MJGL/mujudianjianjiludan/formDetail.vue
new file mode 100644
index 0000000..57ca5a0
--- /dev/null
+++ b/pages/MJGL/mujudianjianjiludan/formDetail.vue
@@ -0,0 +1,463 @@
+<template>
+	<view class="content">
+		<view class="mains" v-if="num==1">
+			<!-- 鐐规椤逛俊鎭儴鍒嗕繚鎸佷笉鍙� -->
+			<view class="title">鐐规椤逛俊鎭�</view>
+			<view class="table">
+				<uni-collapse accordion>
+					<uni-collapse-item v-for="(item,index) in hformList" :key="index">
+						<template v-slot:title>
+							<view class="table-line">
+								<view class="line">
+									<view class="font">
+										<text>鐐规椤圭洰锛�</text>{{item.HDotCheckItem}}
+									</view>
+									<view>
+										<text>鐐规閮ㄤ綅锛�</text>{{item.HDotCheckPart}}
+									</view>
+								</view>
+								<view class="line">
+									<text>璐熻矗浜猴細</text>{{item.HManagerName}}
+								</view>
+							</view>
+						</template>
+						<view class="table-detail">
+							<view class="detail">
+								<text>鍏蜂綋瑕佹眰锛�</text>{{item.HClaim?item.HClaim:'鏆傛棤鍏蜂綋瑕佹眰'}}
+							</view>
+							<view class="detail">
+								<text>鏄惁鍚堟牸锛�</text>{{ item.HDotCheckResult ? '鍚堟牸' : '涓嶅悎鏍�' }}
+							</view>
+							<view class="detail" v-if="item.HRemark">
+								<text>澶囨敞锛�</text>{{item.HRemark}}
+							</view>
+							<view class="btns">
+								<button class="btnd" size="mini" @tap="edit(index)">缂栬緫</button>
+								<button class="btne" size="mini" @tap="del(index)">鍒犻櫎</button>
+							</view>
+						</view>
+					</uni-collapse-item>
+				</uni-collapse>
+			</view>
+			<view class="foot">
+				<button class="btna" size="mini" @tap="creat">鏂板</button>
+				<button class="btnb" size="mini" @tap="over">纭</button>
+			</view>
+		</view>
+
+		<view class="mains" v-if="num == 2">
+			<view class="title">鐐规椤圭紪杈�</view>
+			<view class="form">
+				<view class="form-item">
+					<view class="item-title">鐐规椤圭洰:</view>
+					<view class="item-right">
+						<uni-combox :candidates="arrayHDotCheckItem" placeholder="璇烽�夋嫨鐐规椤圭洰" v-model="hform.HDotCheckItem"
+							@input="HDotCheckItemInput"></uni-combox>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">鐐规閮ㄤ綅:</view>
+					<view class="item-right">
+						<input v-model="hform.HDotCheckPart" placeholder="璇疯緭鍏ョ偣妫�閮ㄤ綅" />
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">璐熻矗浜�:</view>
+					<view class="item-right">
+						<uni-combox :candidates="arrayHManagerName" placeholder="璇烽�夋嫨璐熻矗浜�" v-model="hform.HManagerName"
+							@input="HManagerNameInput"></uni-combox>
+					</view>
+				</view>
+				<view class="form-item" style="align-items: flex-start;">
+					<view class="item-title">鍏蜂綋瑕佹眰:</view>
+					<view class="item-right" style="min-height: 150rpx;">
+						<textarea v-model="hform.HClaim" auto-height maxlength="-1" placeholder="璇疯緭鍏ュ叿浣撹姹�"></textarea>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">缁撴灉:</view>
+					<view class="right" style="display: flex; align-items: center; padding: 0 20rpx; border: none;">
+						<view style="display: flex; align-items: center;">
+							<checkbox-group @change="onResultChange">
+							  <checkbox :value="'true'" :checked="hform.HDotCheckResult"></checkbox>
+							</checkbox-group>
+							<text style="margin-left: 10rpx;">鍚堟牸</text>
+						</view>
+					</view>
+				</view>
+				<view class="form-item">
+					<view class="item-title">澶囨敞:</view>
+					<view class="item-right">
+						<input v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+					</view>
+				</view>
+			</view>
+			<view class="foot">
+				<button class="btnc" size="mini" @tap="back">杩斿洖</button>
+				<button class="btnb" size="mini" @tap="add">纭</button>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+				num: 1,
+				editIndex: -1,
+
+				HDotCheckItemList: [],
+				arrayHDotCheckItem: [],
+
+				HManagerNameList: [],
+				arrayHManagerName: [],
+
+				hformList: [],
+				hform: {},
+			}
+		},
+		props: {
+			form1List: {
+				type: Array,
+				default () {
+					return []
+				}
+			},
+		},
+		created() {
+			this.getHDotCheckItemList()
+			this.getHManagerNameList()
+			this.hformList = this.form1List
+		},
+		methods: {
+			// 鏂板锛氬鐞嗗閫夋鍙樺寲浜嬩欢
+			onResultChange(e) {
+				this.hform.HDotCheckResult = e.detail.value.includes('true');
+			},
+
+			//鐐规椤圭洰
+			getHDotCheckItemList() {
+				uni.request({
+					url: this.serverUrl + '/PublicPageMethod/MaintainList',
+					data: {
+						sWhere: "where HStopFlag=0 and HEndFlag=1"
+					},
+					success: (res) => {
+						console.log(1, res.data.data);
+						if (res.data.count == 1) {
+							this.HDotCheckItemList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHDotCheckItem[i] = res.data.data[i].HName
+							}
+							this.$forceUpdate();
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			HDotCheckItemInput(e) {
+				console.log(e)
+				for (var i = 0; i < this.HDotCheckItemList.length; i++) {
+					if (this.HDotCheckItemList[i].HName == e) {
+						this.hform.HDotCheckItemID = this.HDotCheckItemList[i].HItemID
+						this.hform.HDotCheckItemNumber = this.HDotCheckItemList[i].HNumber
+						this.hform.HDotCheckItem = this.HDotCheckItemList[i].HName
+					}
+				}
+			},
+
+			//璐熻矗浜�
+			getHManagerNameList() {
+				uni.request({
+					url: this.serverUrl + '/PublicPageMethod/UserList',
+					data: {
+						sWhere: ''
+					},
+					success: (res) => {
+						console.log(2, res.data.data);
+						if (res.data.count == 1) {
+							this.HManagerNameList = res.data.data
+							for (var i = 0; i < res.data.data.length; i++) {
+								this.arrayHManagerName[i] = res.data.data[i].HName
+							}
+						} else {
+							uni.showToast({
+								title: res.data.Message,
+								icon: 'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.showToast({
+							title: '鎺ュ彛璇锋眰澶辫触',
+							icon: 'none'
+						})
+					},
+				});
+			},
+			HManagerNameInput(e) {
+				console.log(e)
+				for (var i = 0; i < this.HManagerNameList.length; i++) {
+					if (this.HManagerNameList[i].HName == e) {
+						this.hform.HManagerID = this.HManagerNameList[i].HItemID
+						this.hform.HManagerNumber = this.HManagerNameList[i].HNumber
+						this.hform.HManagerName = this.HManagerNameList[i].HName
+					}
+				}
+			},
+
+			creat() {
+				this.hform = {
+						HDotCheckItemID: '',
+						HDotCheckItemNumber: '',
+						HDotCheckItem: '',
+						HDotCheckPart: '',
+						HClaim: '',
+						HManagerID: '',
+						HManagerNumber: '',
+						HManagerName: '',
+						HDotCheckResult: true, // 榛樿璁句负true锛屽嵆榛樿鍕鹃��
+						HRemark: '',
+					},
+					this.num = 2
+			},
+			back() {
+				this.hformList[this.editIndex] = uni.getStorageSync('hform')
+				uni.removeStorageSync('hform')
+				this.editIndex = -1
+				this.num = 1
+			},
+			edit(index) {
+				this.hform = this.hformList[index]
+				uni.setStorageSync('hform', this.hformList[index]);
+				this.editIndex = index
+				this.num = 2
+			},
+			del(index) {
+				this.hformList.splice(index, 1);
+			},
+			add() {
+				if (!this.hform.HDotCheckItemID) {
+					uni.showToast({
+						title: '璇烽�夋嫨鐐规椤圭洰淇℃伅',
+						icon: 'none'
+					})
+				} else if (!this.hform.HDotCheckPart) {
+					uni.showToast({
+						title: '璇疯緭鍏ョ偣妫�閮ㄤ綅淇℃伅',
+						icon: 'none'
+					})
+				} else if (!this.hform.HManagerID) {
+					uni.showToast({
+						title: '璇烽�夋嫨璐熻矗浜�',
+						icon: 'none'
+					})
+				} else {
+					uni.showModal({
+						title: '鎻愮ず',
+						content: '鏄惁纭鎻愪氦鐐规椤圭洰鍐呭锛屾槸鐨勮瘽灏嗘坊鍔犲埌鐐规椤逛俊鎭腑銆�',
+						success: (res) => {
+							if (res.confirm) {
+								if (this.editIndex > -1) {
+									this.hformList.splice(this.editIndex, 1);
+									this.editIndex = -1
+
+									uni.showToast({
+										title: '淇敼瀹屾垚',
+										icon: 'none'
+									})
+								}
+								this.num = 1
+								this.hformList.unshift(this.hform)
+							}
+						}
+					});
+				}
+			},
+
+			over() {
+				this.$emit('hformList', this.hformList)
+			},
+		}
+	}
+</script>
+
+<!-- 鏍峰紡閮ㄥ垎淇濇寔涓嶅彉 -->
+<style lang="scss" scoped>
+	.content {
+		width: 100%;
+		height: 100%;
+		position: fixed;
+		z-index: 999;
+		top: 0;
+		left: 0;
+		background-color: rgba(0, 0, 0, 0.5);
+	}
+
+	.mains {
+		width: 88%;
+		height: 88%;
+		background-color: #f5f5f5;
+		margin: 12% auto;
+		border-radius: 14rpx;
+
+		.title {
+			width: 100%;
+			height: 6%;
+			background-color: #fff;
+			border-bottom: 1px solid #acacac;
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			border-radius: 14rpx 14rpx 0 0;
+		}
+
+		.foot {
+			padding: 0 40rpx;
+			height: 8%;
+			background-color: #fff;
+			border-top: 1px solid #eee;
+			display: flex;
+			align-items: center;
+			border-radius: 0 0 14rpx 14rpx;
+
+			button {
+				width: 180rpx;
+			}
+		}
+
+		.table {
+			width: 100%;
+			height: 86%;
+			overflow: hidden;
+			overflow-y: auto;
+
+			.table-line {
+				padding: 18rpx 10rpx 18rpx 20rpx;
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+
+				.line {
+					font-size: 30rpx;
+					color: #555;
+
+					text {
+						color: #999;
+						font-size: 27rpx;
+					}
+
+					.font {
+						color: #333;
+						line-height: 150%;
+					}
+				}
+			}
+
+			.table-detail {
+				font-size: 30rpx;
+				color: #555;
+				padding: 0 10rpx 24rpx 20rpx;
+
+				text {
+					color: #999;
+					font-size: 27rpx;
+				}
+
+				.detail {}
+
+				.btns {
+					text-align: right;
+					margin-top: 14rpx;
+
+					button {
+						width: 150rpx;
+						margin-right: 30rpx;
+					}
+				}
+			}
+		}
+
+		.form {
+			height: 82%;
+			padding: 4%;
+			overflow: hidden;
+			overflow-y: auto;
+
+			.form-item {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+				font-size: 30rpx;
+				padding: 10rpx 0;
+
+				.item-title {
+					width: 140rpx;
+
+					text {
+						color: red;
+						font-weight: bold;
+					}
+				}
+
+				.item-right {
+					width: 450rpx;
+					border-radius: 22rpx;
+					border: 1px solid #acacac;
+					background-color: #fff;
+				}
+
+				input {
+					width: 100%;
+					padding: 8rpx 20rpx;
+					font-size: 30rpx;
+				}
+
+				textarea {
+					width: 98%;
+					padding: 8rpx 20rpx;
+					font-size: 30rpx;
+				}
+			}
+		}
+	}
+
+	.btna {
+		background-color: #41a863;
+		color: #fff;
+	}
+
+	.btnb {
+		background-color: #3A78FF;
+		color: #fff;
+	}
+
+	.btnc {
+		background-color: #acacac;
+		color: #fff;
+	}
+
+	.btnd {
+		background-color: #d98d00;
+		color: #fff;
+	}
+
+	.btne {
+		background-color: #da0000;
+		color: #fff;
+	}
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/mujudianjianjiludan/plan.vue b/pages/MJGL/mujudianjianjiludan/plan.vue
new file mode 100644
index 0000000..ea70ba8
--- /dev/null
+++ b/pages/MJGL/mujudianjianjiludan/plan.vue
@@ -0,0 +1,351 @@
+<template>
+	<view class="content">
+		<view class="form">
+			<view class="form-item">
+				<view class="title">鍗曟嵁鍙�:</view>
+				<view class="right">
+					<input v-model="hform.HBillNo" placeholder="璇疯緭鍏ュ崟鎹彿" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鍒跺崟浜�:</view>
+				<view class="right">
+					<input v-model="hform.HCreateBy" placeholder="璇疯緭鍏ュ埗鍗曚汉" />
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">寮�濮嬫椂闂�:</view>
+				<view class="right">
+					<picker mode="date" :value="hform.BenginHCreateDate" @change="BenginHCreateDateChange">
+						<input name="BenginHCreateDate" disabled :value="hform.BenginHCreateDate" placeholder="璇烽�夋嫨" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">缁撴潫鏃堕棿:</view>
+				<view class="right">
+					<picker mode="date" :value="hform.EndHCreateDate" @change="EndHCreateDateChange">
+						<input name="EndHCreateDate" disabled :value="hform.EndHCreateDate" placeholder="璇烽�夋嫨" />
+					</picker>
+				</view>
+			</view>
+			
+			<view class="buttons">
+				<button class="op5" size="mini" type="default" @tap="clear">閲嶇疆</button>
+				<button class="op3" size="mini" type="default" @tap="search">鏌ヨ</button>
+				<button class="op4" size="mini" type="default" @tap="close">鍏抽棴</button>
+			</view>
+		</view>
+		
+		<view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+		
+		<view class="list" v-for="(item,index) in listData" :key="index">
+			<uni-card :title="item.浜у搧妯″叿" :extra="item.鍗曟嵁鍙�" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
+				<view class="card-detail">
+					<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.寮�濮嬫棩鏈�.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.缁撴潫鏃ユ湡">
+						<text>缁撴潫鏃ユ湡锛�</text>{{item.缁撴潫鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.淇濆吇鍛ㄦ湡">
+						<text>淇濆吇鍛ㄦ湡(鍗曚綅)锛�</text>{{item.淇濆吇鍛ㄦ湡}}({{item.鍛ㄦ湡鍗曚綅}})
+					</view>
+					<view class="detail" v-if="item.澶囨敞">
+						<text>澶囨敞锛�</text>{{item.澶囨敞}}
+					</view>
+				</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>{{item.鍒跺崟鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.瀹℃牳浜�">
+						<text>瀹℃牳浜猴細</text>{{item.瀹℃牳浜簘}
+					</view>
+					<view class="detail" v-if="item.瀹℃牳鏃ユ湡">
+						<text>瀹℃牳鏃ユ湡锛�</text>{{item.瀹℃牳鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.淇敼浜�">
+						<text>淇敼浜猴細</text>{{item.淇敼浜簘}
+					</view>
+					<view class="detail" v-if="item.淇敼鏃ユ湡">
+						<text>淇敼鏃ユ湡锛�</text>{{item.淇敼鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.鍏抽棴浜�">
+						<text>鍏抽棴浜猴細</text>{{item.鍏抽棴浜簘}
+					</view>
+					<view class="detail" v-if="item.鍏抽棴鏃ユ湡">
+						<text>鍏抽棴鏃ユ湡锛�</text>{{item.鍏抽棴鏃ユ湡.substr(0,10)}}
+					</view>
+				</view>
+				
+				<view class="more" v-if="showDetail == 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="choose(item)">
+						<uni-icons type="checkmarkempty" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>閫夊彇璇ユ暟鎹�
+					</view>
+				</view>
+				<view class="more" v-if="showDetail != 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="choose(item)">
+						<uni-icons type="checkmarkempty" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>閫夊彇璇ユ暟鎹�
+					</view>
+				</view>
+			</uni-card>
+		</view>
+		
+		<view class="over" v-if="listData.length == 0">鏆傛棤鏁版嵁</view>
+		<view class="over" v-if="listData.length != 0">宸插埌搴�</view>
+	</view>
+</template>
+
+<script>
+	import { getUserInfo } from "@/utils/auth.js";
+	export default {
+	    data() {
+	        return {
+				userInfo:getUserInfo(),
+				serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
+				hform:{
+					HBillNo:'',
+					HCreateBy:'',
+					BenginHCreateDate:'',
+					EndHCreateDate:'',
+				},
+				sWhere:'',
+				listData:[],
+				showDetail:-1,
+	        }
+	    },
+		created() {
+			this.getList()
+			console.log(this.userInfo,uni.getStorageSync('HUserName'))
+		},
+	    methods: {
+			getList(){
+				// console.log(this.sWhere)
+				uni.showLoading({
+					title:'鍔犺浇涓�...'
+				})
+				uni.request({
+				    url: this.serverUrl + '/Sc_MouldDotCheckPlanBill/GetMouldDotCheckPlanBillList',
+					data:{ 
+						sWhere: this.sWhere,
+						user: uni.getStorageSync('HUserName')
+					},
+				    success: (res) => {
+				        console.log(1,res);
+						if(res.data.count == 1){
+							this.listData = res.data.data
+							uni.hideLoading()
+						}else{
+							uni.hideLoading()
+							uni.showToast({
+								title:res.data.Message,
+								icon:'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.hideLoading()
+						uni.showToast({
+							title:'鎺ュ彛璇锋眰澶辫触',
+							icon:'none'
+						})
+					},
+				});
+			},
+			//閫夋嫨鍗曟嵁鏃ユ湡
+			BenginHCreateDateChange(e){
+				console.log(e.detail.value)
+				this.hform.BenginHCreateDate = e.detail.value
+			},
+			//閫夋嫨鍗曟嵁鏃ユ湡
+			EndHCreateDateChange(e){
+				console.log(e.detail.value)
+				this.hform.EndHCreateDate = e.detail.value
+			},
+			search(){
+				this.sWhere = ''
+				
+				console.log(this.hform)
+				if (this.hform.HBillNo) {
+				    this.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+				}
+				if (this.hform.HCreateBy) {
+				    this.sWhere += " and 鍒跺崟浜� like '%" + this.hform.HCreateBy + "%'";
+				}
+				if (this.hform.BenginHCreateDate) {
+				    this.sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.hform.BenginHCreateDate + "'";
+				}
+				if (this.hform.EndHCreateDate) {
+				    this.sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.hform.EndHCreateDate + "'";
+				}
+				
+				this.getList()
+			},
+			clear(){
+				this.sWhere = ''
+				this.showDetail = -1,
+				this.hform = {
+					HBillNo:'',
+					HCreateBy:'',
+					BenginHCreateDate:'',
+					EndHCreateDate:'',
+				}
+				this.getList()
+			},
+			choose(item){
+				console.log(item)
+				var data = {
+					HPlanName:item.鍗曟嵁鍙�,
+					HPlanNo:item.hmainid,
+					HInterID:item.hmainid,
+				}
+				this.$emit('planData', data)
+			},
+			close(){
+				this.$emit('close',true)
+			},
+	    }
+	}
+</script>
+
+<style lang="scss" scoped>
+	.content{
+		width: 100%;
+		height: 100%;
+		background-color: #fff;
+		overflow: hidden;
+		overflow-y: auto;
+		position: fixed;
+		top: 0;
+		left: 0;
+		z-index: 99;
+	}
+	.form{
+		width: 640rpx;
+		margin: 20rpx auto;
+	}
+    .form-item{
+		display: flex;
+		align-items: center;
+		font-size: 28rpx;
+		padding: 6rpx 0;
+		.title{
+			width: 180rpx;
+			text{
+				color: red;
+				font-weight: bold;
+			}
+		}
+		.right{
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #acacac;
+		}
+		.righton{
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #e4e4e4;
+			background-color: #e4e4e4;
+		}
+		input{
+			width: 100%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+	}
+	.buttons{
+		width: 100%;
+		display: flex;
+		justify-content: center;
+		margin-top: 20rpx;
+		button{
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+			color: #fff;
+		}
+	}
+	
+	.list{
+		width: 100%;
+		.card-detail{
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+			.detail{
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+				text{
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+		.more{
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+			.part{
+				width: 50%;
+				text-align: center;
+			}
+		}
+		.op{
+			display: flex;
+			justify-content: space-around;
+			margin-top: 20rpx;
+			button{
+				padding: 0;
+				width: 130rpx;
+				font-size: 25rpx;
+			}
+		}
+	}
+
+	.op1{
+		border: 1px solid #41a863;
+		background-color: #41a863;
+	}
+	.op2{
+		border: 1px solid #d98d00;
+		background-color: #d98d00;
+	}
+	.op3{
+		border: 1px solid #3a78ff;
+		background-color: #3a78ff;
+	}
+	.op4{
+		border: 1px solid #da0000;
+		background-color: #da0000;
+	}
+	.op5{
+		border: 1px solid #888;
+		background-color: #888;
+	}
+</style>
diff --git a/pages/MJGL/mujudianjianjiludan/table.vue b/pages/MJGL/mujudianjianjiludan/table.vue
new file mode 100644
index 0000000..fd275e7
--- /dev/null
+++ b/pages/MJGL/mujudianjianjiludan/table.vue
@@ -0,0 +1,560 @@
+<template>
+	<view>
+		<view class="page-header">
+			<view class="search-item">
+				<view class="left">鏃ユ湡闂撮殧</view>
+				<view class="right">
+					<picker mode="selector" :value="curDateGap" :range="dateRangePicker"
+						@change="onDateRangePickerChangeHandler">
+						<input disabled v-model="curDateGap" placeholder="璇烽�夋嫨鏃ユ湡闂撮殧" />
+						<view class="picker-overlay"></view>
+					</picker>
+
+				</view>
+			</view>
+			<view class="search-item">
+				<view class="left">寮�濮嬫棩鏈�</view>
+				<view class="right">
+					<uni-datetime-picker :clear-icon="false" type="date" v-model="startDate"
+						:disabled="!enableCustomDateRange">
+						<view class="datetime-picker-inner"
+							:class="enableCustomDateRange?'font__enable':'font__disable'">
+							<text>{{ startDate }}</text>
+						</view>
+					</uni-datetime-picker>
+				</view>
+			</view>
+			<view class="search-item">
+				<view class="left">缁撴潫鏃ユ湡</view>
+				<view class="right">
+					<uni-datetime-picker :clear-icon="false" type="date" v-model="endDate"
+						:disabled="!enableCustomDateRange">
+						<view class="datetime-picker-inner"
+							:class="enableCustomDateRange?'font__enable':'font__disable'">{{ endDate }}</view>
+					</uni-datetime-picker>
+				</view>
+			</view>
+			<view class="search-item">
+				<view class="left">鍗曟嵁鍙�</view>
+				<view class="right">
+					<input type="text" auto-focus v-model="HBillNo" />
+				</view>
+			</view>
+
+			<view class="button-groups">
+				<button type="default" size="mini" class="btn-b" @tap.stop="onAddClickHandler">鏂板</button>
+				<button type="default" size="mini" class="btn-c" @tap.stop="onSearchClickHandler">鏌ヨ</button>
+				<button type="default" size="mini" class="btn-a" @tap.stop="onResetClickHandler">閲嶇疆</button>
+			</view>
+		</view>
+		<view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+		<scroll-view id="pageContent" scroll-y class="page-content" :style="{height: pageContentHeight + 'px'}">
+			<view v-for="(item,index) in listData" :key="index">
+				<uni-card :title="item.浜у搧妯″叿" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+					@tap="showDetail = showDetail==index?-1:index">
+					<view class="card-detail">
+						<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.鐐规寮�濮嬫棩鏈�.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.鐐规缁撴潫鏃ユ湡">
+							<text>鐐规缁撴潫鏃ユ湡锛�</text>{{item.鐐规缁撴潫鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.鏈�缁堢粨璁�">
+							<text>鏈�缁堢粨璁猴細</text>{{item.鏈�缁堢粨璁簘}
+						</view>
+					</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>{{item.鍒跺崟鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.瀹℃牳浜�">
+							<text>瀹℃牳浜猴細</text>{{item.瀹℃牳浜簘}
+						</view>
+						<view class="detail" v-if="item.瀹℃牳鏃ユ湡">
+							<text>瀹℃牳鏃ユ湡锛�</text>{{item.瀹℃牳鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.淇敼浜�">
+							<text>淇敼浜猴細</text>{{item.淇敼浜簘}
+						</view>
+						<view class="detail" v-if="item.淇敼鏃ユ湡">
+							<text>淇敼鏃ユ湡锛�</text>{{item.淇敼鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.鍏抽棴浜�">
+							<text>鍏抽棴浜猴細</text>{{item.鍏抽棴浜簘}
+						</view>
+						<view class="detail" v-if="item.鍏抽棴鏃ユ湡">
+							<text>鍏抽棴鏃ユ湡锛�</text>{{item.鍏抽棴鏃ユ湡.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.浣滃簾浜�">
+							<text>浣滃簾浜猴細</text>{{item.浣滃簾浜簘}
+						</view>
+						<view class="detail" v-if="item.浣滃簾鏃ユ湡">
+							<text>浣滃簾鏃ユ湡锛�</text>{{item.浣滃簾鏃ユ湡.substr(0,10)}}
+						</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="op1" size="mini" plain @tap.stop="toSon(item)">瀛愯〃淇℃伅</button>
+						<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 class="over" v-if="listData.length == 0">鏆傛棤鏁版嵁</view>
+		</scroll-view>
+		<!-- 鍒嗛〉鍣� -->
+		<view class="page-footer">
+			<uni-pagination id="pagination" title="鏍囬鏂囧瓧" v-model="pageMeta.curPage" :pageSize="pageMeta.size"
+				:total="pageMeta.total" @change="onPageChangeHandler"></uni-pagination>
+		</view>
+	</view>
+</template>
+
+<script>
+	import dayjs from 'dayjs'
+	import {
+		CommonUtils
+	} from '@/utils/common.js'
+	import {
+		getUserInfo
+	} from '../../../utils/auth'
+	export default {
+		data() {
+			return {
+				// 璁$畻鍗$墖鍒楄〃楂樺害
+				pagination_top: 0,
+				pageContent_top: 0,
+				// 鍒嗛〉鎺у埗
+				pageMeta: {
+					curPage: 1,
+					size: 50,
+					total: 0,
+				},
+				// 婊氬姩鎺у埗
+				scrollTop: 0,
+				old: {
+					scrollTop: 0
+				},
+
+				dateRangePicker: ["浠绘剰闂撮殧", "浠婂ぉ", "杩戜袱澶�", "杩戜笁澶�", "杩戝洓澶�", "杩戜簲澶�", "杩戝叚澶�", "杩戜竷澶�", "杩�30澶�"],
+				curDateGap: "杩戜竷澶�",
+				enableCustomDateRange: false,
+				startDate: dayjs(new Date()).subtract(7, 'day').format('YYYY-MM-DD'),
+				endDate: dayjs(new Date()).format('YYYY-MM-DD'),
+				HBillNo: '',
+
+				listData: [],
+				showDetail: -1,
+				operations: -1,
+			}
+		},
+		computed: {
+			pageContentHeight: {
+				get() {
+					return (this.pagination_top - this.pageContent_top)
+				}
+			},
+		},
+		onLoad() {
+			this.onSearchClickHandler()
+		},
+		onPullDownRefresh() {
+			this.onSearchClickHandler()
+		},
+		async onReady() {
+			// #ifndef MP-WEIXIN
+			let query = uni.createSelectorQuery().in(this)
+			query.select("#pagination")
+				.boundingClientRect((data) => {
+					if (data) {
+						this.pagination_top = data.top
+					} else {
+						console.log("鏈壘鍒�#pagination鑺傜偣");
+					}
+				})
+				.exec();
+			query.select("#pageContent")
+				.boundingClientRect((data) => {
+					if (data) {
+						this.pageContent_top = data.top
+					} else {
+						console.log("鏈壘鍒�#pageContent鑺傜偣");
+					}
+				})
+				.exec();
+			// #endif
+
+		},
+		methods: {
+			goTop: function(e) {
+				// 瑙e喅view灞備笉鍚屾鐨勯棶棰�
+				this.scrollTop = this.old.scrollTop
+				this.$nextTick(function() {
+					this.scrollTop = 0
+				});
+			},
+			onDateRangePickerChangeHandler({
+				detail
+			}) {
+				this.enableCustomDateRange = false
+				this.curDateGap = this.dateRangePicker[detail.value]
+				let date = new Date()
+				switch (this.curDateGap) {
+					case "浠婂ぉ":
+						this.startDate = dayjs(date).format("YYYY-MM-DD")
+						break;
+					case "杩戜竴澶�":
+						this.startDate = dayjs(date).subtract(1, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜袱澶�":
+						this.startDate = dayjs(date).subtract(2, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜笁澶�":
+						this.startDate = dayjs(date).subtract(3, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戝洓澶�":
+						this.startDate = dayjs(date).subtract(4, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜簲澶�":
+						this.startDate = dayjs(date).subtract(5, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戝叚澶�":
+						this.startDate = dayjs(date).subtract(6, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩戜竷澶�":
+						this.startDate = dayjs(date).subtract(7, 'day').format("YYYY-MM-DD")
+						break;
+					case "杩�30澶�":
+						this.startDate = dayjs(date).subtract(30, 'day').format("YYYY-MM-DD")
+						break;
+				}
+				if (this.curDateGap == '浠绘剰闂撮殧') {
+					this.enableCustomDateRange = true
+				}
+			},
+			onSearchClickHandler() {
+				let sWhere = ""
+				if (this.startDate) {
+					sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) >= '" + this.startDate + "'";
+				}
+				if (this.endDate) {
+					sWhere += " and CONVERT(varchar(100),鏃ユ湡, 23) <= '" + this.endDate + "'";
+				}
+				if (this.HBillNo) {
+					sWhere += " and 鍗曟嵁鍙� like '%" + this.HBillNo + "%'";
+				}
+				this.get_DisplayPage(sWhere);
+			},
+			clear() {
+				this.curDateGap = "杩戜竷澶�"
+				this.enableCustomDateRange = false
+				this.startDate = dayjs(new Date()).subtract(7, 'day').format('YYYY-MM-DD')
+				this.endDate = dayjs(new Date()).format('YYYY-MM-DD')
+				this.HBillNo = ''
+			},
+			async onResetClickHandler() {
+				this.clear()
+				await this.$nextTick()
+				this.onSearchClickHandler()
+			},
+			get_DisplayPage(sWhere) {
+				CommonUtils.doRequest2({
+					url: '/Sc_MouldDotCheckBill/GetMouldDotCheckBillListPage',
+					data: {
+						"sWhere": sWhere,
+						"user": getUserInfo()["Czymc"],
+						"page": this.pageMeta.curPage,
+						"size": this.pageMeta.size
+					},
+					resFunction: (res) => {
+						let {
+							data,
+							Message,
+							count
+						} = res.data
+						console.log('res.data: ', res.data);
+						this.listData = data;
+						this.pageMeta.total = count
+						uni.stopPullDownRefresh()
+					}
+				})
+			},
+			onPageChangeHandler() {
+				this.onSearchClickHandler()
+				this.goTop()
+			},
+			// 鏂板妯″叿鐐规璁板綍鍗�
+			onAddClickHandler() {
+				uni.navigateTo({
+					url: "/pages/MJGL/mujudianjianjiludan/form"
+				})
+			},
+			//缂栬緫鐐规璁板綍鍗�
+			edit(item) {
+				console.log(item)
+				uni.navigateTo({
+					url: '/pages/MJGL/mujudianjianjiludan/form?hmainid=' + item.hmainid
+				})
+			},
+			//鍒犻櫎鐐规璁板綍鍗�
+			del(item) {
+				uni.showModal({
+					title: '鍒犻櫎纭',
+					content: '纭瑕佸垹闄ゅ悧锛屽垹闄ゅ悗涓嶈兘鎭㈠',
+					success: (res) => {
+						if (res.confirm) {
+							console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+							CommonUtils.doRequest2({
+								url: '/Sc_MouldDotCheckBill/DeltetSc_MouldDotCheckBill',
+								data: {
+									HInterID: item['hmainid'],
+									user: getUserInfo()['Czymc']
+								},
+								resFunction: (res) => {
+									let {
+										data,
+										count,
+										Message
+									} = res.data
+									if (count == 1) {
+										uni.showToast({
+											icon: count === 1 ? 'success' : 'error',
+											title: Message,
+											duration: 2000
+										});
+
+										// 绛夊緟鎻愮ず鏄剧ず瀹屾垚鍐嶅埛鏂�
+										setTimeout(() => {
+											this.onSearchClickHandler();
+										}, 2000);
+									} else {
+										uni.showToast({
+											icon: 'none',
+											title: Message
+										})
+									}
+								}
+							})
+						} else if (res.cancel) {
+							console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+						}
+					}
+				});
+			},
+			//瀛愯〃鏌ョ湅
+			toSon(item) {
+				uni.navigateTo({
+					url: '/pages/MJGL/mujudianjianjiludan/table_son?HInterID=' + item.hmainid + '&浜у搧妯″叿浠g爜=' + item
+						.浜у搧妯″叿浠g爜 + '&浜у搧妯″叿=' + item.浜у搧妯″叿,
+				});
+			}
+		},
+	}
+</script>
+
+<style lang="scss">
+	.page-header {
+		display: flex;
+		box-sizing: border-box;
+		padding: 20rpx;
+		flex-direction: column;
+		gap: 10rpx;
+		font-size: 32rpx;
+
+		.search-item {
+			display: flex;
+			flex-direction: row;
+			gap: 10rpx;
+			justify-content: center;
+			align-items: center;
+
+			.left {
+				width: 4em;
+			}
+
+			.right {
+				flex: 1;
+				position: relative;
+				border-radius: 22rpx;
+				border: 1px solid #acacac;
+				display: flex;
+				padding: 4rpx 10rpx;
+
+				picker {
+					width: 100%;
+				}
+			}
+		}
+
+		input {
+			width: inherit;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+
+		.datetime-picker-inner {
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+			display: flex;
+			align-items: center;
+		}
+
+		.font__enable {
+			color: #000;
+		}
+
+		.font__disable {
+			color: #cccccc;
+		}
+	}
+
+	.button-groups {
+		box-sizing: border-box;
+		padding: 10rpx 0 0 0;
+		display: flex;
+		flex-direction: row;
+		gap: 10rpx;
+		justify-content: space-between;
+
+		button {
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+		}
+
+		.btn-a {
+			background-color: #acacac;
+			color: #fff;
+		}
+
+		.btn-b {
+			background-color: #41a863;
+			color: #fff;
+		}
+
+		.btn-c {
+			background-color: #3a78ff;
+			color: #fff;
+		}
+	}
+
+	.page-content {
+		// height: 40vh;
+		box-sizing: border-box;
+		padding: 10rpx 0;
+
+		.card-detail {
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+
+			.detail {
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+
+				text {
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+
+		.more {
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+
+			.part {
+				width: 50%;
+				text-align: center;
+			}
+		}
+
+		.op {
+			display: flex;
+			justify-content: space-around;
+			margin-top: 20rpx;
+
+			button {
+				padding: 0;
+				width: 150rpx;
+				font-size: 25rpx;
+			}
+
+			.op1 {
+				border: 1px solid #41a863;
+				color: #41a863;
+			}
+
+			.op2 {
+				border: 1px solid #d98d00;
+				color: #d98d00;
+			}
+
+			.op3 {
+				border: 1px solid #3a78ff;
+				color: #3a78ff;
+			}
+
+			.op4 {
+				border: 1px solid #da0000;
+				color: #da0000;
+			}
+
+			.op5 {
+				border: 1px solid #888;
+				color: #888;
+			}
+		}
+	}
+
+	.page-footer {
+		position: fixed;
+		bottom: 0;
+		width: 100%;
+		box-sizing: border-box;
+		padding: 32rpx 40rpx;
+	}
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/mujudianjianjiludan/table_son.vue b/pages/MJGL/mujudianjianjiludan/table_son.vue
new file mode 100644
index 0000000..cd61e2c
--- /dev/null
+++ b/pages/MJGL/mujudianjianjiludan/table_son.vue
@@ -0,0 +1,221 @@
+<template>
+	<view class="content">
+		<view class="infoArea">
+			<view class="name">{{infoData.浜у搧妯″叿}}</view>
+			<view class="dm">浠g爜锛歿{infoData.浜у搧妯″叿浠g爜}}</view>
+			
+			<view class="choose">
+				<view class="tab" :class="{focus: number == 1}" @tap="number = 1">鐐规椤逛俊鎭�</view>
+			</view>
+		</view>
+		
+		<view style="width: 100%;height: 200rpx;"></view>
+		<view v-if="number == 1">
+			<view class="list" v-for="(item,index) in listData1" :key="index">
+				<uni-card :title="item.HDotCheckItem" :extra="item.HDotCheckItemNumber" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
+					<view class="card-detail">
+						<view class="detail" v-if="item.HDotCheckItemMethodName">
+							<text>鐐规鏂规硶锛�</text>{{item.HDotCheckItemMethodName}}
+						</view>
+						<view class="detail" v-if="item.HDotCheckPart">
+							<text>鐐规閮ㄤ綅锛�</text>{{item.HDotCheckPart}}
+						</view>
+						<view class="detail" v-if="item.HManagerNumber">
+							<text>璐熻矗浜轰唬鐮侊細</text>{{item.HManagerNumber}}
+						</view>
+						<view class="detail" v-if="item.HManagerName">
+							<text>璐熻矗浜猴細</text>{{item.HManagerName}}
+						</view>
+						<view class="detail" v-if="item.HDotCheckResult">
+							<text>鐐规缁撴灉锛�</text>{{item.HDotCheckResult}}
+						</view>
+						<view class="detail" v-if="item.HRemark">
+							<text>澶囨敞锛�</text>{{item.HRemark}}
+						</view>
+					</view>
+					<view class="card-detail" v-if="showDetail == index">
+						<view class="detail">
+							<text>鍏蜂綋瑕佹眰锛�</text>{{item.HClaim?item.HClaim:'鏆傛棤鍏蜂綋瑕佹眰'}}
+						</view>
+					</view>
+					
+					<view class="morea" v-if="showDetail == index" >
+						<uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+					</view>
+					<view class="morea" v-if="showDetail != index">
+						<uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏌ョ湅鍏蜂綋瑕佹眰
+					</view>
+				</uni-card>
+			</view>
+			
+			<view class="over" v-if="listData1.length == 0 ">鏆傛棤鏁版嵁</view>
+			<view class="over" v-if="listData1.length != 0 ">宸插埌搴�</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import { getUserInfo } from "@/utils/auth.js";
+	export default {
+	    data() {
+	        return {
+				userInfo:getUserInfo(),
+				serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
+				infoData:{},
+				number:1,
+				listData1:[],
+				listData2:[],
+				showDetail:-1,
+	        }
+	    },
+		onLoad(e) {
+			console.log(e)
+			uni.setNavigationBarTitle({
+				title: e.浜у搧妯″叿
+			});
+			this.infoData = e
+			this.getList(e.HInterID)
+		},
+	    methods: {
+			getList(HInterID){
+				uni.showLoading({
+					title:'鍔犺浇涓�...'
+				})
+				uni.request({
+				    url: this.serverUrl + '/Sc_MouldDotCheckBill/Sc_MouldDotCheckBillList_sub',
+					data: { "HInterID": HInterID },
+				    success: (res) => {
+						if(res.data.count == 1){
+							this.listData1 = res.data.list[0]
+							console.log(1,this.listData1);
+							uni.hideLoading()
+						}else{
+							uni.hideLoading()
+							uni.showToast({
+								title:res.data.Message,
+								icon:'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.hideLoading()
+						uni.showToast({
+							title:'鎺ュ彛璇锋眰澶辫触',
+							icon:'none'
+						})
+					},
+				});
+			},
+	    }
+	}
+</script>
+
+<style lang="scss" scoped>
+	.infoArea{
+		width: 100%;
+		padding-top: 20rpx;
+		background-color: #f0f0f0;
+		position: fixed;
+		top: 0;
+		left: 0;
+		z-index: 99;
+		.name{
+			text-align: center;
+			font-size: 32rpx;
+			font-weight: 600;
+			color: #333;
+			line-height: 150%;
+		}
+		.dm{
+			text-align: center;
+			font-size: 27rpx;
+			font-weight: 500;
+			color: #333;
+			margin-top: 10px;
+		}
+		.other{
+			display: flex;
+			flex-wrap: wrap;
+			width: 90%;
+			margin: 0 auto;
+			margin-top: 12rpx;
+			font-size: 27rpx;
+			color: #666;
+			text{
+				font-size: 28rpx;
+				color: #333;
+				margin-left: 10rpx;
+			}
+			.half{
+				width: 50%;
+			}
+			.all{
+				width: 100%;
+			}
+		}
+		.choose{
+			height: 70rpx;
+			margin-top: 20rpx;
+			padding: 0 30rpx;
+			background-color: #fff;
+			line-height: 86rpx;
+			border-radius: 40rpx 40rpx 0 0;
+			border-bottom: 2px solid #eee;
+			display: flex;
+			.tab{
+				margin: 0 20rpx;
+				text-align: center;
+				font-size: 28rpx;
+				color: #666;
+			}
+			.focus{
+				font-size: 30rpx;
+				color: #333;
+				font-weight: 600;
+				border-bottom: 2px solid #3a78ff;
+			}
+		}
+	}
+	
+	.list{
+		width: 100%;
+		.card-detail{
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+			.detail{
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+				text{
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+		.more{
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+			.part{
+				width: 50%;
+				text-align: center;
+			}
+		}
+		
+		.morea{
+			color: #888;
+			font-size: 24rpx;
+			padding-top: 10rpx;
+			text-align: right;
+		}
+	}
+
+</style>
diff --git a/pages/ZLGL/shoujianjianyan/form.vue b/pages/ZLGL/shoujianjianyan/form.vue
new file mode 100644
index 0000000..69b40bb
--- /dev/null
+++ b/pages/ZLGL/shoujianjianyan/form.vue
@@ -0,0 +1,1415 @@
+<template>
+    <view>
+        <!-- 涓昏〃鍖哄煙 -->
+        <view class="bill-main-area">
+            <!-- 涓昏〃椤电 -->
+            <view class="bill-main-tabs">
+                <view :class="mainTabSelected == 1 ? 'selected':''" @tap="mainTabSelected = 1">鍩烘湰淇℃伅</view>
+                <view :class="mainTabSelected == 2 ? 'selected':''" @tap="mainTabSelected = 2">鍒跺崟淇℃伅</view>
+            </view>
+            <!-- 涓昏〃鍐呭 -->
+            <view class="bill-main-contents">
+                <!-- 鍩烘湰淇℃伅 -->
+                <view class="bill-main-content" v-if="mainTabSelected == 1">
+                    <view class="form-item">
+                        <view class="left">鍗曟嵁鍙�</view>
+                        <view class="right disabled">
+                            <input type="text" :value="hform.HBillNo" disabled />
+                        </view>
+                    </view>
+
+                    <view class="form-item">
+                        <view class="left">鏃ユ湡</view>
+                        <view class="right">
+                            <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HDate">
+                                <view>{{hform.HDate}}</view>
+                            </uni-datetime-picker>
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鐢熶骇璧勬簮</view>
+                        <view class="right">
+                            <uni-combox :candidates="GySourceNameList" placeholder="璇烽�夋嫨鐢熶骇璧勬簮" v-model="hform.HSourceName"
+                                @update:modelValue="HSourceChange"></uni-combox>
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鐢熶骇鐝</view>
+                        <view class="right">
+                            <uni-combox :candidates="GyWorkShiftNameList" placeholder="璇烽�夋嫨鐢熶骇鐝"
+                                v-model="hform.HShiftsName" @update:modelValue="HWorkShiftChange"></uni-combox>
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">浠诲姟鍗曞彿</view>
+                        <view class="right disabled">
+                            <input type="text" :value="hform.HICMOBillNo" disabled />
+                        </view>
+                        <view class="icon-wrapper-big"><uni-icons type="search" size="20"
+                                @click="showSelectorModule(hform, 5)"></uni-icons></view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">浠诲姟鍗曟暟閲�</view>
+                        <view class="right">
+                            <input type="number" v-model="hform.HICMOQty" />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">娴佽浆鍗″彿</view>
+                        <view class="right disabled">
+                            <input type="text" :value="hform.HProcExchBillNo" disabled />
+                        </view>
+                        <view class="icon-wrapper-big"><uni-icons type="search" size="20"
+                                @click="showSelectorModule(hform, 6)"></uni-icons></view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">娴佽浆鍗℃暟閲�</view>
+                        <view class="right">
+                            <input type="number" v-model="hform.HProcExchQty" />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">浜у搧浠g爜</view>
+                        <view class="right disabled">
+                            <input type="text" disabled :value="hform.HMaterNumber" />
+                        </view>
+                        <view class="icon-wrapper-big">
+                            <uni-icons type="search" size="20" @click="showSelectorModule(hform, 4)"></uni-icons>
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">浜у搧鍚嶇О</view>
+                        <view class="right disabled">
+                            <input type="text" disabled :value="hform.HMaterName" />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">妫�楠屽憳</view>
+                        <view class="right">
+                            <uni-combox :candidates="GyFirstCheckEmpNameList" placeholder="璇烽�夋嫨妫�楠屽憳"
+                                :v-model="hform.HFirstCheckEmpName"
+                                @update:modelValue="HFirstCheckEmpChange"></uni-combox>
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">妫�楠屾柟妗�</view>
+                        <view class="right disabled">
+                            <input type="text" disabled :value="this.hform.HQCSchemeName" />
+                        </view>
+                        <view class="icon-wrapper-big"><uni-icons type="search" size="20"
+                                @click="showSelectorModule(hform, 7)"></uni-icons></view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鎵瑰彿</view>
+                        <view class="right">
+                            <input type="text" value="" />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鍒ゆ柇缁撹</view>
+                        <view class="right none-border">
+                            <radio-group @changer="checkResultChange">
+                                <label>
+                                    <radio value="0" :checked="judgeConclusion" /><text></text>
+                                    鍚堟牸
+                                </label>
+                                <view style="width: 20rpx;display: inline-block;"></view>
+                                <label>
+                                    <radio value="1" :checked="!judgeConclusion" /><text></text>
+                                    涓嶅悎鏍�
+                                </label>
+                            </radio-group>
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">宸ュ簭</view>
+                        <view class="right disabled">
+                            <input type="text" disabled :value="hform.HProcName" />
+                        </view>
+                        <view class="icon-wrapper-big"><uni-icons type="search" size="20"
+                                @click="showSelectorModule(hform, 8)"></uni-icons></view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">澶囨敞</view>
+                        <view class="right">
+                            <input type="text" value="" />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">寮傚父涓存椂澶勭悊鏂规</view>
+                        <view class="right">
+                            <input type="text" value="" />
+                        </view>
+                    </view>
+                </view>
+                <!-- 鍒跺崟淇℃伅 -->
+                <view class="bill-main-content" v-if="mainTabSelected == 2">
+                    <view class="form-item">
+                        <view class="left">鍒跺崟浜�</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鍒跺崟鏃ユ湡</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">瀹℃牳浜�</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">瀹℃牳鏃ユ湡</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鍏抽棴浜�</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">鍏抽棴鏃ユ湡</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">淇敼浜�</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">淇敼鏃ユ湡</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">浣滃簾浜�</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                    <view class="form-item">
+                        <view class="left">浣滃簾鏃ユ湡</view>
+                        <view class="right disabled">
+                            <input type="text" value="" disabled />
+                        </view>
+                    </view>
+                </view>
+            </view>
+        </view>
+        <!-- 瀛愯〃鍖哄煙 -->
+        <view class="bill-sub-area">
+            <!-- 瀛愯〃椤电 -->
+            <view class="bill-sub-tabs">
+                <view v-for="subTab in subTabs" :key="subTab.id" :class="subTab.id == subTabSelected ? 'selected':''"
+                    @tap="subTabSelected = subTab.id">{{subTab.name}}</view>
+            </view>
+            <!-- 瀛愯〃鍐呭 -->
+            <view class="bill-main-contents">
+                <!-- 妫�楠岄」鐩� 鍛堢幇 -->
+                <view v-if="subTabSelected == 1">
+                    <view class="buttons" @tap="addCheckItem">
+                        <uni-icons type="plus" style="margin-right: 10rpx;" size="22"></uni-icons>鏂板
+                    </view>
+                    <view class="over" v-if="!checkItems || getObjLength(checkItems) == 0">鏆傛棤鏁版嵁</view>
+                    <view class="list" v-else>
+                        <uni-card v-for="checkItem in checkItems" :key="checkItem.num">
+                            <view class="card-detail">
+                                <view class="detail">
+                                    <text>搴忓彿锛�</text>{{checkItem.num}}
+                                </view>
+                                <view class="detail editable">
+                                    <view style="flex-shrink: 0;"><text>妫�楠岄」鐩細</text></view>
+                                    <input type="text" :value="checkItem.HQCCheckItemName" disabled="" />
+                                    <view class="icon-wrapper"><uni-icons type="search" size="16"
+                                            @click="showSelectorModule(checkItem, 2)"></uni-icons></view>
+                                </view>
+                                <view class="detail editable">
+                                    <view style="flex-shrink: 0;"><text>妫�楠屼华鍣細</text></view>
+                                    <input type="text" :value="checkItem.HInspectInstruMentName" disabled="" />
+                                    <view class="icon-wrapper"><uni-icons type="search" size="16"
+                                            @click="showSelectorModule(checkItem, 3)"></uni-icons></view>
+                                </view>
+                                <view class="detail editable">
+                                    <view><text>缁撹锛�</text></view>
+                                    <view style="width: 4em; ">
+                                        {{ checkItem.HResult == 1?"鍚堟牸":"涓嶅悎鏍�" }}
+                                    </view>
+                                    <view>
+                                        <switch style="width: 2em; transform:scale(0.7);"
+                                            :checked="checkItem.HResult == 1"
+                                            @change="HResultChange(checkItem.num, $event)" />
+                                    </view>
+                                </view>
+                                <view class="detail editable" style="position: relative;">
+                                    <view style="flex-shrink: 0;"><text>鍒嗘瀽鏂规硶锛�</text></view>
+                                    <picker :range="arrayAnalysisMethod" range-key="name"
+                                        @change="HAnalysisMethodChange(checkItem.num, $event)">
+                                        <input disabled :value="getAnalysisMethodDisplay(checkItem.HAnalysisMethod)"
+                                            placeholder="璇烽�夋嫨" />
+                                        <view class="picker-overlay"></view>
+                                    </picker>
+                                </view>
+                                <view class="detail editable">
+                                    <view style="flex-shrink: 0;"><text>閲嶇偣妫�鏌ワ細</text></view>
+                                    <view>
+                                        <switch type="checkbox" style="transform:scale(0.7);"
+                                            :checked="checkItem.HKeyInspect"
+                                            @change="HKeyInspectChange(checkItem, $event)" />
+                                    </view>
+                                </view>
+                                <view class="detail" v-if="checkItem.HQCStd">
+                                    <text>妫�楠屾爣鍑嗭細</text>{{checkItem.HQCStd}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HUnit">
+                                    <text>鍗曚綅锛�</text>{{checkItem.HUnit}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HQCStd">
+                                    <text>妫�楠屽�硷細</text>{{checkItem.HQCStd}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HQCNote">
+                                    <text>妫�楠岃褰曪細</text>{{checkItem.HQCNote}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HTargetVal">
+                                    <text>鐩爣鍊硷細</text>{{checkItem.HTargetVal}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HUpLimit">
+                                    <text>涓婇檺鍊硷細</text>{{checkItem.HUpLimit}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HDownLimit">
+                                    <text>涓嬮檺鍊硷細</text>{{checkItem.HDownLimit}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HMax">
+                                    <text>鏈�澶у�硷細</text>{{checkItem.HMax}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HMin">
+                                    <text>鏈�灏忓�硷細</text>{{checkItem.HMin}}
+                                </view>
+                                <view class="detail" v-if="checkItem.HAvg">
+                                    <text>骞冲潎鍊硷細</text>{{checkItem.HAvg}}
+                                </view>
+                            </view>
+                            <view style="height: 20rpx;"></view>
+                            <view class="more">
+                                <view class="part" style="color: #da0000;" @tap.stop="removeCheckItem(checkItem)">
+                                    <uni-icons type="trash" style="color: #da0000;margin-right: 10rpx;"
+                                        size="18"></uni-icons>鍒犻櫎
+                                </view>
+                            </view>
+                        </uni-card>
+                    </view>
+                </view>
+                <!-- 鎶芥牱妫�楠� 鍛堢幇 -->
+                <view v-if="subTabSelected == 2">
+                    <view class="over" v-if="!checkItems || getObjLength(checkItems) == 0">鏆傛棤鏁版嵁</view>
+                    <view class="list" v-else>
+                        <uni-card v-for="SamplingItem in checkItems" :key="SamplingItem.num">
+                            <view class="card-detail">
+                                <view class="detail">
+                                    <text>搴忓彿锛�</text>{{SamplingItem.num}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>妫�楠岄」鐩細</text>{{SamplingItem.HQCCheckItemName}}
+                                </view>
+                                <view style="width: 100%; height: 1px; border-bottom: 1px solid #e3e3e3;"></view>
+                                <view class="detail editable" style="width: 100%;">
+                                    <view style="flex-shrink: 0;"><text>鎶芥牱鏂规锛�</text></view>
+                                    <input type="text" :value="SamplingItem.HSampleSchemeName" disabled />
+                                    <view class="icon-wrapper"><uni-icons type="search" size="16"
+                                            @click="showSelectorModule(SamplingItem, 1)"></uni-icons></view>
+                                </view>
+                                <view class="detail editable">
+                                    <text>鎶芥牱绫诲瀷锛�</text>{{SamplingItem.HSamplingType}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>妫�楠屾按骞筹細</text>{{SamplingItem.HInspectionLevel}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>涓ユ牸搴︼細</text>{{SamplingItem.HStrictness}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>AQL锛�</text>{{SamplingItem.HAQL}}
+                                </view>
+                                <view style="width: 100%; height: 1px; border-bottom: 1px solid #e3e3e3;"></view>
+                                <view class="detail editable">
+                                    <text>鏍锋湰閲忥細</text>{{SamplingItem.HSampleQty}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>鍏佽鏁帮細</text>{{SamplingItem.HAcceptQty}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>鎷掔粷鏁帮細</text>{{SamplingItem.HRejectQty}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>鏍锋湰涓嶅悎鏍兼暟锛�</text>{{SamplingItem.HSampleUnRightQty}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>鏍锋湰鐮村潖鏁帮細</text>{{SamplingItem.HSampleDamageQty}}
+                                </view>
+                                <view class="detail editable">
+                                    <text>妫�楠岀粨鏋滐細</text>{{SamplingItem.HInspectResultToSee}}
+                                </view>
+                            </view>
+                        </uni-card>
+                    </view>
+                </view>
+                <!-- 妫�娴嬪�� 鍛堢幇 -->
+                <view v-else v-for="item in InspectModules" :key="item.id">
+                    <view v-if="subTabSelected == item.id">
+                        <InspectValueTemplateVue :bind-key="item.id"
+                            :bind-data="{data: checkItems[item.checkItemId], list: InspectValues[item.checkItemId]}"
+                            @update="InspectValueUpdate"></InspectValueTemplateVue>
+                    </view>
+                </view>
+
+            </view>
+        </view>
+        <view style="height: 120rpx;"></view>
+        <view class="bottom-btn">
+            <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>
+        <SampleSchemePopupVue v-if="enablePopupModule == PopupModuleNameList[1]" ref="listPopup"
+            @update="SampleSchemeComplete" :bindKey="currentChechItemIDCache">
+        </SampleSchemePopupVue>
+        <CheckItemPopupVue v-if="enablePopupModule == PopupModuleNameList[2]" ref="listPopup"
+            @update="CheckItemComplete" :bindKey="currentChechItemIDCache">
+        </CheckItemPopupVue>
+        <InspectMentPopupVue v-if="enablePopupModule == PopupModuleNameList[3]" ref="listPopup"
+            @update="InspectMentComplete" :bindKey="currentChechItemIDCache">
+        </InspectMentPopupVue>
+        <MaterialPopupVue v-if="enablePopupModule == PopupModuleNameList[4]" ref="listPopup" @update="MaterComplete"
+            :bindKey="0">
+        </MaterialPopupVue>
+        <ICMOBillPopupVue v-if="enablePopupModule == PopupModuleNameList[5]" ref="listPopup" @update="ICMOBillComplete"
+            :bindKey="0"></ICMOBillPopupVue>
+        <ProcExchBillPopupVue v-if="enablePopupModule == PopupModuleNameList[6]" ref="listPopup"
+            @update="ProcExchBillComplete" :bindKey="0"></ProcExchBillPopupVue>
+        <ProcessPopupVue v-if="enablePopupModule == PopupModuleNameList[8]" ref="listPopup" @update="HProcComplete"
+            :bindKey="0"></ProcessPopupVue>
+        <CheckProjectPopupVue v-if="enablePopupModule == PopupModuleNameList[7]" ref="listPopup"
+            @update="HQCSchemeComplete" :bindKey="0"></CheckProjectPopupVue>
+    </view>
+</template>
+
+<script>
+    import dayjs from 'dayjs'
+    import {
+        CommonUtils
+    } from '../../../utils/common'
+    import InspectValueTemplateVue from '@/components/ZLGL/InspectValueTemplate.vue'
+    import SampleSchemePopupVue from '@/components/ZLGL/SampleSchemePopup.vue'
+    import CheckItemPopupVue from '@/components/ZLGL/CheckItemPopup.vue'
+    import InspectMentPopupVue from '../../../components/ZLGL/InspectMentPopup.vue'
+    import MaterialPopupVue from '../../../components/ZLGL/MaterialPopup.vue'
+    import ICMOBillPopupVue from '../../../components/ZLGL/ICMOBillPopup.vue'
+    import ProcExchBillPopupVue from '../../../components/ZLGL/ProcExchBillPopup.vue'
+    import ProcessPopupVue from '../../../components/ZLGL/ProcessPopup.vue'
+    import CheckProjectPopupVue from '../../../components/ZLGL/CheckProjectPopup.vue'
+    import {
+        getUserInfo
+    } from '../../../utils/auth'
+    export default {
+        components: {
+            InspectValueTemplateVue,
+            SampleSchemePopupVue,
+            CheckItemPopupVue,
+            InspectMentPopupVue,
+            MaterialPopupVue,
+            ICMOBillPopupVue,
+            ProcExchBillPopupVue,
+            ProcessPopupVue,
+            CheckProjectPopupVue
+        },
+        computed: {
+            judgeConclusion: {
+                get() {
+                    return true
+                }
+            }
+        },
+        data() {
+            return {
+                operationType: 1,
+                linterid: 0,
+
+                mainTabSelected: 1,
+                subTabSelected: 1,
+
+                // 鎺у埗褰撳墠鏄剧ず鐨勫脊绐楁ā鍧�
+                enablePopupModule: '',
+                PopupModuleNameList: ["", "SampleScheme", "CheckItem",
+                    "InspectMent", "Material", "ICMOBill", "ProcExchBill", "QCScheme", "Process"
+                ],
+                // 褰撳墠鎿嶄綔鐨勬楠屽崟ID缂撳瓨
+                currentChechItemIDCache: -1,
+
+                // uni-combox 閫夋嫨鍣ㄤ娇鐢�
+                // 鐢熶骇璧勬簮
+                GySourceList: [],
+                GySourceNameList: [],
+                // 鐝
+                GyWorkShiftList: [],
+                GyWorkShiftNameList: [],
+                // 妫�楠屽憳
+                GyFirstCheckEmpList: [],
+                GyFirstCheckEmpNameList: [],
+
+                // 妫�楠屾柟妗�
+                arrayAnalysisMethod: [{
+                    value: 1,
+                    name: '瀹氭�у垎鏋�'
+                }, {
+                    value: 2,
+                    name: '瀹氶噺鍒嗘瀽'
+                }, {
+                    value: 3,
+                    name: '鍏朵粬鍒嗘瀽'
+                }],
+                ArrayAnalysisMethodValue: [1, 2, 3],
+                // 瀛愯〃 椤电淇℃伅
+                subTabs: {
+                    "1": {
+                        id: "1",
+                        name: "妫�楠岄」鐩�"
+                    },
+                    "2": {
+                        id: "2",
+                        name: "鎶芥牱妫�楠�"
+                    }
+                },
+                // 涓昏〃灞炴��
+                hform: {
+                    "HBillNo": "",
+                    "HInterID": "0",
+                    "HDate": dayjs(new Date()).format("YYYY-MM-DD"),
+                    "HSourceName": "",
+                    "HSourceID": "0",
+                    "HShiftsName": "",
+                    "HShiftsID": "0",
+                    "HICMOBillNo": "",
+                    "HICMOInterID": "0",
+                    "HICMOEntryID": "1",
+                    "HICMOQty": "0",
+                    "HProcExchBillNo": "",
+                    "HProcExchInterID": "0",
+                    "HProcExchEntryID": "0",
+                    "HProcExchQty": "0",
+                    "HMaterNumber": "",
+                    "HMaterID": "0",
+                    "HMaterName": "",
+                    "HFirstCheckEmpName": "",
+                    "HFirstCheckEmp": 0,
+                    "HQCSchemeName": "",
+                    "HQCSchemeID": "0",
+                    "HBatchNo": "",
+                    "HLastResult": true, // 榛樿鍚堟牸
+                    "HProcName": "",
+                    "HProcID": "0",
+                    "HTakeSampleCheckBillNo": "", // 鍙栨牱鍗�
+                    "HTakeSampleCheckBillID": "0",
+                    "HRemark": "",
+                    "HErrTreatment": "", // 寮傚父涓存椂澶勭悊鏂规
+                    "HMaker": getUserInfo()["Czymc"] || "",
+                    "HChecker": "",
+                    "HCloseMan": "",
+                    "HMakeDate": dayjs(new Date()).format("YYYY-MM-DDTHH:mm:ss"),
+                    "HCheckDate": "",
+                    "HCloseDate": "",
+                    "HUpDater": "",
+                    "HDeleteMan": "",
+                    "HUpDateDate": "",
+                    "HDeleteDate": "",
+                    // "HResult": "2",
+                    // "HAnalysisMethod": "1",
+                    // "layTableCheckbox": "on",
+                    // "HEntryID": "1",
+                    // "HQCCheckItemName": "澶栬",
+                    // "HQCCheckItemID": "2",
+                    // "HSampleSchemeName": "",
+                    // "HSampleSchemeID": "0",
+                    // "HSampleQty": "0",
+                    // "HSampleDamageQty": "0",
+                    // "HSamplingType": "",
+                    // "HAcceptQty": "",
+                    // "HInspectResultToSee": "",
+                    // "HInspectionLevel": "",
+                    // "HRejectQty": "",
+                    // "HStrictness": "",
+                    // "HSampleUnRightQty": "0",
+                    // "HAQL": "",
+                    // "HSampleQty2": "0",
+                    // "HInspectResultToSee2": "",
+                    // "HSampleUnRightQty2": "0",
+                    // "HResDec": "2",
+                    // "HStatus": "1",
+                    // "HComparator": "=",
+                    // "HUnit": "",
+                    // "HUnitID": "0",
+                    // "HInspectVal": "",
+                    // "HInspectValB": "",
+                    // "HTargetVal": "",
+                    // "HTargetValB": "",
+                    // "HUpLimit": "0",
+                    // "HDownLimit": "0",
+                    // "HUpOffSet": "",
+                    // "HDownOffSet": "",
+                    // "HInSpectResult": "",
+                    "HMainSourceBillType": "",
+                    "HMainSourceInterID": "0",
+                    "HMainSourceEntryID": "1",
+                    "HMainSourceBillNo": ""
+                },
+                // 妫�楠岄」鐩拰鎶芥牱妫�楠� 鍊�
+                checkItems: {
+
+                },
+                // 妫�娴嬪�兼ā鍧�
+                InspectModules: {
+
+                },
+                // 妫�娴嬪��
+                InspectValues: {
+
+                }
+            }
+        },
+        methods: {
+            // 妫�楠屽憳鍒濆鍖�
+            async InitHEmp() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Employee/list',
+                        data: {
+                            sWhere: `  and 缁勭粐鍚嶇О = '${uni.getStorageSync("Organization")}' and 绂佺敤鏍囪 = ''and 瀹℃牳浜� !='' order by 閮ㄩ棬浠g爜`,
+                            user: getUserInfo()['Czymc'],
+                            Organization: uni.getStorageSync("Organization")
+                        }
+                    })
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.GyFirstCheckEmpList = data
+                        this.GyFirstCheckEmpNameList = Array.from(data).map(e => e["鑱屽憳鍚嶇О"])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栨楠屽憳澶辫触: ${Message}`
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栨楠屽憳澶辫触: ${err}`
+                    })
+                }
+            },
+            async HFirstCheckEmpChange(e) {
+                console.log('閫変腑妫�楠屽憳: ', e);
+                let index = this.GyFirstCheckEmpList.findIndex(elem => elem["鑱屽憳鍚嶇О"] == e)
+                if (index == -1) {
+                    this.hform.HFirstCheckEmp = 0
+                    this.hform.HFirstCheckEmpName = ''
+                    return
+                }
+
+                this.hform.HFirstCheckEmp = this.GyFirstCheckEmpList[index]["HItemID"]
+                this.hform.HFirstCheckEmpName = this.GyFirstCheckEmpList[index]["鑱屽憳鍚嶇О"]
+            },
+            // 鐢熶骇鐝鍒濆鍖�
+            async InitHWorkShift() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_ShiftsController/Get_Gy_WorkShiftList',
+                        data: {
+                            sWhere: ` and 绂佺敤鏍囪 = '' and ISNULL(瀹℃牳浜�,'')  != '' and 浣跨敤缁勭粐鍚嶇О = '${uni.getStorageSync("Organization")}'`,
+                            HMaker: getUserInfo()['Czymc']
+                        }
+                    })
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.GyWorkShiftList = data
+                        this.GyWorkShiftNameList = Array.from(data).map(e => e["鐝鍚嶇О"])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栫彮娆″け璐�: ${Message}`
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栫彮娆″け璐�: ${err}`
+                    })
+                }
+            },
+            async HWorkShiftChange(e) {
+                console.log('閫変腑鐝: ', e);
+                let index = this.GyWorkShiftList.findIndex(elem => elem["鐝鍚嶇О"] == e)
+                if (index == -1) {
+                    this.hform.HWorkShiftID = 0
+                    this.hform.HWorkShiftName = ''
+                    return
+                }
+
+                this.hform.HWorkShiftID = this.GySourceList[index]["HInterID"]
+                this.hform.HWorkShiftName = this.GySourceList[index]["鐝鍚嶇О"]
+            },
+            // 鐢熶骇璧勬簮鏇存柊
+            // 鐢熶骇璧勬簮鍒濆鍖�
+            async InitHSource() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Source/list',
+                        data: {
+                            sWhere: `and 绂佺敤鏍囪 != 'Y' and ISNULL(瀹℃牳浜�,'')  != '' and HUSEORGID = '100038'`,
+                            user: getUserInfo()['Czymc']
+                        }
+                    })
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+
+                    if (count == 1) {
+                        this.GySourceList = data
+                        this.GySourceNameList = Array.from(data).map(e => e["鐢熶骇璧勬簮鍚嶇О"])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栫敓浜ц祫婧愬け璐�: ${Message}`
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栫敓浜ц祫婧愬け璐�: ${err}`
+                    })
+                }
+            },
+            // 鐢熶骇璧勬簮鏇存柊
+            async HSourceChange(e) {
+                console.log('閫変腑鐢熶骇璧勬簮: ', e);
+                let index = this.GySourceList.findIndex(elem => elem["鐢熶骇璧勬簮鍚嶇О"] == e)
+                if (index == -1) {
+                    this.hform.HSourceID = 0
+                    this.hform.HSourceName = ''
+                    return
+                }
+
+                this.hform.HSourceID = this.GySourceList[index]["HItemID"]
+                this.hform.HSourceName = this.GySourceList[index]["鐢熶骇璧勬簮鍚嶇О"]
+            },
+            // 鏄剧ず寮圭獥
+            async showSelectorModule(item, index) {
+                this.currentChechItemIDCache = item.num || 0 // 0 琛ㄧず娌℃湁浠讳綍瀛愯〃琚�変腑
+                this.enablePopupModule = this.PopupModuleNameList[index]
+                console.log('this.$refs: ', this.$refs);
+                await this.$nextTick()
+                if (index == 7) {
+                    // 妫�楠屾柟妗堥渶瑕侀澶栦紶閫掑伐搴忓拰鐗╂枡鍚嶇О涓や釜鍙傛暟
+                    this.$refs.listPopup.setRequiredInfo(item.HMaterName, item.HProcName)
+                }
+
+                this.$refs.listPopup.showPopup()
+            },
+            getAnalysisMethodDisplay(val) {
+                console.log('AnalysisMethodVal: ', val);
+                if (val) {
+                    return this.arrayAnalysisMethod.find(e => e.value == val).name
+                }
+                return ''
+            },
+            checkResultChange(event) {
+                console.log('event: ', event);
+            },
+            // 妫�楠岄」鐩柊澧炶
+            addCheckItem(resource) {
+                let ordinal = this.getObjLength(this.checkItems) + 1
+                let checkItem = {
+                    "num": ordinal,
+                    "HQCCheckItemID": "",
+                    "HQCCheckItemNumber": "",
+                    "HQCCheckItemName": "",
+                    "HInspectInstruMentID": "0",
+                    "HInspectInstruMentNumber": "",
+                    "HInspectInstruMentName": "",
+                    "HQCStd": "",
+                    "HUnit": "",
+                    "HQCNote": "",
+                    "HAnalysisMethod": "",
+                    "HResult": false,
+                    "HMax": "",
+                    "HMin": "",
+                    "HAvg": "",
+                    "HRemark": "",
+                    "HKeyInspect": false,
+                    "HStatus": 0,
+                    "HSampleSchemeID": "",
+                    "HUnitID": 0,
+                    "HInspectVal": '',
+                    "HTargetVal": '',
+                    "HUpLimit": '',
+                    "HDownLimit": '',
+                    "HUpOffSet": '',
+                    "HDownOffSet": '',
+                    "HSampleDamageQty": 0,
+                    "HSampleSchemeName": "",
+                    "HSampleQty": 0,
+                    "HAcceptQty": 0,
+                    "HInspectionLevel": "",
+                    "HRejectQty": 0,
+                    "HStrictness": "",
+                    "HSampleUnRightQty": 0,
+                    "HAQL": "",
+                    "HSamplingType": "",
+                    "HInspectResultToSee": ""
+                }
+
+                if (resource) { // 閫氳繃涓昏〃妫�楠屾柟妗堝甫鍑虹殑妫�楠岄」鐩�
+                    Object.assign(checkItem, resource)
+                }
+
+                this.$set(this.checkItems, ordinal, checkItem)
+
+                this.$nextTick(() => {
+                    // 妫�鏌ユ槸鍚﹀彲浠ユ柊澧炴楠屽�奸」
+                    this.setInspectValModule(this.checkItems[ordinal])
+                })
+
+
+            },
+            // 妫�楠岄」鐩垹闄よ
+            removeCheckItem(item) {
+                uni.showModal({
+                    title: "娓╅Θ鎻愮ず",
+                    content: `纭瑕佸垹闄ょ${item.num}琛屽悧锛熷垹闄ゅ悗涓嶈兘鎭㈠`,
+                    success: (res) => {
+                        if (res.confirm) {
+                            this.$delete(this.checkItems, item.num)
+                            this.refreshCheckItemNum()
+                        }
+                    }
+                })
+            },
+            async refreshCheckItemNum() {
+                await this.$nextTick()
+                // 閲嶆帓搴忓彿
+                let num = 1
+                for (let s in this.checkItems) {
+                    console.log('s: ', s);
+                    this.checkItems[s].num = num
+                    num++
+                }
+            },
+            getObjLength(obj) {
+                return Object.keys(obj).length
+            },
+            // 缁撹淇敼
+            HResultChange(id, e) {
+                console.log('e: ', e);
+                this.checkItems[id]["HResult"] = e.detail.value
+            },
+            // 妫�楠屾柟妗堜慨鏀�
+            HAnalysisMethodChange(id, e) {
+                console.log('e: ', e);
+                this.checkItems[id]["HAnalysisMethod"] = this.arrayAnalysisMethod[e.detail.value]["value"]
+
+                // 妫�鏌ユ槸鍚﹀彲浠ユ柊澧炴楠屽�奸」
+                this.setInspectValModule(this.checkItems[id])
+            },
+            // 閲嶇偣妫�鏌ヤ慨鏀�
+            HKeyInspectChange(id, e) {
+                console.log('e: ', e);
+                this.checkItems[id]["HKeyInspect"] = e.detail.value
+            },
+            // 妫�楠岄」鐩繑鍥�
+            async CheckItemComplete(e) {
+                console.log('CheckItemRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.checkItems[key], {
+                        "HQCCheckItemID": data["HItemID"],
+                        "HQCCheckItemNumber": data["浠g爜"],
+                        "HQCCheckItemName": data["鍚嶇О"],
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 妫�楠屾柟妗堣繑鍥�
+            async SampleSchemeComplete(e) {
+                console.log('SampleSchemeRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.checkItems[key], {
+                        "HSampleSchemeID": data["hmainid"],
+                        "HSampleSchemeNumber": data["鎶芥牱鏂规浠g爜"],
+                        "HSampleSchemeName": data["鎶芥牱鏂规鍚嶇О"],
+                        "HSampleQty": data["鏍锋湰閲�"] || 0,
+                        "HAcceptQty": data["鍏佽鏁�"] || 0,
+                        "HInspectionLevel": data["妫�楠屾按骞�"],
+                        "HRejectQty": data["鎷掔粷鏁�"] || 0,
+                        "HStrictness": data["涓ユ牸搴�"],
+                        "HSampleUnRightQty": data["鏍锋湰涓嶅悎鏍兼暟"] || 0,
+                        "HAQL": data["AQL"],
+                        "HSamplingType": data["鎶芥牱绫诲瀷"],
+                        "HInspectResultToSee": data["妫�楠岀粨鏋�"],
+                        "HUpLimit": data["涓婇檺鍊�"] || 0,
+                        "HDownLimit": data["涓嬮檺鍊�"] || 0,
+                        "HSampleDamageQty": data["鏍锋湰鐮村潖鏁�"] || 0
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    this.setInspectValModule(this.checkItems[key])
+
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 妫�楠屼华鍣ㄨ繑鍥�
+            async InspectMentComplete(e) {
+                console.log('InspectInstruMentRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.checkItems[key], {
+                        "HInspectInstruMentID": data["HItemID"],
+                        "HInspectInstruMentNumber": data["妫�楠屼华鍣ㄤ唬鐮�"],
+                        "HInspectInstruMentName": data["妫�楠屼华鍣ㄥ悕绉�"],
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 浜у搧浠g爜杩斿洖
+            async MaterComplete(e) {
+                console.log('MaterRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.hform, {
+                        "HMaterNumber": data["鐗╂枡浠g爜"],
+                        "HMaterName": data["鐗╂枡鍚嶇О"],
+                        "HMaterID": data["HItemID"],
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 浠诲姟鍗曡繑鍥�
+            async ICMOBillComplete(e) {
+                console.log('ICMOBillRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.hform, {
+                        "HICMOInterID": data.hmainid,
+                        "HICMOEntryID": data.HEntryID,
+                        "HICMOBillNo": data.鍗曟嵁鍙�,
+                        "HMaterNumber": data.浜у搧浠g爜,
+                        "HMaterName": data.浜у搧鍚嶇О,
+                        "HMaterID": data.HMaterID,
+                        "HICMOQty": data.鐢熶骇浠诲姟鍗曟暟閲�,
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 娴佽浆鍗¤繑鍥�
+            async ProcExchBillComplete(e) {
+                console.log('ProcExchBillRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.hform, {
+                        "HProcExchInterID": data.hmainid,
+                        "HProcExchEntryID": data.hsubid,
+                        "HProcExchBillNo": data.鍗曟嵁鍙�,
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 妫�楠屾柟妗�(涓昏〃)杩斿洖
+            async HQCSchemeComplete(e) {
+                console.log('HQCSchemeRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.hform, {
+                        HQCSchemeID: data.hmainid,
+                        HQCSchemeName: data.妫�楠屾柟妗堝悕绉�
+                    })
+                    await this.get_CheckItem();
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            // 宸ュ簭杩斿洖
+            async HProcComplete(e) {
+                console.log(' HProcRet: ', e);
+                for (var key in e["retVal"]) {
+                    let data = e["retVal"][key]
+                    Object.assign(this.hform, {
+                        "HProcName": data["宸ュ簭鍚嶇О"],
+                        "HProcID": data["HItemID"],
+                    })
+                    await this.$nextTick()
+                    this.$refs.listPopup.exit()
+                    // 纭繚鍦ㄥ脊绐楃粨鏉熷悗锛屽啀灏嗛〉闈笂鎸傚湪鐨勭粍浠剁疆绌�
+                    await this.$nextTick()
+                    this.enablePopupModule = this.PopupModuleNameList[0]
+                }
+            },
+            setInspectValModule(checkItem) {
+                console.log('checkItem: ', checkItem);
+                if (!checkItem.HAnalysisMethod || !checkItem.HSampleSchemeID) {
+                    return
+                }
+                // 鍖哄垎妫�楠屽�奸〉绛惧拰闈欐�侀〉绛撅紝妫�楠屽�奸〉绛剧殑id浠寮�澶�
+                this.$set(this.InspectModules, `_${checkItem.num}`, {
+                    id: `_${checkItem.num}`,
+                    checkItemId: checkItem.num
+                })
+                console.log(' this.arrayAnalysisMethod: ', checkItem.HAnalysisMethod);
+                let analysisMethodName = this.arrayAnalysisMethod.find(e => e.value == checkItem.HAnalysisMethod)
+                    .name
+                this.$set(this.subTabs, `_${checkItem.num}`, {
+                    id: `_${checkItem.num}`,
+                    name: `${analysisMethodName}-${checkItem.HSampleSchemeName}`
+                })
+            },
+            InspectValueUpdate(e) {
+                console.log('e: ', e);
+                let {
+                    data,
+                    list
+                } = e
+                this.checkItems[data.num] = Object.assign(this.checkItems[data.num], data)
+                this.$set(this.InspectValues, `${data.num}`, list)
+            },
+            // 甯﹀嚭妫�楠岄」鐩�
+            async get_CheckItem() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetCheckItemByCheckProjectID',
+                        data: {
+                            CheckProjectID: this.hform.HQCSchemeID || 0,
+                            HBatchQty: this.hform.HProcExchQty
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (count == 1) {
+                        for (var i = 0; i < data.length; i++) {
+                            let checkItem = {
+                                "HQCCheckItemID": data[i]["HQCCheckItemID"],
+                                "HQCCheckItemNumber": data[i]["妫�楠岄」鐩唬鐮�"],
+                                "HQCCheckItemName": data[i]["妫�楠岄」鐩�"],
+                                "HInspectInstruMentID": data[i]["HInspectInstruMentID"],
+                                "HInspectInstruMentNumber": data[i]["妫�楠屼华鍣ㄤ唬鐮�"],
+                                "HInspectInstruMentName": data[i]["妫�楠屼华鍣�"],
+                                "HQCStd": data[i]["HQCStd"],
+                                "HUnit": data[i]["鍗曚綅鍚嶇О"],
+                                "HQCNote": "",
+                                "HAnalysisMethod": data[i]["鍒嗘瀽鏂规硶"],
+                                "HResult": data[i]["榛樿缁撹"],
+                                "HMax": "",
+                                "HMin": "",
+                                "HAvg": "",
+                                "HRemark": "",
+                                "HKeyInspect": data[i]["閲嶇偣妫�鏌�"] == 1 ? true : false,
+                                "HStatus": 0,
+                                "HSampleSchemeID": data[i]["HSampleSchemeID"],
+                                "HUnitID": data[i]["HUnitID"],
+                                "HInspectVal": '',
+                                "HTargetVal": '',
+                                "HUpLimit": data[i].涓婇檺鍊�,
+                                "HDownLimit": data[i].涓嬮檺鍊�,
+                                "HUpOffSet": '',
+                                "HDownOffSet": '',
+                                "HSampleDamageQty": "0",
+                                "HSampleSchemeName": data[i].鎶芥牱鏂规鍚嶇О,
+                                "HSampleQty": data[i].鏍锋湰閲�,
+                                "HAcceptQty": data[i].鍏佽鏁�,
+                                "HInspectionLevel": data[i].妫�楠屾按骞�,
+                                "HRejectQty": data[i].鎷掔粷鏁�,
+                                "HStrictness": data[i].涓ユ牸搴�,
+                                "HSampleUnRightQty": "",
+                                "HAQL": data[i].AQL,
+                                "HSamplingType": data[i].鎶芥牱绫诲瀷
+                            }
+
+                            this.addCheckItem(checkItem)
+                        }
+
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇妫�楠岄」鐩俊鎭け璐�: ${Message} `
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇妫�楠岄」鐩俊鎭け璐�: ${err} `
+                    })
+                }
+            },
+            async getMaxBillNo() {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Web/GetMAXNum",
+                        data: {
+                            "HBillType": '7505'
+                        }
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+                    if (count == 1) {
+                        this.hform.HInterID = data[0].HInterID
+                        this.hform.HBillNo = data[0].HBillNo
+                    } else {
+                        throw (Message)
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: "鑾峰彇鍗曟嵁鍙峰紓甯�: " + err
+                    })
+                }
+            }
+        },
+        async onLoad(e) {
+            this.operationType = e.operationType || 1
+            this.linterid = e.linterid || 0
+            if (this.operationType == 1) {
+                await this.getMaxBillNo()
+            } else if (this.operationType == 2) {
+
+            } else if (this.operationType == 3) {
+
+            }
+
+            await this.InitHSource()
+            await this.InitHWorkShift()
+            await this.InitHEmp()
+        }
+    }
+</script>
+
+<style lang="scss">
+    input {
+        width: inherit;
+        font-size: 26rpx;
+    }
+
+    .uni-input {
+        padding: 0
+    }
+
+
+    .bill-main-tabs,
+    .bill-sub-tabs {
+        box-sizing: border-box;
+        width: 730rpx;
+        display: flex;
+        flex-direction: row;
+        flex-wrap: nowrap;
+        gap: 20rpx;
+        flex-shrink: 0;
+        overflow-x: auto;
+        border-bottom: 1px solid #ddd;
+        padding: 20rpx 10rpx;
+        white-space: nowrap;
+
+        view {
+            width: auto;
+            font-size: 26rpx;
+            color: #555;
+            text-align: center;
+            padding: 16rpx 0;
+        }
+
+        .selected {
+            color: #3a78ff;
+            font-weight: bold;
+            border-bottom: 3px solid #3a78ff;
+        }
+    }
+
+    .bill-main-content,
+    .bill-sub-content {
+        box-sizing: border-box;
+        padding: 0 30rpx 0 30rpx;
+        display: flex;
+        flex-direction: column;
+
+        .form-item {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            font-size: 26rpx;
+            padding: 6rpx 0;
+
+            .left {
+                width: 208rpx;
+
+                text {
+                    color: red;
+                    font-weight: bold;
+                }
+            }
+
+            .right {
+                // width: 450rpx;
+                padding: 8rpx 20rpx;
+                font-size: 26rpx;
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+
+                .uni-combox {
+                    padding: 0;
+                    height: auto;
+
+                    .uni-input-placeholder,
+                    .uni-input-input {
+                        font-size: 26rpx;
+                    }
+                }
+
+                .uni-combox::v-deep input {
+                    height: inherit;
+                    font-size: 26rpx;
+                }
+
+            }
+
+            .disabled {
+                border: 1px solid #e4e4e4;
+                background-color: #e4e4e4;
+            }
+
+            .none-border {
+                border: none;
+            }
+        }
+    }
+
+    .bottom-btn {
+        box-sizing: border-box;
+        width: 100%;
+        height: 120rpx;
+        position: fixed;
+        bottom: 0;
+        left: 0;
+        background-color: #fff;
+        box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+        padding: 30rpx 40rpx 40rpx 40rpx;
+        display: flex;
+        flex-direction: row;
+        gap: 10rpx;
+
+        button {
+            border-radius: 50rpx;
+            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;
+        }
+    }
+
+    .buttons {
+        box-sizing: border-box;
+        width: 100%;
+        display: flex;
+        justify-content: center;
+        padding: 10rpx 0;
+
+        button {
+            border-radius: 50rpx;
+            width: 180rpx;
+            height: 66rpx;
+            line-height: 66rpx;
+            font-size: 26rpx;
+        }
+
+        .btn-a {
+            background-color: #acacac;
+            color: #fff;
+        }
+
+        .btn-b {
+            background-color: #41a863;
+            color: #fff;
+        }
+
+        .btn-c {
+            background-color: #3a78ff;
+            color: #fff;
+        }
+    }
+
+    .list {
+        width: 100%;
+
+        .card-detail {
+            width: 100%;
+            display: flex;
+            flex-wrap: wrap;
+            justify-content: space-between;
+            align-items: center;
+            line-height: 120%;
+            gap: 10rpx 0;
+
+            input {
+                font-size: 26rpx;
+            }
+
+            .detail {
+                // width: 50%;
+                box-sizing: border-box;
+                font-size: 26rpx;
+                color: #555;
+                padding-right: 20rpx;
+
+                text {
+                    color: #999;
+                    font-size: 26rpx;
+                }
+            }
+
+            .editable {
+                width: 50%;
+                display: inline-flex;
+                flex-direction: row;
+                align-items: center;
+            }
+        }
+    }
+
+    .icon-wrapper {
+        background-color: #3A78FF;
+        border-radius: 100%;
+        width: 40rpx;
+        height: 40rpx;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+        flex-shrink: 0;
+
+        .uni-icons {
+            color: #fff !important;
+        }
+    }
+
+    .icon-wrapper-big {
+        background-color: #3A78FF;
+        border-radius: 100%;
+        width: 50rpx;
+        height: 50rpx;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+        flex-shrink: 0;
+        margin-left: 20rpx;
+
+        .uni-icons {
+            color: #fff !important;
+        }
+    }
+
+    .more {
+        color: #888;
+        font-size: 22rpx;
+        display: flex;
+        border-top: 1px solid #eee;
+        padding-top: 10rpx;
+
+        .part {
+            width: 100%;
+            text-align: center;
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/pages/ZLGL/shoujianjianyan/table.vue b/pages/ZLGL/shoujianjianyan/table.vue
new file mode 100644
index 0000000..1c9728e
--- /dev/null
+++ b/pages/ZLGL/shoujianjianyan/table.vue
@@ -0,0 +1,572 @@
+<template>
+    <view class="page" id="pageContent">
+        <view class="search-condition-zone">
+            <view class="form-item">
+                <view class="left">
+                    鏃ユ湡:
+                </view>
+                <view class="daterange" style="flex: 1;">
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HBeginDate">
+                            <view>{{hform.HBeginDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                    <view>鈥�</view>
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HEndDate">
+                            <view>{{hform.HEndDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍗曟嵁鍙�:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HBillNo" />
+                </view>
+            </view>
+        </view>
+        <view class="button-zone">
+            <button type="default" class="btn-a" size="mini" @tap="cmdAdd">鏂板</button>
+            <button type="default" class="btn-a" size="mini" @tap="cmdSearch">鏌ヨ</button>
+            <button type="default" class="btn-c" size="mini" @tap="exit">閫�鍑�</button>
+        </view>
+        <view class="info-list-zone" id="scroll-content" :style="{height: scrollContentHeight + 'px'}">
+            <view class="card-item" v-for="(item, index) in listDataShow">
+                <uni-card :title="item['鍗曟嵁鍙�']" :extra="'鏃ユ湡:' + item['鏃ユ湡'].split('T')[0]"
+                    @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['鍗曟嵁鐘舵��']">
+                            <text>鍗曟嵁鐘舵�侊細</text>{{item['鍗曟嵁鐘舵��']}}
+                        </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['瑙勬牸鍨嬪彿'].trim()">
+                            <text>瑙勬牸鍨嬪彿锛�</text>{{item['瑙勬牸鍨嬪彿']}}
+                        </view>
+                        <view class="detail" v-if="item['妫�楠屾柟妗�'].trim()">
+                            <text>妫�楠屾柟妗堬細</text>{{item['妫�楠屾柟妗�']}}
+                        </view>
+                        <view class="detail" v-if="item['瑙勬牸鍨嬪彿'].trim()">
+                            <text>瑙勬牸鍨嬪彿锛�</text>{{item['瑙勬牸鍨嬪彿']}}
+                        </view>
+                    </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>{{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['瀹℃牳浜�']}}
+                        </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>
+                    <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="op3" size="mini" plain @tap.stop="audit(item, 0)" v-if="!listDataShow[index]['瀹℃牳浜�']">瀹℃牳</button>
+                        <button class="op3" size="mini" plain @tap.stop="audit(item, 1)" v-if="listDataShow[index]['瀹℃牳浜�']">鍙嶅鏍�</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 class="over" v-if="listDataShow.length == 0">鏆傛棤鏁版嵁</view>
+        </view>
+
+        <view class="pagination-zone" id="pagination-zone">
+            <uni-pagination show-icon :page-size="paginationMeta.pageSize" :total="paginationMeta.total"
+                :current="paginationMeta.current" @change="onPaginationChangeHandler"></uni-pagination>
+        </view>
+    </view>
+</template>
+
+<script>
+    import {
+        CommonUtils
+    } from '@/utils/common'
+    import {
+        getUserInfo
+    } from '@/utils/auth'
+    import dayjs, {
+        Dayjs
+    } from 'dayjs'
+    export default {
+        data() {
+            return {
+
+                navHeight: 0,
+                scrollTop: 0,
+
+                showDetail: -1,
+                operations: -1,
+
+                hform: {
+                    HBeginDate: dayjs(new Date).subtract(30, 'd').format('YYYY-MM-DD'),
+                    HEndDate: dayjs(new Date).format('YYYY-MM-DD'),
+                    HBillNo: ''
+                },
+
+                paginationMeta: {
+                    current: 1,
+                    total: 0,
+                    pageSize: 30,
+                },
+
+                pageMeta: {
+                    scrollContentTop: 0,
+                    bottomBtnTop: 0,
+                },
+
+                listData: [],
+                listDataShow: [],
+            }
+        },
+        computed: {
+            scrollContentHeight: {
+                get() {
+                    return this.pageMeta.bottomBtnTop - this.pageMeta.scrollContentTop
+                }
+            }
+        },
+        methods: {
+            exit() {
+                uni.navigateBack()
+            },
+            cmdAdd() {
+                uni.navigateTo({
+                    url: "/pages/ZLGL/shoujianjianyan/form?operationType=1"
+                })
+            },
+            async cmdSearch() {
+                let sWhere = ''
+                if (this.hform.HBeginDate != "" && this.hform.HEndDate != "") {
+                    sWhere += " and  CONVERT(varchar(100),鏃ユ湡, 23) between '" + this.hform.HBeginDate + "' and '" +
+                        this.hform.HEndDate + "' ";
+                }
+                if (this.hform.HBillNo != "") {
+                    sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'"
+                }
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/QC_POStockInCheckBill/GetPOStockInCheckBill',
+                        data: {
+                            "sWhere": sWhere,
+                            "user": getUserInfo()["Czymc"]
+                        },
+                    })
+
+                    if (!res) {
+                        return
+                    }
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count > 0) {
+                        this.listData = data
+                        this.paginationMeta.total = data.length
+                        this.onPaginationChangeHandler({
+                            current: 1
+                        })
+                    } else {
+                        uni.showToast({
+                            icon: 'none',
+                            title: Message
+                        })
+                    }
+                } catch (err) {
+                    console.warn(err);
+                    uni.showToast({
+                        title: '鎺ュ彛璇锋眰澶辫触:' + err,
+                        icon: 'none'
+                    })
+                }
+            },
+            async onPaginationChangeHandler({
+                current
+            }) {
+                this.listDataShow =
+                    this.listData.slice((current - 1) * this.paginationMeta.pageSize,
+                        current * this.paginationMeta.pageSize)
+
+            },
+            async audit(item, mode) {
+                console.log('瀹℃牳鍗曟嵁: ',item);
+                
+                try{
+                    let res = await CommonUtils.doRequest2Sync({
+                        method: 'GET',
+                        url: 'QC_POStockInCheck_ValueTable/QC_POStockInCheckValue',
+                        data: {
+                            HInterID: item["hmainid"],
+                            IsAudit: mode,
+                            CurUserName: getUserInfo()["Czymc"]
+                        }
+                    })
+                    
+                    if(!res) {
+                        return
+                    }
+                    
+                    let {count, data, Message} = res.data
+                    
+                    if(count == 1) {
+                        CommonUtils.showTips({
+                            message: `${item["瀹℃牳浜�"]?'鍙嶅鏍�':'瀹℃牳'}鎴愬姛`
+                        })
+                        this.$forceUpdate()
+                        setTimeout(() => {
+                            this.cmdSearch()
+                        }, 2000)
+                    }else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍗曟嵁${item["瀹℃牳浜�"]?'鍙嶅鏍�':'瀹℃牳'}澶辫触: ${Message}`
+                        })
+                    }
+                }catch(err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍗曟嵁${item["瀹℃牳浜�"]?'鍙嶅鏍�':'瀹℃牳'}閿欒: ${err}`
+                    })
+                }
+            },
+            async del(item) {
+                console.log("delItem: ", item);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+                    success: async (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            try {
+                                let res = await CommonUtils.doRequest2Sync({
+                                    url: '/Sc_MouldConkBookBill/DeltetMouldConkBookBill',
+                                    data: {
+                                        "HInterID": item.hmainid,
+                                        "user": getUserInfo()["Czymc"]
+                                    }
+                                })
+
+                                if (!res) {
+                                    return
+                                }
+
+                                let {
+                                    count,
+                                    code,
+                                    Message
+                                } = res.data
+                                if (count == 0) {
+                                    return uni.showModal({
+                                        title: '閿欒鎻愮ず',
+                                        content: `鍒犻櫎閿欒: ${Message}`,
+                                        showCancel: false
+                                    })
+                                }
+                                uni.showToast({
+                                    title: '鍒犻櫎鎴愬姛',
+                                    icon: 'none'
+                                })
+                                this.cmdSearch()
+                            } catch (err) {
+                                uni.showModal({
+                                    title: '閿欒鎻愮ず',
+                                    content: `鎺ュ彛璇锋眰澶辫触: ${err}`,
+                                    showCancel: false
+                                })
+                            }
+                        }
+                    },
+                })
+
+            },
+            edit(item) {
+                console.log("editItem:", item)
+                uni.navigateTo({
+                    url: `/pages/ZLGL/shoujianjianyan/form?operationType=2&linterid=${item.hmainid}`
+                })
+            }
+        },
+        onLoad() {
+
+            this.$nextTick(() => {
+                this.cmdSearch()
+            })
+        },
+        onReady() {
+            // #ifndef MP-WEIXIN
+            let query = uni.createSelectorQuery().in(this)
+            query.select("#scroll-content").boundingClientRect((data) => {
+                this.pageMeta.scrollContentTop = data.top
+            }).exec()
+            query.select("#pagination-zone").boundingClientRect((data) => {
+                this.pageMeta.bottomBtnTop = data.top
+            }).exec()
+            // #endif
+            // #ifdef MP-WEIXIN
+            // 寰俊涓嶆敮鎸� uni.createSelectorQuery().in(this)
+            // #endif
+
+        },
+    }
+</script>
+
+<style lang="scss" scoped>
+    .page {
+        box-sizing: border-box;
+        display: flex;
+        flex-direction: column;
+        gap: 20rpx;
+        padding: 20rpx 0;
+        position: relative;
+
+        .button-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding-top: 20rpx;
+            display: flex;
+            flex-direction: row;
+            justify-content: space-between;
+            flex-wrap: wrap;
+
+            button {
+                border-radius: 50rpx;
+                width: 180rpx;
+                height: 66rpx;
+                line-height: 66rpx;
+                font-size: 28rpx;
+            }
+
+            .btn-a {
+                background-color: #3a78ff;
+                color: #fff;
+            }
+
+            .btn-c {
+                background-color: #ff5722;
+                color: #fff;
+            }
+        }
+
+        .search-condition-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding: 0 60rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .form-item {
+                display: flex;
+                flex-direction: row;
+                gap: 20rpx;
+                align-items: center;
+                font-size: 28rpx;
+
+                .left {
+                    width: 4rem;
+                }
+
+                .right {
+                    flex: 1;
+                    padding: 8rpx 16rpx;
+
+                    .search {
+                        width: 28rpx;
+                        height: 28rpx;
+                    }
+
+                    input {
+                        font-size: 28rpx;
+                    }
+
+                    .uni-combox {
+                        padding: 0;
+                        margin: 0;
+
+                        ::v-deep .uni-combox__input {
+                            font-size: 28rpx;
+                            height: auto;
+                        }
+                    }
+                }
+
+                .general {
+                    border-radius: 22rpx;
+                    border: 1px solid #acacac;
+                }
+
+                .disabled {
+                    border-radius: 22rpx;
+                    border: 1px solid #e4e4e4;
+                    background-color: #e4e4e4;
+                }
+            }
+        }
+
+        .info-list-zone {
+            overflow-y: auto;
+
+            .card-item {
+                .card-detail {
+                    width: 100%;
+                    display: flex;
+                    flex-wrap: wrap;
+                    justify-content: space-between;
+                    line-height: 120%;
+
+                    .detail {
+                        // width: 50%;
+                        font-size: 26rpx;
+                        margin-bottom: 12rpx;
+                        color: #555;
+                        margin-right: 20rpx;
+
+                        text {
+                            color: #999;
+                            font-size: 26rpx;
+                        }
+                    }
+                }
+            }
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+
+        .op {
+            display: flex;
+            justify-content: space-between;
+            gap: 20rpx;
+            margin-top: 20rpx;
+            flex-wrap: wrap;
+            align-content: flex-start;
+            button {
+                margin: 0;
+                flex-shrink: 0;
+                padding: 0;
+                width: 150rpx;
+                flex-basis: 150rpx;
+                font-size: 25rpx;
+            }
+
+            .op1 {
+                border: 1px solid #41a863;
+                color: #41a863;
+            }
+
+            .op2 {
+                border: 1px solid #d98d00;
+                color: #d98d00;
+            }
+
+            .op3 {
+                border: 1px solid #3a78ff;
+                color: #3a78ff;
+            }
+
+            .op4 {
+                border: 1px solid #da0000;
+                color: #da0000;
+            }
+
+            .op5 {
+                border: 1px solid #888;
+                color: #888;
+            }
+        }
+
+        .pagination-zone {
+            position: fixed;
+            bottom: 0;
+            box-sizing: border-box;
+            background-color: #fff;
+            box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+            padding: 20rpx 40rpx 20rpx 40rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+            justify-content: space-between;
+            width: 100%;
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/pages/caigourukujiaoyan/form.vue b/pages/caigourukujiaoyan/form.vue
index dfe29ec..4e6e826 100644
--- a/pages/caigourukujiaoyan/form.vue
+++ b/pages/caigourukujiaoyan/form.vue
@@ -4,7 +4,7 @@
 			<view class="form-item">
 				<view class="title">鏉$爜:</view>
 				<view class="right">
-					<input v-model="hform.HBarCode" :focus="HBarCodeFocus" placeholder="璇锋壂鎻�(鎴栬緭鍏�)鏉$爜" @blur="getCode(hform.HBarCode)" @input="handleInput" />
+					<input  v-model="hform.HBarCode" :focus="HBarCodeFocus" placeholder="璇锋壂鎻�(鎴栬緭鍏�)鏉$爜" @blur="getCode(hform.HBarCode)"  />
 				</view>
 				<uni-icons type="scan"
 					style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;"
@@ -271,8 +271,13 @@
             async refreshHBarCodeFocus() {
                 this.HBarCodeFocus = false
                 this.hform.HBarCode = ''
-                await this.$nextTick()
-                this.HBarCodeFocus = true
+                // this.$nextTick(() => {
+                //     this.HBarCodeFocus = true
+                // })
+				setTimeout(() => {
+				  this.HBarCodeFocus = true;
+				}, 300);
+                
             },
 			//鎵爜
 			toScanCode() {
@@ -723,17 +728,19 @@
 			                }
 			                //鏄剧ず琛ㄤ綋鏄庣粏
 			                this.DisBillEntryList()
+							this.refreshHBarCodeFocus()
 			                //娓呯┖鏁伴噺
 			                this.hform.HQty = ''
 			            } else {
 			                CommonUtils.playSound(0);
+							this.refreshHBarCodeFocus()
 			                uni.showToast({
 			                    title: res.data.Message,
 			                    icon: 'none'
 			                })
 			            }
 			
-			            this.refreshHBarCodeFocus()
+			            
 			
 			        } catch (e) {
 			            CommonUtils.playSound(0)
diff --git a/pages/index/index.vue b/pages/index/index.vue
index a33bcf1..af57a66 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -220,10 +220,11 @@
                         hidden: false,
                     },
                     {
-                    	img: '../../static/icon/icon16.png',
-                    	text: '鍏朵粬鍏ュ簱鏍¢獙',
-                    	url: '/pages/qitarukujiaoyan/table',
-                    	id: 27,
+                        img: '../../static/icon/icon16.png',
+                        text: '鍏朵粬鍏ュ簱鏍¢獙',
+                        url: '/pages/qitarukujiaoyan/table',
+                        id: 27,
+                        hidden: false,
                     },
                     {
                         img: '../../static/icon/icon8.png',
@@ -245,7 +246,7 @@
                         id: 26,
                         hidden: false,
                     },
-                    
+
 
                 ],
                 // itemData: [{
diff --git a/pages/index/login.vue b/pages/index/login.vue
index 48a1309..5b82b65 100644
--- a/pages/index/login.vue
+++ b/pages/index/login.vue
@@ -85,8 +85,10 @@
                     "娓╁窞娴疯瘹鍏夊": 'http://122.228.39.234:7177/API/',
                     "瀹佹尝鎯犲悍宸ヤ笟": 'http://172.16.72.30:6699/API/',
                     "浣欏鍏磋揪璧峰姩鍣�": 'http://121.37.133.104/API/',
+					"鑻忓窞鍗櫤绉戞妧-澶栫綉": 'http://221.224.60.42:8082/API_WW/',
+                    "鑻忓窞鍗櫤绉戞妧-鍐呯綉": 'http://172.16.20.233:8082/API_NW/',
 					"缈佹稕娑涙湰鍦版祴璇�": 'http://localhost:81/API/',
-					"鑻忓窞鍗櫤绉戞妧": 'http://221.224.60.42:8082/API_WW/',
+					"闄堥晲鍝叉湰鍦版祴璇�": 'http://localhost:81/API/',
                 },
                 serverUrlName: '娴欐睙鏅轰簯杩堟��',
 
@@ -108,8 +110,10 @@
                 logindata = JSON.parse(logindata)
                 this.HOrgName = logindata.HOrgName
                 this.Organization = logindata.Organization
-                this.UserName = logindata.UserName
-                this.PassWord = logindata.PassWord
+                this.UserName = logindata.HUserNumber
+                this.PassWord = logindata.HPassWord
+                // this.UserName = logindata.UserName
+                // this.PassWord = logindata.PassWord
             }
             this.getOrganization()
             this.getDataBases()
@@ -227,15 +231,22 @@
                         title: '鐧诲綍涓�...',
                         mask: true
                     })
-                    var data = {
-                        UserName: this.UserName,
-                        PassWord: this.PassWord,
-                        HOrgName: this.HOrgName,
-                        Organization: this.Organization
+                    var data = 
+                    {
+                        HUserNumber: this.UserName,
+                        HPassWord: this.PassWord,
+                        HStockOrgID: this.HOrgName,
+                        HStockOrgName: this.Organization
                     }
+                    
+                    //     UserName: this.UserName,
+                    //     PassWord: this.PassWord,
+                    //     HOrgName: this.HOrgName,
+                    //     Organization: this.Organization
+                    // }
                     uni.setStorageSync('loginData', JSON.stringify(data));
                     uni.request({
-                        url: this.serverUrl + '/Web/GetUser',
+                        url: this.serverUrl + 'WEBSController/GetUser_Json',
                         method: 'GET',
                         data: data,
                         success: (res) => {
@@ -269,6 +280,42 @@
                             })
                         },
                     });
+                    
+                    // uni.request({
+                    //     url: this.serverUrl + '/Web/GetUser',
+                    //     method: 'GET',
+                    //     data: data,
+                    //     success: (res) => {
+                    //         console.log(res)
+                    //         uni.hideLoading()
+                    //         uni.showToast({
+                    //             title: res.data.Message,
+                    //             icon: 'none'
+                    //         })
+                    //         if (res.data.count == 1) {
+                    //             setLoginData(data)
+                    //             setUserInfo(res.data.data[0])
+                    //             uni.setStorageSync('HUserName', res.data.data[0].Czymc);
+                    //             uni.setStorageSync('HBillerID', res.data.data[0].HK3UserID);
+                    //             uni.setStorageSync('SourceFlag', false);
+                    //             uni.setStorageSync('login', "login");
+                    //             uni.setStorageSync('Organization', this.Organization);
+                    //             uni.setStorageSync('OrganizationID', this.HOrgName);
+                    //             this.CommonUtils.setServerUrl(this.serverUrl)
+                    //             uni.reLaunch({
+                    //                 url: '/pages/index/index'
+                    //             })
+                    //         }
+                    //     },
+                    //     fail: (res) => {
+                    //         console.log(res);
+                    //         uni.hideLoading()
+                    //         uni.showToast({
+                    //             title: '鎺ュ彛璇锋眰澶辫触',
+                    //             icon: 'none'
+                    //         })
+                    //     },
+                    // });
                 }
             }
         }
diff --git a/pages/index/tab2.vue b/pages/index/tab2.vue
index bd6711b..ee45109 100644
--- a/pages/index/tab2.vue
+++ b/pages/index/tab2.vue
@@ -287,17 +287,59 @@
 					url: '/pages/MJGL/xiamodan/table',
 					id: 36,
 					hidden: false,
-				}, {
+				},
+                {
+                	img: '../../static/icon/icon13.png',
+                	text: '鍣ㄥ叿鏁呴殰鐧昏',
+                	url: '/pages/qijvguzhangdengji/table',
+                	id: 37,
+                	hidden: false,
+                },
+                {
+                	img: '../../static/icon/icon13.png',
+                	text: '鍣ㄥ叿鏁呴殰鐧昏鍗�',
+                	url: '/pages/qijvguzhangdengji/form?operationType=1',
+                	id: 38,
+                	hidden: false,
+                },
+                {
+                	img: '../../static/icon/icon13.png',
+                	text: '缁翠慨璁板綍',
+                	url: '/pages/weixiujilu/table',
+                	id: 39,
+                	hidden: false,
+                },
+                {
+                	img: '../../static/icon/icon13.png',
+                	text: '缁翠慨璁板綍鍗�',
+                	url: '/pages/weixiujilu/form',
+                	id: 40,
+                	hidden: false,
+                },
+                {
+                	img: '../../static/icon/icon13.png',
+                	text: '棣栦欢妫�楠屽崟缂撳瓨',
+                	url: '/pages/ZLGL/shoujianjianyan/table',
+                	id: 41,
+                	hidden: false,
+                },
+                {
+                	img: '../../static/icon/icon13.png',
+                	text: '棣栦欢妫�楠屽崟',
+                	url: '/pages/ZLGL/shoujianjianyan/form?operationType=1',
+                	id: 42,
+                	hidden: false,
+                }, {
 					img: '../../static/icon/icon5.png',
 					text: '妯″叿鐐规璁板綍鍗�',					
 					url: '/pages/MJGL/mujudianjianjiludan/table',
-					id: 37,
+					id: 43,
 					hidden: false,
 				}, {
 					img: '../../static/icon/icon5.png',
 					text: '妯″叿淇濆吇璁板綍鍗�',					
 					url: '/pages/MJGL/mujubaoyangjiludan/table',
-					id: 38,
+					id: 44,
 					hidden: false,
 				}
 				]
diff --git a/pages/jishikucunchaxun/table.vue b/pages/jishikucunchaxun/table.vue
index fc27cca..61a0534 100644
--- a/pages/jishikucunchaxun/table.vue
+++ b/pages/jishikucunchaxun/table.vue
@@ -1,362 +1,409 @@
 <template>
-	<view class="page" id="pageContent">
-		<view class="search-condition-zone">
-			<view class="form-item">
-				<view class="left">
-					鏉$爜:
-				</view>
-				<view class="right general">
-					<input type="text" v-model="hform.HBarCode" />
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="left">
-					浠撳簱:
-				</view>
-				<view class="right general">
-					<uni-combox :candidates="arrayHWHName" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撳簱" v-model="hform.HWHName"
-						@input="onArrayHWHNameChangeHandler"></uni-combox>
-				</view>
-			</view>
-			<view class="form-item">
-				<view class="left">
-					浠撲綅:
-				</view>
-				<view class="right general" v-show="HIsStockMgr">
-					<uni-combox :candidates="arrayHStockPlaceName" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撲綅"
-						v-model="hform.HStockPlaceName" @input="onArrayHStockPlaceNameChangeHandler"></uni-combox>
-				</view>
-				<view class="right disabled" v-show="!HIsStockMgr">
-					<input v-model="hform.HStockPlaceName" :disabled="!HIsStockMgr" placeholder="涓嶅彲鎿嶄綔" />
-				</view>
-			</view>
-		</view>
-		<view class="button-zone">
-			<button type="default" class="btn-a" size="mini" @tap="cmdSearch">鏌ヨ</button>
-			<button type="default" class="btn-c" size="mini" @tap="exit">閫�鍑�</button>
-		</view>
-		<view class="info-list-zone">
-			<view class="card-item" v-for="(item, index) in listDataShow">
-				<uni-card :title="item['鐗╂枡浠g爜']" :extra="'鏁伴噺: ' + item['鏁伴噺']" note="Tips">
-					<view class="card-detail">
-						<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['杈呭姪灞炴��']}}
-						</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>
-				</uni-card>
-			</view>
-		</view>
-		<view class="pagination-zone">
-			<uni-pagination show-icon :page-size="paginationMeta.pageSize" :total="paginationMeta.total" :current="paginationMeta.current"
-				@change="onPaginationChangeHandler"></uni-pagination>
-		</view>
-	</view>
+    <view class="page" id="pageContent">
+        <view class="search-condition-zone">
+            <view class="form-item">
+                <view class="left">
+                    鏉$爜:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HBarCode" />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    浠撳簱:
+                </view>
+                <view class="right general">
+                    <uni-combox :candidates="arrayHWHName" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撳簱" v-model="hform.HWHName"
+                        @input="onArrayHWHNameChangeHandler"></uni-combox>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    浠撲綅:
+                </view>
+                <view class="right general" v-show="HIsStockMgr">
+                    <uni-combox :candidates="arrayHStockPlaceName" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撲綅"
+                        v-model="hform.HStockPlaceName" @input="onArrayHStockPlaceNameChangeHandler"></uni-combox>
+                </view>
+                <view class="right disabled" v-show="!HIsStockMgr">
+                    <input v-model="hform.HStockPlaceName" :disabled="!HIsStockMgr" placeholder="涓嶅彲鎿嶄綔" />
+                </view>
+            </view>
+        </view>
+        <view class="button-zone">
+            <button type="default" class="btn-a" size="mini" @tap="cmdSearch">鏌ヨ</button>
+            <button type="default" class="btn-c" size="mini" @tap="exit">閫�鍑�</button>
+        </view>
+        <view class="info-list-zone" id="scroll-content" :style="{height: scrollContentHeight + 'px'}">
+            <view class="card-item" v-for="(item, index) in listDataShow">
+                <uni-card :title="item['鐗╂枡浠g爜']" :extra="'鏁伴噺: ' + item['鏁伴噺']" note="Tips">
+                    <view class="card-detail">
+                        <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['杈呭姪灞炴��']}}
+                        </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>
+                </uni-card>
+            </view>
+        </view>
+        <view class="pagination-zone" id="pagination-zone">
+            <uni-pagination show-icon :page-size="paginationMeta.pageSize" :total="paginationMeta.total"
+                :current="paginationMeta.current" @change="onPaginationChangeHandler"></uni-pagination>
+        </view>
+    </view>
 </template>
 
 <script>
-	import {
-		CommonUtils
-	} from '../../utils/common'
-	import {
-		getUserInfo
-	} from '../../utils/auth'
-	export default {
-		data() {
-			return {
-				navHeight: 0,
-				HWHNameList: [],
-				arrayHWHName: [],
-				HStockPlaceNameList: [],
-				arrayHStockPlaceName: [],
-				HIsStockMgr: false,
-				scrollTop: 0,
-				
-				hform: {
-					HBarCode: '',
-					HWHName: '',
-					HWHID: 0,
-					HStockPlaceName: '',
-					HStockPlaceID: 0,
-				},
+    import {
+        CommonUtils
+    } from '../../utils/common'
+    import {
+        getUserInfo
+    } from '../../utils/auth'
+    export default {
+        data() {
+            return {
+                navHeight: 0,
+                HWHNameList: [],
+                arrayHWHName: [],
+                HStockPlaceNameList: [],
+                arrayHStockPlaceName: [],
+                HIsStockMgr: false,
+                scrollTop: 0,
 
-				paginationMeta: {
-					current: 1,
-					total: 0,
-					pageSize: 30,
-				},
+                hform: {
+                    HBarCode: '',
+                    HWHName: '',
+                    HWHID: 0,
+                    HStockPlaceName: '',
+                    HStockPlaceID: 0,
+                },
 
-				listData: [],
-				listDataShow: [],
-			}
-		},
-		methods: {
-			exit() {
-				uni.navigateBack()
-			},
-			onArrayHWHNameChangeHandler(e) {
-				let index = this.HWHNameList.findIndex(p => p.HName == e)
-				if (index != -1) {
-					this.hform.HWHID = this.HWHNameList[index].HItemID
-					this.HIsStockMgr = this.HWHNameList[index].HIsStockMgr
-				}
-			},
-			getWHInfo() {
-				CommonUtils.doRequest(
-					"/Web/GetWarehouseList_Json_New", {
-						Warehouse: "",
-						HOrgID: uni.getStorageSync('OrganizationID')
-					},
-					(res) => {
-						let res1 = res.data
-						let {
-							data,
-							count
-						} = res1
-						if (count == 1) {
-							this.HWHNameList = data
-							for (var i = 0; i < data.length; i++) {
-								this.arrayHWHName[i] = data[i]["HName"]
-							}
-						} else {
-							uni.showToast({
-								title: '浠撳簱鏁版嵁璇锋眰澶辫触',
-								icon: 'none'
-							})
-						}
-					},
-				)
-			},
-			onArrayHStockPlaceNameChangeHandler() {
-				let index = this.HStockPlaceNameList.findIndex(p => p.HName == e)
-				if (index != -1) {
-					this.hform.HStockPlaceID = this.HStockPlaceNameList[index].HItemID
-				}
-			},
-			getStockPlaceInfo() {
-				CommonUtils.doRequest(
-					"/WEBSController/GetStockPlaceList_Json", {
-						StockPlace: '',
-						HWhID: this.hform.HWHID,
-						HStockOrgID: uni.getStorageSync('OrganizationID')
-					},
-					(res) => {
-						let res1 = res.data
-						console.log(res1)
-						let {
-							data,
-							count
-						} = res1
-						if (count == 1) {
-							this.HStockPlaceNameList = data
-							for (var i = 0; i < data.length; i++) {
-								this.arrayHStockPlaceName[i] = data[i]["HWhName"]
-							}
-						} else {
-							uni.showToast({
-								title: '浠撲綅鏁版嵁璇锋眰澶辫触',
-								icon: 'none'
-							})
-						}
-					},
-				)
-			},
-			cmdSearch() {
-				if (this.hform.HWHName == '') {
-					this.hform.HWHID = 0
-				}
+                paginationMeta: {
+                    current: 1,
+                    total: 0,
+                    pageSize: 30,
+                },
 
-				if (this.hform.HStockPlaceName == '') {
-					this.hform.HStockPlaceID = 0
-				}
+                pageMeta: {
+                    scrollContentTop: 0,
+                    bottomBtnTop: 0,
+                },
 
-				CommonUtils.doRequest2({
-					url: '/KF_ICInventoryByMaterID/GetBillEntry_TmpList_Pack1',
-					data: {
-						"HBarCode": this.hform.HBarCode,
-						"sHWHID": this.hform.HWHID,
-						"sHSPID": this.hform.HStockPlaceID,
-						"HOWNERID": uni.getStorageSync('OrganizationID'),
-						"sWhere": ''
-					},
-					resFunction: (res) => {
-						let {
-							data,
-							count,
-							Message
-						} = res.data
-						if (count > 0) {
-							this.listData = data
-							this.paginationMeta.total = data.length
-							this.onPaginationChangeHandler({
-								current: 1
-							})
-						} else {
-							uni.showToast({
-								icon: 'none',
-								title: Message
-							})
-						}
-					}
-				})
-			},
-			async onPaginationChangeHandler({
-				current
-			}) {
-				this.listDataShow =
-					this.listData.slice((current - 1) * this.paginationMeta.pageSize,
-						current * this.paginationMeta.pageSize)
-				
-			}
-		},
-		onLoad() {
-			this.getWHInfo()
-			this.getStockPlaceInfo()
+                listData: [],
+                listDataShow: [],
+            }
+        },
+        computed: {
+            scrollContentHeight: {
+                get() {
+                    return this.pageMeta.bottomBtnTop - this.pageMeta.scrollContentTop
+                }
+            }
+        },
+        methods: {
+            exit() {
+                uni.navigateBack()
+            },
+            onArrayHWHNameChangeHandler(e) {
+                let index = this.HWHNameList.findIndex(p => p.HName == e)
+                if (index != -1) {
+                    this.hform.HWHID = this.HWHNameList[index].HItemID
+                    this.HIsStockMgr = this.HWHNameList[index].HIsStockMgr
+                }
+            },
+            getWHInfo() {
+                CommonUtils.doRequest(
+                    "/Web/GetWarehouseList_Json_New", {
+                        Warehouse: "",
+                        HOrgID: uni.getStorageSync('OrganizationID')
+                    },
+                    (res) => {
+                        let res1 = res.data
+                        let {
+                            data,
+                            count
+                        } = res1
+                        if (count == 1) {
+                            this.HWHNameList = data
+                            for (var i = 0; i < data.length; i++) {
+                                this.arrayHWHName[i] = data[i]["HName"]
+                            }
+                        } else {
+                            uni.showToast({
+                                title: '浠撳簱鏁版嵁璇锋眰澶辫触',
+                                icon: 'none'
+                            })
+                        }
+                    },
+                )
+            },
+            onArrayHStockPlaceNameChangeHandler() {
+                let index = this.HStockPlaceNameList.findIndex(p => p.HName == e)
+                if (index != -1) {
+                    this.hform.HStockPlaceID = this.HStockPlaceNameList[index].HItemID
+                }
+            },
+            getStockPlaceInfo() {
+                CommonUtils.doRequest(
+                    "/WEBSController/GetStockPlaceList_Json", {
+                        StockPlace: '',
+                        HWhID: this.hform.HWHID,
+                        HStockOrgID: uni.getStorageSync('OrganizationID')
+                    },
+                    (res) => {
+                        let res1 = res.data
+                        console.log(res1)
+                        let {
+                            data,
+                            count
+                        } = res1
+                        if (count == 1) {
+                            this.HStockPlaceNameList = data
+                            for (var i = 0; i < data.length; i++) {
+                                this.arrayHStockPlaceName[i] = data[i]["HWhName"]
+                            }
+                        } else {
+                            uni.showToast({
+                                title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                                icon: 'none'
+                            })
+                        }
+                    },
+                )
+            },
+            cmdSearch() {
+                if (this.hform.HWHName == '') {
+                    this.hform.HWHID = 0
+                }
 
-			this.$nextTick(() => {
-				this.cmdSearch()
-			})
-		}
-	}
+                if (this.hform.HStockPlaceName == '') {
+                    this.hform.HStockPlaceID = 0
+                }
+
+                CommonUtils.doRequest2({
+                    url: '/KF_ICInventoryByMaterID/GetBillEntry_TmpList_Pack1',
+                    data: {
+                        "HBarCode": this.hform.HBarCode,
+                        "sHWHID": this.hform.HWHID,
+                        "sHSPID": this.hform.HStockPlaceID,
+                        "HOWNERID": uni.getStorageSync('OrganizationID'),
+                        "sWhere": ''
+                    },
+                    resFunction: (res) => {
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count > 0) {
+                            this.listData = data
+                            this.paginationMeta.total = data.length
+                            this.onPaginationChangeHandler({
+                                current: 1
+                            })
+                        } else {
+                            uni.showToast({
+                                icon: 'none',
+                                title: Message
+                            })
+                        }
+                    }
+                })
+            },
+            async onPaginationChangeHandler({
+                current
+            }) {
+                this.listDataShow =
+                    this.listData.slice((current - 1) * this.paginationMeta.pageSize,
+                        current * this.paginationMeta.pageSize)
+
+            }
+        },
+        onLoad() {
+            this.getWHInfo()
+            this.getStockPlaceInfo()
+
+            this.$nextTick(() => {
+                this.cmdSearch()
+            })
+        },
+        onReady() {
+            // #ifndef MP-WEIXIN
+            let query = uni.createSelectorQuery().in(this)
+            query.select("#scroll-content").boundingClientRect((data) => {
+                this.pageMeta.scrollContentTop = data.top
+                console.log("this.pageMeta.scrollContentTop: ", this.pageMeta.scrollContentTop)
+            }).exec()
+            query.select("#pagination-zone").boundingClientRect((data) => {
+                this.pageMeta.bottomBtnTop = data.top
+                console.log('this.pageMeta.bottomBtnTop: ',this.pageMeta.bottomBtnTop);
+            }).exec()
+            // #endif
+            // #ifdef MP-WEIXIN
+            // 寰俊涓嶆敮鎸� uni.createSelectorQuery().in(this)
+            // #endif
+
+        },
+    }
 </script>
 
 <style lang="scss" scoped>
-	.page {
-		height: calc(100vh - 44px);
-		box-sizing: border-box;
-		padding: 20rpx 10rpx;
-		display: flex;
-		flex-direction: column;
-		gap: 10rpx;
-		position: relative;
+    .page {
+        box-sizing: border-box;
+        display: flex;
+        flex-direction: column;
+        gap: 10rpx;
+        padding: 20rpx 0;
+        position: relative;
 
-		.button-zone {
-			height: auto;
-			box-sizing: border-box;
-			padding-top: 20rpx;
-			display: flex;
-			flex-direction: row;
-			justify-content: space-between;
-			flex-wrap: wrap;
+        .button-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding-top: 20rpx;
+            display: flex;
+            flex-direction: row;
+            justify-content: space-between;
+            flex-wrap: wrap;
 
-			button {
-				border-radius: 50rpx;
-				width: 180rpx;
-				height: 66rpx;
-				line-height: 66rpx;
-				font-size: 28rpx;
-			}
+            button {
+                border-radius: 50rpx;
+                width: 180rpx;
+                height: 66rpx;
+                line-height: 66rpx;
+                font-size: 28rpx;
+            }
 
-			.btn-a {
-				background-color: #3a78ff;
-				color: #fff;
-			}
+            .btn-a {
+                background-color: #3a78ff;
+                color: #fff;
+            }
 
-			.btn-c {
-				background-color: #ff5722;
-				color: #fff;
-			}
-		}
+            .btn-c {
+                background-color: #ff5722;
+                color: #fff;
+            }
+        }
 
-		.search-condition-zone {
-			height: auto;
-			box-sizing: border-box;
-			padding: 0 60rpx;
-			display: flex;
-			flex-direction: column;
-			gap: 20rpx;
+        .search-condition-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding: 0 60rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
 
-			.form-item {
-				display: flex;
-				flex-direction: row;
-				gap: 20rpx;
-				align-items: center;
+            .form-item {
+                display: flex;
+                flex-direction: row;
+                gap: 20rpx;
+                align-items: center;
+                font-size: 28rpx;
 
-				.left {
-					width: 4rem;
-				}
+                .left {
+                    width: 4rem;
+                }
 
-				.right {
-					flex: 1;
-					padding: 8rpx 16rpx;
+                .right {
+                    flex: 1;
+                    padding: 8rpx 16rpx;
 
-					.search {
-						width: 32rpx;
-						height: 32rpx;
-					}
-				}
+                    .search {
+                        width: 28rpx;
+                        height: 28rpx;
+                    }
 
-				.general {
-					border-radius: 22rpx;
-					border: 1px solid #acacac;
-				}
+                    input {
+                        font-size: 28rpx;
+                    }
 
-				.disabled {
-					border-radius: 22rpx;
-					border: 1px solid #e4e4e4;
-					background-color: #e4e4e4;
-				}
+                    .uni-combox {
+                        padding: 0;
+                        margin: 0;
 
-				.uni-combox {
-					box-sizing: border-box;
-					padding: 0;
-				}
-			}
-		}
+                        ::v-deep .uni-combox__input {
+                            font-size: 28rpx;
+                            height: auto;
+                        }
+                    }
+                }
 
-		.info-list-zone {
-			flex: 1;
-			overflow-y: auto;
+                .general {
+                    border-radius: 22rpx;
+                    border: 1px solid #acacac;
+                }
 
-			.card-item {
-				.card-detail {
-					width: 100%;
-					display: flex;
-					flex-wrap: wrap;
-					justify-content: space-between;
-					line-height: 120%;
+                .disabled {
+                    border-radius: 22rpx;
+                    border: 1px solid #e4e4e4;
+                    background-color: #e4e4e4;
+                }
+            }
+        }
 
-					.detail {
-						// width: 50%;
-						font-size: 26rpx;
-						margin-bottom: 12rpx;
-						color: #555;
-						margin-right: 20rpx;
+        .info-list-zone {
+            overflow-y: auto;
 
-						text {
-							color: #999;
-							font-size: 26rpx;
-						}
-					}
-				}
-			}
-		}
+            .card-item {
+                .card-detail {
+                    width: 100%;
+                    display: flex;
+                    flex-wrap: wrap;
+                    justify-content: space-between;
+                    line-height: 120%;
 
-		.pagination-zone {
-			height: 80rpx;
-		}
-	}
+                    .detail {
+                        // width: 50%;
+                        font-size: 26rpx;
+                        margin-bottom: 12rpx;
+                        color: #555;
+                        margin-right: 20rpx;
+
+                        text {
+                            color: #999;
+                            font-size: 26rpx;
+                        }
+                    }
+                }
+            }
+        }
+
+        .pagination-zone {
+            position: fixed;
+            bottom: 0;
+            box-sizing: border-box;
+            background-color: #fff;
+            box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+            padding: 30rpx 40rpx 40rpx 40rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+            justify-content: space-between;
+            width: 100%;
+        }
+    }
 </style>
\ No newline at end of file
diff --git a/pages/qijvguzhangdengji/form.vue b/pages/qijvguzhangdengji/form.vue
new file mode 100644
index 0000000..f895ca5
--- /dev/null
+++ b/pages/qijvguzhangdengji/form.vue
@@ -0,0 +1,1502 @@
+<template>
+    <view>
+        <view class="form">
+            <view class="tabs">
+                <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+                <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鍏朵粬淇℃伅</view>
+            </view>
+
+            <view v-if="tabs == 0">
+                <view class="form-item">
+                    <view class="title">妯″叿鏉$爜</view>
+                    <view class="right" :class="barcodeReadOnly?'readonly':''">
+                        <input type="text" :disabled="barcodeReadOnly" :focus="barCodeFocus" v-model="hform.HBarCode"
+                            @confirm="getHBarCodeData(hform.HBarCode)" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏁呴殰鍙戠敓鏃ユ湡</view>
+
+                    <view class="right">
+                        <uni-datetime-picker type="date">
+                            <view style="font-size: 30rpx;">{{hform.HConkBeginDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">鏁呴殰绫诲埆</view>
+                    <view class="right">
+                        <uni-combox :candidates="ConkTypeNameList" placeholder="璇烽�夋嫨鏁呴殰绫诲埆" v-model="hform.HConkTypeName"
+                            @input="ConkTypeNameChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">鏁呴殰鍘熷洜</view>
+                    <view class="right">
+                        <uni-combox :candidates="ConkReasonNameList" placeholder="璇烽�夋嫨鏁呴殰鍘熷洜"
+                            v-model="hform.HConkReasonName" @input="ConkReasonChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏁呴殰鎻忚堪</view>
+                    <view class="right">
+                        <textarea value="" style="height: 6em;" maxlength="2000" placeholder="璇疯緭鍏ユ晠闅滄弿杩�..." />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�</view>
+                    <view class="right">
+                        <input name="HInterID" v-model="hform.HBillNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鏃ユ湡</view>
+                    <view class="right">
+                        <uni-datetime-picker type="date">
+                            <view style="font-size: 30rpx;">{{hform.HDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">閮ㄩ棬</view>
+                    <view class="right">
+                        <uni-combox :candidates="DeptNameList" placeholder="璇烽�夋嫨閮ㄩ棬" v-model="hform.HDeptName"
+                            @input="DeptChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">鍙戠幇浜�</view>
+                    <view class="right">
+                        <uni-combox :candidates="EmpNameList" placeholder="璇烽�夋嫨鍙戠幇浜�" v-model="hform.HEmpName"
+                            @input="EmpChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">璐熻矗浜�</view>
+                    <view class="right">
+                        <uni-combox :candidates="EmpNameList" placeholder="璇烽�夋嫨璐熻矗浜�" v-model="hform.HManagerName"
+                            @input="ManagerChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿鍚嶇О</view>
+                    <view class="righton">
+                        <input disabled type="text" placeholder="璇疯緭鍏ュ櫒鍏峰悕绉�" v-model="hform.HBarName" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿瑙勬牸</view>
+                    <view class="righton">
+                        <input disabled type="text" placeholder="璇疯緭鍏ュ櫒鍏疯鏍�" v-model="hform.HBarSpec" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿鍨嬪彿</view>
+                    <view class="righton">
+                        <input disabled type="text" placeholder="璇疯緭鍏ュ櫒鍏峰瀷鍙�" v-model="hform.HBarModel" />
+                    </view>
+                </view>
+            </view>
+
+            <view v-if="tabs == 1">
+                <view class="form-item">
+                    <view class="title">鍒涘缓浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HMaker" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍒涘缓鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HMakeDate" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HUpDater" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HUpDateDate" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HChecker" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HCheckDate" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HDeleteMan" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HDeleteDate" disabled />
+                    </view>
+                </view>
+            </view>
+
+            <view class="bottom-btn">
+                <button :class="EnableSave?'btn-a':'btn-c'" :disabled="!EnableSave" 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>
+        </view>
+        <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+    </view>
+</template>
+<script>
+    import getDateTime from '@/utils/getdateTime.js';
+    import {
+        getUserInfo
+    } from "@/utils/auth.js";
+    import {
+        CommonUtils
+    } from '../../utils/common';
+    import {
+        getUserStockRelation
+    } from '../../utils/userRelationManager';
+    import BillListPopupVue from '../../components/BillListPopup/BillListPopup.vue';
+    import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+    import BillSelectPopupXiaoWeiVue from '../../components/BillSelectPopupXiaoWei/BillSelectPopupXiaoWei.vue';
+    import dayjs from 'dayjs';
+    export default {
+        components: {
+            BillListPopupVue,
+            BarCodePopupVue,
+            BillSelectPopupXiaoWeiVue
+        },
+
+        data() {
+            return {
+                HSourceBillNoFocus: false,
+
+                userInfo: getUserInfo(),
+                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+                HModName: 'Kf_POStockInBackBill_PDA',
+                ModRightName: 'CE_POStockInBack',
+                OperationType: 1,
+                HInterID_Temp: '',
+
+                showHStockPlaceName: false,
+                showHMainSourceBillType: true,
+                showHSourceBillNo: true,
+                reHSourceBillNo: true,
+                showHSupName: true,
+                barCodeFocus: false,
+                barcodeReadOnly: false,
+                EnableSave: true, // 鏄惁鍚敤淇濆瓨
+
+
+                tabs: 0,
+
+                HBarCode: '',
+                linterid: '',
+                HBillNo: '',
+                btnType: 0, //0鏂板锛�1淇敼锛�2瀹℃牳锛�3鍙嶅鏍�
+                showmore: false,
+
+                materMeta: [],
+                Materlist: [],
+
+                // 鏁呴殰绫诲埆鍒楄〃
+                ConkTypeNameList: [],
+                ConkTypeList: [],
+                // 鏁呴殰鍘熷洜鍒楄〃
+                ConkReasonNameList: [],
+                ConkReasonList: [],
+                // 閮ㄩ棬鍒楄〃
+                DeptNameList: [],
+                DeptList: [],
+                // 鑱屽憳鍒楄〃(鍚屾椂浣滀负鍙戠幇浜哄拰璐熻矗浜虹殑鍙�夋嫨瀵硅薄)
+                EmpNameList: [],
+                EmpList: [],
+                // 鎻愪氦鏁版嵁
+                hform: {
+                    "HBarCode": "",
+                    "HConkBeginDate": dayjs(new Date()).format("YYYY-MM-DD hh:mm:ss"),
+                    "HConkTypeName": "",
+                    "HConkTypeID": "0",
+                    "HConkReasonName": "",
+                    "HConkReasonID": "0",
+                    "HExplanation": "",
+                    "HBillNo": "",
+                    "HInterID": "0",
+                    "HDate": dayjs(new Date()).format("YYYY-MM-DD hh:mm:ss"),
+                    "HDeptName": getUserInfo()["HDeptName"],
+                    "HDeptID": getUserInfo()["HDeptID"],
+                    "HEmpName": "",
+                    "HEmpID": "0",
+                    "HManagerName": "",
+                    "HManagerID": "0",
+                    "HBarName": "",
+                    "HMouldID": "0",
+                    "HBarSpec": "",
+                    "HBarModel": "",
+                    "HMaker": getUserInfo()["Czymc"],
+                    "HMakeDate": dayjs(new Date()).format("YYYY-MM-DD hh:mm:ss"),
+                    "HUpDater": "",
+                    "HUpDateDate": "",
+                    "HChecker": "",
+                    "HCheckDate": "",
+                    "HDeleteMan": "",
+                    "HDeleteDate": "",
+                    "lngBillKey": "",
+                    "lngBillSubKey": "",
+                    "HBillType": 3815,
+
+                }
+            }
+        },
+        computed: {
+
+
+        },
+        async onLoad(e) {
+            console.log(e, this.userInfo)
+            this.OperationType = e.OperationType
+            if (e.HInterID) {
+                this.HInterID_Temp = e.HInterID
+                // this.btnType = 1
+                this.RoadBillMain(e.HInterID)
+                this.barCodeFocus = true
+            } else {
+                this.getNewData()
+                this.HSourceBillNoFocus = true
+                this.refreshBarCodeState()
+            }
+
+            this.InitConkType()
+            this.InitConkReason()
+            this.InitDept()
+            this.InitEmp()
+        },
+        methods: {
+            // 鏁呴殰绫诲埆
+            async InitConkType() { // 鍒濆鍖栨晠闅滅被鍒�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_ConkType/List_PDA',
+                        data: {
+                            sWhere: '',
+                            user: getUserInfo()['Czymc']
+                        }
+                    })
+                    let {
+                        count,
+                        code,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        this.ConkTypeList = data
+                        this.ConkTypeNameList = Array.from(data).map(elem => elem['鏁呴殰绫诲埆鍚嶇О'])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '閿欒鎻愮ず',
+                            message: "鍒濆鍖栨晠闅滅被鍨嬮敊璇�: " + Message,
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '閿欒鎻愮ず',
+                        message: "鍒濆鍖栨晠闅滅被鍨嬮敊璇�: " + err,
+                    })
+                }
+            },
+            ConkTypeNameChange(elem) { // 鏁呴殰绫诲埆鏀瑰彉 鍙ユ焺
+                let index = this.ConkTypeNameList.findIndex(e => e == elem)
+                if (index == -1) {
+                    this.hform.HConkTypeName = ''
+                    this.hform.HConkTypeID = 0
+                    return
+                }
+
+                this.hform.HConkTypeName = this.ConkTypeList[index]['鏁呴殰绫诲埆鍚嶇О']
+                this.hform.HConkTypeID = this.ConkTypeList[index]['hitemid']
+
+            },
+
+            // 鏁呴殰鍘熷洜
+            async InitConkReason() { // 鍒濆鍖栨晠闅滃師鍥�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/PublicPageMethod/Gy_ConkReasonList_PDA',
+                        data: {
+                            sWhere: '',
+                        }
+                    })
+                    let {
+                        count,
+                        code,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        this.ConkReasonList = data
+                        this.ConkReasonNameList = Array.from(data).map(elem => elem['HName'])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '閿欒鎻愮ず',
+                            message: "鍒濆鍖栨晠闅滃師鍥犻敊璇�: " + Message,
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '閿欒鎻愮ず',
+                        message: "鍒濆鍖栨晠闅滃師鍥犻敊璇�: " + err,
+                    })
+                }
+            },
+            ConkReasonChange(elem) { // 鏁呴殰鍘熷洜鏀瑰彉 鍙ユ焺
+                let index = this.ConkReasonNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HConkReasonName = ''
+                    this.hform.HConkReasonID = 0
+                    return
+                }
+
+                this.hform.HConkReasonName = this.ConkReasonList[index]['HName']
+                this.hform.HConkReasonID = this.ConkReasonList[index]['HItemID']
+            },
+
+            // 閮ㄩ棬
+            async InitDept() { // 鍒濆鍖栭儴闂�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/PublicPageMethod/DeptList',
+                        data: {
+                            sWhere: 'where 1=1',
+                        }
+                    })
+                    let {
+                        count,
+                        code,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        this.DeptList = data
+                        this.DeptNameList = Array.from(data).map(elem => elem['HName'])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '閿欒鎻愮ず',
+                            message: "鍒濆鍖栭儴闂ㄩ敊璇�: " + Message,
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '閿欒鎻愮ず',
+                        message: "鍒濆鍖栭儴闂ㄩ敊璇�: " + err,
+                    })
+                }
+            },
+            DeptChange(elem) { // 閮ㄩ棬鏀瑰彉 鍙ユ焺
+                let index = this.DeptNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HDeptName = ''
+                    this.hform.HDeptID = 0
+                    return
+                }
+
+                this.hform.HDeptName = this.DeptList[index]['HName']
+                this.hform.HDeptID = this.DeptList[index]['HItemID']
+            },
+
+            // 鑱屽憳
+            async InitEmp() { // 鍒濆鍖栬亴鍛�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetEmployeeList_Json',
+                        data: {
+                            Employee: '',
+                            HGroupID: 0,
+                        }
+                    })
+                    let {
+                        count,
+                        code,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        this.EmpList = data
+                        this.EmpNameList = Array.from(data).map(elem => elem['HName'])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '閿欒鎻愮ず',
+                            message: "鍒濆鍖栬亴鍛橀敊璇�: " + Message,
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '閿欒鎻愮ず',
+                        message: "鍒濆鍖栬亴鍛橀敊璇�: " + err,
+                    })
+                }
+            },
+            EmpChange(elem) { // 鍙戠幇浜烘洿鏀�
+                let index = this.EmpNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HEmpName = ''
+                    this.hform.HEmpID = 0
+                    return
+                }
+
+                this.hform.HEmpName = this.EmpList[index]['HName']
+                this.hform.HEmpID = this.EmpList[index]['HItemID']
+            },
+            ManagerChange(elem) { // 璐熻矗浜烘洿鏀�
+                let index = this.EmpNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HManagerName = ''
+                    this.hform.HManagerID = 0
+                    return
+                }
+
+                this.hform.HManagerName = this.EmpList[index]['HName']
+                this.hform.HManagerID = this.EmpList[index]['HItemID']
+            },
+
+            async qrCodeDisplay() {
+                try {
+                    this.$refs.barcodePopup.setCodeInfo(this.hform.HBillNo)
+                    await this.$nextTick()
+                    this.$refs.barcodePopup.open()
+                } catch (err) {
+                    uni.showToast({
+                        icon: 'none',
+                        title: err
+                    })
+                }
+            },
+            async refreshBarCodeState() {
+                this.barCodeFocus = false
+                await this.$nextTick(() => {
+                    this.hform.HBarCode = ""
+                    this.barCodeFocus = true
+                })
+            },
+            playSound(e) {
+                const innerAudioContext = uni.createInnerAudioContext();
+                if (e == 1) {
+                    innerAudioContext.src = '/static/success.wav';
+                } else {
+                    innerAudioContext.src = '/static/jingbao.wav';
+                }
+                innerAudioContext.play(); // 鎾斁闊抽
+            },
+            //鎵爜
+            toScanCode() {
+                var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
+                mpaasScanModule.mpaasScan({
+                    'hideAlbum': true,
+                    'timeoutInterval': '10', //瓒呮椂鏃堕棿
+                    'timeoutText': '鏈瘑鍒埌浜岀淮鐮�' //瓒呮椂鎻愰啋            
+                }, (ret) => {
+                    console.log(ret.resp_result)
+                    if (this.hform.HBarCode == '*') {
+                        this.hform.HBarCode = this.hform.HBarCode + ret.resp_result
+                    } else {
+                        this.hform.HBarCode = ret.resp_result
+                    }
+
+                    this.getHBarCodeData(this.hform.HBarCode)
+                })
+            },
+            //鏃ユ湡
+            HDateChange(e) {
+                console.log(e.detail.value)
+                this.hform.HDate = e.detail.value
+            },
+
+            // 鎵弿鏉$爜
+            async getHBarCodeData(HBarCode) {
+                if (!HBarCode) {
+                    CommonUtils.showTips({
+                        message: '鏉″舰鐮佷笉鑳戒负绌�'
+                    })
+                    return
+                }
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/QJ_PDA_MouldDotCheckBill/txtHBarCode_KeyDown',
+                        data: {
+                            "HBarCode": HBarCode
+                        }
+                    })
+
+                    let {
+                        count,
+                        data,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.hform.HMouldID = data[0].HInterID
+                        this.hform.HBarName = data[0].HName
+                        this.hform.HBarSpec = data[0].HModels
+                        this.hform.HBarModel = data[0].HModel2
+                        this.barcodeReadOnly = true
+                    } else {
+                        this.refreshBarCodeState()
+                        return CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    this.refreshBarCodeState()
+                    return CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: "鎺ュ彛璇锋眰澶辫触" + err
+                    })
+                }
+
+            },
+            //鎵潯鐮佸鐞�
+            async getCode(HBarCode) {
+                //浠撳簱銆佷粨浣嶆枃鏈涓虹┖鏃讹紝娓呯┖瀵瑰簲ID
+                if (!this.hform.HWHName) {
+                    this.hform.HWHID = 0
+                }
+                if (!this.hform.HStockPlaceName) {
+                    this.hform.HStockPlaceID = 0
+                }
+                var sOldBarCode = HBarCode
+                var HDeleteFlag = sOldBarCode.substring(0, 1);
+                var sBarCode = sOldBarCode.slice(1);
+
+                var sHWHID = this.hform.HWHID
+                var sHSPID = this.hform.HStockPlaceID
+                var sHQty = this.hform.HQty
+                var sSourceBillNo = this.hform.HSourceBillNo
+                var sSourceBillType = this.hform.HMainSourceBillType
+                var HSourceFlag = this.hform.HSourceBillNo == '' ? false : true
+                console.log(this.hform.HSourceBillNo, HSourceFlag)
+                if (HDeleteFlag == "*") {
+                    if (sBarCode == "") {
+                        this.playSound(0)
+                        this.refreshBarCodeState()
+                        uni.showToast({
+                            title: '璇锋壂鎻忚鍒犻櫎鐨勬潯鐮�',
+                            icon: 'none'
+                        })
+                    } else {
+                        try {
+                            let res = await CommonUtils.doRequest2Sync({
+                                url: '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
+                                data: {
+                                    HInterID: this.hform.HInterID,
+                                    HBillType: this.hform.HBillType,
+                                    HBarCode: sBarCode
+                                }
+                            })
+
+                            if (!res) {
+                                return
+                            }
+
+                            console.log('鍒犻櫎鏉$爜', res.data);
+                            this.hform.HBarCode = ''
+                            if (res.data.count == 1) {
+                                this.playSound(1)
+                                this.hform.HQty = ''
+                                this.DisBillEntryList()
+                            } else {
+                                this.playSound(0)
+                                this.refreshBarCodeState()
+                                uni.showToast({
+                                    title: res.data.Message,
+                                    icon: 'none'
+                                })
+                            }
+                        } catch (err) {
+                            this.refreshBarCodeState()
+                            this.playSound(0)
+                            uni.showToast({
+                                title: '鎺ュ彛璇锋眰澶辫触: ' + err,
+                                icon: 'none'
+                            })
+                        }
+
+                        // uni.request({
+                        //     url: this.serverUrl +
+                        //         '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
+                        //     data: {
+                        //         HInterID: this.hform.HInterID,
+                        //         HBillType: this.hform.HBillType,
+                        //         HBarCode: sBarCode
+                        //     },
+                        //     success: (res) => {
+                        //         console.log('鍒犻櫎鏉$爜', res.data);
+                        //         this.hform.HBarCode = ''
+                        //         if (res.data.count == 1) {
+                        //             this.playSound(1)
+                        //             this.hform.HQty = ''
+                        //             CommonUtils.playSound(1)
+                        //             this.DisBillEntryList()
+                        //         } else {
+                        //             this.playSound(0)
+                        //             this.refreshBarCodeState()
+                        //             uni.showToast({
+                        //                 title: res.data.Message,
+                        //                 icon: 'none'
+                        //             })
+                        //         }
+                        //     },
+                        //     fail: (res) => {
+                        //         this.playSound(0)
+                        //         this.refreshBarCodeState()
+                        //         console.log(res);
+                        //         uni.showToast({
+                        //             title: '鎺ュ彛璇锋眰澶辫触',
+                        //             icon: 'none'
+                        //         })
+                        //     },
+                        // });
+                    }
+                } else {
+                    var sBarCode = this.hform.HBarCode
+                    if (sHQty == "") {
+                        sHQty = 0;
+                    }
+
+                    try {
+                        let res = await CommonUtils.doRequest2Sync({
+                            url: '/WEBSController/Get_BarCode_Json',
+                            data: {
+                                sBarCode: sBarCode,
+                                HInterID: this.hform.HInterID,
+                                HBillType: this.hform.HBillType,
+                                HBillNo: this.hform.HBillNo,
+                                HMaker: this.hform.HMaker,
+                                HWhID: sHWHID,
+                                HSPID: sHSPID,
+                                HQty: sHQty,
+                                HRedBlueFlag: this.hform.HRedBlueFlag,
+                                SourceFlag: HSourceFlag,
+                                HSourceBillNo: sSourceBillNo,
+                                HSourceBillType: sSourceBillType,
+                                HStockOrgID: this.hform.HStockOrgID,
+                                HScanStyle: "",
+                                HCustom1: "",
+                                HCustom2: ""
+                            },
+                        })
+                        if (!res) {
+                            return
+                        }
+                        console.log('鎵爜杩斿洖', res.data);
+                        this.hform.HBarCode = ''
+                        if (res.data.count == 1) {
+                            this.playSound(1)
+                            var data = res.data.data
+                            if (data.hBarTypeField == '浠撳簱鏉$爜') {
+                                this.hform.HWHName = data.hWhNameField
+                                this.hform.HWHID = data.hWhIDField
+                                this.hform.HStockPlaceName = ''
+                                this.hform.HStockPlaceID = 0
+                                if (data.hSPFlagField == 0) {
+                                    this.showHStockPlaceName = false
+                                } else {
+                                    this.showHStockPlaceName = true
+                                }
+                            } else if (data.hBarTypeField == '浠撲綅鏉$爜') {
+                                this.hform.HWHName = data.hWhNameField
+                                this.hform.HWHID = data.hWhIDField
+                                this.hform.HStockPlaceName = data.hSPNameField
+                                this.hform.HStockPlaceID = data.hSPIDField
+                            } else if (data.hBarTypeField == '閮ㄩ棬鏉$爜') {
+                                this.hform.HDeptName = data.hDeptNameField
+                                this.hform.HDeptID = data.hDeptIDField
+                                this.tabs = 1
+                            } else if (data.hBarTypeField == '婧愬崟鏉$爜') {
+                                this.hform.HSupName = data.hSupNameField
+                                this.hform.HSupID = data.hSupIDField
+                                if (data.hDeptIDField != 0) {
+                                    this.hform.HDeptID = data.hDeptIDField
+                                    this.hform.HDeptName = data.hDeptNameField
+                                }
+                                this.hform.HSourceBillNo = data.hSourceBillNoField
+                                //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                                this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                                if (data.hSourceBillTypeField == "1105") {
+                                    this.HMainSourceBillType = '閫�鏂欓�氱煡鍗�'
+                                    this.hform.HMainSourceBillType = 1105
+                                    this.showHMainSourceBillType = false
+                                } else if (data.hSourceBillTypeField == "1102") {
+                                    this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                                    this.hform.HMainSourceBillType = 1102
+                                    this.showHMainSourceBillType = false
+                                } else if (data.hSourceBillType == 1201) {
+                                    this.HMainSourceBillType = '閲囪喘鍏ュ簱鍗�'
+                                    this.hform.HMainSourceBillType = 1201
+                                    this.showHMainSourceBillType = false
+                                } else {
+                                    this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                                    this.hform.HMainSourceBillType = -1
+                                    this.showHMainSourceBillType = false
+                                }
+                                if (data.hMulSourceFlagField == 0) {
+                                    this.showHSourceBillNo = false
+                                }
+                                //渚涘簲鍟嗕笉鍙紪杈�
+                                this.showHSupName = false
+                                this.tabs = 2
+                            } else { //鐗╂枡鏉$爜
+                                this.tabs = 2
+                                if (!this.hform.HSourceBillNo) {
+                                    this.hform.HSupName = data.hSupNameField
+                                    this.hform.HSupID = data.hSupIDField
+                                    this.hform.HSourceBillNo = data.hSourceBillNoField
+                                    if (data.hDeptIDField != 0) {
+                                        this.hform.HDeptID = data.hDeptIDField
+                                        this.hform.HDeptName = data.hDeptNameField
+                                    }
+                                    console.log(data)
+                                    //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                                    this.hform.HMainSourceBillType = data.hSourceBillTypeField
+
+                                    let index = this.arrayHMainSourceBillValue.findIndex(e => e ==
+                                        data
+                                        .hSourceBillTypeField)
+                                    if (index != -1) {
+                                        this.HMainSourceBillType = this.arrayHMainSourceBillType[
+                                            index]
+                                        this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                                        this.showHMainSourceBillType = false
+                                    }
+                                    // if (data.hSourceBillTypeField == "1103") {
+                                    // 	this.HMainSourceBillType = '鏀舵枡閫氱煡鍗�'
+                                    // 	this.hform.HMainSourceBillType = 1103
+                                    // 	this.showHMainSourceBillType = false
+                                    // } else if (data.hSourceBillTypeField == "1102") {
+                                    // 	this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                                    // 	this.hform.HMainSourceBillType = 1102
+                                    // 	this.showHMainSourceBillType = false
+                                    // } else {
+                                    // 	this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                                    // 	this.hform.HMainSourceBillType = -1
+                                    // 	this.showHMainSourceBillType = false
+                                    // }
+                                    if (data.hMulSourceFlagField == 0) {
+                                        this.showHSourceBillNo = false
+                                    }
+                                    //渚涘簲鍟嗕笉鍙紪杈�
+                                    this.showHSupName = false
+                                }
+                            }
+                            //鏄剧ず琛ㄤ綋鏄庣粏
+                            this.DisBillEntryList()
+                            //娓呯┖鏁伴噺
+                            this.hform.HQty = ''
+                        } else {
+                            this.playSound(0)
+                            this.refreshBarCodeState()
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    } catch (err) {
+                        this.playSound(0)
+                        this.refreshBarCodeState()
+                        console.log(err);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触: ' + err,
+                            icon: 'none'
+                        })
+                    }
+
+                    // uni.request({
+                    //     url: this.serverUrl + '/WEBSController/Get_BarCode_Json',
+                    //     data: {
+                    //         sBarCode: sBarCode,
+                    //         HInterID: this.hform.HInterID,
+                    //         HBillType: this.hform.HBillType,
+                    //         HBillNo: this.hform.HBillNo,
+                    //         HMaker: this.hform.HMaker,
+                    //         HWhID: sHWHID,
+                    //         HSPID: sHSPID,
+                    //         HQty: sHQty,
+                    //         HRedBlueFlag: this.hform.HRedBlueFlag,
+                    //         SourceFlag: HSourceFlag,
+                    //         HSourceBillNo: sSourceBillNo,
+                    //         HSourceBillType: sSourceBillType,
+                    //         HStockOrgID: this.hform.HStockOrgID,
+                    //         HScanStyle: "",
+                    //         HCustom1: "",
+                    //         HCustom2: ""
+                    //     },
+                    //     success: (res) => {
+                    //         console.log('鎵爜杩斿洖', res.data);
+                    //         this.hform.HBarCode = ''
+                    //         if (res.data.count == 1) {
+                    //             this.playSound(1)
+                    //             var data = res.data.data
+                    //             if (data.hBarTypeField == '浠撳簱鏉$爜') {
+                    //                 this.hform.HWHName = data.hWhNameField
+                    //                 this.hform.HWHID = data.hWhIDField
+                    //                 this.hform.HStockPlaceName = ''
+                    //                 this.hform.HStockPlaceID = 0
+                    //                 if (data.hSPFlagField == 0) {
+                    //                     this.showHStockPlaceName = false
+                    //                 } else {
+                    //                     this.showHStockPlaceName = true
+                    //                 }
+                    //             } else if (data.hBarTypeField == '浠撲綅鏉$爜') {
+                    //                 this.hform.HWHName = data.hWhNameField
+                    //                 this.hform.HWHID = data.hWhIDField
+                    //                 this.hform.HStockPlaceName = data.hSPNameField
+                    //                 this.hform.HStockPlaceID = data.hSPIDField
+                    //             } else if (data.hBarTypeField == '閮ㄩ棬鏉$爜') {
+                    //                 this.hform.HDeptName = data.hDeptNameField
+                    //                 this.hform.HDeptID = data.hDeptIDField
+                    //                 this.tabs = 1
+                    //             } else if (data.hBarTypeField == '婧愬崟鏉$爜') {
+                    //                 this.hform.HSupName = data.hSupNameField
+                    //                 this.hform.HSupID = data.hSupIDField
+                    //                 if (data.hDeptIDField != 0) {
+                    //                     this.hform.HDeptID = data.hDeptIDField
+                    //                     this.hform.HDeptName = data.hDeptNameField
+                    //                 }
+                    //                 this.hform.HSourceBillNo = data.hSourceBillNoField
+                    //                 //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                    //                 this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                    //                 if (data.hSourceBillTypeField == "1105") {
+                    //                     this.HMainSourceBillType = '閫�鏂欓�氱煡鍗�'
+                    //                     this.hform.HMainSourceBillType = 1105
+                    //                     this.showHMainSourceBillType = false
+                    //                 } else if (data.hSourceBillTypeField == "1102") {
+                    //                     this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                    //                     this.hform.HMainSourceBillType = 1102
+                    //                     this.showHMainSourceBillType = false
+                    //                 } else if (data.hSourceBillType == 1201) {
+                    //                     this.HMainSourceBillType = '閲囪喘鍏ュ簱鍗�'
+                    //                     this.hform.HMainSourceBillType = 1201
+                    //                     this.showHMainSourceBillType = false
+                    //                 } else {
+                    //                     this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    //                     this.hform.HMainSourceBillType = -1
+                    //                     this.showHMainSourceBillType = false
+                    //                 }
+                    //                 if (data.hMulSourceFlagField == 0) {
+                    //                     this.showHSourceBillNo = false
+                    //                 }
+                    //                 //渚涘簲鍟嗕笉鍙紪杈�
+                    //                 this.showHSupName = false
+                    //                 this.tabs = 2
+                    //             } else { //鐗╂枡鏉$爜
+                    //                 this.tabs = 2
+                    //                 if (!this.hform.HSourceBillNo) {
+                    //                     this.hform.HSupName = data.hSupNameField
+                    //                     this.hform.HSupID = data.hSupIDField
+                    //                     this.hform.HSourceBillNo = data.hSourceBillNoField
+                    //                     if (data.hDeptIDField != 0) {
+                    //                         this.hform.HDeptID = data.hDeptIDField
+                    //                         this.hform.HDeptName = data.hDeptNameField
+                    //                     }
+                    //                     console.log(data)
+                    //                     //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                    //                     this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                    // 
+                    //                     let index = this.arrayHMainSourceBillValue.findIndex(e => e ==
+                    //                         data
+                    //                         .hSourceBillTypeField)
+                    //                     if (index != -1) {
+                    //                         this.HMainSourceBillType = this.arrayHMainSourceBillType[
+                    //                             index]
+                    //                         this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                    //                         this.showHMainSourceBillType = false
+                    //                     }
+                    //                     // if (data.hSourceBillTypeField == "1103") {
+                    //                     // 	this.HMainSourceBillType = '鏀舵枡閫氱煡鍗�'
+                    //                     // 	this.hform.HMainSourceBillType = 1103
+                    //                     // 	this.showHMainSourceBillType = false
+                    //                     // } else if (data.hSourceBillTypeField == "1102") {
+                    //                     // 	this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                    //                     // 	this.hform.HMainSourceBillType = 1102
+                    //                     // 	this.showHMainSourceBillType = false
+                    //                     // } else {
+                    //                     // 	this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    //                     // 	this.hform.HMainSourceBillType = -1
+                    //                     // 	this.showHMainSourceBillType = false
+                    //                     // }
+                    //                     if (data.hMulSourceFlagField == 0) {
+                    //                         this.showHSourceBillNo = false
+                    //                     }
+                    //                     //渚涘簲鍟嗕笉鍙紪杈�
+                    //                     this.showHSupName = false
+                    //                 }
+                    //             }
+                    //             //鏄剧ず琛ㄤ綋鏄庣粏
+                    //             this.DisBillEntryList()
+                    //             //娓呯┖鏁伴噺
+                    //             this.hform.HQty = ''
+                    //         } else {
+                    //             this.playSound(0)
+                    //             this.refreshBarCodeState()
+                    //             uni.showToast({
+                    //                 title: res.data.Message,
+                    //                 icon: 'none'
+                    //             })
+                    //         }
+                    //     },
+                    //     fail: (res) => {
+                    //         this.playSound(0)
+                    //         this.refreshBarCodeState()
+                    //         console.log(res);
+                    //         uni.showToast({
+                    //             title: '鎺ュ彛璇锋眰澶辫触',
+                    //             icon: 'none'
+                    //         })
+                    //     },
+                    // });
+                }
+            },
+            //鐗╂枡淇℃伅
+            DisBillEntryList() {
+                uni.request({
+                    url: this.serverUrl + '/WEBSController/GetBillEntryTmpList_Json',
+                    data: {
+                        HInterID: this.hform.HInterID,
+                        HBillNo: this.hform.HBillNo,
+                        HBillType: this.hform.HBillType,
+                        HStockOrgID: this.hform.HStockOrgID
+                    },
+                    success: (res) => {
+                        console.log('鐗╂枡', res.data)
+                        if (res.data.count == 1) {
+                            var data = res.data.data
+                            this.materMeta = data.BarCodeDetailslist
+                            this.Materlist = data.Materlist
+                            if (/鍏磋揪/.test(uni.getStorageSync("Organization"))) {
+                                // 鍏磋揪瀹㈡埛 甯﹀嚭 浠撳簱
+                                console.log("鍏磋揪甯﹀嚭榛樿浠撳簱")
+                                this.HWHNameChange(data.BarCodeDetailslist[0].HWHName)
+                            }
+
+
+                            if (!data.BarCodeDetailslist[0].HBarCode) {
+                                this.hform.HMaterName_B = ''
+                                this.hform.HMaterModel_B = ''
+                                this.hform.HBatchNo_B = ''
+                                this.hform.HUnitName_B = ''
+                                this.hform.HQty_B = ''
+                                this.hform.HTMQty_B = ''
+                                this.hform.HWHName_B = ''
+                                this.hform.HSPName_B = ''
+                            } else {
+                                this.hform.HMaterName_B = data.BarCodeDetailslist[0].HMaterName
+                                this.hform.HMaterModel_B = data.BarCodeDetailslist[0].HMaterModel
+                                this.hform.HBatchNo_B = data.BarCodeDetailslist[0].HBatchNo
+                                this.hform.HUnitName_B = data.BarCodeDetailslist[0].HUnitName
+                                this.hform.HQty_B = data.BarCodeDetailslist[0].HQty
+                                this.hform.HTMQty_B = data.BarCodeDetailslist[0].HTMQty
+                                this.hform.HWHName_B = data.BarCodeDetailslist[0].HWHName
+                                this.hform.HSPName_B = data.BarCodeDetailslist[0].HSPName
+                            }
+                        } else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            //鍒犻櫎鐗╂枡鐮�
+            delMater(item) {
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + item.鐗╂枡鍚嶇О + ' " 鎵�鏈夋壂鐮佽褰曪紵鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            uni.request({
+                                url: this.serverUrl +
+                                    '/WEBSController/set_DelPonderationBillMain_Temp_InterIDAndSource_Json',
+                                data: {
+                                    HInterID: this.hform.HInterID,
+                                    HMaterID: item.HMaterID,
+                                    HAuxPropID: item.HAuxPropID,
+                                    HMTONo: item.HMTONo,
+                                    HSourceInterID: item.HSourceInterID,
+                                    HSourceEntryID: item.HSourceEntryID,
+                                    HBillType: this.hform.HBillType
+                                },
+                                success: (res) => {
+                                    if (res.data.count == 1) {
+                                        this.DisBillEntryList()
+                                    } else {
+                                        uni.showToast({
+                                            title: res.data.Message,
+                                            icon: 'none'
+                                        })
+                                    }
+                                },
+                                fail: (res) => {
+                                    console.log(res);
+                                    uni.showToast({
+                                        title: '鎺ュ彛璇锋眰澶辫触',
+                                        icon: 'none'
+                                    })
+                                },
+                            });
+                        }
+                    }
+                });
+            },
+            // 鏂板鍥炶皟
+            addNew() {
+                uni.redirectTo({
+                    url: '/pages/qijvguzhangdengji/form?OperationType=1'
+                })
+            },
+            //鏂板
+            getNewData() {
+                uni.request({
+                    url: this.serverUrl + '/Web/GetMAXNum',
+                    data: {
+                        HBillType: this.hform.HBillType
+                    },
+                    success: (res) => {
+                        // console.log(res.data)
+                        if (res.data.count == 1) {
+                            this.hform.HInterID = 0
+                            this.hform.HBillNo = res.data.data[0].HBillNo
+                        } else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            //淇敼鍥炲~鏁版嵁
+            RoadBillMain(HInterID) {
+                uni.request({
+                    url: this.serverUrl + '/WEBSController/GetSourceBill_Temp_Json',
+                    data: {
+                        HInterID: HInterID,
+                        HBillType: this.hform.HBillType
+                    },
+                    success: (res) => {
+                        console.log(33, res.data.data[0]);
+                        if (res.data.count == 1) {
+                            var data = res.data.data[0]
+                            this.hform.HInterID = data.HInterID
+                            this.hform.HBillNo = data.HBillNo
+                            this.hform.HMainSourceBillType = data.HSourceBillType
+                            this.hform.HSourceBillNo = data.HSourceBillNo
+                            if (data.HSourceBillType == 1105) {
+                                this.hform.HMainSourceBillType = 1105
+                                this.HMainSourceBillType = '閫�鏂欓�氱煡鍗�'
+                                this.showHSupName = false
+                            } else if (data.HSourceBillType == 1102) {
+                                this.hform.HMainSourceBillType = 1102
+                                this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                                this.showHSupName = false
+                            } else if (data.HSourceBillType == 1201) {
+                                this.hform.HMainSourceBillType = 1201
+                                this.HMainSourceBillType = '閲囪喘鍏ュ簱鍗�'
+                                this.showHSupName = false
+                            } else {
+                                this.hform.HMainSourceBillType = -1
+                                this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                            }
+                            this.showHMainSourceBillType = false
+
+                            //闈炲婧愬崟妯″紡
+                            if (data.HMulSourceBill == 0) {
+                                this.showHSourceBillNo = false
+                            }
+                            this.hform.HDeptID = data.HDeptID
+                            this.hform.HDeptName = data.HDeptName
+                            this.hform.HSupID = data.HCusID
+                            this.hform.HSupName = data.HSupName
+                            this.DisBillEntryList()
+                            this.tabs = 2
+                        } else {
+                            uni.showToast({
+                                title: '鑾峰彇鏁版嵁鍥炲~澶辫触',
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            checkBillValidate() {
+                let message = ''
+
+                if (!this.hform.HConkTypeName) {
+                    message = '鏈~鍐欐晠闅滅被鍒�'
+                } else if (!this.hform.HConkReasonName) {
+                    message = '鏈~鍐欐晠闅滃師鍥�'
+                } else if (!this.hform.HDeptName) {
+                    message = '鏈~鍐欓儴闂�'
+                } else if (!this.hform.HEmpName) {
+                    message = '鏈~鍐欏彂鐜颁汉'
+                } else if (!this.hform.HManagerName) {
+                    message = '鏈~鍐欒礋璐d汉'
+                }
+
+                if (!message) {
+                    return true
+                }
+
+                CommonUtils.showTips({
+                    message: message
+                })
+                return false
+            },
+            async submit() {
+                if (!this.checkBillValidate()) {
+                    return
+                }
+                let oMain = JSON.stringify(this.hform)
+                let sSubStr = JSON.stringify([{
+                    "HConkReasonID": this.hform.HConkReasonID,
+                    "HConkReasonCode": "",
+                    "HConkReasonName": this.hform.HConkReasonName,
+                    "HConkExplanation": this.hform.HExplanation,
+                    "HManagerID": this.hform.HManagerID,
+                    "HManagerCode": "",
+                    "HManagerName": this.hform.HManagerName,
+                    "HRemark": "  "
+                }])
+                let sMainSub = `${oMain};${sSubStr};${getUserInfo()["Czymc"]};1`
+                try {
+                    this.EnableSave = false
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/Sc_MouldConkBookBill/SaveGetMouldConkBookBillList',
+                        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/qijvguzhangdengji/form?OperationType=1'
+                                    })
+                                } else if (res.cancel) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                    // setTimeout(() => {
+                                    // 	uni.navigateBack();
+                                    // }, 50)
+                                }
+                            }
+                        });
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                        this.EnableSave = true
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                    this.EnableSave = true
+                }
+            },
+
+            goBack() {
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕侀��鍑哄綋鍓嶉〉闈㈠悧锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            uni.navigateBack()
+                        } else if (res.cancel) {
+                            console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                        }
+                    }
+                });
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .form {
+        width: 668rpx;
+        margin: 20rpx auto;
+        padding-bottom: 240rpx;
+    }
+
+    .tab_area {
+        width: 100%;
+        height: 50rpx;
+    }
+
+    .other {
+        margin-top: 8rpx;
+        text-align: center;
+        font-size: 28rpx;
+        padding: 4rpx 18rpx;
+        color: #1890FF;
+    }
+
+    .tabs {
+        width: 100%;
+        display: flex;
+        border-bottom: 1px solid #ddd;
+        margin: 20rpx 0;
+
+        view {
+            width: 25%;
+            font-size: 30rpx;
+            color: #555;
+            text-align: center;
+            padding: 16rpx 0;
+        }
+
+        .on {
+            color: #3a78ff;
+            font-weight: bold;
+            border-bottom: 3px solid #3a78ff;
+        }
+    }
+
+    .form-item {
+        display: flex;
+        align-items: center;
+        font-size: inherit;
+        padding: 6rpx 0;
+        gap: 12rpx;
+
+        .title {
+            width: 200rpx;
+            font-size: 30rpx;
+
+            text {
+                color: red;
+                font-weight: bold;
+            }
+        }
+
+        .right {
+            flex: 1;
+            border-radius: 22rpx;
+            border: 1px solid #acacac;
+            position: relative;
+            padding: 8rpx 16rpx;
+            display: flex;
+            font-size: 30rpx;
+
+            picker {
+                width: 100%;
+            }
+
+            .uni-combox {
+                width: 100%;
+                padding: 0;
+
+                ::v-deep .uni-combox__input {
+                    font-size: 30rpx;
+                    height: auto;
+                }
+            }
+        }
+
+        .righton {
+            flex: 1;
+            border-radius: 22rpx;
+            border: 1px solid #e4e4e4;
+            background-color: #e4e4e4;
+            padding: 8rpx 16rpx;
+            font-size: 30rpx;
+        }
+
+        input {
+            width: 100%;
+            font-size: 30rpx;
+        }
+
+        textarea {
+            width: 98%;
+            font-size: 30rpx;
+        }
+
+    }
+
+    .bottom-btn {
+        width: 100%;
+        box-sizing: border-box;
+        // height: 120rpx;
+        position: fixed;
+        bottom: 0;
+        left: 0;
+        background-color: #fff;
+        box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+        padding: 30rpx 40rpx 40rpx 40rpx;
+        display: flex;
+        flex-direction: row;
+        gap: 10rpx;
+
+        button {
+            border-radius: 50rpx;
+            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;
+        }
+    }
+
+    .list {
+        width: 100%;
+
+        .card-detail {
+            width: 100%;
+            display: flex;
+            flex-wrap: wrap;
+            justify-content: space-between;
+            line-height: 120%;
+
+            .detail {
+                // width: 50%;
+                font-size: 26rpx;
+                margin-bottom: 12rpx;
+                color: #555;
+                margin-right: 20rpx;
+
+                text {
+                    color: #999;
+                    font-size: 26rpx;
+                }
+            }
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+    }
+
+    .icon-wrapper {
+        background-color: #3A78FF;
+        width: 52rpx;
+        height: 52rpx;
+        border-radius: 100%;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+
+        .uni-icons {
+            color: #fff !important;
+        }
+    }
+
+    .required {
+        position: relative;
+
+    }
+
+    .required::after {
+        content: "*";
+        position: relative;
+        color: red;
+        left: 0;
+        top: 0;
+        font-size: inherit;
+    }
+
+    .icon-wrapper[disabled] {
+        background-color: rgba(228, 228, 228, 1);
+        pointer-events: none;
+        touch-action: none;
+    }
+
+    .readonly {
+        background-color: #efefef4d;
+    }
+</style>
\ No newline at end of file
diff --git a/pages/qijvguzhangdengji/table.vue b/pages/qijvguzhangdengji/table.vue
new file mode 100644
index 0000000..6aec0d7
--- /dev/null
+++ b/pages/qijvguzhangdengji/table.vue
@@ -0,0 +1,595 @@
+<template>
+    <view class="page" id="pageContent">
+        <view class="search-condition-zone">
+            <view class="form-item">
+                <view class="left">
+                    鏃ユ湡:
+                </view>
+                <view class="daterange" style="flex: 1;">
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HBeginDate">
+                            <view>{{hform.HBeginDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                    <view>鈥�</view>
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HEndDate">
+                            <view>{{hform.HEndDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍣ㄥ叿缂栫爜:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HMoNumber" />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍣ㄥ叿鍚嶇О:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HMoName" />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍗曟嵁鍙�:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HBillNo" />
+                </view>
+            </view>
+        </view>
+        <view class="button-zone">
+            <button type="default" class="btn-a" size="mini" @tap="cmdAdd">鏂板</button>
+            <button type="default" class="btn-a" size="mini" @tap="cmdSearch">鏌ヨ</button>
+            <button type="default" class="btn-c" size="mini" @tap="exit">閫�鍑�</button>
+        </view>
+        <view class="info-list-zone" id="scroll-content" :style="{height: scrollContentHeight + 'px'}">
+            <view class="card-item" v-for="(item, index) in listDataShow">
+                <uni-card :title="item['鍗曟嵁鍙�']" :extra="'鏃ユ湡:' + item['鏃ユ湡'].split('T')[0]"
+                    @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['鍙戠幇浜�']">
+                            <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>
+                    <view class="card-detail" v-if="showDetail == index">
+                        <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.浜у搧妯″叿浠g爜">
+                            <text>鍣ㄥ叿缂栫爜锛�</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.鏁呴殰鍙戠敓鏃ユ湡.split("T")[0]}}
+                        </view>
+                        <view class="detail" v-if="item.瑕佹眰瀹屽杽鏃ユ湡">
+                            <text>瑕佹眰瀹屽杽鏃ユ湡锛�</text>{{item.瑕佹眰瀹屽杽鏃ユ湡.split("T")[0]}}
+                        </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.鏁呴殰鍘熷洜浠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.瀛愯礋璐d汉浠g爜">
+                            <text>瀛愯礋璐d汉浠g爜锛�</text>{{item.瀛愯礋璐d汉浠g爜}}
+                        </view>
+                        <view class="detail" v-if="item.瀛愯礋璐d汉">
+                            <text>瀛愯礋璐d汉锛�</text>{{item.瀛愯礋璐d汉}}
+                        </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.鍒跺崟鏃ユ湡.split('T')[0]}}
+                        </view>
+                        <view class="detail" v-if="item.淇敼浜�">
+                            <text>淇敼浜猴細</text>{{item.淇敼浜簘}
+                        </view>
+                        <view class="detail" v-if="item.淇敼鏃ユ湡">
+                            <text>淇敼鏃ユ湡锛�</text>{{item.淇敼鏃ユ湡.split('T')[0]}}
+                        </view>
+                        <view class="detail" v-if="item.鍏抽棴浜�">
+                            <text>鍏抽棴浜猴細</text>{{item.鍏抽棴浜簘}
+                        </view>
+                        <view class="detail" v-if="item.鍏抽棴鏃ユ湡">
+                            <text>鍏抽棴鏃ユ湡锛�</text>{{item.鍏抽棴鏃ユ湡.split('T')[0]}}
+                        </view>
+                        <view class="detail" v-if="item.浣滃簾浜�">
+                            <text>浣滃簾浜猴細</text>{{item.浣滃簾浜簘}
+                        </view>
+                        <view class="detail" v-if="item.浣滃簾鏃ユ湡">
+                            <text>浣滃簾鏃ユ湡锛�</text>{{item.浣滃簾鏃ユ湡.split('T')[0]}}
+                        </view>
+                        <view class="detail" v-if="item.婧愬崟鍗曞彿">
+                            <text>婧愬崟鍗曞彿锛�</text>{{item.婧愬崟鍗曞彿}}
+                        </view>
+                        <view class="detail" v-if="item.婧愬崟绫诲瀷">
+                            <text>婧愬崟绫诲瀷锛�</text>{{item.婧愬崟绫诲瀷}}
+                        </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 class="over" v-if="listDataShow.length == 0">鏆傛棤鏁版嵁</view>
+        </view>
+
+        <view class="pagination-zone" id="pagination-zone">
+            <uni-pagination show-icon :page-size="paginationMeta.pageSize" :total="paginationMeta.total"
+                :current="paginationMeta.current" @change="onPaginationChangeHandler"></uni-pagination>
+        </view>
+    </view>
+</template>
+
+<script>
+    import {
+        CommonUtils
+    } from '../../utils/common'
+    import {
+        getUserInfo
+    } from '../../utils/auth'
+    import dayjs, {
+        Dayjs
+    } from 'dayjs'
+    export default {
+        data() {
+            return {
+
+                navHeight: 0,
+                scrollTop: 0,
+
+                showDetail: -1,
+                operations: -1,
+
+                hform: {
+                    HBeginDate: dayjs(new Date).subtract(30, 'd').format('YYYY-MM-DD'),
+                    HEndDate: dayjs(new Date).format('YYYY-MM-DD'),
+                    HMoNumber: '',
+                    HMoName: '',
+                    HBillNo: ''
+                },
+
+                paginationMeta: {
+                    current: 1,
+                    total: 0,
+                    pageSize: 30,
+                },
+
+                pageMeta: {
+                    scrollContentTop: 0,
+                    bottomBtnTop: 0,
+                },
+
+                listData: [],
+                listDataShow: [],
+            }
+        },
+        computed: {
+            scrollContentHeight: {
+                get() {
+                    return this.pageMeta.bottomBtnTop - this.pageMeta.scrollContentTop
+                }
+            }
+        },
+        methods: {
+            exit() {
+                uni.navigateBack()
+            },
+            cmdAdd() {
+                uni.navigateTo({
+                    url: "/pages/qijvguzhangdengji/form?operationType=1"
+                })
+            },
+            async cmdSearch() {
+                let sWhere = ''
+                if (this.hform.HBeginDate != "" && this.hform.HEndDate != "") {
+                    sWhere += " and  CONVERT(varchar(100),鏃ユ湡, 23) between '" + this.hform.HBeginDate + "' and '" +
+                        this.hform.HEndDate + "' ";
+                }
+                if (this.hform.HMoNumber != "") {
+                    sWhere += " and 浜у搧妯″叿浠g爜 like '%" + this.hform.HMoNumber + "%'"
+                }
+                if (this.hform.HMoName != "") {
+                    sWhere += " and 浜у搧妯″叿 like '%" + this.hform.HMoName + "%'"
+                }
+                if (this.hform.HBillNo != "") {
+                    sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'"
+                }
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/Sc_MouldConkBookBill/GetMouldConkBookBillList_PDA',
+                        data: {
+                            "sWhere": sWhere,
+                            "user": getUserInfo()["Czymc"]
+                        },
+                    })
+
+                    if (!res) {
+                        return
+                    }
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count > 0) {
+                        this.listData = data
+                        this.paginationMeta.total = data.length
+                        this.onPaginationChangeHandler({
+                            current: 1
+                        })
+                    } else {
+                        uni.showToast({
+                            icon: 'none',
+                            title: Message
+                        })
+                    }
+                } catch (err) {
+                    console.warn(err);
+                    uni.showToast({
+                        title: '鎺ュ彛璇锋眰澶辫触:' + err,
+                        icon: 'none'
+                    })
+                }
+            },
+            async onPaginationChangeHandler({
+                current
+            }) {
+                this.listDataShow =
+                    this.listData.slice((current - 1) * this.paginationMeta.pageSize,
+                        current * this.paginationMeta.pageSize)
+
+            },
+            async del(item) {
+                console.log("delItem: ", item);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+                    success: async (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            try {
+                                let res = await CommonUtils.doRequest2Sync({
+                                    url: '/Sc_MouldConkBookBill/DeltetMouldConkBookBill',
+                                    data: {
+                                        "HInterID": item.hmainid,
+                                        "user": getUserInfo()["Czymc"]
+                                    }
+                                })
+
+                                if (!res) {
+                                    return
+                                }
+
+                                let {
+                                    count,
+                                    code,
+                                    Message
+                                } = res.data
+                                if (count == 0) {
+                                    return uni.showModal({
+                                        title: '閿欒鎻愮ず',
+                                        content: `鍒犻櫎閿欒: ${Message}`,
+                                        showCancel: false
+                                    })
+                                }
+                                uni.showToast({
+                                    title: '鍒犻櫎鎴愬姛',
+                                    icon: 'none'
+                                })
+                                this.cmdSearch()
+                            } catch (err) {
+                                uni.showModal({
+                                    title: '閿欒鎻愮ず',
+                                    content: `鎺ュ彛璇锋眰澶辫触: ${err}`,
+                                    showCancel: false
+                                })
+                            }
+                        }
+                    },
+                })
+
+            },
+            edit(item) {
+                console.log("editItem:", item)
+                uni.navigateTo({
+                    url: `/pages/qijvguzhangdengji/form?operationType=2&linterid=${item.hmainid}&hsubid=${item.hsubid}`
+                })
+            }
+        },
+        onLoad() {
+
+            this.$nextTick(() => {
+                this.cmdSearch()
+            })
+        },
+        onReady() {
+            // #ifndef MP-WEIXIN
+            let query = uni.createSelectorQuery().in(this)
+            query.select("#scroll-content").boundingClientRect((data) => {
+                this.pageMeta.scrollContentTop = data.top
+            }).exec()
+            query.select("#pagination-zone").boundingClientRect((data) => {
+                this.pageMeta.bottomBtnTop = data.top
+            }).exec()
+            // #endif
+            // #ifdef MP-WEIXIN
+            // 寰俊涓嶆敮鎸� uni.createSelectorQuery().in(this)
+            // #endif
+
+        },
+    }
+</script>
+
+<style lang="scss" scoped>
+    .page {
+        box-sizing: border-box;
+        display: flex;
+        flex-direction: column;
+        gap: 20rpx;
+        padding: 20rpx 0;
+        position: relative;
+
+        .button-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding-top: 20rpx;
+            display: flex;
+            flex-direction: row;
+            justify-content: space-between;
+            flex-wrap: wrap;
+
+            button {
+                border-radius: 50rpx;
+                width: 180rpx;
+                height: 66rpx;
+                line-height: 66rpx;
+                font-size: 28rpx;
+            }
+
+            .btn-a {
+                background-color: #3a78ff;
+                color: #fff;
+            }
+
+            .btn-c {
+                background-color: #ff5722;
+                color: #fff;
+            }
+        }
+
+        .search-condition-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding: 0 60rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .form-item {
+                display: flex;
+                flex-direction: row;
+                gap: 20rpx;
+                align-items: center;
+                font-size: 28rpx;
+
+                .left {
+                    width: 4rem;
+                }
+
+                .right {
+                    flex: 1;
+                    padding: 8rpx 16rpx;
+
+                    .search {
+                        width: 28rpx;
+                        height: 28rpx;
+                    }
+
+                    input {
+                        font-size: 28rpx;
+                    }
+
+                    .uni-combox {
+                        padding: 0;
+                        margin: 0;
+
+                        ::v-deep .uni-combox__input {
+                            font-size: 28rpx;
+                            height: auto;
+                        }
+                    }
+                }
+
+                .general {
+                    border-radius: 22rpx;
+                    border: 1px solid #acacac;
+                }
+
+                .disabled {
+                    border-radius: 22rpx;
+                    border: 1px solid #e4e4e4;
+                    background-color: #e4e4e4;
+                }
+            }
+        }
+
+        .info-list-zone {
+            overflow-y: auto;
+
+            .card-item {
+                .card-detail {
+                    width: 100%;
+                    display: flex;
+                    flex-wrap: wrap;
+                    justify-content: space-between;
+                    line-height: 120%;
+
+                    .detail {
+                        // width: 50%;
+                        font-size: 26rpx;
+                        margin-bottom: 12rpx;
+                        color: #555;
+                        margin-right: 20rpx;
+
+                        text {
+                            color: #999;
+                            font-size: 26rpx;
+                        }
+                    }
+                }
+            }
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+
+        .op {
+            display: flex;
+            justify-content: space-around;
+            margin-top: 20rpx;
+
+            button {
+                padding: 0;
+                width: 150rpx;
+                font-size: 25rpx;
+            }
+
+            .op1 {
+                border: 1px solid #41a863;
+                color: #41a863;
+            }
+
+            .op2 {
+                border: 1px solid #d98d00;
+                color: #d98d00;
+            }
+
+            .op3 {
+                border: 1px solid #3a78ff;
+                color: #3a78ff;
+            }
+
+            .op4 {
+                border: 1px solid #da0000;
+                color: #da0000;
+            }
+
+            .op5 {
+                border: 1px solid #888;
+                color: #888;
+            }
+        }
+
+        .pagination-zone {
+            position: fixed;
+            bottom: 0;
+            box-sizing: border-box;
+            background-color: #fff;
+            box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+            padding: 20rpx 40rpx 20rpx 40rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+            justify-content: space-between;
+            width: 100%;
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/pages/qitachuku_v2/form.vue b/pages/qitachuku_v2/form.vue
index 05a543b..1c1ee7a 100644
--- a/pages/qitachuku_v2/form.vue
+++ b/pages/qitachuku_v2/form.vue
@@ -1903,6 +1903,7 @@
                 font-weight: bold;
             }
         }
+        
 
         .right {
             // width: 450rpx;
diff --git a/pages/shengchanlingliao/form.vue b/pages/shengchanlingliao/form.vue
index 1ba1810..3c4ae63 100644
--- a/pages/shengchanlingliao/form.vue
+++ b/pages/shengchanlingliao/form.vue
@@ -338,6 +338,7 @@
                                 },
                                 resFunction: (res) => {
                                     if (res.data.count == 1) {
+
                                         this.DisBillEntryList()
                                     } else {
                                         uni.showToast({
@@ -354,15 +355,20 @@
             },
             async refreshHBarCodeFocus() {
                 this.HBarCodeFocus = false
-                await this.$nextTick()
                 this.hform.HBarCode = ''
-                this.HBarCodeFocus = true
+                await this.$nextTick()
+                // await this.$nextTick(() => {
+                //     this.HBarCodeFocus = true
+                // })
+				setTimeout(() => {
+				  this.HBarCodeFocus = true;
+				}, 300);
             },
             async refreshHBillNoFocus() {
                 this.HBillNoFocus = false
+                this.hform.HBillNo = ""
                 await this.$nextTick(() => {
                     this.HBillNoFocus = true
-                    this.hform.HBillNo = ""
                 })
             },
             playSound(e) {
@@ -397,10 +403,15 @@
                 if (this.hform.HBillNo == "" || this.hform.HBillNo == undefined) {
                     return
                 }
-
+                let targetUrl = () => {
+                    if (/鏅轰簯|鎯犲悍/.test(this.hform.HStockOrgName)) {
+                        return "/WEBSController/get_BillBarCode_BillCheck_Json_MateOut_HuiKang"
+                    }
+                    return "/WEBSController/get_BillBarCode_BillCheck_Json"
+                }
                 try {
                     let res = await CommonUtils.doRequest2Sync({
-                        url: '/WEBSController/get_BillBarCode_BillCheck_Json',
+                        url: targetUrl(),
                         data: {
                             HBillNo: this.hform.HBillNo,
                             HBillType: this.hform.HBillType,
@@ -631,8 +642,12 @@
                             this.hform.HBarCode = ''
                             if (res.data.count == 1) {
                                 this.hform.HQty = ''
+                                this.refreshHBarCodeFocus()
+                                CommonUtils.playSound(1)
                                 this.DisBillEntryList()
                             } else {
+                                this.refreshHBarCodeFocus()
+                                CommonUtils.playSound(0)
                                 uni.showToast({
                                     title: res.data.Message,
                                     icon: 'none'
@@ -640,6 +655,7 @@
                             }
 
                         } catch (e) {
+                            this.refreshHBarCodeFocus()
                             CommonUtils.playSound(0)
                             this.refreshHBillNoFocus()
                             uni.showToast({
@@ -796,29 +812,29 @@
                                     this.showHSupName = false
                                 }
                             }
+                            this.refreshHBarCodeFocus()
                             //鏄剧ず琛ㄤ綋鏄庣粏
                             this.DisBillEntryList()
+							this.refreshHBarCodeFocus()
                             //娓呯┖鏁伴噺
                             this.hform.HQty = ''
                         } else {
+                            this.refreshHBarCodeFocus()
                             CommonUtils.playSound(0);
+							this.refreshHBarCodeFocus()
                             uni.showToast({
                                 title: res.data.Message,
                                 icon: 'none'
                             })
                         }
-
-                        this.refreshHBarCodeFocus()
-
                     } catch (e) {
                         CommonUtils.playSound(0)
-                        this.refreshHBillNoFocus()
+                        this.refreshHBarCodeFocus()
                         uni.showToast({
                             title: '鎺ュ彛璇锋眰澶辫触: ' + e,
                             icon: 'none'
                         })
                     }
-
                     // uni.request({
                     //     url: this.serverUrl + '/WEBSController/get_CheckTypeByBarCode_BillCheck_Json',
                     //     data: {
@@ -1090,11 +1106,11 @@
                                     oMain: sMainStr
                                 },
                             })
-                            
-                            if(!res) {
+
+                            if (!res) {
                                 return
                             }
-                            
+
                             console.log(1, res);
                             uni.hideLoading()
                             if (res.data.count == 1) {
@@ -1121,7 +1137,7 @@
                                     icon: 'none'
                                 })
                             }
-                            
+
                         } catch (e) {
                             CommonUtils.playSound(0)
                             this.refreshHBillNoFocus()
diff --git a/pages/shouliaotongzhi/table.vue b/pages/shouliaotongzhi/table.vue
index 70d919f..2cd19e2 100644
--- a/pages/shouliaotongzhi/table.vue
+++ b/pages/shouliaotongzhi/table.vue
@@ -43,7 +43,7 @@
                     {{ MultiCodePrint ? "鍗曟潯鐮佹墦鍗�" : "澶氭潯鐮佹墦鍗�" }}
                 </button>
                 <!-- <button @click="getPrintCodeTest()" type="default" class="btn-c"> -->
-                    <!-- 鎵撳嵃娴嬭瘯 -->
+                <!-- 鎵撳嵃娴嬭瘯 -->
                 <!-- </button> -->
             </view>
         </view>
@@ -323,10 +323,11 @@
                             CampanyName: CampanyName
                         },
                         success: (res) => {
+
                             if (res.data.count == 1) {
                                 resolve(printInfoClone)
                             } else {
-                                reject()
+                                reject(res.data.Message)
                             }
                         },
                         fail: (res) => {
@@ -353,8 +354,8 @@
                 let printContent = []
                 let printInfoBuffer = []
                 let count = 0
-                console.log('testArray.length: ',testArray.length);
-                for (let i = 0;i<testArray.length; i++) {
+                console.log('testArray.length: ', testArray.length);
+                for (let i = 0; i < testArray.length; i++) {
                     // 鏉$爜瀛樺偍鎴愬姛鍚� 鑾峰彇鎵撳嵃鎸囦护
 
                     let printCode = new String()
@@ -363,7 +364,7 @@
                         "PAGE-WIDTH 608\r\n",
                         `FORM\r\n`,
                         `PRINT`).toString()
-                    console.log('printCode: ',printCode);
+                    console.log('printCode: ', printCode);
                     printContent.push(printCode)
                     count++;
                     if (count == 10) {
@@ -375,7 +376,7 @@
 
                 printInfoBuffer.push(printContent.join("\r\n"))
                 this.printInfo = JSON.stringify(printInfoBuffer)
-                console.log('this.printInfo: ',this.printInfo);
+                console.log('this.printInfo: ', this.printInfo);
                 printInfoBuffer = []
                 await this.$nextTick(() => {
                     this.$refs.labelPrinter.execPrint()
@@ -450,10 +451,10 @@
             },
             async execMultiPrint() {
                 this.printButtonDisabled = true
-                if (this.$printer.isConnected() === false) {
-                    this.$refs.labelPrinter.openPopup()
-                    return
-                }
+                // if (this.$printer.isConnected() === false) {
+                //     this.$refs.labelPrinter.openPopup()
+                //     return
+                // }
                 if (this.printableWaitCache.length == 0) {
                     return uni.showToast({
                         icon: 'none',
@@ -485,11 +486,11 @@
 
                     printInfoBuffer = []
 
-                    await this.$nextTick(() => {
-                        this.$refs.labelPrinter.execPrint()
-                        this.printableWaitCache = []
-                    })
-                    
+                    // await this.$nextTick(() => {
+                    //     this.$refs.labelPrinter.execPrint()
+                    //     this.printableWaitCache = []
+                    // })
+
                     this.printButtonDisabled = false
 
                 } catch (e) {
@@ -497,7 +498,7 @@
                     this.printInfo = "" // 娓呯┖鎵撳嵃缂撳瓨 
                     uni.showModal({
                         title: '娓╅Θ鎻愮ず',
-                        content: `鐗╂枡鍚�: ${printerOne['鐗╂枡鍚嶇О']} 娆惧彿: ${printerOne['娆惧彿']} 鍑虹幇閿欒锛屽凡閫�鍑烘墦鍗版祦绋媊,
+                        content: `鐗╂枡鍚�: ${printerOne['鐗╂枡鍚嶇О']} 娆惧彿: ${printerOne['娆惧彿']} ${e}锛屽凡閫�鍑烘墦鍗版祦绋媊,
                         showCancel: false
                     })
                 }
diff --git a/pages/weixiujilu/form.vue b/pages/weixiujilu/form.vue
new file mode 100644
index 0000000..d19c653
--- /dev/null
+++ b/pages/weixiujilu/form.vue
@@ -0,0 +1,1706 @@
+<template>
+    <view>
+        <view class="form">
+            <view class="tabs">
+                <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+                <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鍏朵粬淇℃伅</view>
+            </view>
+
+            <view v-if="tabs == 0">
+                <view class="form-item">
+                    <view class="title">妯″叿鏉$爜</view>
+                    <view class="right">
+                        <input type="text" name="HBarCode" v-model="hform.HBarCode"
+                            @confirm="getHBarCodeData(hform.HBarCode)" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">婧愬崟绫诲瀷</view>
+                    <view class="right" v-show="showHMainSourceBillType">
+                        <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType"
+                            @change="HMainSourceBillTypeChange">
+
+                            <input disabled name="HMainSourceBillType" v-model="HMainSourceBillType"
+                                placeholder="璇烽�夋嫨婧愬崟绫诲瀷" />
+                            <view class="picker-overlay"></view>
+                        </picker>
+                    </view>
+                    <view class="righton" v-show="!showHMainSourceBillType">
+                        <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType"
+                            placeholder="璇烽�夋嫨婧愬崟绫诲瀷" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">鏁呴殰鐧昏鍗�</view>
+                    <view class="right" v-show="hform.HMainSourceBillType != 1">
+                        <input type="text" name="HBarCode" v-model="hform.HMainSourceBillNo" />
+                    </view>
+                    <view class="icon-wrapper" v-show="hform.HMainSourceBillType != 1"
+                        :disabled="hform.HMainSourceBillType == -1">
+                        <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
+                    </view>
+                    <view class="righton" v-show="hform.HMainSourceBillType == 1">
+                        <input type="text" disabled name="HBarCode" v-model="hform.HMainSourceBillNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨寮�濮�</view>
+                    <view class="right">
+                        <uni-datetime-picker type="datetime" v-model="hform.HRepairBeginDate">
+                            <view style="font-size: 30rpx;">{{hform.HRepairBeginDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨缁撴潫</view>
+                    <view class="right">
+                        <uni-datetime-picker type="datetime" v-model="hform.HRepairEndDate">
+                            <view style="font-size: 30rpx;">{{hform.HRepairEndDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨鍙楃悊鏃ユ湡</view>
+                    <view class="right">
+                        <uni-datetime-picker type="datetime" v-model="hform.HRepairAccepDate">
+                            <view style="font-size: 30rpx;">{{hform.HRepairAccepDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨鍐呭</view>
+                    <view class="right">
+                        <textarea v-model="hform.HRepairContent" style="height: 6em;" maxlength="2000"
+                            placeholder="璇疯緭鍏ョ淮淇唴瀹�..." />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">璁″垝缁翠慨宸ユ椂</view>
+                    <view class="right">
+                        <input type="number" name="HPlanTimes" v-model="hform.HPlanTimes"
+                            @focus="hform.HPlanTimes = ''" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">瀹為檯缁翠慨宸ユ椂</view>
+                    <view class="right">
+                        <input type="number" name="HTimes" v-model="hform.HTimes" @focus="hform.HTimes = ''" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�</view>
+                    <view class="righton">
+                        <input name="HInterID" disabled v-model="hform.HBillNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鏃ユ湡</view>
+                    <view class="right">
+                        <uni-datetime-picker type="datetime" v-model="hform.HDate">
+                            <view style="font-size: 30rpx;">{{hform.HDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">閮ㄩ棬</view>
+                    <view class="right">
+                        <uni-combox :candidates="DeptNameList" placeholder="璇烽�夋嫨閮ㄩ棬" v-model="hform.HDeptName"
+                            @input="DeptChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">缁翠慨浜�</view>
+                    <view class="right">
+                        <uni-combox :candidates="EmpNameList" placeholder="璇烽�夋嫨鍙戠幇浜�" v-model="hform.HEmpName"
+                            @input="EmpChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">璐熻矗浜�</view>
+                    <view class="right">
+                        <uni-combox :candidates="EmpNameList" placeholder="璇烽�夋嫨璐熻矗浜�" v-model="hform.HManagerName"
+                            @input="ManagerChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title required">缁翠慨椤圭洰</view>
+                    <view class="right">
+                        <uni-combox :candidates="RepairNameNameList" placeholder="璇烽�夋嫨缁翠慨椤圭洰" v-model="hform.HRepairName"
+                            @input="RepairNameChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨瑕佹眰</view>
+                    <view class="right">
+                        <textarea v-model="hform.HExplanation" style="height: 6em;" maxlength="2000"
+                            placeholder="璇疯緭鍏ョ淮淇姹�..." />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">渚涘簲鍟�</view>
+                    <view class="right">
+                        <uni-combox :candidates="SupplierNameList" placeholder="璇烽�夋嫨渚涘簲鍟�" v-model="hform.HSupName"
+                            @input="SupplierChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨绫诲瀷</view>
+                    <view class="right">
+                        <picker :range="arrayRepairType" v-model="hform.HRepairType" @change="HRepairTypeChange">
+
+                            <input disabled name="HRepairType" v-model="hform.HRepairType" placeholder="璇烽�夋嫨缁翠慨绫诲瀷" />
+                            <view class="picker-overlay"></view>
+                        </picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">缁翠慨鍚庢柊瑙�</view>
+                    <view class="right">
+                        <textarea v-model="hform.HNewModel" style="height: 6em;" maxlength="2000"
+                            placeholder="璇疯緭鍏ョ淮淇悗鏂拌..." />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏂拌璁″鍛�</view>
+                    <view class="right">
+                        <textarea v-model="hform.HNewDesignLife" style="height: 6em;" maxlength="2000"
+                            placeholder="璇疯緭鍏ユ柊璁捐瀵垮懡..." />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿鍚嶇О</view>
+                    <view class="righton">
+                        <input disabled type="text" v-model="hform.HBarName" placeholder="璇疯緭鍏ュ櫒鍏峰悕绉�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿瑙勬牸</view>
+                    <view class="righton">
+                        <input disabled type="text" v-model="hform.HBarSpec" placeholder="璇疯緭鍏ュ櫒鍏疯鏍�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍣ㄥ叿鍨嬪彿</view>
+                    <view class="righton">
+                        <input disabled type="text" v-model="hform.HBarModel" placeholder="璇疯緭鍏ュ櫒鍏峰瀷鍙�" />
+                    </view>
+                </view>
+            </view>
+
+            <view v-if="tabs == 1">
+                <view class="form-item">
+                    <view class="title">鍒涘缓浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HMaker" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍒涘缓鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HMakeDate" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HUpDater" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HUpDateDate" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HChecker" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HCheckDate" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾浜�:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HDeleteMan" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾鏃ユ湡:</view>
+                    <view class="righton">
+                        <input type="text" v-model="hform.HDeleteDate" disabled />
+                    </view>
+                </view>
+            </view>
+
+            <view class="bottom-btn">
+                <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>
+        </view>
+        <BillListPopupMouldConkBookBillVue ref="billList" :HBillType="hform.HBillType"
+            :HSourceBillType="hform.HMainSourceBillType" :HStockOrgID="hform.HStockOrgID">
+        </BillListPopupMouldConkBookBillVue>
+        <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+    </view>
+</template>
+<script>
+    import getDateTime from '@/utils/getdateTime.js';
+    import {
+        getUserInfo
+    } from "@/utils/auth.js";
+    import {
+        CommonUtils
+    } from '../../utils/common';
+    import {
+        getUserStockRelation
+    } from '../../utils/userRelationManager';
+    import BillListPopupMouldConkBookBillVue from '../../components/BillListPopup/BillListPopupMouldConkBookBill.vue';
+    import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+    import dayjs from 'dayjs';
+    export default {
+        components: {
+            BarCodePopupVue,
+            BillListPopupMouldConkBookBillVue
+        },
+
+        data() {
+            return {
+                HSourceBillNoFocus: false,
+                barCodeFocus: false,
+
+                userInfo: getUserInfo(),
+                serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+                HModName: 'Kf_POStockInBackBill_PDA',
+                ModRightName: 'CE_POStockInBack',
+                OperationType: 1,
+                HInterID_Temp: '',
+
+                showHStockPlaceName: false,
+                showHMainSourceBillType: true,
+                showHSourceBillNo: true,
+                reHSourceBillNo: true,
+                showHSupName: true,
+                barCodeFocus: false,
+
+                tabs: 0,
+                HMainSourceBillType: '鎵嬪伐褰曞叆',
+                arrayHMainSourceBillType: ['鎵嬪伐褰曞叆', '妯″叿鏁呴殰鐧昏鍗�'],
+                arrayHMainSourceBillTypeID: ['1', '3815'],
+                arrayRepairType: ["鍐呴儴缁翠慨", "濮斿缁翠慨"],
+
+                linterid: '',
+                HBillNo: '',
+                btnType: 0, //0鏂板锛�1淇敼锛�2瀹℃牳锛�3鍙嶅鏍�
+                showmore: false,
+
+
+                materMeta: [],
+                arrayHWHName: [], //浠撳簱
+                HWHNameList: [],
+                arrayHStockPlaceName: [], //浠撲綅
+                HStockPlaceNameList: [],
+                arrayHSourceBillNo: [], //婧愬崟鍗曞彿
+                HSourceBillNoList: [],
+
+                // 渚涘簲鍟嗗垪琛�
+                SupplierNameList: [],
+                SupplierList: [],
+                // 閮ㄩ棬鍒楄〃
+                DeptNameList: [],
+                DeptList: [],
+                // 鑱屽憳鍒楄〃(鍚屾椂浣滀负鍙戠幇浜哄拰璐熻矗浜虹殑鍙�夋嫨瀵硅薄)
+                EmpNameList: [],
+                EmpList: [],
+                // 缁翠慨椤圭洰
+                RepairNameNameList: [],
+                RepairNameList: [],
+
+                Materlist: [],
+                hform: {
+                    "HBillType": 3807,
+                    "HBarCode": "",
+                    "HMainSourceBillType": "1",
+                    "HMainSourceBillNo": "",
+                    "HMainSourceInterID": "0",
+                    "HMainSourceEntryID": "0",
+                    "XDHList": "",
+                    "HRepairBeginDate": dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    "HRepairEndDate": dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    "HRepairAccepDate": dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    "HRepairContent": "",
+                    "HPlanTimes": "0",
+                    "HTimes": "0",
+                    "HBillNo": "",
+                    "HInterID": "0",
+                    "HDate": dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    "HDeptName": "",
+                    "HDeptID": "0",
+                    "Department": "",
+                    "HEmpName": "",
+                    "HEmpID": "0",
+                    "HEmp": "",
+                    "HManagerName": "",
+                    "HManagerID": "0",
+                    "HManager": "",
+                    "HRepairName": "",
+                    "HRepairID": "0",
+                    "HRepairList": "",
+                    "HExplanation": "",
+                    "HSupName": "",
+                    "HSupID": "0",
+                    "HSupIDList": "",
+                    "HRepairType": "鍐呴儴缁翠慨",
+                    "HNewModel": "",
+                    "HNewDesignLife": "",
+                    "HBarName": "",
+                    "HMouldID": "0",
+                    "HBarSpec": "",
+                    "HBarModel": "",
+                    "HMaker": getUserInfo()['Czymc'],
+                    "HMakeDate": dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    "HUpDater": "",
+                    "HUpDateDate": "",
+                    "HChecker": "",
+                    "HCheckDate": "",
+                    "HDeleteMan": "",
+                    "HDeleteDate": "",
+                    "toolbarDemo": "",
+                    "xuhao": "",
+                    "barDemo": "",
+                    "lngBillKey": "",
+                    "lngBillSubKey": "",
+                    "HStockOrgID": uni.getStorageSync("OrganizationID")
+
+                }
+            }
+        },
+        computed: {},
+        onLoad(e) {
+            console.log(e, this.userInfo)
+            this.OperationType = e.OperationType
+            if (e.HInterID) {
+                this.HInterID_Temp = e.HInterID
+                // this.btnType = 1
+                this.RoadBillMain(e.HInterID)
+                this.barCodeFocus = true
+            } else {
+                this.getNewData()
+                this.HSourceBillNoFocus = true
+            }
+
+            this.InitDept()
+            this.InitEmp()
+            this.InitSupplier()
+            this.InitRepairName()
+
+            uni.$on('BillSelectComplete', (e) => {
+                console.log("鎺ユ敹鍒扮殑娑堟伅: ", e)
+                this.hform.HMainSourceInterID = e.HInterID
+                this.hform.HMainSourceBillNo = e.HBillNo
+                this.hform.HMainSourceEntryID = e.HEntryID
+                this.hform.HMouldID = e.HMouldID
+                this.hform.HBarName = e.HMouldName
+                this.hform.HBarSpec = e.HMouldSpec
+                this.hform.HBarModel = e.HMouldModel
+                this.$refs.billList.exit()
+            })
+        },
+        onUnload() {
+            uni.$off('BillSelectComplete')
+        },
+        methods: {
+            // 缁翠慨椤圭洰
+            async InitRepairName() { // 鍒濆鍖栫淮淇」鐩�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/PublicPageMethod/Gy_RepairList_PDA',
+                        data: {
+                           sWhere: ''
+                        }
+                    })
+                
+                    let {
+                        count,
+                        data,
+                        code,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.RepairNameList = data
+                        this.RepairNameNameList = Array.from(data).map(elem => elem["HName"])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: '缁翠慨椤圭洰鍒濆鍖栧け璐�: ' + Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: '缁翠慨椤圭洰鍒濆鍖栧け璐�: ' + err
+                    })
+                }
+            },
+            RepairNameChange(elem) {
+                let index = this.RepairNameNameList.findIndex(e => e == elem)
+                
+                if (index == -1) {
+                    this.hform.HRepairName = ''
+                    this.hform.HRepairID = 0
+                    return
+                }
+                
+                this.hform.HRepairName = this.RepairNameList[index]['HName']
+                this.hform.HRepairID = this.RepairNameList[index]['HItemID']
+            },
+            // 缁翠慨绫诲瀷 鏇存敼 鍙ユ焺
+            HRepairTypeChange(e) {
+                let index = e.detail.value
+                if (index == NaN || index == -1) {
+                    this.hform.HRepairType = '鍐呴儴缁翠慨'
+                    return
+                }
+                this.hform.HRepairType = this.arrayRepairType[index]
+            },
+            // 渚涘簲鍟�
+            async InitSupplier() { // 鍒濆鍖栦緵搴斿晢\
+                let HOtherOrgID = this.hform.HStockOrgID || 0
+
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/WEBSController/GetSupplierList_Json',
+                        data: {
+                            Supplier: '',
+                            HStockOrgID: HOtherOrgID
+                        }
+                    })
+
+                    let {
+                        count,
+                        data,
+                        code,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.SupplierList = data
+                        this.SupplierNameList = Array.from(data).map(elem => elem["HName"])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: '渚涘簲鍟嗗垵濮嬪寲澶辫触: ' + Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: '渚涘簲鍟嗗垵濮嬪寲澶辫触: ' + err
+                    })
+                }
+            },
+            SupplierChange(elem) { // 渚涘簲鍟嗘洿鏀� 鍙ユ焺
+                let index = this.SupplierNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HSupName = ''
+                    this.hform.HSupID = 0
+                    return
+                }
+
+                this.hform.HSupName = this.SupplierList[index]['HName']
+                this.hform.HSupID = this.SupplierList[index]['HItemID']
+            },
+            // 閮ㄩ棬
+            async InitDept() { // 鍒濆鍖栭儴闂�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/PublicPageMethod/DeptList',
+                        data: {
+                            sWhere: 'where 1=1',
+                        }
+                    })
+                    let {
+                        count,
+                        code,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        this.DeptList = data
+                        this.DeptNameList = Array.from(data).map(elem => elem['HName'])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '閿欒鎻愮ず',
+                            message: "鍒濆鍖栭儴闂ㄩ敊璇�: " + Message,
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '閿欒鎻愮ず',
+                        message: "鍒濆鍖栭儴闂ㄩ敊璇�: " + err,
+                    })
+                }
+            },
+            DeptChange(elem) { // 閮ㄩ棬鏀瑰彉 鍙ユ焺
+                let index = this.DeptNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HDeptName = ''
+                    this.hform.HDeptID = 0
+                    return
+                }
+
+                this.hform.HDeptName = this.DeptList[index]['HName']
+                this.hform.HDeptID = this.DeptList[index]['HItemID']
+            },
+            // 鑱屽憳
+            async InitEmp() { // 鍒濆鍖栬亴鍛�
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetEmployeeList_Json',
+                        data: {
+                            Employee: '',
+                            HGroupID: 0,
+                        }
+                    })
+                    let {
+                        count,
+                        code,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        this.EmpList = data
+                        this.EmpNameList = Array.from(data).map(elem => elem['HName'])
+                    } else {
+                        CommonUtils.showTips({
+                            title: '閿欒鎻愮ず',
+                            message: "鍒濆鍖栬亴鍛橀敊璇�: " + Message,
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '閿欒鎻愮ず',
+                        message: "鍒濆鍖栬亴鍛橀敊璇�: " + err,
+                    })
+                }
+            },
+            EmpChange(elem) { // 缁翠慨浜烘洿鏀�
+                let index = this.EmpNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HEmpName = ''
+                    this.hform.HEmpID = 0
+                    return
+                }
+
+                this.hform.HEmpName = this.EmpList[index]['HName']
+                this.hform.HEmpID = this.EmpList[index]['HItemID']
+            },
+            ManagerChange(elem) { // 璐熻矗浜烘洿鏀�
+                let index = this.EmpNameList.findIndex(e => e == elem)
+
+                if (index == -1) {
+                    this.hform.HManagerName = ''
+                    this.hform.HManagerID = 0
+                    return
+                }
+
+                this.hform.HManagerName = this.EmpList[index]['HName']
+                this.hform.HManagerID = this.EmpList[index]['HItemID']
+            },
+
+
+            async qrCodeDisplay() {
+                try {
+                    this.$refs.barcodePopup.setCodeInfo(this.hform.HBillNo)
+                    await this.$nextTick()
+                    this.$refs.barcodePopup.open()
+                } catch (err) {
+                    uni.showToast({
+                        icon: 'none',
+                        title: err
+                    })
+                }
+            },
+            async getRelationStore() {
+                let {
+                    data,
+                    count
+                } = await getUserStockRelation()
+                if (count == 1) {
+                    let WHIDList = []
+
+                    Array.from(data).forEach(elem => {
+                        WHIDList.push(elem.HItemID)
+                    })
+
+                    let sWhere = ` and HItemID in (${WHIDList.join(",")})`
+                    this.getHBaseList({
+                        sWhere: sWhere
+                    })
+
+                } else {
+                    this.getHBaseList()
+                }
+            },
+            showBillList() {
+                this.$refs.billList.showPopup()
+            },
+            async refreshHSourceBillState() {
+                this.HSourceBillNoFocus = false
+                await this.$nextTick(() => {
+                    this.hform.HSourceBillNo = ""
+                    this.HSourceBillNoFocus = true
+
+                })
+            },
+            async refreshBarCodeState() {
+                this.barCodeFocus = false
+                await this.$nextTick(() => {
+                    this.hform.HBarCode = ""
+                    this.barCodeFocus = true
+                })
+            },
+            playSound(e) {
+                const innerAudioContext = uni.createInnerAudioContext();
+                if (e == 1) {
+                    innerAudioContext.src = '/static/success.wav';
+                } else {
+                    innerAudioContext.src = '/static/jingbao.wav';
+                }
+                innerAudioContext.play(); // 鎾斁闊抽
+            },
+            onSourceBillBlurHandler() {
+                if (this.hform.HMainSourceBillType == -1) {
+                    this.playSound(1)
+                    this.barCodeFocus = true
+                    return
+                }
+                let inputVal = ''
+                if (this.$refs.uniComboxSourceBill) {
+                    inputVal = this.$refs.uniComboxSourceBill.inputVal || this.hform.HSourceBillNo
+                } else {
+                    inputVal = this.hform.HSourceBillNo
+                }
+                if (inputVal == '') {
+                    CommonUtils.playSound(0)
+                    return uni.showToast({
+                        icon: 'none',
+                        Message: '婧愬崟鍗曞彿涓嶅緱涓虹┖...'
+                    })
+                }
+                this.getHBarCodeData(inputVal)
+            },
+            //鎵爜
+            toScanCode() {
+                var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
+                mpaasScanModule.mpaasScan({
+                    'hideAlbum': true,
+                    'timeoutInterval': '10', //瓒呮椂鏃堕棿
+                    'timeoutText': '鏈瘑鍒埌浜岀淮鐮�' //瓒呮椂鎻愰啋            
+                }, (ret) => {
+                    console.log(ret.resp_result)
+                    if (this.hform.HBarCode == '*') {
+                        this.hform.HBarCode = this.hform.HBarCode + ret.resp_result
+                    } else {
+                        this.hform.HBarCode = ret.resp_result
+                    }
+
+                    this.getCode(this.hform.HBarCode)
+                })
+            },
+            //鏃ユ湡
+            HDateChange(e) {
+                console.log(e.detail.value)
+                this.hform.HDate = e.detail.value
+            },
+            //閫夋嫨婧愬崟绫诲瀷
+            HMainSourceBillTypeChange(e) {
+                if (e.detail.value == -1 || e.detail.value == NaN) {
+                    this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    this.hform.HMainSourceBillType = -1
+                    return
+                }
+
+                this.HMainSourceBillType = this.arrayHMainSourceBillType[e.detail.value]
+                this.hform.HMainSourceBillType = this.arrayHMainSourceBillTypeID[e.detail.value]
+            },
+            // 鎵弿妯″叿鏉$爜
+            async getHBarCodeData(HBarCode) {
+                if (!HBarCode) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: '鏉$爜涓嶈兘涓虹┖'
+                    })
+                    return;
+                }
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/QJ_PDA_MouldDotCheckBill/txtHBarCode_KeyDown',
+                        data: {
+                            HBarCode: HBarCode
+                        }
+                    })
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.hform.HMouldID = data[0].HInterID;
+                        this.hform.HBarName = data[0].HName;
+                        this.hform.HBarSpec = data[0].HModels;
+                        this.hform.HBarModel = data[0].HModel2;
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+
+
+            },
+            //鎵潯鐮佸鐞�
+            async getCode(HBarCode) {
+                //浠撳簱銆佷粨浣嶆枃鏈涓虹┖鏃讹紝娓呯┖瀵瑰簲ID
+                if (!this.hform.HWHName) {
+                    this.hform.HWHID = 0
+                }
+                if (!this.hform.HStockPlaceName) {
+                    this.hform.HStockPlaceID = 0
+                }
+                var sOldBarCode = HBarCode
+                var HDeleteFlag = sOldBarCode.substring(0, 1);
+                var sBarCode = sOldBarCode.slice(1);
+
+                var sHWHID = this.hform.HWHID
+                var sHSPID = this.hform.HStockPlaceID
+                var sHQty = this.hform.HQty
+                var sSourceBillNo = this.hform.HSourceBillNo
+                var sSourceBillType = this.hform.HMainSourceBillType
+                var HSourceFlag = this.hform.HSourceBillNo == '' ? false : true
+                console.log(this.hform.HSourceBillNo, HSourceFlag)
+                if (HDeleteFlag == "*") {
+                    if (sBarCode == "") {
+                        this.playSound(0)
+                        this.refreshBarCodeState()
+                        uni.showToast({
+                            title: '璇锋壂鎻忚鍒犻櫎鐨勬潯鐮�',
+                            icon: 'none'
+                        })
+                    } else {
+                        try {
+                            let res = await CommonUtils.doRequest2Sync({
+                                url: '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
+                                data: {
+                                    HInterID: this.hform.HInterID,
+                                    HBillType: this.hform.HBillType,
+                                    HBarCode: sBarCode
+                                }
+                            })
+
+                            if (!res) {
+                                return
+                            }
+
+                            console.log('鍒犻櫎鏉$爜', res.data);
+                            this.hform.HBarCode = ''
+                            if (res.data.count == 1) {
+                                this.playSound(1)
+                                this.hform.HQty = ''
+                                this.DisBillEntryList()
+                            } else {
+                                this.playSound(0)
+                                this.refreshBarCodeState()
+                                uni.showToast({
+                                    title: res.data.Message,
+                                    icon: 'none'
+                                })
+                            }
+                        } catch (err) {
+                            this.refreshBarCodeState()
+                            this.playSound(0)
+                            uni.showToast({
+                                title: '鎺ュ彛璇锋眰澶辫触: ' + err,
+                                icon: 'none'
+                            })
+                        }
+
+                        // uni.request({
+                        //     url: this.serverUrl +
+                        //         '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
+                        //     data: {
+                        //         HInterID: this.hform.HInterID,
+                        //         HBillType: this.hform.HBillType,
+                        //         HBarCode: sBarCode
+                        //     },
+                        //     success: (res) => {
+                        //         console.log('鍒犻櫎鏉$爜', res.data);
+                        //         this.hform.HBarCode = ''
+                        //         if (res.data.count == 1) {
+                        //             this.playSound(1)
+                        //             this.hform.HQty = ''
+                        //             CommonUtils.playSound(1)
+                        //             this.DisBillEntryList()
+                        //         } else {
+                        //             this.playSound(0)
+                        //             this.refreshBarCodeState()
+                        //             uni.showToast({
+                        //                 title: res.data.Message,
+                        //                 icon: 'none'
+                        //             })
+                        //         }
+                        //     },
+                        //     fail: (res) => {
+                        //         this.playSound(0)
+                        //         this.refreshBarCodeState()
+                        //         console.log(res);
+                        //         uni.showToast({
+                        //             title: '鎺ュ彛璇锋眰澶辫触',
+                        //             icon: 'none'
+                        //         })
+                        //     },
+                        // });
+                    }
+                } else {
+                    var sBarCode = this.hform.HBarCode
+                    if (sHQty == "") {
+                        sHQty = 0;
+                    }
+
+                    try {
+                        let res = await CommonUtils.doRequest2Sync({
+                            url: '/WEBSController/Get_BarCode_Json',
+                            data: {
+                                sBarCode: sBarCode,
+                                HInterID: this.hform.HInterID,
+                                HBillType: this.hform.HBillType,
+                                HBillNo: this.hform.HBillNo,
+                                HMaker: this.hform.HMaker,
+                                HWhID: sHWHID,
+                                HSPID: sHSPID,
+                                HQty: sHQty,
+                                HRedBlueFlag: this.hform.HRedBlueFlag,
+                                SourceFlag: HSourceFlag,
+                                HSourceBillNo: sSourceBillNo,
+                                HSourceBillType: sSourceBillType,
+                                HStockOrgID: this.hform.HStockOrgID,
+                                HScanStyle: "",
+                                HCustom1: "",
+                                HCustom2: ""
+                            },
+                        })
+                        if (!res) {
+                            return
+                        }
+                        console.log('鎵爜杩斿洖', res.data);
+                        this.hform.HBarCode = ''
+                        if (res.data.count == 1) {
+                            this.playSound(1)
+                            var data = res.data.data
+                            if (data.hBarTypeField == '浠撳簱鏉$爜') {
+                                this.hform.HWHName = data.hWhNameField
+                                this.hform.HWHID = data.hWhIDField
+                                this.hform.HStockPlaceName = ''
+                                this.hform.HStockPlaceID = 0
+                                if (data.hSPFlagField == 0) {
+                                    this.showHStockPlaceName = false
+                                } else {
+                                    this.showHStockPlaceName = true
+                                }
+                            } else if (data.hBarTypeField == '浠撲綅鏉$爜') {
+                                this.hform.HWHName = data.hWhNameField
+                                this.hform.HWHID = data.hWhIDField
+                                this.hform.HStockPlaceName = data.hSPNameField
+                                this.hform.HStockPlaceID = data.hSPIDField
+                            } else if (data.hBarTypeField == '閮ㄩ棬鏉$爜') {
+                                this.hform.HDeptName = data.hDeptNameField
+                                this.hform.HDeptID = data.hDeptIDField
+                                this.tabs = 1
+                            } else if (data.hBarTypeField == '婧愬崟鏉$爜') {
+                                this.hform.HSupName = data.hSupNameField
+                                this.hform.HSupID = data.hSupIDField
+                                if (data.hDeptIDField != 0) {
+                                    this.hform.HDeptID = data.hDeptIDField
+                                    this.hform.HDeptName = data.hDeptNameField
+                                }
+                                this.hform.HSourceBillNo = data.hSourceBillNoField
+                                //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                                this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                                if (data.hSourceBillTypeField == "1105") {
+                                    this.HMainSourceBillType = '閫�鏂欓�氱煡鍗�'
+                                    this.hform.HMainSourceBillType = 1105
+                                    this.showHMainSourceBillType = false
+                                } else if (data.hSourceBillTypeField == "1102") {
+                                    this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                                    this.hform.HMainSourceBillType = 1102
+                                    this.showHMainSourceBillType = false
+                                } else if (data.hSourceBillType == 1201) {
+                                    this.HMainSourceBillType = '閲囪喘鍏ュ簱鍗�'
+                                    this.hform.HMainSourceBillType = 1201
+                                    this.showHMainSourceBillType = false
+                                } else {
+                                    this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                                    this.hform.HMainSourceBillType = -1
+                                    this.showHMainSourceBillType = false
+                                }
+                                if (data.hMulSourceFlagField == 0) {
+                                    this.showHSourceBillNo = false
+                                }
+                                //渚涘簲鍟嗕笉鍙紪杈�
+                                this.showHSupName = false
+                                this.tabs = 2
+                            } else { //鐗╂枡鏉$爜
+                                this.tabs = 2
+                                if (!this.hform.HSourceBillNo) {
+                                    this.hform.HSupName = data.hSupNameField
+                                    this.hform.HSupID = data.hSupIDField
+                                    this.hform.HSourceBillNo = data.hSourceBillNoField
+                                    if (data.hDeptIDField != 0) {
+                                        this.hform.HDeptID = data.hDeptIDField
+                                        this.hform.HDeptName = data.hDeptNameField
+                                    }
+                                    console.log(data)
+                                    //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                                    this.hform.HMainSourceBillType = data.hSourceBillTypeField
+
+                                    let index = this.arrayHMainSourceBillValue.findIndex(e => e ==
+                                        data
+                                        .hSourceBillTypeField)
+                                    if (index != -1) {
+                                        this.HMainSourceBillType = this.arrayHMainSourceBillType[
+                                            index]
+                                        this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                                        this.showHMainSourceBillType = false
+                                    }
+                                    // if (data.hSourceBillTypeField == "1103") {
+                                    // 	this.HMainSourceBillType = '鏀舵枡閫氱煡鍗�'
+                                    // 	this.hform.HMainSourceBillType = 1103
+                                    // 	this.showHMainSourceBillType = false
+                                    // } else if (data.hSourceBillTypeField == "1102") {
+                                    // 	this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                                    // 	this.hform.HMainSourceBillType = 1102
+                                    // 	this.showHMainSourceBillType = false
+                                    // } else {
+                                    // 	this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                                    // 	this.hform.HMainSourceBillType = -1
+                                    // 	this.showHMainSourceBillType = false
+                                    // }
+                                    if (data.hMulSourceFlagField == 0) {
+                                        this.showHSourceBillNo = false
+                                    }
+                                    //渚涘簲鍟嗕笉鍙紪杈�
+                                    this.showHSupName = false
+                                }
+                            }
+                            //鏄剧ず琛ㄤ綋鏄庣粏
+                            this.DisBillEntryList()
+                            //娓呯┖鏁伴噺
+                            this.hform.HQty = ''
+                        } else {
+                            this.playSound(0)
+                            this.refreshBarCodeState()
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    } catch (err) {
+                        this.playSound(0)
+                        this.refreshBarCodeState()
+                        console.log(err);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触: ' + err,
+                            icon: 'none'
+                        })
+                    }
+
+                    // uni.request({
+                    //     url: this.serverUrl + '/WEBSController/Get_BarCode_Json',
+                    //     data: {
+                    //         sBarCode: sBarCode,
+                    //         HInterID: this.hform.HInterID,
+                    //         HBillType: this.hform.HBillType,
+                    //         HBillNo: this.hform.HBillNo,
+                    //         HMaker: this.hform.HMaker,
+                    //         HWhID: sHWHID,
+                    //         HSPID: sHSPID,
+                    //         HQty: sHQty,
+                    //         HRedBlueFlag: this.hform.HRedBlueFlag,
+                    //         SourceFlag: HSourceFlag,
+                    //         HSourceBillNo: sSourceBillNo,
+                    //         HSourceBillType: sSourceBillType,
+                    //         HStockOrgID: this.hform.HStockOrgID,
+                    //         HScanStyle: "",
+                    //         HCustom1: "",
+                    //         HCustom2: ""
+                    //     },
+                    //     success: (res) => {
+                    //         console.log('鎵爜杩斿洖', res.data);
+                    //         this.hform.HBarCode = ''
+                    //         if (res.data.count == 1) {
+                    //             this.playSound(1)
+                    //             var data = res.data.data
+                    //             if (data.hBarTypeField == '浠撳簱鏉$爜') {
+                    //                 this.hform.HWHName = data.hWhNameField
+                    //                 this.hform.HWHID = data.hWhIDField
+                    //                 this.hform.HStockPlaceName = ''
+                    //                 this.hform.HStockPlaceID = 0
+                    //                 if (data.hSPFlagField == 0) {
+                    //                     this.showHStockPlaceName = false
+                    //                 } else {
+                    //                     this.showHStockPlaceName = true
+                    //                 }
+                    //             } else if (data.hBarTypeField == '浠撲綅鏉$爜') {
+                    //                 this.hform.HWHName = data.hWhNameField
+                    //                 this.hform.HWHID = data.hWhIDField
+                    //                 this.hform.HStockPlaceName = data.hSPNameField
+                    //                 this.hform.HStockPlaceID = data.hSPIDField
+                    //             } else if (data.hBarTypeField == '閮ㄩ棬鏉$爜') {
+                    //                 this.hform.HDeptName = data.hDeptNameField
+                    //                 this.hform.HDeptID = data.hDeptIDField
+                    //                 this.tabs = 1
+                    //             } else if (data.hBarTypeField == '婧愬崟鏉$爜') {
+                    //                 this.hform.HSupName = data.hSupNameField
+                    //                 this.hform.HSupID = data.hSupIDField
+                    //                 if (data.hDeptIDField != 0) {
+                    //                     this.hform.HDeptID = data.hDeptIDField
+                    //                     this.hform.HDeptName = data.hDeptNameField
+                    //                 }
+                    //                 this.hform.HSourceBillNo = data.hSourceBillNoField
+                    //                 //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                    //                 this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                    //                 if (data.hSourceBillTypeField == "1105") {
+                    //                     this.HMainSourceBillType = '閫�鏂欓�氱煡鍗�'
+                    //                     this.hform.HMainSourceBillType = 1105
+                    //                     this.showHMainSourceBillType = false
+                    //                 } else if (data.hSourceBillTypeField == "1102") {
+                    //                     this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                    //                     this.hform.HMainSourceBillType = 1102
+                    //                     this.showHMainSourceBillType = false
+                    //                 } else if (data.hSourceBillType == 1201) {
+                    //                     this.HMainSourceBillType = '閲囪喘鍏ュ簱鍗�'
+                    //                     this.hform.HMainSourceBillType = 1201
+                    //                     this.showHMainSourceBillType = false
+                    //                 } else {
+                    //                     this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    //                     this.hform.HMainSourceBillType = -1
+                    //                     this.showHMainSourceBillType = false
+                    //                 }
+                    //                 if (data.hMulSourceFlagField == 0) {
+                    //                     this.showHSourceBillNo = false
+                    //                 }
+                    //                 //渚涘簲鍟嗕笉鍙紪杈�
+                    //                 this.showHSupName = false
+                    //                 this.tabs = 2
+                    //             } else { //鐗╂枡鏉$爜
+                    //                 this.tabs = 2
+                    //                 if (!this.hform.HSourceBillNo) {
+                    //                     this.hform.HSupName = data.hSupNameField
+                    //                     this.hform.HSupID = data.hSupIDField
+                    //                     this.hform.HSourceBillNo = data.hSourceBillNoField
+                    //                     if (data.hDeptIDField != 0) {
+                    //                         this.hform.HDeptID = data.hDeptIDField
+                    //                         this.hform.HDeptName = data.hDeptNameField
+                    //                     }
+                    //                     console.log(data)
+                    //                     //鑾峰彇婧愬崟绫诲瀷銆佹簮鍗曞崟鍙�
+                    //                     this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                    // 
+                    //                     let index = this.arrayHMainSourceBillValue.findIndex(e => e ==
+                    //                         data
+                    //                         .hSourceBillTypeField)
+                    //                     if (index != -1) {
+                    //                         this.HMainSourceBillType = this.arrayHMainSourceBillType[
+                    //                             index]
+                    //                         this.hform.HMainSourceBillType = data.hSourceBillTypeField
+                    //                         this.showHMainSourceBillType = false
+                    //                     }
+                    //                     // if (data.hSourceBillTypeField == "1103") {
+                    //                     // 	this.HMainSourceBillType = '鏀舵枡閫氱煡鍗�'
+                    //                     // 	this.hform.HMainSourceBillType = 1103
+                    //                     // 	this.showHMainSourceBillType = false
+                    //                     // } else if (data.hSourceBillTypeField == "1102") {
+                    //                     // 	this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                    //                     // 	this.hform.HMainSourceBillType = 1102
+                    //                     // 	this.showHMainSourceBillType = false
+                    //                     // } else {
+                    //                     // 	this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    //                     // 	this.hform.HMainSourceBillType = -1
+                    //                     // 	this.showHMainSourceBillType = false
+                    //                     // }
+                    //                     if (data.hMulSourceFlagField == 0) {
+                    //                         this.showHSourceBillNo = false
+                    //                     }
+                    //                     //渚涘簲鍟嗕笉鍙紪杈�
+                    //                     this.showHSupName = false
+                    //                 }
+                    //             }
+                    //             //鏄剧ず琛ㄤ綋鏄庣粏
+                    //             this.DisBillEntryList()
+                    //             //娓呯┖鏁伴噺
+                    //             this.hform.HQty = ''
+                    //         } else {
+                    //             this.playSound(0)
+                    //             this.refreshBarCodeState()
+                    //             uni.showToast({
+                    //                 title: res.data.Message,
+                    //                 icon: 'none'
+                    //             })
+                    //         }
+                    //     },
+                    //     fail: (res) => {
+                    //         this.playSound(0)
+                    //         this.refreshBarCodeState()
+                    //         console.log(res);
+                    //         uni.showToast({
+                    //             title: '鎺ュ彛璇锋眰澶辫触',
+                    //             icon: 'none'
+                    //         })
+                    //     },
+                    // });
+                }
+            },
+            //鐗╂枡淇℃伅
+            DisBillEntryList() {
+                uni.request({
+                    url: this.serverUrl + '/WEBSController/GetBillEntryTmpList_Json',
+                    data: {
+                        HInterID: this.hform.HInterID,
+                        HBillNo: this.hform.HBillNo,
+                        HBillType: this.hform.HBillType,
+                        HStockOrgID: this.hform.HStockOrgID
+                    },
+                    success: (res) => {
+                        console.log('鐗╂枡', res.data)
+                        if (res.data.count == 1) {
+                            var data = res.data.data
+                            this.materMeta = data.BarCodeDetailslist
+                            this.Materlist = data.Materlist
+                            if (/鍏磋揪/.test(uni.getStorageSync("Organization"))) {
+                                // 鍏磋揪瀹㈡埛 甯﹀嚭 浠撳簱
+                                console.log("鍏磋揪甯﹀嚭榛樿浠撳簱")
+                                this.HWHNameChange(data.BarCodeDetailslist[0].HWHName)
+                            }
+
+
+                            if (!data.BarCodeDetailslist[0].HBarCode) {
+                                this.hform.HMaterName_B = ''
+                                this.hform.HMaterModel_B = ''
+                                this.hform.HBatchNo_B = ''
+                                this.hform.HUnitName_B = ''
+                                this.hform.HQty_B = ''
+                                this.hform.HTMQty_B = ''
+                                this.hform.HWHName_B = ''
+                                this.hform.HSPName_B = ''
+                            } else {
+                                this.hform.HMaterName_B = data.BarCodeDetailslist[0].HMaterName
+                                this.hform.HMaterModel_B = data.BarCodeDetailslist[0].HMaterModel
+                                this.hform.HBatchNo_B = data.BarCodeDetailslist[0].HBatchNo
+                                this.hform.HUnitName_B = data.BarCodeDetailslist[0].HUnitName
+                                this.hform.HQty_B = data.BarCodeDetailslist[0].HQty
+                                this.hform.HTMQty_B = data.BarCodeDetailslist[0].HTMQty
+                                this.hform.HWHName_B = data.BarCodeDetailslist[0].HWHName
+                                this.hform.HSPName_B = data.BarCodeDetailslist[0].HSPName
+                            }
+                        } else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            //鍒犻櫎鐗╂枡鐮�
+            delMater(item) {
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + item.鐗╂枡鍚嶇О + ' " 鎵�鏈夋壂鐮佽褰曪紵鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            uni.request({
+                                url: this.serverUrl +
+                                    '/WEBSController/set_DelPonderationBillMain_Temp_InterIDAndSource_Json',
+                                data: {
+                                    HInterID: this.hform.HInterID,
+                                    HMaterID: item.HMaterID,
+                                    HAuxPropID: item.HAuxPropID,
+                                    HMTONo: item.HMTONo,
+                                    HSourceInterID: item.HSourceInterID,
+                                    HSourceEntryID: item.HSourceEntryID,
+                                    HBillType: this.hform.HBillType
+                                },
+                                success: (res) => {
+                                    if (res.data.count == 1) {
+                                        this.DisBillEntryList()
+                                    } else {
+                                        uni.showToast({
+                                            title: res.data.Message,
+                                            icon: 'none'
+                                        })
+                                    }
+                                },
+                                fail: (res) => {
+                                    console.log(res);
+                                    uni.showToast({
+                                        title: '鎺ュ彛璇锋眰澶辫触',
+                                        icon: 'none'
+                                    })
+                                },
+                            });
+                        }
+                    }
+                });
+            },
+            // 鏂板鍥炶皟
+            addNew() {
+                uni.redirectTo({
+                    url: '/pages/caigoutuiliao/form?OperationType=1'
+                })
+            },
+            //鏂板
+            getNewData() {
+                uni.request({
+                    url: this.serverUrl + '/Web/GetMAXNum',
+                    data: {
+                        HBillType: this.hform.HBillType
+                    },
+                    success: (res) => {
+                        // console.log(res.data)
+                        if (res.data.count == 1) {
+                            this.hform.HInterID = 0
+                            this.hform.HBillNo = res.data.data[0].HBillNo
+                        } else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            //淇敼鍥炲~鏁版嵁
+            RoadBillMain(HInterID) {
+                uni.request({
+                    url: this.serverUrl + '/WEBSController/GetSourceBill_Temp_Json',
+                    data: {
+                        HInterID: HInterID,
+                        HBillType: this.hform.HBillType
+                    },
+                    success: (res) => {
+                        console.log(33, res.data.data[0]);
+                        if (res.data.count == 1) {
+                            var data = res.data.data[0]
+                            this.hform.HInterID = data.HInterID
+                            this.hform.HBillNo = data.HBillNo
+                            this.hform.HMainSourceBillType = data.HSourceBillType
+                            this.hform.HSourceBillNo = data.HSourceBillNo
+                            if (data.HSourceBillType == 1105) {
+                                this.hform.HMainSourceBillType = 1105
+                                this.HMainSourceBillType = '閫�鏂欓�氱煡鍗�'
+                                this.showHSupName = false
+                            } else if (data.HSourceBillType == 1102) {
+                                this.hform.HMainSourceBillType = 1102
+                                this.HMainSourceBillType = '閲囪喘璁㈠崟'
+                                this.showHSupName = false
+                            } else if (data.HSourceBillType == 1201) {
+                                this.hform.HMainSourceBillType = 1201
+                                this.HMainSourceBillType = '閲囪喘鍏ュ簱鍗�'
+                                this.showHSupName = false
+                            } else {
+                                this.hform.HMainSourceBillType = -1
+                                this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                            }
+                            this.showHMainSourceBillType = false
+
+                            //闈炲婧愬崟妯″紡
+                            if (data.HMulSourceBill == 0) {
+                                this.showHSourceBillNo = false
+                            }
+                            this.hform.HDeptID = data.HDeptID
+                            this.hform.HDeptName = data.HDeptName
+                            this.hform.HSupID = data.HCusID
+                            this.hform.HSupName = data.HSupName
+                            this.DisBillEntryList()
+                            this.tabs = 2
+                        } else {
+                            uni.showToast({
+                                title: '鑾峰彇鏁版嵁鍥炲~澶辫触',
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '鎺ュ彛璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            checkBillValidate() {
+                let message = ''
+
+                if (!this.hform.HMainSourceBillNo && this.hform.HMainSourceBillType != '1') {
+                    message = '鏈~鍐欐晠闅滅櫥璁板崟'
+                } else if (!this.hform.HDeptName) {
+                    message = '鏈~鍐欓儴闂�'
+                } else if (!this.hform.HEmpName) {
+                    message = '鏈~鍐欑淮淇汉浜�'
+                } else if (!this.hform.HManagerName) {
+                    message = '鏈~鍐欒礋璐d汉'
+                } else if (!this.hform.HRepairName) {
+                    message = '鏈~鍐欑淮淇」鐩�'
+                }
+
+                if (!message) {
+                    return true
+                }
+
+                CommonUtils.showTips({
+                    message: message
+                })
+                return false
+            },
+            async submit() {
+                if (!this.checkBillValidate()) {
+                    return
+                }
+                let oMain = JSON.stringify(this.hform)
+                let sSubStr = JSON.stringify(
+                    [{
+                        "HRepairID": this.hform.HRepairID,
+                        "HRepairCode": "",
+                        "HRepairName": "",
+                        "HManagerID": this.hform.HManagerID,
+                        "HManagerCode": "",
+                        "HManagerName": "",
+                        "HRepairExplanation": this.hform.HExplanation,
+                        "HRemark": "",
+                        "HMoney": 0,
+                        "HSourceInterID": this.hform.HMainSourceInterID,
+                        "HSourceEntryID": this.hform.HMainSourceEntryID,
+                        "HSourceBillNo": this.hform.HMainSourceBillNo
+                    }]
+                )
+                let sMainSub = `${oMain};${sSubStr};${getUserInfo()["Czymc"]};`
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/Sb_MouldRepairWorkBill/SaveGetMouldRepairWorkBill_PDA',
+                        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/weixiujilu/form?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
+                    })
+                    this.EnableSave = true
+                }
+            },
+
+            goBack() {
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕侀��鍑哄綋鍓嶉〉闈㈠悧锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            uni.navigateBack()
+                        } else if (res.cancel) {
+                            console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                        }
+                    }
+                });
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .page {
+        height: auto;
+    }
+
+    .form {
+        width: 668rpx;
+        padding: 0rpx 20rpx;
+        padding-bottom: 240rpx;
+    }
+
+    .tab_area {
+        width: 100%;
+        height: 50rpx;
+    }
+
+    .other {
+        margin-top: 8rpx;
+        text-align: center;
+        font-size: 28rpx;
+        padding: 4rpx 18rpx;
+        color: #1890FF;
+    }
+
+    .tabs {
+        width: 100%;
+        display: flex;
+        border-bottom: 1px solid #ddd;
+        margin: 20rpx 0;
+
+        view {
+            width: 25%;
+            font-size: 30rpx;
+            color: #555;
+            text-align: center;
+            padding: 16rpx 0;
+        }
+
+        .on {
+            color: #3a78ff;
+            font-weight: bold;
+            border-bottom: 3px solid #3a78ff;
+        }
+    }
+
+    .form-item {
+        display: flex;
+        align-items: center;
+        font-size: inherit;
+        padding: 6rpx 0;
+        gap: 12rpx;
+
+        .title {
+            width: 200rpx;
+            font-size: 30rpx;
+
+            text {
+                color: red;
+                font-weight: bold;
+            }
+        }
+
+        .right {
+            flex: 1;
+            border-radius: 22rpx;
+            border: 1px solid #acacac;
+            position: relative;
+            padding: 8rpx 16rpx;
+            display: flex;
+
+            picker {
+                width: 100%;
+            }
+
+            .uni-combox {
+                width: 100%;
+                padding: 0;
+
+                ::v-deep .uni-combox__input {
+                    font-size: 30rpx;
+                    height: auto;
+                }
+            }
+        }
+
+        .righton {
+            flex: 1;
+            border-radius: 22rpx;
+            border: 1px solid #e4e4e4;
+            background-color: #e4e4e4;
+            padding: 8rpx 16rpx;
+        }
+
+        input {
+            width: 100%;
+            font-size: 30rpx;
+        }
+
+        textarea {
+            width: 98%;
+            font-size: 30rpx;
+        }
+
+    }
+
+    .bottom-btn {
+        width: 100%;
+        box-sizing: border-box;
+        // height: 120rpx;
+        position: fixed;
+        bottom: 0;
+        left: 0;
+        background-color: #fff;
+        box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+        padding: 30rpx 40rpx 40rpx 40rpx;
+        display: flex;
+        flex-direction: row;
+        gap: 10rpx;
+
+        button {
+            border-radius: 50rpx;
+            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;
+        }
+    }
+
+    .list {
+        width: 100%;
+
+        .card-detail {
+            width: 100%;
+            display: flex;
+            flex-wrap: wrap;
+            justify-content: space-between;
+            line-height: 120%;
+
+            .detail {
+                // width: 50%;
+                font-size: 26rpx;
+                margin-bottom: 12rpx;
+                color: #555;
+                margin-right: 20rpx;
+
+                text {
+                    color: #999;
+                    font-size: 26rpx;
+                }
+            }
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+    }
+
+    .icon-wrapper {
+        background-color: #3A78FF;
+        width: 52rpx;
+        height: 52rpx;
+        border-radius: 100%;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+
+        .uni-icons {
+            color: #fff !important;
+        }
+    }
+
+    .required {
+        position: relative;
+
+    }
+
+    .required::after {
+        content: "*";
+        position: relative;
+        color: red;
+        left: 0;
+        top: 0;
+        font-size: inherit;
+    }
+
+    .icon-wrapper[disabled] {
+        background-color: rgba(228, 228, 228, 1);
+        pointer-events: none;
+        touch-action: none;
+    }
+</style>
\ No newline at end of file
diff --git a/pages/weixiujilu/table.vue b/pages/weixiujilu/table.vue
new file mode 100644
index 0000000..cf12e77
--- /dev/null
+++ b/pages/weixiujilu/table.vue
@@ -0,0 +1,587 @@
+<template>
+    <view class="page" id="pageContent">
+        <view class="search-condition-zone">
+            <view class="form-item">
+                <view class="left">
+                    鏃ユ湡:
+                </view>
+                <view class="daterange" style="flex: 1;">
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HBeginDate">
+                            <view>{{hform.HBeginDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                    <view>鈥�</view>
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HEndDate">
+                            <view>{{hform.HEndDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍣ㄥ叿缂栫爜:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HMoNumber" />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍣ㄥ叿鍚嶇О:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HMoName" />
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="left">
+                    鍗曟嵁鍙�:
+                </view>
+                <view class="right general">
+                    <input type="text" v-model="hform.HBillNo" />
+                </view>
+            </view>
+        </view>
+        <view class="button-zone">
+            <button type="default" class="btn-a" size="mini" @tap="cmdAdd">鏂板</button>
+            <button type="default" class="btn-a" size="mini" @tap="cmdSearch">鏌ヨ</button>
+            <button type="default" class="btn-c" size="mini" @tap="exit">閫�鍑�</button>
+        </view>
+        <view class="info-list-zone" id="scroll-content" :style="{height: scrollContentHeight + 'px'}">
+            <view class="card-item" v-for="(item, index) in listDataShow">
+                <uni-card :title="item['鍗曟嵁鍙�']" :extra="'鏃ユ湡:' + item['鏃ユ湡'].split('T')[0]"
+                    @tap="showDetail = showDetail==index?-1:index">
+                    <view class="card-detail">
+                        <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['璁惧浠g爜']">
+                            <text>璁惧浠g爜锛�</text>{{item['璁惧浠g爜']}}
+                        </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['缁翠慨寮�濮嬫棩鏈�']">
+                            <text>缁翠慨寮�濮嬫棩鏈燂細</text>{{item['缁翠慨寮�濮嬫棩鏈�'].split("T")[0]}}
+                        </view>
+                        <view class="detail" v-if="item['缁翠慨缁撴潫鏃ユ湡']">
+                            <text>缁翠慨缁撴潫鏃ユ湡锛�</text>{{item['缁翠慨缁撴潫鏃ユ湡'].split("T")[0]}}
+                        </view>
+                        <view class="detail" v-if="item['缁翠慨鍐呭']">
+                            <text>缁翠慨鍐呭锛�</text>{{item['缁翠慨鍐呭']}}
+                        </view>
+
+                    </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>{{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['璐熻矗浜�']}}
+                        </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['鏂拌璁″鍛�']}}
+                        </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['鍒跺崟鏃ユ湡'].split("T")[0]}}
+                        </view>
+                        <view class="detail" v-if="item['瀹℃牳浜�']">
+                            <text>瀹℃牳浜猴細</text>{{item['瀹℃牳浜�']}}
+                        </view>
+                        <view class="detail" v-if="item['瀹℃牳鏃ユ湡']">
+                            <text>瀹℃牳鏃ユ湡锛�</text>{{item['瀹℃牳鏃ユ湡'].split("T")[0]}}
+                        </view>
+                        <view class="detail" v-if="item['淇敼浜�']">
+                            <text>淇敼浜猴細</text>{{item['淇敼浜�']}}
+                        </view>
+                        <view class="detail" v-if="item['淇敼鏃ユ湡']">
+                            <text>淇敼鏃ユ湡锛�</text>{{item['淇敼鏃ユ湡'].split("T")[0]}}
+                        </view>
+                        <view class="detail" v-if="item['婧愬崟鍗曞彿']">
+                            <text>婧愬崟鍗曞彿锛�</text>{{item['婧愬崟鍗曞彿']}}
+                        </view>
+                        <view class="detail" v-if="item['婧愬崟绫诲瀷']">
+                            <text>婧愬崟绫诲瀷锛�</text>{{item['婧愬崟绫诲瀷']}}
+                        </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 class="over" v-if="listDataShow.length == 0">鏆傛棤鏁版嵁</view>
+        </view>
+
+        <view class="pagination-zone" id="pagination-zone">
+            <uni-pagination show-icon :page-size="paginationMeta.pageSize" :total="paginationMeta.total"
+                :current="paginationMeta.current" @change="onPaginationChangeHandler"></uni-pagination>
+        </view>
+    </view>
+</template>
+
+<script>
+    import {
+        CommonUtils
+    } from '../../utils/common'
+    import {
+        getUserInfo
+    } from '../../utils/auth'
+    import dayjs, {
+        Dayjs
+    } from 'dayjs'
+    export default {
+        data() {
+            return {
+                navHeight: 0,
+                scrollTop: 0,
+
+                showDetail: -1,
+                operations: -1,
+
+                hform: {
+                    HBeginDate: dayjs(new Date).subtract(30, 'd').format('YYYY-MM-DD'),
+                    HEndDate: dayjs(new Date).format('YYYY-MM-DD'),
+                    HMoNumber: '',
+                    HMoName: '',
+                    HBillNo: ''
+                },
+
+                paginationMeta: {
+                    current: 1,
+                    total: 0,
+                    pageSize: 30,
+                },
+
+                pageMeta: {
+                    scrollContentTop: 0,
+                    bottomBtnTop: 0,
+                },
+
+                listData: [],
+                listDataShow: [],
+            }
+        },
+        computed: {
+            scrollContentHeight: {
+                get() {
+                    return this.pageMeta.bottomBtnTop - this.pageMeta.scrollContentTop
+                }
+            }
+        },
+        methods: {
+            exit() {
+                uni.navigateBack()
+            },
+            cmdAdd() {
+                uni.navigateTo({
+                    url: "/pages/weixiujilu/form?operationType=1"
+                })
+            },
+            async cmdSearch() {
+                let sWhere = ''
+                if (this.hform.HBeginDate != "" && this.hform.HEndDate != "") {
+                    sWhere += " and  CONVERT(varchar(100),鏃ユ湡, 23) between '" + this.hform.HBeginDate + "' and '" +
+                        this.hform.HEndDate + "' ";
+                }
+                if (this.hform.HMoNumber != "") {
+                    sWhere += " and 浜у搧妯″叿浠g爜 like '%" + this.hform.HMoNumber + "%'"
+                }
+                if (this.hform.HMoName != "") {
+                    sWhere += " and 浜у搧妯″叿 like '%" + this.hform.HMoName + "%'"
+                }
+                if (this.hform.HBillNo != "") {
+                    sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'"
+                }
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/Sb_MouldRepairWorkBill/GetMouldRepairWorkBill_PDA',
+                        data: {
+                            "sWhere": sWhere,
+                            "user": getUserInfo()["Czymc"]
+                        },
+                    })
+
+                    if (!res) {
+                        return
+                    }
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count > 0) {
+                        this.listData = data
+                        this.paginationMeta.total = data.length
+                        this.onPaginationChangeHandler({
+                            current: 1
+                        })
+                    } else {
+                        uni.showToast({
+                            icon: 'none',
+                            title: Message
+                        })
+                    }
+                } catch (err) {
+                    console.warn(err);
+                    uni.showToast({
+                        title: '鎺ュ彛璇锋眰澶辫触:' + err,
+                        icon: 'none'
+                    })
+                }
+            },
+            async onPaginationChangeHandler({
+                current
+            }) {
+                this.listDataShow =
+                    this.listData.slice((current - 1) * this.paginationMeta.pageSize,
+                        current * this.paginationMeta.pageSize)
+
+            },
+            async del(item) {
+                console.log("delItem: ", item);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+                    success: async (res) => {
+                        if (res.confirm) {
+                            console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                            try {
+                                let res = await CommonUtils.doRequest2Sync({
+                                    url: '/Sb_MouldRepairWorkBill/DeltetMouldRepairWorkBill',
+                                    data: {
+                                        "HInterID": item.hmainid,
+                                        "user": getUserInfo()["Czymc"]
+                                    }
+                                })
+
+                                if (!res) {
+                                    return
+                                }
+
+                                let {
+                                    count,
+                                    code,
+                                    Message
+                                } = res.data
+                                if (count == 0) {
+                                    return uni.showModal({
+                                        title: '閿欒鎻愮ず',
+                                        content: `鍒犻櫎閿欒: ${Message}`,
+                                        showCancel: false
+                                    })
+                                }
+                                uni.showToast({
+                                    title: '鍒犻櫎鎴愬姛',
+                                    icon: 'none'
+                                })
+                                this.cmdSearch()
+                            } catch (err) {
+                                uni.showModal({
+                                    title: '閿欒鎻愮ず',
+                                    content: `鎺ュ彛璇锋眰澶辫触: ${err}`,
+                                    showCancel: false
+                                })
+                            }
+                        }
+                    },
+                })
+
+
+            },
+            edit(item) {
+                console.log("editItem:", item)
+                uni.navigateTo({
+                    url: `/pages/weixiujilu/form?operationType=2&linterid=${item.hmainid}&hsubid=${item.hsubid}`
+                })
+            }
+        },
+        onLoad() {
+
+            this.$nextTick(() => {
+                this.cmdSearch()
+            })
+        },
+        onReady() {
+            // #ifndef MP-WEIXIN
+            let query = uni.createSelectorQuery().in(this)
+            query.select("#scroll-content").boundingClientRect((data) => {
+                this.pageMeta.scrollContentTop = data.top
+            }).exec()
+            query.select("#pagination-zone").boundingClientRect((data) => {
+                this.pageMeta.bottomBtnTop = data.top
+            }).exec()
+            // #endif
+            // #ifdef MP-WEIXIN
+            // 寰俊涓嶆敮鎸� uni.createSelectorQuery().in(this)
+            // #endif
+
+        },
+    }
+</script>
+
+<style lang="scss" scoped>
+    .page {
+        box-sizing: border-box;
+        display: flex;
+        flex-direction: column;
+        gap: 20rpx;
+        padding: 20rpx 0;
+        position: relative;
+
+        .button-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding-top: 20rpx;
+            display: flex;
+            flex-direction: row;
+            justify-content: space-between;
+            flex-wrap: wrap;
+
+            button {
+                border-radius: 50rpx;
+                width: 180rpx;
+                height: 66rpx;
+                line-height: 66rpx;
+                font-size: 28rpx;
+            }
+
+            .btn-a {
+                background-color: #3a78ff;
+                color: #fff;
+            }
+
+            .btn-c {
+                background-color: #ff5722;
+                color: #fff;
+            }
+        }
+
+        .search-condition-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding: 0 60rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .form-item {
+                display: flex;
+                flex-direction: row;
+                gap: 20rpx;
+                align-items: center;
+                font-size: 28rpx;
+
+                .left {
+                    width: 4rem;
+                }
+
+                .right {
+                    flex: 1;
+                    padding: 8rpx 16rpx;
+
+                    .search {
+                        width: 28rpx;
+                        height: 28rpx;
+                    }
+
+                    input {
+                        font-size: 28rpx;
+                    }
+
+                    .uni-combox {
+                        padding: 0;
+                        margin: 0;
+
+                        ::v-deep .uni-combox__input {
+                            font-size: 28rpx;
+                            height: auto;
+                        }
+                    }
+                }
+
+                .general {
+                    border-radius: 22rpx;
+                    border: 1px solid #acacac;
+                }
+
+                .disabled {
+                    border-radius: 22rpx;
+                    border: 1px solid #e4e4e4;
+                    background-color: #e4e4e4;
+                }
+            }
+        }
+
+        .info-list-zone {
+            overflow-y: auto;
+
+            .card-item {
+                .card-detail {
+                    width: 100%;
+                    display: flex;
+                    flex-wrap: wrap;
+                    justify-content: space-between;
+                    line-height: 120%;
+
+                    .detail {
+                        // width: 50%;
+                        font-size: 26rpx;
+                        margin-bottom: 12rpx;
+                        color: #555;
+                        margin-right: 20rpx;
+
+                        text {
+                            color: #999;
+                            font-size: 26rpx;
+                        }
+                    }
+                }
+            }
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+
+        .op {
+            display: flex;
+            justify-content: space-around;
+            margin-top: 20rpx;
+
+            button {
+                padding: 0;
+                width: 150rpx;
+                font-size: 25rpx;
+            }
+
+            .op1 {
+                border: 1px solid #41a863;
+                color: #41a863;
+            }
+
+            .op2 {
+                border: 1px solid #d98d00;
+                color: #d98d00;
+            }
+
+            .op3 {
+                border: 1px solid #3a78ff;
+                color: #3a78ff;
+            }
+
+            .op4 {
+                border: 1px solid #da0000;
+                color: #da0000;
+            }
+
+            .op5 {
+                border: 1px solid #888;
+                color: #888;
+            }
+        }
+
+        .pagination-zone {
+            position: fixed;
+            bottom: 0;
+            box-sizing: border-box;
+            background-color: #fff;
+            box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+            padding: 20rpx 40rpx 20rpx 40rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+            justify-content: space-between;
+            width: 100%;
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/pages/zhijiediaobo/form.vue b/pages/zhijiediaobo/form.vue
index b68085e..eb4e571 100644
--- a/pages/zhijiediaobo/form.vue
+++ b/pages/zhijiediaobo/form.vue
@@ -205,6 +205,16 @@
                         <input name="HSupName" disabled v-model="hform.HSupName" placeholder="璇烽�夋嫨瀹㈡埛" />
                     </view>
                 </view>
+                <view class="form-item">
+                    <view class="title">渚涘簲鍟�:</view>
+                    <view class="right">
+                        <uni-combox :candidates="arrayHCusName" placeholder="璇烽�夋嫨渚涘簲鍟�" v-model="hform.HCusName"
+                            @input="HCusNameChange"></uni-combox>
+                    </view>
+                    <!-- <view class="righton" v-show="!showHSupName">
+                        <input name="HSupName" disabled v-model="hform.HSupName" placeholder="" />
+                    </view> -->
+                </view>
                 <!-- TODO: 璺ㄧ粍缁囪皟鐢ㄥ彲淇敼 閫変腑缁勭粐鍚庯紝浠撳簱浠撲綅涔熻鍙戠敓鍙樺寲 -->
                 <view class="form-item">
                     <view class="title">璋冨嚭缁勭粐:</view>
@@ -399,6 +409,7 @@
                 showHSupName: true,
                 barCodeFocus: false,
                 HSourcebillNoFocus: false,
+                HSupName: '',
 
                 HStockStyleArray: ["缁勭粐鍐呰皟鎷�", "璺ㄧ粍缁囪皟鎷�"],
 
@@ -442,7 +453,11 @@
                 HDeptNameList: [],
                 arrayHSupName: [], //瀹㈡埛
                 HSupNameList: [],
-
+                arrayHSupName: [], //瀹㈡埛
+                HSupNameList: [],
+                arrayHCusName: [], //渚涘簲鍟�
+                HCusNameList: [],
+                
                 Materlist: [],
                 FIFOlist: [],
                 hform: {
@@ -462,6 +477,7 @@
                     HSCWHID: getUserInfo().HWhID,
                     HWHName: getUserInfo().HWHName,
                     HWHID: getUserInfo().HWhID,
+
                     HStockStyle: '',
                     HOutStockPlaceName: getUserInfo().HSPName,
                     HOutStockPlaceID: getUserInfo().HSPID,
@@ -485,8 +501,12 @@
                     HSecManagerID: getUserInfo().HSecManagerID,
                     HDeptName: getUserInfo().HDept,
                     HDeptID: getUserInfo().HDeptID,
+                    // 瀹㈡埛
                     HSupName: '',
                     HSupID: '',
+                    // 渚涘簲鍟�
+                    HCusID: '',
+                    HCusName: '',
                     HStockOrgName: uni.getStorageSync('Organization'),
                     HStockOrgID: uni.getStorageSync('OrganizationID'),
 
@@ -506,6 +526,7 @@
             BillListPopupVue,
             BarCodePopupVue
         },
+        
         async onLoad(e) {
             await this.getOrganization()
             console.log(e, this.userInfo)
@@ -528,6 +549,9 @@
             this.set_InitBillSubType()
             this.InitTransferDirect()
             this.InitShipType()
+            
+            // this.getHSupList() // 鍒濆鍖� 瀹㈡埛
+            this.getHCusList() // 鍒濆鍖� 渚涘簲鍟�
 
             this.getRelationStore()
             this.GetSourceBillType()
@@ -568,6 +592,53 @@
             }
         },
         methods: {
+            //鑾峰彇渚涘簲鍟嗘暟鎹�
+            getHCusList() {
+                if (!this.hform.HStockOrgID) {
+                    var HOtherOrgID = 0;
+                } else {
+                    var HOtherOrgID = this.hform.HStockOrgID
+                }
+                uni.request({
+                    url: this.serverUrl + '/Web/GetSupplierList_Json',
+                    data: {
+                        Supplier: '',
+                        HOrgID: HOtherOrgID
+                    },
+                    success: (res) => {
+                        if (res.data.count == 1) {
+                            console.log('Supplier: ',res.data);
+                            this.HCusNameList = res.data.data
+                            for (var i = 0; i < res.data.data.length; i++) {
+                                this.arrayHCusName[i] = res.data.data[i].HName
+                            }
+                            this.$forceUpdate();
+                        } else {
+                            uni.showToast({
+                                title: res.data.Message,
+                                icon: 'none'
+                            })
+                        }
+                    },
+                    fail: (res) => {
+                        console.log(res);
+                        uni.showToast({
+                            title: '渚涘簲鍟嗘暟鎹姹傚け璐�',
+                            icon: 'none'
+                        })
+                    },
+                });
+            },
+            //閫夋嫨渚涘簲鍟�
+            HCusNameChange(e) {
+                console.log('e: ',e);
+                for (var i = 0; i < this.HCusNameList.length; i++) {
+                    if (this.HCusNameList[i].HName == e) {
+                        this.hform.HCusID = this.HCusNameList[i].HItemID
+                        this.hform.HCusName = this.HCusNameList[i].HName
+                    }
+                }
+            },
             async refreshHSourceBillState() {
                 this.HSourceBillNoFocus = false
                 await this.$nextTick(() => {
@@ -1252,7 +1323,7 @@
                 }
             },
 
-            //鑾峰彇瀹㈡埛鏁版嵁
+            //鑾峰彇渚涘簲鍟嗘暟鎹�
             getHSupList() {
                 uni.request({
                     url: this.serverUrl + '/Gy_Customer/list',
@@ -1284,7 +1355,7 @@
                     },
                 });
             },
-            //閫夋嫨瀹㈡埛
+            //閫夋嫨渚涘簲鍟�
             HSupNameChange(e) {
                 for (var i = 0; i < this.HSupNameList.length; i++) {
                     if (this.HSupNameList[i].瀹㈡埛鍚嶇О == e) {
diff --git a/pages/zhijiediaobo/table.vue b/pages/zhijiediaobo/table.vue
index 5319e1a..e074f6b 100644
--- a/pages/zhijiediaobo/table.vue
+++ b/pages/zhijiediaobo/table.vue
@@ -2,7 +2,7 @@
     <view class="content">
         <view class="tabs">
             <view :class="tabs == 0 ? 'on':''" @tap="changeTab(0)">缂撳瓨鍒楄〃</view>
-            <view :class="tabs == 1 ? 'on':''" @tap="changeTab(1)">宸叉牎楠屽垪琛�</view>
+            <view :class="tabs == 1 ? 'on':''" @tap="changeTab(1)">宸蹭笂浼犲垪琛�</view>
         </view>
 
         <view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
diff --git a/utils/common.js b/utils/common.js
index 9c58bc1..5898bb7 100644
--- a/utils/common.js
+++ b/utils/common.js
@@ -311,11 +311,10 @@
         data,
         method,
     }) {
-        if(this.requestLock){
-            console.warn("璇ヨ姹傝閿佸畾,涓嶈兘閲嶅璇锋眰!!!")
+        if (this.requestLock) {
+            console.log("璇ヨ姹傝閿佸畾,涓嶈兘閲嶅璇锋眰!!!")
             return
         }
-        
         this.requestLock = true
         return new Promise((resolve, reject) => {
             // that = that || this;
@@ -341,6 +340,35 @@
             })
         })
     }
+
+    async doRequest2Async({
+        url,
+        data,
+        method,
+    }) {
+        return new Promise((resolve, reject) => {
+            // that = that || this;
+            let errorTip = null;
+            uni.showLoading({
+                title: '鍔犺浇涓�...'
+            })
+            uni.request({
+                method: method || "GET",
+                url: this.serverUrl + url,
+                data: data || "",
+                success: (res) => {
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err)
+                },
+                complete: () => {
+                    uni.hideLoading()
+                }
+            })
+        })
+    }
+
     stringToBoolean(str) {
         // 蹇界暐澶у皬鍐欑殑杞崲
         return str?.toLowerCase() === "true";
@@ -357,14 +385,14 @@
         innerAudioContext.play(); // 鎾斁闊抽
 
         innerAudioContext.onPlay(() => {
-            console.log('寮�濮嬫挱鏀�');
+            //console.log('寮�濮嬫挱鏀�');
         });
         innerAudioContext.onError((res) => {
             console.log(res.errMsg);
             console.log(res.errCode);
         });
         innerAudioContext.onPause(function() {
-            console.log('鎾斁鍑虹幇閿欒锛岄攢姣�');
+            //console.log('鎾斁鏆傚仠锛岄攢姣�');
             innerAudioContext.destroy();
         })
     }
@@ -400,6 +428,29 @@
     // }
 
 
+    showTips({
+        type,
+        message,
+        title,
+        duration
+    }) {
+        if (!message) {
+            return
+        }
+
+        if (message.length < 20) {
+            return uni.showToast({
+                icon: type || 'none',
+                title: message
+            })
+        }
+
+        return uni.showModal({
+            title: title,
+            content: message,
+            showCancel: false
+        })
+    }
 
     replaceWithFunction(str, handler) {
         return str.replace(/\{(.+?)\}/g, (match, key) => {

--
Gitblit v1.9.1