From 281f1f443245dd1fac891bd74b136a8c1de4e809 Mon Sep 17 00:00:00 2001
From: wangyi <2946747746@qq.com>
Date: 星期五, 13 三月 2026 08:58:37 +0800
Subject: [PATCH] Merge branch 'Dev' of http://101.37.171.70:10101/r/~jhz/STUWMS into Dev

---
 pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainRuleBillList.vue                   |   19 
 pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainBill.vue                           |    2 
 pages/xiaoshouchuku/SellOutBill.vue                                              |   26 
 pages/qitaruku_v2/OtherInBill.vue                                                |   18 
 pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMain.vue     | 1283 ++++++++++++++++++++++++++++++++
 pages/ZLGL/OA_WorkLink/OA_WorkLinkBillQuery.vue                                  |    5 
 pages/index/tab1.vue                                                             |   50 
 pages/shengchanrukushengdan/Kf_ProductInBill.vue                                 |   13 
 pages/caigouruku/POStockInBill.vue                                               |   10 
 pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMainList.vue |  563 ++++++++++++++
 pages/caigoutuiliao/POStockInBackBill.vue                                        |    9 
 manifest.json                                                                    |    4 
 pages/index/tab3.vue                                                             |   20 
 pages/MJGL/SB_EquipICMOTechParamBill/SB_EquipICMOTechParamBillEdit.vue           |   13 
 pages/zhijiediaobo/MoveStockBill.vue                                             |   17 
 pages/index/login.vue                                                            |   14 
 pages/baogong/DayPlanBillList.vue                                                |   36 
 pages/qitachuku_v2/OtherOutBill.vue                                              |  213 ++++-
 18 files changed, 2,212 insertions(+), 103 deletions(-)

diff --git a/manifest.json b/manifest.json
index 1bc535a..3fa2e20 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
     "name" : "鏅轰簯LMES",
     "appid" : "__UNI__B002F49",
     "description" : "",
-    "versionName" : "2.091",
-    "versionCode" : 291,
+    "versionName" : "2.092",
+    "versionCode" : 292,
     "transformPx" : false,
     /* 5+App鐗规湁鐩稿叧 */
     "app-plus" : {
diff --git a/pages/MJGL/SB_EquipICMOTechParamBill/SB_EquipICMOTechParamBillEdit.vue b/pages/MJGL/SB_EquipICMOTechParamBill/SB_EquipICMOTechParamBillEdit.vue
index 39ec9a8..8cf5531 100644
--- a/pages/MJGL/SB_EquipICMOTechParamBill/SB_EquipICMOTechParamBillEdit.vue
+++ b/pages/MJGL/SB_EquipICMOTechParamBill/SB_EquipICMOTechParamBillEdit.vue
@@ -108,6 +108,12 @@
                         <input v-model="hform.HEquipName" disabled />
                     </view>
                 </view>
+                <view class="form-item">
+                    <view class="title">妯″叿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMouldName" disabled />
+                    </view>
+                </view>
             </view>
         </template>
         <!-- 鍏朵粬淇℃伅 -->
@@ -412,7 +418,9 @@
                     "HUpDater": "",
                     "HDeleteMan": "",
                     "HUpDateDate": "",
-                    "HDeleteDate": ""
+                    "HDeleteDate": "",
+                    "HMouldName": "",
+                    "HMouldID": 0,
                 }
             };
         },
@@ -1003,6 +1011,9 @@
                             "HMainSourceEntryID": data[0].HEntryID,
                             "HMainSourceBillNo": data[0].鍗曟嵁鍙�,
                             "HMainSourceBillType": data[0].鍗曟嵁绫诲瀷,
+                        
+                            "HMouldName": data[0].妯″叿鍚嶇О,
+                            "HMouldID": data[0].HMouldID
                         })
 
                         this.HTechParams = data.map(item => {
diff --git a/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainBill.vue b/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainBill.vue
index 7ca551e..77e289d 100644
--- a/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainBill.vue
+++ b/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainBill.vue
@@ -560,7 +560,7 @@
                             this.hform.HMouldMaintainRuleInterNo = data.鍗曟嵁鍙�;
                             this.hform.HMouldMaintainRuleInterID = data.hmainid;
                             this.hform.HPlanNo = data.淇濆吇璁″垝鍙� == null ? "" : data.淇濆吇璁″垝鍙�;
-                            this.hform.HPlanInterID = data.淇濆吇璁″垝id == null ? 0 : ata.淇濆吇璁″垝id,
+                            this.hform.HPlanInterID = data.淇濆吇璁″垝id == null ? 0 : data.淇濆吇璁″垝id,
                                 this.hform.HMouldMaintainPlanInterID = data.淇濆吇璁″垝id == null ? 0 :
                                 data.淇濆吇璁″垝id;
                             this.hform.HMouldMaintainPlanEntryID = data.淇濆吇璁″垝瀛恑d == null ? 0 : data
diff --git a/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainRuleBillList.vue b/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainRuleBillList.vue
index 1b2d665..1826255 100644
--- a/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainRuleBillList.vue
+++ b/pages/MJGL/mujubaoyangjiludan/Sc_MouldMaintainRuleBillList.vue
@@ -50,12 +50,27 @@
 			<view class="list" v-for="(item,index) in listData" :key="index">
 				<uni-card :title="item.鍗曟嵁鍙�" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
 					<view class="card-detail">
-						<view class="detail" v-if="item.鐐规鍛ㄦ湡">
-							<text>鐐规鍛ㄦ湡锛�</text>{{item.鐐规鍛ㄦ湡}}
+						<view class="detail" v-if="item.淇濆吇璁″垝鍙�">
+							<text>淇濆吇璁″垝鍙凤細</text>{{item.淇濆吇璁″垝鍙穧}
+						</view>
+						<view class="detail" v-if="item.淇濆吇璁″垝id" v-show="false">
+							<text>淇濆吇璁″垝id锛�</text>{{item.淇濆吇璁″垝id}}
+						</view>
+						<view class="detail" v-if="item.淇濆吇璁″垝瀛恑d" v-show="false">
+							<text>淇濆吇璁″垝瀛恑d锛�</text>{{item.淇濆吇璁″垝瀛恑d}}
+						</view>
+						<view class="detail" v-if="item.淇濆吇鍛ㄦ湡">
+							<text>淇濆吇鍛ㄦ湡锛�</text>{{item.淇濆吇鍛ㄦ湡}}
 						</view>
 						<view class="detail" v-if="item.鍛ㄦ湡鍗曚綅">
 							<text>鍛ㄦ湡鍗曚綅锛�</text>{{item.鍛ㄦ湡鍗曚綅}}
 						</view>
+						<view class="detail" v-if="item.淇濆吇寮�濮嬫棩鏈�">
+							<text>淇濆吇寮�濮嬫棩鏈燂細</text>{{item.淇濆吇寮�濮嬫棩鏈�.substr(0,10)}}
+						</view>
+						<view class="detail" v-if="item.淇濆吇缁撴潫鏃ユ湡">
+							<text>淇濆吇缁撴潫鏃ユ湡锛�</text>{{item.淇濆吇缁撴潫鏃ユ湡.substr(0,10)}}
+						</view>
 						<view class="detail" v-if="item.鎽樿">
 							<text>鎽樿锛�</text>{{item.鎽樿}}
 						</view>
diff --git a/pages/ZLGL/OA_WorkLink/OA_WorkLinkBillQuery.vue b/pages/ZLGL/OA_WorkLink/OA_WorkLinkBillQuery.vue
index 09189f9..0098e9b 100644
--- a/pages/ZLGL/OA_WorkLink/OA_WorkLinkBillQuery.vue
+++ b/pages/ZLGL/OA_WorkLink/OA_WorkLinkBillQuery.vue
@@ -175,7 +175,7 @@
                 }
             },
             onSearchClickHandler() {
-                this.getWorkLinkList()
+               this.switchTab(this.tabs)
             },
             onResetClickHandler() {
                 this.dateRangePicker = ["浠绘剰闂撮殧", "浠婂ぉ", "杩戜袱澶�", "杩戜笁澶�", "杩戝洓澶�", "杩戜簲澶�", "杩戝叚澶�", "杩戜竷澶�", "杩�30澶�"],
@@ -187,6 +187,7 @@
             },
             switchTab(tabIndex) {
                 this.tabs = tabIndex
+                this.sWhere = ''
                 switch (tabIndex) {
                     case 0:
                         this.sWhere =
@@ -207,8 +208,8 @@
                 this.getWorkLinkList()
             },
             async getWorkLinkList() {
+                this.sWhere += ` and 鏃ユ湡 >= CONVERT(VARCHAR(10), '${this.startDate}', 23) and 鏃ユ湡 <= CONVERT(VARCHAR(10), '${this.endDate}', 23)`
                 try {
-                    this.sWhere += ` and 鏃ユ湡 >= CONVERT(VARCHAR(10), '${this.startDate}', 23) and 鏃ユ湡 <= CONVERT(VARCHAR(10), '${this.endDate}', 23)`
                     
                     let res = await CommonUtils.doRequest2Async({
                         url: 'Sc_MESTransFerWorkBill/GetOA_WorkLinkBillList',
diff --git a/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMain.vue b/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMain.vue
new file mode 100644
index 0000000..dd14559
--- /dev/null
+++ b/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMain.vue
@@ -0,0 +1,1283 @@
+<template>
+	<view>
+		<!-- 涓昏〃鍖哄煙 -->
+		<view class="bill-main-area">
+			<!-- 涓昏〃椤电 -->
+			<view class="bill-main-tabs">
+				<view :class="mainTabSelected == 1 ? 'selected' : ''" @tap="mainTabSelected = 1">鍩烘湰淇℃伅</view>
+				<view :class="mainTabSelected == 2 ? 'selected' : ''" @tap="mainTabSelected = 2">鍏朵粬淇℃伅</view>
+				<view :class="mainTabSelected == 3 ? 'selected' : ''" @tap="mainTabSelected = 3">鍒跺崟淇℃伅</view>
+			</view>
+			<!-- 涓昏〃鍐呭 -->
+			<view class="bill-main-contents">
+				<!-- 鍩烘湰淇℃伅 -->
+				<view class="bill-main-content" v-if="mainTabSelected == 1">
+					<view class="form-item">
+						<view class="left">鍗曟嵁鍙�</view>
+						<view class="right disabled">
+							<input type="text" :value="hform.HBillNo" disabled />
+						</view>
+					</view>
+
+					<view class="form-item">
+						<view class="left">鏃ユ湡</view>
+						<view class="right">
+							<uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HDate">
+								<view>{{ hform.HDate }}</view>
+							</uni-datetime-picker>
+						</view>
+					</view>
+					
+					<!-- 澶勭悊閮ㄩ棬 -->
+					<view class="form-item">
+					    <view class="left">澶勭悊閮ㄩ棬</view>
+					    <view class="right">
+					        <uni-combox :candidates="DeptNameList" placeholder="璇烽�夋嫨澶勭悊閮ㄩ棬" v-model="hform.HDisposeDeptName"
+					            @input="HDisposeDeptChange"></uni-combox>
+					    </view>
+					</view>
+					
+					<!-- 鍙戣捣浜� -->
+					<view class="form-item">
+						<view class="left">鍙戣捣浜�</view>
+						<view class="right">
+							<uni-combox :candidates="GyEmpNameList" placeholder="璇烽�夋嫨鍙戣捣浜�"
+								v-model="hform.HSendMan" @input="HSendManChange"></uni-combox>
+						</view>
+					</view>
+					
+					<!-- 鎺ユ敹浜� -->
+					<view class="form-item">
+						<view class="left">鎺ユ敹浜�</view>
+						<view class="right">
+							<uni-combox :candidates="GyEmpNameList" placeholder="璇烽�夋嫨鎺ユ敹浜�"
+								v-model="hform.HReceiveMan" @input="HReceiveManChange"></uni-combox>
+						</view>
+					</view>
+					<!-- 鎶勯�佷汉  -->
+					<view class="form-item">
+						<view class="left">鎶勯�佷汉</view>
+						<view class="right">
+							<uni-combox :candidates="GyEmpNameList" placeholder="璇烽�夋嫨鎶勯�佷汉"
+								v-model="hform.HCopyMan" @input="HCopyManChange"></uni-combox>
+						</view>
+					</view>
+					
+					<view class="form-item">
+					    <view class="left">婧愬崟绫诲瀷</view>
+					    <view class="right" v-show="showHMainSourceBillType">
+					        <picker :range="arrayHMainSourceBillType" @change="HMainSourceBillTypeChange" mode="selector">
+					            <view class="picker-value">{{ HMainSourceBillTypeDisplay || '璇烽�夋嫨婧愬崟绫诲瀷' }}</view>
+					        </picker>
+					    </view>
+					    <view class="right disabled" v-show="!showHMainSourceBillType">
+					        <view class="picker-value">{{ HMainSourceBillTypeDisplay }}</view>
+					    </view>
+					</view>
+					
+					<view class="form-item">
+					    <view class="left">婧愬崟鍙�</view>
+					    <view class="right">
+					        <input type="text" v-model="hform.HMainSourceBillNo" placeholder="璇疯緭鍏ユ垨鎵弿婧愬崟鍙�" 
+					            @confirm="GetMessageByHSourceBillNo" />
+					    </view>
+					    <view class="icon-wrapper" @click="openSourceBillSelector">
+					        <uni-icons type="search" size="20"></uni-icons>
+					    </view>
+					    <view class="icon-wrapper" @click="scanSourceBill">
+					        <uni-icons type="scan" size="20"></uni-icons>
+					    </view>
+					</view>
+					
+					<!-- 澶勭悊宸ュ簭 -->
+					<view class="form-item">
+						<view class="left">澶勭悊宸ュ簭</view>
+						<view class="right disabled">
+							<input type="text" disabled v-model="hform.HDisposeProcName" />
+						</view>
+						<view class="icon-wrapper-big">
+							<uni-icons type="search" size="20" :class="!hasSourceBill?'enable-icon-button':'disable-icon-button'"
+                                :disabled="hasSourceBill"
+								@click="showSelectorModule(8)"></uni-icons>
+						</view>
+					</view>
+					
+					<!-- 涓嶈壇绫诲瀷 -->
+					<view class="form-item">
+						<view class="left">涓嶈壇绫诲瀷</view>
+						<view class="right disabled">
+							<input type="text" disabled v-model="hform.HBadTypeName" />
+						</view>
+						<view class="icon-wrapper-big">
+							<uni-icons type="search" size="20" :class="!hasSourceBill?'enable-icon-button':'disable-icon-button'"
+					            :disabled="hasSourceBill"
+								@click="showSelectorModule(7)"></uni-icons>
+						</view>
+					</view>
+					
+					<!-- 涓嶈壇鍘熷洜 -->
+					<view class="form-item">
+						<view class="left">涓嶈壇鍘熷洜</view>
+						<view class="right disabled">
+							<input type="text" disabled v-model="hform.HBadReasonName" />
+						</view>
+						<view class="icon-wrapper-big">
+							<uni-icons type="search" size="20" :class="!hasSourceBill?'enable-icon-button':'disable-icon-button'"
+					            :disabled="hasSourceBill"
+								@click="showSelectorModule(2)"></uni-icons>
+						</view>
+					</view>
+					
+					<!-- 澶勭悊缁撹璇︽儏 -->
+					<view class="form-item">
+						<view class="left">澶勭悊缁撹璇︽儏</view>
+						<view class="right">
+							<input type="text" v-model="hform.HDisposeNote" />
+						</view>
+					</view>
+					<!-- 澶勭悊缁撹 -->
+					<view class="form-item">
+					    <view class="left">澶勭悊缁撹</view>
+					    <view class="right select-border">  
+					        <uni-data-select
+					            v-model="hform.HCheckerResult"
+					            :localdata="conclusionList"
+					            :clear="false"
+					            placeholder="璇烽�夋嫨澶勭悊缁撹"
+					            :disabled="hasSourceBill"
+					            class="no-border-select"  
+					        ></uni-data-select>
+					    </view>
+					</view>
+				</view>
+				
+				<!-- 鍏朵粬淇℃伅 -->
+				<view class="bill-main-content" v-if="mainTabSelected == 2">
+				
+					<view class="form-item">
+						<view class="left">鐢宠鍗曞彿</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HBillNos" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">鐢宠鏃ユ湡</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HDates" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">鍙戠敓鏃堕棿</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HHappendDates" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">鐢熶骇璁㈠崟</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HICMOBillNos" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">宸ュ簭娴佽浆鍗�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HProcExchBillNos" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">浜у搧缂栫爜</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HMaterNumbers" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">浜у搧鍚嶇О</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HMaterNames" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">瑙勬牸鍨嬪彿</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HMaterModels" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">璁¢噺鍗曚綅</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HUnitNames" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">浜у搧绫诲瀷</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HMaterTypes" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">涓嶈壇鏁伴噺</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HUnRightQtys" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">杞﹂棿</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HDeptNames" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">鍙戠敓宸ュ簭</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HProcNames" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">涓嶈壇鐜拌薄</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HBadPhenomenaNames" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">涓嶈壇鍝丼N鐮�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HBarCodes" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">閿�鍞鍗�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HSeOrderBillNos" disabled />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">闂鐜拌薄绠�杩�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HReasonNotes" disabled />
+						</view>
+					</view>
+					
+					<!-- 绱ф�ョ▼搴� - 鏄剧ず鏂囨湰 -->
+					<view class="form-item">
+						<view class="left">绱ф�ョ▼搴�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HLevs" disabled />
+						</view>
+					</view>
+					
+					<!-- 鏄惁鍋滅嚎 - 鏄剧ず鏂囨湰 -->
+					<view class="form-item">
+						<view class="left">鏄惁鍋滅嚎</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HIsStops" disabled />
+						</view>
+					</view>
+					
+					<!-- 鏄惁鎵归噺闂 - 鏄剧ず鏂囨湰 -->
+					<view class="form-item">
+						<view class="left">鏄惁鎵归噺闂</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HIsBatchUnRights" disabled />
+						</view>
+					</view>
+					
+					<!-- 鍘熸湁鐨勫娉ㄥ拰缁勭粐瀛楁 -->
+					<view class="form-item">
+						<view class="left">澶囨敞</view>
+						<view class="right">
+							<input type="text" v-model="hform.HRemark" />
+						</view>
+					</view>
+					
+					<view class="form-item">
+						<view class="left">缁勭粐</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.Organization" disabled />
+						</view>
+					</view>
+				</view>
+				
+				<!-- 鍒跺崟淇℃伅 -->
+				<view class="bill-main-content" v-if="mainTabSelected == 3">
+					<view class="form-item">
+						<view class="left">鍒跺崟浜�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HMaker" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">鍒跺崟鏃ユ湡</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HMakeDate" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">淇敼浜�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HUpDater" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">淇敼鏃ユ湡</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HUpDateDate" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">瀹℃牳浜�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HChecker" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">瀹℃牳鏃ユ湡</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HCheckDate" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">鍏抽棴浜�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HCloseMan" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">鍏抽棴鏃ユ湡</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HCloseDate" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">浣滃簾浜�</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HDeleteMan" disabled />
+						</view>
+					</view>
+					<view class="form-item">
+						<view class="left">浣滃簾鏃ユ湡</view>
+						<view class="right disabled">
+							<input type="text" v-model="hform.HDeleteDate" disabled />
+						</view>
+					</view>
+				</view>
+			</view>
+		</view>
+		
+		<view style="height: 120rpx"></view>
+		
+		<!-- 搴曢儴鎸夐挳 -->
+		<view class="bottom-btn">
+			<button class="btn-a" size="mini" @tap="submit">淇濆瓨</button>
+			<view style="flex: 1"></view>
+			<button class="btn-a" size="mini" @tap="addNew">鏂板</button>
+			<button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+		</view>
+		
+		<!-- 寮圭獥缁勪欢 -->
+		<GyBadReasonPopup ref="GyBadReasonPopup" @update="CheckItemComplete" :bindKey="currentChechItemIDCache">
+		</GyBadReasonPopup>
+		<ProcessPopupVue ref="processPopup" @update="HProcComplete" :bindKey="0"></ProcessPopupVue>
+		<GyBadTypePopupVue ref="GyBadTypePopupVue" @update="HQCSchemeComplete" :bindKey="0"></GyBadTypePopupVue>
+		<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 GyBadReasonPopup from "../../../components/ZLGL/GyBadReasonPopup.vue";
+	import ProcessPopupVue from "../../../components/ZLGL/ProcessPopup.vue";
+	import GyBadTypePopupVue from "../../../components/ZLGL/GyBadTypePopup.vue";
+	import BillListPopupVue from "@/components/BillListPopup/BillListPopup.vue";
+	import {
+		getUserInfo
+	} from "../../../utils/auth";
+	
+	export default {
+		components: {
+			GyBadReasonPopup,
+			ProcessPopupVue,
+			GyBadTypePopupVue,
+			BillListPopupVue,
+		},
+		data() {
+			return {
+				operationType: 1,
+				mainTabSelected: 1,
+				hasSourceBill: false,
+			
+				enablePopupModule: "",
+				PopupModuleNameList: [
+					"", "", "GyBadReasonPopup", "", "", "", "", "GyBadTypePopupVue", "ProcessPopupVue"
+				],
+				conclusionList: [
+				    { value: '杩斿伐杩斾慨', text: '杩斿伐杩斾慨' },
+				    { value: '璁╂鎺ュ彈', text: '璁╂鎺ュ彈' },
+				    { value: '閫�鍥�', text: '閫�鍥�' },
+					{ value: '鎶ュ簾', text: '鎶ュ簾' },
+					{ value: '鍚堟牸', text: '鍚堟牸' }
+				],
+				emergencyList: [
+				    { value: '鏅��', text: '鏅��' },
+				    { value: '绱ф��', text: '绱ф��' }
+				],
+				yesNoList: [
+				    { value: '鍚�', text: '鍚�' },
+				    { value: '鏄�', text: '鏄�' }
+				],
+				currentChechItemIDCache: -1,
+				GyEmpList: [],
+				GyEmpNameList: [],
+				DeptNameList: [],
+				DeptList: [],
+			
+				HMainSourceBillTypeDisplay: "", // 鐢ㄤ簬鏄剧ず鐨勬簮鍗曠被鍨�
+				arrayHMainSourceBillType: ["涓嶈壇鍝佽瘎瀹$敵璇峰崟"],
+				arrayHMainSourceBillTypeID: ["7512"],
+				showHMainSourceBillType: true,
+				
+				hform: {
+					// 鍗曟嵁淇℃伅
+					HInterID: "0",
+					HEntryID: "0",
+					HBillNo: "",
+					HDate: dayjs(new Date()).format("YYYY-MM-DD"),
+					HBillType: '7513',
+					
+					// 鐢宠淇℃伅
+					HBillNos: "",
+					HDates: "",
+					HHappendDates: "",
+					
+					// 鐢熶骇璁㈠崟
+					HICMOBillNos: "",
+					HICMOInterIDs: "0",
+					HICMOEntryIDs: "0",
+					
+					// 浜у搧淇℃伅
+					HMaterNumbers: "",
+					HMaterNames: "",
+					HMaterModels: "",
+					HMaterIDs: "0",
+					HUnitNames: "",
+					HUnitIDs: "0",
+					HMaterTypes: "",
+					
+					// 宸ュ簭娴佽浆鍗�
+					HProcExchBillNos: "",
+					HProcExchInterIDs: "0",
+					HProcExchEntryIDs: "0",
+					
+					// 涓嶈壇淇℃伅
+					HUnRightQtys: "",
+					HLevs: "鏅��",
+					HIsStops: "鍚�",
+					HIsBatchUnRights: "鍚�",
+					HBarCodes: "",
+					HBadPhenomenaNames: "",
+					HBadPhenomenaIDs: "0",
+					HReasonNotes: "",
+					
+					// 閮ㄩ棬宸ュ簭
+					HDeptNames: "",
+					HDeptIDs: "0",
+					HProcNames: "",
+					HProcIDs: "0",
+					
+					// 閿�鍞鍗�
+					HSeOrderBillNos: "",
+					
+					// 婧愬崟淇℃伅
+					HMainSourceBillType: "",
+					HMainSourceBillNo: "",
+					HMainSourceInterID: "0",
+					HMainSourceEntryID: "0",
+					
+					// 浜哄憳淇℃伅
+					HSendMan: "",
+					HReceiveMan: "",
+					HCopyMan: "",
+					
+					// 澶勭悊淇℃伅
+					HDisposeDeptName: "",
+					HDisposeDeptID: "0",
+					HDisposeProcName: "",
+					HProcID: "0",
+					
+					HSendManID: "0",      // 鍙戣捣浜篒D
+					HReceiveManID: "0",   // 鎺ユ敹浜篒D
+					HDisposeEmpID: "0",
+					HCheckerResult: "杩斿伐杩斾慨",
+					HDisposeNote: "",
+					
+					// 涓嶈壇鍘熷洜绫诲瀷
+					HBadTypeName: "",
+					HBadTypeID: "0",
+					HBadReasonName: "",
+					HBadReasonID: "0",
+					HRemark: "",
+					
+					// 缁勭粐淇℃伅
+					Organization: getUserInfo()["Organization"] || "",
+					HStockOrgID: uni.getStorageSync('OrganizationID') || "0",
+					
+					// 鍒跺崟淇℃伅
+					HMaker: getUserInfo()["Czymc"] || "",
+					HMakeDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+					HUpDater: "",
+					HUpDateDate: "",
+					HChecker: "",
+					HCheckDate: "",
+					HCloseMan: "",
+					HCloseDate: "",
+					HDeleteMan: "",
+					HDeleteDate: "",
+				},
+			};
+		},
+		methods: {
+			// 鏄剧ず閫夋嫨鍣ㄥ脊绐�
+			async showSelectorModule(index) {
+				if (this.hasSourceBill) {
+					uni.showToast({ title: '宸叉湁婧愬崟锛屼笉鑳戒慨鏀�', icon: 'none' });
+					return;
+				}
+				
+				this.currentChechItemIDCache = 0;
+				this.enablePopupModule = this.PopupModuleNameList[index];
+				
+				await this.$nextTick();
+				
+				let popupRef = null;
+				if (index === 2) popupRef = this.$refs.GyBadReasonPopup;
+				else if (index === 7) popupRef = this.$refs.GyBadTypePopupVue;
+				else if (index === 8) popupRef = this.$refs.processPopup;
+				
+				if (popupRef) {
+					popupRef.showPopup();
+				}
+			},
+			async InitGyEmp() {
+			    try {
+			        let res = await CommonUtils.doRequest2Async({
+			            url: "/Gy_Employee/list",
+			            data: {
+			                sWhere: ` and 缁勭粐鍚嶇О = '${uni.getStorageSync("Organization")}' and 绂佺敤鏍囪 = ''`,
+			                user: getUserInfo()["Czymc"],
+			                Organization: uni.getStorageSync("Organization"),
+			            },
+			        });
+			
+			        let { data, Message, count } = res.data;
+			
+			        if (count == 1) {
+			            this.GyEmpList = data;
+			            this.GyEmpNameList = Array.from(data).map((e) => e["鑱屽憳鍚嶇О"]);
+			        } else {
+			            CommonUtils.showTips({
+			                title: "娓╅Θ鎻愮ず",
+			                message: `鍒濆鍖栬亴鍛樺け璐�: ${Message}`,
+			            });
+			        }
+			    } catch (err) {
+			        CommonUtils.showTips({
+			            title: "娓╅Θ鎻愮ず",
+			            message: `鍒濆鍖栬亴鍛樺け璐�: ${err}`,
+			        });
+			    }
+			},
+			// 涓嶈壇鍘熷洜閫夋嫨瀹屾垚
+			// 鎵爜
+			scanSourceBill() {
+			    uni.scanCode({
+			        scanType: ['barCode', 'qrCode'],
+			        success: (res) => {
+			            // 灏嗘壂鐮佺粨鏋滆祴鍊肩粰婧愬崟鍙�
+			            this.hform.HMainSourceBillNo = res.result;
+			            this.GetMessageByHSourceBillNo();
+			        },
+			        fail: (err) => {
+			            console.error('鎵爜澶辫触:', err);
+			            uni.showToast({
+			                title: '鎵爜澶辫触',
+			                icon: 'none'
+			            });
+			        }
+			    });
+			},
+			CheckItemComplete(e) {
+				if (e && e.retVal) {
+					let data = Object.values(e.retVal)[0];
+					this.hform.HBadReasonID = String(data.HItemID || 0);
+					this.hform.HBadReasonName = data.涓嶈壇鍘熷洜鍚嶇О || "";
+				}
+				this.$refs.GyBadReasonPopup?.exit();
+				this.enablePopupModule = "";
+			},
+			
+			// 涓嶈壇绫诲瀷閫夋嫨瀹屾垚
+			HQCSchemeComplete(e) {
+				if (e && e.retVal) {
+					let data = Object.values(e.retVal)[0];
+					this.hform.HBadTypeID = String(data.HItemID || 0);
+					this.hform.HBadTypeName = data.涓嶈壇绫诲瀷鍚嶇О || "";
+				}
+				this.$refs.GyBadTypePopupVue?.exit();
+				this.enablePopupModule = "";
+			},
+			
+			// 宸ュ簭閫夋嫨瀹屾垚
+			HProcComplete(e) {
+				if (e && e.retVal) {
+					let data = Object.values(e.retVal)[0];
+					this.hform.HProcID = String(data.HItemID || 0);
+					this.hform.HDisposeProcName = data.宸ュ簭鍚嶇О || "";
+				}
+				this.$refs.processPopup?.exit();
+				this.enablePopupModule = "";
+			},
+			
+			// 鍒濆鍖栭儴闂�
+			async InitDept() {
+				try {
+					let res = await CommonUtils.doRequest2Async({
+						url: '/PublicPageMethod/DeptList',
+						data: { sWhere: 'where 1=1' }
+					});
+					if (res.data.count == 1) {
+						this.DeptList = res.data.data;
+						this.DeptNameList = res.data.data.map(e => e['HName']);
+					}
+				} catch (err) {
+					console.error('鍒濆鍖栭儴闂ㄩ敊璇�:', err);
+				}
+			},
+			
+			// 鍒濆鍖栬亴鍛�
+			async InitHEmp() {
+				try {
+					let res = await CommonUtils.doRequest2Async({
+						url: "/Gy_Employee/list",
+						data: {
+							sWhere: ` and 缁勭粐鍚嶇О = '${uni.getStorageSync("Organization")}' and 绂佺敤鏍囪 = ''`,
+						},
+					});
+					
+					if (res.data.count == 1) {
+						this.GyEmpList = res.data.data;
+						this.GyEmpNameList = res.data.data.map(e => e["鑱屽憳鍚嶇О"]);
+					}
+				} catch (err) {
+					console.error('鍒濆鍖栬亴鍛樺け璐�:', err);
+				}
+			},
+			
+			// 鎵撳紑婧愬崟閫夋嫨鍣�
+			openSourceBillSelector() {
+				if (!this.hform.HMainSourceBillType) {
+					uni.showToast({ title: '璇峰厛閫夋嫨婧愬崟绫诲瀷', icon: 'none' });
+					return;
+				}
+				this.$refs.billList.showPopup();
+			},
+			
+			// 鎺ユ敹婧愬崟
+			handleSourceBill(e) {
+				this.hform.HMainSourceBillNo = e.HBillNo;
+				
+				this.GetMessageByHSourceBillNo();
+				this.$refs.billList?.exit();
+				
+			},
+			
+			// 鑾峰彇婧愬崟鏁版嵁
+			async GetMessageByHSourceBillNo() {
+			     if (!this.hform.HMainSourceBillType) {
+			            uni.showToast({ title: '璇烽�夋嫨婧愬崟绫诲瀷', icon: 'none' });
+			            return;
+			        }
+					if (!this.hform.HMainSourceBillNo ) {
+					       uni.showToast({ title: '璇烽�夋嫨鎴栬�呰緭鍏ユ簮鍗曞彿', icon: 'none' });
+					       return;
+					   }
+
+			    try {
+			        let res;
+			        let user = getUserInfo()["Czymc"] || "";
+			        let Organization = uni.getStorageSync('OrganizationID') || "";
+			        
+			        // 鏍规嵁婧愬崟绫诲瀷璋冪敤涓嶅悓鐨勬帴鍙�
+			        if (this.hform.HMainSourceBillType === "7512") {
+			         
+			            res = await CommonUtils.doRequest2Async({
+			                url: "/Sc_ProcessMangement/Get_QC_NoPassProdRequestBillList",
+			                type: "GET",
+			                data: { 
+			                    "sWhere": ` and 鍗曟嵁鍙� = '${this.hform.HMainSourceBillNo}'`,
+			                    "user": user 
+			                }
+			            });
+			        } else if (this.hform.HMainSourceBillType === "3791") {
+			        
+			            res = await CommonUtils.doRequest2Async({
+			                url: "/Cj_StationOutBill/get_Display_byPage",
+			                type: "GET",
+			                data: { 
+			                    "sWhere": `and 鍗曟嵁鍙� = ''${this.hform.HMainSourceBillNo}''`,  
+			                    "user": user, 
+			                    "Organization": Organization,
+			                    "page": 1, 
+			                    "size": 1, 
+			                    "HBillSubType": "3791" 
+			                }
+			            });
+			        }
+			        
+			        uni.hideLoading();
+			        
+			        // 鑾峰彇绗竴鏉℃暟鎹�
+			        let data = null;
+			        if (res.data) {
+			            if (Array.isArray(res.data) && res.data.length > 0) {
+			                data = res.data[0];
+			            } else if (res.data.data && res.data.data.length > 0) {
+			                data = res.data.data[0];
+			            } else if (res.data.rows && res.data.rows.length > 0) {
+			                data = res.data.rows[0];
+			            } else if (res.data.list && res.data.list.length > 0) {
+			                data = res.data.list[0];
+			            }
+			        }
+			        
+			        if (data) {
+			            // 鏍规嵁婧愬崟绫诲瀷澶勭悊鏁版嵁
+			            if (this.hform.HMainSourceBillType === "7512") {
+			                // 澶勭悊涓嶈壇鍝佽瘎瀹$敵璇峰崟鏁版嵁锛堢涓�缁勬暟鎹級
+			                this.hform.HBillNos = data.鍗曟嵁鍙� || "";
+			                this.hform.HDates = data.鏃ユ湡 ? data.鏃ユ湡.split('T')[0] : "";
+			                this.hform.HHappendDates = data.鍙戠敓鏃堕棿 ? data.鍙戠敓鏃堕棿.replace('T', ' ') : "";
+			                this.hform.HICMOBillNos = data.浠诲姟鍗曞彿 || "";
+			                this.hform.HProcExchBillNos = data.宸ュ簭娴佽浆鍗″彿 || "";
+			                this.hform.HMaterNumbers = data.浜у搧浠g爜 || "";
+			                this.hform.HMaterNames = data.浜у搧鍚嶇О || "";
+			                this.hform.HMaterModels = data.瑙勬牸鍨嬪彿 || "";
+			                this.hform.HUnitNames = data.璁¢噺鍗曚綅鍚嶇О || "";
+			                this.hform.HMaterTypes = data.浜у搧绫诲瀷 === "1" ? "浜ф垚鍝�" : data.浜у搧绫诲瀷 || "";
+			                this.hform.HUnRightQtys = data.涓嶈壇鏁伴噺 || "0";
+			                this.hform.HDeptNames = data.杞﹂棿鍚嶇О || "";
+			                this.hform.HProcNames = data.宸ュ簭 || "";
+			                this.hform.HBadPhenomenaNames = data.涓嶈壇鐜拌薄 || "";
+			                this.hform.HBarCodes = data.涓嶈壇鍝丼N鐮� || "";
+			                this.hform.HSeOrderBillNos = data.閿�鍞鍗� || "";
+			                this.hform.HReasonNotes = data.闂鐜拌薄绠�杩� || "";
+			                this.hform.HLevs = data.绱ф�ョ▼搴� || "鏅��";
+			                this.hform.HIsStops = data.鏄惁鍋滅嚎 || "鍚�";
+			                this.hform.HIsBatchUnRights = data.鏄惁鎵归噺闂 || "鍚�";
+			                
+			                // 婧愬崟ID淇℃伅
+			                this.hform.HMainSourceInterID = data.hmainid || "0";
+			                this.hform.HMainSourceEntryID = data.浠诲姟鍗曞瓙鍐呯爜 || "0";
+			                
+			            } else if (this.hform.HMainSourceBillType === "3791") {
+			                // 澶勭悊宸ュ簭鍑虹珯姹囨姤鍗曟暟鎹紙绗簩缁勬暟鎹級
+			                this.hform.HBillNos = data.鍗曟嵁鍙� || "";
+			                this.hform.HDates = data.鏃ユ湡 ? data.鏃ユ湡.split('T')[0] : "";
+			                this.hform.HHappendDates = data.鍑虹珯鏃堕棿 ? data.鍑虹珯鏃堕棿.replace('T', ' ') : "";
+			                this.hform.HICMOBillNos = data.浠诲姟鍗� || "";
+			                this.hform.HProcExchBillNos = data.宸ュ簭娴佽浆鍗″彿 || "";
+			                this.hform.HMaterNumbers = data.浜у搧浠g爜 || "";
+			                this.hform.HMaterNames = data.浜у搧鍚嶇О || "";
+			                this.hform.HMaterModels = data.瑙勬牸鍨嬪彿 || "";
+			                this.hform.HUnitNames = data.璁¢噺鍗曚綅 || "";
+			                this.hform.HMaterTypes = data.浜у搧绫诲瀷 || "";
+			                
+			                // 涓嶈壇鏁伴噺 - 绗簩缁勬暟鎹腑鍙兘鏄笉鑹暟閲忓瓧娈�
+			                this.hform.HUnRightQtys = data.涓嶈壇鏁伴噺 || data.鎶ュ簾鏁伴噺 || "0";
+			                this.hform.HDeptNames = data.杞﹂棿 || data.閮ㄩ棬 || "";
+			                this.hform.HProcNames = data.褰撳墠宸ュ簭 || "";
+			                
+			                // 涓嶈壇鐜拌薄 - 绗簩缁勬暟鎹彲鑳芥病鏈夎繖涓瓧娈�
+			                this.hform.HBadPhenomenaNames = data.涓嶈壇鐜拌薄 || "";
+			                
+			                // 鍏朵粬瀛楁
+			                this.hform.HBarCodes = data.鎵规鍙� || data.涓嶈壇鍝丼N鐮� || "";
+			                this.hform.HSeOrderBillNos = data.閿�鍞鍗� || "";
+			                this.hform.HReasonNotes = data.闂鐜拌薄绠�杩� || "";
+			                this.hform.HLevs = data.绱ф�ョ▼搴� || "鏅��";
+			                this.hform.HIsStops = data.鏄惁鍋滅嚎 || "鍚�";
+			                this.hform.HIsBatchUnRights = data.鏄惁鎵归噺闂 || "鍚�";
+			                
+			                // 婧愬崟ID淇℃伅
+			                this.hform.HMainSourceInterID = data.hmainid || data.HProcExchInterID || "0";
+			                this.hform.HMainSourceEntryID = data.HProcExchEntryID || "1";
+			            }
+			            
+			            // 璁剧疆婧愬崟绫诲瀷鏄剧ず
+			            let index = this.arrayHMainSourceBillTypeID.findIndex(id => id == this.hform.HMainSourceBillType);
+			            if (index != -1) {
+			                this.HMainSourceBillTypeDisplay = this.arrayHMainSourceBillType[index];
+			            }
+			            
+			            this.hasSourceBill = false;
+			            uni.showToast({ title: '鍔犺浇鎴愬姛', icon: 'success' });
+			            
+			            // 寮哄埗鏇存柊瑙嗗浘
+			            this.$forceUpdate();
+			            
+			        } else {
+			            uni.showToast({ title: '鏈壘鍒版簮鍗�', icon: 'none' });
+			        }
+			    } catch (err) {
+			        uni.hideLoading();
+			        console.error('鑾峰彇澶辫触:', err);
+			        
+			        // 鏄剧ず鏇磋缁嗙殑閿欒淇℃伅
+			        if (err.response && err.response.data) {
+			            console.error('閿欒璇︽儏:', err.response.data);
+			            uni.showToast({ title: err.response.data.Message || '鑾峰彇澶辫触', icon: 'none' });
+			        } else {
+			            uni.showToast({ title: '鑾峰彇澶辫触', icon: 'none' });
+			        }
+			    }
+			},
+			
+			// 澶勭悊閮ㄩ棬閫夋嫨
+			HDisposeDeptChange(val) {
+				let index = this.DeptNameList.findIndex(e => e == val);
+				if (index == -1) {
+					this.hform.HDisposeDeptName = '';
+					this.hform.HDisposeDeptID = '0';
+					return;
+				}
+				this.hform.HDisposeDeptName = this.DeptList[index]['HName'];
+				this.hform.HDisposeDeptID = String(this.DeptList[index]['HItemID']);
+			},
+			
+			// 鍙戣捣浜洪�夋嫨
+			HSendManChange(val) {
+				let index = this.GyEmpList.findIndex(e => e["鑱屽憳鍚嶇О"] == val);
+				if (index == -1) {
+					this.hform.HSendMan = "";
+					return;
+				}
+				this.hform.HSendMan = this.GyEmpList[index]["鑱屽憳鍚嶇О"];
+			},
+			
+			// 鎺ユ敹浜洪�夋嫨
+			HReceiveManChange(val) {
+				let index = this.GyEmpList.findIndex(e => e["鑱屽憳鍚嶇О"] == val);
+				if (index == -1) {
+					this.hform.HReceiveMan = "";
+					return;
+				}
+				this.hform.HReceiveMan = this.GyEmpList[index]["鑱屽憳鍚嶇О"];
+			},
+			
+			
+			// 鎶勯�佷汉閫夋嫨 -
+			HCopyManChange(val) {
+				let index = this.GyEmpList.findIndex(e => e["鑱屽憳鍚嶇О"] == val);
+				if (index == -1) {
+					this.hform.HCopyMan = "";
+					return;
+				}
+				this.hform.HCopyMan = this.GyEmpList[index]["鑱屽憳鍚嶇О"];
+			},
+			
+			// 婧愬崟绫诲瀷閫夋嫨
+			HMainSourceBillTypeChange(e) {
+				let index = e.detail.value;
+				this.HMainSourceBillTypeDisplay = this.arrayHMainSourceBillType[index];
+				this.hform.HMainSourceBillType = this.arrayHMainSourceBillTypeID[index];
+			},
+			
+			// 鑾峰彇鍗曟嵁鍙�
+			async getMaxBillNo() {
+				try {
+					let res = await CommonUtils.doRequest2Sync({
+						url: "/Web/GetMAXNum",
+						data: { HBillType: "7513" },
+					});
+					
+					if (res?.data?.count == 1) {
+						this.hform.HInterID = res.data.data[0].HInterID;
+						this.hform.HBillNo = res.data.data[0].HBillNo;
+					}
+				} catch (err) {
+					console.error('鑾峰彇鍗曟嵁鍙峰紓甯�:', err);
+				}
+			},
+			
+			// 楠岃瘉
+			checkSubmitValidate() {
+				if (!this.hform.HBillNo) {
+					uni.showToast({ title: '鍗曟嵁鍙蜂笉鑳戒负绌�', icon: 'none' });
+					return false;
+				}
+				if (!this.hform.HSendMan) {
+					uni.showToast({ title: '鍙戣捣浜轰笉鑳戒负绌�', icon: 'none' });
+					return false;
+				}
+				if (!this.hform.HReceiveMan) {
+					uni.showToast({ title: '鎺ユ敹浜轰笉鑳戒负绌�', icon: 'none' });
+					return false;
+				}
+				return true;
+			},
+		
+		// 鑾峰彇缂栬緫鏁版嵁
+		// 鑾峰彇缂栬緫鏁版嵁
+		async getEditData(HInterID) {
+		    if (!HInterID || HInterID === "0") return;
+		    
+		    uni.showLoading({ title: '鍔犺浇涓�...' });
+		    
+		    try {
+		        let res = await CommonUtils.doRequest2Async({
+		            url: "/Sc_ProcessMangement/Edit_QC_NoPassProdConclusionBill",
+		            type: "GET",
+		            data: { "HID": HInterID }
+		        });
+		        
+		        // 鏍规嵁浣犳彁渚涚殑杩斿洖鏁版嵁鏍煎紡锛屾暟鎹湪 data 鏁扮粍鐨勭涓�涓厓绱�
+		        if (res.data && res.data.data && res.data.data.length > 0) {
+		            let data = res.data.data[0];  // 鍙栨暟缁勭涓�涓厓绱�
+		            
+		            // 鍏堜繚鐣欏師鏈夌殑鍩虹瀛楁锛堝鏋滈渶瑕佺殑璇濓級
+		            // 鐒跺悗浠庢帴鍙h繑鍥炵殑鏁版嵁涓洿鏂版墍鏈夊瓧娈�
+		            this.hform = {
+		                ...this.hform,  // 淇濈暀鍘熸湁鐨勯粯璁ゅ��
+		            
+		                HInterID: data.hmainid || "0",
+		                HEntryID: data.HEntryID || "0",
+		                HBillNo: data.鍗曟嵁鍙� || "",
+		                HDate: data.鏃ユ湡 ? data.鏃ユ湡.split('T')[0] : dayjs().format("YYYY-MM-DD"),
+		                HBillType: data.HBillType || '7513',
+		                
+		             
+		                HBillNos: data.婧愬崟鍙� || "",  // 杩欐槸婧愬崟鍙�
+		                HDates: data.鏃ユ湡 ? data.鏃ユ湡.split('T')[0] : "",  // 婧愬崟鏃ユ湡
+		                HHappendDates: data.鍙戠敓鏃堕棿 ? data.鍙戠敓鏃堕棿.replace('T', ' ') : "",
+		                
+		                
+		                HICMOBillNos: data.鐢熶骇璁㈠崟|| "",
+		                HICMOInterIDs: data.HICMOInterIDs || "0",
+		                HICMOEntryIDs: data.HICMOEntryIDs || "0",
+		                
+		                
+		                HMaterNumbers: data.浜у搧浠g爜 || "",
+		                HMaterNames: data.浜у搧鍚嶇О || "",
+		                HMaterModels: data.瑙勬牸鍨嬪彿 || "",
+		                HMaterIDs: data.HMaterID || "0",
+		                HUnitNames: data.璁¢噺鍗曚綅鍚嶇О || "",
+		                HUnitIDs: data.HUnitID || "0",
+		                HMaterTypes: data.浜у搧绫诲瀷 === "1" ? "浜у搧绫诲瀷" : data.浜у搧绫诲瀷 || "",
+		                
+		                
+		                HProcExchBillNos: data.宸ュ簭娴佽浆鍗″彿 || "",
+		                HProcExchInterIDs: data.HProcExchInterIDs || "0",
+		                HProcExchEntryIDs: data.HProcExchEntryIDs || "0",
+		                
+		                
+		                HUnRightQtys: data.涓嶈壇鏁伴噺 || "0",
+		                HLevs: data.绱ф�ョ▼搴� || "鏅��",
+		                HIsStops: data.鏄惁鍋滅嚎 || "鍚�",
+		                HIsBatchUnRights: data.鏄惁鎵归噺闂 || "鍚�",
+		                HBarCodes: data.涓嶈壇鍝丼N鐮� || "",
+		                HBadPhenomenaNames: data.涓嶈壇鐜拌薄 || "",
+		                HBadPhenomenaIDs: data.HBadPhenomenaID || "0",
+		                HReasonNotes: data.闂鐜拌薄绠�杩� || "",
+		                
+		               
+		                HDeptNames: data.杞﹂棿鍚嶇О || "",
+		                HDeptIDs: data.HDeptID || "0",
+		                HProcNames: data.宸ュ簭 || "",
+		                HProcIDs: data.HProcID || "0",
+		                
+		                
+		                HSeOrderBillNos: data.閿�鍞鍗� || "",
+		                
+		               
+		                HMainSourceBillType: data.婧愬崟绫诲瀷 || "",
+		                HMainSourceBillNo: data.婧愬崟鍙� || "",
+		                HMainSourceInterID: data.婧愬崟ID || data.hmainid || "0",
+		                HMainSourceEntryID: data.婧愬崟瀛怚D || data.浠诲姟鍗曞瓙鍐呯爜 || "0",
+		                
+		                
+		                HSendMan: data.鍙戦�佷汉 || "",
+		                HReceiveMan: data.鎺ユ敹浜� || "",
+		                HCopyMan: data.鎶勯�� || "",
+		                
+		                
+		                HDisposeDeptName: data.澶勭悊閮ㄩ棬 || "",
+		                HDisposeDeptID: data.HDisposeDeptID || "0",
+		                HDisposeProcName: data.澶勭悊宸ュ簭 || "",
+		                HProcID: data.HProcID || "0",
+		                HDisposeEmpID: data.HDisposeEmpID || "0",
+		                HCheckerResult: data.鍒ゅ畾缁撹 || "",
+		                HDisposeNote: data.澶勭悊鎰忚璇︽儏 || "",
+		                
+		               
+		                HBadTypeName: data.涓嶈壇绫诲瀷 || "",
+		                HBadTypeID: data.HBadTypeID || "0",
+		                HBadReasonName: data.涓嶈壇鍘熷洜 || "",
+		                HBadReasonID: data.HBadReasonID || "0",
+		                HRemark: data.琛ㄥご澶囨敞 || "",
+		                
+		             
+		                Organization: data.Organization || getUserInfo()["Organization"] || "",
+		                HStockOrgID: data.HStockOrgID || uni.getStorageSync('OrganizationID') || "0",
+		                
+		            
+		                HMaker: data.鍒跺崟浜� || "",
+		                HMakeDate: data.鍒跺崟鏃ユ湡 ? data.鍒跺崟鏃ユ湡.replace('T', ' ') : "",
+		                HUpDater: data.淇敼浜� || "",
+		                HUpDateDate: data.淇敼鏃ユ湡 ? data.淇敼鏃ユ湡.replace('T', ' ') : "",
+		                HChecker: data.瀹℃牳浜� || "",
+		                HCheckDate: data.瀹℃牳鏃ユ湡 ? data.瀹℃牳鏃ユ湡.replace('T', ' ') : "",
+		                HCloseMan: data.鍏抽棴浜� || "",
+		                HCloseDate: data.鍏抽棴鏃ユ湡 ? data.鍏抽棴鏃ユ湡.replace('T', ' ') : "",
+		                HDeleteMan: data.浣滃簾浜� || "",
+		                HDeleteDate: data.浣滃簾鏃ユ湡 ? data.浣滃簾鏃ユ湡.replace('T', ' ') : "",
+		            };
+		            
+		          
+		            if (data.婧愬崟绫诲瀷) {
+		                let index = this.arrayHMainSourceBillTypeID.findIndex(id => id == data.婧愬崟绫诲瀷);
+		                if (index != -1) {
+		                    this.HMainSourceBillTypeDisplay = this.arrayHMainSourceBillType[index];
+		                }
+		            }
+		            
+		           
+		            this.hasSourceBill = false;
+		            
+		           
+		            this.$forceUpdate();
+		            
+		            console.log('璧嬪�煎悗鐨刪form:', this.hform);
+		        }
+		    } catch (err) {
+		        console.error('鑾峰彇鏁版嵁澶辫触:', err);
+		        uni.showToast({ title: '鑾峰彇鏁版嵁澶辫触', icon: 'none' });
+		    } finally {
+		        uni.hideLoading();
+		    }
+		},
+			
+		// 淇濆瓨
+		async submit() {
+		    if (!this.checkSubmitValidate()) return;
+		    
+		    let operation = this.operationType == 1 ? "Add" : "Update";
+		    
+		    // 缂栬緫鏃惰缃慨鏀逛汉鍜屼慨鏀规椂闂�
+		    if (this.operationType == 3) {
+		        this.hform.HUpDater = getUserInfo()["Czymc"];
+		        this.hform.HUpDateDate = dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss");
+		    }
+		    
+		    try {
+		        let sMainStr = JSON.stringify(this.hform);
+		        let sMainSub = sMainStr + ';' + operation + ';' + getUserInfo()["Czymc"];
+		        
+		        let res = await CommonUtils.doRequest2Sync({
+		            url: "/Sc_ProcessMangement/SaveQC_NoPassProdConclusionBill",
+		            data: { "msg": sMainSub },
+		            method: "POST",
+		        });
+		        
+		        if (res?.data?.count == 1) {
+		            uni.showModal({
+		                title: '鎻愮ず',
+		                content: '淇濆瓨鎴愬姛锛屾槸鍚︾户缁柊澧烇紵',
+		                success: (r) => {
+		                    if (r.confirm) {
+		                        uni.redirectTo({
+		                            url: "/pages/ZLGL/QC_NoPassProdConclusionBillMain/QC_NoPassProdConclusionBillMain?operationType=1",
+		                        });
+		                    } else {
+		                        uni.navigateBack();
+		                    }
+		                }
+		            });
+		        } else {
+		            uni.showToast({ title: res?.data?.Message || '淇濆瓨澶辫触', icon: 'none' });
+		        }
+		    } catch (err) {
+		        console.error('淇濆瓨澶辫触:', err);
+		        uni.showToast({ title: '淇濆瓨澶辫触', icon: 'none' });
+		    }
+		},
+			
+			// 鏂板
+			addNew() {
+				uni.redirectTo({
+					 url: "/pages/ZLGL/QC_NoPassProdConclusionBillMain/QC_NoPassProdConclusionBillMain?operationType=1",
+				});
+			},
+			
+			// 杩斿洖
+			goBack() {
+				uni.navigateBack();
+			},
+		},
+		
+		async onLoad(e) {
+			this.operationType = parseInt(e.operationType) || 1;
+			this.hform.HInterID = e.HInterID  || "0";
+			
+			const organization = uni.getStorageSync('Organization');
+			this.hform.Organization = organization || '';
+			
+		
+			await this.InitGyEmp();  
+			await this.InitDept();
+			
+		   if (this.operationType == 1) {
+				await this.getMaxBillNo();
+				this.hform.HSendMan = getUserInfo()["Czymc"] || "";
+			} else if (this.operationType == 3) {
+				await this.getEditData(e.HInterID);
+			}
+		}
+	};
+</script>
+
+<style lang="scss" scoped>
+	/* 鏍峰紡淇濇寔涓嶅彉 */
+	input { width: inherit; font-size: 26rpx; }
+	.uni-input { padding: 0; }
+	
+	.bill-main-tabs {
+		box-sizing: border-box;
+		width: 730rpx;
+		display: flex;
+		flex-direction: row;
+		flex-wrap: nowrap;
+		gap: 20rpx;
+		border-bottom: 1px solid #ddd;
+		padding: 20rpx 10rpx;
+
+		view {
+			width: auto;
+			font-size: 26rpx;
+			color: #555;
+			text-align: center;
+			padding: 16rpx 0;
+		}
+
+		.selected {
+			color: #3a78ff;
+			font-weight: bold;
+			border-bottom: 3px solid #3a78ff;
+		}
+	}
+
+	.bill-main-content {
+		box-sizing: border-box;
+		padding: 0 30rpx;
+		display: flex;
+		flex-direction: column;
+
+		.form-item {
+			width: 100%;
+			display: flex;
+			align-items: center;
+			font-size: 26rpx;
+			padding: 6rpx 0;
+
+			.left { width: 208rpx; }
+			.right {
+				padding: 8rpx 20rpx;
+				font-size: 26rpx;
+				flex: 1;
+				border-radius: 22rpx;
+				border: 1px solid #acacac;
+
+				.uni-combox { padding: 0; height: auto; }
+				.uni-combox::v-deep input { height: inherit; font-size: 26rpx; }
+				
+				input {
+				    width: 100%;
+				    border: none;
+				    outline: none;
+				    background: transparent;
+				}
+			}
+			.disabled { border: 1px solid #e4e4e4; background-color: #f5f5f5; }
+		}
+	}
+
+	.bottom-btn {
+		box-sizing: border-box;
+		width: 100%;
+		height: 120rpx;
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		background-color: #fff;
+		box-shadow: 0 2rpx 10rpx 2rpx rgba(0,0,0,0.4);
+		padding: 30rpx 40rpx;
+		display: flex;
+		flex-direction: row;
+		gap: 10rpx;
+
+		button {
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+		}
+		.btn-a { background-color: #3a78ff; color: #fff; }
+		.btn-c { background-color: #acacac; color: #fff; }
+	}
+
+	.select-border {
+	    border: 1px solid #acacac !important;
+	    border-radius: 22rpx !important;
+	}
+	
+	.no-border-select ::v-deep .uni-select {
+	    border: none !important;
+	}
+
+	.icon-wrapper, .icon-wrapper-big {
+		background-color: #3a78ff;
+		border-radius: 100%;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		flex-shrink: 0;
+		margin-left: 20rpx;
+		.uni-icons { color: #fff !important; }
+	}
+	
+	.icon-wrapper { width: 40rpx; height: 40rpx; }
+	.icon-wrapper-big { width: 50rpx; height: 50rpx; }
+
+	.enable-icon-button { background-color: #3a78ff; }
+	.disable-icon-button { background-color: lightgray; pointer-events: none; }
+	
+	
+</style>
\ No newline at end of file
diff --git a/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMainList.vue b/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMainList.vue
new file mode 100644
index 0000000..34c836e
--- /dev/null
+++ b/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMainList.vue
@@ -0,0 +1,563 @@
+<template>
+    <view class="page" id="pageContent">
+        <view class="search-condition-zone">
+            <view class="form-item">
+                <view class="left">
+                    鏃ユ湡:
+                </view>
+                <view class="daterange" style="flex: 1;">
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HBeginDate">
+                            <view>{{hform.HBeginDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                    <view>鈥�</view>
+                    <view class="right general">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HEndDate">
+                            <view>{{hform.HEndDate}}</view>
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+            </view>
+        </view>
+        <view class="button-zone">
+            <button type="default" class="btn-a" size="mini" @tap="cmdSearch">鏌ヨ</button>
+            <button type="default" class="btn-c" size="mini" @tap="addNew">鏂板</button>
+            <button type="default" class="btn-d" size="mini" @tap="exit">閫�鍑�</button>
+        </view>
+        <view class="info-list-zone" id="scroll-content" :style="{height: scrollContentHeight + 'px'}">
+            <view class="card-item" v-for="(item, index) in listDataShow" :key="index">
+                <uni-card :title="item['鍗曟嵁鍙�'] " :extra="'鏃ユ湡:' + formatDate(item['鏃ユ湡'])"
+                    @tap="showDetail = showDetail==index?-1:index">
+                    <view class="card-detail">
+                        <view class="detail" v-if="item['缁勭粐鍚嶇О']">
+                            <text>缁勭粐鍚嶇О锛�</text>{{item['缁勭粐鍚嶇О']}}
+                        </view>
+                    </view>
+                    <view class="card-detail" v-if="showDetail == index">
+                        <view class="detail" v-if="item['澶勭悊缁撹']">
+                            <text>澶勭悊缁撹锛�</text>{{item['澶勭悊缁撹']}}
+                        </view>
+                        <view class="detail" v-if="item['琛ㄥご澶囨敞']">
+                            <text>琛ㄥご澶囨敞锛�</text>{{item['琛ㄥご澶囨敞']}}
+                        </view>
+                       <view class="detail" v-if="item['婧愬崟鍙�']">
+                           <text>婧愬崟鍙凤細</text>{{item['婧愬崟鍙�']}}
+                       </view>
+					   <view class="detail" v-if="item['鍙戦�佷汉']">
+					       <text>鍙戦�佷汉锛�</text>{{item['鍙戦�佷汉']}}
+					   </view>
+					   <view class="detail" v-if="item['鎺ュ彈浜�']">
+					       <text>鎺ユ敹鍏ワ細</text>{{item['鎺ュ彈浜�']}}
+					   </view>
+					   <view class="detail" v-if="item['鎶勯��']">
+					       <text>鎶勯�侊細</text>{{item['鎶勯��']}}
+					   </view>
+					  
+                    </view>
+                    <view class="more" v-if="showDetail == index && operations != index">
+                        <view class="part" style="border-right: 1px solid #eee;">
+                            <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+                        </view>
+                        <view class="part" @tap.stop="operations = operations==index?-1:index">
+                            <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+                                size="14"></uni-icons>鎿嶄綔
+                        </view>
+                    </view>
+                    <view class="more" v-if="showDetail != index && operations != index">
+                        <view class="part" style="border-right: 1px solid #eee;">
+                            <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏇村淇℃伅
+                        </view>
+                        <view class="part" @tap.stop="operations = operations==index?-1:index">
+                            <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+                                size="14"></uni-icons>鎿嶄綔
+                        </view>
+                    </view>
+                    <view class="op" v-if="operations == index">
+                        <button class="op3" size="mini" plain @tap.stop="edit(item)">缂栬緫</button>
+                        <button class="op3" size="mini" plain @tap.stop="audit(item, 0)" v-if="!item['瀹℃牳浜�']">瀹℃牳</button>
+                        <button class="op3" size="mini" plain @tap.stop="audit(item, 1)" v-if="item['瀹℃牳浜�']">鍙嶅鏍�</button>
+                        <button class="op4" size="mini" plain @tap.stop="del(item)">鍒犻櫎</button>
+                        <button class="op5" size="mini" plain @tap.stop="operations = -1">鍙栨秷鎿嶄綔</button>
+                    </view>
+                </uni-card>
+            </view>
+            <view class="over" v-if="listDataShow.length == 0">鏆傛棤鏁版嵁</view>
+        </view>
+
+        <view class="pagination-zone" id="pagination-zone">
+            <uni-pagination show-icon :page-size="paginationMeta.pageSize" :total="paginationMeta.total"
+                :current="paginationMeta.current" @change="onPaginationChangeHandler"></uni-pagination>
+        </view>
+    </view>
+</template>
+
+<script>
+    import {
+        CommonUtils
+    } from '@/utils/common'
+    import {
+        getUserInfo
+    } from '@/utils/auth'
+    import dayjs from 'dayjs'
+    
+    export default {
+        data() {
+            return {
+                navHeight: 0,
+                scrollTop: 0,
+                showDetail: -1,
+                operations: -1,
+                
+                hform: {
+                    HBeginDate: dayjs().subtract(30, 'd').format('YYYY-MM-DD'),
+                    HEndDate: dayjs().format('YYYY-MM-DD')
+                },
+
+                paginationMeta: {
+                    current: 1,
+                    total: 0,
+                    pageSize: 30,
+                },
+
+                pageMeta: {
+                    scrollContentTop: 0,
+                    bottomBtnTop: 0,
+                },
+
+                listData: [],
+                listDataShow: [],
+                
+                // 涓嶉渶瑕佹樉绀虹殑瀛楁
+                titleData: ["sorderid", "HInterID", "HEntryID", "HDeptID", "HCenterWorkID", "HProcID", 
+                          "HEnvironmentItemID", "HEmpID", "HEnvironmentTestSchemeID", "鍗曟嵁绫诲瀷"]
+            }
+        },
+        computed: {
+            scrollContentHeight: {
+                get() {
+                    return this.pageMeta.bottomBtnTop - this.pageMeta.scrollContentTop
+                }
+            }
+        },
+        methods: {
+            // 鏍煎紡鍖栨棩鏈�
+            formatDate(dateStr) {
+                if (!dateStr) return '';
+                return dateStr.split('T')[0];
+            },
+            
+            exit() {
+                uni.navigateBack()
+            },
+            
+            async cmdSearch() {
+                let sWhere = ''
+                if (this.hform.HBeginDate && this.hform.HEndDate) {
+                    sWhere += " and 鏃ユ湡 between '" + this.hform.HBeginDate + "' and '" + this.hform.HEndDate + "' ";
+                }
+                
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: '/Sc_ProcessMangement/Get_QC_NoPassProdConclusionBillList',
+                        data: {
+                            "sWhere": sWhere,
+                            "user": getUserInfo()["Czymc"],
+                        },
+                    })
+
+                    if (!res) {
+                        return
+                    }
+                    
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    
+                    if (count > 0) {
+                        this.listData = data
+                        this.paginationMeta.total = data.length
+                        this.onPaginationChangeHandler({
+                            current: 1
+                        })
+                    } else {
+                        uni.showToast({
+                            icon: 'none',
+                            title: Message || '鏆傛棤鏁版嵁'
+                        })
+                    }
+                } catch (err) {
+                    console.warn(err);
+                    uni.showToast({
+                        title: '鎺ュ彛璇锋眰澶辫触:' + err.message,
+                        icon: 'none'
+                    })
+                }
+            },
+            
+            // 閲嶇疆鏌ヨ鏉′欢
+           addNew() {
+           	
+               uni.showLoading({
+                   title: '鍔犺浇涓�...',
+                   mask: true
+               });
+               
+               // 寤惰繜涓�鐐瑰啀璺宠浆锛岃鐢ㄦ埛鑳界湅鍒板姞杞芥彁绀�
+               setTimeout(() => {
+                   uni.redirectTo({
+                       url: "/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMain?operationType=1",
+                       complete: () => {
+                           uni.hideLoading();
+                       }
+                   });
+               }, 300);
+           },
+            
+            async onPaginationChangeHandler({current}) {
+                this.listDataShow = this.listData.slice(
+                    (current - 1) * this.paginationMeta.pageSize,
+                    current * this.paginationMeta.pageSize
+                )
+                this.paginationMeta.current = current;
+            },
+            
+            async audit(item, mode) {
+                console.log('瀹℃牳鍗曟嵁: ', item);
+                
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        method: 'GET',
+                        url: '/Sc_ProcessMangement/AuditQC_NoPassProdConclusionBill',
+                        data: {
+                            HInterID: item["hmainid"],
+                            IsAudit: mode,
+                            CurUserName: getUserInfo()["Czymc"]
+                        }
+                    })
+                    
+                    if(!res) {
+                        return
+                    }
+                    
+                    let {count, data, Message} = res.data
+                    
+                    if(count == 1) {
+                        CommonUtils.showTips({
+                            message: `${item["瀹℃牳浜�"]?'鍙嶅鏍�':'瀹℃牳'}鎴愬姛`
+                        })
+                        this.$forceUpdate()
+                        setTimeout(() => {
+                            this.cmdSearch()
+                        }, 2000)
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鍗曟嵁${item["瀹℃牳浜�"]?'鍙嶅鏍�':'瀹℃牳'}澶辫触: ${Message}`
+                        })
+                    }
+                } catch(err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鍗曟嵁${item["瀹℃牳浜�"]?'鍙嶅鏍�':'瀹℃牳'}閿欒: ${err.message}`
+                    })
+                }
+            },
+            
+            async del(item) {
+                console.log("delItem: ", item);
+                
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+                    success: async (res) => {
+                        if (res.confirm) {
+                            try {
+                                let res = await CommonUtils.doRequest2Sync({
+                                    url: '/Sc_ProcessMangement/DeleteQC_NoPassProdConclusionBill',
+                                    data: {
+                                        "HInterID": item.hmainid,
+                                        "user": getUserInfo()["Czymc"]
+                                    }
+                                })
+
+                                if (!res) {
+                                    return
+                                }
+
+                                let {
+                                    count,
+                                    code,
+                                    Message
+                                } = res.data
+                                
+                                if (count == 1) {
+                                    uni.showToast({
+                                        title: '鍒犻櫎鎴愬姛',
+                                        icon: 'success'
+                                    })
+                                    this.cmdSearch()
+                                } else {
+                                    uni.showModal({
+                                        title: '閿欒鎻愮ず',
+                                        content: `鍒犻櫎閿欒: ${Message}`,
+                                        showCancel: false
+                                    })
+                                }
+                            } catch (err) {
+                                uni.showModal({
+                                    title: '閿欒鎻愮ず',
+                                    content: `鎺ュ彛璇锋眰澶辫触: ${err.message}`,
+                                    showCancel: false
+                                })
+                            }
+                        }
+                    },
+                })
+            },
+            
+            edit(item) {
+                console.log("editItem:", item)
+                uni.navigateTo({
+                 url: `/pages/ZLGL/QCNoPassProdConclusionBillMain/QCNoPassProdConclusionBillMain?operationType=3&HInterID=${item.hmainid}`,
+                })
+            }
+        },
+        onShow() {
+            this.$nextTick(() => {
+                this.cmdSearch()
+            })
+        },
+        onReady() {
+            // 璁$畻婊氬姩鍖哄煙楂樺害
+            // #ifndef MP-WEIXIN
+            let query = uni.createSelectorQuery().in(this)
+            query.select("#scroll-content").boundingClientRect((data) => {
+                this.pageMeta.scrollContentTop = data.top
+            }).exec()
+            query.select("#pagination-zone").boundingClientRect((data) => {
+                this.pageMeta.bottomBtnTop = data.top
+            }).exec()
+            // #endif
+            // #ifdef MP-WEIXIN
+            // 寰俊涓嶆敮鎸� uni.createSelectorQuery().in(this)
+            // #endif
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .page {
+        box-sizing: border-box;
+        display: flex;
+        flex-direction: column;
+        gap: 20rpx;
+        padding: 20rpx 0;
+        position: relative;
+
+        .button-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding-top: 20rpx;
+            display: flex;
+            flex-direction: row;
+            justify-content: space-around;
+            flex-wrap: wrap;
+
+            button {
+                border-radius: 50rpx;
+                width: 180rpx;
+                height: 66rpx;
+                line-height: 66rpx;
+                font-size: 28rpx;
+                margin: 0 10rpx;
+            }
+
+            .btn-a {
+                background-color: #3a78ff;
+                color: #fff;
+            }
+            
+            .btn-c {
+                background-color: #909399;
+                color: #fff;
+            }
+            
+            .btn-d {
+                background-color: #ff5722;
+                color: #fff;
+            }
+        }
+
+        .search-condition-zone {
+            height: auto;
+            box-sizing: border-box;
+            padding: 0 60rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+
+            .form-item {
+                display: flex;
+                flex-direction: row;
+                gap: 20rpx;
+                align-items: center;
+                font-size: 28rpx;
+
+                .left {
+                    width: 4rem;
+                }
+
+                .right {
+                    flex: 1;
+                    padding: 8rpx 16rpx;
+
+                    .search {
+                        width: 28rpx;
+                        height: 28rpx;
+                    }
+
+                    input {
+                        font-size: 28rpx;
+                    }
+
+                    .uni-combox {
+                        padding: 0;
+                        margin: 0;
+
+                        ::v-deep .uni-combox__input {
+                            font-size: 28rpx;
+                            height: auto;
+                        }
+                    }
+                }
+
+                .general {
+                    border-radius: 22rpx;
+                    border: 1px solid #acacac;
+                }
+
+                .disabled {
+                    border-radius: 22rpx;
+                    border: 1px solid #e4e4e4;
+                    background-color: #e4e4e4;
+                }
+            }
+        }
+
+        .info-list-zone {
+            overflow-y: auto;
+
+            .card-item {
+                .card-detail {
+                    width: 100%;
+                    display: flex;
+                    flex-wrap: wrap;
+                    justify-content: space-between;
+                    line-height: 120%;
+
+                    .detail {
+                        font-size: 26rpx;
+                        margin-bottom: 12rpx;
+                        color: #555;
+                        margin-right: 20rpx;
+                        flex: 1;
+                        min-width: 45%;
+
+                        text {
+                            color: #999;
+                            font-size: 26rpx;
+                        }
+                    }
+                }
+            }
+        }
+
+        .daterange {
+            display: flex;
+            flex-direction: row;
+            gap: 10rpx;
+            justify-content: center;
+            align-items: center;
+        }
+
+        .more {
+            color: #888;
+            font-size: 24rpx;
+            display: flex;
+            border-top: 1px solid #eee;
+            padding-top: 20rpx;
+
+            .part {
+                width: 50%;
+                text-align: center;
+            }
+        }
+
+        .op {
+            display: flex;
+            justify-content: space-between;
+            gap: 20rpx;
+            margin-top: 20rpx;
+            flex-wrap: wrap;
+            align-content: flex-start;
+            
+            button {
+                margin: 0;
+                flex-shrink: 0;
+                padding: 0;
+                width: 150rpx;
+                flex-basis: 150rpx;
+                font-size: 25rpx;
+            }
+
+            .op1 {
+                border: 1px solid #41a863;
+                color: #41a863;
+            }
+
+            .op2 {
+                border: 1px solid #d98d00;
+                color: #d98d00;
+            }
+
+            .op3 {
+                border: 1px solid #3a78ff;
+                color: #3a78ff;
+            }
+
+            .op4 {
+                border: 1px solid #da0000;
+                color: #da0000;
+            }
+
+            .op5 {
+                border: 1px solid #888;
+                color: #888;
+            }
+        }
+
+        .pagination-zone {
+            position: fixed;
+            bottom: 0;
+            box-sizing: border-box;
+            background-color: #fff;
+            box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4);
+            padding: 20rpx 40rpx 20rpx 40rpx;
+            display: flex;
+            flex-direction: column;
+            gap: 20rpx;
+            justify-content: space-between;
+            width: 100%;
+        }
+        
+        .over {
+            text-align: center;
+            color: #999;
+            font-size: 28rpx;
+            padding: 40rpx 0;
+        }
+    }
+</style>
\ No newline at end of file
diff --git a/pages/baogong/DayPlanBillList.vue b/pages/baogong/DayPlanBillList.vue
index f0ccc8e..f23beb2 100644
--- a/pages/baogong/DayPlanBillList.vue
+++ b/pages/baogong/DayPlanBillList.vue
@@ -1,5 +1,39 @@
 <template>
     <view class="content">
+        <view class="list">
+            <uni-card :title="'褰撴湡璁㈠崟锛�'+currentOrder[0].HSourceBillNo" 
+            style="margin: 10px;">
+                <view class="card-detail">
+                    <view class="detail" v-if="currentOrder[0].HSourceName" style="width: 100%;">
+                        <text>褰撳墠璁惧锛�</text>{{currentOrder[0].HSourceName}}
+                    </view>
+                    <view class="detail" v-if="currentOrder[0].棣栨娆℃暟?currentOrder[0].棣栨娆℃暟:0" style="width: 100%;">
+                        <text>棣栨娆℃暟锛�</text>{{currentOrder[0].棣栨娆℃暟}}
+                    </view>
+                    <view class="detail">
+                        <text>宸℃娆℃暟锛�</text>{{currentOrder[0].宸℃娆℃暟?currentOrder[0].宸℃娆℃暟:0}}
+                    </view>
+                    <view class="detail">
+                        <text>杩囩▼妫�娆℃暟锛�</text>{{currentOrder[0].杩囩▼妫�娆℃暟?currentOrder[0].杩囩▼妫�娆℃暟:0}}
+                    </view>
+                    <view class="detail" v-if="currentOrder[0].褰撴棩鐐规瀹屾垚鎯呭喌">
+                        <text>鐐规瀹屾垚鎯呭喌锛�</text>{{currentOrder[0].褰撴棩鐐规瀹屾垚鎯呭喌}}
+                    </view>
+                    <view class="detail" v-if="currentOrder[0].瀹夌伅鏈獙鏀舵暟閲�">
+                        <text>寮傚父鍙嶉鏈獙鏀讹細</text>{{currentOrder[0].瀹夌伅鏈獙鏀舵暟閲弣}
+                        <view style="width: 6rpx; display: inline-block;"></view>
+                        <template v-if="currentOrder[0].瀹夌伅鏈獙鏀舵暟閲� == 0">
+                            <uni-icons type="smallcircle-filled" size="12"
+                            	color="#13ad4c"></uni-icons>
+                        </template>
+                        <template v-else-if="currentOrder[0].瀹夌伅鏈獙鏀舵暟閲� != 0">
+                            <uni-icons type="smallcircle-filled" size="12"
+                            	color="#e74c3c"></uni-icons>
+                        </template>
+                    </view>
+                </view>
+            </uni-card>
+        </view>
         <view class="list" v-for="(item,index) in listData" :key="index">
             <uni-card :title="'宸ュ崟鍙凤細'+item.HICMOBillNo" :extra="'鏃ユ湡锛�'+item.璁″垝鏃ユ湡" style="margin: 10px;" @tap="edit(item)">
                 <view class="card-detail">
@@ -58,6 +92,7 @@
                 chooseIt: '',
                 popList: ['浜哄憳鍘熷洜', '璁惧鍘熷洜', '鏉愭枡鍘熷洜', '宸ヨ壓鍘熷洜', '妯″叿鍘熷洜', '娴嬭瘯鍘熷洜', '鐜鍘熷洜'],
                 badReasonBackTypeList: [],
+                currentOrder: [],
                 // 瀹氫箟鎿嶄綔鏄犲皠閰嶇疆
                 actionConfig: {
                     '寮�宸�': {
@@ -177,6 +212,7 @@
                         if (res.data.count == 1) {
                             console.log(res.data.data.h_p_JIT_GetWorkBillListInfoBySource)
                             this.listData = res.data.data.h_p_JIT_GetWorkBillListInfoBySource
+                            this.currentOrder = res.data.data.h_p_JIT_GetWorkBillListInfoBySource1
                             for (var i = 0; i < this.listData.length; i++) {
                                 this.listData[i].percent = (this.listData[i].HDateFinishQty / this.listData[
                                     i].HDatePlanQty).toFixed(4)
diff --git a/pages/caigouruku/POStockInBill.vue b/pages/caigouruku/POStockInBill.vue
index aa6e88c..17a731c 100644
--- a/pages/caigouruku/POStockInBill.vue
+++ b/pages/caigouruku/POStockInBill.vue
@@ -83,8 +83,12 @@
 
                     </view>
                     <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
                         <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
                     </view>
+
 
                     <view class="righton" v-show="!showHSourceBillNo">
                         <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" placeholder="璇疯緭鍏ユ簮鍗曞崟鍙�" />
@@ -298,6 +302,7 @@
     } from "@/utils/userRelationManager.js"
     import BillListPopupVue from '../../components/BillListPopup/BillListPopup.vue';
     import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+import { MpaasScan } from '../../utils/mpaasScan';
     export default {
         data() {
             return {
@@ -438,6 +443,11 @@
             uni.$off('BillSelectComplete')
         },
         methods: {
+            toScanBillCode() {
+                MpaasScan.scanCode((res) => {
+                    this.getHBarCodeData(res)
+                })
+            },
             async HWHNameScan(e) {
                 return
                 // 鎵弿浠撳簱鐮�
diff --git a/pages/caigoutuiliao/POStockInBackBill.vue b/pages/caigoutuiliao/POStockInBackBill.vue
index 959ec4c..93f301a 100644
--- a/pages/caigoutuiliao/POStockInBackBill.vue
+++ b/pages/caigoutuiliao/POStockInBackBill.vue
@@ -74,6 +74,9 @@
 
                     </view>
                     <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
                         <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
                     </view>
                     <view class="righton" v-show="!showHSourceBillNo">
@@ -271,6 +274,7 @@
     import BillListPopupVue from '../../components/BillListPopup/BillListPopup.vue';
     import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
     import BillSelectPopupXiaoWeiVue from '../../components/BillSelectPopupXiaoWei/BillSelectPopupXiaoWei.vue';
+import { MpaasScan } from '../../utils/mpaasScan';
     export default {
         components: {
             BillListPopupVue,
@@ -419,6 +423,11 @@
             uni.$off('BillSelectComplete')
         },
         methods: {
+            toScanBillCode() {
+              MpaasScan.scanCode((res) => {
+                  this.getHBarCodeData(res)
+              })  
+            },
             async HWHNameScan(e) {
                 // 鎵弿浠撳簱鐮�
                 console.log('浠撳簱鐮�: ', e);
diff --git a/pages/index/login.vue b/pages/index/login.vue
index 5f2a9a0..a29845e 100644
--- a/pages/index/login.vue
+++ b/pages/index/login.vue
@@ -165,13 +165,13 @@
         methods: {
             async ApplyLanguagePack(lang, forceUpdate = false) {
                 // 璇诲彇璇█鍖呭苟鍔犺浇
-                let {
-                    data,
-                    getRemoteFile
-                } = await getLanguagePackJson(lang)
-                if (getRemoteFile) {
-                    this.$i18n.setLocaleMessage(lang, data)
-                }
+                // let {
+                //     data,
+                //     getRemoteFile
+                // } = await getLanguagePackJson(lang)
+                // if (getRemoteFile) {
+                //     this.$i18n.setLocaleMessage(lang, data)
+                // }
                 let languagePack = await getLanguagePackJson(lang)
                 this.$i18n.setLocaleMessage(lang, languagePack)
                 this.$i18n.locale = lang
diff --git a/pages/index/tab1.vue b/pages/index/tab1.vue
index 5eaf4ed..3d933b9 100644
--- a/pages/index/tab1.vue
+++ b/pages/index/tab1.vue
@@ -9,8 +9,7 @@
             <view v-if="!canEdit" :hidden="item.hidden||!item.id" class="box" v-for="(item,index) in itemData"
                 :key="index" @tap="toUrl(item)">
                 <template v-if="item.corner">
-                    <uni-badge :text="item.cornerCount" type="error" :max-num="99" size="normal"
-                        absolute="rightTop"
+                    <uni-badge :text="item.cornerCount" type="error" :max-num="99" size="normal" absolute="rightTop"
                         :offset="[7, 7]">
                         <image :src="item.img" mode=""></image>
                     </uni-badge>
@@ -195,26 +194,46 @@
             this.getHiddenItem()
         },
         async onShow() {
-            if(this.initFinished) {
+            if (this.initFinished) {
                 let MessageIdentifier = await this.getMessageIdentifierCount(this.menuListName)
-                if(MessageIdentifier.code == 0) {
+                if (MessageIdentifier.code == 0) {
                     CommonUtils.showTips({
                         title: "娓╅Θ鎻愮ず",
                         message: MessageIdentifier.msg
                     })
-                    
+
                     return
                 }
-                
+
                 this.itemData.forEach((e, index) => {
-                    if(MessageIdentifier.data[e.text] != undefined) {
+                    if (MessageIdentifier.data[e.text] != undefined) {
                         this.itemData[index]["corner"] = true
                         this.itemData[index]["cornerCount"] = MessageIdentifier.data[e.text]
                     }
                 })
-                
+
                 this.$forceUpdate()
             }
+        },
+        async onReady() {
+            let MessageIdentifier = await this.getMessageIdentifierCount(this.menuListName)
+            if (MessageIdentifier.code == 0) {
+                CommonUtils.showTips({
+                    title: "娓╅Θ鎻愮ず",
+                    message: MessageIdentifier.msg
+                })
+
+                return
+            }
+
+            this.itemData.forEach((e, index) => {
+                if (MessageIdentifier.data[e.text] != undefined) {
+                    this.itemData[index]["corner"] = true
+                    this.itemData[index]["cornerCount"] = MessageIdentifier.data[e.text]
+                }
+            })
+
+            this.$forceUpdate()
         },
         methods: {
             async getWorkLinkList() {
@@ -269,7 +288,7 @@
                             acc[item['moduleName']] = item.count
                             return acc
                         }, {})
-                        
+
                         return {
                             code: 1,
                             msg: Message,
@@ -283,14 +302,14 @@
                         }
                     }
                 } catch (err) {
-            
+
                 }
             },
             async getHiddenItem() {
                 let data = await getMenuList({
                     menuName: this.menuListName
                 })
-            
+
                 Array.from(data).forEach((e, index) => {
                     if (index < this.itemData.length) {
                         this.itemData[e["HIndex"]]["hidden"] = !CommonUtils.stringToBoolean(e[
@@ -298,22 +317,23 @@
                         this.itemData[e["HIndex"]].id = e["HEntryID"]; //id涓�0寮哄埗闅愯棌
                     }
                 })
-            
+
                 let MessageIdentifier = await this.getMessageIdentifierCount(this.menuListName)
                 if (MessageIdentifier.code == 0) {
                     CommonUtils.showTips({
                         title: "娓╅Θ鎻愮ず",
                         message: MessageIdentifier.msg
                     })
-            
+
                     return
                 }
-            
+
                 Array.from(data).forEach((e, index) => {
                     if (index < this.itemData.length) {
                         if (MessageIdentifier.data[this.itemData[e["HIndex"]].text]) {
                             this.$set(this.itemData[e["HIndex"]], "corner", true)
-                            this.$set(this.itemData[e["HIndex"]], "cornerCount", MessageIdentifier.data[this.itemData[e["HIndex"]].text])
+                            this.$set(this.itemData[e["HIndex"]], "cornerCount", MessageIdentifier.data[this
+                                .itemData[e["HIndex"]].text])
                         }
                     }
                 })
diff --git a/pages/index/tab3.vue b/pages/index/tab3.vue
index 02c704f..0f1f1d2 100644
--- a/pages/index/tab3.vue
+++ b/pages/index/tab3.vue
@@ -323,6 +323,26 @@
                 this.$forceUpdate()
             }
         },
+        async onReady() {
+            let MessageIdentifier = await this.getMessageIdentifierCount(this.menuListName)
+            if (MessageIdentifier.code == 0) {
+                CommonUtils.showTips({
+                    title: "娓╅Θ鎻愮ず",
+                    message: MessageIdentifier.msg
+                })
+        
+                return
+            }
+        
+            this.itemData.forEach((e, index) => {
+                if (MessageIdentifier.data[e.text] != undefined) {
+                    this.itemData[index]["corner"] = true
+                    this.itemData[index]["cornerCount"] = MessageIdentifier.data[e.text]
+                }
+            })
+        
+            this.$forceUpdate()
+        },
         methods: {
             judgeHidden() {
                 return process.env.NODE_ENV === 'development'
diff --git a/pages/qitachuku_v2/OtherOutBill.vue b/pages/qitachuku_v2/OtherOutBill.vue
index e8b17ba..b2c20ed 100644
--- a/pages/qitachuku_v2/OtherOutBill.vue
+++ b/pages/qitachuku_v2/OtherOutBill.vue
@@ -2,7 +2,9 @@
     <view>
         <view class="form">
             <view class="form-item">
-                <view class="title">{{ $t("Kf_OtherOutBill_PDA.BarCode") == "Kf_OtherOutBill_PDA.BarCode" ? "鏉$爜" : $t("Kf_OtherOutBill_PDA.BarCode") }}锛�</view>
+                <view class="title">
+                    {{ $t("Kf_OtherOutBill_PDA.BarCode") == "Kf_OtherOutBill_PDA.BarCode" ? "鏉$爜" : $t("Kf_OtherOutBill_PDA.BarCode") }}锛�
+                </view>
                 <view class="right" style="width: 380rpx;">
                     <input :focus="BarCodeFocus" v-model="hform.HBarCode" :placeholder="placeholder_BarCode"
                         @confirm="getCode(hform.HBarCode)" />
@@ -12,40 +14,59 @@
                 </view>
             </view>
             <view class="form-item">
-                <view class="title">{{ $t("Kf_OtherOutBill_PDA.Qty") == "Kf_OtherOutBill_PDA.Qty" ? "鏁伴噺" : $t("Kf_OtherOutBill_PDA.Qty") }}锛�</view>
+                <view class="title">
+                    {{ $t("Kf_OtherOutBill_PDA.Qty") == "Kf_OtherOutBill_PDA.Qty" ? "鏁伴噺" : $t("Kf_OtherOutBill_PDA.Qty") }}锛�
+                </view>
                 <view class="right">
                     <input v-model="hform.HQty" :placeholder="placeholder_Qty" />
                 </view>
             </view>
             <view class="form-item">
-                <view class="title">{{ $t("Kf_OtherOutBill_PDA.Warehouse") == "Kf_OtherOutBill_PDA.Warehouse" ? "浠撳簱" : $t("Kf_OtherOutBill_PDA.Warehouse") }}锛�</view>
+                <view class="title">
+                    {{ $t("Kf_OtherOutBill_PDA.Warehouse") == "Kf_OtherOutBill_PDA.Warehouse" ? "浠撳簱" : $t("Kf_OtherOutBill_PDA.Warehouse") }}锛�
+                </view>
                 <view class="right">
                     <uni-combox :candidates="arrayHWHName" :placeholder="placeholder_Warehouse" v-model="hform.HWHName"
                         @input="HWHNameChange"></uni-combox>
                 </view>
             </view>
             <view class="form-item">
-                <view class="title">{{ $t("Kf_OtherOutBill_PDA.StockPlace") == "Kf_OtherOutBill_PDA.StockPlace" ? "浠撲綅" : $t("Kf_OtherOutBill_PDA.StockPlace") }}锛�</view>
+                <view class="title">
+                    {{ $t("Kf_OtherOutBill_PDA.StockPlace") == "Kf_OtherOutBill_PDA.StockPlace" ? "浠撲綅" : $t("Kf_OtherOutBill_PDA.StockPlace") }}锛�
+                </view>
                 <view class="right" v-show="showHStockPlaceName">
                     <uni-combox :candidates="HStockPlaceNameListComputed" :placeholder="placeholder_StockPlace"
                         v-model="hform.HStockPlaceName" @input="HStockPlaceNameChange"></uni-combox>
                 </view>
                 <view class="righton" v-show="!showHStockPlaceName">
-                    <input v-model="hform.HStockPlaceName" :disabled="!showHStockPlaceName" :placeholder="$t('Kf_OtherOutBill_PDA.disabledPlaceholder')" />
+                    <input v-model="hform.HStockPlaceName" :disabled="!showHStockPlaceName"
+                        :placeholder="$t('Kf_OtherOutBill_PDA.disabledPlaceholder')" />
                 </view>
             </view>
 
             <view class="tabs">
-                <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">{{ $t("Kf_OtherOutBill_PDA.selectSource") == "Kf_OtherOutBill_PDA.selectSource" ? "閫夋嫨婧愬崟" : $t("Kf_OtherOutBill_PDA.selectSource") }}</view>
-                <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">{{ $t("Kf_OtherOutBill_PDA.tableInfo") == "Kf_OtherOutBill_PDA.tableInfo" ? "琛ㄥご淇℃伅" : $t("Kf_OtherOutBill_PDA.tableInfo") }}</view>
-                <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">{{ $t("Kf_OtherOutBill_PDA.materInfo") == "Kf_OtherOutBill_PDA.materInfo" ? "鐗╂枡淇℃伅" : $t("Kf_OtherOutBill_PDA.materInfo") }}</view>
-                <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">{{ $t("Kf_OtherOutBill_PDA.barInfo") == "Kf_OtherOutBill_PDA.barInfo" ? "鏉$爜淇℃伅" : $t("Kf_OtherOutBill_PDA.barInfo") }}</view>
-                <view :class="tabs == 4 ? 'on':''" @tap="tabs = 4">{{ $t("Kf_OtherOutBill_PDA.removeShelvesInfo") == "Kf_OtherOutBill_PDA.removeShelvesInfo" ? "涓嬫灦淇℃伅" : $t("Kf_OtherOutBill_PDA.removeShelvesInfo") }}</view>
+                <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">
+                    {{ $t("Kf_OtherOutBill_PDA.selectSource") == "Kf_OtherOutBill_PDA.selectSource" ? "閫夋嫨婧愬崟" : $t("Kf_OtherOutBill_PDA.selectSource") }}
+                </view>
+                <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">
+                    {{ $t("Kf_OtherOutBill_PDA.tableInfo") == "Kf_OtherOutBill_PDA.tableInfo" ? "琛ㄥご淇℃伅" : $t("Kf_OtherOutBill_PDA.tableInfo") }}
+                </view>
+                <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">
+                    {{ $t("Kf_OtherOutBill_PDA.materInfo") == "Kf_OtherOutBill_PDA.materInfo" ? "鐗╂枡淇℃伅" : $t("Kf_OtherOutBill_PDA.materInfo") }}
+                </view>
+                <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">
+                    {{ $t("Kf_OtherOutBill_PDA.barInfo") == "Kf_OtherOutBill_PDA.barInfo" ? "鏉$爜淇℃伅" : $t("Kf_OtherOutBill_PDA.barInfo") }}
+                </view>
+                <view :class="tabs == 4 ? 'on':''" @tap="tabs = 4">
+                    {{ $t("Kf_OtherOutBill_PDA.removeShelvesInfo") == "Kf_OtherOutBill_PDA.removeShelvesInfo" ? "涓嬫灦淇℃伅" : $t("Kf_OtherOutBill_PDA.removeShelvesInfo") }}
+                </view>
             </view>
 
             <view v-if="tabs == 0">
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.SourceBillType") == "Kf_OtherOutBill_PDA.SourceBillType" ? "婧愬崟绫诲瀷" : $t("Kf_OtherOutBill_PDA.SourceBillType") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.SourceBillType") == "Kf_OtherOutBill_PDA.SourceBillType" ? "婧愬崟绫诲瀷" : $t("Kf_OtherOutBill_PDA.SourceBillType") }}锛�
+                    </view>
                     <view class="right" v-show="showHMainSourceBillType">
                         <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType"
                             @change="HMainSourceBillTypeChange">
@@ -60,54 +81,75 @@
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.SourceBillNo") == "Kf_OtherOutBill_PDA.SourceBillNo" ? "婧愬崟鍗曞彿" : $t("Kf_OtherOutBill_PDA.SourceBillNo") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.SourceBillNo") == "Kf_OtherOutBill_PDA.SourceBillNo" ? "婧愬崟鍗曞彿" : $t("Kf_OtherOutBill_PDA.SourceBillNo") }}锛�
+                    </view>
                     <view class="right" v-show="showHSourceBillNo">
                         <input :focus="HSourceBillNoFocus" @confirm="onHSourceBillNoConfirmHandler" type="text"
-                            name="HSourceBillNo" v-model="hform.HSourceBillNo" :placeholder="placeholder_SourceBillNo" />
+                            name="HSourceBillNo" v-model="hform.HSourceBillNo"
+                            :placeholder="placeholder_SourceBillNo" />
                     </view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
+
                     <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType == -1">
                         <uni-icons :hidden="hform.HMainSourceBillType == -1" type="search" size="20"
                             @click="showBillList"></uni-icons>
                     </view>
                     <view class="righton" v-show="!showHSourceBillNo">
-                        <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" :placeholder="placeholder_SourceBillNo" />
+                        <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo"
+                            :placeholder="placeholder_SourceBillNo" />
                     </view>
                 </view>
 
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.BillSubType") == "Kf_OtherOutBill_PDA.BillSubType" ? "鍗曟嵁瀛愮被鍨�" : $t("Kf_OtherOutBill_PDA.BillSubType") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.BillSubType") == "Kf_OtherOutBill_PDA.BillSubType" ? "鍗曟嵁瀛愮被鍨�" : $t("Kf_OtherOutBill_PDA.BillSubType") }}锛�
+                    </view>
                     <view class="right">
                         <picker :range="arrayHBillSubType" v-model="hform.HBillSubType" @change="HBillSubTypeChange">
-                            <input disabled name="HMainSourceBillType" v-model="HBillSubType" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_BillSubType')" />
+                            <input disabled name="HMainSourceBillType" v-model="HBillSubType"
+                                :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_BillSubType')" />
                             <view class="picker-overlay"></view>
                         </picker>
                     </view>
                 </view>
 
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.FIFOWarehouse") == "Kf_OtherOutBill_PDA.FIFOWarehouse" ? "鍏堣繘鍏堝嚭浠�" : $t("Kf_OtherOutBill_PDA.FIFOWarehouse") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.FIFOWarehouse") == "Kf_OtherOutBill_PDA.FIFOWarehouse" ? "鍏堣繘鍏堝嚭浠�" : $t("Kf_OtherOutBill_PDA.FIFOWarehouse") }}锛�
+                    </view>
                     <view class="right">
-                        <uni-combox :candidates="arrayHWHName" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_FIFOWarehouse')" v-model="hform.HFIFOWHName"
-                            @input="HFIFOWHNameChange"></uni-combox>
+                        <uni-combox :candidates="arrayHWHName"
+                            :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_FIFOWarehouse')"
+                            v-model="hform.HFIFOWHName" @input="HFIFOWHNameChange"></uni-combox>
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Date") == "Kf_OtherOutBill_PDA.Date" ? "鏃ユ湡" : $t("Kf_OtherOutBill_PDA.Date") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Date") == "Kf_OtherOutBill_PDA.Date" ? "鏃ユ湡" : $t("Kf_OtherOutBill_PDA.Date") }}锛�
+                    </view>
                     <view class="right">
                         <picker mode="date" v-model="hform.HDate" @change="HDateChange">
                             <view class="picker-overlay"></view>
-                            <input disabled v-model="hform.HDate" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Date')" />
+                            <input disabled v-model="hform.HDate"
+                                :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Date')" />
                         </picker>
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Maker") == "Kf_OtherOutBill_PDA.Maker" ? "鍒跺崟浜�" : $t("Kf_OtherOutBill_PDA.Maker") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Maker") == "Kf_OtherOutBill_PDA.Maker" ? "鍒跺崟浜�" : $t("Kf_OtherOutBill_PDA.Maker") }}锛�
+                    </view>
                     <view class="righton">
                         <input name="HMaker" disabled v-model="hform.HMaker" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.BillNo") == "Kf_OtherOutBill_PDA.BillNo" ? "鍗曟嵁鍙�" : $t("Kf_OtherOutBill_PDA.BillNo") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.BillNo") == "Kf_OtherOutBill_PDA.BillNo" ? "鍗曟嵁鍙�" : $t("Kf_OtherOutBill_PDA.BillNo") }}锛�
+                    </view>
                     <view class="righton">
                         <input name="HBillNo" disabled v-model="hform.HBillNo" />
                     </view>
@@ -116,7 +158,9 @@
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.BillID") == "Kf_OtherOutBill_PDA.BillID" ? "鍗曟嵁ID" : $t("Kf_OtherOutBill_PDA.BillID") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.BillID") == "Kf_OtherOutBill_PDA.BillID" ? "鍗曟嵁ID" : $t("Kf_OtherOutBill_PDA.BillID") }}锛�
+                    </view>
                     <view class="righton">
                         <input name="HInterID" disabled v-model="hform.HInterID" />
                     </view>
@@ -125,34 +169,48 @@
 
             <view v-if="tabs == 1">
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Keeper") == "Kf_OtherOutBill_PDA.Keeper" ? "淇濈" : $t("Kf_OtherOutBill_PDA.Keeper") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Keeper") == "Kf_OtherOutBill_PDA.Keeper" ? "淇濈" : $t("Kf_OtherOutBill_PDA.Keeper") }}锛�
+                    </view>
                     <view class="right">
-                        <uni-combox :candidates="arrayHEmpName" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Keeper')" v-model="hform.HKeeperName"
+                        <uni-combox :candidates="arrayHEmpName"
+                            :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Keeper')" v-model="hform.HKeeperName"
                             @input="HKeeperNameChange"></uni-combox>
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.SecManager") == "Kf_OtherOutBill_PDA.SecManager" ? "楠屾敹" : $t("Kf_OtherOutBill_PDA.SecManager") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.SecManager") == "Kf_OtherOutBill_PDA.SecManager" ? "楠屾敹" : $t("Kf_OtherOutBill_PDA.SecManager") }}锛�
+                    </view>
                     <view class="right">
-                        <uni-combox :candidates="arrayHEmpName" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_SecManager')" v-model="hform.HSecManagerName"
-                            @input="HSecManagerNameChange"></uni-combox>
+                        <uni-combox :candidates="arrayHEmpName"
+                            :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_SecManager')"
+                            v-model="hform.HSecManagerName" @input="HSecManagerNameChange"></uni-combox>
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Dept") == "Kf_OtherOutBill_PDA.Dept" ? "閮ㄩ棬" : $t("Kf_OtherOutBill_PDA.Dept") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Dept") == "Kf_OtherOutBill_PDA.Dept" ? "閮ㄩ棬" : $t("Kf_OtherOutBill_PDA.Dept") }}锛�
+                    </view>
                     <view class="right">
-                        <uni-combox :candidates="arrayHDeptName" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Dept')" v-model="hform.HDeptName"
+                        <uni-combox :candidates="arrayHDeptName"
+                            :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Dept')" v-model="hform.HDeptName"
                             @input="HDeptNameChange"></uni-combox>
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Customer") == "Kf_OtherOutBill_PDA.Customer" ? "瀹㈡埛" : $t("Kf_OtherOutBill_PDA.Customer") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Customer") == "Kf_OtherOutBill_PDA.Customer" ? "瀹㈡埛" : $t("Kf_OtherOutBill_PDA.Customer") }}锛�
+                    </view>
                     <view class="righton">
-                        <input name="HSupName" disabled v-model="hform.HSupName" :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Customer')" />
+                        <input name="HSupName" disabled v-model="hform.HSupName"
+                            :placeholder="$t('Kf_OtherOutBill_PDA.placeholder_Customer')" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.StockOrg") == "Kf_OtherOutBill_PDA.StockOrg" ? "缁勭粐" : $t("Kf_OtherOutBill_PDA.StockOrg") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.StockOrg") == "Kf_OtherOutBill_PDA.StockOrg" ? "缁勭粐" : $t("Kf_OtherOutBill_PDA.StockOrg") }}锛�
+                    </view>
                     <view class="righton">
                         <input name="HStockOrgName" disabled v-model="hform.HStockOrgName" />
                     </view>
@@ -184,7 +242,9 @@
                         </view>
                     </uni-card>
                 </view>
-                <view class="over" v-if="Materlist.length == 0">{{ $t("Kf_OtherOutBill_PDA.noData") == "Kf_OtherOutBill_PDA.noData" ? "鏆傛棤鏁版嵁" : $t("Kf_OtherOutBill_PDA.noData") }}</view>
+                <view class="over" v-if="Materlist.length == 0">
+                    {{ $t("Kf_OtherOutBill_PDA.noData") == "Kf_OtherOutBill_PDA.noData" ? "鏆傛棤鏁版嵁" : $t("Kf_OtherOutBill_PDA.noData") }}
+                </view>
             </view>
 
             <view v-if="tabs == 4">
@@ -216,60 +276,80 @@
                         </view>
                     </uni-card>
                 </view>
-                <view class="over" v-if="FIFOlist.length == 0">{{ $t("Kf_OtherOutBill_PDA.noData") == "Kf_OtherOutBill_PDA.noData" ? "鏆傛棤鏁版嵁" : $t("Kf_OtherOutBill_PDA.noData") }}</view>
+                <view class="over" v-if="FIFOlist.length == 0">
+                    {{ $t("Kf_OtherOutBill_PDA.noData") == "Kf_OtherOutBill_PDA.noData" ? "鏆傛棤鏁版嵁" : $t("Kf_OtherOutBill_PDA.noData") }}
+                </view>
             </view>
 
             <view v-if="tabs == 3">
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.BarCode") == "Kf_OtherOutBill_PDA.BarCode" ? "鏉$爜" : $t("Kf_OtherOutBill_PDA.BarCode") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.BarCode") == "Kf_OtherOutBill_PDA.BarCode" ? "鏉$爜" : $t("Kf_OtherOutBill_PDA.BarCode") }}锛�
+                    </view>
                     <view class="righton">
                         <input name="HBarCode_B" disabled v-model="hform.HBarCode_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Material") == "Kf_OtherOutBill_PDA.Material" ? "鐗╂枡" : $t("Kf_OtherOutBill_PDA.Material") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Material") == "Kf_OtherOutBill_PDA.Material" ? "鐗╂枡" : $t("Kf_OtherOutBill_PDA.Material") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HMaterName_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.MaterModel") == "Kf_OtherOutBill_PDA.MaterModel" ? "瑙勬牸" : $t("Kf_OtherOutBill_PDA.MaterModel") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.MaterModel") == "Kf_OtherOutBill_PDA.MaterModel" ? "瑙勬牸" : $t("Kf_OtherOutBill_PDA.MaterModel") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HMaterModel_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.BatchNo") == "Kf_OtherOutBill_PDA.BatchNo" ? "鎵规" : $t("Kf_OtherOutBill_PDA.BatchNo") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.BatchNo") == "Kf_OtherOutBill_PDA.BatchNo" ? "鎵规" : $t("Kf_OtherOutBill_PDA.BatchNo") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HBatchNo_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Unit") == "Kf_OtherOutBill_PDA.Unit" ? "鍗曚綅" : $t("Kf_OtherOutBill_PDA.Unit") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Unit") == "Kf_OtherOutBill_PDA.Unit" ? "鍗曚綅" : $t("Kf_OtherOutBill_PDA.Unit") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HUnitName_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Qty") == "Kf_OtherOutBill_PDA.Qty" ? "鏁伴噺" : $t("Kf_OtherOutBill_PDA.Qty") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Qty") == "Kf_OtherOutBill_PDA.Qty" ? "鏁伴噺" : $t("Kf_OtherOutBill_PDA.Qty") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HQty_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Capacity") == "Kf_OtherOutBill_PDA.Capacity" ? "瀹归噺" : $t("Kf_OtherOutBill_PDA.Capacity") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Capacity") == "Kf_OtherOutBill_PDA.Capacity" ? "瀹归噺" : $t("Kf_OtherOutBill_PDA.Capacity") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HTMQty_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.Warehouse") == "Kf_OtherOutBill_PDA.Warehouse" ? "浠撳簱" : $t("Kf_OtherOutBill_PDA.Warehouse") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.Warehouse") == "Kf_OtherOutBill_PDA.Warehouse" ? "浠撳簱" : $t("Kf_OtherOutBill_PDA.Warehouse") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HWHName_B" />
                     </view>
                 </view>
                 <view class="form-item">
-                    <view class="title">{{ $t("Kf_OtherOutBill_PDA.StockPlace") == "Kf_OtherOutBill_PDA.StockPlace" ? "浠撲綅" : $t("Kf_OtherOutBill_PDA.StockPlace") }}锛�</view>
+                    <view class="title">
+                        {{ $t("Kf_OtherOutBill_PDA.StockPlace") == "Kf_OtherOutBill_PDA.StockPlace" ? "浠撲綅" : $t("Kf_OtherOutBill_PDA.StockPlace") }}锛�
+                    </view>
                     <view class="righton">
                         <input disabled v-model="hform.HSPName_B" />
                     </view>
@@ -277,10 +357,13 @@
             </view>
 
             <view class="bottom-btn">
-                <button class="btn-a" size="mini" @tap="submit">{{ $t("Kf_OtherOutBill_PDA.btnSubmit") == "Kf_OtherOutBill_PDA.btnSubmit" ? "鎻愪氦" : $t("Kf_OtherOutBill_PDA.btnSubmit") }}</button>
+                <button class="btn-a" size="mini"
+                    @tap="submit">{{ $t("Kf_OtherOutBill_PDA.btnSubmit") == "Kf_OtherOutBill_PDA.btnSubmit" ? "鎻愪氦" : $t("Kf_OtherOutBill_PDA.btnSubmit") }}</button>
                 <view style="flex: 1;"></view>
-                <button class="btn-a" size="mini" @tap="addNew">{{ $t("Kf_OtherOutBill_PDA.btnAdd") == "Kf_OtherOutBill_PDA.btnAdd" ? "鏂板" : $t("Kf_OtherOutBill_PDA.btnAdd") }}</button>
-                <button class="btn-c" size="mini" @tap="goBack">{{ $t("Kf_OtherOutBill_PDA.btnExit") == "Kf_OtherOutBill_PDA.btnExit" ? "閫�鍑�" : $t("Kf_OtherOutBill_PDA.btnExit") }}</button>
+                <button class="btn-a" size="mini"
+                    @tap="addNew">{{ $t("Kf_OtherOutBill_PDA.btnAdd") == "Kf_OtherOutBill_PDA.btnAdd" ? "鏂板" : $t("Kf_OtherOutBill_PDA.btnAdd") }}</button>
+                <button class="btn-c" size="mini"
+                    @tap="goBack">{{ $t("Kf_OtherOutBill_PDA.btnExit") == "Kf_OtherOutBill_PDA.btnExit" ? "閫�鍑�" : $t("Kf_OtherOutBill_PDA.btnExit") }}</button>
             </view>
         </view>
         <BillListPopupVue ref="billList" :HBillType="hform.HBillType" :HSourceBillType="hform.HMainSourceBillType"
@@ -301,14 +384,24 @@
         getUserStockRelation
     } from '../../utils/userRelationManager';
     import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+    import { MpaasScan } from '../../utils/mpaasScan';
     export default {
         data() {
             return {
-                 placeholder_BarCode: this.$t("Kf_OtherOutBill_PDA.placeholder_BarCode") == "Kf_OtherOutBill_PDA.placeholder_BarCode" ? "璇锋壂鎻�(鎴栬緭鍏�)鏉$爜" : this.$t("Kf_OtherOutBill_PDA.placeholder_BarCode"),
-        placeholder_Qty: this.$t("Kf_OtherOutBill_PDA.placeholder_Qty") == "Kf_OtherOutBill_PDA.placeholder_Qty" ? "璇疯緭鍏ユ暟閲�" : this.$t("Kf_OtherOutBill_PDA.placeholder_Qty"),
-        placeholder_Warehouse: this.$t("Kf_OtherOutBill_PDA.placeholder_Warehouse") == "Kf_OtherOutBill_PDA.placeholder_Warehouse" ? "璇疯緭鍏�(鎴栨壂鎻�)浠撳簱" : this.$t("Kf_OtherOutBill_PDA.placeholder_Warehouse"),
-        placeholder_StockPlace: this.$t("Kf_OtherOutBill_PDA.placeholder_StockPlace") == "Kf_OtherOutBill_PDA.placeholder_StockPlace" ? "璇疯緭鍏�(鎴栨壂鎻�)浠撲綅" : this.$t("Kf_OtherOutBill_PDA.placeholder_StockPlace"),
-        placeholder_SourceBillNo: this.$t("Kf_OtherOutBill_PDA.placeholder_SourceBillNo") == "Kf_OtherOutBill_PDA.placeholder_SourceBillNo" ? "璇疯緭鍏ユ簮鍗曞崟鍙�" : this.$t("Kf_OtherOutBill_PDA.placeholder_SourceBillNo"),
+                placeholder_BarCode: this.$t("Kf_OtherOutBill_PDA.placeholder_BarCode") ==
+                    "Kf_OtherOutBill_PDA.placeholder_BarCode" ? "璇锋壂鎻�(鎴栬緭鍏�)鏉$爜" : this.$t(
+                        "Kf_OtherOutBill_PDA.placeholder_BarCode"),
+                placeholder_Qty: this.$t("Kf_OtherOutBill_PDA.placeholder_Qty") ==
+                    "Kf_OtherOutBill_PDA.placeholder_Qty" ? "璇疯緭鍏ユ暟閲�" : this.$t("Kf_OtherOutBill_PDA.placeholder_Qty"),
+                placeholder_Warehouse: this.$t("Kf_OtherOutBill_PDA.placeholder_Warehouse") ==
+                    "Kf_OtherOutBill_PDA.placeholder_Warehouse" ? "璇疯緭鍏�(鎴栨壂鎻�)浠撳簱" : this.$t(
+                        "Kf_OtherOutBill_PDA.placeholder_Warehouse"),
+                placeholder_StockPlace: this.$t("Kf_OtherOutBill_PDA.placeholder_StockPlace") ==
+                    "Kf_OtherOutBill_PDA.placeholder_StockPlace" ? "璇疯緭鍏�(鎴栨壂鎻�)浠撲綅" : this.$t(
+                        "Kf_OtherOutBill_PDA.placeholder_StockPlace"),
+                placeholder_SourceBillNo: this.$t("Kf_OtherOutBill_PDA.placeholder_SourceBillNo") ==
+                    "Kf_OtherOutBill_PDA.placeholder_SourceBillNo" ? "璇疯緭鍏ユ簮鍗曞崟鍙�" : this.$t(
+                        "Kf_OtherOutBill_PDA.placeholder_SourceBillNo"),
                 userInfo: getUserInfo(),
                 serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
                 HModName: 'Kf_OtherOutBill_PDA',
@@ -419,8 +512,9 @@
         },
         onLoad(e) {
             uni.setNavigationBarTitle({
-                    title: this.$t("Kf_OtherOutBill_PDA.title")
-                });
+                title: this.$t("Kf_OtherOutBill_PDA.title") == 'Kf_OtherOutBill_PDA.title' ?
+                    '鍏朵粬鍑哄簱鍗�' : this.$t("Kf_OtherOutBill_PDA.title")
+            });
             console.log(e, this.userInfo)
             this.OperationType = e.OperationType
             if (e.HInterID) {
@@ -453,6 +547,11 @@
             uni.$off('BillSelectComplete')
         },
         methods: {
+            toScanBillCode() {
+                MpaasScan.scanCode((res) => {
+                    this.getHBarCodeData(res)
+                })
+            },
             async HWHNameScan(e) {
                 // 鎵弿浠撳簱鐮�
                 console.log('浠撳簱鐮�: ', e);
@@ -470,7 +569,7 @@
                 // 鎵弿浠撲綅鐮�
                 console.log('浠撲綅鐮�: ', e);
                 let index = this.HStockPlaceNameList.findIndex(elem => elem['鏉$爜缂栧彿'] == e.trim())
-               // 涓嶅厛缃┖鐨勮瘽锛屾暟鎹啀娆℃壂鎻忕浉鍚岀殑浠撲綅鐮� 涓嶄細瑙﹀彂缁勪欢鍐呯殑鍒锋柊
+                // 涓嶅厛缃┖鐨勮瘽锛屾暟鎹啀娆℃壂鎻忕浉鍚岀殑浠撲綅鐮� 涓嶄細瑙﹀彂缁勪欢鍐呯殑鍒锋柊
                 this.hform.HStockPlaceID = 0
                 this.hform.HStockPlaceName = ''
                 await this.$nextTick()
@@ -1907,7 +2006,7 @@
                 font-weight: bold;
             }
         }
-        
+
 
         .right {
             // width: 450rpx;
diff --git a/pages/qitaruku_v2/OtherInBill.vue b/pages/qitaruku_v2/OtherInBill.vue
index 2f1f286..d2d0819 100644
--- a/pages/qitaruku_v2/OtherInBill.vue
+++ b/pages/qitaruku_v2/OtherInBill.vue
@@ -74,6 +74,13 @@
                     <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType == -1">
                         <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
                     </view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
+                    
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType == -1">
+                        <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
+                    </view>
 
                     <view class="righton" v-show="!showHSourceBillNo">
                         <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" :placeholder="Kf_OtherInBill_PDA" />
@@ -312,6 +319,7 @@
     import {
         getUserStockRelation
     } from '../../utils/userRelationManager';
+    import { MpaasScan } from '@/utils/mpaasScan';
     export default {
         data() {
             return {
@@ -442,8 +450,9 @@
         },
         onLoad(e) {
             uni.setNavigationBarTitle({
-			    title: this.$t("Kf_OtherInBill_PDA.title")
-			})
+			    title: this.$t("Kf_OtherInBill_PDA.title") == 'Kf_OtherInBill_PDA.title'
+                ? '鍏朵粬鍏ュ簱鍗�' : this.$t("Kf_OtherInBill_PDA.title")
+            })
             console.log(e, this.userInfo)
             this.OperationType = e.OperationType
             if (e.HInterID) {
@@ -476,6 +485,11 @@
             uni.$off('BillSelectComplete')
         },
         methods: {
+            toScanBillCode() {
+                MpaasScan.scanCode((res) => {
+                    this.getHBarCodeData(res)
+                })
+            },
             async HWHNameScan(e) {
                 // 鎵弿浠撳簱鐮�
                 console.log('浠撳簱鐮�: ', e);
diff --git a/pages/shengchanrukushengdan/Kf_ProductInBill.vue b/pages/shengchanrukushengdan/Kf_ProductInBill.vue
index 13093c7..f48236f 100644
--- a/pages/shengchanrukushengdan/Kf_ProductInBill.vue
+++ b/pages/shengchanrukushengdan/Kf_ProductInBill.vue
@@ -73,6 +73,9 @@
 							:placeholder="placeholder_SourceBillNo" />
 
 					</view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
 					<view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
 						<uni-icons type="search" size="20" @click="showBillList"></uni-icons>
 					</view>
@@ -305,7 +308,8 @@
 		getUserStockRelation
 	} from "@/utils/userRelationManager.js"
 	import BillSelectPopupXiaoWeiVue from '../../components/BillSelectPopupXiaoWei/BillSelectPopupXiaoWei.vue';
-	export default {
+	import { MpaasScan } from '../../utils/mpaasScan';
+    export default {
 		data() {
 			return {
 				userInfo: getUserInfo(),
@@ -428,7 +432,7 @@
 		},
 		async onLoad(e) {
 			uni.setNavigationBarTitle({
-			    title: this.$t("Kf_ProductInBill_PDA.title")
+			    title: this.$t("Kf_ProductInBill_PDA.title") == 'Kf_ProductInBill_PDA.title' ? '鐢熶骇鍏ュ簱鍗�' : this.$t("Kf_ProductInBill_PDA.title") 
 			})
 			console.log(e, this.userInfo)
 			this.OperationType = e.OperationType
@@ -459,6 +463,11 @@
 			uni.$off('BillSelectComplete')
 		},
 		methods: {
+            toScanBillCode() {
+                MpaasScan.scanCode((res) => {
+                    this.getHBarCodeData(res)
+                })
+            },
 			async HWHNameScan(e) {
 				return
 				// 鎵弿浠撳簱鐮�
diff --git a/pages/xiaoshouchuku/SellOutBill.vue b/pages/xiaoshouchuku/SellOutBill.vue
index 650f4b7..5be38e1 100644
--- a/pages/xiaoshouchuku/SellOutBill.vue
+++ b/pages/xiaoshouchuku/SellOutBill.vue
@@ -27,12 +27,12 @@
             <view class="form-item">
                 <view class="title">浠撲綅:</view>
                 <!-- 鍥涚淮灏斿惎鐢ㄤ粨浣嶆壂鐮� 鍏朵粬瀹㈡埛鎸夐渶鍚敤鎺у埗 -->
-                <view class="right" >
+                <view class="right">
                     <uni-combox :candidates="HStockPlaceNameListComputed" placeholder="璇疯緭鍏�(鎴栨壂鎻�)浠撲綅"
                         v-model="hform.HStockPlaceName" @input="HStockPlaceNameChange"
                         @confirm="HStockPlaceNameScan"></uni-combox>
                 </view>
-<!--                <view class="righton" v-show="!showHStockPlaceName">
+                <!--                <view class="righton" v-show="!showHStockPlaceName">
                     <input v-model="hform.HStockPlaceName" :disabled="!showHStockPlaceName" placeholder="涓嶅彲鎿嶄綔" />
                 </view> -->
             </view>
@@ -79,6 +79,10 @@
                             name="HSourceBillNo" v-model="hform.HSourceBillNo" placeholder="璇疯緭鍏ユ簮鍗曞崟鍙�" />
 
                     </view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
+
                     <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
                         <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
                     </view>
@@ -316,6 +320,7 @@
         CommonUtils
     } from '../../utils/common';
     import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+    import { MpaasScan } from '../../utils/mpaasScan';
     export default {
         data() {
             return {
@@ -464,6 +469,11 @@
             uni.$off('BillSelectComplete')
         },
         methods: {
+            toScanBillCode() {
+                MpaasScan.scanCode((res) => {
+                    this.getHBarCodeData(res)
+                })
+            },
             async HWHNameScan(e) {
                 return
                 // 鎵弿浠撳簱鐮�
@@ -492,9 +502,9 @@
                             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
@@ -505,7 +515,7 @@
                             icon: 'none'
                         })
                     }
-                
+
                 } catch (err) {
                     uni.showToast({
                         title: '浠撲綅鏁版嵁璇锋眰澶辫触',
@@ -809,7 +819,7 @@
                         if (this.HWHNameList[i]['鍚敤浠撲綅'] == 'Y') {
                             this.showHStockPlaceName = true
                             this.getStockPlaceRemote(this.HWHNameList[i]["HSPGroupID"])
-                        } 
+                        }
                     }
                 }
             },
@@ -823,7 +833,7 @@
                             Organization: uni.getStorageSync('Organization')
                         },
                     })
-            
+
                     if (res.data.count == 1) {
                         this.HStockPlaceNameList = res.data.data
                         for (var i = 0; i < res.data.data.length; i++) {
@@ -835,7 +845,7 @@
                             icon: 'none'
                         })
                     }
-            
+
                 } catch (err) {
                     uni.showToast({
                         title: '浠撲綅鏁版嵁璇锋眰澶辫触',
diff --git a/pages/zhijiediaobo/MoveStockBill.vue b/pages/zhijiediaobo/MoveStockBill.vue
index d8567db..bae6a18 100644
--- a/pages/zhijiediaobo/MoveStockBill.vue
+++ b/pages/zhijiediaobo/MoveStockBill.vue
@@ -72,6 +72,9 @@
 
                     </view>
                     <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
+                        <uni-icons type="scan" size="20" @click="toScanBillCode"></uni-icons>
+                    </view>
+                    <view class="icon-wrapper" v-show="showHSourceBillNo" :disabled="hform.HMainSourceBillType === -1">
                         <uni-icons type="search" size="20" @click="showBillList"></uni-icons>
                     </view>
 
@@ -392,6 +395,7 @@
         getUserStockRelation
     } from '../../utils/userRelationManager';
     import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue";
+    import { MpaasScan } from '../../utils/mpaasScan';
     export default {
         data() {
             return {
@@ -597,6 +601,11 @@
             }
         },
         methods: {
+            toScanBillCode() {
+                MpaasScan.scanCode((res) => {
+                    this.getHBarCodeData(res)
+                })
+            },
             //鑾峰彇渚涘簲鍟嗘暟鎹�
             getHCusList() {
                 if (!this.hform.HStockOrgID) {
@@ -1044,7 +1053,7 @@
                             for (var i = 0; i < res.data.data.length; i++) {
                                 this.arrayHWHInName[i] = res.data.data[i].浠撳簱鍚嶇О
                             }
-                            
+
                             this.HWHInNameChange(getUserInfo()["HSCWHName"])
                         } else {
                             uni.showToast({
@@ -1427,13 +1436,13 @@
             },
             //閫夋嫨婧愬崟绫诲瀷
             HMainSourceBillTypeChange(e) {
-                console.log('e: ',e);
+                console.log('e: ', e);
                 let index = e.detail.value
                 if (index != -1) {
                     this.HMainSourceBillType = this.arrayHMainSourceBillType[index]
                     this.hform.HMainSourceBillType = this.arrayHMainSourceBillValue[index]
                 }
-                
+
             },
 
             //鑾峰彇渚涘簲鍟嗘暟鎹�
@@ -2045,7 +2054,7 @@
                         console.log(33, res.data.data[0]);
                         if (res.data.count == 1) {
                             var data = res.data.data[0]
-                            
+
                             this.hform.HInterID = data.HInterID
                             this.hform.HBillNo = data.HBillNo
                             this.hform.HMainSourceBillType = data.HSourceBillType

--
Gitblit v1.9.1