From c32ab7e978d43814b1f12e9572ae6aab3da4ece4 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期五, 13 三月 2026 10:59:59 +0800
Subject: [PATCH] 锦隆 新增来料批量检验模块

---
 pages.json                                                     |    6 
 pages/index/tab4.vue                                           |    9 
 pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast2.vue |  902 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 916 insertions(+), 1 deletions(-)

diff --git a/pages.json b/pages.json
index 21a89e8..50b5c3b 100644
--- a/pages.json
+++ b/pages.json
@@ -1436,6 +1436,12 @@
             }
         },
         {
+            "path": "pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast2",
+            "style": {
+                "navigationBarTitleText": "鏉ユ枡妫�楠屽崟"
+            }
+        },
+        {
             "path": "pages/ZLGL/checkFlowList/QC_CheckBillflowList",
             "style": {
                 "navigationBarTitleText": "寰呮垜瀹℃牳",
diff --git a/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast2.vue b/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast2.vue
new file mode 100644
index 0000000..a6b21fb
--- /dev/null
+++ b/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast2.vue
@@ -0,0 +1,902 @@
+<template>
+    <view>
+        <!-- 椤电 -->
+        <view class="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">閫夋嫨婧愬崟</view>
+            <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">琛ㄥご淇℃伅</view>
+            <!-- <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鐗╂枡淇℃伅</view>
+            <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">闄勪欢淇℃伅</view> -->
+        </view>
+        <!-- 椤电 婧愬崟淇℃伅 -->
+        <view v-if="tabs == 0">
+            <view class="form-item-wrapper">
+                <view class="form-item">
+                    <view class="title">婧愬崟鍙�:</view>
+                    <view class="right">
+                        <input v-model="sourceBillInfo.HSourceBillNo" @confirm="getCode(sourceBillInfo.HSourceBillNo)"
+                            placeholder="璇疯緭鍏ユ簮鍗曞彿" />
+                    </view>
+                    <uni-icons type="scan"
+                        style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;"
+                        size="20" @click="toScanCode"></uni-icons>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�:</view>
+                    <view class="right disabled">
+                        <input v-model="sourceBillInfo.HBillNo" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍐呯爜:</view>
+                    <view class="right disabled">
+                        <input v-model="sourceBillInfo.HInterID" disabled />
+                    </view>
+                </view>
+            </view>
+        </view>
+        <!-- 椤电 鐗╂枡娓呭崟 -->
+        <view v-if="tabs == 1">
+            <view class="form-item-wrapper">
+                <view class="form-item">
+                    <view class="title">璐ㄦ鍛�:</view>
+                    <view class="right">
+                        <uni-combox :candidates="HKeeperNameList" placeholder="璇烽�夋嫨璐ㄦ鍛�"
+                            v-model="sourceBillInfo.HKeeperName" @input="HKeeperNameChange"></uni-combox>
+                    </view>
+                </view>
+            </view>
+            <view class="card-item-wrapper">
+                <view v-for="(item, index) in materialManifest" :key="index">
+                    <uni-card :class="item.selected?'card-selected':''" :title="item.HSourceBillNo"
+                        @tap="selectMater(item, index)">
+                        <view class="card-detail">
+                            <view class="detail">
+                                <text>鐗╂枡浠g爜锛�</text>{{item.HMaterNumber}}
+                            </view>
+                            <view class="detail">
+                                <text>鐗╂枡鍚嶇О锛�</text>{{item.HMaterName}}
+                            </view>
+                            <view class="detail">
+                                <text>瑙勬牸鍨嬪彿锛�</text>{{item.HMaterModel}}
+                            </view>
+                            <view class="detail">
+                                <text>鏁伴噺锛�</text>{{item.HQty}}
+                            </view>
+                        </view>
+                    </uni-card>
+                </view>
+            </view>
+        </view>
+        <!-- 椤电 鏄庣粏娓呭崟 -->
+        <view v-if="tabs == 2">
+            <view class="form-item-wrapper">
+                <view class="form-item">
+                    <view class="title">鐗╂枡浠g爜:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HMaterNumber" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鐗╂枡鍚嶇О:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HMaterName" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瑙勬牸鍨嬪彿:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HMaterModel" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曚綅:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HUnitName" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">妫�楠屾暟閲�:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HCheckQty" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍚堟牸鏁伴噺:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HRightQty" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">涓嶅悎鏍兼暟閲�:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HBadQty" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璐ㄦ鍛�:</view>
+                    <view class="right">
+                        <uni-combox :candidates="HKeeperNameList" placeholder="璇烽�夋嫨璐ㄦ鍛�"
+                            v-model="detailManifestItem.HKeeperName" @input="HKeeperNameChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">妫�楠岀粨鏋�:</view>
+                    <view class="right">
+                        <uni-combox v-model="detailManifestItem.HCheckResultName" :candidates="HCheckResultValueList"
+                            @input="HCheckResultChangeHandle"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣跨敤鍐崇瓥:</view>
+                    <view class="right">
+                        <uni-combox v-model="detailManifestItem.HUseResultName" :candidates="HUseResultValueList"
+                            @input="HUseResultChangeHandle"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浠撳簱:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HWHName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浠撲綅:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HSPName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鎵瑰彿:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HBatchNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璐ㄦ缁勭粐:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HZJOrgName" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">渚涘簲鍟�:</view>
+                    <view class="right">
+                        <input v-model="detailManifestItem.HSupName" />
+                    </view>
+                </view>
+            </view>
+        </view>
+        <!-- 椤电 闄勪欢淇℃伅 -->
+        <view v-if="tabs == 3">
+            <view class="card-item-wrapper">
+                <view class="attachment-btns">
+                    <button type="primary" size="mini" @tap="fileUpload">閫夋嫨鏂囦欢</button>
+                    <button type="primary" size="mini" @tap="imageUpload">鎷嶇収涓婁紶</button>
+                    <view style="flex: 1;"></view>
+                </view>
+                <view v-for="(item, index) in attachmentInfo" :key="index">
+                    <uni-card :title="item['fileName']" :thumbnail="item.filePath">
+                        <view class="card-detail">
+                            <view class="detail">
+                                <text>澶у皬锛�</text>{{item["size"]}}
+                            </view>
+                            <view class="detail">
+                                <text>鐘舵�侊細</text>{{item["status"]}}
+                            </view>
+                            <view class="detail operation" v-if="item['status']!='涓婁紶鎴愬姛'">
+                                <text>鎿嶄綔锛�</text>
+                                <button class="btn-a" size="mini" @tap.stop="uploadFile(index)">涓婁紶</button>
+                                <button class="btn-b" size="mini" @tap.stop="delFile(index)">鍒犻櫎</button>
+                            </view>
+                        </view>
+                    </uni-card>
+                </view>
+            </view>
+        </view>
+        <view style="height: 140rpx;"></view>
+        <!-- 鎿嶄綔鎸夐挳 -->
+        <view class="bottom-btn" id="bottom-btn">
+            <button class="btn-a" size="mini" @tap="cmdSubmit">鎻愪氦</button>
+            <button class="btn-a" size="mini" @tap="cmdAdd">鏂板</button>
+            <view style="flex: 1;"></view>
+            <!-- <button class="btn-d" size="mini" @tap="cmdDelete">鍒犻櫎</button> -->
+            <button class="btn-c" size="mini" @tap="cmdExit">閫�鍑�</button>
+        </view>
+        <xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload>
+    </view>
+</template>
+
+<script>
+    import {
+        getUserInfo
+    } from '../../../utils/auth';
+    import {
+        CommonUtils
+    } from '../../../utils/common';
+    import {
+        MpaasScan
+    } from '@/utils/mpaasScan.js'
+
+    export default {
+        data() {
+            return {
+                uploadOptions: {},
+                EnableSubmit: false,
+                tabs: 0,
+
+                // 婧愬崟淇℃伅
+                sourceBillInfo: {
+                    HSourceBillNo: '',
+                    HBillNo: '',
+                    HInterID: '',
+                    HSourceEntryIDList: [],
+                    HSourceInterID: 0,
+                    HSourceBillType: 0,
+                    HKeeperID: getUserInfo()["HEmpID"],
+                    HKeeperName: getUserInfo()["HEmpName"]
+                },
+
+                // 鐗╂枡娓呭崟
+                materialManifest: [],
+                // 鏄庣粏娓呭崟
+                detailManifest: [],
+                detailManifestItem: {
+                    "HMaterNumber": "",
+                    "HMaterID": "",
+                    "HMaterName": "",
+                    "HMaterModel": "",
+                    "HUnitName": "",
+                    "HUnitNumber": "",
+                    "HCheckQty": "",
+                    "HRightQty": "",
+                    "HBadQty": "",
+                    "HKeeper": "",
+                    "HKeeperID": "0",
+                    "HCheckResult": "1",
+                    "HUseResult": "A",
+                    "HWHName_B": "",
+                    "HWHNumber": "",
+                    "HWHID": "",
+                    "HSPName_B": "",
+                    "HSPNumber": "",
+                    "HSPID": "",
+                    "HBatchNo": "",
+                    "HZJOrgName": "",
+                    "HZJOrgNumber": "",
+                    "HSupName": "",
+                    "HSupNumber": "",
+                    "HSupID": "",
+                    "HCheckResultName": '鍚堟牸',
+                    "HUseResultName": '鎺ユ敹',
+                    "HSourceBillType": "",
+                    "HSLInterID": "0",
+                    "HSLEntryID": "1",
+                    "HSLBillNo": "",
+                    "HSLSeQ": ""
+                },
+                // 闄勪欢淇℃伅
+                attachmentInfo: [],
+
+                detailManifestCursor: 0, // 鏄庣粏娓呭崟绱㈠紩鎸囬拡
+
+                HCheckResultValueList: ["鍚堟牸", "涓嶅悎鏍�", "淇濈暀"],
+                HUseResultValueList: ["鎺ユ敹", "璁╂鎺ユ敹"],
+                HCheckResultList: [{
+                    value: 1,
+                    text: "鍚堟牸"
+                }, {
+                    value: 2,
+                    text: "涓嶅悎鏍�"
+                }, {
+                    value: 3,
+                    text: "淇濈暀"
+                }],
+
+                HUseResultList: [{
+                    value: "A",
+                    text: "鎺ユ敹"
+                }, {
+                    value: "B",
+                    text: "璁╂鎺ユ敹"
+                }, {
+                    value: "E",
+                    text: "鎸戦��(鍏ㄦ)"
+                }, {
+                    value: "F",
+                    text: "鍒ら��"
+                }],
+
+                HKeeperList: [],
+                HKeeperNameList: []
+            };
+        },
+        methods: {
+            selectMater(item, index) {
+                if (typeof this.materialManifest[index].selected == 'undefined') {
+                    this.$set(this.materialManifest[index], 'selected', false)
+                }
+                if (this.materialManifest[index].selected == false) {
+                    this.sourceBillInfo.HSourceEntryIDList[index] =
+                        item.HSourceEntryID
+                    this.materialManifest[index].selected = true
+                } else {
+                    this.sourceBillInfo.HSourceEntryIDList.splice(index, 1)
+                    this.materialManifest[index].selected = false
+                }
+            },
+            handleUploadCallback(res) { // 鏂囦欢涓婁紶鍥炶皟
+                console.log('file: ', res);
+                let fileInfo = res.data[0]
+                this.attachmentInfo.push({
+                    fileName: fileInfo.name,
+                    size: fileInfo.size,
+                    status: '绛夊緟涓婁紶',
+                    filePath: fileInfo.tempFilePath
+                })
+            },
+            delFile(index) {
+                console.log('attachmentInfo: ', this.attachmentInfo[index]);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + this.attachmentInfo[index].fileName + ' " 鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            this.attachmentInfo.splice(index, 1)
+                        }
+                    },
+                })
+
+            },
+            uploadFile(index) {
+                console.log('filePath: ', this.attachmentInfo[index].filePath);
+                // 閫氳繃涓存椂璺緞璇诲彇鏂囦欢
+                uni.uploadFile({
+                    url: CommonUtils.getServerUrl() + "/Cj_StationOutBill/UploadFile2",
+                    filePath: this.attachmentInfo[index].filePath,
+                    name: 'file',
+                    formData: {
+                        HBillNo: this.sourceBillInfo.HBillNo,
+                        HRemark: "",
+                        HUserName: getUserInfo()["Czymc"]
+                    },
+                    success: (uploadRes) => {
+                        CommonUtils.showTips({
+                            message: "涓婁紶鎴愬姛"
+                        })
+                        this.attachmentInfo[index].status = "涓婁紶鎴愬姛"
+                    },
+                    fail: (err) => {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `涓婁紶澶辫触: ${err}`
+                        })
+                    }
+                })
+            },
+            fileUpload() {
+                this.$refs.XeUpload.upload('file', {});
+            },
+            imageUpload() {
+                uni.chooseImage({
+                    count: 1,
+                    success: (res) => {
+                        console.log(res)
+                        let fileNameArray = res.tempFiles[0].path.split("/")
+                        this.attachmentInfo.push({
+                            fileName: res.tempFiles[0].name,
+                            size: (res.tempFiles[0].size / 1024).toFixed(2) + 'kB',
+                            status: '绛夊緟涓婁紶',
+                            filePath: res.tempFilePaths[0],
+                            type: res.tempFilePaths[0].type
+                        })
+                    },
+                })
+            },
+            HKeeperNameChange(e) {
+                let keeperItem = this.HKeeperList.find(elem => elem.HName == e)
+                this.sourceBillInfo.HKeeperID = keeperItem.HItemID
+                this.sourceBillInfo.HKeeperName = keeperItem.HName
+
+
+            },
+            HCheckResultChangeHandle(e) {
+                this.detailManifestItem.HCheckResult =
+                    this.HCheckResultList.find(elem => elem.text == e)?.value
+                if (e == '鍚堟牸') {
+                    this.HUseResultValueList = ["鎺ユ敹", "璁╂鎺ユ敹"]
+                    this.detailManifestItem.HUseResultName = "鎺ユ敹"
+                    this.detailManifestItem.HUseResult = "A"
+                } else if (e == '涓嶅悎鏍�') {
+                    this.HUseResultValueList = ["鎸戦��(鍏ㄦ)", "鍒ら��"]
+                    this.detailManifestItem.HUseResultName = "鎸戦��(鍏ㄦ)"
+                    this.detailManifestItem.HUseResult = "E"
+                } else if (e == '淇濈暀') {
+                    this.HUseResultValueList = ["鎺ユ敹", "璁╂鎺ユ敹", "鎸戦��(鍏ㄦ)", "鍒ら��"]
+                    this.detailManifestItem.HUseResultName = "鎺ユ敹"
+                    this.detailManifestItem.HUseResult = "A"
+                }
+
+                this.HUseResultChangeHandle(this.HUseResultValueList[0])
+            },
+            HUseResultChangeHandle(e) {
+                this.detailManifestItem.HUseResult =
+                    this.HUseResultList.find(elem => elem.text == e)?.value
+
+            },
+            async toDetail(item, index) {
+                // 鑾峰彇 鐗╂枡鏄庣粏
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/QCStockInCheckBill/DisBillEntryList_Webs_New_Json1',
+                        data: {
+                            HInterID: item.HSourceInterID,
+                            HEntryID: item.HSourceEntryID,
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count != 1) {
+                        throw Message
+                    }
+                    console.log('data: ', data);
+                    Object.assign(this.detailManifestItem, {
+                        HMaterNumber: data[0].HMaterNumber,
+                        HMaterName: data[0].HMaterName,
+                        HMaterModel: data[0].HMaterModel,
+                        HUnitName: data[0].HUnitName,
+                        HWHName_B: data[0].HWHName_B,
+                        HSPName_B: data[0].HSPName_B,
+                        HBatchNo: data[0].HBatChNo.trim(),
+                        HZJOrgName: data[0].HZJOrgName,
+                        HZJOrgNumber: data[0].HZJOrgNumber,
+                        HSupName: data[0].HSupName,
+                        HUnitNumber: data[0].HUnitNumber,
+                        HSupNumber: data[0].HSupNumber,
+                        HWHNumber: data[0].HWHNumber,
+                        HSPNumber: data[0].HSPNumber,
+                        HSeQ: data[0].HSeQ,
+                        HSourceInterID: data[0].HSourceInterID,
+                        HSourceEntryID: data[0].HSourceEntryID,
+                        HSourceBillNo: data[0].HSourceBillNo,
+                        HWHID: data[0].HWHID,
+                        HSPID: data[0].HSPID,
+                        HSupID: data[0].HSupID,
+                        HMaterID: data[0].HMaterID,
+                        HSourceBillType: data[0].HSourceBillType,
+                        HSLInterID: data[0].HSLInterID,
+                        HSLEntryID: data[0].HSLEntryID,
+                        HSLBillNo: data[0].HSLBillNo,
+                        HSLSeQ: data[0].HSLSeQ,
+                        HCheckQty: data[0].hqty,
+                    })
+
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇鏄庣粏淇℃伅閿欒: ${err}`
+                    })
+                }
+                // }
+                this.EnableSubmit = true
+                // this.detailManifestCursor = index
+                this.tabs = 2
+            },
+            async getCode(HSourceBillNo) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/Kf_QCStockInCheckBill_Fast/BarCode_Json_SourceBillNo',
+                        data: {
+                            HBarCode: HSourceBillNo,
+                            HOrgID: uni.getStorageSync('OrganizationID')
+                        }
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+                    if (count == 1) {
+                        this.sourceBillInfo.HSourceInterID = data[0].HSourceInterID
+                        this.sourceBillInfo.HSourceBillType = '1103'
+                        this.materialManifest = data
+                        this.tabs = 1
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栧崟鎹彿閿欒: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栧崟鎹彿閿欒: ${err}`
+                    })
+                }
+            },
+            toScanCode() {
+                MpaasScan.scanCode((code) => {
+                    console.log('HSourceBillNo: ', code);
+
+                    if (!code) {
+                        return
+                    }
+
+                    this.getCode(code)
+                })
+            },
+            cmdAdd() {
+                uni.redirectTo({
+                    url: "/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast"
+                })
+            },
+            async cmdSubmit() { // 鍚庣鍦ㄥ崟娆′笂浼犳枃浠舵彁浜ゅ悗浼氬垹闄ゆ湰鍦版枃浠讹紝涓�娆″彧鑳芥彁浜や竴涓暟鎹�
+                // 妫�鏌ユ槸鍚﹂�変腑鐗╂枡
+                
+                if (this.sourceBillInfo.HSourceInterID == 0) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鏈壂鎻忔簮鍗曪紝璇峰厛鎵弿婧愬崟鍚庡啀鎻愪氦...`
+                    })
+                    return
+                }
+                if (this.sourceBillInfo.HSourceEntryIDList.length == 0) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鏈�夋嫨妫�楠岀墿鏂欙紝璇烽�夋嫨鑷冲皯涓�涓楠岀墿鏂�...`
+                    })
+                    return
+                }
+
+                let HEntryIDStr = `${this.sourceBillInfo.HSourceEntryIDList.filter(item => item !== undefined && item !== null).join(',')}`
+
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: 'WEBSController/set_SaveQCPOStockInCheckBill_Json',
+                        data: {
+                            HInterID: this.sourceBillInfo.HInterID,
+                            HBillNo: this.sourceBillInfo.HBillNo,
+                            HSourceBillType: this.sourceBillInfo.HSourceBillType,
+                            HSourceBillNo: this.sourceBillInfo.HSourceBillNo,
+                            HSourceInterID: this.sourceBillInfo.HSourceInterID,
+                            sHSourceEntryID: HEntryIDStr,
+                            HFirstCheckEmp: this.sourceBillInfo.HKeeperID,
+                            HMaker: getUserInfo()["Czymc"]
+                        },
+                    })
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        uni.hideLoading()
+                        uni.showModal({
+                            title: '鎻愮ず',
+                            content: res.data.Message + '銆傛槸鍚︾户缁柊澧烇紵',
+                            success: (res) => {
+                                if (res.confirm) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                    uni.redirectTo({
+                                        url: './kf_QCStockInCheckBill_Fast2'
+                                    })
+                                } else if (res.cancel) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                    setTimeout(() => {
+                                    	uni.navigateBack();
+                                    }, 50)
+                                }
+                            }
+                        });
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `涓婁紶澶辫触: ${Message}`
+                        })
+                    }
+
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `涓婁紶澶辫触: ${err}`
+                    })
+
+
+                    this.attachmentInfo = []
+                }
+
+
+            },
+            cmdExit() {
+                uni.navigateBack()
+            },
+            async GetMaxNumPDA() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Web/GetMAXNumPDA",
+                        data: {
+                            HBillType: 7503
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.sourceBillInfo.HBillNo = data[0]["HBillNo"]
+                        this.sourceBillInfo.HInterID = data[0]["HInterID"]
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栧崟鎹彿閿欒: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栧崟鎹彿閿欒: ${err}`
+                    })
+                }
+            },
+            async getHEmpInfo() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetEmployeeList_Json',
+                        data: {
+                            Employee: '',
+                            HGroupID: 0,
+                            HDeptID: uni.getStorageSync("HDeptID")
+                        },
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HKeeperList = data
+                        this.HKeeperNameList = Array.from(data).map(e => e.HName)
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍒濆鍖栬川妫�鍛橀敊璇�: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍒濆鍖栬川妫�鍛橀敊璇�: ${err}`
+                    })
+                }
+            }
+        },
+        onLoad() {
+            // 鑾峰彇鏉ユ枡妫�楠屽崟鏈�鏂板崟鎹彿鍜屽崟鎹唴鐮�
+            this.GetMaxNumPDA()
+            this.getHEmpInfo()
+        }
+    }
+</script>
+
+<style lang="scss">
+    .tabs {
+        width: 100%;
+        display: flex;
+        border-bottom: 1px solid #ddd;
+        box-sizing: border-box;
+        padding-top: 20rpx;
+
+        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;
+        }
+    }
+
+    .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;
+        }
+
+        .btn-d {
+            background-color: #ff8901;
+            color: #fff;
+        }
+    }
+
+    .form-item-wrapper {
+        display: flex;
+        flex-direction: column;
+        justify-content: center;
+        box-sizing: border-box;
+        gap: 10rpx;
+        padding: 20rpx 30rpx;
+
+        .form-item {
+            display: flex;
+            align-items: center;
+            font-size: 30rpx;
+            padding: 6rpx 0;
+            gap: 12rpx;
+
+            .title {
+                width: 200rpx;
+
+                text {
+                    color: red;
+                    font-weight: bold;
+                }
+            }
+
+            .right {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #acacac;
+                position: relative;
+                display: flex;
+
+                picker {
+                    width: 100%;
+                }
+
+                .uni-combox {
+                    width: 100%;
+                }
+            }
+
+            .disabled {
+                border: 1px solid #e4e4e4;
+                background-color: #e4e4e4;
+            }
+
+            .righton {
+                flex: 1;
+                border-radius: 22rpx;
+                border: 1px solid #e4e4e4;
+                background-color: #e4e4e4;
+            }
+
+            input {
+                width: 100%;
+                padding: 8rpx 20rpx;
+                font-size: 30rpx;
+            }
+
+            textarea {
+                width: 98%;
+                padding: 8rpx 20rpx;
+                font-size: 30rpx;
+            }
+
+        }
+    }
+
+    .card-item-wrapper {
+        display: flex;
+        flex-direction: column;
+        justify-content: center;
+        box-sizing: border-box;
+        padding: 20rpx 20rpx;
+
+        .uni-card {
+            margin: 10rpx !important;
+        }
+
+        .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;
+                }
+            }
+
+            .operation {
+                display: flex;
+                align-items: center;
+                gap: 10rpx;
+
+                .btn-a {
+                    background-color: #3A78FF;
+                    color: #fff;
+                }
+
+                .btn-b {
+                    background-color: rgb(255, 87, 34);
+                    color: #fff;
+                }
+
+                uni-button {}
+            }
+
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+    }
+
+    .attachment-btns {
+        display: flex;
+        flex-direction: row;
+        justify-content: flex-start;
+        gap: 6rpx;
+    }
+
+    .card-selected {
+        background-color: #a8c7fa;
+        scale: 1.05;
+    }
+</style>
\ No newline at end of file
diff --git a/pages/index/tab4.vue b/pages/index/tab4.vue
index eed6250..e0b76d7 100644
--- a/pages/index/tab4.vue
+++ b/pages/index/tab4.vue
@@ -95,7 +95,7 @@
                         "text": "鏉ユ枡妫�楠�(鎵归噺)",
                         "url": "/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast",
                         "id": 7,
-                        "hidden": false
+                        "hidden": true
                     },
                     {
                         "img": "../../static/icon/icon8.png",
@@ -189,6 +189,13 @@
                         "id": 20,
                         "hidden": false
                     },
+                    {
+                        "img": "../../static/icon/icon8.png",
+                        "text": "鏉ユ枡妫�楠�(鎵归噺)",
+                        "url": "/pages/ZLGL/lailiaojianyan_fast/Kf_QCStockInCheckBill_Fast2",
+                        "id": 21,
+                        "hidden": false
+                    },
                 ]
             }
         },

--
Gitblit v1.9.1