From c88793db38421513f36b38fdc12d00f8b638fe66 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期四, 05 二月 2026 16:20:55 +0800
Subject: [PATCH] 添加  分步式调出单(验证)

---
 pages/Kf_MoveStockBill_CusBar/Kf_MoveStockBill_CusBar_APP.vue               |  134 +-
 manifest.json                                                               |    4 
 pages.json                                                                  |    7 
 pages/index/login.vue                                                       |    2 
 pages/Kf_MoveStockStepOutBill_CusBar/Kf_MoveStockStepOutBill_CusBar_APP.vue | 2080 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 pages/index/index.vue                                                       |    9 
 6 files changed, 2,171 insertions(+), 65 deletions(-)

diff --git a/manifest.json b/manifest.json
index 23e1d42..05904cd 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
     "name" : "鏅轰簯LMES",
     "appid" : "__UNI__B002F49",
     "description" : "",
-    "versionName" : "2.0.70",
-    "versionCode" : 270,
+    "versionName" : "2.0.77",
+    "versionCode" : 277,
     "transformPx" : false,
     /* 5+App鐗规湁鐩稿叧 */
     "app-plus" : {
diff --git a/pages.json b/pages.json
index 8526796..523252a 100644
--- a/pages.json
+++ b/pages.json
@@ -1777,6 +1777,13 @@
 		    {
 		        "navigationBarTitleText" : "瑁呯锛堝皬鍗級"
 		    }
+		},
+		{
+		    "path" : "pages/Kf_MoveStockStepOutBill_CusBar/Kf_MoveStockStepOutBill_CusBar_APP",
+		    "style" : 
+		    {
+		        "navigationBarTitleText" : "鍒嗘寮忚皟鍑哄崟(楠岃瘉)"
+		    }
 		}
 		
 
diff --git a/pages/Kf_MoveStockBill_CusBar/Kf_MoveStockBill_CusBar_APP.vue b/pages/Kf_MoveStockBill_CusBar/Kf_MoveStockBill_CusBar_APP.vue
index 77fc0ab..23e877e 100644
--- a/pages/Kf_MoveStockBill_CusBar/Kf_MoveStockBill_CusBar_APP.vue
+++ b/pages/Kf_MoveStockBill_CusBar/Kf_MoveStockBill_CusBar_APP.vue
@@ -95,7 +95,7 @@
                 </view>
                 <view class="form-item">
                     <view class="title">鍗曟嵁瀛愮被鍨�:</view>
-                    <zxz-uni-data-select class="right" :localdata="[]" dataKey="鐝鍚嶇О" dataValue="HItemID"
+                    <zxz-uni-data-select class="right" :localdata="HBillSubType" dataKey="HName" dataValue="HNumber"
                         v-model="hform.HBillSubType">
                     </zxz-uni-data-select>
                 </view>
@@ -435,7 +435,7 @@
                 materMeta: [],
                 HMaterList: [],
                 HMouldList: [],
-
+                HBillSubType: [], // 鍗曟嵁瀛愮被鍨�
                 hform: {
                     "HCP": "",
                     "HBarCode": "",
@@ -500,12 +500,12 @@
                     "HSCWHID": 0,
                     "HOutStockPlaceName": "",
                     "HOutStockPlaceID": 0,
-                    "HBillSubType": "",
-                    "HStockStyle": "",
+                    "HBillSubType": "ZJDB01_SYS",
+                    "HStockStyle": "缁勭粐鍐呰皟鎷�",
                     "HTransferDirect": "",
                     "HShipType": "",
-                    "HStockOutOrgID": 0,
-                    "HStockInOrgID": 0,
+                    "HStockOutOrgID": uni.getStorageSync("OrganizationID"),
+                    "HStockInOrgID": uni.getStorageSync("OrganizationID"),
                     "HSCWHName_B": "",
                     "HSCSPName_B": ""
                 },
@@ -549,6 +549,33 @@
             }
         },
         methods: {
+            // 鑾峰彇鍗曟嵁瀛愮被鍨�
+            async set_InitBillSubType(){
+                try{
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/WEBSController/GetBillSubType_Json",
+                        data: {
+                            "HBillType": this.hform.HBillType,
+                            "HStockOrgID": this.hform.HStockOutOrgID 
+                        }
+                    })
+                    
+                    let {data, count, Message} = res.data
+                    if(count == 1) {
+                        this.HBillSubType = data
+                    }else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇鍗曟嵁瀛愮被鍨嬪け璐�: ${Message}`
+                        })
+                    }
+                }catch(err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇鍗曟嵁瀛愮被鍨嬪け璐�: ${err}`
+                    })
+                }
+            },
             // 璋冨叆浠撲綅淇敼
             HStockPlaceInNameChange(e) {
                 for (var i = 0; i < this.HStockPlaceInNameList.length; i++) {
@@ -645,12 +672,14 @@
                     })
 
                     if (res.data.count == 1) {
+                        console.log('res.data: ',res.data);
 
+                        // this.hform.HSCWHName = res.data.data[0].鎵�灞炰粨搴�
+                        this.HSCWHNameChange(res.data.data[0].鎵�灞炰粨搴�)
                         this.hform.HOutStockPlaceID = res.data.data[0].HMainID
                         this.hform.HOutStockPlaceName = res.data.data[0].浠撲綅鍚嶇О
                         this.hform.HSCWHID = res.data.data[0].HWHID
-                        // this.hform.HSCWHName = res.data.data[0].鎵�灞炰粨搴�
-                        this.HSCWHNameChange(res.data.data[0].鎵�灞炰粨搴�)
+                    
                     } else {
                         uni.showToast({
                             title: '浠撲綅鏁版嵁璇锋眰澶辫触',
@@ -702,50 +731,6 @@
                         this.hform.HWHID = res.data.data[0].HWHID
                         // this.hform.HWHName = res.data.data[0].鎵�灞炰粨搴�
                         this.HWHInNameChange(res.data.data[0].鎵�灞炰粨搴�)
-                    } else {
-                        uni.showToast({
-                            title: '浠撲綅鏁版嵁璇锋眰澶辫触',
-                            icon: 'none'
-                        })
-                    }
-
-                } catch (err) {
-                    uni.showToast({
-                        title: '浠撲綅鏁版嵁璇锋眰澶辫触',
-                        icon: 'none'
-                    })
-                }
-            },
-
-            // 鑾峰彇浠撲綅
-            async getStockPlaceRemote(HSPGroupID, Mode) {
-                // Mode=1 -> 璋冨叆浠撲綅鏁版嵁鑾峰彇; Mode=2 -> 璋冨嚭浠撲綅鏁版嵁鑾峰彇
-                try {
-                    let res = await CommonUtils.doRequest2Async({
-                        url: '/Gy_StockPlace/list',
-                        data: {
-                            sWhere: ` and HSPGroupID = ${HSPGroupID}`,
-                            user: uni.getStorageSync('HUserName'),
-                            Organization: uni.getStorageSync('Organization')
-                        },
-                    })
-
-                    if (res.data.count == 1) {
-                        if (Mode == 1) {
-                            this.HStockPlaceInNameList = res.data.data
-                            for (var i = 0; i < res.data.data.length; i++) {
-                                this.arrayHStockPlaceInName[i] = res.data.data[i].浠撲綅鍚嶇О
-                            }
-                            return
-                        }
-                        if (Mode == 2) {
-                            this.HStockPlaceNameList = res.data.data
-                            for (var i = 0; i < res.data.data.length; i++) {
-                                this.arrayHStockPlaceName[i] = res.data.data[i].浠撲綅鍚嶇О
-                            }
-                            return
-                        }
-
                     } else {
                         uni.showToast({
                             title: '浠撲綅鏁版嵁璇锋眰澶辫触',
@@ -995,7 +980,10 @@
                     }
                 }
             },
-            async getStockPlaceRemote(HSPGroupID) {
+            // 鑾峰彇浠撲綅
+            async getStockPlaceRemote(HSPGroupID, Mode) {
+                // Mode=1 -> 璋冨叆浠撲綅鏁版嵁鑾峰彇; Mode=2 -> 璋冨嚭浠撲綅鏁版嵁鑾峰彇
+                console.log('Mode: ',Mode);
                 try {
                     let res = await CommonUtils.doRequest2Async({
                         url: '/Gy_StockPlace/list',
@@ -1005,19 +993,32 @@
                             Organization: uni.getStorageSync('Organization')
                         },
                     })
-
+            
                     if (res.data.count == 1) {
-                        this.HStockPlaceNameList = res.data.data
-                        for (var i = 0; i < res.data.data.length; i++) {
-                            this.arrayHStockPlaceName[i] = res.data.data[i].浠撲綅鍚嶇О
+                        if (Mode == 1) {
+                            this.HStockPlaceInNameList = res.data.data
+                            for (var i = 0; i < res.data.data.length; i++) {
+                                this.arrayHStockPlaceInName[i] = res.data.data[i].浠撲綅鍚嶇О
+                            }
+                            
+                            console.log('this.HStockPlaceInNameList: ',this.HStockPlaceInNameList);
+                            return
                         }
+                        if (Mode == 2) {
+                            this.HStockPlaceNameList = res.data.data
+                            for (var i = 0; i < res.data.data.length; i++) {
+                                this.arrayHStockPlaceName[i] = res.data.data[i].浠撲綅鍚嶇О
+                            }
+                            return
+                        }
+            
                     } else {
                         uni.showToast({
                             title: '浠撲綅鏁版嵁璇锋眰澶辫触',
                             icon: 'none'
                         })
                     }
-
+            
                 } catch (err) {
                     uni.showToast({
                         title: '浠撲綅鏁版嵁璇锋眰澶辫触',
@@ -1387,7 +1388,7 @@
                 console.log('this.hform.HQty: ', this.hform.HQty);
                 try {
                     let res = await CommonUtils.doRequest2Sync({
-                        url: '/WEBSController/Get_BarCode_Json',
+                        url: '/WEBSController/get_BarCode_MoveStock_New_Json',
                         data: {
                             sBarCode: sBarCode,
                             HInterID: this.hform.HInterID,
@@ -1401,7 +1402,10 @@
                             SourceFlag: this.hform.HSourceFlag,
                             HSourceBillNo: this.hform.HSourceBillNo,
                             HSourceBillType: this.hform.HMainSourceBillType,
-                            HStockOrgID: this.hform.HStockOrgID,
+                            HStockInOrgID: this.hform.HStockInOrgID,
+                            HStockOutOrgID: this.hform.HStockOutOrgID,
+                            HSCWHID: this.hform.HSCWHID,
+                            HSCSPID: this.hform.HOutStockPlaceID,
                             HScanStyle: "",
                             HCustom1: "1",
                             HCustom2: ""
@@ -1593,6 +1597,9 @@
                 if (this.hform.HSupName == '') {
                     this.hform.HSupID = "0"
                 }
+                if(this.hform.HOutStockPlaceName == '') {
+                    this.hform.HOutStockPlaceID = "0"
+                }
 
                 console.log('HQty: ', this.hform.HQty);
                 let sOldBarCode = this.hform.HBarCode
@@ -1768,6 +1775,8 @@
                             this.hform.HTMQty_B = ''
                             this.hform.HWHName_B = ''
                             this.hform.HSPName_B = ''
+                            this.hform.HSCWHName_B = ''
+                            this.hform.HSCSPName_B = ''
                         } else {
                             this.hform.HBarCode_B = data.BarCodeDetailslist[0].HBarCode
                             this.hform.HMaterName_B = data.BarCodeDetailslist[0].HMaterName
@@ -1778,6 +1787,8 @@
                             this.hform.HTMQty_B = data.BarCodeDetailslist[0].HTMQty
                             this.hform.HWHName_B = data.BarCodeDetailslist[0].HWHName
                             this.hform.HSPName_B = data.BarCodeDetailslist[0].HSPName
+                            this.hform.HSCWHName_B = data.BarCodeDetailslist[0].HSCWHName
+                            this.hform.HSCSPName_B = data.BarCodeDetailslist[0].HSCSPName
                         }
 
                         this.tabs = 2
@@ -1839,7 +1850,7 @@
                     let oMain = JSON.stringify(this.hform)
                     console.log('oMain: ', oMain);
                     let res = await CommonUtils.doRequest2Sync({
-                        url: "/WEBSController/set_SaveSellOutBill_Json",
+                        url: "/WEBSController/set_SaveMoveStockBill_Json",
                         data: {
                             "oMain": oMain
                         },
@@ -2029,6 +2040,7 @@
             this.getHDeptList()
             this.getEmpList()
             this.getRelationStore()
+            this.set_InitBillSubType()
             this.loadCache()
         },
         onUnload() {
diff --git a/pages/Kf_MoveStockStepOutBill_CusBar/Kf_MoveStockStepOutBill_CusBar_APP.vue b/pages/Kf_MoveStockStepOutBill_CusBar/Kf_MoveStockStepOutBill_CusBar_APP.vue
new file mode 100644
index 0000000..2bf3401
--- /dev/null
+++ b/pages/Kf_MoveStockStepOutBill_CusBar/Kf_MoveStockStepOutBill_CusBar_APP.vue
@@ -0,0 +1,2080 @@
+<template>
+    <view>
+        <!-- 鍩烘湰淇℃伅 -->
+        <view class="form">
+            <view class="form-item">
+                <view class="title">
+                    浼犵エ:
+                </view>
+                <view class="right">
+                    <input type="text" v-model="hform.HCP">
+                </view>
+                <view class="icon-wrapper">
+                    <uni-icons type="scan" size="20" @click="qrCodeDisplay('HCP')"></uni-icons>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="title">
+                    鏉$爜:
+                </view>
+                <view class="right">
+                    <input type="text" v-model="hform.HBarCode" @confirm="GetMessageByBarCode">
+                </view>
+                <view class="icon-wrapper">
+                    <uni-icons type="scan" size="20" @click="qrCodeDisplay('BarCode')"></uni-icons>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="title">
+                    鏁伴噺:
+                </view>
+                <view class="right">
+                    <input type="number" v-model="hform.HQty">
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="title">璋冨嚭浠撳簱:</view>
+                <view class="right">
+                    <uni-combox :candidates="arrayHWHName" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撳簱" v-model="hform.HSCWHName"
+                        @input="HSCWHNameChange" @confirm="HWHNameOutScan"></uni-combox>
+                </view>
+            </view>
+            <view class="form-item">
+                <view class="title">璋冨嚭浠撲綅:</view>
+                <!-- TODO: 鍥涚淮灏旈渶瑕佹壂浠撲綅鐮� 甯﹀嚭浠撳簱浠撲綅淇℃伅锛屾牴鎹叕鍙稿垽鏂槸鍚﹂渶瑕佺鐢ㄤ粨浣� -->
+                <view class="right">
+                    <uni-combox :candidates="arrayHStockPlaceNameComputed" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撲綅"
+                        v-model="hform.HOutStockPlaceName" @input="HOutStockPlaceNameChange"
+                        @confirm="HStockPlaceOutNameScan"></uni-combox>
+                </view>
+
+                <!-- <view class="righton" v-show="!HSCIsStockMgr">
+                    <input v-model="hform.HOutStockPlaceName" :disabled="!HIsStockMgr" placeholder="涓嶅彲鎿嶄綔" />
+                </view> -->
+            </view>
+        </view>
+        <view class="tabs horizon_tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">閫夋嫨婧愬崟</view>
+            <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">琛ㄥご淇℃伅</view>
+            <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鐗╂枡淇℃伅</view>
+            <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">鍣ㄥ叿淇℃伅</view>
+            <view :class="tabs == 4 ? 'on':''" @tap="tabs = 4">鏉$爜淇℃伅</view>
+            <view :class="tabs == 5 ? 'on':''" @tap="tabs = 5">涓嬫灦淇℃伅</view>
+        </view>
+        <!-- 閫夋嫨婧愬崟 -->
+        <template v-if="tabs == 0">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">婧愬崟绫诲瀷</view>
+                    <view class="right" v-show="showHMainSourceBillType">
+                        <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType"
+                            @change="HMainSourceBillTypeChange">
+                            <input name="HMainSourceBillType" disabled 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">婧愬崟鍗曞彿: </view>
+                    <view class="right">
+                        <input type="text" v-model="hform.HSourceBillNo"
+                            @confirm="GetMessageByHSourceBillNo(hform.HSourceBillNo)" />
+                    </view>
+                    <!-- 閫夋簮鍗曞姛鑳� -->
+                    <view class="icon-wrapper">
+                        <uni-icons type="search" size="20" @click="openSourceBillSelector"></uni-icons>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁瀛愮被鍨�:</view>
+                    <zxz-uni-data-select class="right" :localdata="HBillSubType" dataKey="HName" dataValue="HNumber"
+                        v-model="hform.HBillSubType">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍏堣繘鍏堝嚭浠�:</view>
+                    <view class="right">
+                        <uni-combox :candidates="arrayHWHName" placeholder="璇疯緭鍏ヤ粨搴�" v-model="hform.HFIFOWHName"
+                            @input="HFIFOWHNameChange"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冩嫧绫诲瀷:</view>
+                    <zxz-uni-data-select class="right" :localdata="[{value: '缁勭粐鍐呰皟鎷�'},{value: '璺ㄧ粍缁囪皟鎷�'}]" dataKey="value"
+                        dataValue="value" v-model="hform.HStockStyle">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冩嫧鏂瑰悜:</view>
+                    <zxz-uni-data-select class="right" :localdata="[]" dataKey="鐝鍚嶇О" dataValue="HItemID"
+                        v-model="hform.HTransferDirect">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍑鸿揣绫诲瀷:</view>
+                    <zxz-uni-data-select class="right" :localdata="[]" dataKey="鐝鍚嶇О" dataValue="HItemID"
+                        v-model="hform.HShipType">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏃ユ湡: </view>
+                    <view class="right">
+                        <input type="text" v-model="hform.HDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍒跺崟浜�: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HMaker" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HBillNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁ID: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HInterID" />
+                    </view>
+                </view>
+            </view>
+        </template>
+
+        <!-- 琛ㄥご淇℃伅 -->
+        <template v-if="tabs == 1">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">璋冨叆浠撳簱:</view>
+                    <view class="right">
+                        <uni-combox :candidates="arrayHWHInName" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撳簱" v-model="hform.HWHName"
+                            @input="HWHInNameChange" @confirm="HWHNameInScan"></uni-combox>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨叆浠撲綅:</view>
+                    <view class="right">
+                        <uni-combox :candidates="arrayHStockPlaceInNameComputed" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撲綅"
+                            v-model="hform.HStockPlaceName" @input="HStockPlaceInNameChange"
+                            @confirm="HStockPlaceNameInScan"></uni-combox>
+                    </view>
+                    <!--                    <view class="righton" v-show="!HIsStockMgr">
+                        <input v-model="hform.HStockPlaceName" :disabled="!HIsStockMgr" placeholder="涓嶅彲鎿嶄綔" />
+                    </view> -->
+                </view>
+                <view class="form-item">
+                    <view class="title">淇濈: </view>
+                    <zxz-uni-data-select class="right" :localdata="HEmpList" dataKey="HName" dataValue="HItemID"
+                        v-model="hform.HKeeperID">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍙戣揣: </view>
+                    <zxz-uni-data-select class="right" :localdata="HEmpList" dataKey="HName" dataValue="HItemID"
+                        v-model="hform.HSecManagerID">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">閮ㄩ棬: </view>
+                    <zxz-uni-data-select class="right" :localdata="HDeptList" dataKey="閮ㄩ棬鍚嶇О" dataValue="HItemID"
+                        v-model="hform.HDeptID">
+                    </zxz-uni-data-select>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹㈡埛: </view>
+                    <view class="right">
+                        <input type="text" v-model="hform.HSupName" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨嚭缁勭粐: </view>
+                    <view class="right">
+                        <input type="text" v-model="hform.HStockOrgName" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨叆缁勭粐: </view>
+                    <view class="right">
+                        <input type="text" v-model="hform.HStockOrgName" />
+                    </view>
+                </view>
+            </view>
+        </template>
+
+        <!-- 鐗╂枡淇℃伅 -->
+        <template v-if="tabs == 2">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="list" v-for="(item,index) in HMaterList" :key="index">
+                    <uni-card :title="item.鐗╂枡鍚嶇О" :extra="item.鐗╂枡浠g爜" style="margin: 10px;" @tap="delMater(item)">
+                        <view class="card-detail">
+                            <view class="detail">
+                                <text>婧愬崟鍗曞彿锛�</text>{{item.婧愬崟鍗曞彿}}
+                            </view>
+                            <view class="detail">
+                                <text>婧愬崟鏁伴噺锛�</text>{{item.婧愬崟鏁伴噺}}
+                            </view>
+                            <view class="detail">
+                                <text>鏁伴噺锛�</text>{{item.鏁伴噺}}
+                            </view>
+                            <view class="detail">
+                                <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="materMeta[0].HWHName && /鍏磋揪/.test(hform.HStockOrgName
+                            )">
+                                <text>浠撳簱锛�</text>{{materMeta[0].HWHName}}
+                            </view>
+                        </view>
+                    </uni-card>
+                </view>
+                <view class="over" v-if="HMaterList.length == 0">鏆傛棤鏁版嵁</view>
+            </view>
+        </template>
+
+        <!-- 鍣ㄥ叿淇℃伅 -->
+        <template v-if="tabs == 3">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="list" v-for="(item,index) in HMaterList" :key="index">
+                    <uni-card v-if="item.鍣ㄥ叿鏉$爜" :title="item.鍣ㄥ叿鍚嶇О" :extra="item.鍣ㄥ叿浠e彿" style="margin: 10px;"
+                        @tap="delMould(item)">
+                        <view class="card-detail">
+                            <view class="detail">
+                                <text>鍣ㄥ叿鏉$爜锛�</text>{{item.鍣ㄥ叿鏉$爜}}
+                            </view>
+                            <view class="detail">
+                                <text>鍣ㄥ叿鏉$爜涓暟锛�</text>{{item.鍣ㄥ叿鏉$爜涓暟}}
+                            </view>
+                            <view class="detail">
+                                <text>鏁伴噺锛�</text>{{item.鏁伴噺}}
+                            </view>
+                        </view>
+                    </uni-card>
+                </view>
+                <view class="over" v-if="HMaterList.length == 0">鏆傛棤鏁版嵁</view>
+            </view>
+        </template>
+
+        <!-- 鏉$爜淇℃伅 -->
+        <template v-if="tabs == 4">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">鏉$爜: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HBarCode_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鐗╂枡: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HMaterName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瑙勬牸: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HMaterModel_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鎵规: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HBatchNo_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曚綅: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HUnitName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏁伴噺: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HQty_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹归噺: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HTMQty_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨叆浠撳簱: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HWHName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨叆浠撲綅: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HSPName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨嚭浠撳簱: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HSCWHName_B" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璋冨嚭浠撲綅: </view>
+                    <view class="righton">
+                        <input type="text" disabled v-model="hform.HSCSPName_B" />
+                    </view>
+                </view>
+            </view>
+        </template>
+
+        <!-- 涓嬫灦淇℃伅 -->
+        <template v-if="tabs == 5">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <FIFOListComponentVue :FIFOList="HFIFOList"></FIFOListComponentVue>
+            </view>
+        </template>
+        <!-- 鎿嶄綔鎸夐挳 -->
+        <view class="buttons" id="buttons">
+            <button class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+            <view style="flex: 1;"></view>
+            <button class="btn-a" v-if="operationType!=4" size="mini" @tap="addNew">鏂板</button>
+            <button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+        </view>
+        <BillListPopupVue ref="billList" :HBillType="hform.HBillType" :HSourceBillType="hform.HMainSourceBillType"
+            :HStockOrgID="hform.HStockOrgID" @BillSelectComplete="handleSourceBill"></BillListPopupVue>
+    </view>
+</template>
+
+<script>
+    import dayjs from "dayjs";
+    import {
+        CommonUtils
+    } from "@/utils/common";
+    import {
+        MpaasScan
+    } from "@/utils/mpaasScan.js"
+    import {
+        getUserInfo
+    } from "@/utils/auth";
+    import {
+        getUserStockRelation
+    } from '@/utils/userRelationManager';
+    import FIFOListComponentVue from "@/components/FIFOListModule/FIFOListComponent.vue";
+    import BillListPopupVue from "@/components/BillListPopup/BillListPopup.vue";
+    export default {
+        // 閿�鍞嚭搴撳崟(楠岃瘉)
+        name: 'Kf_MoveStockBill_CusBar_APP',
+        components: {
+            FIFOListComponentVue,
+            BillListPopupVue
+        },
+        data() {
+            return {
+                tabs: 0,
+
+                btnTop: 0,
+                tabsBottom: 0,
+                HModName: "Kf_MoveStockBill_CusBar_APP",
+                operationType: 1,
+                uploadOptions: {},
+                enableEdit: true,
+                enableSourceBillEdit: true,
+
+                // 婧愬崟绫诲瀷鐩稿叧
+                HMainSourceBillType: "鍙戣揣閫氱煡鍗�", // 鐢ㄤ簬鏄剧ず鐨勬簮鍗曠被鍨�
+                arrayHMainSourceBillType: ["鍙戣揣閫氱煡鍗�", "璋冩嫧鐢宠鍗�", "鎵嬪伐褰曞叆"],
+                arrayHMainSourceBillTypeID: [1402, 1243, -1], // 瀵瑰簲鐨勫崟鎹被鍨婭D
+                showHMainSourceBillType: true,
+
+                arrayHWHName: [], //浠撳簱
+                HWHNameList: [],
+                arrayHStockPlaceName: [], //浠撲綅
+                HStockPlaceNameList: [],
+                arraySCHWName: [], // 璋冨嚭浠撳簱
+                arrayHWHInName: [], // 璋冨叆浠撳簱
+                HWHInNameList: [],
+                arrayHStockPlaceInName: [], //璋冨叆浠撲綅
+                HStockPlaceInNameList: [],
+
+                HDeptList: [],
+                HRepairCheckList: [],
+                HEmpList: [],
+                HRepairList: [],
+                HFIFOList: [],
+
+                materMeta: [],
+                HMaterList: [],
+                HMouldList: [],
+                HBillSubType: [], // 鍗曟嵁瀛愮被鍨�
+                hform: {
+                    "HCP": "",
+                    "HBarCode": "",
+                    "HQty": "",
+                    "HBarCode-BT": "",
+                    "HWHName": "",
+                    "HWHID": 0,
+                    "HWHID-BT": "",
+                    "HStockPlaceName": "",
+                    "HStockPlaceID": 0,
+                    "HSpID-BT": "",
+                    "HMainSourceBillType": "1402",
+                    "HSourceBillNo": "",
+                    "cmdHSourceBillNo": "",
+                    "HSourceBillNo-BT": "",
+                    "HFIFOWHName": "",
+                    "HFIFOWHID": 0,
+                    "HFIFOWHID-BT": "",
+                    "HDate": dayjs(new Date()).format("YYYY-MM-DD"),
+                    "HMaker": getUserInfo()["Czymc"],
+                    "HBillNo": "",
+                    "HInterID": 0,
+                    "HKeeperName": getUserInfo()["HKeeperName"],
+                    "HKeeperID": getUserInfo()["HKeeperID"],
+                    "HKeeperID-BT": "",
+                    "HSecManagerName": getUserInfo()["HSecManagerName"],
+                    "HSecManagerID": getUserInfo()["HSecManagerID"],
+                    "HSecManagerID-BT": "",
+                    "HDeptName": getUserInfo()["HDeptName"],
+                    "HDeptID": getUserInfo()["HDeptID"],
+                    "HDeptID-BT": "",
+                    "HSupName": "",
+                    "HSupID": 0,
+                    "HSupID-BT": "",
+                    "HStockOrgName": uni.getStorageSync("Organization"),
+                    "HStockOrgID": uni.getStorageSync("OrganizationID"),
+                    "wl-table": "",
+                    "cmdMouldDel": "",
+                    "Mould-table": "",
+                    "HBarCode_B": "",
+                    "HMaterName_B": "",
+                    "HMaterModel_B": "",
+                    "HBatchNo_B": "",
+                    "HUnitName_B": "",
+                    "HQty_B": "",
+                    "HTMQty_B": "",
+                    "HWHName_B": "",
+                    "HSPName_B": "",
+                    "FIFOList-table": "",
+                    "cmdSaver": "",
+                    "cmdModify": "",
+                    "cmdDelete": "",
+                    "cmdCancel": "",
+                    "HBillType": "1250",
+                    "HBillerID": uni.getStorageSync("HBillerID"),
+                    "HRedBlueFlag": false,
+                    "HSourceBillListCtl": 0,
+                    "cs": "",
+                    "cs2": "",
+                    "HSourceFlag": false,
+                    "HSCWHName": "",
+                    "HSCWHID": 0,
+                    "HOutStockPlaceName": "",
+                    "HOutStockPlaceID": 0,
+                    "HBillSubType": "ZJDB01_SYS",
+                    "HStockStyle": "缁勭粐鍐呰皟鎷�",
+                    "HTransferDirect": "",
+                    "HShipType": "",
+                    "HStockOutOrgID": uni.getStorageSync("OrganizationID"),
+                    "HStockInOrgID": uni.getStorageSync("OrganizationID"),
+                    "HSCWHName_B": "",
+                    "HSCSPName_B": ""
+                },
+                HDetailList: [{
+                    "HRepairID": 0,
+                    "HRepairCode": "",
+                    "HRepairName": "",
+                    "HManagerID": 0,
+                    "HManagerCode": "",
+                    "HManagerName": "",
+                    "HRepairExplanation": '',
+                    "HRemark": "",
+                    "HEmpID": '',
+                    "HSourceInterID": 0,
+                    "HSourceEntryID": 0,
+                    "HSourceBillNo": ''
+                }]
+            };
+        },
+        computed: {
+            containerHeight: {
+                get() {
+                    return this.btnTop - this.tabsBottom - 5
+                }
+            },
+            arrayHStockPlaceNameComputed: {
+                get() {
+                    // 鍔ㄦ�佽绠楀搴旇皟鍑轰粨搴撶殑浠撲綅
+                    return this.HStockPlaceNameList
+                        .filter(e => e['鎵�灞炰粨搴�'] == this.hform.HSCWHName)
+                        .map(e => e['浠撲綅鍚嶇О'])
+                }
+            },
+            arrayHStockPlaceInNameComputed: {
+                get() {
+                    // 鍔ㄦ�佽绠楀搴旇皟鍏ヤ粨搴撶殑浠撲綅
+                    return this.HStockPlaceInNameList
+                        .filter(e => e['鎵�灞炰粨搴�'] == this.hform.HWHName)
+                        .map(e => e['浠撲綅鍚嶇О'])
+                }
+            }
+        },
+        methods: {
+            // 鑾峰彇鍗曟嵁瀛愮被鍨�
+            async set_InitBillSubType(){
+                try{
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/WEBSController/GetBillSubType_Json",
+                        data: {
+                            "HBillType": this.hform.HBillType,
+                            "HStockOrgID": this.hform.HStockOutOrgID 
+                        }
+                    })
+                    
+                    let {data, count, Message} = res.data
+                    if(count == 1) {
+                        this.HBillSubType = data
+                    }else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇鍗曟嵁瀛愮被鍨嬪け璐�: ${Message}`
+                        })
+                    }
+                }catch(err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇鍗曟嵁瀛愮被鍨嬪け璐�: ${err}`
+                    })
+                }
+            },
+            // 璋冨叆浠撲綅淇敼
+            HStockPlaceInNameChange(e) {
+                for (var i = 0; i < this.HStockPlaceInNameList.length; i++) {
+                    if (this.HStockPlaceInNameList[i].浠撲綅鍚嶇О == e) {
+                        this.hform.HStockPlaceName = this.HStockPlaceInNameList[i].浠撲綅鍚嶇О
+                        this.hform.HStockPlaceID = this.HStockPlaceInNameList[i].HMainID
+                    }
+                }
+            },
+            // 璋冨叆浠撳簱淇敼
+            HWHInNameChange(e) {
+                console.log('e: ', e);
+                this.hform.HStockPlaceName = ''
+                this.hform.HStockPlaceID = 0
+                for (var i = 0; i < this.HWHInNameList.length; i++) {
+                    if (this.HWHInNameList[i].浠撳簱鍚嶇О == e) {
+                        this.hform.HWHName = this.HWHInNameList[i].浠撳簱鍚嶇О
+                        this.hform.HWHID = this.HWHInNameList[i].HItemID
+                        this.HStockPlaceNameChange(null)
+                        if (this.HWHInNameList[i]['鍚敤浠撲綅'] == 'Y') {
+                            this.HIsStockMgr = true
+                            this.getStockPlaceRemote(this.HWHInNameList[i]["HSPGroupID"], 1) // 淇敼璋冨叆浠撳簱
+                        } else {
+                            // this.hform.HStockPlaceName = ''
+                            this.HIsStockMgr = false
+                        }
+                    }
+                }
+            },
+            // 璋冨嚭浠撳簱淇敼
+            HSCWHNameChange(e) {
+                // var name = e.split("(")
+                for (var i = 0; i < this.HWHNameList.length; i++) {
+                    if (this.HWHNameList[i].浠撳簱鍚嶇О == e) {
+                        this.hform.HSCWHName = this.HWHNameList[i].浠撳簱鍚嶇О
+                        this.hform.HSCWHID = this.HWHNameList[i].HItemID
+                        this.HOutStockPlaceNameChange(null)
+                        if (this.HWHNameList[i]['鍚敤浠撲綅'] == 'Y') {
+                            this.HSCIsStockMgr = true
+                            this.getStockPlaceRemote(this.HWHNameList[i]["HSPGroupID"], 2) // 淇敼璋冨嚭浠撳簱
+                            // 鏌ヨ浠撲綅鏁版嵁
+                        } else {
+
+                            this.HSCIsStockMgr = false
+                        }
+                    }
+                }
+            },
+            // 閫夋嫨璋冨嚭浠撲綅
+            HOutStockPlaceNameChange(e) {
+                let index = this.HStockPlaceNameList.findIndex(elem => elem['浠撲綅鍚嶇О'] == e)
+                this.hform.HOutStockPlaceName = ''
+                this.hform.HOutStockPlaceID = 0
+                if (index != -1) {
+                    this.hform.HOutStockPlaceName = this.HStockPlaceNameList[index].浠撲綅鍚嶇О
+                    this.hform.HOutStockPlaceID = this.HStockPlaceNameList[index].HMainID
+                }
+
+                // for (var i = 0; i < this.HStockPlaceInNameList.length; i++) {
+                //     if (this.HStockPlaceInNameList[i].浠撲綅鍚嶇О == e) {
+                //         this.hform.HOutStockPlaceName = this.HStockPlaceInNameList[i].浠撲綅鍚嶇О
+                //         this.hform.HOutStockPlaceID = this.HStockPlaceInNameList[i].HMainID
+                //     }
+                // }
+            },
+            async HWHNameOutScan(e) {
+                return
+                // 鎵弿浠撳簱鐮�
+                console.log('浠撳簱鐮�: ', e);
+                let index = this.HWHNameList.findIndex(elem => elem['鏉$爜缂栧彿'] == e)
+                if (index == -1) {
+                    uni.showToast({
+                        icon: 'none',
+                        title: '鎵弿浠撳簱鏉$爜瀵瑰簲鐨勪粨搴撲笉瀛樺湪...'
+                    })
+                } else {
+                    this.HWHNameChange(this.HWHNameList[index]['浠撳簱鍚嶇О'])
+                }
+            },
+            async HStockPlaceOutNameScan(e) {
+                // 鎵弿浠撲綅鐮�
+                console.log('浠撲綅鐮�: ', e);
+                // 涓嶅厛缃┖鐨勮瘽锛屾暟鎹啀娆℃壂鎻忕浉鍚岀殑浠撲綅鐮� 涓嶄細瑙﹀彂缁勪欢鍐呯殑鍒锋柊
+                this.hform.HOutStockPlaceID = 0
+                this.hform.HOutStockPlaceName = ''
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_StockPlace/list',
+                        data: {
+                            sWhere: ` and 鏉$爜缂栧彿 = '${e}'`,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        },
+                    })
+
+                    if (res.data.count == 1) {
+                        console.log('res.data: ',res.data);
+
+                        // this.hform.HSCWHName = res.data.data[0].鎵�灞炰粨搴�
+                        this.HSCWHNameChange(res.data.data[0].鎵�灞炰粨搴�)
+                        this.hform.HOutStockPlaceID = res.data.data[0].HMainID
+                        this.hform.HOutStockPlaceName = res.data.data[0].浠撲綅鍚嶇О
+                        this.hform.HSCWHID = res.data.data[0].HWHID
+                    
+                    } else {
+                        uni.showToast({
+                            title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    }
+
+                } catch (err) {
+                    uni.showToast({
+                        title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                        icon: 'none'
+                    })
+                }
+            },
+            async HWHNameInScan(e) {
+                return;
+                // 鎵弿浠撳簱鐮�
+                console.log('浠撳簱鐮�: ', e);
+                let index = this.HWHInNameList.findIndex(elem => elem['鏉$爜缂栧彿'] == e)
+                if (index == -1) {
+                    uni.showToast({
+                        icon: 'none',
+                        title: '鎵弿浠撳簱鏉$爜瀵瑰簲鐨勪粨搴撲笉瀛樺湪...'
+                    })
+                } else {
+                    this.HWHInNameChange(this.HWHInNameList[index]['浠撳簱鍚嶇О'])
+                }
+            },
+            async HStockPlaceNameInScan(e) {
+                // 鎵弿浠撲綅鐮�
+                console.log('浠撲綅鐮�: ', e);
+                // 涓嶅厛缃┖鐨勮瘽锛屾暟鎹啀娆℃壂鎻忕浉鍚岀殑浠撲綅鐮� 涓嶄細瑙﹀彂缁勪欢鍐呯殑鍒锋柊
+                this.hform.HStockPlaceID = 0
+                this.hform.HStockPlaceName = ''
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_StockPlace/list',
+                        data: {
+                            sWhere: ` and 鏉$爜缂栧彿 = '${e}'`,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        },
+                    })
+
+                    if (res.data.count == 1) {
+
+                        this.hform.HStockPlaceID = res.data.data[0].HMainID
+                        this.hform.HStockPlaceName = res.data.data[0].浠撲綅鍚嶇О
+                        this.hform.HWHID = res.data.data[0].HWHID
+                        // this.hform.HWHName = res.data.data[0].鎵�灞炰粨搴�
+                        this.HWHInNameChange(res.data.data[0].鎵�灞炰粨搴�)
+                    } else {
+                        uni.showToast({
+                            title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    }
+
+                } catch (err) {
+                    uni.showToast({
+                        title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                        icon: 'none'
+                    })
+                }
+            },
+            // 鎵撳紑閫夋簮鍗曢〉闈�
+            openSourceBillSelector() {
+                this.$refs.billList.showPopup()
+            },
+            // 鎺ユ敹婧愬崟
+            handleSourceBill(e) {
+                console.log('e: ', e);
+
+                this.hform.HSourceBillNo = e.HBillNo
+                this.GetMessageByHSourceBillNo(e.HBillNo)
+                this.$refs.billList.exit()
+            },
+            // 鏉$爜鍒犻櫎
+            async delMater(item) {
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + item.鐗╂枡鍚嶇О + ' " 鎵�鏈夋壂鐮佽褰曪紵鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: async (res) => {
+                        if (res.confirm) {
+                            try {
+                                let res = await CommonUtils.doRequest2Async({
+                                    url: "/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
+                                    },
+                                })
+
+                                let {
+                                    count,
+                                    Message
+                                } = res.data
+
+                                if (count == 1) {
+                                    this.DisBillEntryList()
+                                } else {
+                                    CommonUtils.showTips({
+                                        title: '娓╅Θ鎻愮ず',
+                                        message: `鍒犻櫎鏉$爜閿欒: ${Message}`
+                                    })
+                                }
+                            } catch (err) {
+                                CommonUtils.showTips({
+                                    title: '娓╅Θ鎻愮ず',
+                                    message: `鍒犻櫎鏉$爜閿欒: ${err}`
+                                })
+                            }
+                        }
+                    }
+                });
+            },
+            // 鍣ㄥ叿鍒犻櫎
+            async delMould(item) {
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + item.鍣ㄥ叿鍚嶇О + ' " 鎵�鏈夋壂鐮佽褰曪紵鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: async (res) => {
+                        if (res.confirm) {
+                            try {
+                                let res = await CommonUtils.doRequest2Async({
+                                    url: "/MouldController/set_DelMouldStockBillMain_Temp_Json",
+                                    data: {
+                                        "HInterID": this.hform.HInterID,
+                                        "HBillType": this.hform.HBillType,
+                                        "HBarCode": item.HMouldBarCode
+                                    },
+                                })
+
+                                let {
+                                    count,
+                                    Message
+                                } = res.data
+
+                                if (count == 1) {
+                                    this.DisBillEntryList()
+                                } else {
+                                    CommonUtils.showTips({
+                                        title: '娓╅Θ鎻愮ず',
+                                        message: `鍒犻櫎鏉$爜閿欒: ${Message}`
+                                    })
+                                }
+                            } catch (err) {
+                                CommonUtils.showTips({
+                                    title: '娓╅Θ鎻愮ず',
+                                    message: `鍒犻櫎鏉$爜閿欒: ${err}`
+                                })
+                            }
+                        }
+                    }
+                });
+            },
+            // 鎵弿鏉$爜
+            qrCodeDisplay(type) {
+                MpaasScan.scanCode(res => {
+                    if (!res) {
+                        return
+                    }
+                    switch (type) {
+                        // 鎵弿浼犵エ
+                        case "HCP":
+                            this.hform.HCP = res;
+                            break;
+                            // 鎵弿浜岀淮鐮�
+                        case "BarCode":
+                            this.hform.HBarCode = res
+                            this.GetMessageByBarCode();
+                            break;
+                    }
+                })
+
+            },
+            // 鑾峰彇浠撳簱淇℃伅
+            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()
+                }
+            },
+            // 璋冨叆浠撳簱璧勬枡
+            getHWarehouseInList(Organizaiton) {
+                Organizaiton = Organizaiton || uni.getStorageSync("Organization")
+                CommonUtils.doRequest2({
+                    url: '/Gy_Warehouse/list',
+                    data: {
+                        sWhere: "",
+                        user: uni.getStorageSync('HUserName'),
+                        Organization: Organizaiton
+                    },
+                    resFunction: (res) => {
+                        console.log('璋冨叆浠撳簱 res: ', res.data.data);
+                        if (res.data.count == 1) {
+                            this.HWHInNameList = []
+                            this.arrayHWHInName = []
+
+                            this.HWHInNameList = res.data.data
+                            for (var i = 0; i < res.data.data.length; i++) {
+                                this.arrayHWHInName[i] = res.data.data[i].浠撳簱鍚嶇О
+                            }
+
+                            this.HWHInNameChange(getUserInfo()["HSCWHName"])
+                        } else {
+                            uni.showToast({
+                                title: '浠撳簱鏁版嵁璇锋眰澶辫触',
+                                icon: 'none'
+                            })
+                        }
+                    }
+                });
+            },
+            //鍩虹浠撳簱璧勬枡
+            async getHBaseList({
+                sWhere = ''
+            } = {}) {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Gy_Warehouse/list",
+                        data: {
+                            sWhere: sWhere,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        },
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.HWHNameList = data
+                        for (var i = 0; i < data.length; i++) {
+                            this.arrayHWHName[i] = data[i].浠撳簱鍚嶇О
+                        }
+                        this.HWHNameChange(getUserInfo()["HWhName"])
+                        // this.HStockPlaceNameChange(res.data.data[0].浠撳簱鍚嶇О)
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇浠撳簱澶辫触: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇浠撳簱澶辫触: ${err}`
+                    })
+                }
+
+            },
+            //閫夋嫨浠撳簱
+            HWHNameChange(e) {
+                // var name = e.split("(")
+                for (var i = 0; i < this.HWHNameList.length; i++) {
+                    if (this.HWHNameList[i].浠撳簱鍚嶇О == e) {
+                        this.hform.HWHName = this.HWHNameList[i].浠撳簱鍚嶇О
+                        this.hform.HWHID = this.HWHNameList[i].HItemID
+                        this.HStockPlaceNameChange(null)
+                        this.showHStockPlaceName = false
+                        if (this.HWHNameList[i]['鍚敤浠撲綅'] == 'Y') {
+                            this.showHStockPlaceName = true
+                            this.getStockPlaceRemote(this.HWHNameList[i]["HSPGroupID"])
+                        }
+                    }
+                }
+            },
+            HFIFOWHNameChange(e) {
+                // var name = e.split("(")
+                for (var i = 0; i < this.HWHNameList.length; i++) {
+                    if (this.HWHNameList[i].浠撳簱鍚嶇О == e) {
+                        this.hform.HFIFOWHName = this.HWHNameList[i].浠撳簱鍚嶇О
+                        this.hform.HFIFOWHID = this.HWHNameList[i].HItemID
+                    }
+                }
+            },
+            // 鑾峰彇浠撲綅
+            async getStockPlaceRemote(HSPGroupID, Mode) {
+                // Mode=1 -> 璋冨叆浠撲綅鏁版嵁鑾峰彇; Mode=2 -> 璋冨嚭浠撲綅鏁版嵁鑾峰彇
+                console.log('Mode: ',Mode);
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_StockPlace/list',
+                        data: {
+                            sWhere: ` and HSPGroupID = ${HSPGroupID}`,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        },
+                    })
+            
+                    if (res.data.count == 1) {
+                        if (Mode == 1) {
+                            this.HStockPlaceInNameList = res.data.data
+                            for (var i = 0; i < res.data.data.length; i++) {
+                                this.arrayHStockPlaceInName[i] = res.data.data[i].浠撲綅鍚嶇О
+                            }
+                            
+                            console.log('this.HStockPlaceInNameList: ',this.HStockPlaceInNameList);
+                            return
+                        }
+                        if (Mode == 2) {
+                            this.HStockPlaceNameList = res.data.data
+                            for (var i = 0; i < res.data.data.length; i++) {
+                                this.arrayHStockPlaceName[i] = res.data.data[i].浠撲綅鍚嶇О
+                            }
+                            return
+                        }
+            
+                    } else {
+                        uni.showToast({
+                            title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    }
+            
+                } catch (err) {
+                    uni.showToast({
+                        title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                        icon: 'none'
+                    })
+                }
+            },
+            //閫夋嫨浠撲綅
+            HStockPlaceNameChange(e) {
+                let index = this.HStockPlaceNameList.findIndex(elem => elem['浠撲綅鍚嶇О'] == e)
+                if (index != -1) {
+                    this.hform.HStockPlaceName = this.HStockPlaceNameList[index].浠撲綅鍚嶇О
+                    this.hform.HStockPlaceID = this.HStockPlaceNameList[index].HMainID
+                } else {
+                    this.hform.HStockPlaceName = ''
+                    this.hform.HStockPlaceID = 0
+                }
+            },
+            // 鎵弿浠撲綅鐮�
+            async HStockPlaceNameScan(e) {
+                // 鎵弿浠撲綅鐮�
+                // 涓嶅厛缃┖鐨勮瘽锛屾暟鎹啀娆℃壂鎻忕浉鍚岀殑浠撲綅鐮� 涓嶄細瑙﹀彂缁勪欢鍐呯殑鍒锋柊
+                this.hform.HStockPlaceID = 0
+                this.hform.HStockPlaceName = ''
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_StockPlace/list',
+                        data: {
+                            sWhere: ` and 鏉$爜缂栧彿 = '${e}'`,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        },
+                    })
+
+                    if (res.data.count == 1) {
+
+                        this.hform.HStockPlaceID = res.data.data[0].HMainID
+                        this.hform.HStockPlaceName = res.data.data[0].浠撲綅鍚嶇О
+                        this.hform.HWHID = res.data.data[0].HWHID
+                        this.hform.HWHName = res.data.data[0].鎵�灞炰粨搴�
+                    } else {
+                        uni.showToast({
+                            title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                            icon: 'none'
+                        })
+                    }
+
+                } catch (err) {
+                    uni.showToast({
+                        title: '浠撲綅鏁版嵁璇锋眰澶辫触',
+                        icon: 'none'
+                    })
+                }
+            },
+            // 鏄剧ず婧愬崟鍗曟嵁鍒楄〃寮圭獥
+            showBillList() {
+                this.$refs.billList.showPopup()
+            },
+
+            // 閫夋嫨婧愬崟绫诲瀷
+            HMainSourceBillTypeChange(e) {
+                if (e.detail.value == -1 || e.detail.value == NaN) {
+                    this.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    this.hform.HMainSourceBillType = '鎵嬪伐褰曞叆'
+                    return
+                }
+
+                this.HMainSourceBillType = this.arrayHMainSourceBillType[e.detail.value]
+                this.hform.HMainSourceBillType = this.arrayHMainSourceBillTypeID[e.detail.value]
+
+                // 缂撳瓨褰撳墠椤甸潰閫夋嫨
+                const pages = getCurrentPages()
+                const currentPage = pages[pages.length - 1]
+                uni.setStorageSync(`${currentPage.route.split("/").pop()}_HSourceBillTypeCache`, {
+                    HSourceBillTypeName: this.HMainSourceBillType,
+                    HSourceBillType: this.hform.HMainSourceBillType
+                })
+            },
+
+            // 璇诲彇缂撳瓨
+            loadCache() {
+                const pages = getCurrentPages()
+                const currentPage = pages[pages.length - 1]
+                let HBillTypeCache = uni.getStorageSync(`${currentPage.route.split("/").pop()}_HSourceBillTypeCache`)
+                if (HBillTypeCache) {
+                    this.HMainSourceBillType = HBillTypeCache.HSourceBillTypeName
+                    this.hform.HMainSourceBillType = HBillTypeCache.HSourceBillType
+                }
+            },
+
+            // 缁翠慨椤圭洰
+            async getRepairList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Repair/GetRepairList',
+                        data: {
+                            sWhere: '',
+                            user: getUserInfo()["Czymc"]
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HRepairList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇缁翠慨椤圭洰澶辫触: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇缁翠慨椤圭洰澶辫触: ${err}`
+                    })
+                }
+            },
+            // 鍒犻櫎鏄庣粏
+            delDetail(item) {
+
+            },
+            // 鎻愪氦鏁版嵁鏈夋晥鎬ф牎楠�
+            ValidCheck() {
+                if (this.hform.HEquipID == 0) {
+                    return {
+                        Message: "鏈綍鍏ヨ澶囦俊鎭紝璇峰厛褰曞叆璁惧淇℃伅!",
+                        state: false
+                    }
+                }
+                if (this.hform.HDeptID == 0) {
+                    return {
+                        Message: "閮ㄩ棬涓嶅緱涓虹┖!",
+                        state: false
+                    }
+                }
+                if (this.hform.HEmpID == 0) {
+                    return {
+                        Message: "楠屾敹浜轰笉寰椾负绌�!",
+                        state: false
+                    }
+                }
+                if (this.hform.HRepairCheckMainID == 0) {
+                    return {
+                        Message: "缁翠慨椤圭洰涓嶅緱涓虹┖!",
+                        state: false
+                    }
+                }
+                if (this.hform.HManagerID == 0) {
+                    return {
+                        Message: "璐熻矗浜轰笉寰椾负绌�!",
+                        state: false
+                    }
+                }
+                if (this.hform.HMainSourceBillType !== '鎵嬪伐褰曞叆') {
+                    if (!this.hform.HSourceBillNo || this.hform.HSourceBillNo.trim() === '') {
+                        CommonUtils.showTips({
+                            message: '婧愬崟绫诲瀷闈炴墜宸ュ綍鍏ワ紝蹇呴』閫夋嫨婧愬崟锛�'
+                        })
+                        return
+                    }
+                }
+                return {
+                    Message: "",
+                    state: true
+                }
+            },
+            addNew() {
+                uni.redirectTo({
+                    url: './Kf_SellOutBill_CusBar_APP?operationType=1'
+                })
+            },
+            goBack() {
+                uni.navigateBack()
+            },
+            checkBoxChangeHandler(index, e) {
+                let cr = e.detail.value
+                if (cr.length == 0) {
+                    this.HCheckFileList[index]["HDotCheckResult"] = false
+                } else {
+                    this.HCheckFileList[index]["HDotCheckResult"] = true
+                }
+            },
+            uploadFile(index) {
+                console.log('filePath: ', this.attachmentInfo[index].filePath);
+                // 閫氳繃涓存椂璺緞璇诲彇鏂囦欢
+                uni.uploadFile({
+                    url: CommonUtils.getServerUrl() + "/Sb_EquipDotCheckBill/UploadFile",
+                    filePath: this.attachmentInfo[index].filePath,
+                    name: 'file',
+                    formData: {
+                        HBillNo: this.hform.HBillNo,
+                        HRemark: "",
+                        HUserName: getUserInfo()["Czymc"]
+                    },
+                    success: (uploadRes) => {
+                        CommonUtils.showTips({
+                            message: "涓婁紶鎴愬姛"
+                        })
+                        this.attachmentInfo[index].status = "涓婁紶鎴愬姛"
+                    },
+                    fail: (err) => {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `涓婁紶澶辫触: ${err}`
+                        })
+                    }
+                })
+            },
+            delFile(index) {
+                console.log('attachmentInfo: ', this.attachmentInfo[index]);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + this.attachmentInfo[index].fileName + ' " 鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            this.attachmentInfo.splice(index, 1)
+                        }
+                    },
+                })
+
+            },
+            handleUploadCallback(res) { // 鏂囦欢涓婁紶鍥炶皟
+                console.log('file: ', res);
+                let fileInfo = res.data[0]
+                this.attachmentInfo.push({
+                    fileName: fileInfo.name,
+                    size: fileInfo.size,
+                    status: '绛夊緟涓婁紶',
+                    filePath: fileInfo.tempFilePath
+                })
+            },
+            // 涓婁紶鏂囦欢
+            fileUpload() {
+                this.$refs.XeUpload.upload('file', {});
+            },
+            //鑾峰彇鐝鏁版嵁
+            async getShiftList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetGy_ShiftsList_Json',
+                        data: {
+                            Shifts: "",
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HShiftsList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            //鑾峰彇浣跨敤閮ㄩ棬鏁版嵁
+            async getHDeptList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Department/list',
+                        data: {
+                            sWhere: ` and HUSEORGID = ${uni.getStorageSync('OrganizationID')} `,
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HDeptList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            // 鑾峰彇鑱屽憳鏁版嵁
+            async getEmpList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/PublicPageMethod/UserList',
+                        data: {
+                            sWhere: " where 1=1",
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HEmpList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            // 鑾峰彇楠岃瘉椤圭洰鏁版嵁
+            async getCheckProjList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_RepairCheck/GetRepairCheckList',
+                        data: {
+                            sWhere: "",
+                            user: uni.getStorageSync('HUserName'),
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HRepairCheckList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            async getBarCodeJson(sBarCode, sBarCodePrefix) {
+                // if (!this.hform.HQty) {
+                //     this.hform.HQty = 0
+                // }
+                console.log('this.hform.HQty: ', this.hform.HQty);
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/WEBSController/get_BarCode_MoveStock_New_Json',
+                        data: {
+                            sBarCode: sBarCode,
+                            HInterID: this.hform.HInterID,
+                            HBillType: this.hform.HBillType,
+                            HBillNo: this.hform.HBillNo,
+                            HMaker: this.hform.HMaker,
+                            HWhID: this.hform.HWHID,
+                            HSPID: this.hform.HStockPlaceID,
+                            HQty: this.hform.HQty || 0,
+                            HRedBlueFlag: this.hform.HRedBlueFlag,
+                            SourceFlag: this.hform.HSourceFlag,
+                            HSourceBillNo: this.hform.HSourceBillNo,
+                            HSourceBillType: this.hform.HMainSourceBillType,
+                            HStockInOrgID: this.hform.HStockInOrgID,
+                            HStockOutOrgID: this.hform.HStockOutOrgID,
+                            HSCWHID: this.hform.HSCWHID,
+                            HSCSPID: this.hform.HOutStockPlaceID,
+                            HScanStyle: "",
+                            HCustom1: "1",
+                            HCustom2: ""
+                        },
+                    })
+                    if (!res) {
+                        return
+                    }
+                    console.log('鎵爜杩斿洖', res.data);
+                    this.hform.HBarCode = ''
+                    if (res.data.count == 1) {
+                        CommonUtils.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 == "1402") {
+                                this.HMainSourceBillType = '鍙戣揣閫氱煡鍗�'
+                                this.hform.HMainSourceBillType = 1402
+                                this.showHMainSourceBillType = false
+                            } else if (data.hSourceBillTypeField == "1401") {
+                                this.HMainSourceBillType = '閿�鍞鍗�'
+                                this.hform.HMainSourceBillType = 1401
+                                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.materMeta.push(data)
+                            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 || -1
+
+                                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(sBarCodePrefix)
+                        //娓呯┖鏁伴噺
+                        this.hform.HQty = ''
+                    } else {
+                        CommonUtils.playSound(0)
+                        // this.refreshBarCodeState()
+                        uni.showToast({
+                            title: res.data.Message,
+                            icon: 'none'
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.playSound(0)
+                    // this.refreshBarCodeState()
+                    console.log(err);
+                    uni.showToast({
+                        title: '鎺ュ彛璇锋眰澶辫触: ' + err,
+                        icon: 'none'
+                    })
+                }
+
+            },
+            toScanHSourceBillNo() {
+                MpaasScan.scanCode(cb => {
+                    this.hfrom.HSourceBillNo = cb
+                    this.GetMessageByHSourceBillNo(cb)
+                })
+            },
+            async GetMessageByHSourceBillNo(HSouceBillNo) {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/WEBSController/get_SourceBarCode_SellOut_Json",
+                        data: {
+                            "HInterID": this.hform.HInterID,
+                            "HBillNo": this.hform.HBillNo,
+                            "HBillType": this.hform.HBillType,
+                            "HSourceBillNo": this.hform.HSourceBillNo,
+                            "HSourceBillType": this.hform.HMainSourceBillType,
+                            "HMaker": this.hform.HMaker,
+                            "HFIFOWhID": this.hform.HFIFOWHID,
+                            "HOWNERID": this.hform.HStockOrgID
+                        },
+
+                    })
+
+                    let {
+                        count,
+                        Message,
+                        data
+                    } = res.data
+                    if (count == 1) {
+                        CommonUtils.playSound(1)
+                        this.hform.HSourceFlag = true
+                        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.tabs = 2
+                        this.hform.HSourceBillNo = data.hSourceBillNoField
+                        this.DisBillEntryList()
+                    } else {
+                        CommonUtils.playSound(0)
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鑾峰彇婧愬崟鍗曞彿澶辫触: ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鑾峰彇婧愬崟鍗曞彿澶辫触: ${err}`
+                    })
+                }
+            },
+            async GetMessageByBarCode(HBarCode) {
+                if (this.hform.HWHName == '') {
+                    this.hform.HWHID = "0"
+                }
+                if (this.hform.HStockPlaceName == '') {
+                    this.hform.HStockPlaceID = "0"
+                }
+                if (this.hform.HSupName == '') {
+                    this.hform.HSupID = "0"
+                }
+
+                console.log('HQty: ', this.hform.HQty);
+                let sOldBarCode = this.hform.HBarCode
+                let HDeleteFlag = sOldBarCode.substring(0, 1);
+                let sBarCode = sOldBarCode.slice(1);
+                let sHWHID = this.hform.HWHID
+                let sHSPID = this.hform.HStockPlaceID
+                let sHQty = this.hform.HQty
+                let sSourceBillNo = this.hform.HSourceBillNo
+                let sSourceBillType = this.hform.HMainSourceBillType
+                let sHCusID = this.hform.HSupID
+                let sHCP = this.hform.HCP
+                if (HDeleteFlag == "*") {
+                    if (sBarCode == "") {
+                        CommonUtils.playSound(0)
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: "璇锋壂鎻忚鍒犻櫎鐨勬潯鐮�"
+                        })
+                    } else {
+                        this.hform.HBarCode = ""
+                    }
+
+                    try {
+                        let res = await CommonUtils.doRequest2Async({
+                            url: '/WEBSController/set_DelPonderationBillMain_Temp_BarCode_Json',
+                            data: {
+                                "HInterID": this.hform.HInterID,
+                                "HBillType": this.hform.HBillType,
+                                "HBarCode": sBarCode
+                            }
+                        })
+
+                        let {
+                            data,
+                            count,
+                            Message
+                        } = res.data
+                        if (count == 1) {
+                            CommonUtils.playSound(1)
+                            this.hform.HQty = ""
+
+                        } else {
+                            CommonUtils.playSound(0)
+                            CommonUtils.showTips({
+                                title: '娓╅Θ鎻愮ず',
+                                message: `閿欒: ${Message}`
+                            })
+                        }
+                    } catch (err) {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `閿欒: ${err}`
+                        })
+                    }
+                } else {
+                    sBarCode = this.hform.HBarCode
+                    if (sBarCode == '') {
+                        CommonUtils.playSound(0)
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鏉$爜涓虹┖, 璇锋壂鎻忔潯鐮�!`
+                        })
+                        return
+                    }
+                    let sBarCodePrefix = sBarCode.substr(0, 3)
+                    if (sBarCodePrefix != 'PAK') {
+                        if (sHCusID == 0) {
+                            CommonUtils.playSound(0)
+                            CommonUtils.showTips({
+                                title: '娓╅Θ鎻愮ず',
+                                message: `缂哄皯瀹㈡埛淇℃伅锛岃鍏堟壂鎻忔簮鍗曟潯鐮�!`
+                            })
+                            this.tabs = 0
+                            return
+                        }
+                        if (sHCP == '') {
+                            CommonUtils.playSound(0)
+                            CommonUtils.showTips({
+                                title: '娓╅Θ鎻愮ず',
+                                message: `浼犵エ鍙蜂笉鑳戒负绌猴紝璇峰厛鎵弿浼犵エ鍙�!`
+                            })
+                            return
+                        }
+
+                        //鏍规嵁瀹㈡埛銆佷紶绁ㄣ�佹潯鐮佽繘琛岄獙璇�
+                        this.getChechBarCodeAndCPJSON(sHCusID, sHCP, sBarCode, sBarCodePrefix)
+                    } else {
+                        this.getBarCodeJson(sBarCode, sBarCodePrefix)
+                        // this.DisBillEntryList(sBarCodePrefix)
+                    }
+                }
+            },
+            // 鏍规嵁瀹㈡埛 浼犵エ 鏉$爜杩涜楠岃瘉
+            async getChechBarCodeAndCPJSON(sHCusID, sHCP, sBarCode, sBarCodePrefix) {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/WEBSController/GetCheakBarCodeAndCP_Json',
+                        data: {
+                            "HCusID": sHCusID,
+                            "HCP": sHCP,
+                            "HBarCode": sBarCode
+                        }
+                    })
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        CommonUtils.playSound(1)
+
+                        // this.DisBillEntryList()
+                        this.getBarCodeJson(sBarCode, sBarCodePrefix)
+                    } else {
+                        CommonUtils.playSound(0)
+                        console.log(err);
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: '鎺ュ彛璇锋眰澶辫触: ' + Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.playSound(0)
+                    console.log(err);
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: '鎺ュ彛璇锋眰澶辫触: ' + err
+                    })
+                }
+            },
+            //鐗╂枡淇℃伅
+            async DisBillEntryList(sBarCodePrefix) {
+                try {
+
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/WEBSController/GetBillEntryTmpList_Json',
+                        data: {
+                            HInterID: this.hform.HInterID,
+                            HBillNo: this.hform.HBillNo,
+                            HBillType: this.hform.HBillType,
+                            HStockOrgID: this.hform.HStockOrgID
+                        }
+                    })
+
+                    console.log('鐗╂枡', res.data)
+                    if (res.data.count == 1) {
+                        var data = res.data.data
+                        this.materMeta = data.BarCodeDetailslist
+                        this.HMaterList = data.Materlist
+                        this.HMouldList = data.Mouldlist
+
+                        if (data.FIFOlist.length != 0) {
+                            if (data.FIFOlist[0].HMaterID != 0) {
+                                this.FIFOlist = data.FIFOlist
+                            }
+                        }
+
+                        // 鏍规嵁鏄惁鏄鏉$爜閰嶇疆浠撲綅淇℃伅
+                        if (sBarCodePrefix == 'PAK') {
+                            this.hform.HStockPlaceName = ''
+                            this.hform.HStockPlaceID = 0
+                        } else {
+                            this.hform.HStockPlaceName = data.hSPNameField || ''
+                            this.hform.HStockPlaceID = data.hSPIDField || 0
+                        }
+                        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 = ''
+                            this.hform.HSCWHName_B = ''
+                            this.hform.HSCSPName_B = ''
+                        } else {
+                            this.hform.HBarCode_B = data.BarCodeDetailslist[0].HBarCode
+                            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
+                            this.hform.HSCWHName_B = data.BarCodeDetailslist[0].HSCWHName
+                            this.hform.HSCSPName_B = data.BarCodeDetailslist[0].HSCSPName
+                        }
+
+                        this.tabs = 2
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: `鎵弿鏉$爜澶辫触: ${res.data.Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: `鎵弿鏉$爜澶辫触: ${err}`
+                    })
+                }
+            },
+            radioChange({
+                detail: {
+                    value
+                }
+            }) {
+                this.hform.HCheckResult = value
+            },
+            // 鑾峰彇鏈�澶у崟鎹彿
+            async getMaxNum() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/WEBSController/GetMaxBillNoAndID_Json",
+                        data: {
+                            "HBillType": this.hform.HBillType
+                        }
+                    })
+                    let {
+                        count,
+                        data,
+                        Message
+                    } = res.data
+                    this.hform.HInterID = data[0]['HInterID']
+                    this.hform.HBillNo = data[0]["HBillNo"]
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: "鑾峰彇鍗曟嵁淇℃伅寮傚父: " + err
+                    })
+                }
+            },
+            async submit() {
+                let valid = this.ValidCheck()
+                if (!valid.state) {
+                    CommonUtils.showTips({
+                        message: valid.Message
+                    })
+                    return
+                }
+
+                try {
+                    console.log('HStockPlaceID: ', this.hform.HStockPlaceID);
+                    let oMain = JSON.stringify(this.hform)
+                    console.log('oMain: ', oMain);
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/WEBSController/set_SaveMoveStockStepOutBill_Json",
+                        data: {
+                            "oMain": oMain
+                        },
+                        method: "POST"
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        if (this.operationType == 4) {
+                            uni.showModal({
+                                title: '鎻愮ず',
+                                content: res.data.Message + '銆傚嵆灏嗚繑鍥炰笂绾ч〉闈�',
+                                showCancel: false,
+                                success: (res) => {
+                                    if (res.confirm) {
+                                        console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                        setTimeout(() => {
+                                            uni.navigateBack();
+                                        }, 50)
+                                        // uni.redirectTo({
+                                        //     url: './Sb_EquipRepairSendWorkBill?operationType=1'
+                                        // })
+                                    } else if (res.cancel) {
+                                        console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                        setTimeout(() => {
+                                            uni.navigateBack();
+                                        }, 50)
+                                    }
+                                }
+                            });
+                            return
+                        }
+                        uni.showModal({
+                            title: '鎻愮ず',
+                            content: res.data.Message + '銆傛槸鍚︾户缁柊澧烇紵(鐐瑰嚮鍙栨秷杩斿洖涓婄骇椤甸潰)',
+                            success: (res) => {
+                                if (res.confirm) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                    uni.redirectTo({
+                                        url: './Kf_SellOutBill_CusBar_APP?operationType=1'
+                                    })
+                                } else if (res.cancel) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                    setTimeout(() => {
+                                        uni.navigateBack();
+                                    }, 50)
+                                }
+                            }
+                        });
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: "鎻愪氦鍗曟嵁澶辫触: " + Message
+                        })
+                    }
+
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: "鎻愪氦鍗曟嵁澶辫触: " + err
+                    })
+                }
+            },
+            async getEquipFileMain(HInterID) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown_ListByHEquipID",
+                        data: {
+                            HEquipID: HInterID,
+                        },
+                    })
+
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (count == 1) {
+                        console.log('data: ', data);
+                        this.hform.HEquipID = data[0].hmainid
+                        this.hform.HBarName = data[0].璁惧鍚嶇О
+                        this.hform.HBarSpec = data[0].璁惧瑙勬牸
+                        this.hform.HBarModel = data[0].璁惧鍨嬪彿
+                        this.hform.HQty = 1
+
+                        this.enableEdit = false
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: Message
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: err
+                    })
+                }
+            },
+            async getSourceBillInfo(HSourceBillType, HInterID, HBillNo) {
+                // 涓嬫帹鍗曟嵁绫诲瀷涓鸿澶囨晠闅滅櫥璁板崟
+                if (HSourceBillType == 3907) {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Sb_EqpRepairWorkBill/Sb_EqpConkBookBillListCheckDetai",
+                        data: {
+                            HID: HInterID
+                        }
+                    })
+
+                    let {
+                        data,
+                        code,
+                        count,
+                        Message
+                    } = res.data
+
+                    if (code == 1) {
+                        console.log('data: ', data.h_v_Sb_EquipConkBookBillList_Edit);
+                        let data1 = data.h_v_Sb_EquipConkBookBillList_Edit[0]
+                        this.hform.HMainSourceBillType = HSourceBillType
+                        this.HMainSourceBillType = '璁惧鏁呴殰鐧昏鍗�'
+                        this.hform.HSourceBillNo = data1.鍗曟嵁鍙�
+                        this.hform.HMainSourceInterID = data1.hmainid
+                        this.hform.HMainSourceEntryID = data1.hsubid
+                        this.hform.HEquipID = data1.HEquipID
+                        this.hform.HManagerName = data1.璐熻矗浜�
+                        this.hform.HManagerID = data1.HManagerID
+                        this.hform.HBarName = data1.璁惧鍚嶇О
+                        this.hform.HBarModel = data1.璁惧鍨嬪彿
+                        this.hform.HBarSpec = data1.璁惧瑙勬牸
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇婧愬崟澶辫触: ${Message}`
+                        })
+                    }
+                }
+            }
+        },
+        onLoad(e) {
+            if (!e.operationType) {
+                this.operationType = 1
+            } else {
+                this.operationType = e.operationType
+            }
+
+            if (this.operationType == 1) {
+                // 鏂板
+                this.getMaxNum()
+            } else if (this.operationType == 2) {
+                // 澶嶅埗
+            } else if (this.operationType == 3) {
+                // 缂栬緫
+
+            } else if (this.operationType == 4) {
+                // 鐢辨姤宸ュ钩鍙版墦寮�
+                let HEquipID = e.HEquipID
+                this.getMaxNum()
+                this.getEquipFileMain(HEquipID)
+            } else if (this.operationType == 5) {
+                let {
+                    HSourceBillType,
+                    HInterID,
+                    HBillNo
+                } = e
+                // 涓嬫帹
+                this.getMaxNum()
+                this.getSourceBillInfo(HSourceBillType, HInterID, HBillNo)
+            }
+
+            this.getHWarehouseInList()
+            this.getHDeptList()
+            this.getEmpList()
+            this.getRelationStore()
+            this.set_InitBillSubType()
+            this.loadCache()
+        },
+        onUnload() {
+            // uni.$off('BillSelectComplete')
+        },
+        onReady() {
+            const query = uni.createSelectorQuery().in(this)
+            query.select("#buttons")
+                .boundingClientRect()
+                .select("#tabs")
+                .boundingClientRect()
+                .exec(res => {
+                    this.btnTop = Math.floor(res[0].top)
+                    this.tabsBottom = Math.ceil(res[1].bottom)
+                })
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    @import "@/pages/MJGL/style/MJBillStyle.scss";
+
+    .left {
+        width: 4em;
+    }
+
+    .picker-overlay {
+        position: absolute;
+        top: 0;
+        left: 0;
+        right: 0;
+        bottom: 0;
+        z-index: 1;
+    }
+
+    .horizon_tabs {
+        width: 100%;
+        overflow-x: auto;
+    }
+</style>
\ No newline at end of file
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 84c6954..33e3a11 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -370,7 +370,14 @@
 						"url": "/pages/zhuangxiang/snZhuangxiang_xiaowei",
 						"id": 28,
 						"hidden": false
-					}
+					},
+                    {
+                    	"img": "../../static/icon/icon15.png",
+                    	"text": "鍒嗘寮忚皟鍑哄崟楠岃瘉",
+                    	"url": "/pages/Kf_MoveStockStepOutBill_CusBar/Kf_MoveStockStepOutBill_CusBar_APP",
+                    	"id": 28,
+                    	"hidden": false
+                    }
 				],
             }
         },
diff --git a/pages/index/login.vue b/pages/index/login.vue
index 32922db..71e0518 100644
--- a/pages/index/login.vue
+++ b/pages/index/login.vue
@@ -110,7 +110,7 @@
 					"鏉窞鍑礉濂堢壒澶栫綉": 'http://erp.hzcabinet.cn:9090/API/',
 					"缈佹稕娑涙湰鍦版祴璇�": 'http://localhost:81/API/',
 					"闄堥晲鍝叉湰鍦版祴璇�": 'http://192.168.0.121:81/API/',
-					"闄堥晲鍝叉湰鍦版祴璇�2": 'http://192.168.88.82:81/API/',
+					"闄堥晲鍝叉湰鍦版祴璇�2": 'http://192.168.20.35:81/API/',
 					"寮犵憺骞挎湰鍦版祴璇�": 'http://localhost:8082/API/',
 					"浣欐�濇澃鏈湴娴嬭瘯": 'http://localhost:8082/LuBaoAPI/',
 					// 灏忓崼鍐呭缃�

--
Gitblit v1.9.1